Tuli ulos minimalistinen LinuxBottlerocket, konttien ajamiseen tarkoitettu jakelu. Sen tärkeimmät ominaisuudet

Tuli ulos minimalistinen LinuxBottlerocket, konttien ajamiseen tarkoitettu jakelu. Sen tärkeimmät ominaisuudet

Amazon yritys ilmoitti lopullisesta julkaisusta Pullon tasku — erikoisjakelu konttien kuljettamiseen ja niiden tehokkaaseen hallintaan.

Bottlerocket (muuten, pienille kotitekoisille mustajauheraketteille annettu nimi) ei ole ensimmäinen käyttöjärjestelmä konteille, mutta on todennäköistä, että se tulee yleistymään oletusarvoisen integroinnin AWS-palveluihin ansiosta. Vaikka järjestelmä on keskittynyt Amazon-pilveen, avoimen lähdekoodin avulla se voidaan rakentaa minne tahansa: paikallisesti palvelimelle, Raspberry Pi:lle, missä tahansa kilpailevassa pilvessä ja jopa konttittomassa ympäristössä.

Tämä on täysin arvokas korvaus CoreOS-jakelulle, jonka Red Hat hautasi.

Itse asiassa Amazon Web Services -divisioonalla on jo Amazon Linux, joka on äskettäin siirtynyt toiseen versioonsa: se on yleiskäyttöinen jakelu, jota voidaan ajaa Docker-kontissa tai hypervisoreilla Linux KVM, Microsoft Hyper-V ja VMware ESXi. Se oli optimoitu toimimaan AWS-pilviympäristössä, mutta Bottlerocketin julkaisun myötä kaikille suositellaan päivittämistä uuteen järjestelmään, joka on turvallisempi, modernimpi ja kuluttaa vähemmän resursseja.

AWS ilmoitti Bottlerocketista maaliskuussa 2020Hän myönsi heti, ettei tämä ollut ensimmäinen kerta.Linux konteille", mainiten inspiraation lähteinä CoreOS:n, Rancher OS:n ja Project Atomicin. Kehittäjät kirjoittivat, että käyttöjärjestelmä on "tulos niistä opeista, joita olemme oppineet Amazonin tuotantopalveluiden mittakaavassa pitkään jatkuneesta pyörittämisestä, sekä kokemuksesta, jota olemme saaneet viimeisten kuuden vuoden aikana konttien pyörittämisestä".

Äärimmäistä minimalismia

Linux Yrityksen mukaan tämä suunnittelu, jossa on poistettu kaikki konttien pyörittämiseen tarpeeton, pienentää hyökkäyspinta-alaa.

Tämä tarkoittaa, että perusjärjestelmään asennetaan vähemmän paketteja, mikä helpottaa käyttöjärjestelmän ylläpitoa ja päivittämistä ja vähentää myös riippuvuuksista johtuvien ongelmien todennäköisyyttä, mikä vähentää resurssien käyttöä. Periaatteessa kaikki täällä toimii erillisten säiliöiden sisällä, ja taustalla oleva järjestelmä on käytännössä paljas.

Amazon on myös poistanut kaikki kuoret ja tulkit, mikä eliminoi riskin, että niitä käytetään tai käyttäjät voivat vahingossa laajentaa oikeuksiaan. Minimalismin ja turvallisuuden vuoksi peruskuva ei sisällä komentokullia, SSH-palvelinta tai tulkittuja kieliä, kuten Python. Järjestelmänvalvojan työkalut sijoitetaan erilliseen palvelusäiliöön, joka on oletuksena poistettu käytöstä.

Järjestelmää hallitaan kahdella tavalla: API:n ja orkestroinnin kautta.

Yksittäisiä ohjelmistoja päivittävän paketinhallinnan sijaan Bottlerocket lataa täydellisen tiedostojärjestelmän kuvan ja käynnistää sen uudelleen. Jos lataus epäonnistuu, se palautuu automaattisesti, ja työkuorman virhe voi laukaista palautuksen manuaalisesti (komento API:n kautta).

puitteissa TUF (The Update Framework) lataa kuvapohjaiset päivitykset vaihtoehtoisiin tai "liittämättömiin" osioihin. Järjestelmälle on varattu kaksi levyosiota, joista toinen sisältää aktiivisen järjestelmän ja päivitys kopioidaan toiseen. Tässä tapauksessa juuriosio asennetaan vain luku -tilassa ja osio /etc asennettu tiedostojärjestelmän kanssa RAM-muistiin tmpfs ja palauttaa alkuperäisen tilan uudelleenkäynnistyksen jälkeen. Määritystiedostojen suora muokkaaminen sisään /etc ei tueta: tallentaaksesi asetukset sinun tulee käyttää API:ta tai siirtää toiminnallisuus erillisiin säilöihin.

Tuli ulos minimalistinen LinuxBottlerocket, konttien ajamiseen tarkoitettu jakelu. Sen tärkeimmät ominaisuudet
API-päivityssuunnitelma

Безопасность

Kontteja luodaan käyttämällä ytimen vakiomekanismeja. Linux — cgroups, namespaces ja seccomp, ja pakollisen käyttöoikeuksien valvonnan järjestelmänä eli lisäeristyksenä sitä käytetään SELinux "pakko"-tilassa.

Oletuksena käytännöt ovat käytössä resurssien jakamiseksi säilöjen ja ytimen välillä. Binaarit on suojattu lipuilla estämään käyttäjiä tai ohjelmia suorittamasta niitä. Ja jos pääset tiedostojärjestelmään, Bottlerocket tarjoaa työkalun tehtyjen muutosten tarkistamiseen ja seuraamiseen.

