Tareas posteriores a la implementación

Se aplica a: ✔️ máquinas virtuales Linux ✔️ conjuntos de escalado flexibles

Después de implementar un clúster de OpenShift, puede configurar elementos adicionales. En este artículo se describe:

  • Cómo configurar el inicio de sesión único con Azure Active Directory (Azure AD)
  • Configuración de registros de Azure Monitor para supervisar OpenShift
  • Cómo configurar las métricas y el registro
  • Cómo instalar Open Service Broker para Azure (OSBA)

Configurar el inicio de sesión único con Azure Active Directory

Para usar Azure Active Directory para la autenticación, primero debe crear un registro de la aplicación de Azure AD. Este proceso implica dos pasos: crear el registro de la aplicación y configurar los permisos.

Crear un registro de aplicación

Estos pasos usan la CLI de Azure para crear el registro de aplicación y la GUI (portal) para definir los permisos. Para crear el registro de aplicación, se necesitan los cinco datos siguientes:

  • Nombre para mostrar: nombre del registro de aplicación (p. ej.: OCPAzureAD)
  • Página principal: dirección URL de la consola de OpenShift (por ejemplo, https://masterdns343khhde.westus.cloudapp.azure.com/console)
  • Identificador URI: dirección URL de la consola de OpenShift (por ejemplo, https://masterdns343khhde.westus.cloudapp.azure.com/console)
  • Dirección URL de respuesta: dirección URL pública maestra y nombre de registro de la aplicación (por ejemplo, https://masterdns343khhde.westus.cloudapp.azure.com/oauth2callback/OCPAzureAD)
  • Contraseña: contraseña segura (use una contraseña segura)

En el ejemplo siguiente, se creará un registro de aplicación con la información anterior:

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}

Si el comando se ejecuta correctamente, recibirá una salida JSON similar a la siguiente:

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

Tome nota de la propiedad appId que ha devuelto el comando para otro paso.

En Azure Portal:

  1. Seleccione Azure Active Directory>Registro de aplicaciones.

  2. Busque el registro de su aplicación (p. ej.: OCPAzureAD).

  3. En los resultados, haga clic en el registro de aplicación.

  4. En Configuración, seleccione Permisos necesarios.

  5. En Permisos necesarios, seleccione Agregar.

    Registro de aplicaciones

  6. Haga clic en el paso 1 (Seleccionar API) y, después, en Windows Azure Active Directory (Microsoft.Azure.ActiveDirectory). Haga clic en Seleccionar en la parte inferior.

    Selección de API del registro de aplicaciones

  7. En el paso 2: Seleccionar permisos, seleccione Iniciar sesión y leer el perfil del usuario, en Permisos delegados, y haga clic en Seleccionar.

    Acceso al registro de aplicaciones

  8. Seleccione Listo.

Configuración de OpenShift para la autenticación de Azure AD

Para configurar OpenShift para usar Azure AD como proveedor de autenticación, el archivo /etc/origin/master/master-config.yaml se debe editar en todos los nodos maestros.

Busque el identificador de inquilino mediante el siguiente comando de CLI:

az account show

En el archivo yaml, busque las siguientes líneas:

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

Inserte las líneas siguientes inmediatamente después de las líneas anteriores:

  - 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

Asegúrese de que el texto se alinea correctamente en identityProviders. Busque el identificador de inquilino mediante el siguiente comando de CLI: az account show.

Reinicie los servicios maestros de OpenShift en todos los nodos maestros:

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

En la consola de OpenShift, ahora verá dos opciones para la autenticación: htpasswd_auth y [App Registration].

Supervisión de OpenShift con registros de Azure Monitor

Hay tres maneras de agregar al agente de Log Analytics a OpenShift.

  • Instalar el agente de Log Analytics para Linux directamente en cada nodo de OpenShift
  • Habilitar la extensión de máquina virtual de Azure Monitor en cada nodo de OpenShift
  • Instalar el agente de Log Analytics como daemon-set de OpenShift

Lea las instrucciones completas para más información.

Configurar las métricas y el registro

En función de la rama, las plantillas de Azure Resource Manager para OpenShift Container Platform y OKD pueden proporcionar parámetros de entrada para habilitar las métricas y el registro como parte de la instalación.

La oferta de Marketplace de OpenShift Container Platform también proporciona una opción para habilitar las métricas y el registro durante la instalación del clúster.

Si las métricas o el registro no se han habilitado durante la instalación del clúster, se pueden habilitar fácilmente con posterioridad.

Proveedor de soluciones en la nube de Azure en uso

Conéctese mediante SSH al nodo de tipo bastión o al primer nodo maestro (en función de la plantilla y la rama en uso) con las credenciales proporcionadas durante la implementación. Emita el comando siguiente:

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

Proveedor de soluciones en la nube de Azure que no está en uso

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

Instalación de Open Service Broker para Azure (OSBA)

Open Service Broker para Azure (OSBA) le permite aprovisionar Azure Cloud Services directamente desde OpenShift. OSBA es una implementación de Open Service Broker API para Azure. Open Service Broker API es una especificación que define un lenguaje común para proveedores en la nube que las aplicaciones nativas pueden usar para administrar servicios en la nube sin dependencia del proveedor.

Para instalar OSBA en OpenShift, siga las instrucciones que encontrará aquí: https://github.com/Azure/open-service-broker-azure#openshift-project-template.

Nota

Complete solo los pasos descritos en la sección de la plantilla de proyecto de OpenShift y no toda la sección de instalación.

Pasos siguientes