Hvad er Container Linux og skal du bruge det?

Beholdere bliver stadig mere populære. Container Linux, tidligere kendt som CoreOS, er et Linux operativsystem designet til simple containeriserede implementeringer. Dette overblik og hands-on se på Container Linux vil fortælle dig mere.

Beholdere bliver stadig mere populære.  Container Linux, tidligere kendt som CoreOS, er et Linux operativsystem designet til simple containeriserede implementeringer.  Dette overblik og hands-on se på Container Linux vil fortælle dig mere.
Reklame

Linux operativsystemer kommer i en række smagsoplevelser. Mens Linux-operativsystemer som Ubuntu er ret generelle, er der stadig andre målrettet mod en niche. Der er den sikkerhedsorienterede Kali Linux. Letvægtsfordelinger som Xubuntu, og endda Hannah Montana Linux (!). Til desktop brug fungerer et vanilie Linux operativsystem godt. Men for specialiserede opgaver som at køre en server, er det bedst at finde en skræddersyet version.

Beholdere bliver stadig mere populære. Container Linux, tidligere kendt som CoreOS, er et Linux operativsystem designet til simple containeriserede implementeringer. Det er et af de nyeste niches Linux-operativsystemer. Det nyeste Linux-operativsystem til hver niche. De nyeste Linux-operativsystemer til hvert Niche Linux-operativsystem opdateres løbende, mens nogle er større end andre. Er du sikker på, om du skal opgradere? Tjek disse nye Linux-operativsystemer og se, om du skal prøve dem. Læs mere . Tjek dette overblik og hands-on se på Container Linux.

Hands-On With Container Linux: Background Knowledge

Før du dyker ind i Container Linux, lad os begynde med et kort overblik over serverarkitekturen. Container Linux er designet til grupperede implementeringer. En grupperet implementering lyder ret kompleks, men det er ret simpelt. En computerklynge består hovedsagelig af flere servere, der arbejder sammen. Derfor fungerer de som en enhed eller et system i stedet for flere. Desuden indeholder computere i en klynge knudepunkter eller servere, der udfører samme funktion. Så en knude er en enkelt maskine, mens en klynge er en gruppe af servere, der arbejder sammen.

De mest almindelige Container Linux-implementeringer er inden for klyngemiljøer. Den distro, der tidligere er kendt som CoreOS, indeholder selv midlerne til at spinde en klynge fra kun en maskine. Det definerende træk ved Container Linux er imidlertid dets afhængighed af containere.

I modsætning til et traditionelt desktop operativsystem løber alle applikationer i containere. Selvom både virtuelle maskiner (VM) og containere bruger virtualiseringsmetoder, varierer containerne. I modsætning til VM'er bruger containere samme operativsystemkerne som værtsmaskinen. Fordi containeriserede apps og værtsmaskinen bruger den samme kerne, udnyttes containerudnyttelsen af ​​øget effektivitet. I en virtuel maskine konfiguration kører hver VM en app plus et gæstesystem. Dette kører oven på værtsoperativsystemet og hardwaren.

Containeriserede implementeringer i stedet kører apps i deres egne containere oven på virtualiseringssoftware. Docker er fortsat den mest populære containersoftware, men chroot, LXC og Linux-VServer rang blandt Docker-alternativer.

Hands-On With Container Linux: Hvorfor Brug Containere?

OK, så beholdere er en virtualiseringsmetode. Hvorfor vælge et containeriseret miljø? Typisk giver beholdere forbedret ydeevne. Ved at undgå separate operativsystemer og i stedet bruge en delt kerne, maksimerer du CPU, lagring og hukommelseseffektivitet.

Da du ikke behøver at køre flere operativsystemer som du ville i en VM-konfiguration, kan du køre flere containere. Ydeevneforbedringer stammer fra behovet for et enkelt operativsystem. På samme måde kan du oprette containere hurtigere end i et virtuelt maskinmiljø. Derfor er containere mere egnede til at opretholde fleksibilitet og muliggør kontinuerlig levering og kontinuerlig integration.

Agile udvikling koncentrerer sig om iteration og factoring i uforudsigelighed. Du kan læse Agile Manifesto for yderligere indsigt i den agile filosofi. Men på trods af fordelene ved containere er det ikke en perfekt virtualiseringsmetode. Da containere deler værts operativsystemkernen, er der en sikkerhedsrisiko. Enhver sårbarhed eller brud, der påvirker en container, får adgang til operativsystemet. Men der er en løsning på at køre containeriserede apps på et operativsystem i en virtuel maskine. Dette sikrer, at værtsmaskinens operativsystem er isoleret fra det enkeltbeholder-værtsoperativsystem.

