[OpenShift 오픈시프트] RHOCP 4.14.15 Installation - 6. Bootstrap 노드 구성
RHOCP 4.14.15 설치 (오픈시프트 설치) - Bootstrap 노드 구성
Test Environment
Red Hat Enterprise Linux 9.2 (Plow)
1. RHOCP VM 템플릿 생성
RHCOS(Red Hat CoreOS) 4.14.15 버전의 OVF 파일(ova)을 생성하려는 위치에서 OVF 템플릿 배포를 누른다.
URL을 선택하고 Red Hat CoreOS 4.14.15 OVF 템플릿 다운로드 링크를 입력한다. (Public 환경)
만약 인터넷이 되지 않는 환경이거나, 네트워크 속도가 느려 진행이 안 된다면 해당 파일을 미리 다운로드 받고 로컬 파일로 업로드해서 진행하면 된다.
[예]를 누르고 계속 진행한다.
VM 이름과 생성 위치를 정하고 다음으로 넘어간다.
계산 리소스 선택에서 로딩시간이 꽤 소요된다.
생성된 VM을 우클릭하여 설정 편집을 누른다.
하드 디스크 유형을 씬 프로비전(동적 할당)으로 바꿔준다.
2. Bootstrap 노드 생성
이제 생성한 템플릿을 복제하여 Bootstrap 노드를 생성한다.
bootstrap vm을 선택하고 우클릭하여 설정 편집을 누르고 VM 옵션 메뉴로 간다.
구성 편집을 클릭g하여 매개변수 4개를 추가해준다.
앞서 생성한 merge-b.ign_base64 내용과 생성하려는 Bootstrap IP 정보를 입력하자.
여기서 nameserver는 DNS 노드 ip로 입력하면 된다.
구성 매개 변수 | 변수 설정값 (bootstrap 노드) |
---|---|
guestinfo.ignition.config.data | <base64 인코딩한 bootstrap 보조 ignition 파일 (merge-b.ign_base64) 내용> |
guestinfo.ignition.config.data.encoding | base64 |
disk.EnableUUID | TRUE |
guestinfo.afterburn.initrd.network-kargs | ip=172.16.0.172::172.16.0.1:255.255.255.0:::none nameserver=172.16.0.171 |
구성한 화면은 다음과 같으며 잘 입력되었으면 확인을 누른다.
이제 VM을 바로 실행한다.
VM이 켜졌으면 Bastion 서버에서 Bootstrap 서버로 ssh를 통해 접속한다.
ssh core@172.16.0.172
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[root@bastion ~]# ssh core@172.16.0.172
The authenticity of host '172.16.0.172 (172.16.0.172)' can't be established.
ED25519 key fingerprint is SHA256:9FJ3rGa6UpXqf8vigN/ki+2poipwa30i3vp7eDRXMfQ.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '172.16.0.172' (ED25519) to the list of known hosts.
Red Hat Enterprise Linux CoreOS 414.92.202402130420-0
Part of OpenShift 4.14, RHCOS is a Kubernetes native operating system
managed by the Machine Config Operator (`clusteroperator/machine-config`).
WARNING: Direct SSH access to machines is not recommended; instead,
make configuration changes via `machineconfig` objects:
https://docs.openshift.com/container-platform/4.14/architecture/architecture-rhcos.html
---
This is the bootstrap node; it will be destroyed when the master is fully up.
The primary services are release-image.service followed by bootkube.service. To watch their status, run e.g.
journalctl -b -f -u release-image.service -u bootkube.service
접속을 하면 출력되는 맨 아래 명령어를 통해 Bootstrap 서버의 시스템 로그를 실시간으로 조회할 수 있다.
API is up이 보이면 성공적으로 실행됐다고 볼 수 있다.
journalctl -b -f -u release-image.service -u bootkube.service
1
2
3
4
5
6
7
8
9
Jul 19 01:53:52 bootstrap.openshift.ig.local cluster-bootstrap[4508]: Starting temporary bootstrap control plane...
Jul 19 01:53:52 bootstrap.openshift.ig.local bootkube.sh[4475]: Starting temporary bootstrap control plane...
Jul 19 01:53:52 bootstrap.openshift.ig.local cluster-bootstrap[4508]: Waiting up to 20m0s for the Kubernetes API
Jul 19 01:53:52 bootstrap.openshift.ig.local bootkube.sh[4475]: Waiting up to 20m0s for the Kubernetes API
Jul 19 01:53:52 bootstrap.openshift.ig.local podman[4475]: 2024-07-19 01:53:50.144653982 +0000 UTC m=+0.039775280 image pull quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:6bafe651d11b093f69f7c5d4036dfae3f20092ce52e6deb47af5272ec8ff653d
Jul 19 01:53:53 bootstrap.openshift.ig.local cluster-bootstrap[4508]: Still waiting for the Kubernetes API: Get "https://localhost:6443/readyz": dial tcp [::1]:6443: connect: connection refused
Jul 19 01:53:53 bootstrap.openshift.ig.local bootkube.sh[4475]: Still waiting for the Kubernetes API: Get "https://localhost:6443/readyz": dial tcp [::1]:6443: connect: connection refused
Jul 19 01:54:15 bootstrap.openshift.ig.local cluster-bootstrap[4508]: API is up
Jul 19 01:54:15 bootstrap.openshift.ig.local bootkube.sh[4475]: API is up
이제 Bastion 서버에서 최종적으로 Bootstrap 서버가 완성되었는지 확인하기 위해 다음 명령어를 입력해주자.
openshift-install wait-for bootstrap-complete --dir=/var/www/html/ocp --log-level debug
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
DEBUG OpenShift Installer 4.14.15
DEBUG Built from commit 6ee6900a509dfb4a3fd568f741e163655bd3f45c
INFO Waiting up to 20m0s (until 11:25AM KST) for the Kubernetes API at https://api.openshift.ig.local:6443...
DEBUG Loading Agent Config...
INFO API v1.27.10+c79e5e2 up
DEBUG Loading Install Config...
DEBUG Loading SSH Key...
DEBUG Loading Base Domain...
DEBUG Loading Platform...
DEBUG Loading Cluster Name...
DEBUG Loading Base Domain...
DEBUG Loading Platform...
DEBUG Loading Networking...
DEBUG Loading Platform...
DEBUG Loading Pull Secret...
DEBUG Loading Platform...
DEBUG Using Install Config loaded from state file
INFO Waiting up to 30m0s (until 11:35AM KST) for bootstrapping to complete...
INFO API v1.27.10+c79e5e2 up
문구가 출력되면 잘 된 것이니 Master 노드를 생성해도 된다.
bootstrap 노드에서 포트 리슨 중인지를 통해서도 확인할 수 있다.
netstat -ntlp | egrep "6443|22623"
1
2
3
4
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp6 0 0 :::6443 :::* LISTEN -
tcp6 0 0 :::22623 :::* LISTEN -
Comments powered by Disqus.