how to pod create
This commit is contained in:
parent
cc801426b8
commit
fed9c9f66f
1 changed files with 40 additions and 0 deletions
40
interview.md
40
interview.md
|
|
@ -182,6 +182,7 @@
|
|||
- [Опиши архитектуру кубернетес кластера, из чего состоит?](#%D0%BE%D0%BF%D0%B8%D1%88%D0%B8-%D0%B0%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D1%83-%D0%BA%D1%83%D0%B1%D0%B5%D1%80%D0%BD%D0%B5%D1%82%D0%B5%D1%81-%D0%BA%D0%BB%D0%B0%D1%81%D1%82%D0%B5%D1%80%D0%B0-%D0%B8%D0%B7-%D1%87%D0%B5%D0%B3%D0%BE-%D1%81%D0%BE%D1%81%D1%82%D0%BE%D0%B8%D1%82)
|
||||
- [Что такое pod?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-pod)
|
||||
- [В чем разница между подом и контейнером?**](#%D0%B2-%D1%87%D0%B5%D0%BC-%D1%80%D0%B0%D0%B7%D0%BD%D0%B8%D1%86%D0%B0-%D0%BC%D0%B5%D0%B6%D0%B4%D1%83-%D0%BF%D0%BE%D0%B4%D0%BE%D0%BC-%D0%B8-%D0%BA%D0%BE%D0%BD%D1%82%D0%B5%D0%B9%D0%BD%D0%B5%D1%80%D0%BE%D0%BC)
|
||||
- [Как создается pod? Какие компоненты задействуются при его создании?](#%D0%BA%D0%B0%D0%BA-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%B5%D1%82%D1%81%D1%8F-%D0%BF%D0%BE%D0%B4-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D0%BA%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%B5%D0%BD%D1%82%D1%8B-%D0%B7%D0%B0%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D1%83%D1%8E%D1%82%D1%81%D1%8F-%D0%BF%D1%80%D0%B8-%D0%B5%D0%B3%D0%BE-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B8)
|
||||
- [Может ли под запуститься на двух разных узлах?](#%D0%BC%D0%BE%D0%B6%D0%B5%D1%82-%D0%BB%D0%B8-%D0%BF%D0%BE%D0%B4-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D1%82%D0%B8%D1%82%D1%8C%D1%81%D1%8F-%D0%BD%D0%B0-%D0%B4%D0%B2%D1%83%D1%85-%D1%80%D0%B0%D0%B7%D0%BD%D1%8B%D1%85-%D1%83%D0%B7%D0%BB%D0%B0%D1%85)
|
||||
- [Что такое ReplicaSet?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-replicaset)
|
||||
- [Что такое Deployment?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-deployment)
|
||||
|
|
@ -4117,6 +4118,45 @@ https://access.redhat.com/articles/3129891
|
|||
|
||||
---
|
||||
|
||||
### Как создается под? Какие компоненты задействуются при его создании?
|
||||
|
||||
- Ответ
|
||||
|
||||
Предварительная информация.
|
||||
Воркер узлы состоят из трех компонентов.
|
||||
kubelet - это модуль коммуникации сервера с kubeapi.
|
||||
Он сообщает информацию о себе в куб апи. И принимает ее оттуда же.
|
||||
CRI - container runtime engine - штука, которая непосредственно создает контейнер.
|
||||
proxy kube server - нужен для взаимодействия узлов между собой, например, когда вычислительные мощности требуют задействовать более, чем один узел.
|
||||
|
||||
Первое что задействуется - команда kubectl.
|
||||
Далее оно попадает на kubeAPI.
|
||||
KubeAPI - является основным компонентом управления кластером кубера.
|
||||
|
||||
Далее kubeapi аутентифицирует и валидирует запрос. Проверит кто делает запрос, и проверит есть ли у запрашиваемого доступ к кластеру.
|
||||
|
||||
Далее апи сервер запишет этот под в etcd.
|
||||
Etcd - это хранилище данных, которое распределено по кластеру, и является "точкой правды" для кластера кубера.
|
||||
Далее etcd возвращает ответ в апи о том, что под создан. Но по факту пока что еще ничего не создано кроме записи в базе.
|
||||
|
||||
Далее в дело вступает планировщик, scheduler. Он следит за нагрузкой которую необходимо создать.
|
||||
Он определяет на какую ноду можно разместить тот или иной под.
|
||||
Он периодически опрашивает куб апи на предмет наличия задач.
|
||||
Шедулер создает поды на воркер узлах, и смотрит на доступные вычивлительные мощности, место и на ограничения.
|
||||
После того, как он определяет где можно создать подходящий под, он сообщает об этом в kubeAPI.
|
||||
|
||||
kubeapi обращается в kubelet той ноды, на которую указал шедулер, как на подходящую.
|
||||
kubelet работает вместе с CRI, который создаст под, в котором работает контейнер.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
### Может ли под запуститься на двух разных узлах?
|
||||
|
||||
- Ответ
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue