ubuntu20.04系統搭建k8s1.28集群-docker作為容器運行時

ubuntu系統搭建

ubuntu-22.04.5-desktop-amd64.iso映像文件--->實際卻是20.4focal版本。

【安裝過程沒有特別指出的默認回車下一步】

【用戶和密碼設置】

【網絡連接】

【在vmware上安裝的話,網絡配置如下】【在vm里配置選擇nat或者橋接即可】

【國內源配置】,這里的源是20.04版,內核為5.14,22版本以上為5.15內核

vi?/etc/apt/source.list

----

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

# deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

# deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

deb-src https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu focal stable

# deb-src [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu focal stable

apt update

apt install -y openssh-server

apt-get install -y vim tree wget bash-completion bash-completion-extras lrzsz net-tools sysstat iotop htop unzip nc nmap telnet bc psmisc httpd-tools bind-utils nethogs expect epel-release

【關閉swap】

swapoff -a

sed -i 's/.*swap.*/#&/g' /etc/fstab

【安裝ssh服務】

passwd root 給root設置密碼

apt-get install -y openssh_server

vi /etc/ssh/sshd_config

#新增

PermitRootLogin yes

PasswordAuthentication yes

Port 22

systemctl restart ssh

【時間同步】

如果是上海市區,默認為北京時間

【xshell連接】

root/1

【iptables橋接流量】

cat <<EOF | sudo tee /etc/modules-load.d/containerd.conf
overlay
br_netfilter
ip_vs
ip_vs_wrr
ip_vs_sh
ip_vs_rr
EOF

sudo modprobe overlay

sudo modprobe br_netfilter

cat <<EOF | sudo tee /etc/sysctl.d/99-kubernetes-cri.conf

net.bridge.bridge-nf-call-iptables ?= 1

net.bridge.bridge-nf-call-ip6tables = 1

net.ipv4.ip_forward = 1

EOF

sudo sysctl --system

【安裝docker? 】

#依賴

sudo apt install?-y?apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

#如果/etc/apt/source.list文件中已有,就不要再配置docker源了。

sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

sudo apt-get update #更新

mkdir -p /data/docker ?#這個目錄最好是單獨的分區,且容量大,可做rsync遠程同步存儲到nfs

chmod 755 -R /data/docker

sudo apt-get install docker-ce?-y #直接安裝是28版本

【docker/daemon.json】

vim /etc/docker/daemon.json

{"exec-opts": ["native.cgroupdriver=systemd"],"registry-mirrors": ["https://docker.1panel.live","https://docker.1panel.dev","https://docker.fxxk.dedyn.io","https://docker.zhai.cm","https://docker.5z5f.com","https://a.ussh.net","https://docker.m.daocloud.io","https://docker.aityp.com","https://docker.m.daocloud.io","https://docker.imgdb.de","https://docker-0.unsee.tech","https://docker.hlmirror.com","https://cjie.eu.org","https://docker.mirrors.ustc.edu.cn"],"storage-driver": "overlay2","log-driver": "json-file","log-level": "warn","log-opts": {"max-size": "100m","max-file": "10"},"default-shm-size": "128M","max-concurrent-downloads": 10,"max-concurrent-uploads": 10,"debug": false,"experimental": true,"features": {"buildkit": true},"data-root": "/data/docker","insecure-registries": ["https://registry.npm.taobao.org"]}

systemctl daemon-reload && systemctl restart docker

【cri-dockerd配置兼容性】

rz cri-dockerd-0.3.16.amd64.tgz

pwd

/home

tar -xf cri-dockerd-0.3.16.amd64.tgz

cp -rf cri-dockerd/cri-dockerd /usr/local/bin/

# 配置啟動文件

cat > /etc/systemd/system/cri-docker.service <<-"EOF"
[Unit]
Description=CRI Interface for Docker Application Container Engine
Documentation=https://docs.mirantis.com
After=network-online.target firewalld.service docker.service
Wants=network-online.target
Requires=cri-docker.socket
[Service]
Type=notify
ExecStart=/usr/local/bin/cri-dockerd --container-runtime-endpoint fd:// --pod-infra-container-image=registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.10
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
StartLimitBurst=3
StartLimitInterval=60s
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
Delegate=yes
KillMode=process
[Install]
WantedBy=multi-user.target
EOF

