Skip to content

Latest commit

 

History

History
93 lines (70 loc) · 3.9 KB

6-05.md

File metadata and controls

93 lines (70 loc) · 3.9 KB

Домашнее задание к занятию "6.5 Kubernetes ч.1"

**

Домашнее задание выполните в Google Docs и отправьте в личном кабинете на проверку ссылку на ваш документ.

Название файла должно содержать номер лекции и фамилию студента. Пример названия: "6.5 Kubernetes ч.1. - Александр Дивеев"

Перед тем как выслать ссылку, убедитесь, что ее содержимое не является приватным (открыто на просмотр всем, у кого есть ссылка). Если необходимо прикрепить дополнительные ссылки, просто добавьте их в свой Google Docs.

Любые вопросы по решению задач задавайте в чате Slack.


Задание 1.

Запустите кубернетес локально используя k3s или minikube на свой выбор. Добейтесь стабильной работы всех системных контейнеров.

В качестве ответа пришлите скриншот результата выполнения команды kubectl get po -n kube-system


Задание 2.

Есть файл с деплоем:

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: redis
spec:
  selector:
    matchLabels:
      app: redis
  replicas: 1
  template:
    metadata:
      labels:
        app: redis
    spec:
      containers:
      - name: master
        image: bitnami/redis
        env:
         - name: REDIS_PASSWORD
           value: password123
        ports:
        - containerPort: 6379

Измените файл так, чтобы:

  • redis запускался без пароля;
  • создайте сервис который будет направлять трафик на этот деплоймент;
  • версия образа redis была зафиксирована на 6.0.13.

Запустите деплоймент в своем кластере и добейтесь его стабильной работы.

Приведите ответ в виде получившегося файла.


Задание 3.

Напишите команды kubectl для контейнера из предыдущего задания:

  • выполнения команды ps aux внутри контейнера;
  • просмотра логов контейнера за последние 5 минут;
  • удаления контейнера;
  • проброса порта локальной машины в контейнер для отладки.

Приведите ответ в виде получившихся команд.


Дополнительные задания (со звездочкой*)

Эти задания дополнительные (не обязательные к выполнению) и никак не повлияют на получение вами зачета по этому домашнему заданию. Вы можете их выполнить, если хотите глубже и/или шире разобраться в материале.

Задание 4.

Есть конфигурация nginx

location / {
    add_header Content-Type text/plain;
    return 200 'Hello from k8s';
}

Напишите yaml файлы для развертки nginx в которых будут присутствовать:

  • ConfigMap с конфигом nginx;
  • Deployment который бы подключал этот configmap;
  • Ingress который будет направлять запросы по префиксу /test на наш сервис.

Приведите ответ в виде получившегося файла.