K8S集群再搭建

?前述:總體是非常簡單的,就是過程繁瑣,不過都是些重復的操作

master成員: [controller-manager, scheduler, api-server, etcd, proxy,kubelet]

node成員:? ? [kubelet, proxy]

=====master要修改的配置文件有=====

1. vi /etc/etcd/etcd.conf? # 數據存儲目錄/對外監聽地址/本機ip

2. vi /etc/kubernetes/apiserver #開放api-server端口/指明監聽奴隸節點端口/指明etcd地址

3. vi /etc/kubernetes/config?? # 告訴proxy api-server是誰?

4.?vi /etc/kubernetes/kubelet?# 注冊自己信息,并將告訴自己的master是是誰?

=====node要修改的配置文件有=====

1. vi /etc/kubernetes/config? ? # 告訴proxy api-server是誰?

2.?vi /etc/kubernetes/kubelet? # 注冊自己信息,并將告訴自己的master是是誰?

小結:master節點就多配置2個,其它跟node無二差別 ,節點要關閉防火墻或者開發對映的端口,要不然,node無法加入master

進入正題。。。。。。。。。。

================Master======================

1. 安裝etcd服務

### 準備3個節點并修改節點hostname

hostnamectl set-hostname k8s-master
hostnamectl set-hostname k8s-node1
hostnamectl set-hostname k8s-node2

### 配置3個節點的域名解析

vi /etc/hosts

```

192.168.208.161 k8s-master
192.168.208.162 k8s-node1
192.168.208.163 k8s-node2

```

### master節點下載數據庫ETCD

yum install -y etcd

vi /etc/etcd/etcd.conf

```

# 數據存儲目錄

ETCD_DATA_DIR="/var/lib/etcd/default.etcd"

# 監聽地址,設置任意ip都可以訪問
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"

# 如果配置etcd集群,名稱必須不一樣
ETCD_NAME="default"

# master節點的IP
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.208.160:2379"

```

### 啟動ETCD并設置開機自啟

systemctl restart etcd
systemctl enable etcd

?2. 安裝kubernetes-master包含了apiserver、controller-manager、scheduler

yum install -y kubernetes-master.x86_64

vi /etc/kubernetes/apiserver

```

#如果僅限本地訪問可以設置成本機IP
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"

#開放apiserver端口的節點將屬于master節點
KUBE_API_PORT="--port=8080"

#奴隸節點的端口,奴隸節點是什么端口就配置什么端口
KUBELET_PORT="--kubelet-port=10250"

#奴隸節點的端口
KUBELET_PORT="--kubelet-port=10250"

```

vi /etc/kubernetes/config

```

#為controller-manager, scheduler, and proxy指明api-server
KUBE_MASTER="--master=http://192.168.208.160:8080"

```

### 啟動 api-server、controller-manager、scheduler

systemctl start kube-apiserver.service
systemctl start kube-controller-manager.service
systemctl start kube-scheduler.service

# 順手設置開機自啟

systemctl enable kube-apiserver.service
systemctl enable kube-controller-manager.service
systemctl enable kube-scheduler.service

### 檢查主節點成員狀態,這里的api-server不會顯示,能執行kubectl命令說明api-server正常,kube-proxy 需要安裝kubernetes-node時才會安裝,一并安裝還有kubelet
kubectl get componentstatus

===============Node====================

1. 安裝kubernetes-node 包含 poxy、kubelet, 還有會自動安裝docker哦!!

####master自己也成為奴隸節點

yum install -y kubernetes-node.x86_64

vi /etc/kubernetes/kubelet

```

#奴隸節點聯系上司的地址(這里master也是奴隸,自己監聽自己,其它奴隸節點192.168.208.161、192.168.208.162)
KUBELET_ADDRESS="--address=192.168.208.160"

#這個端口要跟master監聽的端口保持一致,因為master的配置監聽端口,就是按照下面的端口配置的
KUBELET_PORT="--port=10250"

# 奴隸節點的身份信息,可以是IP,也可以域名(必須先配置域名解析,開始就做好了,其它奴隸節點是 k8s-node1 、k8s-node2)
KUBELET_HOSTNAME="--hostname-override=k8s-master"

# 指明api-server

KUBELET_API_SERVER="--api-servers=http://192.168.208.160:8080"

```

###?啟動kubelet、proxy 會帶著啟動docker

systemctl start kubelet.service

systemctl start kube-proxy.service

systemctl enable kubelet.service

systemctl enable kube-proxy.service

### 剩余的k8s-node1、k8s-node2 重復操作2次就好,下面配上截圖

k8s-master 、k8s-node1、k8s-node2都一樣的

?

上面集群簡單的集群已經搭建好,后續要安裝網絡插件ssh 用于節點之間的通信

后續。。。。。。。

yum install -y flannel

vi /etc/sysconfig/flanneld