Containerisering kræver også, at containere bruger det samme operativsystem. Med virtuelle maskiner får hver applikation sit eget operativsystem. Så du kan ikke køre apps designet til Windows Server i et containeriseret Linux-miljø og omvendt.

Hands-On With Container Linux: Hvad er Container Linux?

CoreOS Core Update

CoreOS, eller Container Linux som det hedder nu, er et open source Linux operativsystem. Det er en let distro rettet mod klyngede implementeringer. Mere specifikt koncentrerer CoreOS sig på enkle, pålidelige, skalerbare implementeringer. Du finder ikke en pakkechef. I stedet kræver Container Linux, at alle apps skal køre inde i containere. Container Linux bruger Chrome OS som base. Container Linux forbliver derfor ret let. For at teste, kørte jeg Linux-operativsystemet, der tidligere var kendt som CoreOS i en virtuel maskine på en aldrende HP Envy m6-1205dx AMD A10-drevet bærbar computer. Systemforbruget forblev ret forholdsvis lavt.

Fordi Container Linux afskrækker flere traditionelle stationære Linux-operativsystemfunktioner, holder det distributionen letvægts. I modsætning til et desktop-operativsystem finder du ikke en pakkehåndtering. I stedet løber alle applikationer som Docker-containere. Dette giver portabilitet og serviceisolering. Hvis du vil have et skrivebordsmiljø, har du ikke lykke. Container Linux mangler en grafisk brugergrænseflade. I stedet er alt kommandolinjebaseret. CoreUpdate dashboard tilbyder oplysninger om maskinens sundhed, løbende tjenester og klyngesundhed. Men det er kun tilgængeligt som en komponent i Premium Managed Linux-abonnementet.

Container Linux Arkitektur

Container Linux er letvægts og designet til containerisering og clustering. Da der ikke er skrivebordsmiljø, fungerer konfigurationen anderledes end på et Linux-operativsystem som CentOS eller Ubuntu. Ved start boot læser Container Linux en cloud-config-fil. Du skal indtaste oplysninger i cloud-config. Dette kan være en smule vanskelig, især for dem, der ikke er bekendt med cloud-config. Men det er en vigtig fil, der giver Container Linux sin evne til at indlæse vigtige tjenester, ændre parametre og administrere klynger.

Endvidere forbliver etcd og etcd integreret for Container Linux. Begge disse tjenester starter som standard ved opstart. Ved opstart af cloud-config-filen kan værten også vide, hvordan man deltager i en eksisterende klynge. Den etcd daemon distribuerer og gemmer data for værter inden for en klynge. Det er vigtigt at opretholde konfigurationer samt serviceopdagelse. Flådedemonen ligner en distribueret init. Denne dæmon forbinder systemd init for værter i en klynge og tager sig af opgaver som serviceplanlægning.

Hvert system i en fleetd kører kun en fleetd . Denne dæmon antager to hovedansvar, der fungerer som både agent og motor. Daemonen udfører planlægningsbeslutninger som motor. Mens agentens side udfører enheder. I flåden klynge etcd er den eneste datastore. Sådanne oplysninger som klynge-tilstedeværelse, enhedsstat og enhedsfiler gemmes alle inden for etcd dæmonen. Derudover er det middel til flådeagent og motorkommunikation.

Hands-On With Container Linux: Hvem skal bruge det?

Container Linux er gratis at downloade, letvægts og ret nemt at installere i en virtuel maskine. Alle, der har brug for hurtige, skalerbare, containeriserede implementeringer, bør vælge Container Linux. Systemadministratorer og databaseadministratorer vil mest drage fordel af Container Linux. Da Container Linux mangler et skrivebordsmiljø, passer det bedst til klyngehåndtering og i en serverindstilling. Hvis du leder efter et Linux-server-operativsystem, er Container Linux et af de 12 bedste Linux-serverdistro 12 Best Linux Server-operativsystemer, og hvem skal bruge dem 12 Best Linux Server-operativsystemer og hvem skal bruge dem til at opbygge en server? Linux er ideel, som typisk tilbyder forbedrede tilladelser, øget fleksibilitet og stabilitet. Men hvilken skal man vælge? Tjek de 12 bedste Linux-server operativsystemer, og hvem skal bruge dem. Læs mere s.

