Přenositelnost kontejnerů
Platí pro: Windows Server verze 23H2
Přenositelnost je funkcí ročního kanálu Windows Serveru pro kontejnery. Přenositelnost zjednodušuje proces upgradu, což vám pomůže plně využít výhod vylepšené flexibility a kompatibility, které kontejnery nabízejí. Tento článek obsahuje podrobné vysvětlení toho, jak se přenositelnost kontejnerových imagí optimalizuje pro hostitele kontejnerů ročního kanálu.
Windows Server Annual Channel for Containers je edice Windows Serveru navržená pro Azure Kubernetes Service a nasazení Windows Serveru zaměřené na kontejnery, aby se zlepšila efektivita a zajistila optimalizovaná přenositelnost jak pro kontejnery Windows, tak Linux. Další informace o Annual Channelu pro kontejnery ve Windows Serveru najdete v našem oznámení na TechCommunity .
Jak funguje přenositelnost
Systém Windows používá modulární jádro, kde komponenty jsou často úzce svázané mezi uživatelským režimem a režimem jádra. Úzce spojené komponenty jsou užitečná grafická rozhraní nad ovladači v režimu jádra nebo pomáhají optimalizovat výkon snížením počtu přepínání mezi režimem jádra a uživatelským režimem. Představuje ale výzvu pro kontejnery. Přenositelnost umožňuje kontejnerům spuštěným v uživatelském režimu spouštět úlohy s jinou verzí image kontejneru než verze hostitelského operačního systému.
Bez přenositelnosti mohli uživatelé spouštět úlohy pouze s verzemi obrázků a hostitelů, které se shodovaly. Například uživatel s hostitelem Windows Server 2022 nemohl spouštět procesně izolované kontejnery z Windows Server 2019. Verzování mezi hostitelským systémem a obrazem kontejneru bylo významným problémem v kontejnerizaci Windows, což ztěžovalo přechod na novější verze hostitelského systému kontejneru. Například Windows Server 2022 LTSC vyžadoval aktualizaci všech imagí infrastruktury a aplikací na nejnovější verzi současně s aktualizací hostitele.
Binární rozhraní aplikace
Binární rozhraní aplikace nebo ABI umožňuje různým programovacím jazykům pracovat s rozhraními režimu uživatele a jádra. Interakce s kódem klienta s objektem runtime probíhá na nejnižší úrovni s konstruktory jazyka klienta přeloženými do volání do ABI objektu. Přenositelnost kontejnerů Windows představuje stabilní ABI pro interakci uživatele a jádra. Tato stabilní funkce ABI odděluje součásti uživatele a jádra systému a umožňuje samostatně aktualizovat jádro a uživatelské prvky systému.
Kontejnery mohou spouštět všechny binární soubory uživatelského režimu z jejich základní vrstvy s výjimkou vrstvy ABI.
Následující diagram znázorňuje komunikaci mezi komponentami uživatelského režimu a režimu jádra.
Které verze můžu použít?
Image kontejnerů Nano Serveru, Jádra serveru a Windows Serveru jsou dostupné jenom prostřednictvím kanálu údržby Long-Term pro kontejnery s Windows Serverem 2019 nebo novějším. Další informace o podporovaných obrazech kontejnerů Windows Serveru naleznete v části Životní cyklus údržby základních obrazů.
Hostitel kontejneru Windows Server verze 23H2 podporuje pouze image kontejneru LtSC (Long Term Servicing Channel) systému Windows Server 2022.
Azure Kubernetes Service aktuálně podporuje hostitele s Windows Serverem 2019 a novějším. Windows Server Annual Channel for Containers je další možností operačního systému kontejneru, kterou Microsoft nabízí společně s Kubernetes 1.28. Můžete vytvořit nové skupiny uzlů podle ročního kanálu a nadále nasazovat obrazy kontejnerů Windows Serveru 2022 na tyto uzly. Microsoft aktualizuje roční verzi kanálu a všechny nové verze Kubernetes každý rok automaticky. Je ale také vhodné postupovat podle nejnovějších verzí LTSC, abyste měli jistotu, že jsou kontejnery aktuální.
Poznámka
I když předchozí verze imagí kontejneru můžou běžet na novějším hostitelském operačním systému, novější operační systémy image kontejneru nejde spustit v předchozím hostitelském operačním systému.