Öncelikle test ortamı olarak kurulum yapacağım için 4 node kullanıldı. Production ortam en az 3 master 5 worker şeklinde kurmak gerekir. Kesinti yaşamamak adına Master node’lar tek olmamalıdır. Herzaman tek sayıda bırakmak gerekir 3-5-7 gibi düşünebilirsiniz. Genelde basit bir yapı için 3 master 5 worker yeterli olmaktadır. Herneyse gelelim konumuza;
Node1 – Rancher UI
Node2 – Master1
Node3 – Worker1
Node4 – Worker2
Rancher kurulacak sunucuda docker kurulumu yapılır.
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
sudo apt install docker-ce
sudo systemctl status docker
Docker kurulumu yapıldıktan sonra rancher docker uzerınden ayaga kaldırılır.
sudo docker run -d --privileged --restart=unless-stopped -p 80:80 -p 443:443 --name rancher rancher/rancher:latest
Rancher container ayağa kalktıktan sonra https://ranchernodeip seklinde dashboard acılır

docker container ıcınde aşağıdaki komut çalıştırılır, ekrana yazılan şifre dashboard ekranına girilir
docker exec rancher kubectl get secret --namespace cattle-system bootstrap-secret -o go-template='{{.data.bootstrapPassword|base64decode}}{{"\n"}}'
Container icinden aldığımız parola ekrana girildikten sonra yeni parola oluşturulur.

Rancher kurulumu tamamlandı ve artık rancher dashboard üzerindeyiz.

Master 1 node uzerınde rke2 kurulumu yapılacaktır. Sunucuya hostname verilir ve swap kapatılır, fstab icinden de swap satırı varsa commentlenir.
sudo hostnamectl set-hostname master1
sudo swapoff -a
nano /etc/fstab
swap satırı # yorum haline getirilir.
Master üzerinde firewall varsa en az şunlara izin ver:
- 9345/TCP: Worker’ların RKE2’ye bağlanması
- 6443/TCP: Kubernetes API
- 10250/TCP: Kubelet
- 8472/UDP: Node’lar arası Canal ağ trafiği
- 30000-32767/TCP,UDP: NodePort kullanacaksan
Ardından RKE2 ayar dosyasını oluştur:
sudo mkdir -p /etc/rancher/rke2
sudo nano /etc/rancher/rke2/config.yaml
node-name: master1
write-kubeconfig-mode: "0644"
node-ip: "192.168.74.10"
RKE2 kurulum ve başlatma:
curl -sfL https://get.rke2.io | sudo INSTALL_RKE2_TYPE="server" sh -
veya belirli bir versiyon kurmak isterseniz de
curl -sfL https://get.rke2.io | sudo INSTALL_RKE2_TYPE="server" INSTALL_RKE2_VERSION="v1.36.4+rke2r1" sh -
kurulum bitince log izlenirsudo journalctl -u rke2-server -f
kurulum yapılınca aşağıdaki çıktı sonucu master1 Ready olarak görünmeli.
sudo /var/lib/rancher/rke2/bin/kubectl --kubeconfig /etc/rancher/rke2/rke2.yaml get nodes
Sonra worker’larda kullanacağımız token’ı master’da görüntüle:
cat /var/lib/rancher/rke2/server/agent-token
Worker 1 Kurulumu:
hostnamectl set-hostname worker1
swapoff -a
mkdir -p /etc/rancher/rke2
nano /etc/rancher/rke2/config.yaml
Dosya içeriği şu olsun. TOKEN alanına master’dan aldığın agent-token değerini tam olarak yapıştır:
server: https://192.168.74.50:9345
token:"K10603bbb07c8dfd9d871daec43f586a5eafa28b34afa390d0::server:bfeac24ad4f0ab070d8219e451853c9c74613223e51eba817"
node-name: "worker1"
Ardından Worker 1’e RKE2 agent kur ve başlat:
curl -sfL https://get.rke2.io | sudo INSTALL_RKE2_TYPE="agent" sh -
veya versiyon ile kurmak isterseniz
curl -sfL https://get.rke2.io | sudo INSTALL_RKE2_TYPE="agent" INSTALL_RKE2_VERSION="v1.36.4+rke2r1" sh -
Worker’ın master’a 9345/TCP üzerinden ulaşabildiğinden emin ol; firewall varsa bu porta izin verilmeli.
sudo systemctl enable rke2-agent.service sudo systemctl start rke2-agent.service
Kurulumdan sonra master1 üzerinde kontrol et:
/var/lib/rancher/rke2/bin/kubectl --kubeconfig /etc/rancher/rke2/rke2.yaml get nodes
Worker 2 Kurulumu:
hostnamectl set-hostname worker2
swapoff -a
mkdir -p /etc/rancher/rke2
nano /etc/rancher/rke2/config.yaml
Dosya içeriği şu olsun. TOKEN alanına master’dan aldığın agent-token değerini tam olarak yapıştır:
server: https://192.168.74.50:9345
token:"K10603bbb07c8dfd9d871daec43f586a5eafa28b34afa390d0::server:bfeac24ad4f0ab070d8219e451853c9c74613223e51eba817"
node-name: "worker2"
Ardından Worker 1’e RKE2 agent kur ve başlat:
curl -sfL https://get.rke2.io | sudo INSTALL_RKE2_TYPE="agent" sh -
veya versiyon ile kurmak isterseniz
curl -sfL https://get.rke2.io | sudo INSTALL_RKE2_TYPE="agent" INSTALL_RKE2_VERSION="v1.36.4+rke2r1" sh -
Worker’ın master’a 9345/TCP üzerinden ulaşabildiğinden emin ol; firewall varsa bu porta izin verilmeli.
sudo systemctl enable rke2-agent.service sudo systemctl start rke2-agent.service
Kurulumdan sonra master1 üzerinde kontrol et:
/var/lib/rancher/rke2/bin/kubectl --kubeconfig /etc/rancher/rke2/rke2.yaml get nodes
Kubectl Kurulumu
Master Node üzerinde kubectl kullanmak için aşağıdaki komutlar ile kubectl kurulumu yapılır.
Önce node üzerinde update komutu çalıştırılır ve ilgili modüller kurulur .
sudo apt-get update sudo apt-get install -y apt-transport-https ca-certificates curl
kubectl download edilir
curl -LO https://dl.k8s.io/release/v1.33.0/bin/linux/amd64/kubectl
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"
validate edilir,
echo "$(cat kubectl.sha256) kubectl" | sha256sum --check
kubectl kurulumu başlatılır, kubectl dosyasına +x ile yetki verilir ve ilgili alana taşınır.
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl chmod +x kubectl mkdir -p ~/.local/bin mv ./kubectl ~/.local/bin/kubectl
en son kurulan kubectl versiyonu kontrol edilir.
kubectl version
Rancher Üzerine Cluster Ekleme
rancher dashboard uzerınden sımdı olusturdugumuz clusterı ekleyelım.
Create Cluster tıklanır ve olusturulacak cluster ismi ve acıklama girilerek create edilir.


Master1 uzerınde calıstırılır master1 import edilir. ssl yoksa –insecure kullanılır.
curl --insecure -sfL 'https://192.168.74.145/v3/import/xh8czv4jgbmgnlbv4249rmw5h66dg5mkcjmw74hnwhf22kv92zpmvg_c-lmxn2.yaml' | /var/lib/rancher/rke2/bin/kubectl --kubeconfig /etc/rancher/rke2/rke2.yaml apply -f -

rke2-test isminde clusterı import işlemi yaptık artık rancher üzerinde local cluster dışında rke2-test cluster yönetilebilir clusterlar arasında görünecektir.