Uppgifter efter distributionen

Gäller för: ✔️ Virtuella Linux-datorer ✔️ – flexibla skalningsuppsättningar

När du har distribuerat ett OpenShift-kluster kan du konfigurera ytterligare objekt. Den här artikeln beskriver:

  • Så här konfigurerar du enkel inloggning med hjälp av Azure Active Directory (Azure AD)
  • Så här konfigurerar du Azure Monitor-loggar för att övervaka OpenShift
  • Så här konfigurerar du mått och loggning
  • Så här installerar du Open Service Broker for Azure (OSBA)

Konfigurera enkel inloggning med hjälp av Azure Active Directory

Om du vill använda Azure Active Directory för autentisering måste du först skapa en Azure AD appregistrering. Den här processen omfattar två steg: skapa appregistreringen och konfigurera behörigheter.

Skapa en appregistrering

De här stegen använder Azure CLI för att skapa appregistreringen och GUI (portalen) för att ange behörigheterna. För att skapa appregistreringen behöver du följande fem informationsdelar:

  • Visningsnamn: Appregistreringsnamn (till exempel OCPAzureAD)
  • Startsida: OpenShift-konsolens URL (till exempel https://masterdns343khhde.westus.cloudapp.azure.com/console)
  • Identifierar-URI: OpenShift-konsolens URL (till exempel https://masterdns343khhde.westus.cloudapp.azure.com/console)
  • Svars-URL: Huvud offentlig URL och appregistreringsnamnet (till exempel https://masterdns343khhde.westus.cloudapp.azure.com/oauth2callback/OCPAzureAD)
  • Lösenord: Säkert lösenord (använd ett starkt lösenord)

I följande exempel skapas en appregistrering med hjälp av föregående information:

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}

Om kommandot lyckas får du JSON-utdata som liknar:

{
  "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"
  ]
}

Anteckna egenskapen appId som returneras från kommandot för ett senare steg.

I Azure-portalen:

  1. Välj Azure ActiveDirectory-appregistrering>.

  2. Sök efter din appregistrering (till exempel OCPAzureAD).

  3. Klicka på appregistreringen i resultatet.

  4. Under Inställningar väljer du Nödvändiga behörigheter.

  5. Under Nödvändiga behörigheter väljer du Lägg till.

    Appregistrering

  6. Klicka på Steg 1: Välj API och klicka sedan på Windows Azure Active Directory (Microsoft.Azure.ActiveDirectory). Klicka på Välj längst ned.

    Välj API för appregistrering

  7. I Steg 2: Välj Behörigheter väljer du Logga in och läsa användarprofil under Delegerade behörigheter och klickar sedan på Välj.

    Åtkomst till appregistrering

  8. Välj Klar.

Konfigurera OpenShift för Azure AD-autentisering

Om du vill konfigurera OpenShift för att använda Azure AD som autentiseringsprovider måste filen /etc/origin/master/master-config.yaml redigeras på alla huvudnoder.

Hitta klientorganisations-ID:t med hjälp av följande CLI-kommando:

az account show

Leta upp följande rader i yaml-filen:

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

Infoga följande rader direkt efter föregående rader:

  - 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

Kontrollera att texten är korrekt justerad under IdentityProviders. Hitta klientorganisations-ID:t med hjälp av följande CLI-kommando: az account show

Starta om OpenShift-huvudtjänsterna på alla huvudnoder:

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

I OpenShift-konsolen ser du nu två alternativ för autentisering: htpasswd_auth och [Appregistrering].

Övervaka OpenShift med Azure Monitor-loggar

Det finns tre sätt att lägga till Log Analytics-agenten i OpenShift.

  • Installera Log Analytics-agenten för Linux direkt på varje OpenShift-nod
  • Aktivera Azure Monitor VM-tillägg på varje OpenShift-nod
  • Installera Log Analytics-agenten som en OpenShift-daemonuppsättning

Läs de fullständiga anvisningarna för mer information.

Konfigurera mått och loggning

Baserat på grenen kan Azure Resource Manager-mallar för OpenShift Container Platform och OKD tillhandahålla indataparametrar för att aktivera mått och loggning som en del av installationen.

Erbjudandet OpenShift Container Platform Marketplace innehåller också ett alternativ för att aktivera mått och loggning under klusterinstallationen.

Om mått/loggning inte aktiveras under installationen av klustret kan de enkelt aktiveras i efterhand.

Azure Cloud Provider används

SSH till skyddsnoden eller den första huvudnoden (baserat på mall och gren som används) med de autentiseringsuppgifter som angavs under distributionen. Kör följande kommando:

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

Azure Cloud Provider används inte

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

Installera Open Service Broker för Azure (OSBA)

Med Open Service Broker för Azure eller OSBA kan du etablera Azure Cloud Services direkt från OpenShift. OSBA i en Open Service Broker API-implementering för Azure. Open Service Broker-API:et är en specifikation som definierar ett gemensamt språk för molnleverantörer som molnbaserade program kan använda för att hantera molntjänster utan inlåsning.

Om du vill installera OSBA på OpenShift följer du anvisningarna här: https://github.com/Azure/open-service-broker-azure#openshift-project-template.

Anteckning

Slutför bara stegen i avsnittet OpenShift-projektmall och inte hela avsnittet Installera.

Nästa steg