Instalando Fedora CoreOS no KVM

O Fedora CoreOS é um sistema operacional mínimo de atualização automática para executar cargas de trabalho em contêiner de forma segura e em escala. Atualmente, está disponível em várias plataformas. Vamos instalar em uma VM no KVM usando uma imagem livecd.

[ Hits: 3.419 ]

Por: Daniel Lara Souza em 26/06/2020 | Blog: http://danniel-lara.blogspot.com/


Instalação e configuração



O Fedora CoreOS é um sistema operacional mínimo de atualização automática para executar cargas de trabalho em contêiner de forma segura e em escala. Atualmente, está disponível em várias plataformas.

Vamos instalar em uma VM usando uma imagem livecd.

Versão usada do Fedora CoreOs: 32.20200601.3.0 stable

Máquina virtual KVM com Virt-Manager no Fedora 32.

Link do download dessa versão nesse artigo:
Antes de instalar o Fedora CoreOS, você deve ter um arquivo de configuração do Ignition e hospedá-lo em algum servidor web (por exemplo, usando "python3 -m http.server").

Ignition é um utilitário de provisionamento que lê um arquivo de configuração (no formato JSON) e provisiona um sistema Fedora CoreOS com base nessa configuração. Os componentes configuráveis incluem sistemas de armazenamento e arquivos, unidades systemd e usuários.

A ignition é executada apenas uma vez durante a primeira inicialização do sistema (em initramfs). Como o Ignition é executado tão cedo no processo de inicialização, ele pode particionar discos, formatar sistemas de arquivos, criar usuários e gravar arquivos antes que o espaço do usuário comece a ser inicializado. Como resultado, os serviços systemd já estão gravados no disco quando o systemd é iniciado, acelerando o tempo de inicialização.

Vamos criar o nosso arquivo ignition somente com a chave pública para podemos acessar o nosso Fedora CoreOS via ssh sem senha.

Gere uma chave ssh:

ssh-keygen

No seu diretório ~/.ssh terá 2 arquivos:
  • id_rsa
  • id_rsa.pub

Vamos usar o conteúdo do .pub.

Crie o arquivo .fcc:

vim example.fcc

com o conteúdo:

variant: fcos
version: 1.0.0
passwd:
   users:
    - name: core
       ssh_authorized_keys:
         - ssh-rsa AAAA...

O ssh-rsa é a sua chave id_rsa.pub.

Agora vamos usar o fcct pra criar o nosso arquivo ignition.

O Transpiler de configuração do Fedora CoreOS, é uma ferramenta que produz um arquivo JSON Ignition a partir do arquivo YAML FCC. Usando o arquivo FCC, uma máquina Fedora CoreOS pode ser instruída a criar usuários, criar sistemas de arquivos, configurar a rede, instalar unidades systemd e muito mais.

Uma maneira fácil de usar fcct é executá-lo em um contêiner com podman, no caso eu estou usando o Fedora 32 que vem com o podman por padrão.

Baixe o container do fcct:

podman pull quay.io/coreos/fcct:release

Execute fcct no arquivo FCC:

podman run -i --rm quay.io/coreos/fcct:release --pretty --strict < example.fcc > example.ign

Agora vamos usar o arquivo do example.ign para instalar o Fedora CoreOS e passar a nossa chave pública.

Resumindo, o arquivo example.ign fica assim:

{
  "ignition": {
    "version": "3.0.0"
  },
  "passwd": {
    "users": [
      {
        "name": "core",
        "sshAuthorizedKeys": [
          "ssh-rsa AAAA..........."
        ]
      }
    ]
  }
}

Esse seu arquivo envia para seu servidor web para podemos usar na instalação do Fedora CoreOS.

Agora vamos iniciar o Livecd do Fedora CoreOS.

Ao iniciar o Fedora CoreOS Live, já tem as instruções de instalação
Baixe o arquivo do seu servidor web no Fedora CoreOS:

curl -LO https://192.168.122.1/example.ign
E agora instale o Fedora CoreOS:

sudo coreos-installer install /dev/vda --ignition-file example.ign
Reinicie a máquina:

sudo reboot

E ao iniciar irá mostrar o endereço IP que pode ser alterado mais tarde ou até mesmo pode add no arquivo .fcc.
Agora vamos acessar nosso Fedora CoreOS via ssh com usuário core sem senha:

ssh core@<ip do fedoracoreos>
Agora tu podes usar o podman para subir e testar seus containers.

Espero que ajude!

Guia de referência: Fedora CoreOS Documentation :: Fedora Docs Site

   

Páginas do artigo
   1. Instalação e configuração
Outros artigos deste autor

My Traceroute (MTR) , uma ferramenta de diagnóstico de rede

iRedMail como servidor de e-mails em servidor GNU/Linux ou BSD

Bacula + Webacula + Bacula-web + bat no CentOS 6.3

Virtualização com Proxmox VE

GlusterFS - Um Sistema de Arquivos Distribuídos

Leitura recomendada

Usando cron e crontab para agendar tarefas

Montando um Debian Etch - Para técnicos

Usando o FreeBSD como desktop

Introdução ao Arch Build System

Fundamentos do sistema Linux - comandos do Linux

  
Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts