- Домашнее задание выполните в Google Docs и отправьте на проверку ссылку на ваш документ в личном кабинете.
- В названии файла укажите номер лекции и фамилию студента. Пример названия: 6.5. Kubernetes. Часть 1 — Александр Александров.
- Перед отправкой проверьте, что доступ для просмотра открыт всем, у кого есть ссылка. Если нужно прикрепить дополнительные ссылки, добавьте их в свой Google Docs.
Любые вопросы по решению задач задавайте в чате учебной группы.
Перед отправкой работы на проверку удаляйте неиспользуемые ресурсы. Это нужно, чтобы предупредить неконтролируемый расход средств, полученных после использования промокода.
Рекомендации по ссылке.
Выполните действия:
- Запустите Kubernetes локально, используя k3s или minikube на свой выбор.
- Добейтесь стабильной работы всех системных контейнеров.
- В качестве ответа пришлите скриншот результата выполнения команды kubectl get po -n kube-system.
Есть файл с деплоем:
---
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 должен запускаться без пароля;
- создайте Service, который будет направлять трафик на этот Deployment;
- версия образа redis должна быть зафиксирована на 6.0.13.
- Запустите Deployment в своём кластере и добейтесь его стабильной работы.
- В качестве решения пришлите получившийся файл.
Выполните действия:
- Напишите команды kubectl для контейнера из предыдущего задания:
- выполнения команды ps aux внутри контейнера;
- просмотра логов контейнера за последние 5 минут;
- удаления контейнера;
- проброса порта локальной машины в контейнер для отладки.
- В качестве решения пришлите получившиеся команды.
Их выполнение необязательное и не влияет на получение зачёта по домашнему заданию. Можете их решить, если хотите лучше разобраться в материале.
Есть конфигурация nginx:
location / {
add_header Content-Type text/plain;
return 200 'Hello from k8s';
}
Выполните действия:
- Напишите yaml-файлы для развёртки nginx, в которых будут присутствовать:
- ConfigMap с конфигом nginx;
- Deployment, который бы подключал этот configmap;
- Ingress, который будет направлять запросы по префиксу /test на наш сервис.
- В качестве решения пришлите получившийся файл.