Создание наборов реплик
Область применения: AKS в Azure Stack HCI 22H2, AKS в Windows Server
В этой статье описывается создание, масштабирование и удаление наборов реплик в AKS, включенных Azure Arc. Наборы реплик используются для обеспечения стабильного набора реплика модулей pod в любой момент времени.
Общие сведения о наборах реплик
ReplicaSet — это процесс, который запускает несколько экземпляров модуля pod и сохраняет указанное количество модулей pod постоянными. Это гарантирует, что стабильный набор реплика модулей pod выполняется в любой момент времени, что гарантирует наличие указанного числа идентичных модулей pod.
При сбое модуля pod replicaSet выводит новый экземпляр pod и масштабируется, когда запущенные экземпляры достигают указанного числа. И наоборот, он масштабирует или удаляет объекты pod при создании экземпляра с той же меткой.
Создание набора реплик
kubectl create
Используйте команды и kubectl apply
для создания наборов реплик. В следующем примере создается набор ReplicaSet с помощью файла YAML:
kubectl apply –f nginx_replicaset.yaml
Функции файла конфигурации ReplicaSet отображаются в формате 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
После создания Набора реплик можно просмотреть состояние, выполнив следующую команду:
kubectl get rs
Вы можете удалить, но не удалить модуль pod, которым управляет ReplicaSet, изменив его метку с помощью kubectl edit
команды . Например, при запуске kubectl edit pods 7677-69h5b
можно изменить метку pod после открытия файла конфигурации.
Масштабирование набора реплик
Существует два способа изменить количество модулей pod, которыми управляет replicaSet.
Измените конфигурацию контроллера с помощью следующей команды:
kubectl edit rs <ReplicaSet_NAME>
Непосредственно увеличьте или уменьшите число с помощью следующей команды:
kubectl scale –replicas=2 rs <ReplicaSet_NAME>
При изменении файла манифеста можно заменить существующую конфигурацию обновленной:
kubectl replace –f nginx_replicaset.yaml
Затем, чтобы просмотреть состояние набора реплик, выполните команду kubectl get rs <ReplicaSet_NAME>
.
Автомасштабирование также является вариантом для replicaSets с использованием kubectl autoscale rs web –max=5
. Автомасштабирование можно использовать для адаптации количества модулей pod в соответствии с нагрузкой на ЦП узла.
Удаление набора реплик
Как и в случае с другими объектами Kubernetes, такими как DaemonSets, вы можете удалить ReplicaSets с помощью kubectl delete
команды . Например, можно использовать следующие команды:
Чтобы удалить Набор реплик, используя имя ReplicaSet, выполните следующую команду:
kubectl delete rs <ReplicaSet_NAME>
Чтобы удалить Набор реплик, используя его имя файла, выполните следующую команду:
kubectl delete –f nginx_replicaset.yaml
Предыдущие команды удаляют ReplicaSet и все модули pod, которыми он управляет. Если вы хотите удалить только ресурс ReplicaSet и оставить модули pod без владельца, необходимо удалить их вручную. Чтобы вручную удалить ReplicaSet, выполните следующую команду:
kubectl delete rs <ReplicaSet_NAME> --cascade=false
Дальнейшие действия
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по