```

# 使用etcd作為pod的IP注冊中心

FLANNEL_ETCD_ENDPOINTS="http://192.168.208.160:2379"

# 使用默認的前綴

FLANNEL_ETCD_PREFIX="/atomic.io/network"

```

###該ip網段可以任意設定,隨便設定一個網段都可以。Pod里的容器的ip就是根據這個網段進行自動分配的,下面截圖會解釋

etcdctl set /atomic.io/network/config '{ "Network":"172.10.0.0/16" }'

etcdctl get /atomic.io/network/config

systemctl start flanneld.service
systemctl enable flanneld.service

# 重啟dockers后,docker的ip網段也會變的一樣

systemctl restart docker

同理配置奴隸節點 k8s-node1? k8s-node2,但不要執行etcdctl set /atomic.io/network/config '{ "Network":"172.10.0.0/16" }',etcd只在主節點,node節點是沒有的

至此,已經安裝好網絡插件flannel?,接下安裝一個測試沙箱,測試不同節點上容器是否能正常通訊

docker pull busybox:1.27

docker images

docker run -it <鏡像id>

> ifconfig

> 找到本容器的ip

同理在另外一個節點看看??找到本容器的ip

ping? 172.10.xxx.xxx

master節點成功ping通2個node節點

如果出現iptables 如下,我這個默認是ACCEPT,所以不用修改

# 修改命令,3個節點都要修改,如果。。。。但是這種設置是臨時的重啟失效(可以忽略)直接看iptables永久配置

iptables -P FORWARD ACCEPT

?iptables永久配置:

systemctl daemon-reload?

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

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

相關文章

Mokito的一些API

Mockito是一個Java單元測試框架&#xff0c;它允許開發者創建和配置模擬對象&#xff08;mock objects&#xff09;&#xff0c;以便在隔離的環境中測試代碼&#xff0c;尤其是當實際對象難以構造或其行為不確定時。下面是一些核心的Mockito API及其使用場景和代碼示例。 基礎…

wordpress教程視頻 wordpress教程網盤 wordpress教程推薦wordpress教程網

WordPress&#xff0c;作為一款強大且靈活的開源內容管理系統&#xff0c;已成為許多網站開發者與運營者的首選。其強大的功能、豐富的插件以及易于上手的特點&#xff0c;使得無論是初學者還是專業開發者都能輕松構建出個性化的網站。然而&#xff0c;對于初學者來說&#xff…

JUnit5標記測試用例

使用場景&#xff1a; 通過Tag對用例分組&#xff1a; 環境分組&#xff1a;測試環境、預發布環境階段分組&#xff1a;冒煙用例版本分組&#xff1a;V1.1、V1.2 Tag標記用例&#xff1a; 設置標簽根據標簽執行 結合Maven執行結合測試套件執行 設置標簽&#xff1a; 通過T…

NER 數據集格式轉換

NER 數據集格式 格式一 某些地方的數據和標簽拆成兩個文件了 sentences.txt 如 何 解 決 足 球 界 長 期 存 在 的 諸 多 矛 盾 &#xff0c; 重 振 昔 日 津 門 足 球 的 雄 風 &#xff0c; 成 為 天 津 足 壇 上 下 內 外 到 處 議 論 的 話 題 。 該 縣 一 手 抓 農 業…

【Spring Cloud】全面解析服務容錯中間件 Sentinel 持久化兩種模式

文章目錄 推送模式本地文件持久化&#xff08;拉模式&#xff09;配置yml編寫處理類添加配置演示 配置中心持久化&#xff08;推模式&#xff09;修改nacos在sentinel中生效引入依賴配置文件 修改sentinel在nacos中生效下載源碼更改代碼演示 總結 推送模式 Sentinel 規則的推送…

allegro 無法刪除Xnet

allegro 無法刪除Xnet Orcad中打開Constraint Manager之后&#xff0c;再生成網表&#xff0c;導入PCB后就會出現一堆Xnet網絡。無法去除Xnet。 解決辦法 在原理圖ORCAD中&#xff0c; 1、打開Edit Object properties 2、選擇Filter by:Capture 3、點擊New Property 4、設置…

火山引擎邊緣云亮相 Force 原動力大會,探索 AI 應用新范式

5月15日&#xff0c;2024 春季火山引擎 FORCE 原動力大會在北京正式舉辦。大會聚焦 AI 主題&#xff0c;以大模型應用為核心、以 AI 落地為導向&#xff0c;展示了火山引擎在大模型、云計算領域的實踐應用&#xff0c;攜手汽車、手機終端、金融、消費、互聯網等領域的專家和企業…

2024042102-array-list

數組 Array 一、前言 數組是數據結構還是數據類型&#xff1f; 數組只是個名稱&#xff0c;它可以描述一組操作&#xff0c;也可以命名這組操作。數組的數據操作&#xff0c;是通過 idx->val 的方式來處理。它不是具體要求內存上要存儲著連續的數據才叫數據&#xff0c;而…

js積累三(web頁面一段時間未操作,退出登錄)

