Zadania po wdrożeniu

Dotyczy: ✔️ Maszyny wirtualne z systemem Linux — elastyczne zestawy skalowania ✔️

Po wdrożeniu klastra OpenShift można skonfigurować dodatkowe elementy. W tym artykule omówiono:

  • Jak skonfigurować logowanie jednokrotne przy użyciu usługi Azure Active Directory (Azure AD)
  • Jak skonfigurować dzienniki usługi Azure Monitor do monitorowania usługi OpenShift
  • Jak skonfigurować metryki i rejestrowanie
  • Jak zainstalować usługę Open Service Broker dla platformy Azure (OSBA)

Konfigurowanie logowania jednokrotnego przy użyciu usługi Azure Active Directory

Aby użyć usługi Azure Active Directory do uwierzytelniania, najpierw należy utworzyć rejestrację aplikacji Azure AD. Ten proces obejmuje dwa kroki: tworzenie rejestracji aplikacji i konfigurowanie uprawnień.

Tworzenie rejestracji aplikacji

Te kroki umożliwiają utworzenie rejestracji aplikacji za pomocą interfejsu wiersza polecenia platformy Azure oraz graficznego interfejsu użytkownika (portalu) w celu ustawienia uprawnień. Aby utworzyć rejestrację aplikacji, potrzebne są następujące pięć informacji:

  • Nazwa wyświetlana: Nazwa rejestracji aplikacji (na przykład OCPAzureAD)
  • Strona główna: Adres URL konsoli OpenShift (na przykład https://masterdns343khhde.westus.cloudapp.azure.com/console)
  • Identyfikator URI identyfikatora: adres URL konsoli OpenShift (na przykład https://masterdns343khhde.westus.cloudapp.azure.com/console)
  • Adres URL odpowiedzi: główny publiczny adres URL i nazwa rejestracji aplikacji (na przykład https://masterdns343khhde.westus.cloudapp.azure.com/oauth2callback/OCPAzureAD)
  • Hasło: Bezpieczne hasło (użyj silnego hasła)

Poniższy przykład tworzy rejestrację aplikacji przy użyciu powyższych informacji:

az ad app create --display-name OCPAzureAD --homepage https://masterdns343khhde.westus.cloudapp.azure.com/console --reply-urls https://masterdns343khhde.westus.cloudapp.azure.com/oauth2callback/hwocpadint --identifier-uris https://masterdns343khhde.westus.cloudapp.azure.com/console --password {Strong Password}

Jeśli polecenie zakończy się pomyślnie, otrzymasz dane wyjściowe JSON podobne do następujących:

{
  "appId": "12345678-ca3c-427b-9a04-ab12345cd678",
  "appPermissions": null,
  "availableToOtherTenants": false,
  "displayName": "OCPAzureAD",
  "homepage": "https://masterdns343khhde.westus.cloudapp.azure.com/console",
  "identifierUris": [
    "https://masterdns343khhde.westus.cloudapp.azure.com/console"
  ],
  "objectId": "62cd74c9-42bb-4b9f-b2b5-b6ee88991c80",
  "objectType": "Application",
  "replyUrls": [
    "https://masterdns343khhde.westus.cloudapp.azure.com/oauth2callback/OCPAzureAD"
  ]
}

Zanotuj właściwość appId zwróconą z polecenia w późniejszym kroku.

W witrynie Azure Portal:

  1. Wybierz pozycjęRejestracja aplikacjiusługi Azure Active Directory>.

  2. Wyszukaj rejestrację aplikacji (na przykład OCPAzureAD).

  3. W wynikach kliknij rejestrację aplikacji.

  4. W obszarze Ustawienia wybierz pozycję Wymagane uprawnienia.

  5. W obszarze Wymagane uprawnienia wybierz pozycję Dodaj.

    Rejestracja aplikacji

  6. Kliknij pozycję Krok 1. Wybierz pozycję Interfejs API, a następnie kliknij pozycję Windows Azure Active Directory (Microsoft.Azure.ActiveDirectory). Kliknij pozycję Wybierz u dołu.

    Rejestracja aplikacji — wybieranie interfejsu API

  7. W kroku 2. Wybierz pozycję Uprawnienia, wybierz pozycję Zaloguj się i odczyt profilu użytkownika w obszarze Delegowane uprawnienia, a następnie kliknij pozycję Wybierz.

    Dostęp do rejestracji aplikacji

  8. Kliknij Gotowe.

Konfigurowanie usługi OpenShift na potrzeby uwierzytelniania Azure AD

Aby skonfigurować usługę OpenShift do używania Azure AD jako dostawcy uwierzytelniania, plik /etc/origin/master/master-config.yaml musi być edytowany we wszystkich węzłach głównych.

Znajdź identyfikator dzierżawy przy użyciu następującego polecenia interfejsu wiersza polecenia:

az account show

W pliku yaml znajdź następujące wiersze:

oauthConfig:
  assetPublicURL: https://masterdns343khhde.westus.cloudapp.azure.com/console/
  grantConfig:
    method: auto
  identityProviders:
  - challenge: true
    login: true
    mappingMethod: claim
    name: htpasswd_auth
    provider:
      apiVersion: v1
      file: /etc/origin/master/htpasswd
      kind: HTPasswdPasswordIdentityProvider

Wstaw następujące wiersze bezpośrednio po poprzednich wierszach:

  - name: <App Registration Name>
    challenge: false
    login: true
    mappingMethod: claim
    provider:
      apiVersion: v1
      kind: OpenIDIdentityProvider
      clientID: <appId>
      clientSecret: <Strong Password>
      claims:
        id:
        - sub
        preferredUsername:
        - unique_name
        name:
        - name
        email:
        - email
      urls:
        authorize: https://login.microsoftonline.com/<tenant Id>/oauth2/authorize
        token: https://login.microsoftonline.com/<tenant Id>/oauth2/token

Upewnij się, że tekst jest poprawnie wyrównany w obszarze identityProviders. Znajdź identyfikator dzierżawy przy użyciu następującego polecenia interfejsu wiersza polecenia: az account show

Uruchom ponownie usługi główne OpenShift we wszystkich węzłach głównych:

sudo /usr/local/bin/master-restart api
sudo /usr/local/bin/master-restart controllers

W konsoli openShift są teraz widoczne dwie opcje uwierzytelniania: htpasswd_auth i [Rejestracja aplikacji].

Monitorowanie usługi OpenShift przy użyciu dzienników usługi Azure Monitor

Istnieją trzy sposoby dodawania agenta usługi Log Analytics do usługi OpenShift.

  • Instalowanie agenta usługi Log Analytics dla systemu Linux bezpośrednio w każdym węźle OpenShift
  • Włączanie rozszerzenia maszyny wirtualnej usługi Azure Monitor w każdym węźle OpenShift
  • Instalowanie agenta usługi Log Analytics jako demona OpenShift

Zapoznaj się z pełnymi instrukcjami , aby uzyskać więcej informacji.

Konfigurowanie metryk i rejestrowania

Na podstawie gałęzi szablony usługi Azure Resource Manager dla platformy kontenerów OpenShift i OKD mogą dostarczać parametry wejściowe umożliwiające włączanie metryk i rejestrowania w ramach instalacji.

Oferta OpenShift Container Platform Marketplace udostępnia również opcję włączania metryk i rejestrowania podczas instalacji klastra.

Jeśli metryki/rejestrowanie nie zostały włączone podczas instalacji klastra, można je łatwo włączyć po fakcie.

Dostawca usług Azure Cloud Provider w użyciu

Protokół SSH do węzła bastionu lub pierwszego węzła głównego (na podstawie szablonu i gałęzi używanej) przy użyciu poświadczeń podanych podczas wdrażania. Wydaj następujące polecenie:

ansible-playbook /usr/share/ansible/openshift-ansible/playbooks/openshift-metrics/config.yml \
-e openshift_metrics_install_metrics=True \
-e openshift_metrics_cassandra_storage_type=dynamic

ansible-playbook /usr/share/ansible/openshift-ansible/playbooks/openshift-logging/config.yml \
-e openshift_logging_install_logging=True \
-e openshift_logging_es_pvc_dynamic=true

Dostawca usług Azure Cloud Provider nie jest używany

ansible-playbook /usr/share/ansible/openshift-ansible/playbooks/openshift-metrics/config.yml \
-e openshift_metrics_install_metrics=True

ansible-playbook /usr/share/ansible/openshift-ansible/playbooks/openshift-logging/config.yml \
-e openshift_logging_install_logging=True

Instalowanie usługi Open Service Broker dla platformy Azure (OSBA)

Otwórz usługę Service Broker dla platformy Azure lub OSBA, aby aprowizować usługę Azure Cloud Services bezpośrednio z usługi OpenShift. OSBA w implementacji interfejsu API usługi Open Service Broker dla platformy Azure. Interfejs API usługi Open Service Broker to specyfikacja, która definiuje język wspólny dla dostawców usług w chmurze, których aplikacje natywne dla chmury mogą używać do zarządzania usługami w chmurze bez blokady.

Aby zainstalować usługę OSBA w usłudze OpenShift, postępuj zgodnie z instrukcjami znajdującymi się tutaj: https://github.com/Azure/open-service-broker-azure#openshift-project-template.

Uwaga

Wykonaj tylko kroki opisane w sekcji Szablon projektu OpenShift, a nie w całej sekcji Instalowanie.

Następne kroki