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、關閉防火牆:

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld

2、關閉selinux:

[root@localhost ~]# sed -i 's/enforcing/disabled/' /etc/selinux/config
[root@localhost ~]# getenforce

3、關閉swap分區:

臨時關閉:

[root@localhost ~]# 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的鏈

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

file

6、開啟IP轉發功能

[root@localhost ~]# echo "1" > /proc/sys/net/ipv4/ip_forward

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

1、卸載舊版docker

[root@localhost ~]# yum remove docker docker-common docker-selinux docker-engine

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

[root@localhost ~]# 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、更新安裝包索引

[root@localhost ~]# yum makecache fast

5、安裝docker ce

[root@localhost ~]# yum -y install docker-ce-18.06.1.ce-3.el7

6、開機自啟和啟動docker

[root@localhost ~]# systemctl enable docker && systemctl start docker

7、查看docker版本

[root@localhost ~]# docker --version

file

8、添加阿裡雲YUM軟體源

[root@localhost ~]# 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、

[root@localhost ~]# yum clean all

10、

[root@localhost ~]# yum makecache

安裝kubeadm,kubelet和kubectl

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

[root@localhost ~]# yum install -y kubelet-1.15.0 kubeadm-1.15.0 kubectl-1.15.0
[root@localhost ~]# systemctl enable kubelet

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

[root@k8s-master~]#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、

[root@localhost ~]# mkdir -p $HOME/.kube

2、

[root@k8s-master ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

3、

[root@k8s-master ~]# chown $(id -u):$(id -g) $HOME/.kube/config

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

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

1、查看索引pod

[root@k8s-master ~]# kubectl get pod -n kube-system

2、查看節點

[root@k8s-master ~]# kubectl get node

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

1、

[root@k8s-node1 ~]# kubeadm join 192.168.8.146:6443 --token vhykt2.0jjdgdcnclxhts41  --discovery-token-ca-cert-hash sha256:bf42d67996e593a1e5844ba717d97e1249ed85bf86d83322b88c108d2f6a3dc1

file

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

[root@k8s-node1 ~]# docker ps

file

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

[root@k8s-master ~]# kubectl get node

file

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

[root@k8s-master~]#wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

1、

[root@k8s-master ~]# vim   kubernetes-dashboard.yaml

file

file

2、安裝dashboard

[root@k8s-master ~]# kubectl apply -f kubernetes-dashboard.yaml

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

查看Dashboard埠信息:

[root@k8s-master ~]# kubectl --namespace=kube-system get service kubernetes-dashboard

file

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

file

5、Token

[root@k8s-master ~]# kubectl create serviceaccount dashboard-admin -n kube-system
[root@k8s-master~]#kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
[root@k8s-master ~]# kubectl  get secret -n kube-system

file

6、查看token的具體信息

[root@k8s-master~]# 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
  • 概述:在C#中,++i和i++都是自增運算符,其中++i先增加值再返回,而i++先返回值再增加。應用場景根據需求選擇,首碼適合先增後用,尾碼適合先用後增。詳細示例提供清晰的代碼演示這兩者的操作時機和實際應用。 在C#中,++i 和 i++ 都是自增運算符,但它們在操作上有細微的差異,主要體現在操作的 ...
  • 上次發佈了:Taurus.MVC 性能壓力測試(ap 壓測 和 linux 下wrk 壓測):.NET Core 版本,今天計劃準備壓測一下 .NET 版本,來測試並記錄一下 Taurus.MVC 框架在 .NET 版本的性能,以便後續持續優化改進。 為了方便對比,本文章的電腦環境和測試思路,儘量和... ...
  • .NET WebAPI作為一種構建RESTful服務的強大工具,為開發者提供了便捷的方式來定義、處理HTTP請求並返迴響應。在設計API介面時,正確地接收和解析客戶端發送的數據至關重要。.NET WebAPI提供了一系列特性,如[FromRoute]、[FromQuery]和[FromBody],用 ...
  • 原因:我之所以想做這個項目,是因為在之前查找關於C#/WPF相關資料時,我發現講解圖像濾鏡的資源非常稀缺。此外,我註意到許多現有的開源庫主要基於CPU進行圖像渲染。這種方式在處理大量圖像時,會導致CPU的渲染負擔過重。因此,我將在下文中介紹如何通過GPU渲染來有效實現圖像的各種濾鏡效果。 生成的效果 ...
  • 引言 上一章我們介紹了在xUnit單元測試中用xUnit.DependencyInject來使用依賴註入,上一章我們的Sample.Repository倉儲層有一個批量註入的介面沒有做單元測試,今天用這個示例來演示一下如何用Bogus創建模擬數據 ,和 EFCore 的種子數據生成 Bogus 的優 ...
  • 一、前言 在自己的項目中,涉及到實時心率曲線的繪製,項目上的曲線繪製,一般很難找到能直接用的第三方庫,而且有些還是定製化的功能,所以還是自己繪製比較方便。很多人一聽到自己畫就害怕,感覺很難,今天就分享一個完整的實時心率數據繪製心率曲線圖的例子;之前的博客也分享給DrawingVisual繪製曲線的方 ...
  • 如果你在自定義的 Main 方法中直接使用 App 類並啟動應用程式,但發現 App.xaml 中定義的資源沒有被正確載入,那麼問題可能在於如何正確配置 App.xaml 與你的 App 類的交互。 確保 App.xaml 文件中的 x:Class 屬性正確指向你的 App 類。這樣,當你創建 Ap ...
  • 一:背景 1. 講故事 上個月有個朋友在微信上找到我,說他們的軟體在客戶那邊隔幾天就要崩潰一次,一直都沒有找到原因,讓我幫忙看下怎麼回事,確實工控類的軟體環境複雜難搞,朋友手上有一個崩潰的dump,剛好丟給我來分析一下。 二:WinDbg分析 1. 程式為什麼會崩潰 windbg 有一個厲害之處在於 ...
  • 前言 .NET生態中有許多依賴註入容器。在大多數情況下,微軟提供的內置容器在易用性和性能方面都非常優秀。外加ASP.NET Core預設使用內置容器,使用很方便。 但是筆者在使用中一直有一個頭疼的問題:服務工廠無法提供請求的服務類型相關的信息。這在一般情況下並沒有影響,但是內置容器支持註冊開放泛型服 ...
  • 一、前言 在項目開發過程中,DataGrid是經常使用到的一個數據展示控制項,而通常表格的最後一列是作為操作列存在,比如會有編輯、刪除等功能按鈕。但WPF的原始DataGrid中,預設只支持固定左側列,這跟大家習慣性操作列放最後不符,今天就來介紹一種簡單的方式實現固定右側列。(這裡的實現方式參考的大佬 ...