Ahoj,
podařilo se nám najít jiný, jednodušší způsob routování IP adres do VPS
bez spojovacích sítí. Ve VPS na stagingu tak už nejsou žádné spojovací
adresy, jen adresy veřejné. Jak síťování VPS aktuálně funguje je popsáno
zde:
https://vpsadminos.org/networking/veth-routed/#routing
U VPS na stagingu vpsAdmin rozlišuje adresy sítí, ty jsou do VPS
naroutované, a koncové adresy co jsou přiřazeny na rozhraní. Správa IP
adres je tak ve webovém rozhraní rozdělena na dva formuláře. Je to zatím
jen takový základ na kterém budeme později stavět.
Díky zrušení spojovacích adres funguje maškaráda v iptables a s tím i
výchozí síť v dockeru, která maškarádu využívá. Není potřeba si vytvářet
vlastní síť. Teď už instalace dockeru neobsahuje žádné kroky navíc.
Zbývá dořešit delegace ZFS datasetů do VPS, aby se v dockeru dal použít
ZFS driver.
Pokud jste chtěli vpsAdminOS vyzkoušet, ale nechtělo se vám instalovat
Nix a zjišťovat jak se to sestavuje, sorki připravil ISO s vpsAdminOS
[1], které si můžete stáhnout a rovnou nabootovat. Je to live systém a
obsahuje i instalátor [2], pokud to chcete nainstalovat na disk nebo si
vyzkoušet deklarativní konfiguraci s Nixem.
Od pátku jsou VPS na stagingu zálohované, abychom se nemuseli bát o
data. Obnova VPS ze záloh funguje, ale na staging si je zatím
nepřipojíte. Na produkční VPS ty zálohy připojit půjdou. Nemáme ještě
dořešené NFS, přijde to pak spolu s NASem.
Koncem srpna jsme narazili na nečekané omezení: věděli jste, že
maximální počet memory cgroup je 65536? Několika členům už se podařilo
je vyčerpat, takže jsme řešili jak ten limit navýšit. snajpa napsal
patch [3] do kernelu, který navyšuje maximální počet memory cgroup na
2147483648, nicméně zatím s tím nefunguje swap. Nám to nevadí, protože
swap nepoužíváme.
Dále bylo potřeba omezit počet cgroup, které mohou vytvořit jednotlivé
VPS, aby nikdo nemohl vyčerpat všechny a omezit tak ostatní. K tomuto
účelu snajpa vytvořil cglimit cgroup controller [4]. Můžete jej vidět i
a používat i ve VPS. Přes `cglimit.all.max` se nastavuje limit na počet
všech cgroup a přes `cglimit.memory.max` jen memory cgroupy.
Za pomoc s testováním děkujeme (nicky na IRC): ppar, somm, domogled,
pdostal, etnyx a všem dalším co píší na podporu. Pokud narazíte na
nějakou chybu, dejte nám o tom prosím vědět, rádi to opravíme.
[1]
https://iso.vpsadminos.org
[2]
https://vpsadminos.org/os/installation/
[3]
https://github.com/vpsfreecz/vpsadminos/commit/87cd90ab99b5f4d527d3b33adfda…
[4]
https://github.com/vpsfreecz/vpsadminos/commit/e73db73975e240b865497af4b40d…
Jakub