add: модули и параметры ядра
This commit is contained in:
parent
54cf07242b
commit
488b47eb17
@ -305,8 +305,9 @@ server ntp.msk-ix.ru minpoll 8 maxpoll 12 prefer
|
||||
времени для синхронизации. Если сервер недоступен, NTP-клиент будет пытаться подключиться к нему снова
|
||||
через некоторое время.
|
||||
* `minpoll` и `maxpoll` -- это минимальный и максимальный интервалы обращения к серверу. Значения -- это степени
|
||||
двойки, которые определяются как 2 в степени N, где N -- это число. По умолчанию значения равны 6 (64 секунды) и 10
|
||||
(~17 минут). Но для микрокомпьютеров можно установить значения побольше. У нас 9 (~8.5 минут и 14 (~4.5 часа).
|
||||
двойки. По умолчанию значения равны 6 (64 секунды) и 10 (~17 минут). Но для микрокомпьютеров можно установить
|
||||
побольше. У нас 9 (~8.5 минуты) и 14 (~4.5 часа). На самом деле обращения к серверам времени будут происходить
|
||||
в случайные интервалы времени (jitter), но в пределах указанных значений.
|
||||
* `prefer`-- это приоритетный сервер. Если у нас несколько серверов, то NTP-клиент будет обращаться к приоритетному.
|
||||
|
||||
Это позволит уменьшить нагрузку от NTP-клиента и снизить трафик.
|
||||
@ -334,9 +335,11 @@ sudo apt install keepalived haproxy
|
||||
|
||||
## Установим Docker и Kubernetes
|
||||
|
||||
Для начала надо установить GPG-ключи репозитория Docker и Kubernetes. Установка GPG-ключей для Docker подробна
|
||||
описана в [отдельной инструкции](../docker/docker-trusted-gpg.md). Для GPG-Kubernetes ключи устанавливаются похожим
|
||||
образом. Скачиваем GPG-ключ в папку `/etc/apt/trusted.gpg.d/`:
|
||||
#### Ключи и репозитории
|
||||
|
||||
Для начала на каждом узле нашего будущего кластера надо установить GPG-ключи репозитория Docker и Kubernetes.
|
||||
Установка GPG-ключей для Docker подробна описана в [отдельной инструкции](../docker/docker-trusted-gpg.md). Для
|
||||
Kubernetes ключи устанавливаются похожим образом. Скачиваем GPG-ключ в папку `/etc/apt/trusted.gpg.d/`:
|
||||
```shell
|
||||
curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.30/deb/Release.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/kubernetes-apt-keyring.gpg
|
||||
```
|
||||
@ -351,4 +354,59 @@ echo 'deb [arch=arm64 signed-by=/etc/apt/trusted.gpg.d/kubernetes-apt-keyring.gp
|
||||
sudo apt update
|
||||
```
|
||||
|
||||
#### Модули и параметры ядра
|
||||
|
||||
В каждом узле, создадим конфигурационный файл для загрузки необходимых Kubernetes модулей ядра (`overlay` и
|
||||
`br_netfilter`). Для этого создадим конфиг в папке `/etc/modules-load.d/`. Файл может иметь любое имя с расширением
|
||||
`.conf`, для удобства назовем его `k8s.conf`:
|
||||
```shell
|
||||
sudo nano /etc/modules-load.d/k8s.conf
|
||||
```
|
||||
|
||||
В файле пропишем модули:
|
||||
```yaml
|
||||
# Load overlay module (драйвер для работы с файловой системой overlayfs, для объединения
|
||||
# нескольких файловых систем в одну)
|
||||
overlay
|
||||
|
||||
# Load br_netfilter module (Драйвер для работы с сетевыми мостами и фильтрацией пакетов)
|
||||
br_netfilter
|
||||
```
|
||||
|
||||
Сохраняем и закрываем файл и теперь, благодаря конфигу, эти модули ядра будут автоматически загружаться при каждой
|
||||
перезагрузке узла. Но чтобы загрузить сразу и сейчас выполним команды:
|
||||
```shell
|
||||
sudo modprobe overlay
|
||||
sudo modprobe br_netfilter
|
||||
```
|
||||
|
||||
Затем создадим конфигурационный файл для ядра Linux в папке `/etc/sysctl.d/`. В эту папку помещаются файлы с
|
||||
для настройки параметров ядра Linux. Создадим файл `k8s.conf`:
|
||||
```shell
|
||||
sudo nano /etc/sysctl.d/k8s.conf
|
||||
```
|
||||
|
||||
В файле пропишем параметры:
|
||||
```toml
|
||||
# Enable IPv6 traffic through iptables on bridges (Разрешаем обработку IPv6-трафика через iptables на сетевых мостах)
|
||||
net.bridge.bridge-nf-call-ip6tables = 1
|
||||
|
||||
# Enable IPv4 traffic through iptables on bridges (Разрешаем обработку IPv4-трафика через iptables на сетевых мостах)
|
||||
net.bridge.bridge-nf-call-iptables = 1
|
||||
|
||||
# Enable IP forwarding (Разрешаем пересылку IP-пакетов для маршрутизации трафика между контейнерами)
|
||||
net.ipv4.ip_forward = 1
|
||||
```
|
||||
|
||||
В принципе, первые два параметра уже установлены по умолчанию (посмотреть текущие параметры ядра можно командой
|
||||
`sysctl -a`), но на всякий случай все равно укажем их в файле. Сохраняем и закрываем файл. Теперь при перезагрузке
|
||||
узла эти параметры будут загружаться автоматически. Но чтобы загрузить их сразу исопльзуем команду:
|
||||
```shell
|
||||
sudo sysctl -f /etc/sysctl.d/k8s.conf
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user