Hva er Container Linux og bør du bruke det?
Linux operativsystemer kommer i en rekke smaker. Mens Linux-operativsystemer som Ubuntu er ganske generelle, er det fortsatt andre som er målrettet mot en nisje. Det er sikkerhetsorienterte Kali Linux. Lettvektsfordeler som Xubuntu, og til og med Hannah Montana Linux (!). For skrivebordsbruk fungerer et vaniljes Linux operativsystem godt. Men for spesialiserte oppgaver som å kjøre en server, er det best å finne en skreddersydd versjon.
Beholdere blir stadig mer populære. Container Linux, tidligere kjent som CoreOS, er et Linux operativsystem designet for enkle containeriserte distribusjoner. Det er et av de nyeste nisje Linux-operativsystemene De nyeste Linux-operativsystemene for hver nisje Det nyeste Linux-operativsystemet for hvert nisje Linux-operativsystem oppdateres kontinuerlig, noen er større enn andre. Ikke sikker på om du skal oppgradere? Sjekk ut disse nye Linux-operativsystemene og se om du burde prøve dem. Les mer . Sjekk ut denne oversikten og hands-on, se Container Linux.
Hands-On With Container Linux: Bakgrunnskunnskap
Før du drar inn i Container Linux, la oss begynne med en kort oversikt over serverarkitekturen. Container Linux er utviklet for gruppert distribusjon. En gruppert distribusjon høres ganske komplisert, men det er ganske enkelt. I hovedsak består en dataklynger av flere servere som samarbeider. Derfor fungerer de som en enhet eller et system i stedet for flere. Videre har datamaskiner i en klynge funksjonen noder eller servere som utfører samme funksjon. Så en node er en enkelt maskin, mens en klynge er en gruppe servere som samarbeider.
De vanligste Container Linux-distribusjonene er innenfor klyngemiljøer. Distroen som tidligere er kjent som CoreOS, inneholder også midler for å spinne opp en klynge fra bare en maskin. Den definerende egenskapen til Container Linux er imidlertid dens avhengighet av containere.
I motsetning til et tradisjonelt stasjonært operativsystem kjøres alle applikasjoner i containere. Selv om både virtuelle maskiner (VM) og containere bruker virtualiseringsmetoder, er beholderne forskjellige. I motsetning til VMs bruker beholdere samme operativsystemkjerne som vertsmaskinen. Fordi containeriserte apper og vertsmaskinen bruker den samme kjernen, vil fordelene ved beholderutnyttelse ha nytte av økt effektivitet. I en virtuell maskinkonfigurasjon kjører hver VM en app pluss et gjesteoperativsystem. Dette kjører på toppen av vertsoperativsystemet og maskinvaren.
Containeriserte distribusjoner i stedet driver apps i sine egne beholdere på toppen av virtualiseringsprogramvare. Docker er fortsatt den mest populære containersoftware, men chroot, LXC og Linux-VServer rang blant Docker-alternativer.
Hands-On With Container Linux: Hvorfor Bruk Containere?
OK, så beholdere er en virtualiseringsmetode. Hvorfor velge et containerisert miljø? Vanligvis gir beholdere forbedret ytelse. Ved å eliminere separate operativsystemer og i stedet bruke en delt kjernen, maksimerer du CPU, lagring og minneeffektivitet.
Siden du ikke trenger å kjøre flere operativsystemer som du ville i en VM-konfigurasjon, kan du kjøre flere containere. Ytelsesforbedringer skyldes behovet for et enkelt operativsystem. På samme måte kan du lage containere raskere enn i et virtuelt maskinmiljø. Derfor er beholdere mer egnet til å opprettholde smidighet og muliggjør kontinuerlig levering og kontinuerlig integrering.
Agile utvikling konsentrerer seg om iterasjon og factoring i uforutsigbarhet. Du kan lese Agile Manifesto for videre innsikt i den smidige filosofien. Men til tross for fordelene med beholdere, er det ikke en perfekt virtualiseringsmetode. Ettersom containere deler vertsoperativsystemet kjernen, er det en sikkerhetsrisiko. Eventuelle sårbarheter eller brudd som påvirker en container, får tilgang til operativsystemet. Men det er en løsning på å kjøre containeriserte apper på et operativsystem i en virtuell maskin. Dette sikrer at vertsmaskinens operativsystem er isolert fra det enkeltstående verts vertsoperativsystem.
Containerisering krever også at containere bruker det samme operativsystemet. Med virtuelle maskiner får hver applikasjon sitt eget operativsystem. Så du kan ikke kjøre apps designet for Windows Server i et containerisert Linux-miljø og omvendt.
Hands-On With Container Linux: Hva er Container Linux?
CoreOS, eller Container Linux som det nå kalles, er et Linux-operativsystem med åpen kildekode. Det er en lett distro rettet mot gruppert distribusjon. Mer spesifikt fokuserer CoreOS på enkle, pålitelige, skalerbare distribusjoner. Du finner ikke en pakkebehandling. I stedet krever Container Linux at alle apper skal kjøre i containere. Container Linux bruker Chrome OS som base. Derfor er Container Linux fortsatt ganske lett. For å teste kjørte jeg Linux-operativsystemet tidligere kjent som CoreOS i en virtuell maskin på en aldrende HP Envy m6-1205dx AMD A10-drevet bærbar datamaskin. Systemforbruket forblir ganske lavt.
Fordi Container Linux eliminerer flere tradisjonelle operativsystemfunksjoner for desktop Linux, holder distribusjonen lett. I motsetning til et stasjonært operativsystem, finner du ikke en pakkebehandling. I stedet kjører alle applikasjoner som Docker-beholdere. Dette gir portabilitet og serviceisolasjon. Hvis du vil ha et skrivebordsmiljø, har du lykke til. Container Linux mangler et grafisk brukergrensesnitt. I stedet er alt kommandolinjebasert. CoreUpdate dashboard tilbyr informasjon om maskinhelse, driftstjenester og klynges helse. Men det er bare tilgjengelig som en komponent i Premium Managed Linux-abonnementet.
Container Linux Arkitektur
Container Linux er lett og designet for containerisering og clustering. Siden det ikke er skrivebordsmiljø, fungerer konfigurasjonen annerledes enn på et Linux-operativsystem som CentOS eller Ubuntu. Ved oppstart laster Container Linux en cloud-config-fil. Du må legge inn informasjon i cloud-config. Dette kan være litt vanskelig, spesielt for de som ikke er kjent med cloud-config. Men det er en viktig fil som gir Container Linux sin evne til å laste viktige tjenester, endre parametere og administrere klynger.
Videre, etcd
og flåte
Daemoner forblir integrert i Container Linux. Begge disse tjenestene starter som standard ved oppstart. I tillegg, ved oppstart av cloud-config-filen kan verten vite hvordan de skal bli med i en eksisterende klynge. De etcd
demon distribuerer og lagrer data for verter innenfor en klynge. Det er viktig for å opprettholde konfigurasjoner samt serviceoppdagelse. De flåte
daemon ligner en distribuert init. Denne demonen kobler til systemd
init for verter i en klynge og tar vare på oppgaver som service planlegging.
Hvert system i a flåte
klyngen kjører bare en fleetd
daemon. Denne demonen tar to hovedansvar som fungerer som både agent og motor. Som motoren utfører demonen planleggingsbeslutninger. Mens agentsiden utfører enheter. I flåten klyngen, etcd
er den eneste datastoren. Slike opplysninger som klyngesammenheng, enhetstilstand og enhedsfiler lagres alle i etcd
daemon. I tillegg er det mediet for flåteagent og motorkommunikasjon.
Hands-On With Container Linux: Hvem skal bruke den?
Container Linux er gratis å laste ned, lett og ganske enkelt å installere i en virtuell maskin. Alle som trenger raske, skalerbare, containeriserte distribusjoner bør velge Container Linux. De fleste systemadministratorer og databaseadministratorer vil mest dra nytte av Container Linux. Da Container Linux mangler et skrivebordsmiljø, passer det best for klusteradministrasjon og i en serverinnstilling. Hvis du leter etter et Linux-server-operativsystem, er Container Linux en av de 12 beste Linux-serveren Distro 12 Best Linux Server-operativsystemer, og hvem bør bruke dem 12 Best Linux Server-operativsystemer og hvem bør bruke dem til å bygge en server? Linux er ideelt, og tilbyr vanligvis forbedrede tillatelser, økt fleksibilitet og stabilitet. Men hvilken skal du velge? Sjekk ut de 12 beste Linux-server-operativsystemene og hvem skal bruke dem. Les mer s.
Air Pair har en utmerket skrive opp på CoreOS-insentiver. Denne artikkelen nevner høy tilgjengelighet, vedlikehold av produksjonsmiljø, programvareversjonskontroll og etcd som hoveddrag for bruk av Container Linux. Spesielt er det også et utrolig dedikert åpen kildekode-fellesskap. Container Linux er skreddersydd for erfarne Linux-brukere. Hjelpedokumentasjonen, mens den er omfattende, antar en moderat grad av Linux-kjennskap. Nybegynnere og nybegynnere kan ha litt problemer med den første installasjonen.
Mer spesifikt, cloud-config kan være en utfordring. I kommentar-delen av en CoreOS-installasjonsvideo uttalte YouTube-brukeren Setyoso Nugroho, “Hyggelig opplæring! Ganske forvirrende når du lærer # cloud-config filkonfigurasjon i CoreOS.” Selv om konfigurasjonen ikke er veldig vanskelig, tar Container Linux en sterk forståelse av Linux-funksjoner som VIM-editoren.
Hands-On With Container Linux: Slik installerer du
Det er mange måter å installere Container Linux på. Ifølge CoreOS nettsted, inkluderer offisielle plattformer Amazon EC2, DigitalOcean, Microsoft Azure, bare metall og OpenStack. Sammen med slike som Oracle Linux, CentOS og Suse, er CoreOS en av en håndfull Azure-kompatible Linux-operativsystem. Er Microsoft virkelig glad i Linux etter alle? Lider Microsoft virkelig av Linux etter alle? Microsoft og Linux har hatt en forstyrrende relasjon. Gjennom årene har konsernsjefene uttrykt et ønske om å se at Linux forsvinner, men i disse dager er historien annerledes. Liker Microsoft egentlig Linux? Les mer . Takket være et pulserende samfunn, støttes også plattformer som Packet, Rackspace, Brightbox, VirtualBox og VMware. Jeg fant den enkleste metoden var å installere Container Linux på VirtualBox ved hjelp av en ISO-fil. Her er en rask guide for hvordan du bruker VirtualBox Slik bruker du VirtualBox: Brukerhåndbok Slik bruker du VirtualBox: Brukerhåndbok Med VirtualBox kan du enkelt installere og teste flere operativsystemer. Vi viser deg hvordan du konfigurerer Windows 10 og Ubuntu Linux som en virtuell maskin. Les mer .
Konfigurere VirtualBox
Åpne VirtualBox, og du blir bedt om et virtuelt maskinnavn, operativsystemtype og versjon. Jeg ringte meg bare CoreOS. For typen, velg Linux. Som versjon, bruk Linux 2.6 / 3.x / 4 / x (64-bit). Klikk på Neste.
Nå må du allokere RAM-en. CoreOS foreslår minimum 1024 MB RAM.
Etter at du har valgt RAM, må du legge til en virtuell harddisk. Bruk nå opprett en virtuell harddisk.
På neste skjerm blir du bedt om en harddisk filtype. Velg VDI eller VirtualBox Disk Image.
Deretter konfigurerer du lagringsplassen. Jeg anbefaler å bruke en dynamisk tildelt harddiskfil.
Velg deretter filens plassering og størrelse. Jeg forlot standard CoreOS som navn, og valgte en 8 GB fildatastørrelse.
Med CoreOS VirtualBox virtuell maskin riktig konfigurert, gå videre og klikk på den grønne Start-knappen.
Når du klikker på Start, må du velge en oppstartsdisk. Naviger til mappen der du har CoreOS ISO og fortsett.
Konfigurere Container Linux
Etter at du har startet CoreOS ISO, begynner Container Linux å laste. Du vil til slutt se en linje som gir din CoreOS-versjon og en kommandolinjeavlesning:
kjerne @ localhost
Skriv inn:
sudo openssl passwd -1> cloud-config-fil
Kommandolinjen presenterer en advarsel om at hvis ikke kan åpne config-filen. Skriv inn ønsket passord og fortsett. Neste angi:
cat cloud-config-fil
Dette returnerer en lang streng og oppretter en ny cloud-config-fil. Åpne nå sky-config i en visuell editor:
vi cloud-config-fil
Dette laster en cloud-config-fil som du kan redigere. CoreOS inneholder en avansert filformat for Cloud-config:
Mine så ut som:
# cloud-config brukere: moe passwd: [SSL password] grupper: - sudo-docker
Du kan sjekke din Cloud-config-fil ved å skrive inn:
cat cloud-config-fil
Dette returnerer konfigurasjonsfilen din. Hvis alt ser bra ut, fortsett med å installere CoreOS:
sudo coreos-installere -d / dev / sda -C stable -c cloud-config-fil
Du får se en melding om at CoreOS lastes ned, skrives og bekreftes. Så snart det er ferdig, vil du se en melding som sier “Suksess! CoreOS [versjon] er installert på / dev / sda.”
Slå av CoreOS-virtuell maskin, og start den på nytt. Når du starter sikkerhetskopiering, vær sikker på å avmontere CoreOS ISO, ellers vil live-CDen kjøre igjen.
CoreOS vil laste inn og du vil sende innloggingsprompten på kommandolinjen:
localhost login:
Skriv inn brukernavnet og passordet ditt. Dette vil laste inn en melding som sier “Container Linux av CoreOS [versjon]” og en ny kommandolinje.
Hands-On With Container Linux: Neste trinn
Nå som Container Linux av CoreOS er riktig installert, kan du begynne å sette opp containere og klynger. CoreOS dokumentasjon har en utmerket hurtigstartsguide. Det er informasjon om serviceoppdagelse ved bruk av etcd, samt en del om containerhåndtering med Docker. Jeg utførte noen få raske tester som a “Hei Verden” Docker-trekk. I tillegg installerte jeg et Plex Docker-bilde fordi jeg er en stor medieserver buff. Til slutt satte jeg opp flåte for klyngestyring.
Hva du vil gjøre først, er å konfigurere hovedkomponentene til Container Linux:
- etcd
- Docker
- Flåte
Ved å konfigurere disse tre primære fundamentene, vil du være klar for serviceoppdaging, klyngestyring og konfigurering av containere. Deretter kan du komme i gang med containerisering av apper og trygt skrive skrivebordsprogrammer i en sikker Docker-beholder. Slik trykker du trygt programmer på en sikker container med docker. Slik trykker du trygt skrivebordsprogrammer i en sikker container med Docker Docker er en populær plattform for utvikling og testing serverbaserte applikasjoner. Men visste du at du også kan bruke den til å trygt og sikkert kjøre nye programmer på skrivebordet ditt? Les mer .
Hands-On With Container Linux: Endelige tanker
Jeg bruker ikke containere ofte, men Container Linux forenklet distribusjon. Dokumentasjon er utmerket med sample config-filer. Legg merke til at for nybegynnere gjør flere uoffisielle videoinstallasjonsveiledninger enklere CoreOS-installasjoner. Mens CoreOS hevder at Container Linux er lett, var jeg opprinnelig skeptisk. Likevel spinn jeg opp Container Linux i en virtuell maskin med relativt lav ressursforbruk. Og fordi jeg ønsket å teste om Container Linux var virkelig lett, brukte jeg min eldre HP laptop, og oppsto ingen problemer.
Noen trinn i den første installasjonen er imidlertid ikke veldig “nybegynner vennlig.” Installere og sette opp Container Linux krever en robust Linux-kjennskap. Spesielt prøvde jeg ikke CoreUpdate-dashbordet, som CoreOS tilbyr som en betalt premium-funksjon. Selv om jeg ikke har problemer med å bruke kommandolinjen, ville et grafisk miljø for overvåking gjøre et fint tillegg.
Systemadministratorer og databaseadministratorer drar mest nytte av Container Linux. Men for hjemmeservere er det en enkel og lett måte å skape et klynget miljø på. Videre, med Container Linux kan du spinne opp en klynge fra en enkelt maskin. Men Container Linux er en god introduksjon til å jobbe med containere. Hvis du prøver å lære mer om Docker og containere, kjører Container Linux veldig bra i en virtuell maskin, og tilbyr alle ressursene du trenger for å komme i gang.
Det er en utmerket utendørs løsning for Container-nybegynnere i tillegg til erfarne DevOps-ingeniører, sysadminer og databaseadministratorer. Endelig Container Linux av CoreOS er et enkelt middel til å skape et skalerbart, effektivt, containerisert miljø.
Bruker du CoreOS? Planlegger du å? Gi oss beskjed om hvordan du bygger på Linux i kommentarfeltet nedenfor!
Utforsk mer om: Linux, Linux Distro.