//核心代碼&#xff0c;已封裝function CountDownLogout() {/* if 30 seconds no operation then logout */var maxTime 30; // seconds&#xff0c;可自行修改時長var time_time maxTime;/* 鼠標點擊事件 */$(document).mousedown(function(){time_time maxTime; //…

Spring Aop對本地事務的影響

1.Transactional聲明式事物也是基于aop實現的&#xff0c;public方法加了Transactional注解后&#xff0c;已經成功的創建了事務&#xff0c;但是當前方法仍在方法攔截器中 2.業務方法發生異常之后的處理 判斷回滾條件&#xff1a; 如果自定義了RollbackRuleAttribute列表&am…

EI會議的最佳論文獎是什么?如何申請?

EI會議的最佳論文獎通常是指在EI&#xff08;工程索引&#xff0c;Engineering Index&#xff09;收錄的學術會議中&#xff0c;評選出的表現最優秀的論文獎項。以下是關于該獎項的一些基本信息及申請步驟&#xff1a; 最佳論文獎的含義 評選標準&#xff1a;最佳論文獎通常基…

多線程、進程、線程五種狀態、synchronized、volatile、Lock、CAS、死鎖、ThreadLocal

1、并發編程 并發編程三要素 原子性&#xff1a;只一個操作要么全部成功&#xff0c;要么全部失敗可見性&#xff1a;一個線程對共享變量的修改&#xff0c;其他線程能夠立刻看到有序性&#xff1a;程序執行的順序按照代碼的先后順序執行 synchronized&#xff0c;Lock解決原…

前端vue 動態加載ts文件,動態調用ts內的方法

業務場景: 在某個業務場景中, 我們需要在數據庫配置ts文件路徑,和需要調用的函數名稱, 前端需要再指定的場景下,觸發對應的函數, 并執行處理邏輯,返回結果. 實現: 這是一個數據庫配置生成的動態表單 動態校驗的例子, 需要引用動態的函數校驗 任意一個js文件, common1.ts c…

大模型日報|今日必讀的 13 篇大模型論文

大家好&#xff0c;今日必讀的大模型論文來啦&#xff01; 1.MIT新研究&#xff1a;并非所有語言模型特征都是線性的 最近的研究提出了線性表征假說&#xff1a;語言模型通過操作激活空間中概念&#xff08;“特征”&#xff09;的一維表征來執行計算。與此相反&#xff0c;來…

CHI dataless 傳輸——CHI(4)

上篇介紹了read的操作類型&#xff0c;本篇我們來介紹一下dataless 目錄 一、dataless操作概覽 二、Non-CMO (Non-Cache Maintenance Operation) 1、CleanUnique 2、StashOnce and StashOnceSep 3、Evict 三、CMO (Cache Maintenance Operation) 一、dataless操作概覽 名…

C# 中的 Dictionary<TKey, TValue> 類

Dictionary<TKey, TValue> 是 C# 中的一個泛型集合類,它提供了一種鍵值對的存儲結構,可以用來存儲和快速訪問數據。它的主要特點如下: 鍵值對結構: Dictionary 中的每個元素都是一個鍵值對,鍵必須是唯一的,值可以重復。 快速訪問: Dictionary 基于哈希表實現,可以提供 O…

大白話聊聊MySQL查詢之五子句(知識簡單但重要)

前言&#xff1a; 在日常開發中&#xff0c;查詢數據占很大的比重&#xff0c;在使用 MySQL 數據庫進行查詢時&#xff0c;我們經常需要通過各種條件和規則來篩選和排序數據。要實現這些功能&#xff0c;就不得不使用以下這些子句&#xff1a;WHERE、ORDER BY、GROUP BY、HAVI…

物聯網層次架構設計

物聯網可以分為三個層次&#xff0c;底層是用來感知數據的感知層&#xff0c;即利用傳感器、二維碼、RFID等設備隨時隨地獲取物體的信息。第二層是數據傳輸處理的網絡層&#xff0c;即通過各種傳感網絡與互聯網的融合&#xff0c;將對象當前的信息實時準確地傳遞出去。第三層則…

忍の摸頭之術游戲娛樂源碼

本資源提供給大家學習及參考研究借鑒美工之用&#xff0c;請勿用于商業和非法用途&#xff0c;無任何技術支持&#xff01; 忍の摸頭之術游戲娛樂源碼&#xff0c;抖音上面非常火的摸頭殺畫面,看得我眼花繚亂,源碼拿去玩吧&#xff1b; 目錄說明 忍の摸頭之術&#xff1a;域…

輕松同步:將照片從三星手機傳輸到iPad的簡便方法

概括 想要在新 iPad 上查看三星照片嗎&#xff1f;但是&#xff0c;如果您不知道如何將照片從三星手機傳輸到 iPad&#xff0c;則無法在 iPad 上查看圖片。為此&#xff0c;本文分享了 7 個有用的方法&#xff0c;以便您可以使用它們在不同操作系統之間輕松發送照片。現在&…