Partilhar via


Criar um cluster do Azure Red Hat OpenShift 4

O Azure Red Hat OpenShift é um serviço OpenShift gerenciado que permite implantar e gerenciar clusters rapidamente. Este artigo mostra como implantar um cluster do Azure Red Hat OpenShift usando a CLI do Azure ou o portal do Azure.

Antes de começar

Verifique se você está usando a CLI do Azure versão 2.67.0 ou superior. Use az --version para localizar a versão da CLI do Azure que você instalou. Se precisar de instalar ou atualizar, veja Install Azure CLI (Instalar o Azure CLI).

O Azure Red Hat OpenShift requer, pelo menos, 40 núcleos para criar e executar um cluster do OpenShift. A quota de recursos predefinida de uma nova subscrição do Azure não cumpre este requisito. Para solicitar um aumento no limite de recursos, consulte Cota padrão: aumentar limites por série de VMs.

  • Por exemplo, para verificar a cota de assinatura atual da menor família de máquinas virtuais suportada SKU "Standard DSv3":

    LOCATION=eastus
    az vm list-usage -l $LOCATION \
    --query "[?contains(name.value, 'standardDSv3Family')]" \
    -o table
    

Verificar suas permissões

Neste artigo, você criará um grupo de recursos que contém a rede virtual para o cluster. Para fazer isso, você precisará de permissões de Colaborador e Administrador de Acesso de Usuário ou permissões de Proprietário, diretamente na rede virtual ou no grupo de recursos ou assinatura que a contém.

Você também precisará de permissões suficientes do Microsoft Entra (um usuário membro do locatário ou um convidado atribuído com a função Administrador do aplicativo) para que as ferramentas criem uma entidade de aplicativo e serviço em seu nome para o cluster. Consulte Membro e convidados e Atribuir funções de administrador e não administrador a usuários com ID do Microsoft Entra para obter mais detalhes.

Registar os fornecedores de recursos

  1. Se você tiver várias assinaturas do Azure, especifique a ID de assinatura relevante:

    az account set --subscription <SUBSCRIPTION ID>
    
  2. Registre o provedor de Microsoft.RedHatOpenShift recursos:

    az provider register -n Microsoft.RedHatOpenShift --wait
    
  3. Registre o provedor de Microsoft.Compute recursos:

    az provider register -n Microsoft.Compute --wait
    
  4. Registre o provedor de Microsoft.Storage recursos:

    az provider register -n Microsoft.Storage --wait
    
  5. Registre o provedor de Microsoft.Authorization recursos:

    az provider register -n Microsoft.Authorization --wait
    

Obtenha um segredo de pull da Red Hat (opcional)

Nota

ARO pull secret não altera o custo da licença RH OpenShift para ARO.

Um segredo de pull da Red Hat permite que seu cluster acesse os registros de contêineres da Red Hat, juntamente com outros conteúdos, como operadores do OperatorHub. Esta etapa é opcional, mas recomendada. Se decidir adicionar o segredo de pull mais tarde, siga estas orientações. O campo cloud.openshift.com é removido do seu segredo, mesmo que o seu pull-secret contenha esse campo. Este campo permite um recurso de monitoramento extra, que envia dados para o RedHat e, portanto, é desativado por padrão. Para habilitar esse recurso, consulte https://docs.openshift.com/container-platform/4.11/support/remote_health_monitoring/enabling-remote-health-reporting.html .

  1. Navegue até o portal do gerenciador de clusters do Red Hat OpenShift e faça login.

    Você precisará fazer login na sua conta Red Hat ou criar uma nova conta Red Hat com seu e-mail comercial e aceitar os termos e condições.

  2. Selecione Download pull secret e baixe um pull secret para ser usado com seu cluster ARO.

    Mantenha o arquivo salvo pull-secret.txt em algum lugar seguro. O arquivo será usado em cada criação de cluster se você precisar criar um cluster que inclua amostras ou operadores para a Red Hat ou parceiros certificados.

    Ao executar o comando, você pode fazer referência ao az aro create seu segredo de pull usando o --pull-secret @pull-secret.txt parâmetro. Execute az aro create a partir do diretório onde você armazenou seu pull-secret.txt arquivo. Caso contrário, substitua @pull-secret.txt por @/path/to/my/pull-secret.txt.

    Se você estiver copiando seu segredo de pull ou fazendo referência a ele em outros scripts, seu segredo de pull deverá ser formatado como uma cadeia de caracteres JSON válida.

Preparar um domínio personalizado para o cluster (opcional)

Ao executar o az aro create comando, você pode especificar um domínio personalizado para o cluster usando o --domain foo.example.com parâmetro.

Nota

Embora a adição de um nome de domínio seja opcional ao criar um cluster por meio da CLI do Azure, um nome de domínio (ou um prefixo usado como parte do nome DNS gerado automaticamente para servidores de console e API do OpenShift) é necessário ao adicionar um cluster por meio do portal. Consulte Guia de início rápido: implantar um cluster do Azure Red Hat OpenShift usando o portal do Azure para obter mais informações.

Se você fornecer um domínio personalizado para seu cluster, observe os seguintes pontos:

  • Depois de criar o cluster, você deve criar dois registros DNS A no servidor DNS para o --domain especificado:

    • api - apontando para o endereço IP do servidor api
    • *.apps - apontando para o endereço IP de entrada
    • Recupere esses valores executando o seguinte comando após a criação do cluster: az aro show -n -g --query '{api:apiserverProfile.ip, ingress:ingressProfiles[0].ip}'.
  • O console OpenShift estará disponível em um URL como https://console-openshift-console.apps.example.com, em vez do domínio https://console-openshift-console.apps.<random>.<location>.aroapp.iointerno .

  • Por padrão, o OpenShift usa certificados autoassinados para todas as rotas criadas em domínios personalizados *.apps.example.com. Se você optar por usar o DNS personalizado depois de se conectar ao cluster, precisará seguir a documentação do OpenShift para configurar uma CA personalizada para seu controlador de entrada e uma CA personalizada para seu servidor de API.