Air Pair har en fremragende skrivning på CoreOS incitamenter. Denne artikel nævner høj tilgængelighed, vedligeholdelse af produktionsmiljøet, softwareversionskontrol og mvd som hoveddrag for brug af Container Linux. Især er der også et utroligt dedikeret open source-fællesskab. Container Linux er skræddersyet til erfarne Linux brugere. Hjælpedokumentationen, mens den er omfattende, antager en moderat grad af Linux-fortrolighed. Nybegyndere og nybegyndere kan have lidt problemer med den oprindelige installation.

Mere specifikt kan cloud-config være en udfordring. I kommentarfeltet i en CoreOS-installationsvideo udtalte YouTube-brugeren Setyoso Nugroho, "Nice tutorial! Helt forvirrende, når man lærer # cloud-config filkonfiguration i CoreOS. "Mens konfigurationen ikke er forfærdeligt svært, tager Container Linux en stærk forståelse af Linux-funktioner som VIM-editoren.

Hands-On With Container Linux: Sådan installeres

Der er mange midler til at installere Container Linux. Ifølge CoreOS-webstedet omfatter officielle platforme Amazon EC2, DigitalOcean, Microsoft Azure, bare metal og OpenStack. Sammen med lignende Oracle Linux, CentOS og Suse, er CoreOS en af ​​en håndfuld Azure kompatible Linux operativsystemer Er Microsoft virkelig elske Linux efter alt? Er Microsoft virkelig elske Linux efter alt? Microsoft og Linux har haft et tumult forhold. Gennem årene har CEOs udtrykt et ønske om at se Linux forsvinde, men i disse dage er historien anderledes. Ligner Microsoft virkelig Linux? Læs mere . Takket være et levende samfund understøttes platforme som Packet, Rackspace, Brightbox, VirtualBox og VMware også. Jeg fandt den nemmeste metode var at installere Container Linux på VirtualBox ved hjælp af en ISO-fil. Her er en hurtig vejledning til, hvordan du bruger VirtualBox Sådan bruger du VirtualBox: Brugervejledning Sådan bruger du VirtualBox: Brugervejledning Med VirtualBox kan du nemt installere og teste flere operativsystemer. Vi viser dig hvordan du konfigurerer Windows 10 og Ubuntu Linux som en virtuel maskine. Læs mere .

Konfiguration af VirtualBox

Åbn VirtualBox, og du bliver bedt om et virtuelt maskinnavn, operativsystemtype og version. Jeg kaldte min blot CoreOS. Vælg typen Linux for typen. Som version skal du bruge Linux 2.6 / 3.x / 4 / x (64-bit). Klik på Næste.

CoreOS Start

Nu skal du allokere dit RAM. CoreOS foreslår mindst 1024 MB RAM.

CoreOS RAM

Når du har valgt dit RAM, skal du tilføje en virtuel harddisk. Brug nu en mulighed for at oprette en virtuel harddisk.

Opret VHD CoreOS

På den næste skærm bliver du bedt om en harddisk filtype. Vælg VDI eller VirtualBox Disk Image.

CoreOS VDI

Derefter konfigurerer du lagerplads. Jeg anbefaler at bruge en dynamisk tildelt harddiskfil.

CoreOS Dynamic

Vælg derefter filens placering og størrelse. Jeg forlod standard CoreOS som navn og valgte en 8 GB fildatastørrelse.

CoreOS filstørrelse allokering

Når din virtuelle CoreOS VirtualBox-maskine er konfigureret korrekt, skal du gå videre og klikke på den grønne Start-knap.

CoreOS Start

Når du har klikket på Start, skal du vælge en startdisk. Naviger til den mappe, hvor du har din CoreOS ISO og fortsæt.

Konfiguration af Container Linux

Efter start af din CoreOS ISO begynder Container Linux at indlæse. Du vil til sidst se en linje giver din CoreOS-version og en kommandolinje læsning:

 core@localhost 

Indtaste:

 sudo openssl passwd -1>cloud-config-file 

CoreOS Passwd Config

Kommandolinjen præsenterer en advarsel om, at hvis ikke kan åbne konfigurationsfilen. Indtast dit ønskede kodeord og fortsæt. Indtast næste:

 cat cloud-config-file 

CoreOS Cat Cloud Config

Dette returnerer en lang streng og opretter en ny cloud-config-fil. Nu åbner cloud-config i en visuel editor:

 vi cloud-config-file 

CoreOS VI

Dette indlæser en cloud-config-fil, som du kan redigere. CoreOS indeholder en avanceret eksempelfil for cloud-config:

