proxmox上にk8sを構築
code:sh
sudo apt-get update
# apt-transport-httpsはダミーパッケージの可能性があります。その場合、そのパッケージはスキップできます
sudo apt-get install -y apt-transport-https ca-certificates curl gpg
# /etc/apt/keyringsフォルダーが存在しない場合は、curlコマンドの前に作成する必要があります。下記の備考を参照してください。
# sudo mkdir -p -m 755 /etc/apt/keyrings
# これにより、/etc/apt/sources.list.d/kubernetes.listにある既存の設定が上書きされます
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
code:sh
sudo tee /etc/syscqtl.d/kubernetes.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF
code:sh
sudo sysctl --system
マスターの構築
code:sh
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
出てきたjoinコマンドをワーカで打つ。
code:sh
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
ネットワークプラグインを入れる
code:sh
これでReadyになる。
systemのpodはこれで見れる
code:sh
kubectl get pods -n kube-system
nginxを実行してみる
code:sh
kubectl run nginx --image=nginx
kubectl get pods
runningになればOK。
master nodeにもデプロイできるようにする
code:sh
kubectl taint nodes k8s-master-1 node-role.kubernetes.io/control-plane:NoSchedule-
→これはやめたほうがいいかも。master nodeに重いpodをデプロイしたところコンテナ全体が落ちてしまった。(2024/12/12)
Dashboardをデプロイする
code:sh
ローカルから叩くには、scpとかで ~/.kube 以下をローカルに持ってこればよい(トークンとかも入っている)
(たぶんほんとは ~/.kube/config だけでいい)