Criar uma rede virtual contendo duas sub-redes vazias

Em seguida, você criará uma rede virtual contendo duas sub-redes vazias. Se você tiver uma rede virtual existente que atenda às suas necessidades, ignore esta etapa.

Para obter informações sobre rede e requisitos, consulte Rede para o Azure Red Hat Openshift.

  1. Defina as seguintes variáveis no ambiente do shell no qual você executará os az comandos.

    LOCATION=eastus                 # the location of your cluster
    RESOURCEGROUP=aro-rg            # the name of the resource group where you want to create your cluster
    CLUSTER=cluster                 # the name of your cluster
    
  2. Crie um grupo de recursos.

    Um grupo de recursos do Azure é um grupo lógico, no qual os recursos do Azure são implementados e geridos. Quando cria um grupo de recursos, é-lhe pedido que especifique uma localização. Esse local é onde os metadados do grupo de recursos são armazenados e também é onde seus recursos são executados no Azure se você não especificar outra região durante a criação do recurso. Crie um grupo de recursos usando o comando az group create .

    Nota

    O Azure Red Hat OpenShift não está disponível em todas as regiões onde um grupo de recursos do Azure pode ser criado. Consulte Regiões disponíveis para obter informações sobre onde o Azure Red Hat OpenShift é suportado.

    az group create \
      --name $RESOURCEGROUP \
      --location $LOCATION
    

    A saída de exemplo a seguir mostra o grupo de recursos criado com êxito:

    {
      "id": "/subscriptions/<guid>/resourceGroups/aro-rg",
      "location": "eastus",
      "name": "aro-rg",
      "properties": {
        "provisioningState": "Succeeded"
      },
      "type": "Microsoft.Resources/resourceGroups"
    }
    
  3. Crie uma rede virtual.

    Os clusters do Azure Red Hat OpenShift que executam o OpenShift 4 exigem uma rede virtual com duas sub-redes vazias, para os nós mestre e de trabalho. Você pode criar uma nova rede virtual para isso ou usar uma rede virtual existente.

    Crie uma nova rede virtual no mesmo grupo de recursos criado anteriormente:

    az network vnet create \
       --resource-group $RESOURCEGROUP \
       --name aro-vnet \
       --address-prefixes 10.0.0.0/22
    

    A saída de exemplo a seguir mostra a rede virtual criada com êxito:

    {
      "newVNet": {
        "addressSpace": {
          "addressPrefixes": [
            "10.0.0.0/22"
          ]
        },
        "dhcpOptions": {
          "dnsServers": []
        },
        "id": "/subscriptions/<guid>/resourceGroups/aro-rg/providers/Microsoft.Network/virtualNetworks/aro-vnet",
        "location": "eastus",
        "name": "aro-vnet",
        "provisioningState": "Succeeded",
        "resourceGroup": "aro-rg",
        "type": "Microsoft.Network/virtualNetworks"
      }
    }
    
  4. Adicione uma sub-rede vazia para os nós mestres.

    az network vnet subnet create \
      --resource-group $RESOURCEGROUP \
      --vnet-name aro-vnet \
      --name master-subnet \
      --address-prefixes 10.0.0.0/23
    
  5. Adicione uma sub-rede vazia para os nós de trabalho.

    az network vnet subnet create \
      --resource-group $RESOURCEGROUP \
      --vnet-name aro-vnet \
      --name worker-subnet \
      --address-prefixes 10.0.2.0/23
    

Criar o cluster

Execute o seguinte comando para criar um cluster. Se você optar por usar uma das seguintes opções, modifique o comando de acordo:

  • Opcionalmente, você pode passar seu segredo de pull da Red Hat, o que permite que seu cluster acesse os registros de contêiner da Red Hat junto com outros conteúdos. Adicione o --pull-secret @pull-secret.txt argumento ao comando.
  • Opcionalmente, você pode usar um domínio personalizado. Adicione o --domain foo.example.com argumento ao seu comando, substituindo foo.example.com pelo seu próprio domínio personalizado.

Nota

O número máximo de nós de trabalho definíveis no momento da criação é 50. Você pode expandir até 250 nós após a criação do cluster.

az aro create \
  --resource-group $RESOURCEGROUP \
  --name $CLUSTER \
  --vnet aro-vnet \
  --master-subnet master-subnet \
  --worker-subnet worker-subnet

Depois de executar o az aro create comando, normalmente leva cerca de 45 minutos para criar um cluster.

Clusters ARO em grande escala

Se você deseja implantar um cluster do Azure Red Hat OpenShift com mais de 100 nós de trabalho, consulte Implantar um grande cluster do Azure Red Hat OpenShift

Seleção de uma versão ARO diferente

Você pode optar por usar uma versão específica do ARO ao criar seu cluster. Primeiro, use a CLI para consultar as versões disponíveis do ARO:

az aro get-versions --location <region>

Depois de escolher a versão, especifique-a az aro create usando o --version parâmetro no comando:

az aro create \
  --resource-group $RESOURCEGROUP \
  --name $CLUSTER \
  --vnet aro-vnet \
  --master-subnet master-subnet \
  --worker-subnet worker-subnet \
  --version <x.y.z>