Nyheter i Solaris 10

Partitioneringstekniken Solaris Zones

Den här funktionen är ny för Solaris Express 2/04. I Solaris Express 7/04 har nya Zones-funktioner lagts till.

Solaris Zones-tekniken för programvarupartitionering, som är en komponent i Solaris Containers-miljön, är en teknik för att virtualisera operativsystemtjänster och tillhandahålla en isolerad och säker miljö att köra program i. En zon är en virtualiserad operativsystemsmiljö som skapats i en enskild instans av operativsystemet Solaris. Zones tillhandahåller standardgränssnitten för Solaris och programmiljön, men inkluderar inte ett nytt ABI eller API som skulle kräva att programmen flyttades.

Varje zon kan innehålla en anpassad uppsättning tjänster. Zones är idealisk för miljöer där flera program sammanförs på en enda server. Om du vill ha större kontroll över hur programmen använder de tillgängliga systemresurserna kan du använda resurshanteringsfunktioner i zonerna.

Vi kan säga att en zon är som en låda. Ett eller flera program kan köras i lådan utan att det påverkar resten av systemet. Den här isoleringen förhindrar att processer som körs i en zon övervakar eller hindrar processer som körs i andra zoner. Detta gäller även om processen som körs i en zon har superanvändarrättigheter.

Den enskilda instansen av operativsystemet Solaris är den globala zonen. Den globala zonen är både standardzon för systemet och zonen som används för administrativ kontroll av hela systemet. En administratör som arbetar i den globala zonen kan skapa en eller flera icke-globala zoner. När de har skapats kan de här icke-globala zonerna administreras av enskilda zonadministratörer. Rättigheterna för en zonadministratör är begränsade till den icke-globala zonen.

Med icke-globala zoner kan du få isolering på nästan vilken nivå du vill. En zon behöver inte en dedicerad processor, en fysisk enhet eller en del av det fysiska minnet. De här resurserna kan antingen multiplexeras över flera zoner som körs i en enskild domän eller ett enskilt system, eller tilldelas på per-zon basis via resurshanteringsfunktioner som är tillgängliga i operativsystemet. Även små uniprocessorsystem kan ge stöd åt flera zoner som körs samtidigt.

För att processisolering ska uppnås kan en process bara se eller signalera till de processer som finns i samma zon.

Grundläggande kommunikation mellan zoner tillhandahålls genom att varje zon får minst ett logiskt nätverksgränssnitt. Program som körs i olika zoner på samma system kan bindas till samma nätverksport via de distinkta IP-adresser som associeras med varje zon eller via jokeradresserna. Ett program som körs i en zon kan inte observera nätverkstrafiken i en annan zon. Den här isoleringen upprätthålls även om strömmarna med paket till och från respektive zoner färdas genom samma fysiska gränssnitt.

Varje zon får en del av filsystemshierarkin. Eftersom varje zon är begränsad till sitt underträd i filsystemshierarkin kan inte ett arbete som körs i en zon komma åt data som tillhör ett annat arbete som körs i en annan zon.

Filer som används av namntjänster finns i zonens egen rotfilsystemsvy. På så sätt isoleras namntjänster i olika zoner från varandra och kan därmed konfigureras olika.

Information om hur du konfigurerar och använder zoner i ditt system finns i System Administration Guide: Solaris Containers-Resource Management and Solaris Zones.