Skip to content

Ядро

Параметры командной строки

ALT Orchestra поддерживает ряд параметров командной строки ядра. Некоторые из них являются необходимы, другие - необязательными и полезны в определенных обстоятельствах.

Обязательные параметры:

  • talos.platform может быть одним из списка: akamai, aws, azure, container, digitalocean, equinixMetal, gcp, hcloud, metal, nocloud, openstack, oracle, scaleway, upcloud, vmware, vultr
  • slab_nomerge требуется в соответствии с требованиями KSPP
  • pti=on требуется в соответствии с требованиями KSPP

Другие параметры:

  • init_on_alloc=1/0 рекомендуется KSPP, включено по умолчанию в конфигурации ядра, но может быть отключено для повышения производительности за счет безопасности
  • init_on_free=0/1 рекомендуется KSPP, по умолчанию отключено в конфигурации ядра, но может быть включено для повышения безопасности за счет производительности

Доступные параметры, специфичные для ALT Orchestra

ip

Первоначальная настройка интерфейса, маршрутов, DNS, NTP-серверов (нескольких). Полная документация доступна в документации ядра Linux.

ip=<client-ip>:<server-ip>:<gw-ip>:<netmask>:<hostname>:<device>:<autoconf>:<dns0-ip>:<dns1-ip>:<ntp0-ip>

ALT Orchestra будет использовать конфигурацию, предоставленную через параметр ядра, в качестве начальной сетевой конфигурации. Этот параметр полезен в средах, где DHCP не предоставляет IP-адреса, или когда необходимо переопределить DNS-серверы и NTP-серверы по умолчанию перед загрузкой конфигурации. Также можно применять частичную конфигурацию для настройки только DNS и NTP-серверов:

ip=:::::::<dns0-ip>:<dns1-ip>:<ntp0-ip>

IPv6-адреса можно указать, заключив их в квадратные скобки:

ip=[2001:db8::a]:[2001:db8::b]:[fe80::1]::controlplane1:eth1::[2001:4860:4860::6464]:[2001:4860:4860::64]:[2001:4860:4806::]

<netmask> можно использовать либо для обозначения IP-адреса (IPv4: 255.255.255.0, IPv6: [ffff:ffff:ffff:ffff::0]), или просто как несколько единичных битов в маске подсети (24).

<device> может быть традиционной схемой именования интерфейсов eth0, eth1 или enx<MAC>, пример: enx78e7d1ea46da.

DHCP можно включить, настроив соответствующий параметр <autoconf> для dhcp, пример: ip=:::::eth0.3:dhcp. Альтернативный синтаксис: ip=eth0.3:dhcp.

bond

Конфигурация интерфейса Bond. Полная документация доступна в документации ядра Dracut.

bond=<bondname>:<bondslaves>:<options>:<mtu>

ALT Orchestra будет использовать bond, если он указан, для установки начальной конфигурации связи. Этот параметр полезен в средах, где порты коммутатора отключаются, если машина не настраивает соединение LACP. Если указано только имя соединения, оно будет создано с использованием eth0 и eth1 в качестве slave, а bond-режим связи будет установлен как balance-rr.

Все приведенные ниже конфигурации эквивалентны:

bond=bond0
bond=bond0:
bond=bond0::
bond=bond0:::
bond=bond0:eth0,eth1
bond=bond0:eth0,eth1:balance-rr

Пример конфигурации связи со всеми указанными опциями:

bond=bond1:eth3,eth4:mode=802.3ad,xmit_hash_policy=layer2+3:1450

Этот пример создаст интерфейс связи с именем bond1 с eth3 и eth4 в качестве slave и установит режим связи на 802.3ad, установит политику передачи хэша layer2+3 и интерфейс соединения MTU 1450.

vlan

Конфигурация VLAN интерфейса. Полная документация доступна в документации ядра Dracut. ALT Orchestra будет использовать vlan, если он указан, для установки начальной конфигурации VLAN. Этот параметр полезен в средах, где порты коммутатора помечены VLAN-тегами, но не имеют собственной VLAN. На данном этапе можно настроить только одну VLAN.

