Развертывание Pod с Nginx в Kubernetes

KubernetesBeginner
Практиковаться сейчас

Введение

В рамках этого испытания вам предстоит развернуть в кластере Kubernetes Pod с веб-сервером Nginx последней версии. Ваша цель — убедиться, что Pod запущен и функционирует корректно, а также доступен извне через соответствующий сервис. Вам потребуется составить манифест Kubernetes в формате YAML для запуска Pod и создать сервис типа NodePort для публикации веб-сервера.

Развертывание Pod с Nginx

В роли начинающего DevOps-инженера вам поручено запустить в среде Kubernetes Pod с актуальной версией веб-сервера Nginx. Необходимо добиться стабильной работы контейнера и настроить сетевой доступ к нему через сервис.

Задачи

  • Создайте YAML-файл Kubernetes для развертывания Pod с использованием образа Nginx последней версии.
  • Создайте сервис типа NodePort для предоставления доступа к этому Pod.

Требования

  • Разместите YAML-файл Kubernetes в директории ~/project.
  • Назовите файл nginx-pod.yaml.
  • Версия образа контейнера Nginx должна быть latest.
  • Тип сервиса должен быть строго NodePort.

Примеры

Пример структуры YAML-файла:

apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
  labels:
    app: nginx
spec:
  containers:
    - name: nginx
      image: nginx:latest
      ports:
        - containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  selector:
    app: nginx
  type: placeholder
  ports:
    - port: 80
      targetPort: 80

Пример URL для доступа к сервису:

http://<node-ip>:<node-port>

Подсказки

  • Используйте команды kubectl для взаимодействия с кластером Kubernetes.
  • Убедитесь, что Pod перешел в состояние выполнения (Running), а сервис правильно перенаправляет трафик.
✨ Проверить решение и практиковаться

Резюме

В ходе данного испытания вы научились развертывать Pod в Kubernetes с использованием актуального образа Nginx и настраивать сетевой доступ через сервис типа NodePort. Вы закрепили навыки работы с YAML-манифестами и инструментами командной строки для управления жизненным циклом приложений в кластере.