Кіріспе
OS деңгейіндегі виртуализация Solaris Containers (соның ішінде Solaris Zones) - x86 және SPARC жүйелері үшін операциялық жүйе деңгейіндегі виртуализация технологиясының іске асырылуы, алғаш рет 2004 жылдың ақпан айында Solaris 10 бета нұсқасының 51-ші нұсқасында, содан кейін 2005 жылы Solaris 10 толық нұсқасында жарияланды. Ол illumos (бұрын OpenSolaris) дистрибутивтерінде, мысалы OpenIndiana, SmartOS, Tribblix және OmniOS, сондай-ақ Oracle Solaris 11 ресми нұсқасында бар. Solaris контейнері - жүйелік ресурстарды басқару мен аймақтармен қамтамасыз етілген шекаралық бөлудің комбинациясы. Аймақтар бір операциялық жүйе экземплярында толығымен оқшауланған виртуалды серверлер ретінде әрекет етеді. Бір жүйеге бірнеше қолданбалық қызметтер жиынтығын біріктіру және әрқайсысын оқшауланған виртуалды серверлік контейнерлерге орналастыру арқылы жүйе әкімшілері шығындарды азайта алады және жеке машиналардың бірдей қорғалуын бір машинада қамтамасыз ете алады.
Solaris Containers (including Solaris Zones) is an implementation of operating system level virtualization technology for x86 and SPARC systems, first released publicly in February 2004 in build 51 beta of Solaris 10, and subsequently in the first full release of Solaris 10, 2005. It is present in illumos (formerly OpenSolaris) distributions, such as OpenIndiana, SmartOS, Tribblix and OmniOS, as well as in the official Oracle Solaris 11 release. A Solaris Container is the combination of system resource controls and the boundary separation provided by zones. Zones act as completely isolated virtual servers within a single operating system instance. By consolidating multiple sets of application services onto one system and by placing each into isolated virtual server containers, system administrators can reduce cost and provide most of the same protections of separate machines on a single machine.
Терминология
Бұл технологияның атауы даму барысында және іске қосылғанға дейінгі қоғамдық іс-шараларда өзгерді. Solaris Zones 2005 жылы іске қосылғанға дейін Solaris контейнері Solaris ресурстарын басқару мүмкіндіктерімен шектелген жұмыс жүктемесінің кез келген түрі болды. Соңғысы ертеректе жеке бағдарламалық жасақтама болып табылады. 2007 жылы Solaris Containers термині ресурстарды басқарумен біріктірілген Solaris аймағын білдіреді. Кейіннен, біртіндеп қозғалыс болды, Solaris контейнерлері қосымша ресурстарды басқарумен немесе одан тыс емес жаһандық аймақтарға қатысты. Глобалды аймақпен қамтылған аймақтар "глобалды емес аймақтар" деп аталады, бірақ кейде жай ғана "аймақтар" деп аталады. "Жергілікті аймақ" термині ерекше ескертіледі, өйткені осы қолдануда "жергілікті" "жаһандық" деген сөздің антоними емес. Глобалды аймақта жүйедегі барлық ресурстар көрінеді, олар глобалды аймақпен немесе глобалды емес аймақпен байланысты. Егер өзгеше белгіленбесе, "аймақ" деген мақалада ғаламдық емес аймақтарға қатысты болады. Терминологияны жеңілдету үшін Oracle Solaris 11-де Контейнер терминін қолдануды тоқтатты және ресурстарды басқару бақылауларын пайдаланудан тәуелсіз Solaris Zone терминін пайдалануға оралды.
Қажетті ресурстар
Аймақтар процессор мен жадқа өте аз шығындарды әкеледі. Аймақтардың көпшілігі жаһандық аймақтың виртуалды адрестік кеңістігін бөліседі. Аймақ белгілі бір пайдалануды кепілдендіру үшін ресурстар тобына (процессор жиынтығы және жоспарлау класы) тағайындалуы мүмкін немесе белгіленген есептеу қабілетімен ("шекті CPU") шектелуі мүмкін немесе әділ үлесті жоспарлау арқылы үлестер берілуі мүмкін. Қазіргі уақытта бір операциялық жүйе экземплярында ең көп дегенде 8191 жаһандық емес аймақтарды құруға болады. "Спарс аймақтар", онда файл жүйесінің көп бөлігі жаһандық аймақпен бөлінеді, 50 МБ дискілік орын алады. "Барлық Root аймақтары", онда әр аймақтың өзінің операциялық жүйе файлдарының жеке көшірмесі бар, орнатылған бағдарламалық жасақтамаға байланысты бірнеше жүз мегабайттан бірнеше гигабайтқа дейін орналасуы мүмкін. 8191 лимиті Solaris инстанциясына 8,192 циклдік қосылымның лимиті бойынша пайда болады. Әрбір аймаққа қайталау қосылымы қажет. Глобалды аймақ бірден алады, 8,191 - ғаламдық емес аймақтар үшін қалдырылады. Тіпті Whole Root Zones-пен де, егер аймақтың OS файл жүйесі жаһандық аймақ кескінінің ZFS клоны болса, дискідегі орын талаптары елемеуге тұрарлық болуы мүмкін, өйткені дискіде тек шынайы кескіннен өзгеше блоктар сақталуы керек; бұл әдіс бірнеше секунд ішінде жаңа аймақтарды құруға мүмкіндік береді.
Құжаттамалық
Solaris операциялық жүйесі әдетте Solaris контейнерлері үшін адам парақтарын ұсынады; толығырақ құжаттаманы әртүрлі онлайн техникалық ресурстардан табуға болады. Solaris Zones үшін алғашқы жарияланған құжатты және қолдарды сілтемелеуді 2004 жылдың ақпанында Blastwave-те Дэннис Кларк жазды, ол бастау үшін қажетті заттарды ұсынады. Бұл құжатты 2005 жылдың шілдесінде Брендан Грегг едәуір кеңейтті. Solaris 8 және Solaris 9 контейнерлері 2008 жылдың сәуірінде Blastwave-те Дэннис Кларктың егжей-тегжейлі құжаттамасында болды. Blastwave Solaris 8 және Solaris 9 Containers құжаты Solaris Containers технологиясының шығарылу циклының өте ерте кезеңінде болды және Blastwave-те жасалған іс-қимылдар мен іске асыру Sun Microsystems маркетингінің жалғастыруына әкелді. Джефф Виктор және басқалар жазған Oracle Solaris 10 System Virtualization Essentials кітабы ерекшеліктері мен үздік тәжірибелерін ұсынады. Толығырақ құжаттаманы Oracle құжаттамалық сайтынан табуға болады.
Орындау мәселелері
Solaris 10 10/08 бастап брендті аймақтар sun4us архитектурасында (Fujitsu PRIMEPOWER серверлері) FJSVs8brandr және FJSVs9brandr пакеттері арқылы қолдайды.