"Verified boot" -tila toteutetaan laite-mapper-verity-toiminnolla (dm-verity), joka varmistaa juuriosion eheyden käynnistyksen aikana. AWS kuvailee dm-verity-funktiota "ytimen funktioksi Linux, joka tarjoaa eheystarkistuksen estääkseen haittaohjelmien suorittamisen käyttöjärjestelmässä, kuten pääjärjestelmäohjelmiston korvaamisen."

Järjestelmässä on myös suodatin eGMP (pidennetty BPF, kehittäjä Aleksei Starovoitov), jonka avulla ydinmoduulit voidaan korvata turvallisemmilla BPF-ohjelmilla matalan tason järjestelmätoimintoihin.

Toteutusmalli
Käyttäjän määrittelemä
Kokoelma
Безопасность
Virhetila
Pääsy resursseihin

käyttäjä
tehtävä
kyllä
kaikki
käyttöoikeudet
keskeyttää suoritus
järjestelmäkutsu, vika

Ydin
tehtävä
ei
staattinen
ei
ytimen paniikki
прямой

BPF
tapahtuma
kyllä
JIT, CO-RE
tarkastus, JIT
virheviesti
rajalliset avustajat

Miten BPF eroaa tavallisesta käyttäjä- tai ydintason koodista lähde

AWS sanoi, että Bottlerocket "käyttää toimintamallia, joka lisää turvallisuutta entisestään estämällä yhteydet tuotantopalvelimiin, joilla on järjestelmänvalvojan oikeudet" ja "sopii suuriin hajautettuihin järjestelmiin, joissa kunkin yksittäisen isäntä on rajoitettu".

Järjestelmänvalvojille tarjotaan järjestelmänvalvojan säilö. Mutta AWS ei usko, että järjestelmänvalvojan tarvitsee usein työskennellä Bottlerocketin sisällä: "Erilliseen Bottlerocket-esiintymään kirjautuminen on tarkoitettu harvoin tapahtuviin toimintoihin: edistyneeseen virheenkorjaukseen ja vianetsintään." kirjoittaa kehittäjät.

Ruosteen kieli

Ytimen päällä oleva käyttöjärjestelmäinstrumentointi on enimmäkseen kirjoitettu Rustilla. Tämä kieli on luonteeltaan vähentää vaarallisen muistin käytön todennäköisyyttäJa eliminoi kilpailuolosuhteet lankojen välistä.

Lippuja käytetään oletuksena rakennuksen aikana --enable-default-pie и --enable-default-ssp mahdollistaa suoritettavien tiedostojen osoiteavaruuden satunnaistaminen (sijainnista riippumaton suoritettava tiedosto, PIE) ja pinon ylivuotosuoja.

C/C++-paketteihin sisältyy lisälippuja -Wall, -Werror=format-security, -Wp,-D_FORTIFY_SOURCE=2, -Wp,-D_GLIBCXX_ASSERTIONS и -fstack-clash-protection.

Rustin ja C/C++:n lisäksi osa paketeista on kirjoitettu Go-kielellä.

Integrointi AWS-palveluihin

Erona vastaaviin konttikäyttöjärjestelmiin on se, että Amazon on optimoinut Bottlerocketin toimimaan AWS:ssä ja integroitumaan muihin AWS-palveluihin.

Suosituin konttiorkesteri on Kubernetes, joten AWS on ottanut käyttöön integraation oman Enterprise Kubernetes -palvelunsa (EKS) kanssa. Orkesterityökalut toimitetaan erillisessä ohjauslaatikossa pullonraketin ohjauskontti, joka on oletuksena käytössä ja jota hallitaan API:n ja AWS SSM Agentin kautta.

On mielenkiintoista nähdä, lähteekö Bottlerocket nousuun, kun otetaan huomioon joidenkin vastaavien aloitteiden epäonnistuminen aiemmin. Esimerkiksi Vmwaren PhotonOS osoittautui lunastamattomaksi, ja RedHat osti CoreOS:n ja sulki projektin, jota pidettiin alan edelläkävijänä.

Bottlerocketin integrointi AWS-palveluihin tekee tästä järjestelmästä ainutlaatuisen omalla tavallaan. Tämä on ehkä tärkein syy siihen, miksi jotkut käyttäjät saattavat suosia Bottlerocketia muihin distroihin, kuten CoreOS:ään tai Alpiseen. Järjestelmä on alun perin suunniteltu toimimaan EKS:n ja ECS:n kanssa, mutta toistamme, että tämä ei ole välttämätöntä. Ensinnäkin Bottlerocket voi koota itse ja käyttää sitä esimerkiksi isännöitynä ratkaisuna. Toiseksi EKS- ja ECS-käyttäjillä on edelleen mahdollisuus valita käyttöjärjestelmänsä.

Bottlerocket-lähdekoodi on julkaistu GitHubissa Apache 2.0 -lisenssillä. Kehittäjät ovat jo vastata vikailmoituksiin ja ominaisuuspyyntöihin.

Mainonnan oikeuksista

VDSina tarjoukset VDS päivittäisellä maksulla. On mahdollista asentaa mikä tahansa käyttöjärjestelmä, myös omasta kuvasta. Jokainen palvelin on yhdistetty 500 megabitin Internet-kanavaan ja on suojattu DDoS-hyökkäyksiltä ilmaiseksi!

Tuli ulos minimalistinen LinuxBottlerocket, konttien ajamiseen tarkoitettu jakelu. Sen tärkeimmät ominaisuudet

Lähde: will.com

Osta luotettava isännöinti sivustoille, joissa on DDoS-suojaus, VPS VDS -palvelimet 🔥 Osta luotettavaa verkkosivustojen hostingia DDoS-suojauksella, VPS VDS -palvelimilla | ProHoster