Dlouholetý balíčkář KDE Jonathan Riddell končí. Jeho práci na KDE neon financovala firma Blue Systems, která ale končí (Clemens Tönnies, Jr., dědic jatek Tönnies Holding, ji už nebude sponzorovat), někteří vývojáři KDE se přesunuli k nově založené firmě Techpaladin. Pro Riddella se již nenašlo místo. Následovala debata o organizaci těchto firem, které zahraniční vývojáře nezaměstnávají, nýbrž najímají jako kontraktory (s příslušnými důsledky z pohledu pracovního práva).
V Amsterdamu probíhá Blender Conference 2025. Videozáznamy přednášek lze zhlédnout na YouTube. V úvodní keynote Ton Roosendaal oznámil, že k 1. lednu 2026 skončí jako chairman a CEO Blender Foundation. Tyto role převezme současný COO Blender Foundation Francesco Siddi.
The Document Foundation, organizace zastřešující projekt LibreOffice a další aktivity, zveřejnila výroční zprávu za rok 2024.
Byla vydána nová stabilní verze 7.6 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 140. Přehled novinek i s náhledy v příspěvku na blogu.
Byla vydána verze 1.90.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.
Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.
Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.
Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.
Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.
[root@node1 ~]# grep bond /etc/modprobe.conf alias bond0 bonding alias bond1 bonding options bonding mode=balance-rr miimon=100 [root@node1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth0 BOOTPROTO=none HWADDR=00:30:48:B9:6B:50 ONBOOT=yes TYPE=Ethernet SLAVE=yes MASTER=bond0 USERCTL=no [root@node1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth5 DEVICE=eth2 BOOTPROTO=none HWADDR=00:30:48:9C:2C:80 ONBOOT=yes TYPE=Ethernet SLAVE=yes MASTER=bond0 USERCTL=no [root@node1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE=bond1 BOOTPROTO=none ONBOOT=yes USERCTL=no IPADDR=172.16.1.100 NETMASK=255.255.255.0Každý ze serverů má tedy rozhraní bond0 pro komunikaci s druhým serverem a oba stroje jsou propojené napřímo. Další rozhraní je bond1, které slouží pro servírování dat klientům a poslední používané rozhraní je libovolné volné připojené do management síťě aby bylo možné stroje spravovat. Do management síťe je také zapojené management rozhraní serverů a raid karet. Při konfiguraci síťe také nezapomeňte na nastevení iptables. Při jejich konfiguraci upravuji soubor /etc/sysconfig/iptables a následně aktualizuji konfiguraci pomocí iptables-restore < /etc/sysconfig/iptables. Jakmile zkusíte použít "klikací" nástroj system-config-security, tak vám konfiguraci iptables totálně rozseká a znefunkční (proto také na uvedený soubor nastavuji atribut "i" - chattr +i ...).
preferred_names = [ "^/dev/drbd", "^/dev/sd", "^/dev/mapper/" ] filter = [ "a|/dev/drbd.*|","a|/dev/sd.*|","r|.*|" ]
use_logd off logfile /var/log/ha.log debugfile /var/log/ha.debug keepalive 1 warntime 10 deadtime 30 initdead 120 udpport 694 bcast bond0 baud 19200 serial /dev/ttyS0 node node0.domain.tld node node1.domain.tld auto_failback on crm respawn apiauth mgmtd uid=root respawn root /usr/lib64/heartbeat/mgmtd -v respawn root /usr/lib64/heartbeat/hbagentZajímavé části konfigurace CRM:
primitive drbd0 ocf:heartbeat:drbd \ params drbd_resource="r0" \ op stop interval="0" timeout="180" primitive drbd1 ocf:heartbeat:drbd \ params drbd_resource="r1" \ op stop interval="0" timeout="180" primitive drbd2 ocf:heartbeat:drbd \ params drbd_resource="r2" \ op stop interval="0" timeout="180"Chci aby všechny DRBD svazky nabíhaly do Primary stavu na stejném serveru, proto jsem je seskupil do grp_drbd. Svazky nahazuji najednou a pouze tak aby byl vždy jeden server ve stavu Master (~Primary pro DRBD, definice ms_drbd). Spouštím je na preferovaném uzlu clusteru (pravidlo loc-drbd). Protože je cluster symetrický a nastavený do režimu failover, bude v případě nedostupnosti tohoto uzlu (node1.domain.tld) použit uzel druhý.
group grp_drbd drbd0 drbd1 drbd2 \ meta migration-threshold="2" failure-timeout="180s" ms ms_drbd grp_drbd \ params clone_max="2" clone_node_max="1" master_max="1" \ master_node_max="1" notify="yes" globally_unique="false" \ meta target-role="Started" location loc-drbd ms_drbd \ rule $id="loc-drbd-rule" $role="Master" inf: #uname eq node1.domain.tldJak jsem psal, nad drbd je zase LVM, je třeba ho tedy také nadefinovat. V rámci zjednodušení následného zapisování pravidel případně rozšiřování konfigurace jsem všechny LVM svazky vsadil do jedné skupiny (grp_lvm).
primitive lvmdrbd0 ocf:heartbeat:LVM \ params volgrpname="vgrep0" exclusive="truemeta" start="45" stop="45" primitive lvmdrbd1 ocf:heartbeat:LVM \ params volgrpname="vgrep1" exclusive="truemeta" start="45" stop="45" primitive lvmdrbd2 ocf:heartbeat:LVM \ params volgrpname="vgrep2" exclusive="truemeta" start="45" stop="45" group grp_lvm lvmdrbd0 lvmdrbd1 lvmdrbd2 \ meta target-role="Started"Souborové systémy na tomto LVM je třeba také připojit, zase to musí obsloužit Heartbeat:
primitive fs1 ocf:heartbeat:Filesystem \ params device="/dev/vgrep0/lv0" fstype="xfs" directory="/export/d0" options="noatime" primitive fs2 ocf:heartbeat:Filesystem \ params device="/dev/vgrep1/lv0" fstype="xfs" directory="/export/d1" options="noatime" primitive fs3 ocf:heartbeat:Filesystem \ params device="/dev/vgrep2/lv0" fstype="xfs" directory="/export/d2" options="noatime" primitive fs4 ocf:heartbeat:Filesystem \ params device="/dev/vgrep2/lv1" fstype="xfs" directory="/export/clust" options="noatime" group grp_fs fs1 fs2 fs3 fs4 \ meta target-role="Started"Aby všechny služby startovaly na správné straně clusteru, tedy na té kde je DRBD ve stavu Primary, je třeba nadefinovat "colocation" pravidla:
colocation grp_fs_on_grp_drbd inf: grp_fs ms_drbd:Master colocation grp_lvm_on_grp_drbd inf: grp_lvm ms_drbd:Master colocation grp_vps_on_grp_drbd inf: grp_vps ms_drbd:MasterSlužby sice nastartují na správné straně, ale asi v nesprávném pořadí, proto ještě pořadí explicitně určím:
order ord_grp_fs_after_grp_lvm inf: grp_lvm:start grp_fs:start order ord_grp_lvm_after_ms_drbd inf: ms_drbd:promote grp_lvm:startJak vidíte, pravidla popisující na které straně cluster nahodí služby a v jakém pořadí zapisuji již jen přes skupiny - je to tak přehlednější. Názvy těch pravidel se snažím volit co nejvíc popisné abych se v tom snadno orientoval, stejně jako v případě názvů skupin a služeb.
primitive aoedomU1 ocf:heartbeat:AoEtargetKl \ params binary="/usr/local/sbin/vblade" \ device="/export/d1/domU1.img" nic="bond1" shelf="11" slot="0" vbladeparams="-d -s" primitive aoedomU2 ocf:heartbeat:AoEtargetKl \ params binary="/usr/local/sbin/vblade" \ device="/export/d1/domU2.img" nic="bond1" shelf="12" slot="0" vbladeparams="-d -s" group grp_aoe aoedomU1 aoedomU2 meta target-role="Started" colocation grp_aoe_on_grp_drbd inf: grp_aoe ms_drbd:Master order ord_grp_aoe_after_grp_fs inf: grp_fs:start grp_aoe:startDocela prima u AoE je, že na straně klienta se při spouštění (tedy modprobe aoe) dá zadat parametr jak dlouho má klient čekat na timeout serveru. Přehození clusteru z jednoho nodu na druhý tedy aoe přežije velmi snadno, stačí nastavit rozumný timeout a není nutné řešit multipathing.
Tiskni
Sdílej: