RHEL 6 - (r)ewolucja? Piotr Baranowski RHCA@OSEC
Disclaimer: To NIE JEST oficjalna prezentacja produktu! To NIE JEST prezentacja marketingowa!
Więc co to jest?
Omówienie nowego(?) systemu na rynku serwerów Czy aby na pewno nowego? Lepsze jest wrogiem dobrego Nowy system to nieznany system Nieznany system musi swoje odleżeć w poczekalni Jaką drogę wybrał RHAT dla swojego flagowego produktu? Czy spełnia on potrzeby biznesu
RHEL - Timeline RHEL 3 22.10.2003 RHEL 4 15.02.2005 RHEL 5 14.03.2007 RHEL6b1 21.04.2010 RHEL6b2 30.06.2010 RHEL 6 - (Q4/10)
Killer feature RHEL 4 SELinux RHEL 5 Wirtualizacja (XEN KVM) RHEL 6 RAS (Reliability, Availability, Serviceability)
Konkrety panie, konkrety... CGROUPS Power management Wirtualizacja Storage Networking Kernel Filesystem Developerzy Security
Control Groups (cgroups) Framework pozwalający na zarządzanie kolejkami dostępu do zasobów Pluginy Scheduler Allokator pamięci Pasmo sieciowe Pasmo I/O
Cgroups - pluginy Sterowanie zachowaniem wykorzystania pamięci per grupa/proces Limitowanie dostępności Not your granpa's pam_limit Izolacja procesów (no cross access)
Cgroups - pluginy. Scheduler per grupa sterowanie kolejkowaniem zadań I/O dzielenie dostępu do kolejki I/O Sieć Kolekjowanie między warstwą sieci a NIC. Tagowanie pakietów identyfikatorami i umieszczanie w oddzielnych kolejkach o różnych priorytetach.
libcgroup Biblioteka pozwajaląca na integrację cgroups z innymi podsystemami PAM SELinux Zarządzanie grupami (tworzenie, kasowanie, przenoszenie) Allokacja zasad na podstawie kryteriów (auto assignment)
Przykłady używania cgroups Hosting VPS (premium,standard,basic) Baza danych vs. Backup Obliczenia vs. Audyt Cron vs. Produkcja
Zarządzanie energią Tickless kernel mniej przerwań, więcej czasu w idle, niższa utylizacja CPU (cpufreq) ALPM Obniżanie zasilania SATA przy braku I/O w kolejce ASPM wyłączanie PCI przy braku operacji Relatime by default http://kerneltrap.org/node/14148 TUNED
Zarządzanie energią Powertop BLTK Battery Life ToolKit Nowa dokumentacja dla developerów jak pisać zielone aplikacje (event vs. polling)
P/M - efekty
RAS CPU hot-add Machine checks Hwpoison OS wykrywa uszkodzoną komórkę pamięci, zabija powiązany z nią proces i oznacza ją jako zatrutą i unika ponownej allokacji przez MMU Mniej pikników dzięki izolacji wypływu awarii na kernel Bardziej wyrafinowane mechanizmy radzenia sobie z PCI (PCI-AER, APEI)
RAS EXT4 czas naprawy 4xmniejszy niż ext3 DIF/DIX ABRT Automated Bug Reporting Tool Kiedy ostatnio zgłosiłeś buga? A dlaczego tak rzadko? Da się to uprościć Integracja z gnome
Kernel - limity RHEL 5 RHEL 6 (wsparcie) RHEL 6 (teoretyczny) CPU 64 4096 4096 Pamięć adresacja fizyczna 1T 8T 8T IRQ 239 33024 33024 Ilość procesów 32000 32000 4000000 KVM pamięć dla gościa KVM CPU dla gościa 512GB Ile fabryka dała Ile fabryka dała 32 64 64
Rozszerzenia RT Niektóre rozszerzenia z jądra projektu MRG przeniesione do RHEL6 Cechy Determinizm Gwarantowana priorytezacja Timer microsekundy zamiast timer (milisekundy) MRG nadal jako dodatkowy produkt
Wirtualizacja XEN KVM Transparent hugepages Historycznie hugepages było kłopotliwe Wymagane zabiegi aby przypiąć aplikację do grupy HGP Brak możliwości swapowania pamięci w HGP EPT Extended Page Table age bits Sprytniejsze dobieranie kandydatów do swapowania
KSM Kernel SamePage Merging Deduplikacja pamięci Teraz można swapować strony wyszukane przez KSM Kuszące ale niebezpieczne na dłuższą metę
Skalowalność KVM SMP 64 vcpu vs. 16 w RHEL5 Hotplug sprzętu CPU Dyski Vhost-net Większość obsługi sieci VM przeniesiona do kernela Mniej context switchy, mniej vmexit(). Zwiększona wydajność
Wirtualizacja migracja z XEN Virt-v2v narzędze do migracji gości PV/HVM do KVM
svirt Nadawanie maszynom wirtualnym etykiet SELinux Określanie dostępu gosć-gość/gość-hypervisor na podstawie etykiet/reguł polisy
Storage Topology awareness I/O (układ, porcja danych opiera się o informacje pozyskane z urządzenia). Device-mapper, LVM, MD, parted, mkfs już posiadają odpowienie łaty FCoE na specjalnych kartach jak i na normalnych NIC. Wsparcie dla FCoE podczas instalacji ISCSI root/boot Obsługa multipath/fc/iscsi podczas instalacji
Storage - EXT4/XFS/GFS EXT4 domyślnie (do 16TB) XFS opcjonalnie dla (16T> FS > 100T) NFS NFSv6 NFS4 by default NFS4.1 GFS2
Storage - LVM/DM LVM Hot Spare Online resize mirrored/multipath Dynamic multipath load balancing Mirrored mirrorlog Cluster mirror Snapshot merge dm-crypt
Networking 10GbE DCB (Data Center Bridging) FCoE RDMA (IB & 10GbE)
Networking IPv6 Mobility UDP-lite Network controller for cgroup TCP Illinois/YeAH congestion control
Eye Candy Dracut NetworkManager ISCSI IPv6 Bridging Upstart
Security svirt Confined users Webadm edycja wyłącznie httpd_content_t XACE Sandbox
HA/Clustering Cluster trzeciej generacji Corosync Openais Zgodność z RHEL5 KVM wspierany jako hypervisor dla Haguests Floating datacenter (cluster in cluster) Ipv6 oraz SELinux Pacemaker zamiast rgmanager jako tech preview
Desktop Plymouth KMS PulseAudio Gnome 2.28