CoreOS Cloud Config Eksempel

Mine lignede:

 #cloud-config users: moe passwd: [SSL password] groups: - sudo - docker 

CoreOS Cloud Config Ex

Du kan tjekke din cloud-config-fil ved at indtaste:

 cat cloud-config-file 

CoreOS Check Cloud Config

Dette returnerer din config-fil. Hvis alt ser godt ud, skal du fortsætte med at installere CoreOS:

 sudo coreos-install -d /dev/sda -C stable -c cloud-config-file 

CoreOS Installer Final

Du får se en besked om, at CoreOS downloades, skrives og verificeres. Så snart det er færdigt, vil du se en meddelelse, der siger "Succes! CoreOS [version] er installeret på / dev / sda. "

CoreOS succes

Luk din CoreOS virtuelle maskine og start den derefter igen. Når du starter sikkerhedskopiering, skal du afmontere CoreOS ISO, ellers vil live-cd'en køre igen.

CoreOS vil indlæse, og du får en login prompt i kommandolinjen:

 localhost login: 

CoreOS Final Login

Indtast dit brugernavn og din adgangskode. Dette vil indlæse en meddelelse, der siger "Container Linux af CoreOS [version]" og en ny kommandolinje.

Endelig Login CoreOS

Hands-On With Container Linux: Næste trin

Nu, da Container Linux ved CoreOS er korrekt installeret, kan du begynde at opsætte beholdere og klynger. CoreOS dokumentation har en fremragende hurtigstartsguide. Der er information om serviceopdagelse ved hjælp af etcd samt et afsnit om containerhåndtering med Docker. Jeg har udført et par hurtige tests som en "Hello World" Docker pull. Derudover installerede jeg et Plex Docker-billede, fordi jeg er en stor medieserver buff. Endelig etablerede jeg flåde til klyngestyring.

Hvad du vil gøre først, er at konfigurere hovedkomponenterne i Container Linux:

  • etcd
  • Docker
  • Flåde

Ved at konfigurere disse tre primære fundamenter vil du være klar til serviceopdagelse, klyngehåndtering og opsætning af containere. Derefter kan du komme i gang med containerisering af apps og sikkert afprøve desktop-apps i en sikker dockerbeholder. Sådan testes skrivebordsprogrammer i en sikker container med docker Sådan testes du sikkert på stationære applikationer i en sikker container med Docker Docker er en populær platform til udvikling og testning serverbaserede applikationer. Men vidste du, at du også kan bruge det til sikkert og sikkert at køre nye programmer på skrivebordet? Læs mere .

Hands-On With Container Linux: Endelige Tanker

Jeg bruger ikke containere ofte, men Container Linux forenklet implementering. Dokumentation er fremragende med sample config-filer. Bemærk at for nybegyndere gør flere uofficielle videoinstallationstutorials lettere CoreOS-installationer. Mens CoreOS hævder, at Container Linux er let, var jeg oprindeligt skeptisk. Endnu har jeg spundet op Container Linux i en virtuel maskine med forholdsvis lavt ressourceforbrug. Og fordi jeg ønskede at teste om Container Linux var virkelig let, brugte jeg min aldrende HP laptop og stødte på ingen problemer.

Nogle trin i den oprindelige installation er imidlertid ikke særlig "nybegyndervenlige." Installation og opsætning af Container Linux kræver en robust Linux-fortrolighed. Jeg prøvede især ikke CoreUpdate dashboard, som CoreOS tilbyder som en betalt præmiefunktion. Selvom jeg ikke har problemer med at bruge kommandolinjen, ville et grafisk miljø til overvågning gøre en god tilføjelse.

Systemadministratorer og databaseadministratorer har mest udbytte af Container Linux. Men for hjemmeservere er det et enkelt og let middel til at skabe et klynget miljø. Desuden kan du med Container Linux rotere en klynge fra en enkelt maskine. Men Container Linux er en god introduktion til at arbejde med containere. Hvis du forsøger at lære mere om Docker og containere, kører Container Linux rigtig godt i en virtuel maskine og tilbyder alle de ressourcer, du har brug for til at komme i gang.

Det er en fremragende out-of-the-box løsning til Container nybegyndere ud over erfarne DevOps ingeniører, sysadminer og database admins. Endelig Container Linux af CoreOS er et simpelt middel til at skabe et skalerbart, effektivt, containeriseret miljø.

Bruger du CoreOS? Har du planer om at Lad os vide, hvordan du containeriserer på Linux i kommentarfeltet nedenfor!

In this article