Atualizando clusters, nós do trabalhador e componentes do cluster
Revise as seções a seguir para obter etapas para manter seu cluster mestre e nós do trabalhador atualizados.
Atualizando o mestre
- Como sei quando devo atualizar o mestre?
- Você é notificado no console, nos anúncios e na CLI quando as atualizações estão disponíveis Também é possível verificar periodicamente a página de versões suportadas
- Quantas versões atrás da mais recente o master pode estar?
- Você pode atualizar o servidor da API apenas para a versão imediatamente superior à versão atual (
n+1). - Meus nós de trabalho podem rodar uma versão mais recente do que a do mestre?
- Os nós do trabalhador não podem executar uma versão mais recente do Kubernetes
major.minordo que a principal. Além disso, os nós do trabalhador podem estar apenas uma versão atrás da versão principal (n-1). Primeiro, atualize o principal para a versão mais recente do Kubernetes. Em seguida, atualize os nós do trabalhador em seu cluster.
Os nós do trabalhador podem executar versões de correção mais recentes do que o mestre, como as versões de correção que são específicas para nós do trabalhador para atualizações de segurança.
- Como as atualizações de patch são aplicadas?
- Por padrão, as atualizações de correção para o mestre são aplicadas automaticamente ao longo do curso de vários dias, portanto, uma versão de correção principal pode ser mostrada como disponível antes de ser aplicada ao seu mestre. A automação
de atualização também ignora clusters que estão em um estado não funcional ou têm operações atualmente em andamento. Ocasionalmente, a IBM pode desativar as atualizações automáticas para um fix pack de mestre específico, como uma correção
que é necessária somente se um mestre for atualizado de uma versão secundária para outra. Em qualquer um desses casos, você pode verificar as informações de versão em Red Hat OpenShift on IBM Cloud para avaliar qualquer impacto potencial e optar por usar com segurança o comando
ibmcloud oc cluster master updatepor conta própria, sem esperar que a atualização automática seja aplicada.
Diferentemente do mestre, deve-se atualizar seus trabalhadores para cada versão de correção.
- O que acontece durante a atualização do mestre?
- Seu mestre está altamente disponível com três pods do mestre de réplica. Os pods principais têm uma atualização contínua, durante a qual apenas um pod está indisponível por vez. Duas instâncias estão funcionando para que seja possível acessar e mudar o cluster durante a atualização. Os nós do trabalhador, apps e recursos continuam a ser executados.
- Posso reverter a atualização?
- Não, não é possível reverter um cluster para uma versão anterior após o processo de atualização acontecer. Certifique-se de usar um cluster de teste e siga as instruções para tratar de problemas potenciais antes de atualizar seu principal de produção.
- Qual processo devo seguir para atualizar o mestre?
- O diagrama a seguir mostra o processo que é possível usar para atualizar seu mestre.
Etapas para atualizar o cluster mestre
Antes de começar, certifique-se de que você tenha o Operador ou função de acesso à plataforma IAM do Administrador.
As atualizações para o mestre do cluster são bloqueadas se uma rotação de certificado de autoridade de certificação (CA) estiver em andamento. Aguarde a conclusão de uma rotação antes de atualizar o mestre do cluster.
Para atualizar a versão principal or secundária do Red Hat OpenShift mestre:
-
Revise as informações da versão do Red Hat OpenShift on IBM Cloud e faça quaisquer atualizações marcadas com Atualizar antes do principal.
-
Revise os Avisos úteis do Kubernetes, como avisos de descontinuação.
-
Verifique os complementos e plug-ins instalados em seu cluster para obter qualquer impacto que possa ser causado pela atualização da versão do cluster.
-
Verificando complementos
- Liste os complementos no cluster.
ibmcloud oc cluster addon ls --cluster CLUSTER - Verifique a versão do Red Hat OpenShift suportada para cada complemento que está instalado.
ibmcloud oc addon-versions - Se o complemento precisar ser atualizado para execução na versão do Red Hat OpenShift para a qual você deseja atualizar seu cluster, faça isso.
- Liste os complementos no cluster.
-
Verificando plug-ins
- No Catálogo do Helm, localize os plug-ins que você instalou no cluster.
- No menu lateral, expanda a seção Fontes e arquivo tar.
- Faça download e abra o código-fonte.
- Verifique os arquivos
README.mdouRELEASENOTES.mdpara as versões suportadas. - Se o plug-in precisar ser atualizado para execução na versão do Red Hat OpenShift para a qual você deseja atualizar seu cluster, atualize-o seguindo as instruções dele.
-
-
Atualize seu servidor de API e os componentes principais associados usando o console do IBM Cloud ou executando o comando da CLI
ibmcloud oc cluster master update. -
Aguarde alguns minutos e, em seguida, confirme se a atualização está concluída. Revise a versão do servidor de API no painel de clusters do IBM Cloud ou execute
ibmcloud oc cluster ls. -
Instale a versão do
oc clique corresponde à versão do servidor da API que é executada no mestre. Kubernetes não é compatível com versões do cliente doocque apresentem uma diferença de duas ou mais versões em relação à versão do servidor (n ± 2).
Quando a atualização do mestre for concluída, será possível atualizar seus nós do trabalhador, dependendo do tipo de seu provedor de infraestrutura de cluster.
Atualizando nós do trabalhador clássicos
Você observa que uma atualização está disponível para os nós do trabalhador em um cluster de infraestrutura clássica. O que isso significa? Como as atualizações
de segurança e as correções são colocadas no lugar para o servidor de API e outros componentes principais, deve-se ter certeza de que os nós do trabalhador permaneçam sincronizados. É possível fazer dois tipos de atualizações: atualizar apenas
a versão de correção ou atualizar a versão major.minor com a versão de correção.
- Correção: uma atualização de correção de nó do trabalhador inclui correções de segurança. É possível atualizar o nó do trabalhador clássico para a correção mais recente usando os comandos
ibmcloud oc worker reloadouupdate. Tenha em mente que o comandoupdatetambém atualizará o nó do trabalhador para a mesma versãomajor.minorque a versão de correção principal e mais recente, se uma atualização de versãomajor.minortambém estiver disponível. - Major.minor: uma atualização
major.minormove a versão do Kubernetes do nó do trabalhador para a mesma versão do mestre. Esse tipo de atualização geralmente inclui mudanças na API do Kubernetes ou em outros comportamentos para os qual seu cluster deve ser preparado. Lembre-se de que seus nós do trabalhador podem ser apenas uma versão atrás da versão master (n-1). É possível atualizar o nó do trabalhador clássico para a mesma correção usando o comandoibmcloud oc worker update.
Para obter mais informações, consulte Tipos de atualização.
É uma boa prática rotacionar os certificados CA sempre que você atualizar os nós de trabalho, pois a etapa mais longa da rotação de certificados inclui recarregar ou substituir os nós de trabalho.
- O que acontece com meus aplicativos durante uma atualização?
- Se executar apps como parte de uma implementação em nós do trabalhador que você atualizar, os apps serão reprogramados em outros nós do trabalhador no cluster. Esses nós do trabalhador podem estar em um conjunto de trabalhadores diferente ou, se você tiver nós do trabalhador independentes, os apps poderão estar planejados em nós do trabalhador independentes. Para evitar tempo de inatividade para seu app, deve-se assegurar que você tenha capacidade suficiente no cluster para transportar a carga de trabalho.
- Como posso controlar quantos nós de trabalho ficam fora do ar ao mesmo tempo durante uma atualização ou recarga?
- Se você precisar que todos os nós do trabalhador estejam funcionando, considere redimensionar seu conjunto de trabalhadores ou incluir nós do trabalhador independentes para incluir mais nós do trabalhador. Será possível remover os nós do trabalhador adicionais depois que a atualização for concluída.
Além disso, é possível criar um mapa de configuração do tipo “ Kubernetes ” que especifique o número máximo de nós de trabalho que podem ficar indisponíveis ao mesmo tempo, como, por exemplo, durante uma atualização. Os nós do trabalhador são identificados pelos rótulos de nó do trabalhador. É possível usar rótulos fornecidos pela IBM ou rótulos customizados que você incluiu no nó do trabalhador.
As regras do mapa Kubernetes de configuração são usadas apenas para atualizar os nós de trabalho. Essas regras não afetam recargas do nó do trabalhador, o que significa que o recarregamento ocorre imediatamente quando solicitado.
- E se eu optar por não definir um mapa de configuração?
- Quando o mapa de configuração não está definido, o padrão é usado. Por padrão, no máximo 20% de todos os nós do trabalhador em cada cluster podem ficar indisponíveis durante o processo de atualização.
Pré-requisitos
Antes de atualizar os nós do trabalhador de sua infraestrutura clássica, revise as etapas de pré-requisito.
As atualizações para os nós do trabalhador podem causar tempo de inatividade para seus apps e serviços. A máquina do nó do trabalhador tem a imagem reinstalada, e os dados são excluídos se não armazenados fora do pod.
- Para obter as correções e correções de segurança mais recentes, certifique-se de atualizar seus nós do trabalhador para a correção mais recente o mais rápido possível após ela ser disponibilizada. Para obter mais informações sobre as atualizações mais recentes, revise as informações da versão do Red Hat OpenShift on IBM Cloud.
- Acesse o seu Red Hat OpenShift cluster.
- Atualizar o mestre. A versão do nó do trabalhador não pode ser maior do que a versão do servidor de API que é executada no principal do Kubernetes.
- Faça qualquer mudança que esteja marcada com Atualização após o master no Guia de preparação de versão do Red Hat OpenShift.
- Se você quiser aplicar uma atualização de patch, consulte as informações sobre a versão em Red Hat OpenShift on IBM Cloud.
- Considere adicionar mais nós de trabalho para que seu cluster tenha capacidade suficiente para reprogramar suas cargas de trabalho durante a atualização. Para obter mais informações, consulte Incluindo nós do trabalhador em clusters Classic ou Incluindo nós do trabalhador em clusters VPC..
- Certifique-se de que você tenha o Operador ou função de acesso à plataforma IAM do Administrador.
Atualizando nós do trabalhador clássicos na CLI com um configmap
Configure um configmap para executar uma atualização contínua de seus nós do trabalhador clássicos.
-
Conclua as etapas de pré-requisito.
-
Liste os nós do trabalhador disponíveis e anote o seu endereço IP privado.
ibmcloud oc worker ls --cluster CLUSTER -
Visualizar os rótulos de um nó do trabalhador. É possível localizar os rótulos de nó do trabalhador na seção Rótulos de sua saída da CLI. Cada rótulo consiste em um
NodeSelectorKeye umNodeSelectorValue.oc describe node PRIVATE-WORKER-IPExemplo de saída
NAME: 10.184.58.3 Roles: <none> Labels: arch=amd64 beta.kubernetes.io/arch=amd64 beta.kubernetes.io/os=linux failure-domain.beta.kubernetes.io/region=us-south failure-domain.beta.kubernetes.io/zone=dal12 ibm-cloud.kubernetes.io/encrypted-docker-data=true ibm-cloud.kubernetes.io/iaas-provider=softlayer ibm-cloud.kubernetes.io/machine-type=u3c.2x4.encrypted kubernetes.io/hostname=10.123.45.3 privateVLAN=2299001 publicVLAN=2299012 Annotations: node.alpha.kubernetes.io/ttl=0 volumes.kubernetes.io/controller-managed-attach-detach=true CreationTimestamp: Tue, 03 Apr 2022 15:26:17 -0400 Taints: <none> Unschedulable: false -
Crie um mapa de configuração e defina as regras de indisponibilidade para seus nós do trabalhador. O exemplo a seguir mostra quatro verificações, o
zonecheck.json,regioncheck.json,defaultcheck.jsone um modelo de verificação. É possível usar essas verificações de exemplo para definir regras para nós do trabalhador em uma zona específica (zonecheck.json), região (regioncheck.json) ou para todos os nós do trabalhador que não correspondem a nenhuma das verificações definidas no mapa de configuração (defaultcheck.json). Use o modelo de verificação para criar sua própria verificação. Para cada verificação, para identificar um nó do trabalhador, deve-se escolher um dos rótulos de nó do trabalhador que você recuperou na etapa anterior.Para cada verificação, é possível configurar somente um valor para
NodeSelectorKeyeNodeSelectorValue. Para configurar regras para mais de uma região, zona ou outros rótulos de nó do trabalhador, crie uma nova verificação. Defina até 15 verificações em um mapa de configuração. Se você incluir mais verificações, apenas um nó do trabalhador será recarregado por vez até que todos os trabalhadores solicitados sejam atualizados.Exemplo
apiVersion: v1 kind: ConfigMap metadata: name: ibm-cluster-update-configuration namespace: kube-system data: drain_timeout_seconds: "120" zonecheck.json: | { "MaxUnavailablePercentage": 30, "NodeSelectorKey": "failure-domain.beta.kubernetes.io/zone", "NodeSelectorValue": "dal13" } regioncheck.json: | { "MaxUnavailablePercentage": 20, "NodeSelectorKey": "failure-domain.beta.kubernetes.io/region", "NodeSelectorValue": "us-south" } defaultcheck.json: | { "MaxUnavailablePercentage": 20 } <check_name>: | { "MaxUnavailablePercentage": <value_in_percentage>, "NodeSelectorKey": "<node_selector_key>", "NodeSelectorValue": "<node_selector_value>" }drain_timeout_seconds- Opcional: o tempo limite em segundos para esperar a conclusão do dreno. A drenagem de um nó do trabalhador remove com segurança todos os pods existentes do nó do trabalhador e reagenda os pods em outros nós do trabalhador no cluster. Os valores aceitos são números inteiros no intervalo de 1 a 180. O valor padrão é 30.
zonecheck.jsoneregioncheck.json- Duas verificações que definem uma regra para um conjunto de nós do trabalhador que você pode identificar com o
NodeSelectorKeyespecificado eNodeSelectorValue. Ozonecheck.jsonidentifica nós do trabalhador com base no rótulo de zona e oregioncheck.jsonusa o rótulo de região que é incluído em cada nó do trabalhador durante o fornecimento. No exemplo, 30% de todos os nós do trabalhador que têmdal13como rótulo de zona e 20% de todos os nós do trabalhador emus-southpodem ficar indisponíveis durante a atualização. defaultcheck.json- Se você não criar um mapa de configuração ou se o mapa estiver configurado incorretamente, o padrão Kubernetes será aplicado. Por padrão, somente 20% dos nós do trabalhador no cluster podem estar indisponíveis de cada vez. É possível
substituir o valor padrão, incluindo a verificação padrão em seu mapa de configuração. No exemplo, todo nó do trabalhador que não é especificado nas verificações de zona e região (
dal13ouus-south) pode ficar indisponível durante a atualização. MaxUnavailablePercentage- O número máximo de nós que podem ficar indisponíveis para uma chave e um valor de rótulo especificados, que são especificados como uma porcentagem. Um nó do trabalhador está indisponível durante o processo de implementação, recarregamento ou provisionamento. Os nós do trabalhador enfileirados são bloqueados de atualização se excedem qualquer porcentagem máxima indisponível definida.
NodeSelectorKey- A chave de rótulo do nó do trabalhador para o qual você deseja configurar uma regra. É possível configurar regras para os rótulos padrão que são fornecidos pela IBM, bem como nos rótulos de nó do trabalhador que você criou. Se quiser
incluir uma regra para nós do trabalhador que pertencem a um conjunto de trabalhadores, será possível usar o rótulo
ibm-cloud.kubernetes.io/machine-type. NodeSelectorValue- O valor do rótulo que o nó do trabalhador deve ter para ser considerado para a regra que você define.
-
Crie o mapa de configuração em seu cluster.
oc apply -f <filepath/configmap.yaml> -
Verifique se o mapa de configuração foi criado.
oc get configmap --namespace kube-system -
Atualize os nós do trabalhador.
ibmcloud oc worker update --cluster CLUSTER --worker WORKER-NODE-1-ID --worker WORKER-NODE-2-ID -
Opcional: verifique os eventos que são acionados pelo mapa de configuração e quaisquer erros de validação que ocorrem. Os eventos podem ser revisados na seção Eventos de sua saída da CLI.
oc describe -n kube-system cm ibm-cluster-update-configuration -
Confirme se a atualização está concluída, revisando a versão do Kubernetes de seus nós do trabalhador.
oc get nodes -
Verifique se você não tem nós de trabalhador duplicados. Às vezes, clusters mais antigos podem listar nós do trabalhador duplicados com um status
NotReadyapós uma atualização. Para remover duplicatas, consulte Resolução de problemas.
Próximos passos:
- Repita o processo de atualização com outros conjuntos de trabalhadores.
- Informe os desenvolvedores que trabalham no cluster para atualizar sua CLI
ocpara a versão do mestre do Kubernetes. - Se o painel do Kubernetes não exibir gráficos de utilização, exclua o pod
kube-dashboard.
Atualizando nós do trabalhador clássicos no console
Depois de configurar o mapa de configuração pela primeira vez, é possível, então, atualizar os nós do trabalhador usando o console do IBM Cloud.
Para atualizar os nós do trabalhador por meio do console:
- Conclua as etapas de pré-requisito e configure um configmap para controlar como seus nós do trabalhador são atualizados.
- No menu do console IBM Cloud
, clique em Contêineres > Clusters.
- Na página Clusters, clique em seu cluster.
- Na guia Nós do trabalhador, selecione a caixa de seleção para cada nó do trabalhador que você deseja atualizar. Uma barra de ação é exibida sobre a linha de cabeçalho da tabela.
- Na barra de ação, clique em Atualizar.
Se você tiver o Portworx instalado em seu cluster, os pods do Portworx deverão ser reiniciados nos nós do trabalhador atualizados. Para obter mais informações, consulte Limitações do Portworx.
Atualizando nós do trabalhador de VPC
Você percebe que há uma atualização disponível para seus nós de trabalho em um cluster VPC. O que isso significa? Como as atualizações de segurança e as correções são colocadas no lugar para o servidor de API e outros componentes principais,
deve-se ter certeza de que os nós do trabalhador permaneçam sincronizados. É possível fazer dois tipos de atualizações: atualizar apenas a versão de correção ou atualizar a versão major.minor com a versão de correção.
Se o Portworx estiver implementado no cluster, siga as etapas para atualizar nós do trabalhador da VPC com volumes Portworx.
É uma boa prática rotacionar os certificados CA sempre que você atualizar os nós de trabalho, pois a etapa mais longa da rotação de certificados inclui recarregar ou substituir os nós de trabalho.
Se você tiver o OpenShift Data Foundation implementado em seu cluster, siga as etapas para atualizar os nós do trabalhador VPC com o OpenShift Data Foundation.
- Correção: uma atualização de correção de nó do trabalhador inclui correções de segurança. Para os usuários de máquinas físicas (bare metal) do VPC, é possível aplicar o patch mais recente usando o comando
ibmcloud oc worker reload. Para os trabalhadores de instâncias de servidor virtual (VPC), use o comandoibmcloud oc worker replace. - Major.minor: uma atualização
major.minormove a versão do Kubernetes do nó do trabalhador para a mesma versão do mestre. Esse tipo de atualização geralmente inclui mudanças na API do Kubernetes ou em outros comportamentos para os qual seu cluster deve ser preparado. Lembre-se de que seus nós de trabalho só podem estar uma versão atrás da versão mestre (n-1). Você pode atualizar o nó de trabalho da VPC para o mesmo patch usando o comandoibmcloud oc worker replacecom a opção--update.
- O que acontece com meus aplicativos durante uma atualização?
- Se executar apps como parte de uma implementação em nós do trabalhador que você atualizar, os apps serão reprogramados em outros nós do trabalhador no cluster. Estes nós do trabalhador podem estar em um conjunto de trabalhadores diferente. Para evitar tempo de inatividade do seu aplicativo, é preciso garantir que haja capacidade suficiente no cluster para suportar a carga de trabalho, por exemplo, redimensionando seus conjuntos de workers. Para obter mais informações, consulte Incluindo nós do trabalhador em clusters Classic ou Incluindo nós do trabalhador em clusters VPC..
- O que acontece com meu nó de trabalho durante uma atualização?
- O seu nó do trabalhador da VPC é substituído por remover o nó do trabalhador antigo e provisionar um novo nó do trabalhador que é executado na correção atualizada ou
major.minor. O nó do trabalhador de substituição é criado na mesma zona, no mesmo conjunto de trabalhadores e com o mesmo tipo do nó do trabalhador excluído. No entanto, o nó do trabalhador de substituição é designado a um novo endereço IP privado e perde quaisquer rótulos ou contaminações customizadas que você aplicou ao nó do trabalhador antigo (rótulos e contaminações do conjunto de trabalhadores ainda são aplicados ao nó do trabalhador de substituição). - E se eu substituir vários nós de trabalho ao mesmo tempo?
- Se você substituir vários nós do trabalhador ao mesmo tempo, eles serão excluídos e substituídos simultaneamente, não um por um. Certifique-se de que você tenha capacidade suficiente em seu cluster para remarcar suas cargas de trabalho antes de substituir os nós do trabalhador.
- E se um nó de trabalho substituto não for criado?
- Um nó do trabalhador de substituição não será criado se ele não tiver o rebalanceamento automático ativado.
Pré-requisitos
Antes de atualizar os nós do trabalhador de sua infraestrutura de VPC, revise as etapas de pré-requisito.
As atualizações para os nós do trabalhador podem causar tempo de inatividade para seus apps e serviços. A máquina de seu nó do trabalhador será removida e os dados serão excluídos se não forem armazenados fora do pod.
- Para obter as correções e correções de segurança mais recentes, certifique-se de atualizar seus nós do trabalhador para a correção mais recente o mais rápido possível após ela ser disponibilizada. Para obter mais informações sobre as atualizações mais recentes, revise as informações da versão do Red Hat OpenShift on IBM Cloud.
- Acesse o seu Red Hat OpenShift cluster.
- Atualizar o mestre. A versão do nó do trabalhador não pode ser maior do que a versão do servidor de API que é executada no principal do Kubernetes.
- Faça qualquer mudança que esteja marcada com Atualização após o master no Guia de preparação de versão do Red Hat OpenShift.
- Se você quiser aplicar uma atualização de patch, consulte as informações sobre a versão em Red Hat OpenShift on IBM Cloud.
- Certifique-se de que você tenha o Operador ou função de acesso à plataforma IAM do Administrador.
Atualizando nós do trabalhador do VPC na CLI
Siga as etapas a seguir para atualizar seus nós de trabalho usando a CLI.
- Conclua as etapas de pré-requisito.
- Opcional: Aumente a capacidade do seu cluster redimensionando o conjunto de workers. Os pods no nó do trabalhador podem ser reprogramados e continuam em execução nos nós do trabalhador incluídos durante a atualização. Para obter mais informações, consulte Incluindo nós do trabalhador em clusters Classic ou Incluindo nós do trabalhador em clusters VPC..
- Liste os nós do trabalhador em seu cluster e anote o ID e o IP primário do nó do trabalhador que você deseja atualizar.
ibmcloud oc worker ls --cluster CLUSTER - Substitua o nó do trabalhador para atualizar a versão de correção ou a versão
major.minorque corresponde à versão do mestre.- Para atualizar o nó de trabalho para a mesma versão do
major.minorque o mestre, inclua a opção--update.
ibmcloud oc worker replace --cluster CLUSTER --worker WORKER-NODE-ID --update ``` * Para atualizar o nó de trabalho para a versão mais recente do patch na mesma versão do ` `major.minor` `, não inclua a opção ` `--update` `. ```sh {: pre} ibmcloud oc worker replace --cluster CLUSTER --worker WORKER-NODE-ID ``` - Para atualizar o nó de trabalho para a mesma versão do
- Repita essas etapas para cada nó do trabalhador que deve ser atualizado.
- Opcional: Depois que os nós de trabalho substituídos estiverem no status “Pronto”, reajuste o tamanho do conjunto de nós de trabalho para atingir a capacidade desejada para o cluster. Para obter mais informações, Incluindo nós do trabalhador em clusters VPC.
Ao executar o Portworx no próprio cluster VPC, deve-se conectar manualmente o volume do Block Storage for VPC ao novo nó do trabalhador.
Atualizando nós do trabalhador do VPC no console
É possível atualizar os nós do trabalhador do VPC no console. Antes de começar, considere adicionar nós de trabalho ao cluster para ajudar a evitar tempo de inatividade dos seus aplicativos.
- Conclua as etapas de pré-requisito.
- No menu do console IBM Cloud
, clique em Contêineres > Clusters.
- Na página Clusters, clique em seu cluster.
- Na guia Nós do trabalhador, selecione a caixa de seleção para cada nó do trabalhador que você deseja atualizar. Uma barra de ação é exibida sobre a linha de cabeçalho da tabela.
- Na barra de ação, clique em Atualizar.
Atualizando tipos (tipos de máquina)
Antes de Iniciar:
- Acesse o seu Red Hat OpenShift cluster.
- Dados no nó do trabalhador são excluídos. Considere armazenar seus dados no armazenamento persistente fora do nó do trabalhador.
- Certifique-se de que você tenha o Operador ou função de acesso à plataforma IAM do Administrador.
Para atualizar os tipos:
-
Liste os nós do trabalhador disponíveis e anote o seu endereço IP privado.
- Liste os conjuntos de trabalhadores disponíveis em seu cluster.
ibmcloud oc worker-pool ls --cluster CLUSTER ``` 2. Liste os nós do trabalhador no conjunto de trabalhadores. Observe o **ID** e o **IP privado**. ```sh {: pre} ibmcloud oc worker ls --cluster CLUSTER --worker-pool WORKER-POOL ``` 3. Obtenha os detalhes para um nó do trabalhador. Na saída, observe a zona e o ID de VLAN privada e pública para clusters clássicos ou o ID de sub-rede para clusters VPC. ```sh {: pre} ibmcloud oc worker get --cluster CLUSTER --worker WORKER-ID ``` -
Liste os tipos disponíveis na zona.
ibmcloud oc flavors --zone <zone> -
Crie um nó do trabalhador com o novo tipo de máquina.
- Crie um conjunto de trabalhadores com o número de nós do trabalhador que você deseja substituir.
- Clusters clássicos:
ibmcloud oc worker-pool create classic --name WORKER-POOL --cluster CLUSTER --flavor FLAVOR --size-per-zone NUMBER-OF-WORKERS-PER-ZONE - Clusters VPC do , geração 2:
ibmcloud oc worker-pool create vpc-gen2 --name NAME --cluster CLUSTER --flavor FLAVOR --size-per-zone NUMBER-OF-WORKERS-PER-ZONE --label LABEL
- Clusters clássicos:
- Verifique se o conjunto de trabalhadores foi criado.
ibmcloud oc worker-pool ls --cluster CLUSTER ``` 3. Inclua a zona em seu conjunto de trabalhadores que você recuperou anteriormente. Ao incluir uma zona, os nós do trabalhador que estão definidos em seu conjunto de trabalhadores são provisionados na zona e considerados para planejamento futuro de carga de trabalho. Se você desejar distribuir seus nós do trabalhador entre várias zonas, escolha uma localização multizona [clássica](/docs/openshift?topic=openshift-regions-and-zones#zones-mz) ou [VPC](/docs/openshift?topic=openshift-regions-and-zones#zones-vpc). * Clusters clássicos: ```sh {: pre} ibmcloud oc zone add classic --zone ZONE --cluster CLUSTER --worker-pool WORKER-POOL --private-vlan PRIVATE-VLAN-ID --public-vlan PUBLIC-VLAN-ID ``` * Clusters de VPC: ```sh {: pre} ibmcloud oc zone add vpc-gen2 --zone ZONE --cluster CLUSTER --worker-pool WORKER-POOL --subnet-id VPC-SUBNET-ID ``` - Crie um conjunto de trabalhadores com o número de nós do trabalhador que você deseja substituir.
-
Aguarde até que os nós do trabalhador sejam implementados. Quando o estado do nó do trabalhador muda para Normal, a implementação está concluída.
ibmcloud oc worker ls --cluster CLUSTER -
Remova o nó do trabalhador antigo. Nota: se você estiver removendo um tipo que é faturado mensalmente (como bare metal), você será cobrado pelo mês inteiro.
- Remova o conjunto de trabalhadores com o tipo de máquina antigo. A remoção de um conjunto de trabalhadores remove todos os nós do trabalhador no conjunto em todas as zonas. Esse processo pode levar alguns minutos para ser concluído.
ibmcloud oc worker-pool rm --worker-pool WORKER-POOL --cluster CLUSTER ``` 2. Verifique se o conjunto de trabalhadores foi removido. ```sh {: pre} ibmcloud oc worker-pool ls --cluster CLUSTER ``` -
Verifique se os nós do trabalhador foram removidos de seu cluster.
ibmcloud oc worker ls --cluster CLUSTER -
Repita essas etapas para atualizar outros conjuntos de trabalhadores ou nós do trabalhador independentes para diferentes tipos.
Como os conjuntos de trabalhadores têm a capacidade reduzida?
Quando o número de nós do trabalhador em um conjunto de trabalhadores é reduzido, como durante uma atualização do nó do trabalhador ou com o comando ibmcloud oc worker-pool resize,
os nós do trabalhador são priorizados para exclusão com base em várias propriedades, incluindo estado, funcionamento e versão.
Essa lógica de prioridade não é relevante para o complemento do escalador automático..
A tabela a seguir mostra a ordem na qual os nós do trabalhador são priorizados para exclusão
É possível executar o comando ibmcloud oc worker ls para visualizar todas as propriedades do nó do trabalhador listada na tabela
| Prioridade | Propriedade | Descrição |
|---|---|---|
| 1 | Estado do nó do trabalhador | Os nós do trabalhador em estados de não funcionamento ou de baixo funcionamento são priorizados para remoção Essa lista mostra os estados ordenados da prioridade mais alta para a mais baixa: provision_failed, deploy_failed,
deleting, provision_pending, provisioning, deploying, provisioned, reloading_failed, reloading, deployed |
| 2 | Funcionamento do nó trabalhador | Nós do trabalhador não saudáveis são priorizados sobre nós do trabalhador em funcionamento. Esta lista mostra os estados de funcionamento ordenados da prioridade mais alta para a mais baixa: critical, warning,
pending, unsupported, normal. |
| 3 | Versão do nó do trabalhador | Os nós do trabalhador que são executados em versões mais antigas têm uma prioridade mais alta para exclusão. |
| 4 | Configuração de colocação escolhida | Para trabalhadores em execução apenas em um host dedicado. Os nós do trabalhador em execução em um host dedicado que tem a opção DesiredPlacementDisabled configurada como true estão em uma prioridade
mais alta para exclusão |
| 5 | ordem alfabética | Depois que os nós do trabalhador são priorizados com base nos fatores listados acima, eles são excluídos em ordem alfabética Observe que, com base nas convenções de ID do nó do trabalhador, os IDs para trabalhadores em clusters clássicos e VPC se correlacionam com a idade, portanto, os nós do trabalhador mais antigos são removidos primeiro. |
Atualizando componentes do cluster
Seu cluster do Red Hat OpenShift on IBM Cloud é fornecido com componentes, como o Ingress, que são instalados automaticamente ao provisionar o cluster. Por padrão, esses componentes são atualizados automaticamente pela IBM. No entanto, é possível desativar as atualizações automáticas para alguns componentes e atualizá-las manualmente separadamente dos nós principal e do trabalhador.
- Quais componentes padrão posso atualizar separadamente do cluster?
- Opcionalmente, é possível desativar atualizações automáticas para os componentes a seguir:
- Existem componentes que não posso atualizar separadamente do cluster?
- Sim. O cluster é implementado com os componentes gerenciados e recursos associados a seguir que não podem ser alterados, exceto para escalar pods ou editar configmaps para determinados benefícios de desempenho. Se você tentar mudar um desses componentes de implementação, suas configurações originais serão restauradas em um intervalo regular quando elas forem atualizadas com o cluster mestre. No entanto, observe que os recursos que você cria que estão associados a esses componentes, como políticas de rede do Calico que você cria para serem implementadas pelos componentes de implementação do Calico, não são atualizados.
- Componentes do
calico - Componentes do
coredns ibm-cloud-provider-ipibm-file-pluginibm-keepalived-watcheribm-master-proxyibm-storage-watcher- Componentes do
kubernetes-dashboard metrics-server- Componentes
olm-operatorecatalog(1.16 e mais recente) vpn
- Posso instalar outros plug-ins ou complementos além dos componentes padrão?
- Sim. O Red Hat OpenShift on IBM Cloud oferece outros plug-ins e complementos que você pode escolher para ampliar as funcionalidades do seu cluster. Por exemplo, você pode querer habilitar complementos gerenciados pel IBM no seu cluster. Você deve atualizar esses add-ons separadamente seguindo as etapas para atualizar add-ons gerenciados.
Gerenciando atualizações automáticas para Fluentd
Ao criar uma configuração de criação de log para uma origem em seu cluster para encaminhá-lo para um servidor externo, um componente Fluentd é criado em seu cluster. Para mudar as configurações de filtro ou criação de log, o componente Fluentd deve estar na versão mais recente. Por padrão, as atualizações automáticas para o componente são ativadas.
É possível gerenciar atualizações automáticas do componente Fluentd das maneiras a seguir. Nota: para executar os comandos a seguir, deve-se ter a função de plataforma Administrador do IBM Cloud IAM para o cluster.
- Verifique se as atualizações automáticas estão ativadas executando o
ibmcloud oc logging autoupdate get --cluster CLUSTERcomando. - Desative as atualizações automáticas executando o comando
ibmcloud oc logging autoupdate disable. - Se as atualizações automáticas estiverem desativadas, mas for necessário mudar sua configuração, você terá duas opções:
- Ativar as atualizações automáticas para os seus pods do Fluentd.
ibmcloud oc logging autoupdate enable --cluster CLUSTER ``` * Forçar uma atualização única quando usar um comando de criação de log que inclua a opção `--force-update`. **Nota**: seus pods são atualizados para a versão mais recente do componente Fluentd, mas o Fluentd não é atualizado automaticamente a partir de agora. Exemplo de comando ```sh {: pre} ibmcloud oc logging config update --cluster CLUSTER --id LOG-CONFIG-ID --type LOG-TYPE --force-update ```
Gerenciando atualizações automáticas para ALBs do Ingress
Controle quando o componente do balanceador de carga do aplicativo (ALB) do Ingress é atualizado. Para obter informações sobre como manter os ALBs atualizados, consulte Gerenciando o ciclo de vida do ALB do Ingress.
Atualizando complementos gerenciados
Os complementos gerenciados para o cluster do IBM Cloud Kubernetes Service são uma maneira fácil de aprimorar seu cluster com recursos de código aberto, como o Istio. A versão da ferramenta de software livre que você agrega ao seu cluster é testada pela IBM e aprovada para uso no IBM Cloud Kubernetes Service. Para atualizar complementos gerenciados que você ativou em seu cluster para as versões mais recentes, consulte Atualizando complementos gerenciados.