#kubernetes
#kubernetes
Вопрос:
Можно ли избежать этих хэшей в имени модуля?
> kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-ingress-nginx-controller-599c688b77-nbvds 1/1 Running 0 11d
pgadmin-756f5949ff-mbkk9 1/1 Running 0 11d
postgres-postgresql-0 1/1 Running 0 11d
redis-master-5d9cfb54f8-8pbgq 1/1 Running 43 4d
Ответ №1:
В соответствии с вашими требованиями Statefulset может удовлетворить ваши потребности. При использовании deployment это невозможно. Statefulset присваивает имя модулям постепенно, например pgadmin-0, pgadmin-1 и так далее. Я бы настоятельно рекомендовал проверить этот раздел документации, поскольку statefulset предлагает очень классную функцию, такую как последовательное развертывание модулей и удаление их также в одном модуле по одному за раз и т.д.
https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/
Ответ №2:
Нет, невозможно избежать хэша в имени модуля, если вы используете развертывание. Вы можете добавлять собственные метки / аннотации и выбирать модули с этими метками или работать с ними.
Модули, созданные с помощью statefulset, имеют уникальный идентификатор, который состоит из порядкового номера, т. Е. redis-master-0
redis-master-1
redis-master-2
и т.д. Если вы используете рабочую нагрузку с отслеживанием состояния, такую как redis, я бы предложил использовать statefulset