Instalando o CoreOS diretamente no hardware
Este guia fornece instruções para instalar o Fedora CoreOS diretamente no hardware. Estão disponíveis três opções:
-
Instalando da ISO live
-
Instalando do PXE
-
Instalando do contêiner
Pré-requisito
Antes de instalar o FCOS, você deve ter um arquivo de configuração do
Ignition e hospedá-lo em algum lugar (por exemplo, usando python3 -m
http.server
). Se você não tiver um, consulte
Produzindo um arquivo de Ignition.
Se você tiver servidores com diferentes tipos e/ou número de discos rígidos, deve criar uma configuração de Ignition personalizada separada para cada máquina (ou classe de máquina). Um bom modelo é ter as partes comuns da configuração fatoradas em uma configuração separada do Ignition que pode ser mesclada (via HTTP ou em linha) na configuração personalizada por máquina. |
Instalando da ISO live
Para instalar FCOS diretamente no hardware usando a ISO live, siga as seguintes etapas:
-
Baixe a última imagem ISO da página de download ou com podman (veja a documentação para opções):
podman run --privileged --pull=always --rm -v .:/data -w /data \ quay.io/coreos/coreos-installer:release download -s stable -p metal -f iso
Você pode iniciar o ambiente live em legacy (BIOS) ou no modo UEFI, independentemente do modo que o sistema operacional usará depois de instalado. |
-
Grave a ISO em um disco. No Linux e macOS, você pode usar
dd
. No Windows, você pode usar Rufus no modo "Imagem DD". -
Inicialize-a no sistema de destino. A ISO é capaz de trazer um sistema FCOS totalmente funcional puramente da memória (ou seja, sem usar qualquer armazenamento em disco). Uma vez inicializado, você terá acesso a um prompt de comando bash.
-
Agora você pode executar
coreos-installer
:
sudo coreos-installer install /dev/sda \ --ignition-url https://example.com/example.ign
Uma vez que a instalação esteja completa, você pode simplesmente executar`sudo reboot`. Após a reinicialização, o primeiro processo de inicialização começa. É nesse momento que o Ignition carrega o arquivo de configuração e provisiona o sistema conforme especificado.
Confira coreos-installer install --help para mais opções sobre como
instalar o Fedora CoreOS.
|
Instalando do PXE
Para instalar do PXE, siga as seguintes etapas:
-
Baixe uma imagem kernel, initramfs e rootfs de FCOS PXE:
podman run --privileged --pull=always --rm -v .:/data -w /data \ quay.io/coreos/coreos-installer:release download -f pxe
Iniciar a imagem live PXE requer pelo menos 2 GiB de RAM. Com o argumento de kernel`coreos.live.roots url`, e 3Gib de outra forma. Você pode instalar em legacy(BIOS) ou em UEFI, independentemente do modo que o sistema operacional usará depois de instalado. |
-
Siga este exemplo
pxelinux.cfg
para inicializar as imagens do instalador com PXELINUX:
DEFAULT pxeboot
TIMEOUT 20
PROMPT 0
LABEL pxeboot
KERNEL fedora-coreos-32.20200726.3.1-live-kernel-x86_64
APPEND initrd=fedora-coreos-32.20200726.3.1-live-initramfs.x86_64.img,fedora-coreos-32.20200726.3.1-live-rootfs.x86_64.img coreos.inst.install_dev=/dev/sda coreos.inst.ignition_url=http://192.168.1.101:8000/config.ign
IPAPPEND 2
Para mais detalhes sobre como usar essas informações, consulte esta
publicação
de blog para testar uma instalação de PXE por uma VM local e libvirt
.
Instalando do contêiner
Você pode usar o
contêiner
coreos-installer
de um sistema existente para instalar em um dispositivo
de bloco conectado. Por exemplo (substitua docker
por podman
se
necessário):
sudo podman run --pull=always --privileged --rm \
-v /dev:/dev -v /run/udev:/run/udev -v .:/data -w /data \
quay.io/coreos/coreos-installer:release \
install /dev/vdb -i config.ign
Neste exemplo, coreos-installer
irá baixar a última imagem de FCOS estável
e instalá-la em /dev/vdb
. Em seguida, ele injetará o arquivo Ignition
config.ign
no diretório atual na imagem. Use --help
para ver todas as
opções disponíveis.
Baixando e espelhando a imagem
Às vezes, é necessário fazer o download da imagem com antecedência e depois
transferi-la localmente para o coreos-installer
para instalação. Você pode
baixar a imagem diretamente de
página de
download do FCOS, ou pode usar o coreos-installer download
.
Ao instalar via ISO ao vivo ou PXE, não há necessidade de baixar a imagem. Já faz parte desses ambientes. |
Existem duas imagens: uma para discos de setor de 512b (rotulada como "Raw" na página de download) e uma para discos nativos de setor de 4k (rotulada "Raw (4K Native)"). A menos que você saiba que tem como alvo um disco nativo de 4k, use o 512b, que é o mais comum. Consulte esta página para mais informações.
Para baixar a imagem nativa 4kn com coreos-installer download
, use a opção
--format 4k.raw.xz
.
A imagem usa um layout de partição híbrido que suporta inicialização por BIOS e UEFI. |
Quando estiver finalmente pronto para instalar o FCOS, você pode apontá-lo
para sua imagem baixada usando coreos-installer install --image-url
<ESPELHO_LOCAL>
ou coreos-install --image-file <CAMINHO>
.
PXE live
Neste modelo, em vez de realizar uma instalação "persistente" no disco, você
pode executar diretamente da RAM. Isso é útil, por exemplo, cenários "sem
disco". As etapas são semelhantes às acima, apenas omita os argumentos de
coreos.inst
e, em vez disso, faça com que o próprio sistema execute o
Ignition:
DEFAULT pxeboot
TIMEOUT 20
PROMPT 0
LABEL pxeboot
KERNEL fedora-coreos-32.20200726.3.1-live-kernel-x86_64
APPEND initrd=fedora-coreos-32.20200726.3.1-live-initramfs.x86_64.img,fedora-coreos-32.20200726.3.1-live-rootfs.x86_64.img ignition.firstboot ignition.platform.id=metal ignition.config.url=http://192.168.1.101/config.ign systemd.unified_cgroup_hierarchy=0
IPAPPEND 2
Imagens rootfs PXE
Antes de agosto de 2020, a imagem Fedora CoreOS PXE incluía dois
componentes: uma imagem kernel e uma imagem initramfs . A partir de
agosto, uma terceira imagem rootfs foi adicionada. A partir de 6 de
outubro, a imagem `rootfs`é obrigatória e o sistema PXE ativo não
inicializará sem ela.
|
Para inicializar com o artefato rootfs
, faça uma das seguintes alterações
em sua configuração PXE:
-
Especifique apenas o arquivo
initramfs
como initrd e passe uma URL HTTP(S) pararootfs
usando o argumento de kernelcoreos.live.rootfs_url=
. -
Especifique os arquivos
initramfs
erootfs
como initrds em sua configuração PXE. Isso pode ser feito através de múltiplas diretivasinitrd
, ou usando parâmetrosinitrd=
adicionais como argumentos do kernel. -
Concatene os arquivos
initramfs
erootfs
juntos e especifique o arquivo combinado como initrd.
Para mais informações sobre esta alteração, veja este relatório de problemas.