# 配置 socket 文件

cat > /etc/systemd/system/cri-docker.socket <<-EOF
[Unit]
Description=CRI Docker Socket for the API
PartOf=cri-docker.service
[Socket]
ListenStream=%t/cri-dockerd.sock
SocketMode=0660
SocketUser=root
SocketGroup=docker
[Install]
WantedBy=sockets.target
EOF

systemctl daemon-reload && systemctl enable cri-docker --now cri-docker && systemctl status cri-docker

【安裝k8s】

apt-get install curl

sudo mkdir -p /etc/apt/keyrings

curl -fsSL https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes.gpgecho "deb [signed-by=/etc/apt/keyrings/kubernetes.gpg] https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list

等于:加k8s源+gpg文件

cat /etc/apt/sources.list.d/kubernetes.list
deb [signed-by=/etc/apt/keyrings/kubernetes.gpg] https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main

apt update

apt-get install kubeadm kubectl kubelet -y

systemctl enable --now kubelet

#先手動拉取鏡像

sudo kubeadm config images pull \--image-repository=registry.aliyuncs.com/google_containers \--cri-socket=unix:///run/cri-dockerd.sock \--kubernetes-version=v1.28.2

#檢查cri-dockerd.sock文件路徑,和初始化中cri-socket路徑一致

ls -l /run/cri-dockerd.sock??#在run目錄下的unix:///run/cri-dockerd.sock

#再初始化

sudo kubeadm init --image-repository registry.aliyuncs.com/google_containers --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=all --cri-socket=unix:///run/cri-dockerd.sock

#粘貼到master節點上

??mkdir -p $HOME/.kube

??sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

??sudo chown $(id -u):$(id -g) $HOME/.kube/config

#token

kubeadm join 10.0.0.120:6443 --token 0qgk0z.5hncmkz990wf216w \

--discovery-token-ca-cert-hash sha256:dc989d9d4cc708b8e494392f9b0a79986a3c73dd2f7cead0f73ce3be84613c03

【calico安裝】

#先下載鏡像,防止因為鏡像問題起不來

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/calico/cni:v3.26.1

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/calico/node:v3.26.1

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/calico/kube-controllers:v3.26.1

#再執行yaml文件

kubectl apply -f calico1.yaml

【node節點】

#安裝kubelet,kubectl,kubeadm,docker,cri-dockerd,基礎工具vim..,hostname,host解析

kubeadm token create --print-join-command#在主節點上重新獲取koken

#以yaml文件方式加入集群

vim /etc/kubeadm-config.yaml

vim /etc/kubeadm-config.yaml
apiVersion: kubeadm.k8s.io/v1beta3
kind: JoinConfiguration
discovery:bootstrapToken:token: ts5evm.alms2g3g12lhun2u #master節點的tokencaCertHashes:- "sha256:ad5892b72fce0643d55e6dc1277ae8011b2be85ed491c862f873f6a3fb028dfa"  #master的sha256apiServerEndpoint: "10.10.10.159:6443" #主節點ip
nodeRegistration:criSocket: unix:///run/cri-dockerd.sock  # 根據CRI路徑修改,這邊文章是在這里。

#加入master所在集群:kubeadm join 10.10.10.159:6443 --config /etc/kubeadm-config.yaml

【master驗證是否加入】

kubectl get nodes #查看節點

kubectl get pods #查看calico-node容器,等一會。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/81613.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/81613.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/81613.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

軟件I2C

軟件I2C 注意&#xff1a; SDA&#xff08;串行數據線&#xff09;和SCL&#xff08;串行時鐘線&#xff09;都是雙向I/O線&#xff0c;接口電路為開漏輸出。需通過上拉電阻接電源VCC。 軟件I2C說明 說明&#xff0c;有的單片機沒有硬件I2C的功能&#xff0c;或者因為電路設計…

