نصب Kubernetes با استفاده از Kubeadm بدون نصب Docker در اوبونتو

اول از همه ، Kubernetes چیست؟
Kubernetes (K8S) ابزاری ارکستراسیون است که استقرار ، مقیاس گذاری و مدیریت برنامه های کانتینر شده را خودکار می کند. این ویژگی های کلیدی مانند:
- مقیاس بندی: به طور خودکار برنامه ها را بر اساس تقاضا بالا یا پایین می کند.
- به روزرسانی: برای اطمینان از به روزرسانی برنامه های یکپارچه ، به روزرسانی های نورد و بازپرداخت را مدیریت می کند.
- در دسترس بودن بالا: با توزیع ظروف در چندین گره ، برنامه های کاربردی را بدون خرابی انجام می دهد.
- تعادل بار: برای حفظ عملکرد ، ترافیک را به طور کارآمد توزیع می کند.
- خود درمانی: ظروف شکست خورده را به طور خودکار تشخیص داده و جایگزین می کند.
اما این اتفاق این مرحله اولیه است برای نصب آن
در زیر مراحل دستیابی به آن آورده شده است.
#نصب Kubernetes با استفاده از Kubeadm در اوبونتو:
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl gpg
#انتقال بسته IPv4 قابل حمل
#SYSCTL PARMS مورد نیاز با تنظیم ، پارامترها در راه اندازی مجدد باقی می مانندcat <
net.ipv4.ip_forward = 1
EOF
# پارامترهای sysctl را بدون راه اندازی مجدد اعمال کنیدsudo sysctl --system
*#آن را به صورت فرمان تقویت کنید زیرا خروجی باید 1 باشد: *sudo sysctl net.ipv4.ip_forward
#(Althoug It موجود است اما در صورت وجود) دایرکتوری را با اجازه در صورت عدم حضور می توانید با مراجعه به این دایرکتوری/etc/apt/keyrings بررسی کنید_#sudo mkdir -p -m 755 /etc/apt/keyrings_
#مخزن Kubernetes
curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.31/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
# این هر پیکربندی موجود را در /etc/apt/source.list.d/kubernetes.list رونویسی می کند
#پس از ایجاد repo Kubernetes ، دستور زیر را انجام دهیدecho 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.31/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list
#AS نصب K8S نسخه v1.31 نیازی به نصب Docker نیست ، همانطور که در K8S به جای نصب محیط زمان اجرا کانتینر (CRI-O ، CONTANDER ، DOCKER ENGINE) این موارد مورد نیاز استفاده داکر را فراهم می کند
#افزودنی مخزن CRI-O:
curl -fsSL https://pkgs.k8s.io/addons:/cri-o:/stable:/v1.31/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/cri-o-apt-keyring.gpg
#سپس repo ایجاد شده را اجرا کنید:echo "deb [signed-by=/etc/apt/keyrings/cri-o-apt-keyring.gpg] https://pkgs.k8s.io/addons:/cri-o:/stable:/v1.31/deb/ /" | sudo tee /etc/apt/sources.list.d/cri-o.list
#دستور زیر را انجام دهیدsudo apt-get update
sudo apt-get install -y cri-o kubelet kubeadm kubectl
#بسته ها را نصب کنیدsudo systemctl start crio.service
#این سرویس CRI-O را شروع می کندsudo swapoff -a
#در حالی که این باعث می شود Kubelet شروع نشودsudo modprobe br_netfilter
#بوت استرپ یک خوشه
sudo kubeadm init
#فرمان below با اجرا ارائه می شود گرمای که باید انجام شودmkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
#شبکه CNI را ایجاد کنیدcurl https://raw.githubusercontent.com/projectcalico/calico/v3.28.2/manifests/calico.yaml -O
kubectl apply -f calico.yaml
#LAST دستور join kubeadm را در گره مورد نظر کپی و چسباند که مانند زیر آمده است **
**#مثال: sudo sudo kubeadm join 192.168.46.157:6443 --token7xlnp0.9uv4z0qr4wvzhtqn \ --discovery-token-ca-cert-hash sha256:4a1a412d2e682556df0bf10dc380c744a98eb99e8c927fa58eb025d5ff7dc694