====== Instalação do Fedora CoreOS ======
===== Passo 1 - gerar o arguivo ign =====
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/suporte/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/suporte/.ssh/id_rsa.
Your public key has been saved in /home/suporte/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:bKqsv9fAw/PkOhsBXnPPWrts71aOgCSGKT8e46nrCKI suporte@kvm
The key's randomart image is:
+---[RSA 2048]----+
| |
| |
| .oo . |
| ..ooo+.o |
| o.+.oS.+ |
| = *+oo.. . |
|o o =oO. .. + |
|+. .+.o.+...o . |
|E.===oo+ .o+o |
+----[SHA256]-----+
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDE8eSuBSJmo/oLZH55R0R5rpqn04Qq5P3pxvzlTOeOoDSvxZ7nYCgmZSrr4syBX/4O53RpV5kDHStfFkK3sp7vhyiTtiymBGSlKIcgFtHVnCp4f1rYh1+l23Iyoi/+YjTw7uaO8a81VOsuZQP/Gkv33MyiUipaGMo/3Cisli0SeeEHIGN7616ELH+/vL3Zzpkjgf8TEgH9XZs+wotDERmX3soe7LeLCqPbwMpg2Ud0DJgJio9eu9uZVM91LNSBNOkApc5W0NLNdvJjJlakTm6NQ2LzZB5KI+pB3RAme6ItWchzKqGjGu4vII+83h5RaJfdWaljmDdq+n0EcnLVz2O7 suporte@kvm
$ cat fcos.bu
variant: fcos
version: 1.4.0
passwd:
users:
- name: core
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDE8eSuBSJmo/oLZH55R0R5rpqn04Qq5P3pxvzlTOeOoDSvxZ7nYCgmZSrr4syBX/4O53RpV5kDHStfFkK3sp7vhyiTtiymBGSlKIcgFtHVnCp4f1rYh1+l23Iyoi/+YjTw7uaO8a81VOsuZQP/Gkv33MyiUipaGMo/3Cisli0SeeEHIGN7616ELH+/vL3Zzpkjgf8TEgH9XZs+wotDERmX3soe7LeLCqPbwMpg2Ud0DJgJio9eu9uZVM91LNSBNOkApc5W0NLNdvJjJlakTm6NQ2LzZB5KI+pB3RAme6ItWchzKqGjGu4vII+83h5RaJfdWaljmDdq+n0EcnLVz2O7 suporte@kvm
$ sudo yum install podman
$ sudo podman run --interactive --rm quay.io/coreos/butane:release --pretty --strict < fcos.bu > fcos.ign
$ cat fcos.ign
{
"ignition": {
"version": "3.3.0"
},
"passwd": {
"users": [
{
"name": "core",
"sshAuthorizedKeys": [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDE8eSuBSJmo/oLZH55R0R5rpqn04Qq5P3pxvzlTOeOoDSvxZ7nYCgmZSrr4syBX/4O53RpV5kDHStfFkK3sp7vhyiTtiymBGSlKIcgFtHVnCp4f1rYh1+l23Iyoi/+YjTw7uaO8a81VOsuZQP/Gkv33MyiUipaGMo/3Cisli0SeeEHIGN7616ELH+/vL3Zzpkjgf8TEgH9XZs+wotDERmX3soe7LeLCqPbwMpg2Ud0DJgJio9eu9uZVM91LNSBNOkApc5W0NLNdvJjJlakTm6NQ2LzZB5KI+pB3RAme6ItWchzKqGjGu4vII+83h5RaJfdWaljmDdq+n0EcnLVz2O7 suporte@kvm"
]
}
]
}
}
===== Passo 2 - criar um webserver para disponibilizar o arquivo ign =====
sudo podman pod create --name nginx -p 8080:80
sudo podman run --pod nginx --name nginx-server -d nginx:latest
$ sudo podman cp fcos.ign nginx-server:/usr/share/nginx/html
$ curl http://127.0.0.1:8080/fcos.ign
{
"ignition": {
"version": "3.3.0"
},
"passwd": {
"users": [
{
"name": "core",
"sshAuthorizedKeys": [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDE8eSuBSJmo/oLZH55R0R5rpqn04Qq5P3pxvzlTOeOoDSvxZ7nYCgmZSrr4syBX/4O53RpV5kDHStfFkK3sp7vhyiTtiymBGSlKIcgFtHVnCp4f1rYh1+l23Iyoi/+YjTw7uaO8a81VOsuZQP/Gkv33MyiUipaGMo/3Cisli0SeeEHIGN7616ELH+/vL3Zzpkjgf8TEgH9XZs+wotDERmX3soe7LeLCqPbwMpg2Ud0DJgJio9eu9uZVM91LNSBNOkApc5W0NLNdvJjJlakTm6NQ2LzZB5KI+pB3RAme6ItWchzKqGjGu4vII+83h5RaJfdWaljmDdq+n0EcnLVz2O7 suporte@kvm"
]
}
]
}
}
===== Passo 3 - download e instalação do fcos =====
wget https://builds.coreos.fedoraproject.org/prod/streams/stable/builds/36.20220505.3.2/x86_64/fedora-coreos-36.20220505.3.2-live.x86_64.iso
$ sudo mv fedora-coreos-36.20220505.3.2-live.x86_64.iso /vms/imagens/iso/
$ sudo virt-install \
--name=fcos-vm-01 \
--vcpus=4 \
--memory=8192 \
--os-type linux \
--os-variant=fedora32 \
--disk size=100,format=qcow2 \
--cdrom /vms/imagens/iso/fedora-coreos-36.20220505.3.2-live.x86_64.iso \
--network bridge=virbr0 --nographics --console pty,target_type=virtio
Saída do comando:
$ sudo sudo virt-install \
> --name=fcos-vm-01 \
> --vcpus=4 \
> --memory=8192 \
> --os-type linux \
> --os-variant=fedora32 \
> --disk size=100,format=qcow2 \
> --cdrom /vms/imagens/iso/fedora-coreos-36.20220505.3.2-live.x86_64.iso \
e pty,ta> --network bridge=virbr0 --nographics --console pty,target_type=virtio
WARNING A mídia do CDROM não imprime no terminal por padrão, portanto é provável que você não veja a instalação em modo texto. Você pode optar por usar --location. Consulte a página manual para exemplos de uso de --location com a mídia do CD-ROM
**Iniciando instalação...**
Alocando 'fcos-vm-01-3.qcow2' | 100 GB 00:00:00
Conectado ao domínio fcos-vm-01
Caractere de escape é ^]
Fedora CoreOS 36.20220505.3.2
Kernel 5.17.5-300.fc36.x86_64 on an x86_64 (hvc0)
SSH host key: SHA256:huL7O12URazDH6SsuHTSJqjuP8rQvZxJIe6eEa0r1Gs (ECDSA)
SSH host key: SHA256:gejVhdjBkU6ggA2ubk+6nhJ4os4eSVy7Bg2CLXtlo3I (ED25519)
SSH host key: SHA256:1GQB1Td414u/HkrM0mXudeeK/2wuQDXRnm6C/dE9xZ4 (RSA)
Ignition: ran on 2022/06/21 19:10:52 UTC (this boot)
Ignition: no config provided by user
No SSH authorized keys provided by Ignition or Afterburn
localhost login: core (automatic login)
Last login: Tue Jun 21 19:11:02 on tty1
Fedora CoreOS 36.20220505.3.2
###########################################################################
Welcome to the CoreOS live environment. This system is running completely
from memory, making it a good candidate for hardware discovery and
installing persistently to disk. Here is an example of running an install
to disk via coreos-installer:
sudo coreos-installer install /dev/sda \
--ignition-url https://example.com/example.ign
You may configure networking via 'sudo nmcli' or 'sudo nmtui' and have
that configuration persist into the installed system by passing the
'--copy-network' argument to 'coreos-installer install'. Please run
'coreos-installer install --help' for more information on the possible
install options.
###########################################################################
[core@localhost ~]$
$ ip route
default via 192.168.122.1 dev ens3 proto dhcp metric 100
192.168.122.0/24 dev ens3 proto kernel scope link src 192.168.122.86 metric 100
$ curl -OL http://192.168.122.1:8080/fcos.ign
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 573 100 573 0 0 35770 0 --:--:-- --:--:-- --:--:-- 40928
$ sudo fdisk -l
Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop0: 678.42 MiB, 711376384 bytes, 1389407 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop1: 1.55 GiB, 1666125824 bytes, 3254152 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
$ sudo coreos-installer install /dev/vda --ignition-file fcos.ign
Installing Fedora CoreOS 36.20220505.3.2 x86_64 (512-byte sectors)
> Read disk 2.4 GiB/2.4 GiB (100%)
Writing Ignition config
Install complete.
$ sudo reboot
===== Passo 4 - acessar a vm =====
$ sudo virsh list
Id Nome Estado
----------------------------------------------------
32 fcos-vm-01 executando
$ sudo virsh dominfo fcos-vm-01
Id: 32
Nome: fcos-vm-01
UUID: 9b3db34e-8f6c-423a-bcd0-932c154a016f
Tipo de SO: hvm
Estado: executando
CPU(s): 4
Tempo de CPU: 188,8s
Memória máxima: 8388608 KiB
Memória utilizada: 8388608 KiB
Persistente: sim
Auto-iniciar: desabilitar
Salvamento gerenciado: não
Modelo de segurança: selinux
DOI de segurança: 0
Rótulo de segurança: system_u:system_r:svirt_t:s0:c252,c419 (enforcing)
$ sudo virsh domiflist fcos-vm-01
Interface Tipo Fonte Modelo MAC
-------------------------------------------------------
vnet0 bridge virbr0 virtio 52:54:00:bf:c3:47
$ sudo virsh net-dhcp-leases default
Expiry Time Endereço MAC Protocol IP address Hostname Client ID or DUID
-------------------------------------------------------------------------------------------------------------------
2022-06-21 16:38:21 52:54:00:8e:92:9f ipv4 192.168.122.105/24 - 01:52:54:00:8e:92:9f
2022-06-21 17:24:25 52:54:00:bf:c3:47 ipv4 192.168.122.86/24 - 01:52:54:00:bf:c3:47
$ ssh core@192.168.122.86
The authenticity of host '192.168.122.86 (192.168.122.86)' can't be established.
ECDSA key fingerprint is SHA256:CxZS7ZogBe34cZGoJQ2bDoa1wTD8xFxc8ED5YeiUn3Y.
ECDSA key fingerprint is MD5:99:27:bc:4b:0a:c6:1a:c0:2a:1b:60:71:d7:20:2f:e9.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.122.86' (ECDSA) to the list of known hosts.
Fedora CoreOS 36.20220522.3.0
Tracker: https://github.com/coreos/fedora-coreos-tracker
Discuss: https://discussion.fedoraproject.org/tag/coreos
===== Referências =====
- [[https://docs.fedoraproject.org/en-US/fedora-coreos/provisioning-libvirt/|Provisioning Fedora CoreOS on libvirt]]
- [[https://docs.fedoraproject.org/en-US/fedora-coreos/producing-ign/|Producing an Ignition Config]]
- [[https://getfedora.org/en/coreos/download?tab=metal_virtualized&stream=stable&arch=x86_64|Download Fedora CoreOS]]
- [[https://unixcop.com/5-step-nginx-contains-podman-easy/|5 Step Nginx contains podman easy]]