Udgivelsen af Linux-distributionen Photon OS 5.0 er offentliggjort, som sigter mod at levere et minimalistisk hostingmiljø til at køre applikationer i isolerede containere. Projektet udvikles af VMware og er angivet som egnet til implementering af industrielle applikationer, der inkluderer ekstra komponenter til at øge sikkerheden og tilbyder avancerede optimeringer til VMware vSphere, Microsoft Azure, Amazon Elastic Compute og Google Compute Engine. Kildeteksterne til de komponenter, der er udviklet til Photon OS, leveres under GPLv2-licensen (undtagen for bibliotekerne libtdnf, som er åbne under LGPLv2.1). Færdige ISO- og OVA-billeder leveres til systemer x86_64, ARM64, Raspberry Pi og forskellige cloud-platforme under en separat brugerlicensaftale (EULA).
Systemet tillader kørsel af de fleste containerformater, herunder Docker-, Rocket- og Garden-formater, og understøtter containerorkestreringsplatforme som Mesos og Kubernetes. Til softwarestyring og installation af opdateringer anvendes baggrundsprocessen pmd (Photon Management Daemon) og det egenudviklede værktøj tdnf, som er kompatibelt med pakkehåndteringssystemet YUM og tilbyder en livscyklusstyringsmodel for distributionen baseret på pakker. Systemet giver også værktøjer til nemt at flytte applikationscontainere fra udviklingsmiljøer (f.eks. dem, der bruger VMware Fusion og VMware Workstation) til produktive cloud-miljøer.
Systemtjenester styres ved hjælp af systemd. Kernen er bygget med optimeringer til VMware-hypervisoren og inkluderer indstillinger til øget sikkerhed, der anbefales af KSPP-projektet (Kernel Self-Protection Project). Ved pakkeopbygning anvendes sikkerhedshævende kompilatorindstillinger. Distributionen dannes i tre udgaver: minimal (538 MB, inkluderer kun de grundlæggende systempakker og runtime til kørsel af containere), udviklerudgave (4,3 GB, inkluderer ekstra pakker til udvikling og test af programmer, der leveres i containere) og realtime-versionen (683 MB, indeholder en kerne med PREEMPT_RT-patches til at køre realtime-applikationer).
Nøgleforbedringer i udgivelsen af Photon OS 5.0:
- Understøttelse af filsystemerne XFS og BTRFS er tilføjet.
- Understøttelse af konfiguration af netværk i Network Configuration Manager er tilføjet. VPN WireGuard, flere ruter, SR-IOV (Single Root Input/Output Virtualization), oprettelse og konfiguration af virtuelle enheder, oprettelse af NetDev-grænseflader, VLAN, VXLAN, Bridge, Bond, VETH (Virtual Ethernet), MacVLAN/MacVTap, IPvlan/IPvtap og tunneler (IPIP, SIT, GRE, VTI). Omfanget af netværksenheder, der er tilgængelige til konfiguration og visning, er udvidet.
- I PMD-Nextgen (Photon Management Daemon) er der tilføjet support til konfiguration af værtsnavn, TLS, SR-IOV, Tap og Tun-grænseflader.
- I Network-event-broker er muligheden for at indsætte netværksdata i JSON-format tilføjet.
- Programmet cntrctl har nu mulighed for at opbygge letvægtscontainere.
- Understøttelse af cgroups v2 er tilføjet, som kan bruges f.eks. til at begrænse hukommelsesforbrug, CPU-ressourcer og input/output. Den vigtigste forskel fra cgroups v1 er anvendelsen af en fælles hierarki for alle typer ressourcer i stedet for separate hierarkier til fordeling af CPU-ressourcer, regulering af hukommelsesforbrug og input/output.
- Muligheden for at anvende opdateringer til Linux-kernen uden at stoppe driften og uden genstart (Kernel Live Patching) er tilføjet.
- Understøttelse af sikkerheden i containere ved hjælp af SELinux-politikker er tilføjet.
- Muligheden for at oprette containere uden root-bruger er tilføjet.
- For linux-esx-kernen er understøttelse af ARM64-arkitekturen tilføjet.
- Understøttelse af databasen PostgreSQL er tilføjet. Versioner 13, 14 og 15 understøttes.
- I pakkehåndtereren tdnf er kommandoer til at arbejde med ændringshistorik (list, rollback, undo og redo) tilføjet, og kommandoen mark er implementeret.
- I installationsprogrammet er der tilføjet support til scripts, der kaldes før installationsstart. Et værktøj til at generere egne initrd-billeder er blevet tilføjet.
- Der er tilføjet support til A/B-partitioneringsmetoden, hvormed der oprettes to identiske rodpartitioner på lagerenheden - en aktiv og en passiv. Den nye opdatering installeres på den passive partition, uden at det påvirker den aktive partitions drift. Derefter byttes partitionerne, hvor den med den nye opdatering bliver aktiv, og den tidligere aktive partition overgår til passiv tilstand og venter på næste opdatering. Hvis der efter opdateringen opstår problemer, kan der rulles tilbage til den tidligere version.
- Versionsopdateringer af pakker er gennemført, herunder Linux-kernen 6.1.10, GCC 12.2, Glibc 2.36, Systemd 253, Python3 3.11, Openjdk 17, Openssl 3.0.8, Cloud-init 23.1.1, Ruby 3.1.2, Perl 5.36, Kubernetes 1.26.1, Go 1.20.2.
Kilde: opennet.ru
