Aquesta pàgina o secciónecessita traduccióde l'idiomaPlantilla:5/7/2025. Si la pàgina roman sense traduir durant molt de temps, podriaproposar-se per esborrar. Aviseu els editors mitjançant {{subst:Avís traducció incompleta|CoreOS}} --~~~~ |
| Tipus | distribució GNU/Linux |
|---|---|
| Versió inicial | 3 octubre 2013 |
| Versió estable | 1576.5.0 / 5 gener 2018; fa 8 anys (2018-01-05) |
| Llicència | llicència Apache |
| Característiques tècniques | |
| Plataforma | x86_64 |
| Tipus denucli | Modularmonolític |
| Més informació | |
| Lloc web | fedoraproject.org… (anglès) |
| Id.DistroWatch | coreos |
| Id.Subreddit | coreos |
CoreOS és unsistema operatiu lleuger decodi obert basat en elnucli de Linux i desenvolupat per proporcionar la infraestructura per als desplegaments enclúster, seguidament, se centra en l'automatització, facilitat de desplegament d'aplicacions, seguretat, fiabilitat i escalabilitat. Com sistema operatiu, CoreOS ofereix només les funcionalitats mínimes necessaris per a la implementació d'aplicacions dins de contenidors de software, junt amb mecanismes incorporats per al descobriment de serveis i el intercanvi de configuració.[1][2][3][4]
CoreOS és unfork deGoogle Chrome OS, fent servir el seu «equip de desenvolupament de programari» (SDK) disponible sense cost, utilitzantChromium OS com a base, al mateix temps que afegeix noves funcionalitats i personalització per suportar el maquinari utilitzat en servidors.[3][5] A partir de juliol de 2014, CoreOS se desenvolupa activament, sobretot per Alex Polvi, Brandon Phillips y Michael Marineau,[2] amb les seves característiques principals (excepteETCD yfleet) disponibles com unaversió estable.[6][7][8]
CoreOS no proporciona ungestor de paquets, de manera que requereix que totes les aplicacions s'executin dins dels seus contenidors, utilitzant Docker i els seus contenidors Linux (LXC) subjacents devirtualització a nivell desistema operatiu de tecnologia per a l'execució de múltiples sistemesLinux aïllats en un únic host de control (instància coreos). D'aquesta manera, la partició dels recursos es porta a terme a través de múltiples instàncies d'espais d'usuari aïllades, en lloc d'utilitzar unhipervisor i unamàquina virtual. Aquest enfocament es basa en cgroups, funcionalitat del nucli de Linux que ofereix aïllament de l'espai de noms i habilitats per limitar, comptabilitzar i aïllar l'ús dels recursos (CPU, la memòria, disc I / O, etc.) d'ungrup de processos.[1][4][9]
Per major seguretat y fiabilitat en actualitzacions, CoreOS empraFastPatch com un esquema de doble partició només per a la seva lectura de sistema de fitxers arrel, el que significa que les actualitzacions del sistema operatiu es duen a terme en la seva totalitat i s'instal·len en unapartició secundària passiva arrel, que s'activa al reiniciar o realitzant una execució de nucli (kexec). D'aquesta manera, reversions fàcils a la versió coneguda a-ser-estable del sistema operatiu també es va assegurar, i cada partició d'arrencada pot sersignada per a la seguretat addicional. Parts gravables del sistema de fitxers s'emmagatzemen en una partició "estat" independent, que es canvia de mida automàticament per ocupar tot l'espai disponible en disc en els reinicis.[1][4][10][11]
El sistema de distribució d'actualitzacions de CoreOS es basa en el projecte de codi obert de GoogleOmaha, que proporciona un mecanisme per al desdoblament de les actualitzacions i el protocol subjacent petició-resposta sobre la base deXML[12][13] A més, CoreOS ofereixCoreUpdate com un panell de control basat en la web per a la gestió de les actualitzacions delclúster. Les operacions disponibles a través de CoreUpdate inclueixen l'assignació dels membres del cluster als diferents grups que comparteixen les polítiques d'actualització personalitzades, revisar les falles de tot el cluster en versions de CoreOS, aturar i reiniciar les actualitzacions, i la revisió dels registres d'actualització gravats. CoreUpdate també ofereix unaAPI basada enHTTP que permet la seva integració en els serveis de tercers o sistemes de desdoblament.[10][14][15]
CoreOS ofereixETCD, undimoni, que s'executa en tots els equips en un clúster, permetent que les dades de configuració siguin fàcilment compartides, proporcionant un registre de configuració dinàmica. Ja que totes les dadesclau-valor emmagatzemades dins deETCD son automàticamentdistribuïdes i replicades (amb elecció de mestre automatitzada), tots els canvis se reflecteixen a tot el clúster. A més de la gestió de configuració, ETCD també proporciona el descobriment de serveis al permetre aplicacions desplegades anunciar-se a si mateixes. La comunicació amb ETCD es realitza mitjançant una API simple, que internament usaJSON a la part superior d'HTTP; la API es pot utilitzar directament (a través decurl, per exemple), o indirectament a través de etcdctl, que es una utilitat de línia de comandes també subministrada per CoreOS.[1][4][16][17][18]
CoreOS també ofereixfleet, un dimoni per l'administració del clúster, que controla instancies systemd separades de CoreOS a nivell del clúster. Mitjançant l'ús defleet, CoreOS crea unsistema d'inici distribuït que enllaça diferents instancies de systemd i de desplegamentETCD en tot el clúster; internament,fleet es comunica amb systemd sobreD-Bus.Fleet permet tenir contenidors simples o múltiples que es desplegaran en tot el clúster, amb opcions mes avançades incloentredundància informàtica,failover, desplegament a membres específics del clúster, dependències entre els contenidores, i el desplegament de contenidors agrupats. La utilitat de línea de comandos denominadafleetctl se utiliza per configurar i supervisar aquest sistema init distribuït; internament, es comunica con el clústerETCD. Quan s'utilitza de forma local en un membre del clúster,fleetctl es comunica con la instancia local deETCD; quan s'utiliza desde un host extern, eltúnel SSH s'utilitza amb l'autenticació proporcionada mitjançant la claveSSH pública.[19][20][21][22]
Tantetcd comfleet son escrits en el llenguatge de programació GO i distribuïts sota la llicencia Apache 2.0
Además de ejecutar en hardware dedicado, donde puede ser tanto instalado en el disco permanentemente como ejecutado remotamente viaPreboot Execution Environment oiPXE,[23][24][25] CoreOS soporta despliegues en varias plataformas devirtualización de hardware, incluyendoAmazon EC2,DigitalOcean,Google Compute Engine,Microsoft Azure,OpenStack,QEMU /KVM,Vagrant iVMware.[4][26][27][28]