Библиотека задач по DevOps | тесты, код, задания
2.87K subscribers
131 photos
3 videos
2 files
269 links
Задачи и тесты по DevOps для тренировки и обучения.

По рекламе: @proglib_adv

Наши каналы: https://t.me/proglibrary/9197

Учиться у нас: https://proglib.io/w/2b07c285

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
Как можно проверить состояние всех модулей в кластере Kubernetes?

👾 — kubectl get pods -o wide
👍 — kubectl describe pods
🥰 — kubectl get pod -o json
— kubectl logs pods

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👾10👍2
Какой из перечисленных типов объектов Kubernetes является допустимым?

👾
— kind: PodTemplate
👍 — kind: ReplicaSet
🥰 — kind: ServiceAccount
— Все вышеперечисленное

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
11
Какова цель сервиса Kubernetes?

👾
— Определение и управление набором модулей, которые работают вместе для предоставления услуги
👍 — Для обеспечения балансировки нагрузки и распределения сетевого трафика между несколькими модулями
🥰 — Для создания и управления постоянными томами хранения для Pod-ов
— Для автоматического масштабирования количества модулей в зависимости от использования ресурсов

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42
Как удалить развертывание Kubernetes с именем «my-deployment»?

👾 — kubectl delete deployment my-deployment
👍 — kubectl remove deployment my-deployment
🥰 — kubectl rm deployment my-deployment
— kubectl delete deploy my-deployment

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👾8
Необходимо проходить по списку URL'ов и проверять их доступность. Условия:
Список URL'ов находится в файле /urls.txt;
Доступный URL - значит код ответа не 5XX или 4XX;
Проверка должна быть оформлена в виде функции bash, которая должна вызываться внутри скрипта;
Функция должна принимать в качестве входного параметра путь к файлу с URL'ами;
При любом ответе недоступности от сервиса - прерывать дальнейшую проверку. Временное ограничение 20 мин.

Скрипт проверки. Запускать ./script.sh <путь до файла с URLs>

#!/usr/bin/env bash

set -xueo pipefail

FILE_URLS=${1:-}
if [[ -z "${FILE_URLS}" ]]; then
echo "File with URLs list do not defined."
exit 1
fi

function checkUrls() {
local URLS=$1
for URL in $(cat
$URLS); do
STATUS=
curl -LI "${URL}" -o /dev/null -w '%{http_code}' -s
if [[ "${STATUS}" == "500" ]] || [[ "${STATUS}" == "400" ]]; then
echo "URL ${URL} unavailable!"
exit 1
else
echo "URL ${URL} available."
fi
done
}

checkUrls "${FILE_URLS}"


Библиотека задач по DevOps
Как связать EndpointSlice со сервисом в Kubernetes?

👾 — Задав метку kubernetes.io/service-name
👍 — Используя определенную версию API
🥰 — Задав соответствующие селекторы
— Настроив сетевые политики

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👾2
Для чего используется пространство имен Kubernetes?

👾
— Обеспечить возможность группировки и изоляции объектов в кластере Kubernetes
👍 — Для создания отдельных кластеров в рамках одной установки Kubernetes
🥰 — Для определения различных конфигураций для одного и того же набора объектов
— Обеспечить контроль доступа и безопасность определенных объектов

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👾7
Каким образом мы можем вывести ноду из работы для обслуживания?

Мы можем запретить запуск подов на ноде с помощью kubectl cordon и удалить поды с ноды при помощи kubectl drain.

Библиотека задач по DevOps
Установите узел с именем «worker node» как недоступный и перепланируйте все работающие на нем модули

Kubectl drain node <worker node> --ignore-daemonsets

Библиотека задач по DevOps
Что такое Kubernetes HPA (горизонтальное автомасштабирование Pod)?