C++性能測試工具——Vtune的使用

一、Intel Vtune的安裝 在前面初步認識了一下幾個性能的測試工具&#xff0c;本篇重點介紹一下Intel VTune Profiler&#xff0c;VTune是一個強大的性能分析工具&#xff0c;它屬于Intel oneAPI工具包中工具的一種。VTune的安裝只介紹在Linux平臺下的場景&#xff08;Windows安…

互聯網大廠Java求職面試:優惠券服務架構設計與AI增強實踐-6

互聯網大廠Java求職面試&#xff1a;優惠券服務架構設計與AI增強實踐-6 場景設定&#xff1a;技術總監張總坐在會議室里&#xff0c;鄭薪苦帶著自信的微笑走了進來。今天他們要圍繞優惠券服務的架構設計及如何結合AI進行增強展開討論。 第一輪面試&#xff1a;基礎架構設計 …

nginx模塊使用、過濾器模塊以及handler模塊

一、如何使用nginx的模塊 1.ngx_code.c: #include "ngx_config.h" #include "ngx_conf_file.h" #include "nginx.h" #include "ngx_core.h" #include "ngx_string.h" #include "ngx_palloc.h" #include "n…

【Odoo】Pycharm導入運行Odoo15

【Odoo】Pycharm導入運行Odoo15 前置準備1. Odoo-15項目下載解壓2. PsrtgreSQL數據庫 項目導入運行1. 項目導入2. 設置項目內虛擬環境3. 下載項目中依賴4. 修改配置文件odoo.conf 運行Pycharm快捷運行 前置準備 1. Odoo-15項目下載解壓 將下載好的項目解壓到開發目錄下 2. …

網絡安全-等級保護(等保) 2-5 GB/T 25070—2019《信息安全技術 網絡安全等級保護安全設計技術要求》-2019-05-10發布【現行】

################################################################################ GB/T 22239-2019 《信息安全技術 網絡安全等級保護基礎要求》包含安全物理環境、安全通信網絡、安全區域邊界、安全計算環境、安全管理中心、安全管理制度、安全管理機構、安全管理人員、安…

【SpringBoot】??整合飛書群機器人發送消息

&#x1f4a5;&#x1f4a5;????歡迎閱讀本文章????&#x1f4a5;&#x1f4a5; &#x1f3c6;本篇文章閱讀大約耗時3分鐘。 ??motto&#xff1a;不積跬步、無以千里 &#x1f4cb;&#x1f4cb;&#x1f4cb;本文目錄如下&#xff1a;&#x1f381;&#x1f381;&am…

我的多條件查詢

背景&#xff1a;2個表&#xff0c;是一對多的關系&#xff0c;一個實時視頻幀可以出現多個檢測結果 要求&#xff0c;可以根據&#xff0c;ids&#xff0c;起始時間&#xff0c;識別出的鳥的種類&#xff0c;來進行刪除。 出現的問題&#xff0c; 一致性沒有實現&#xff1a…

關于網站提交搜索引擎

發布于Eucalyptus-blog 一、前言 將網站提交給搜索引擎是為了讓搜索引擎更早地了解、索引和顯示您的網站內容。以下是一些提交網站給搜索引擎的理由&#xff1a; 提高可見性&#xff1a;通過將您的網站提交給搜索引擎&#xff0c;可以提高您的網站在搜索結果中出現的機會。當用…

【Oracle專欄】擴容導致數據文件 dbf 丟失,實操

Oracle相關文檔,希望互相學習,共同進步 風123456789~-CSDN博客 1.背景 同事檢查擴容情況,發現客戶擴容后數據盤后,盤中原有文件丟失,再檢查發現數據庫沒有啟動。通過檢查發現數據盤中丟失的是oracle的 dbf 表空間文件。數據庫無法啟動。 檢查情況:1)沒有rman備份 …

負載均衡—會話保持技術詳解

一、會話保持的定義 會話保持&#xff08;Session Persistence&#xff09;是一種負載均衡策略&#xff0c;其核心機制是確保來自同一客戶端的連續請求&#xff0c;在特定周期內被定向到同一臺后端服務器進行處理。這種機制通過記錄和識別客戶端的特定標識信息&#xff0c;打破…

