Ubuntu operatsioonisüsteemi ettevalmistamine: erinevus redaktsioonide vahel
Resümee puudub |
|||
| (ei näidata sama kasutaja 20 vahepealset redaktsiooni) | |||
| 2. rida: | 2. rida: | ||
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. |
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. |
||
| + | |||
| + | ===Paigaldamine=== |
||
| + | |||
| + | Subiquity installeri läbimine |
||
| + | |||
| + | [[Fail:20260614-ubuntu-2604-01.png|800px]] |
||
| + | |||
| + | kus |
||
| + | |||
| + | * /boot on 1 G suurune eraldi ext4 failisüsteem |
||
| + | * /boot peal on /boot/grub/grubenv fail, mida süsteem sh grub efi rakendus peab saama kirjutada-lugeda-jne |
||
| + | * /boot/efi on 700 MB suurune eraldi vfat failisüsteem |
||
| + | |||
| + | <pre> |
||
| + | root@mall-ubuntu-2604-20260614:~# df -h -t ext4 -t vfat -h -T |
||
| + | Filesystem Type Size Used Avail Use% Mounted on |
||
| + | /dev/mapper/system-root ext4 12G 3.3G 8.2G 29% / |
||
| + | /dev/vda2 ext4 974M 187M 721M 21% /boot |
||
| + | /dev/vda1 vfat 762M 6.4M 756M 1% /boot/efi |
||
| + | |||
| + | root@mall-ubuntu-2604-20260614:~# mokutil --sb-state |
||
| + | SecureBoot enabled |
||
| + | </pre> |
||
| + | |||
| + | Tarkvara paigaldamine |
||
| + | |||
| + | <pre> |
||
| + | root@mall-ubuntu-2604-20260614:~# apt-get install rsync driverctl joe tcpdump ethtool lsscsi net-tools socket libcap-ng-utils libbpf-tools ltrace qemu-guest-agent |
||
| + | </pre> |
||
| + | |||
| + | Zabbix repo v. 7.0 |
||
| + | |||
| + | <pre> |
||
| + | TODO |
||
| + | </pre> |
||
| + | |||
| + | Vt |
||
| + | |||
| + | * https://www.auul.pri.ee/wiki/Chrony#Misc_-_PHC |
||
| + | * https://www.auul.pri.ee/wiki/Operatsioonis%C3%BCsteemi_Ubuntu_kasutamine#netplan_kasutamine |
||
| + | |||
| + | ===Seadistamine=== |
||
| + | |||
| + | * chrony |
||
| + | * timezone |
||
| + | * locale |
||
| + | * hostname |
||
| + | * apt (auto upgrade) |
||
| + | * ekraani puhastamine |
||
| + | * ssh võti |
||
| + | * ipv6 |
||
| + | * cloud-init disable |
||
| + | * joe |
||
| + | * qemu-guest-agent |
||
| + | * ssh over vscock ja 'systemctl disable --now ssh.socket' |
||
===Ubuntu operatsioonisüsteemi ettevalmistamine=== |
===Ubuntu operatsioonisüsteemi ettevalmistamine=== |
||
| 40. rida: | 95. rida: | ||
</pre> |
</pre> |
||
| − | ====systemd- |
+ | ====systemd-networkd==== |
| + | |||
| + | Tegelemise kaalutlus |
||
| + | |||
| + | * vähendada süsteemi ründepinda - suhteliselt tundlik protsess töötab ja ei ole sisuliselt vajalik |
||
| + | * nt vaevalt, et sobiks, et süsteemis töötab iscsi server target kuulab port 3260/tcp ilma sisaldamata reaalset lun'i vms |
||
| + | |||
| + | systemd-networkd on systemd service |
||
| + | |||
| + | <pre> |
||
| + | root@zabbix-pub-01:~# systemctl status systemd-networkd |
||
| + | ● systemd-networkd.service - Network Configuration |
||
| + | Loaded: loaded (/usr/lib/systemd/system/systemd-networkd.service; enabled; preset: enabled) |
||
| + | Active: active (running) since Tue 2026-06-02 11:52:17 EEST; 1h 45min ago |
||
| + | TriggeredBy: ● systemd-networkd.socket |
||
| + | Docs: man:systemd-networkd.service(8) |
||
| + | man:org.freedesktop.network1(5) |
||
| + | Main PID: 676 (systemd-network) |
||
| + | Status: "Processing requests..." |
||
| + | Tasks: 1 (limit: 2115) |
||
| + | FD Store: 1 (limit: 512) |
||
| + | Memory: 1.6M (peak: 1.9M) |
||
| + | CPU: 440ms |
||
| + | CGroup: /system.slice/systemd-networkd.service |
||
| + | └─676 /usr/lib/systemd/systemd-networkd |
||
| + | |||
| + | Jun 02 11:52:17 zabbix-pub-01 systemd-networkd[1744]: enp6s20: Link UP |
||
| + | Jun 02 11:52:17 zabbix-pub-01 systemd-networkd[1744]: enp6s20: Gained carrier |
||
| + | ... |
||
| + | </pre> |
||
Osutub, et vaikimisi Ubuntu 24.04, 26.04 jt systemd-network kuulab af_packet kihis lldp sõnumeid |
Osutub, et vaikimisi Ubuntu 24.04, 26.04 jt systemd-network kuulab af_packet kihis lldp sõnumeid |
||
| 52. rida: | 136. rida: | ||
</pre> |
</pre> |
||
| + | kus |
||
| − | tulemusena saab systemd-network arvu ethernetis olevate switchide jutust, nt |
||
| + | |||
| + | * systemd-network - protsessile vastav kasutajanimi |
||
| + | * pid - protsessid pid |
||
| + | * fd - asjasse puutuvad file descriptor väärtus (protsessi vaatest, st mitte süsteemi globaalsest vaatest) |
||
| + | |||
| + | ning küsides protsessi pid=676 käest, mis ta kuulab |
||
| + | |||
| + | <pre> |
||
| + | 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 |
||
| + | </pre> |
||
| + | |||
| + | kusjuures seda 676 protsessi omajagu nö laiendatakse capablities abil (protsess kuulub kasutajale systemd-network, st mitte root) |
||
| + | |||
| + | <pre> |
||
| + | 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 @ + |
||
| + | |||
| + | root@zabbix-pub-01:~# ps -u systemd-network -f |
||
| + | UID PID PPID C STIME TTY TIME CMD |
||
| + | systemd+ 1744 1 0 11:52 ? 00:00:00 /usr/lib/systemd/systemd-networkd |
||
| + | </pre> |
||
| + | |||
| + | tulemusena saab systemd-network arvu ethernetis olevate switchide jutust, nt (eeldusel, et on switche mis räägivad) |
||
<pre> |
<pre> |
||
| 97. rida: | 208. rida: | ||
p_raw UNCONN 0 0 [35020]:enp6s20 * users:(("systemd-network",pid=676,fd=20)) |
p_raw UNCONN 0 0 [35020]:enp6s20 * users:(("systemd-network",pid=676,fd=20)) |
||
</pre> |
</pre> |
||
| + | |||
| + | Misc |
||
| + | |||
| + | * systemd-networkd on Ubuntu spetsiifika |
||
| + | * Debian kasutab nn ifupdown2 põhist 'root@zabbix-01:~# systemctl status networking' lahendust |
||
| + | * NetworkManager teeb kogu selle loo veel segasemaks, aga tavaliselt server lahenduse puhul NetworkManager'i ei kasutata (desktop fookus) |
||
===Kasulikud lisamaterjalid=== |
===Kasulikud lisamaterjalid=== |
||
Viimane redaktsioon: 15. juuni 2026, kell 00:32
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.
Paigaldamine
Subiquity installeri läbimine
kus
- /boot on 1 G suurune eraldi ext4 failisüsteem
- /boot peal on /boot/grub/grubenv fail, mida süsteem sh grub efi rakendus peab saama kirjutada-lugeda-jne
- /boot/efi on 700 MB suurune eraldi vfat failisüsteem
root@mall-ubuntu-2604-20260614:~# df -h -t ext4 -t vfat -h -T Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/system-root ext4 12G 3.3G 8.2G 29% / /dev/vda2 ext4 974M 187M 721M 21% /boot /dev/vda1 vfat 762M 6.4M 756M 1% /boot/efi root@mall-ubuntu-2604-20260614:~# mokutil --sb-state SecureBoot enabled
Tarkvara paigaldamine
root@mall-ubuntu-2604-20260614:~# apt-get install rsync driverctl joe tcpdump ethtool lsscsi net-tools socket libcap-ng-utils libbpf-tools ltrace qemu-guest-agent
Zabbix repo v. 7.0
TODO
Vt
- https://www.auul.pri.ee/wiki/Chrony#Misc_-_PHC
- https://www.auul.pri.ee/wiki/Operatsioonis%C3%BCsteemi_Ubuntu_kasutamine#netplan_kasutamine
Seadistamine
- chrony
- timezone
- locale
- hostname
- apt (auto upgrade)
- ekraani puhastamine
- ssh võti
- ipv6
- cloud-init disable
- joe
- qemu-guest-agent
- ssh over vscock ja 'systemctl disable --now ssh.socket'
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-networkd
Tegelemise kaalutlus
- vähendada süsteemi ründepinda - suhteliselt tundlik protsess töötab ja ei ole sisuliselt vajalik
- nt vaevalt, et sobiks, et süsteemis töötab iscsi server target kuulab port 3260/tcp ilma sisaldamata reaalset lun'i vms
systemd-networkd on systemd service
root@zabbix-pub-01:~# systemctl status systemd-networkd
● systemd-networkd.service - Network Configuration
Loaded: loaded (/usr/lib/systemd/system/systemd-networkd.service; enabled; preset: enabled)
Active: active (running) since Tue 2026-06-02 11:52:17 EEST; 1h 45min ago
TriggeredBy: ● systemd-networkd.socket
Docs: man:systemd-networkd.service(8)
man:org.freedesktop.network1(5)
Main PID: 676 (systemd-network)
Status: "Processing requests..."
Tasks: 1 (limit: 2115)
FD Store: 1 (limit: 512)
Memory: 1.6M (peak: 1.9M)
CPU: 440ms
CGroup: /system.slice/systemd-networkd.service
└─676 /usr/lib/systemd/systemd-networkd
Jun 02 11:52:17 zabbix-pub-01 systemd-networkd[1744]: enp6s20: Link UP
Jun 02 11:52:17 zabbix-pub-01 systemd-networkd[1744]: enp6s20: Gained carrier
...
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))
kus
- systemd-network - protsessile vastav kasutajanimi
- pid - protsessid pid
- fd - asjasse puutuvad file descriptor väärtus (protsessi vaatest, st mitte süsteemi globaalsest vaatest)
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 nö laiendatakse capablities abil (protsess kuulub kasutajale systemd-network, st mitte root)
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 @ + root@zabbix-pub-01:~# ps -u systemd-network -f UID PID PPID C STIME TTY TIME CMD systemd+ 1744 1 0 11:52 ? 00:00:00 /usr/lib/systemd/systemd-networkd
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))
Misc
- systemd-networkd on Ubuntu spetsiifika
- Debian kasutab nn ifupdown2 põhist 'root@zabbix-01:~# systemctl status networking' lahendust
- NetworkManager teeb kogu selle loo veel segasemaks, aga tavaliselt server lahenduse puhul NetworkManager'i ei kasutata (desktop fookus)