因公司某產品說在 RKE 平台上有問題,所以就找了資料,裝一套起來試試看,想不到意外的簡單。
參考資料
- Day 4 – 透過 RKE 架設第一套 Rancher(上)
- Day 5 – 透過 RKE 架設第一套 Rancher(下)
- How to setup Kubernetes cluster with RKE and Rancher
準備 VM 與配置 VM 環境
建立兩台 VM,可以使用 RHEL8
接下來動作,兩台都要作
移除 podman
sudo yum remove podman runc docker docker-client
docker-client-latest docker-common docker-latest docker-latest-logrotate
docker-logrotate docker-engine
安裝 docker-ce
sudo ls /etc/yum.repos.d wget
https://download.docker.com/linux/centos/docker-ce.repo -O - | sudo tee
/etc/yum.repos.d/docker.repo sudo yum install -y
docker-ce-cli-20.10.24-3.el8 docker-ce-20.10.24-3.el8 sudo systemctl
enable --now docker
關閉 swap
sudo swapoff -a
編輯 /etc/fstab
,註解掉 swap 該行
關閉 selinux
sudo setenforce 0 sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
關閉防火牆
sudo systemctl stop firewalld sudo systemctl disable firewalld
新增 sysctl 設定
新增 /etc/sysctl.d/99-k8s.conf
net.ipv4.ip_forward = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1
增加使用者 apadmin
sudo useradd apadmin sudo passwd apadmin sudo usermod -aG docker apadmin
安裝
在 bastion 上作業
下載 rke
因這邊有需求要裝 kubernetes 1.24,所以要下載對應的 rke 版本 1.43-rc3
這是在 bastion 主機上作
wget
https://github.com/rancher/rke/releases/download/v1.4.3-rc3/rke_linux-amd64
-O /tmp/rke sudo mv /tmp/rke /usr/local/bin/rke sudo chmod +x
/usr/local/bin/rke
配置 ssh 免密碼登入
ssh-keygen ssh-copy-id apadmin@<master> ssh-copy-id apadmin@<worker>
rke設定檔
先列出此版 rke 可安裝的 kubernetes 版本
rke config --list-version -all
輸出結果是
v1.24.8-rancher1-1 v1.25.5-rancher1-1 v1.23.14-rancher1-1
新增 cluster.yml ,裡面的 kubernetes_version 指定的 kubernetes 版本
cluster_name: ithome-rancher kubernetes_version:
"v1.24.8-rancher1-1" nodes: - address: 10.11.23.81 user: apadmin role:
[controlplane,worker,etcd] - address: 10.11.23.82 user: apadmin role:
[worker,etcd] services: etcd: backup_config: enabled: true
interval_hours: 6 retention: 60 network: plugin: flannel
開始安裝
執行以下指令就可以安裝
rke up
安裝後配置
安裝完成後,目錄裡會有 kube_config_cluster.yml
的檔案
這是給 kubectl 使用的檔案,先下載 kubectl
curl -LO "https://dl.k8s.io/release/$(curl -L -s
https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" sudo mv
kubectl /usr/local/bin sudo chmod +x /usr/local/bin/kubectl
把 kube_config_cluster.yml 複製為 ~/.kube/config
mkdir -p ~/.kube cp kube_config_cluster.yml ~/.kube/config
接下來就可以用 kubectl 指令查看
kubectl get nodes kubectl get pods -A
沒有留言:
張貼留言