Что такое Pod в Kubernetes?
Этот вопрос проверяет понимание базовой единицы развертывания в Kubernetes и ее роли в системе.
Короткий ответ
Pod – это наименьшая развертываемая единица в Kubernetes, представляющая собой один или несколько контейнеров, работающих вместе. Контейнеры внутри Pod-а разделяют сеть и файловую систему, что позволяет им взаимодействовать друг с другом. Kubernetes управляет Pod-ами, назначая их узлам (nodes) и обеспечивая их работу.
Длинный ответ
В Kubernetes Pod – это основная единица выполнения, которая инкапсулирует один или несколько контейнеров. Если приложение состоит из нескольких контейнеров, которые должны работать вместе (например, веб-сервер и прокси-кэш), их можно объединить в один Pod.
Особенности Pod-а:
- Единая сеть – все контейнеры внутри Pod-а используют один IP-адрес.
- Общий диск – контейнеры могут совместно использовать файловую систему.
- Общее управление – Kubernetes управляет Pod-ами, а не отдельными контейнерами.
Пример манифеста Pod-а:
apiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
containers:
- name: app-container
image: nginx
ports:
- containerPort: 80Этот Pod запускает контейнер с nginx, который слушает порт 80.
Вывод:
Pod – это базовая единица развертывания Kubernetes, объединяющая контейнеры в логическую группу. Kubernetes управляет Pod-ами, обеспечивая их работу и взаимодействие.