Comments 12
, я работаю исполнительным директором по разработке в Газпромбанке. На разных этапах карьеры я участвовал во многих собеседованиях, а в настоящее время сам собеседую кандидатов на должность инженеров DevOps и системных администраторов в Газпромбанке
А .. а как тогда у вас построен процесс интервью, что вопросы про то, что делает ls -la задаются на вашем уровне ?
— Допустим, у нас postgresql в кластере k8s, и разработчики просят к ней доступ. Каким образом мы можем решить этот вопроc? — Прежде всего, мы можем развернуть в кластере веб-основанный тулинг для работы с базой, например pgadmin, и опубликовать его через ingress для разработчиков.
????????????????????????????????? В кластере то зачем ?
Есть также вариант с использованием какого-нибудь инструмента для доступа разработчика к кластеру (например, Kubernetes dashboard или LENS) с возможностью сделать exec в POD
?????? Зачем вообще разработчику ходить в боевой кластер, да еще с правами exec в кластере ???
Не очень понял что вас изумляет в последних двух вопросах.
Что значит "зачем в кластере поднимать pgadmin"? там речь идет о вебморде pgadmin, т.е. серверная часть предлагается развернуть внутри кластера, а юзер будет пользовать webморду
Во втором, я не увидел что речь идет про "боевой кластер". Вполне нормально на тестовом окружении дать такой доступ.
Что значит "зачем в кластере поднимать pgadmin"? там речь идет о вебморде pgadmin, т.е. серверная часть предлагается развернуть внутри кластера, а юзер будет пользовать webморду
1 pgadmin - это не web приложение, web к нему идет отдельно, читать тут
https://www.pgadmin.org/docs/pgadmin4/development/server_deployment.html
Какие плюсы у решения с web?
2 pgadmin - зачем его кластеризовать? то есть, какие плюсы разработчиками и организации от использования кластера ?
А с чего вы взяли, что кластер обязательно боевой? Чем вас так пугает постгресс в тестовом энве?
Простите, но чем вам не угодил постгрес в кластере. У нас два года уже в проде,в качестве sci ceph - полет нормальный.
управления конфигурациями приложений на основе контейнеризации и (реже) виртуализации
эээ
Открываю доку
Containers have become popular because they provide extra benefits, such as:
Agile application creation and deployment: increased ease and efficiency of container image creation compared to VM image use.
Continuous development, integration, and deployment: provides for reliable and frequent container image build and deployment with quick and efficient rollbacks (due to image immutability). https://kubernetes.io/docs/concepts/overview/
Открываю pluralsight
Kubernetes vs. Virtual Machines: Understanding the Differences
https://www.pluralsight.com/resources/blog/cloud/kubernetes-virtual-machines-difference
То есть, KubeVirt есть, https://kubevirt.io/ - но ???
— Пробы должны проверять функционал приложения, задействованный в обработке запросов пользователя.
Пробы ?? То есть из мониторинга приложения пробы вытаскиваются на уровень k8s ?
Например, если в одном кластере k8s у нас продуктовый и тестовые окружения
Можно не надо?
Да, многие ингресс-контроллеры поддерживают публикацию бинарных протоколов, но это неудобно.
открыл документацию
While the Kubernetes Ingress resource only officially supports routing external HTTP(s) traffic to services, ingress-nginx can be configured to receive external TCP/UDP traffic from non-HTTP protocols and route them to internal services using TCP/UDP port mappings that are specified within a ConfigMap.
https://kubernetes.github.io/ingress-nginx/user-guide/exposing-tcp-udp-services/
или это про FastCGI ?
https://kubernetes.github.io/ingress-nginx/user-guide/fcgi-services/
— Каким образом мы можем управлять размещением PODов на конкретных нодах кластера k8s?
Для более равномерного распределения подов, рекомендую использовать Pod Topology Spread Constraints.
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: DoNotSchedule
labelSelector:
matchLabels:
app: foo
matchLabelKeys:
- pod-template-hash
topologySpreadConstraints направлен на управление равномерным распределением подов по зонам, в то время как pod affinity
и node affinity
предоставляют более общие механизмы
Каким образом мы можем управлять размещением PODов на конкретных нодах кластера k8s?
Еще, как минимум, есть nodeName
Лебедь раком щуку
Kubernetes: шпаргалка для собеседования