Kubernetes集群部署

来源:https://www.cnblogs.com/helong-123/archive/2022/06/24/16408070.html
-Advertisement-
Play Games

鏡像下載、功能變數名稱解析、時間同步請點擊 阿裡雲開源鏡像站 一、環境要求 系統版本:CentOS7.x版本 硬體配置:記憶體2GB以上 cpu2核以上 硬碟大於30G 集群網路配置:集群中所有伺服器內網必須互通,並且需要訪問外網來拉取鏡像 禁用swap分區 二、k8s基礎環境操作: 1、關閉防火牆: [ro ...


鏡像下載、功能變數名稱解析、時間同步請點擊 阿裡雲開源鏡像站

一、環境要求

系統版本:CentOS7.x版本

硬體配置:記憶體2GB以上  cpu2核以上  硬碟大於30G

集群網路配置:集群中所有伺服器內網必須互通,並且需要訪問外網來拉取鏡像

禁用swap分區

二、k8s基礎環境操作:

1、關閉防火牆:

[[email protected] ~]# systemctl stop firewalld
[[email protected] ~]# systemctl disable firewalld

2、關閉selinux:

[[email protected]ost ~]# sed -i 's/enforcing/disabled/' /etc/selinux/config
[[email protected] ~]# getenforce

3、關閉swap分區:

臨時關閉:

[[email protected] ~]# swapoff -a

永久關閉:註釋掉/etc/fstab文件中的swap行

4、進行hosts文件編輯:

192.168.8.146     k8s-master

192.168.8.141      k8s-node1

192.168.8.129     k8s-node2

5、將橋接的IPv4流量傳遞到iptables的鏈

[[email protected] ~]# cat > /etc/sysctl.d/k8s.conf << EOF
> net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF
[[email protected] ~]# sysctl --system

file

6、開啟IP轉發功能

[[email protected] ~]# echo "1" > /proc/sys/net/ipv4/ip_forward

三、安裝docker(三台機器都操作)

1、卸載舊版docker

[[email protected] ~]# yum remove docker docker-common docker-selinux docker-engine

2、安裝一些必要的系統工具

[[email protected] ~]# yum install -y yum-utils device-mapper-persistent-data lvm2

3、配置docker的穩定版本倉庫

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4、更新安裝包索引

[[email protected] ~]# yum makecache fast

5、安裝docker ce

[[email protected] ~]# yum -y install docker-ce-18.06.1.ce-3.el7

6、開機自啟和啟動docker

[[email protected] ~]# systemctl enable docker && systemctl start docker

7、查看docker版本

[[email protected] ~]# docker --version

file

8、添加阿裡雲YUM軟體源

[[email protected] ~]# vim /etc/yum.repos.d/kubernetes.repo
[Kubernetes]
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg

9、

[[email protected] ~]# yum clean all

10、

[[email protected] ~]# yum makecache

安裝kubeadm,kubelet和kubectl

11、由於版本更新頻繁,這裡指定版本號部署:

[[email protected] ~]# yum install -y kubelet-1.15.0 kubeadm-1.15.0 kubectl-1.15.0
[[email protected] ~]# systemctl enable kubelet

四、部署Kubernetes Master(這個在master主機里操作):

[[email protected]~]#kubeadm init  --apiserver-advertise-address=192.168.8.146 --image-repository registry.aliyuncs.com/google_containers  --kubernetes-version v1.15.0 --service-cidr=10.1.0.0/16  --pod-network-cidr=10.244.0.0/16

註意:192.168.8.146ip是master主機的ip地址

file

五、配置kubectl訪問集群(三台機器操作):

1、

[[email protected] ~]# mkdir -p $HOME/.kube

2、

[[email protected] ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

3、

[[email protected] ~]# chown $(id -u):$(id -g) $HOME/.kube/config

六、Master安裝flannel(主機master里操作):

[[email protected]~]#kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

1、查看索引pod

[[email protected] ~]# kubectl get pod -n kube-system

2、查看節點

[[email protected] ~]# kubectl get node

七、加入node節點(在兩台node上做):

1、

[[email protected] ~]# kubeadm join 192.168.8.146:6443 --token vhykt2.0jjdgdcnclxhts41  --discovery-token-ca-cert-hash sha256:bf42d67996e593a1e5844ba717d97e1249ed85bf86d83322b88c108d2f6a3dc1

file

2、查看node1節點是否成功(在node1上做)

[[email protected] ~]# docker ps

file

八、查看節點信息(在master操作)

[[email protected] ~]# kubectl get node

file

九、部署dashboard(master主機操作)

[[email protected]~]#wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

1、

[[email protected] ~]# vim   kubernetes-dashboard.yaml

file

file

2、安裝dashboard

[[email protected] ~]# kubectl apply -f kubernetes-dashboard.yaml

3、使用master節點ip地址+埠來訪問,協議是https的

查看Dashboard埠信息:

[[email protected] ~]# kubectl --namespace=kube-system get service kubernetes-dashboard

file

4、以我自己的伺服器為訪問對象,使用​ ​https://172.16.204.130:30310​​即可訪問

file

5、Token

[[email protected] ~]# kubectl create serviceaccount dashboard-admin -n kube-system
[[email protected]~]#kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
[[email protected] ~]# kubectl  get secret -n kube-system

file

6、查看token的具體信息

[[email protected]~]# kubectl describe secret dashboard-admin-token-92djb -n kube-system

file

7、把密令輸入在令牌中

file

8、登陸成功的頁面:

file

本文轉自:https://blog.51cto.com/u_15397018/5367484


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 提示:文章寫完後,目錄可以自動生成,如何生成可參考右邊的幫助文檔 @(MstnVBA學習--Vol1.代碼畫點線--20220623) 前言 2022年6月23日,小白筆記,複習之前的MstnVBA代碼,因為目前還做不到完全自己背誦或編寫出來,雖然簡單,溫故知新~ Mstn中沒有單獨的圓的概念,圓實 ...
  • DevExpress提供了一個比較強大的圖形繪製工具,可以用於繪製各種圖形,如流程圖、組織機構圖等等,本篇隨筆介紹XtraDiagram.DiagramControl的使用,以及利用代碼對其屬性進行控制,以及利用圖形模具的自定義操作,實現一些簡單流程圖形的繪製和處理。 ...
  • 欄位的許可權控制,一般就是控制對應角色人員對某個業務對象的一些敏感欄位的可訪問性:包括可見、可編輯性等處理。本篇隨筆結合基於SqlSugar的開發框架進行的欄位控制管理介紹。 ...
  • 一、簡介 vmware為我們提供了三種網路工作模式,它們分別是:Bridged(橋接模式)、NAT(網路地址轉換模式)、Host-Only(僅主機模式)。 查看網路連接 打開vmware虛擬機,我們可以在選項欄的“編輯”->“虛擬網路編輯器”中看到VMnet0(橋接模式)、VMnet1(僅主機模式) ...
  • 安裝docker後,提示需要啟用hyper-v,在控制面板中勾選Hyper-v,然後重啟,更新快完成就提示無法完成功能配置,正在撤銷更改 解決方法 方法1 控制面板一個一個選 方法2 百度了n多內容,命令行什麼的都試了下,但是都沒有起作用.有說禁用了服務,看了下,確實是禁用了,但是開起來後還是不行. ...
  • 這玩意搞了我今天,直接裂開!系統更新根本解決不了 好在查了相關資料才知道,原來微軟在 Win10 的更新中,將搜索功能和語音助手 Cortana 進行了拆分,搜索成了一個獨立的功能,還好有外媒發現問題原因是 Bing 和 Cortana 集成造成,而且修複很簡單。 方法1 使用電腦管家修複; 方法2 ...
  • 四、Nginx 4.1、概述 4.1.1、介紹 Nginx是一款輕量級的Web伺服器/反向代理伺服器/電子右鍵(IMAP/POP3)代理伺服器。其特點是占有記憶體少,併發能力強,事實上Nginx的併發能力在同類型的網頁伺服器中表現較好,中國大陸使用Nginx的網站有:百度、就京東、新浪、網易、騰訊、淘 ...
  • 鏡像下載、功能變數名稱解析、時間同步請點擊 阿裡雲開源鏡像站 CentOS 1.備份原來的源 在控制台輸入mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup備份原本的源 2、下載新的 CentOS-Bas ...
一周排行
    -Advertisement-
    Play Games
  • 一、引言:什麼是 JSON JSON (Java Script Object Notation) 是一種很常用的數據格式,它常常用在 web 應用程式中。它可以表示結構化的數據。 下麵是常見的 JSON 文件結構 { "name": "Kamishiro Rize", "age": "22", "o ...
  • 前言 大家好,我是蝸牛,在上一篇中,我們介紹了不同版本的HTTP區別和發展背景,這篇文章我們來聊聊HTTP的缺點,HTTP缺點大致總結有以下三點: 通信使用明文(不加密),內容可能會被竊聽。 不驗證通信方的身份,因此有可能遭遇偽裝(客戶端和服務端都有可能) 無法證明報文的完整性,有可能會被篡改。 其 ...
  • resultMap處理欄位和屬性的映射關係 如果欄位名與實體類中的屬性名不一致,該如何處理映射關係? 第一種方法:為查詢的欄位設置別名,和屬性名保持一致 下麵是實體類中的屬性名: private Integer empId; private String empName; private Integ ...
  • 大家在看到這篇文章前,為了有一個舒適的c++IDE,一定感受到了Dev-c++的廉價感,Clion功能的多餘,VS的臃腫。他們也有自己的優點,但糟點太多,令人十分難受。而VS Code,可以取長補短。下麵的配置內容,可以讓你在刷題時,享受絲滑的動畫,體會集成終端的方便,讓你覺得Coding不再枯燥。 ...
  • 給定一個不含重覆數字的數組 nums ,返回其 所有可能的全排列 。你可以 按任意順序 返回答案。 示例 1: 輸入:nums = [1,2,3] 輸出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 示例 2: 輸入:nums = [0,1] 輸 ...
  • 設計模式的目的 編寫軟體過程中,程式員面臨著來自 耦合性,內聚性以及可維護性,可擴展性,重用性,靈活性 等多方面的 挑戰,設計模式是為了讓程式(軟體),具有更好 代碼重用性 (即:相同功能的代碼,不用多次編寫) 可讀性 (即:編程規範性, 便於其他程式員的閱讀和理解) 可擴展性 (即:當需要增加新的 ...
  • 本文講解了決策樹的創鍵的過程,包括熵,信息增益的計算,還有決策樹的創建,以及使用matplotlib讓決策樹可視化的詳細過程 ...
  • ♠ use C++11 倍數 若 $a,b,k \in \mathbb N$,且 $a \times k=b$,那麼 $b$ 是 $a$ 的倍數,稱 $a$ 整除 $b$,記作 $a \mid b$。 $[1,n]\in \mathbb N$ 中 $x \in \mathbb N$ 的倍數有 $\l ...
  • LinkList可以定義指向List的指針 1.當函數參數為LinkList L時,意味著只改變或操作List的內容,而不需要改變L這個指針 如 Status GetElem(LinkList L,int i,ElemType) 2.當參數為LinkList &L時,意味著需要改變或操作L這個指針本 ...
  • Spring 5框架 一、Spring概念 1、Spring是輕量級的JavaEE框架 2、Spring可以解決企業應用開發的複雜性 3、Spring有兩個核心部分:IOC和AOP ​ 1)IOC:控制反轉,把創建對象過程交給Spring進行管理 ​ 2)AOP:面向切麵,不修改源代碼進行功能增強 ...