RHCOS 라이브 ISO 로 부팅한 뒤 coreos-installer 로 디스크에 RHCOS 를 설치하고 Ignition 을 넣는 절차다. bootstrap · control plane · compute 모두 같은 방법이고 넘겨주는 Ignition 파일(bootstrap.ign · master.ign · worker.ign)만 다르다. Ignition 은 Install preparation 에서 만들어 HTTP 로 열어 둔 상태여야 한다.
ISO 로 부팅하면 메모리에서 도는 라이브 환경이 뜨고 core 사용자 셸이 열린다. 2024년 테스트 됨.
###########################################################################
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.
###########################################################################
Last login: Sun Oct 27 23:59:29 2024
[systemd]
Failed Units: 1
rpm-ostree-fix-shadow-mode.service
[core@localhost ~]$
DHCP 가 없으면 sudo nmtui 로 IP · DNS 를 잡고, 설치 시 --copy-network 를 붙여 그 설정을 디스크로 가져간다.
대상 디스크와 Ignition URL 을 넘긴다. Ignition 을 HTTP 로 받을 때는 --insecure-ignition 이 있어야 평문 HTTP 를 허용한다[1].
lsblk
sudo coreos-installer install /dev/xvda \
--ignition-url http://<bastion>/ocp/bootstrap.ign \
--insecure-ignition \
--copy-network
control plane 은 master.ign, compute 는 worker.ign 으로 바꾼다. Ignition 파일을 라이브 환경 안에 미리 받아 뒀으면 --ignition-file bootstrap.ign 으로 준다.
Installing Red Hat Enterprise Linux CoreOS 417.94.202408270355-0 x86_64 (512-byte sectors)
> Read disk 3.4 GiB/3.4 GiB (100%)
Install complete.
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 1.1G 0 rom /run/media/iso
xvda 202:0 0 48G 0 disk
├─xvda1 202:1 0 1M 0 part
├─xvda2 202:2 0 127M 0 part
├─xvda3 202:3 0 384M 0 part
└─xvda4 202:4 0 2.9G 0 part
xvda 에 RHCOS 파티션 네 개가 생겼다. ISO 를 빼고 재부팅하면 디스크에서 부팅하며 Ignition 이 적용된다.
sudo reboot
bastion 에서 부트스트랩 진행을 지켜본다. control plane 3 대가 붙어 etcd 가 뜨면 bootstrap 이 끝나고, 그때 로드밸런서에서 bootstrap 머신을 뺀다.
openshift-install wait-for bootstrap-complete --dir ocp --log-level info
bootstrap 머신에 들어가 로그를 볼 수도 있다.
ssh core@bootstrap.<cluster_name>.<base_domain>
journalctl -b -f -u release-image.service -u bootkube.service
2026-09-20 확인. https://coreos.github.io/coreos-installer/cmd/install/ ↩︎