Пример конфигурации VLAN, включая настройку статического IP-адреса:

vlan=eth0.100:eth0 ip=172.20.0.2::172.20.0.1:255.255.255.0::eth0.100:::::

Этот пример создаст интерфейс VLAN с именем eth0.100 с eth0 в качестве базового интерфейса и установит идентификатор VLAN равным 100 со статическим IP-адресом 172.20.0.2/24 и c 172.20.0.1 в качестве шлюза по умолчанию.

net.ifnames=0

Отключите предсказуемые имена сетевых интерфейсов, указав их, например, net.ifnames=0 в командной строке ядра.

panic

Время ожидания после возникновения ошибки перед перезагрузкой. ALT Orchestra всегда перезагрузится, если столкнется с неустранимой ошибкой. Однако система может перезагрузиться слишком быстро, чтобы успеть прочитать логи при сборе отладочной информации. Эта опция позволяет пользователю отложить перезагрузку, чтобы дать время для сбора отладочной информации с экрана консоли. Значение 0 полностью отключает автоматическую перезагрузку.

talos.config

URL-адрес, по которому можно найти данные конфигурации машины (только с параметром ядра talos.platform=metal). Этот параметр поддерживает подстановку переменных внутри значений URL-запроса для следующих регистронечувствительных заполнителей:

  • ${uuid} SMBIOS UUID
  • ${serial} Серийный номер SMBIOS
  • ${mac} MAC-адрес первого сетевого интерфейса, достигшего состояния «включено»
  • ${hostname} имя хоста машины

Следующий пример

http://example.com/metadata?h=${hostname}&m=${mac}&s=${serial}&u=${uuid}

может быть переведен, как:

http://example.com/metadata?h=myTestHostname&m=52%3A2f%3Afd%3Adf%3Afc%3Ac0&s=0OCZJ19N65&u=40dcbd19-3b10-444e-bfff-aaee44a51fda

Для обеспечения обратной совместимости мы добавляем UUID системы в параметр запроса uuid, если его значение пустое. Например: http://example.com/metadata?uuid -> http://example.com/metadata?uuid=40dcbd19-3b10-444e-bfff-aaee44a51fda

talos.hostname

Имя хоста, которое будет использоваться. Имя хоста обычно указывается в конфигурации машины, однако в некоторых случаях DHCP-серверу необходимо знать имя хоста до получения конфигурации оборудования.

talos.shutdown

Тип завершения работы, используемый при получении команды на завершение работы ALT Orchestra. Допустимые варианты:

  • halt
  • poweroff

talos.network.interface.ignore

Сетевой интерфейс, который следует игнорировать и не настраивать. Перед применением конфигурации (в начале каждой загрузки) ALT Orchestra пытается настроить каждый сетевой интерфейс по DHCP. Если на компьютере много сетевых интерфейсов, которые имеют соединение, но нет DHCP-сервера, это может значительно увеличить задержки при загрузке. Этот параметр может быть указан несколько раз для нескольких сетевых интерфейсов.

talos.auditd.disabled

По умолчанию ALT Orchestra запускает auditd службу, которая перехватывает события аудита ядра. Если вы установите talos.auditd.disabled=1, эта функция будет отключена, и вы сможете запустить собственную службу аудита.

talos.dashboard.disabled

По умолчанию ALT Orchestra перенаправляет журналы ядра в виртуальную консоль /dev/tty1 и запускает панель управления /dev/tty2, затем переключается на панель управления в режиме tty. Если вы установите talos.dashboard.disabled=1 эта функция будет отключена. Журналы ядра будут отправлены на текущую активную консоль, и панель управления не будет запущена.

talos.environment

Каждое значение аргумента устанавливает переменную среды по умолчанию. Ожидаемый формат: key=value. Пример:

talos.environment=http_proxy=http://proxy.example.com:8080 talos.environment=https_proxy=http://proxy.example.com:8080

Опубликовано под лицензией GPL-3.0+. Содержание доступно по лицензии CC BY-SA 4.0, если не указано иное. Разработано участниками ALT Orchestra.