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:
Wybierz pozycjęRejestracja aplikacjiusługi Azure Active Directory>.
Wyszukaj rejestrację aplikacji (na przykład OCPAzureAD).
W wynikach kliknij rejestrację aplikacji.
W obszarze Ustawienia wybierz pozycję Wymagane uprawnienia.
W obszarze Wymagane uprawnienia wybierz pozycję Dodaj.
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.
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.
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.