added: Добавлены вопросы Kubernetes, LinuxMainPlus, ThreotyDevOps
This commit is contained in:
@@ -462,4 +462,74 @@ StatefulSet используются для управления stateful-при
|
||||
|
||||
Чтобы HPA работал необходимо, чтобы в кластере был установлен metrics-server, чтобы считывать меетрики потребления ресурсов. По умолчанию HPA можно настроить для метрики потребления CPU и/или памяти. Возможно расширение функционала HPA с помощью [keda](https://keda.sh/).
|
||||
|
||||
</details>
|
||||
|
||||
34. Что такое Headless сервис?
|
||||
|
||||
<details>
|
||||
<summary>Ответ</summary>
|
||||
|
||||
При указании `ClusterIP: None` для сервиса мы создаём "безголовый сервис", у данного сервиса не будет виртуального IP адреса. Headless сервис это просто А-запись в системе DNS, таким образом имя сервиса преобразуется не в виртуальный IP сервиса, а сразу в IP пода. Headless сервисы полезны, когда приложение само должно управлять тем, к какому Pod подключаться. Например, gRPC-клиенты держат по одному соединению с сервисами и сами управляют запросами, мультиплексируя запросы к одному серверу. В случае использования ClusterIP клиент может создать одно подключение и нагружать ровно один Pod сервера.
|
||||
|
||||
</details>
|
||||
|
||||
35. Что такое ExternalName сервис?
|
||||
|
||||
<details>
|
||||
<summary>Ответ</summary>
|
||||
|
||||
Сервис типа ExternalName добавляет запись типа CNAME во внутренний DNS сервер Kubernetes. Например:
|
||||
```
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: ya-ru
|
||||
spec:
|
||||
type: ExternalName
|
||||
externalName: ya.ru
|
||||
```
|
||||
Для сервиса `ya-ru` не создаётся endpoint. Поэтому сразу переходим к запросам к DNS.
|
||||
```
|
||||
ya-ru.default.svc.cluster.local. 5 IN CNAME ya.ru.
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
36. Что такое ExternalIP сервис?
|
||||
|
||||
<details>
|
||||
<summary>Ответ</summary>
|
||||
|
||||
При определении сервиса можно добавить поле externalIPs, в котором можно указать IP адрес машины кластера. При обращении на этот IP и указанный в сервисе порт, запрос будет переброшен на соответствующий сервис.
|
||||
Например:
|
||||
```
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: external-svc-nginx
|
||||
labels:
|
||||
app: nginx
|
||||
spec:
|
||||
ports:
|
||||
- name: http-main
|
||||
port: 8080
|
||||
protocol: TCP
|
||||
targetPort: 8090
|
||||
selector:
|
||||
app: nginx
|
||||
externalIPs:
|
||||
- 192.168.218.178
|
||||
```
|
||||
При обращении к 192.168.218.178:8080 запрос будет переброшен к сервису external-svc-nginx:8080
|
||||
|
||||
</details>
|
||||
|
||||
37. Что такое NodePort сервис?
|
||||
|
||||
<details>
|
||||
<summary>Ответ</summary>
|
||||
|
||||
Сервисы типа NodePort открывают порт на каждой ноде кластера на сетевых интерфейсах хоста. Все запросы, приходящие на этот порт, будут пересылаться на endpoints, связанные с данным сервисом.
|
||||
Диапазон портов, который можно использовать в NodePort — 30000-32767. Но его можно изменить при конфигурации кластера.
|
||||
|
||||
</details>
|
||||
@@ -349,3 +349,24 @@ IP адрес хоста, при его наличии у DNS сервера, в
|
||||
- Запрос может также содержать и другие заголовки. Необходимо только, чтобы сервер смог понять эти заголовки.
|
||||
|
||||
</details>
|
||||
|
||||
15. Порядок загрузки дистрибутива Linux.
|
||||
|
||||
<details>
|
||||
<summary>Ответ</summary>
|
||||
|
||||
1. Включение компьютера кнопкой.
|
||||
2. Загрузить BIOS / UEFI из NVRAM.
|
||||
3. Собрать сведения об аппаратуре.
|
||||
4. Выбрать устройства для запуска (диск, сеть).
|
||||
5. Идентифицировать системный раздел EFI.
|
||||
6. Загрузить BIOS / UEFI из NVRAM.
|
||||
7. Определить какое ядро загрузить.
|
||||
8. Загрузить ядро.
|
||||
9. Создать структуры данных ядра.
|
||||
10. Запустить init / systemd как PID 1.
|
||||
11. Выполнить сценарии запуска.
|
||||
12. Запустить систему.
|
||||
|
||||
</details>
|
||||
|
||||
|
||||
@@ -4,4 +4,18 @@
|
||||
|
||||
2. Что такое Scrum и Kanban? Чем они отличаются?
|
||||
|
||||
3. Какие инструменты использует DevOps?
|
||||
3. Какие инструменты использует DevOps?
|
||||
|
||||
4. Теорема САР. Что это такое?
|
||||
|
||||
<details>
|
||||
<summary>Ответ</summary>
|
||||
|
||||
Теорема CAP (известная также как теорема Брюера) — эвристическое утверждение о том, что в любой реализации распределённых вычислений возможно обеспечить не более двух из трёх следующих свойств:
|
||||
|
||||
- Согласованность данных (англ. consistency) — во всех вычислительных узлах в один момент времени данные не противоречат друг другу;
|
||||
- Доступность (англ. availability) — любой запрос к распределённой системе завершается корректным откликом, однако без гарантии, что ответы всех узлов системы совпадают;
|
||||
- Устойчивость к разделению (англ. partition tolerance) — расщепление распределённой системы на несколько изолированных секций не приводит к некорректности отклика от каждой из секций.
|
||||
|
||||
</details>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user