Метаинформация объектов Kubernetes для людей
Ниже представлен список полезных лейблов и аннотаций для манифестов Kubernetes, которые упрощают сбор информации об объектах кластера.
1️⃣
Позволяет понимать, каким образом вносить изменения в манифесты, примеры значений — Helm, Ansible, Manual. Лейбл обычно проставляется в Helm-чартах, но может быть полезен, если ресурсы в вашем кластере могут создаваться разными способами.
2️⃣
Аннотация содержит ссылку на исходный код проекта, к которому относится объект. Обычно системы CI/CD предоставляют набор встроенных переменных, в том числе ссылку на исходный проект. Ее можно использовать для динамического проставления таких значений.
3️⃣
Аннотация содержит ссылку на конкретную джобу CI/CD пайплайна, которая задеплоила этот объект в кластер. Также может проставляться из встроенных переменных. Аннотация удобна, если нужно просмотреть лог CI при дебаге работы компонента в кластере.
4️⃣
С помощью этой аннотации можно указать владельца сервиса — лучше всего сразу в формате имени пользователя в мессенджере. Позволяет не искать, к кому идти, когда с приложением что-то случилось.
5️⃣
Ссылка на чат по продукту — опять же, позволяет не искать, куда обратиться с вопросом о проекте.
6️⃣
Ссылка на конкретный запрос с логами сервиса в Kibana и т.п. С ее помощью удобно сразу из кластера найти логи нужного компонента.
7️⃣
Тоже самое, но для метрик.
8️⃣
Дежурный, ответственный за сервис. Особенно удобно пользоваться, если есть внутренний трекер дежурств. В таком случае при назначении нового дежурного аннотацию можно менять на объектах автоматически из данных трекера.
Указанные лейблы и аннотации рекомендуют проставлять на все объекты кластера,
а не только, например, на Deployment. Благодаря этому сможете находить всю нужную информацию по любому объекту кластера.
#полезное #k8s #kubernetes
#авторскийпост @Павел Селиванов
Ниже представлен список полезных лейблов и аннотаций для манифестов Kubernetes, которые упрощают сбор информации об объектах кластера.
1️⃣
app.kubernetes.io/managed-by
Позволяет понимать, каким образом вносить изменения в манифесты, примеры значений — Helm, Ansible, Manual. Лейбл обычно проставляется в Helm-чартах, но может быть полезен, если ресурсы в вашем кластере могут создаваться разными способами.
2️⃣
k8s.<corp domain>/source
Аннотация содержит ссылку на исходный код проекта, к которому относится объект. Обычно системы CI/CD предоставляют набор встроенных переменных, в том числе ссылку на исходный проект. Ее можно использовать для динамического проставления таких значений.
3️⃣
k8s.<corp domain>/ci-job-url
Аннотация содержит ссылку на конкретную джобу CI/CD пайплайна, которая задеплоила этот объект в кластер. Также может проставляться из встроенных переменных. Аннотация удобна, если нужно просмотреть лог CI при дебаге работы компонента в кластере.
4️⃣
k8s.<corp domain>/owner
С помощью этой аннотации можно указать владельца сервиса — лучше всего сразу в формате имени пользователя в мессенджере. Позволяет не искать, к кому идти, когда с приложением что-то случилось.
5️⃣
k8s.<corp domain>/chat
Ссылка на чат по продукту — опять же, позволяет не искать, куда обратиться с вопросом о проекте.
6️⃣
k8s.<corp domain>/logs
Ссылка на конкретный запрос с логами сервиса в Kibana и т.п. С ее помощью удобно сразу из кластера найти логи нужного компонента.
7️⃣
k8s.<corp domain>/dashboard
Тоже самое, но для метрик.
8️⃣
k8s.<corp domain>/on-call
Дежурный, ответственный за сервис. Особенно удобно пользоваться, если есть внутренний трекер дежурств. В таком случае при назначении нового дежурного аннотацию можно менять на объектах автоматически из данных трекера.
Указанные лейблы и аннотации рекомендуют проставлять на все объекты кластера,
а не только, например, на Deployment. Благодаря этому сможете находить всю нужную информацию по любому объекту кластера.
#полезное #k8s #kubernetes
#авторскийпост @Павел Селиванов