Page History
...
| Code Block |
|---|
docker exec 3dc2abeb2647 rancher --version root@NucBox-01:/home/psmon# docker exec 3dc2abeb2647 rancher --version rancher version v2.13.0 (f94ac947f75e312f1ab9217d21b2770b48b734c8) |
- 2.13.0 버전으로 설명이 진행됩니다.
설치되는버전
| Code Block | ||
|---|---|---|
| ||
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=HarvesterMachine
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=AzureMachine
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=LinodeMachine
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=VmwarevsphereMachineTemplate
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine-config.cattle.io/v1, Kind=HarvesterConfig
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine-config.cattle.io/v1, Kind=VmwarevsphereConfig
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=AzureMachineTemplate
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine-config.cattle.io/v1, Kind=AzureConfig
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=DigitaloceanMachineTemplate
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=HarvesterMachineTemplate
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine-config.cattle.io/v1, Kind=LinodeConfig
2025/12/12 05:42:05 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=DigitaloceanMachine
2025/12/12 05:42:05 [INFO] Loaded configuration from https://releases.rancher.com/kontainer-driver-metadata/release-v2.13/data.json in [0x1162f980]
2025/12/12 05:42:05 [ERROR] Failed to read API for groups map[ext.cattle.io/v1:stale GroupVersion discovery: ext.cattle.io/v1]
2025/12/12 05:42:05 [INFO] Loaded configuration from https://releases.rancher.com/kontainer-driver-metadata/release-v2.13/data.json in [0x1162f980]
2025/12/12 05:42:06 [INFO] [mgmt-auth-gr-controller] Creating clusterRole cattle-globalrole- for corresponding GlobalRole
I1212 05:42:06.642461 48 warnings.go:110] "Warning: v1 ComponentStatus is deprecated in v1.19+"
I1212 05:42:06.645770 48 warnings.go:110] "Warning: v1 Endpoints is deprecated in v1.33+; use discovery.k8s.io/v1 EndpointSlice"
2025/12/12 05:42:06 [INFO] Watching metadata for rke-machine-config.cattle.io/v1, Kind=Amazonec2Config
2025/12/12 05:42:06 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=Amazonec2Machine
2025/12/12 05:42:06 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=LinodeMachineTemplate
2025/12/12 05:42:06 [INFO] Watching metadata for rke-machine.cattle.io/v1, Kind=Amazonec2MachineTemplate
2025/12/12 05:42:06 [INFO] [mgmt-auth-gr-controller] Creating clusterRole cattle-globalrole- for corresponding GlobalRole
2025/12/12 05:42:06 [INFO] [mgmt-auth-gr-controller] Creating clusterRole cattle-globalrole- for corresponding GlobalRole
2025/12/12 05:42:07 [INFO] [mgmt-auth-gr-controller] Creating clusterRole cattle-globalrole- for corresponding GlobalRole
2025/12/12 05:42:08 [INFO] RDPClient: Checking if dialer is built...
|
- 관리툴이 설치되며 관리툴 자체가 k3s 내장쿠버를 설치합니다.
- StandAlne으로 쿠버를 개발목적으로 운영할시 이것만으로도 충분합니다.
구동후 관리자 페이지접근을 위한 초기 패스워드
| Code Block |
|---|
docker logs container-id 2>&1 | grep "Bootstrap Password:"
|
초기 설치화면
- 내부에만 사용할것이기때문에 SSL및 별도의 도메인없이 디폴트로 진행
접속후 최초화면
- 경량화된 K3s 쿠버를 기본으로 제공합니다.
- 네임스페의(local)의 쿠버는 Rancher그자체로 N개의 쿠버클러스터를 관리하는 Master역할을 합니다.
- 운영에서는 이 영역을 안건드는게 좋지만, 쿠버학습용이라고하면 그냥 이 클러스터를 이용해도 됩니다.
클러스터추가
홈화면 CREATE를 통해 새로운 쿠버 클러스터를 생성가능합니다.
- 여기서는 추가 실험으로 설치형으로 클러스터 노드 2개를 추가할것이기때문에 Custom을 진행
Rancher 쿠버 2PC 구성 설계
| draw.io Board Diagram | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
- 다중 쿠버클러스터를 관리하는 RancherServer는 Docker로 설치
- 새로운 독립 커스텀 쿠버클러스터는 Agent로 설치
- 클라우드에 Provision된 쿠버도 이러한 형태로 조인해 하이브리드 쿠버관리가 가능한게 Rancher의 장점입니다.
클러스터생성
- K3s가 경량쿠버이기때문에 저성능 PC에 더많은 POD를 구동할수 있습니다.
- Traefik Ingress : RancherServer로 Ingress가 이미 있는 장치에 중복설치 예정이기때문에 충돌방지를 위해 Ingeress는 Off합니다.
- 쿠버클러스터를 모두구성한후 Ingress를 추가해 이용하면 되며 , Server(Master)와 분리되 운영되는경우는 상관없습니다.
- Traefik Ingress : RancherServer로 Ingress가 이미 있는 장치에 중복설치 예정이기때문에 충돌방지를 위해 Ingeress는 Off합니다.
- Rancher Server에 동일 추가 쿠버를 투입하는경우 쿠버조정때문에 잠시 Rancher Admin이 접속이 재조정될수 있습니다. - 3~5분 기다리면 정상가동됨
클러스터 노드 추가
- 최초 Role은 ALL(etcd,Control Plane,Worker) 로 Step1에서 Role을 지정하고 Ste2의 설치명령을 복붙해 원하는 PC에 설치하면 Node가 추가됩니다. - 2개,3개 추가할때도 동일합니다.
- 쿠버클러스터 에 별도의 공식인증서를 입히지 않을것이기에 Insecure체크
- 두번째 노드는 첫번째 클러스터노드가 완성되는것을 지켜본후 추가하는것이 권장됩니다.
Agent설치
| Code Block | ||
|---|---|---|
| ||
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 33663 0 33663 0 0 3794k 0 --:--:-- --:--:-- --:--:-- 4109k
[INFO] Label: cattle.io/os=linux
[INFO] Role requested: etcd
[INFO] Role requested: controlplane
[INFO] Role requested: worker
[INFO] CA strict verification is set to true
[INFO] Using default agent configuration directory /etc/rancher/agent
[INFO] Using default agent var directory /var/lib/rancher/agent
[INFO] Successfully downloaded CA certificate
[INFO] Value from https://192.168.0.58/cacerts is an x509 certificate
[INFO] Successfully tested Rancher connection
[INFO] Downloading rancher-system-agent binary from https://192.168.0.58/assets/rancher-system-agent-amd64
[INFO] Successfully downloaded the rancher-system-agent binary.
[INFO] Downloading rancher-system-agent-uninstall.sh script from https://192.168.0.58/assets/system-agent-uninstall.sh
[INFO] Successfully downloaded the rancher-system-agent-uninstall.sh script.
[INFO] Generating Cattle ID
[INFO] Successfully downloaded Rancher connection information
[INFO] systemd: Creating service file
[INFO] Creating environment file /etc/systemd/system/rancher-system-agent.env
[INFO] Enabling rancher-system-agent.service
[INFO] Starting/restarting rancher-system-agent.service
root@NucBox-01:/home/psmon#
|
- 복붙해서 설치를 진행하면 새로운 쿠버 클러스터를 자동으로 구성해줍니다.
- 네이티브 모드로 쿠버를 설치하는것보다 간소화된절차
- Agent구성이 시작되면 클러스터 관리 Machines 에 1이 추가되며 Running 가 될때까지 기다립니다.
단독 클러스터 완성
두번째 노드추가
- Control/Etcd등이 리소스를 어느정도 잡아먹기때문에 첫번째에 StandAlone으로 All배치했으며 두번째 노드는 순수하게 Pod가용공간을 최대한 끌어쓰기위해 두번째 노드의 Role은 Worker로만 지정합니다.
- 노드추가방법은 이와같은 패턴으로 동일합니다. - 다른PC(VM)에 설치
- 첫노드는 쿠버 클러스터 처음구성하느라 시간이 조금걸리지만 이후 추가는 빠르게 진행됩니다.
2개노드를 가진 쿠버클러스터
- 두개의 노드를 가진 쿠버클러스터가 뚝딱 완성되었습니다.
Rancher 클러스터 전체 요약
- local : Rancher Server를 최초 구성시 기본내장 쿠버클러스터로 단독 연습 1대만 운영시 이것만으로 충분합니다.
- 경량화된 k3s 쿠버를 기본 채택합니다.
- webnori : 추가로 두노드 구성한 커스텀 클러스터이며, 클러스터된 환경에서 쿠버를 연습한다고 하면 , 클러스터 구성을 쉽게할수 있습니다.
- 홈서버 또는 개발환경에서는 K3s를 권장합니다.(라이트웨이한 쿠버)
보너스
- 초기설치시 제외한 ingress를 추가할수 있습니다.
- traefix Proxy는 , rancher server 에 동일서버에 클러스터를 추가했음으로 충돌로 이것을 제외 설치가능
- 참고 : rancher server와 분리된 공간에 클러스터 구축시에는 상관없습니다.
- 다양한 ingress지원 : nginx의 쿠버지원 이탈이슈를 관망하면서 채택
- 참고 : rancher server와 분리된 공간에 클러스터 구축시에는 상관없습니다.
- traefix Proxy는 , rancher server 에 동일서버에 클러스터를 추가했음으로 충돌로 이것을 제외 설치가능
클린언인스톨
설치중 삑싸리가나 클린인스톨할시 아래와같은 스크립트를 수행해 클린 언인스톨할수 있습니다.
기존 설정된 쿠버의 설정과 꼬일수 있음으로 재설치시 쿠버관련 클린하는 스크립트입니다.
| Code Block | ||||
|---|---|---|---|---|
| ||||
# Rancher / K3s / Kubernetes 클린 초기화 가이드
# (순수 명령어 + 주석만, 스타일 없음)
# 1) K3s 종료 및 uninstall
sudo /usr/local/bin/k3s-killall.sh 2>/dev/null
sudo /usr/local/bin/k3s-uninstall.sh 2>/dev/null
sudo /usr/local/bin/k3s-agent-uninstall.sh 2>/dev/null
# 2) Kubernetes / Rancher / CNI 잔재 삭제
sudo rm -rf /etc/rancher
sudo rm -rf /var/lib/rancher
sudo rm -rf /var/lib/kubelet
sudo rm -rf /var/lib/cni
sudo rm -rf /etc/cni
sudo rm -rf /run/k3s
sudo rm -rf /run/flannel
# 3) CNI 네트워크 인터페이스 삭제
sudo ip link delete flannel.1 2>/dev/null
sudo ip link delete cni0 2>/dev/null
# veth 계열 인터페이스 삭제
for dev in $(ip link | grep veth | awk -F: '{print $2}' | tr -d ' '); do
sudo ip link delete "$dev" 2>/dev/null
done
# 4) Docker / containerd 중지
sudo systemctl stop docker 2>/dev/null
sudo systemctl stop containerd 2>/dev/null
# 5) Docker / containerd 데이터 삭제
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
# 6) Docker / containerd 재시작
sudo systemctl start containerd 2>/dev/null
sudo systemctl start docker 2>/dev/null
# 7) iptables 초기화
sudo iptables -F
sudo iptables -t nat -F
sudo iptables -t mangle -F
# 8) 클린 상태 확인 (선택)
systemctl status k3s
systemctl status k3s-agent
ip link | grep -E "cni|flannel"
sudo ctr -n k8s.io containers ls
sudo ctr -n k8s.io images ls
ls -l /var/lib/kubelet
ls -l /var/lib/rancher
ls -l /etc/cni
# 이후 Rancher Server 재설치
# docker run -d --privileged --restart=unless-stopped -p 80:80 -p 443:443 --name rancher rancher/rancher:v2.13.0
|











