Criar Conjuntos de Réplicas
Aplica-se a: AKS no Azure Stack HCI 22H2, AKS no Windows Server
Este artigo descreve como criar, dimensionar e eliminar Conjuntos de Réplicas no AKS ativados pelo Azure Arc. Os ReplicaSets são utilizados para garantir que um conjunto estável de pods de réplica está em execução a qualquer momento.
Descrição geral de ReplicaSets
Um ReplicaSet é um processo que executa várias instâncias de um pod e mantém o número especificado de pods constante. Garante que um conjunto estável de pods de réplica está em execução a qualquer momento, o que garante um número especificado disponível de pods idênticos.
Quando um pod falha, um ReplicaSet apresenta uma nova instância do pod e aumenta verticalmente quando as instâncias em execução atingem um número especificado. Por outro lado, reduz verticalmente ou elimina pods quando é criada uma instância com a mesma etiqueta.
Criar um Conjunto de Réplicas
Utilize os kubectl create
comandos e kubectl apply
para criar ReplicaSets. O exemplo seguinte cria um ReplicaSet com um ficheiro YAML:
kubectl apply –f nginx_replicaset.yaml
As funcionalidades de um ficheiro de configuração ReplicaSet são apresentadas no formato YAML:
apiVersion: apps/v1
kind: ReplicaSet
metadata:
name: web
labels:
env: dev
role: web
spec:
replicas: 4
selector:
matchlabels:
role: web
template:
metadata:
labels:
role: web
spec:
containers:
-name: nginx
image: nginx
Depois de criar um ReplicaSet, pode ver o estado ao executar o seguinte comando:
kubectl get rs
Pode remover, mas não eliminar, um pod que um ReplicaSet gere ao alterar a respetiva etiqueta com o kubectl edit
comando . Por exemplo, se executar kubectl edit pods 7677-69h5b
, pode alterar a etiqueta do pod assim que o ficheiro de configuração for aberto.
Dimensionar um Conjunto de Réplicas
Existem duas formas de alterar o número de pods que um ReplicaSet gere.
Edite a configuração do controlador com o seguinte comando:
kubectl edit rs <ReplicaSet_NAME>
Aumente ou diminua diretamente o número com o seguinte comando:
kubectl scale –replicas=2 rs <ReplicaSet_NAME>
Quando edita um ficheiro de manifesto, pode substituir a configuração existente pela configuração atualizada:
kubectl replace –f nginx_replicaset.yaml
Em seguida, para ver o estado do ReplicaSet, execute kubectl get rs <ReplicaSet_NAME>
.
O dimensionamento automático também é uma opção com ReplicaSets com kubectl autoscale rs web –max=5
. Pode utilizar o dimensionamento automático para adaptar o número de pods de acordo com a carga da CPU de um nó.
Eliminar um Conjunto de Réplicas
Tal como acontece com outros objetos do Kubernetes, como DaemonSets, pode eliminar ReplicaSets com o kubectl delete
comando . Por exemplo, pode utilizar os seguintes comandos:
Para eliminar um ReplicaSet com o nome ReplicaSet, execute o seguinte comando:
kubectl delete rs <ReplicaSet_NAME>
Para eliminar um ReplicaSet com o respetivo nome de ficheiro, execute o seguinte comando:
kubectl delete –f nginx_replicaset.yaml
Os comandos anteriores eliminam o ReplicaSet e todos os pods que gere. Se quiser eliminar apenas o recurso ReplicaSet e manter os pods sem um proprietário, tem de os eliminar manualmente. Para eliminar manualmente um ReplicaSet, execute o seguinte comando:
kubectl delete rs <ReplicaSet_NAME> --cascade=false
Passos seguintes
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários