TODOs
Списки заданий для подготовки к Х
DevOps
DevOps
CiCd
- Поднять хранилище кода (gitlab, gitea, bitbucket, etc) и систему сборки (Drone, gitlab-ci, Jenkins)
- Соединить их
- Найти какое-нибудь приложение, например ХХХ и настроить его сборку
- Настроить сборку и развертывания в разные окружения:
- prod: заливать при создании тега из мастер ветки
- Stage: заливать из мастер ветки без создания тега, при пуше коммита
- Dev: заливать при ручном запуске не по мастер ветке
Разворачивать в kubernetes, либо в docker. Отправлять куда-нибудь уведомление при развертывании (телега, дискорд, почта, куда угодно). Если это кубер, сделай helm чарт.
DevOps
K8s
- Поднять кластер на каком-нибудь rke2 (hard: поднять руками через kubeadm)
- Поднять под
- Поднять деплоймент
- Потыкать helm
- Разделить доступы - RBAC
- Что такое контекст?
- Разграничить доступы к неймспейсам
- Custom resource definition (CRD)
- Подними Load Balancer (MetalLB например)
Linux
Linux
Диск, сеть, файлы
Это больше похоже на список вопросов для собеседования
- Рассказать про диск: блочное устройство, разметка (геометрия) диска, файловая система, mbr/gpt
- Программа скачивает файлик из интернета на диск. Описать как она резолвит домен (обращение к ядру), как подключается к конечному серверу (через дескриптор по IP), описать подключение по модели OSI, как создаёт файл, дескриптор файла, запись данных, завершение (закрытие всех сокетов)