👾 — Механизм автоматического масштабирования количества модулей в зависимости от использования ресурсов
👍 — Способ динамической корректировки ресурсов, выделяемых модулю, в зависимости от спроса
🥰 — Метод распределения сетевого трафика между несколькими модулями
— Инструмент для мониторинга и оптимизации использования ресурсов в кластере

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👾10
Что такое «виртуальная память» и какой цели она служит?

Виртуальная память объединяет оперативную память вашего компьютера с временным пространством на жестком диске. Когда оперативная память заканчивается, виртуальная память помогает перемещать данные из оперативной памяти в пространство, называемое файлом подкачки. Перемещение данных в файл подкачки может освободить оперативную память, чтобы ваш компьютер мог завершить свою работу. В общем, чем больше оперативной памяти у вашего компьютера, тем быстрее работают программы.

Библиотека задач по DevOps
Почему DaemonSet не нужен scheduler?

DaemonSet гарантирует, что определенный под будет запущен на всех нодах кластера. При наличии DaemonSet в кластере на любой из существующих и будущих нод в кластере зарезервированы ресурсы для пода на ноде.

Здесь стоит сделать оговорку насчет того, что DaemonSet может работать не на всех нодах кластера, а на некоторых, выбранных, например, по nodeSelector. К примеру, у нас есть GPU ноды и нам нужно на все эти ноды задеплоить микросервис выполняющий вычисления на GPU


Библиотека задач по DevOps
Что такое namespace в k8s и для чего он нужен?

Namespace в Kubernetes выполняет несколько функций. Основное назначение — группировка объектов, относящихся к одному приложению или проекту. Большинство объектов в Kubernetes принадлежат определенным неймспейсам, таким как деплойменты, секреты, учетные записи сервисов и другие. Помещая их в определенный неймспейс, мы можем одновременно просматривать и применять к ним правила безопасности, квоты ресурсов, сетевые политики и правила service mesh.

Кроме того, неймспейсы участвуют в формировании DNS-имен внутри кластера. Например, DNS-имена сервисов формируются по принципу [имя сервиса].[неймспейс].[суффикс кластера (по умолчанию svc.cluster.local)].


Библиотека задач по DevOps
👍3
Что такое ConfigMap в Kubernetes?

👾
— Способ внедрения данных конфигурации в контейнеры
👍 — Тип тома, на котором хранятся файлы конфигурации модулей
🥰 — Механизм динамической настройки параметров контейнера во время выполнения
— Всё вышеперечисленное

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👾10
Какая из следующих инструкций Dockerfile используется для установки рабочего каталога внутри контейнера Docker?

👾 — WORKDIR /app
👍 — RUN cd /app
🥰 — ENV DIR /app
— EXPOSE /app

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👾23
Как сервис без селекторов в Kubernetes обеспечивает миграцию рабочей нагрузки?

👾 — Автоматизируя развертывание подов
👍 — Облегчая доступ к внешним ресурсам
🥰 — Абстрагируя доступ к серверным службам
— Применяя сетевые политики

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🤔1
Что Kubernetes поддерживает для определений портов в сервисах для поддержки нескольких протоколов?

👾 — Динамическое распределение портов
👍 — Определение одного порта
🥰 — Определение нескольких портов
— Переадресация портов

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰2
Что делает команда kubectl delete?

👾 — Выводит список ресурсов
👍 — Удаляет указанный ресурс
🥰 — Применяет изменение конфигурации
— Отображает сведения о ресурсе

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16👾2
🔥 Вы ещё можете застать старый добрый Proglib — с вечным доступом к курсам.

С 1 августа всё меняется: навсегда — останутся только те, кто успел купить сейчас.

-40% на все курсы. Включая обновлённый Python (кроме курса по AI-агентам)

Это не просто распродажа. Это — последняя точка входа в Proglib Academy по старым правилам.

📚 Выбрать и забрать свой курс навсегда → https://clc.to/TBtqYA
Тип сервиса _____________ работает только в том случае, если ваш кластер настроен для работы с облачным провайдером.

👾 — ClusterIP
👍 — LoadBalancer
🥰 — NodePort
— ExternalName

Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🤔1