Ubuntu operatsioonisüsteemi ettevalmistamine

Allikas: Imre kasutab arvutit
Redaktsioon seisuga 2. juuni 2026, kell 12:52 kasutajalt Imre (arutelu | kaastöö) (→‎systemd-network)
Mine navigeerimisribaleMine otsikasti

Sissejuhatus

Käesolevas tekstis kirjeldatud viisil ettevalmistatakse kõigi labori k8s klastrite aluseks olevad node'id. St nad on tavalised Ubuntu v. 22.04 operatsioonisüsteemid.

Ubuntu operatsioonisüsteemi ettevalmistamine

Ubuntu operatsioonisüsteem paigaldatakse tavalise Ubuntu installeri abil. Praktiliselt võiks teha ühe arvuti valmis ning seejärel teda nö paljundada. Seejuures võiks igaks juhuks machine-id muuta unikaalseks

# rm /etc/machine-id /var/lib/dbus/machine-id
# dbus-uuidgen --ensure
# cp /etc/machine-id /var/lib/dbus/machine-id
# reboot
  • tekitada laborit teenindavasse dns serverisse dns nimed node'ide kohta
  • Paigaldada tavaline Ubuntu pigem minimaalsete valikutega (st mitte desktop tüüpi)
  • Lisaks peab olema paigaldatud tarkvara: apparmor, iptables ja open-iscsi
  • Arvutitel peab olema kellaaeg õige (tänu ntp kliendi seadistustele)

Tulemuse kontrollimine

  • node'id peavad üksteist oma privaatses subnetis nägema
  • node'id peavad nägema internetti
  • dns nimelahendus töötab
  • arvuti kellaaeg on õige

Misc

SSH

Ubuntu 26.04 kuulab võimalusel (st kui nt PVE virtuaalse arvuti jaoks on vsock sisse lülitatud) kolme protokolli peal ssh kliente

root@ubuntu-2604-01:~# systemctl list-sockets | grep ssh
0.0.0.0:22                                      ssh.socket                           ssh.service
[::]:22                                         ssh.socket                           ssh.service
vsock::22                                       sshd-vsock.socket                    -
/run/ssh-unix-local/socket                      sshd-unix-local.socket               -

systemd-network

Osutub, et vaikimisi Ubuntu 24.04, 26.04 jt systemd-network kuulab af_packet kihis lldp sõnumeid

root@zabbix-pub-01:~# ss -lnp -A 'packet'
Netid       State        Recv-Q       Send-Q        Local Address:Port          Peer Address:Port       Process
p_raw       UNCONN       0            0                   [35020]:enp6s18                   *            users:(("systemd-network",pid=676,fd=18))
p_raw       UNCONN       0            0                   [35020]:enp6s19                   *            users:(("systemd-network",pid=676,fd=19))
p_raw       UNCONN       0            0                   [35020]:enp6s20                   *            users:(("systemd-network",pid=676,fd=20))

ning küsides protsessi pid=676 käest, mis ta kuulab

root@zabbix-pub-01:~# lsof -n -P -p 676 | grep SOCK_R
systemd-n 676 systemd-network   18u     pack              52583      0t0 35020 type=SOCK_RAW
systemd-n 676 systemd-network   19u     pack              52592      0t0 35020 type=SOCK_RAW
systemd-n 676 systemd-network   20u     pack              52600      0t0 35020 type=SOCK_RAW

kusjuures seda 676 protsessi omajagu piiratakse capablities abil

root@zabbix-pub-01:~# pscap -p 676
ppid  pid   uid         command             capabilities
1     676  systemd-network  systemd-network     net_bind_service, net_broadcast, net_admin, net_raw @ +

tulemusena saab systemd-network arvu ethernetis olevate switchide jutust, nt (eeldusel, et on switche mis räägivad)

root@zabbix-pub-01:~# networkctl lldp
LINK    CHASSIS-ID        SYSTEM-NAME CAPS        PORT-ID    PORT-DESCRIPTION
enp6s18 16:18:9c:2d:31:86 -           ..b........ tap50194i0 -

Capability Flags:
b - Bridge

1 neighbors listed.

Välja lülitamiseks sobib kasutada sellist seadistust (emitlldp on väidetavalt niikuinii 'no' vaikimisi)

root@zabbix-pub-01:~# mkdir /etc/systemd/network/10-netplan-enp6s18.network.d
root@zabbix-pub-01:~# cat /etc/systemd/network/10-netplan-enp6s18.network.d/override.conf
[Network]
LLDP=no
EmitLLDP=no

Teoreetiliselt võiks töötada

root@zabbix-pub-01:~# networkctl edit --drop-in=override.conf @enp6s18

Tööpõhimõte

  • kernel ja udev avastavad võrguseadme ja teevad esmased seadistused (seade saab nime jms)
  • netplan genereerib /etc/netplan/50-cloud-init.yaml alusel systemd-network jaoks seadistuse - /run/systemd/network/10-netplan-enp6s18.network
  • inimene on veel lisanud seadistuse täpsustusi - /etc/systemd/network/10-netplan-enp6s18.network.d/override.conf
  • systemd (st systemd-network) hakkab rakendama seadistust kasutades kõiki asjasse puutuvaid nö fragmente

Muudatuse kehtestamiseks

root@zabbix-pub-01:~# systemctl restart systemd-networkd
root@zabbix-pub-01:~# ss -lnp -A 'packet'
Netid       State        Recv-Q       Send-Q        Local Address:Port          Peer Address:Port       Process
p_raw       UNCONN       0            0                   [35020]:enp6s19                   *            users:(("systemd-network",pid=676,fd=19))
p_raw       UNCONN       0            0                   [35020]:enp6s20                   *            users:(("systemd-network",pid=676,fd=20))

Kasulikud lisamaterjalid