Adicionar ou atualizar seu segredo de pull do Red Hat em um cluster do Azure Red Hat OpenShift 4
Este guia aborda a adição ou atualização do segredo de pull do Red Hat para um cluster existente do Azure Red Hat OpenShift (ARO) 4.x.
Se você estiver criando um cluster pela primeira vez, poderá adicionar seu segredo de pull ao criar o cluster. Para obter mais informações sobre como criar um cluster ARO com um segredo de pull do Red Hat, consulte Criar um cluster do Azure Red Hat OpenShift 4.
Antes de começar
Este guia pressupõe que você tenha um cluster existente do Azure Red Hat OpenShift 4. Certifique-se de que tem acesso de administrador ao cluster.
Prepare o seu segredo de atração
Quando você cria um cluster ARO sem adicionar um segredo de pull da Red Hat, um segredo de pull ainda é criado automaticamente no cluster. No entanto, esse segredo de atração não está totalmente preenchido.
Esta seção mostra a atualização desse segredo de pull com valores adicionais do seu segredo de pull da Red Hat.
Procure o segredo nomeado
pull-secret
no namespace e salve-oopenshift-config
em um arquivo separado executando o seguinte comando:oc get secrets pull-secret -n openshift-config -o template='{{index .data ".dockerconfigjson"}}' | base64 -d > pull-secret.json
Sua saída deve ser semelhante à seguinte. (Observe que o valor secreto real foi removido.)
{ "auths": { "arosvc.azurecr.io": { "auth": "<my-aroscv.azurecr.io-secret>" } } }
Vá para o portal do gerenciador de clusters do Red Hat OpenShift e selecione Download pull secret. Seu segredo de atração Red Hat será parecido com o seguinte. (Observe que os valores secretos reais foram removidos.)
{ "auths": { "cloud.openshift.com": { "auth": "<my-crc-secret>", "email": "klamenzo@redhat.com" }, "quay.io": { "auth": "<my-quayio-secret>", "email": "klamenzo@redhat.com" }, "registry.connect.redhat.com": { "auth": "<my-registry.connect.redhat.com-secret>", "email": "klamenzo@redhat.com" }, "registry.redhat.io": { "auth": "<my-registry.redhat.io-secret>", "email": "klamenzo@redhat.com" } } }
Edite o arquivo de pull secret que você obteve do cluster adicionando as entradas encontradas no seu segredo de pull do Red Hat.
Importante
Incluir a
cloud.openshift.com
entrada do segredo de pull da Red Hat fará com que o cluster comece a enviar dados de telemetria para a Red Hat. Inclua esta seção somente se quiser enviar dados de telemetria. Caso contrário, deixe a seção a seguir de fora.{ "cloud.openshift.com": { "auth": "<my-crc-secret>", "email": "klamenzo@redhat.com" }
Atenção
Não remova ou altere a
arosvc.azurecr.io
entrada do seu segredo de puxar. Esta seção é necessária para que o cluster funcione corretamente."arosvc.azurecr.io": { "auth": "<my-aroscv.azurecr.io-secret>" }
Seu arquivo final deve ter a seguinte aparência. (Observe que os valores secretos reais foram removidos.)
{ "auths": { "cloud.openshift.com": { "auth": "<my-crc-secret>", "email": "klamenzo@redhat.com" }, "quay.io": { "auth": "<my-quayio-secret>", "email": "klamenzo@redhat.com" }, "registry.connect.redhat.com": { "auth": "<my-registry.connect.redhat.com-secret>", "email": "klamenzo@redhat.com" }, "registry.redhat.io": { "auth": "<my-registry.redhat.io-secret>", "email": "klamenzo@redhat.com" }, "arosvc.azurecr.io": { "auth": "<my-aroscv.azurecr.io-secret>" } } }
Verifique se o arquivo é JSON válido. Há muitas maneiras de validar seu JSON. O exemplo a seguir usa jq:
cat pull-secret.json | jq
Nota
Se houver um erro no arquivo, ele aparecerá como
parse error
.
Adicione seu segredo de pull ao cluster
Execute o seguinte comando para atualizar seu segredo de pull.
Nota
No ARO 4.9 ou anterior, a execução deste comando fará com que os nós do cluster reiniciem um a um à medida que são atualizados. Na versão ARO 4.10 ou posterior, uma reinicialização não será acionada.
oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=./pull-secret.json
Verifique se o segredo de pull está no lugar
oc exec -n openshift-apiserver $(oc get pod -n openshift-apiserver -o jsonpath="{.items[0].metadata.name}") -- cat /var/lib/kubelet/config.json
Depois que o segredo estiver definido, você estará pronto para ativar o Red Hat Certified Operators.
Modificar os arquivos de configuração
Modifique os seguintes objetos para habilitar o Red Hat Operators.
Primeiro, modifique o arquivo de configuração do Operador de Amostras. Em seguida, você pode executar o seguinte comando para editar o arquivo de configuração:
oc edit configs.samples.operator.openshift.io/cluster -o yaml
Altere o spec.managementState
valor de Removed
para Managed
.
O seguinte trecho de YAML mostra apenas as seções relevantes do arquivo YAML editado:
apiVersion: samples.operator.openshift.io/v1
kind: Config
metadata:
...
spec:
architectures:
- x86_64
managementState: Managed
Em segundo lugar, execute o seguinte comando para editar o arquivo de configuração do Operator Hub:
oc edit operatorhub cluster -o yaml
Altere o Spec.Sources.Disabled
valor de true
para false
para quaisquer fontes que você deseja habilitar.
O seguinte trecho de YAML mostra apenas as seções relevantes do arquivo YAML editado:
Name: cluster
...
dd3310b9-e520-4a85-98e5-8b4779ee0f61
Spec:
Sources:
Disabled: false
Name: certified-operators
Disabled: false
Name: redhat-operators
Salve o arquivo para aplicar suas edições.
Valide se o seu segredo está a funcionar
Depois de adicionar o segredo de pull e modificar os arquivos de configuração corretos, o cluster pode levar vários minutos para ser atualizado. Para verificar se o cluster foi atualizado, execute o seguinte comando para mostrar as fontes de Operadores Certificados e Operadores Red Hat disponíveis:
$ oc get catalogsource -A
NAMESPACE NAME DISPLAY TYPE PUBLISHER AGE
openshift-marketplace certified-operators Certified Operators grpc Red Hat 10s
openshift-marketplace community-operators Community Operators grpc Red Hat 18h
openshift-marketplace redhat-operators Red Hat Operators grpc Red Hat 11s
Se você não vir os Operadores Certificados e os Operadores Red Hat, aguarde alguns minutos e tente novamente.
Para garantir que seu segredo de pull tenha sido atualizado e esteja funcionando corretamente, abra o OperatorHub e verifique se há algum Operador verificado pela Red Hat. Por exemplo, verifique se o OpenShift Container Storage Operator está disponível e se você tem permissões para instalar.
Próximos passos
Para saber mais sobre os segredos de pull da Red Hat, consulte Usando segredos de pull de imagem.
Para saber mais sobre o Red Hat OpenShift 4, consulte a documentação do Red Hat OpenShift Container Platform.