CSRF攻擊 + 觀測iframe加載時間利用時間響應差異側信道攻擊 -- reelfreaks DefCamp 2024

參考: https://0x90r00t.com/2024/09/30/3708/ 題目信息 有些事情最好還是保持低調。當然&#xff0c;除非你是個真正的怪胎。 注意&#xff1a;該網站通過HTTPS提供服務 標志格式&#xff1a;DCTF&#xff5b;&#xff5d;題目實現了一個類似視頻網站的東西 在其提供的數據庫中…

JS逆向-某易云音樂下載器

文章目錄 介紹下載鏈接Robots文件搜索功能JS逆向**函數a&#xff1a;生成隨機字符串****函數b&#xff1a;AES-CBC加密****函數c&#xff1a;RSA公鑰加密** 歌曲下載總結 介紹 在某易云音樂中&#xff0c;很多歌曲聽是免費的&#xff0c;但下載需要VIP&#xff0c;此程序旨在“…

黑馬k8s(十)

1.Pod生命周期-鉤子函數 2.Pod生命周期-容器探測 因為沒有hello.txt文件 查看詳情&#xff1a; 修改為查看命令&#xff1a; 查看一下詳情&#xff1a; 因為只有一個80端口&#xff0c;沒有8080&#xff0c;所以會重啟 查看詳情&#xff1a; 修改成80&#xff1a; 因為沒有…

每日算法刷題Day9 5.17:leetcode定長滑動窗口3道題,用時1h

9. 1652.拆炸彈(簡單&#xff0c;學習) 1652. 拆炸彈 - 力扣&#xff08;LeetCode&#xff09; 思想 為了獲得正確的密碼&#xff0c;你需要替換掉每一個數字。所有數字會 同時 被替換。 如果 k > 0 &#xff0c;將第 i 個數字用 接下來 k 個數字之和替換。如果 k < 0…

Java IO及Netty框架學習小結

Netty netty官網: Netty 什么是Netty&#xff1f; Netty 是 一個異步事件驅動的網絡應用程序框架&#xff0c;用于快速開發可維護的高性能協議服務器和客戶端。Netty 是一個 NIO 客戶端服務器框架&#xff0c;可以快速輕松地開發網絡應用程序&#xff08;例如協議服務器和客…

計算機網絡筆記(二十七)——4.9多協議標簽交換MPLS

4.9.1MPLS的工作原理 一、MPLS基本工作原理 MPLS&#xff08;Multiprotocol Label Switching&#xff09;是一種介于數據鏈路層和網絡層之間的轉發技術&#xff0c;通過固定長度的標簽進行高速數據轉發。其核心特點是通過預建立的標簽交換路徑&#xff08;Label Switching Pa…

AI 賦能 Copula 建模:大語言模型驅動的相關性分析革新

技術點目錄 R及Python語言及相關性研究初步二元Copula理論與實踐&#xff08;一&#xff09;二元Copula理論與實踐&#xff08;二&#xff09;【R語言為主】Copula函數的統計檢驗與選擇【R語言為主】高維數據與Vine Copula 【R語言】正則Vine Copula&#xff08;一&#xff09;…

【洛谷P3386】二分圖最大匹配之Kuhn算法/匈牙利算法:直觀理解

題目&#xff1a;洛谷P3386 【模板】二分圖最大匹配 &#x1f955; 匈牙利算法本來是針對帶權圖最大匹配的&#xff0c;這里由于題目只是求最大匹配的邊數&#xff0c;所以我們也只考慮無權的情況。 &#x1f680; 本文旨在服務于看了別的關于匈牙利算法的文章但不甚理解的童…

【數據結構】二分查找(返回插入點)5.14

二分查找基礎版 package 二分查找; public class BinarySearch { public static void main(String[] args) { // TODO Auto-generated method stub } public static int binarySearchBasic(int[] a,int target) { int i0,ja.length-1; //設置指針初值 while…