網(wǎng)站首頁 編程語言 正文
一、前言
最近在做谷粒商城項目,搞到k8s了,但是跟這老師的方法一步一步做還是搭建不起來。
我不斷的試錯啊,各種bug都遇見了一個也沒解決?我真是啊哭死!
二、sealos
直到遇見一個大佬同學(xué),告訴我sealos
幾個命令就裝好了。聽到這的時候我跟著視頻看文檔已經(jīng)花了兩天時間了,心態(tài)蹦了啊有木有!
地址如下:https://www.sealos.io/zh-Hans/
三、準(zhǔn)備環(huán)境
- 全部重裝系統(tǒng),使用干凈的操作系統(tǒng)來創(chuàng)建集群,不要自己裝 Docker!
- 每個集群節(jié)點(diǎn)應(yīng)該有不同的主機(jī)名,時間同步
- 每個集群節(jié)點(diǎn)都可以訪問網(wǎng)絡(luò)!!!(NAT模式,下面有如何配置)
- 不能說的軟件技術(shù),你應(yīng)該懂我什么意思
sealos 安裝
剛裝的虛擬機(jī)不能直接下載東西,我們選擇自己把包下載下來,然后ftp傳進(jìn)到root目錄。
下載地址:
https://github.com/labring/sealos/releases/download/v4.0.0/sealos_4.0.0_linux_amd64.tar.gz
加到/usr/bin,這樣就可以直接運(yùn)行sealos命令了
tar zxvf sealos_4.0.0_linux_amd64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin
虛擬機(jī)設(shè)置
一定要用比較新的鏡像,最好跟我一樣7.9
版本的centos(CentOS-7-x86_64-Minimal-2009.iso)阿里云下載,用idm一會就下好了
配置如下:
如上配置每個節(jié)點(diǎn)都一樣
網(wǎng)絡(luò)
嚴(yán)格按照我的這個思路來,當(dāng)然網(wǎng)絡(luò)地址可以也不一樣,下面的配置配置好就行!
- master 192.168.24.100
- node1 192.168.24.101
- node2 192.168.24.102
windows網(wǎng)絡(luò)
因?yàn)槲沂切@網(wǎng),橋接不行,容易出現(xiàn)各種bug,這里選NAT
nat的配置很有講究,如下:
win上的vmnet8的網(wǎng)卡設(shè)置為:
虛擬機(jī)的網(wǎng)絡(luò)
網(wǎng)卡配置
DNS1=223.5.5.5為阿里云的dns解析地址
[root@master ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none DEFROUTE=yes NAME=ens33 DEVICE=ens33 ONBOOT=yes IPADDR=192.168.24.100 PREFIX=24 GATEWAY=192.168.24.2 DNS1=223.5.5.5
其他節(jié)點(diǎn)同樣的配置,改改ip即可
其他配置
所有節(jié)點(diǎn)執(zhí)行
systemctl restart network ping 114.114.114.114 ping baidu.com systemctl stop firewalld systemctl disable firealld setenforce 0
RPM 源
本來的yum源不用刪除,直接復(fù)制下面的就行
sudo cat > /etc/yum.repos.d/labring.repo << EOF [fury] name=labring Yum Repo baseurl=https://yum.fury.io/labring/ enabled=1 gpgcheck=0 EOF sudo yum update sudo yum install sealos
四、安裝開始
sealos run labring/kubernetes:v1.24.0 labring/calico:v3.24.1 \ --masters 192.168.64.2,192.168.64.22,192.168.64.20 \ --nodes 192.168.64.21,192.168.64.19 -p 你的虛擬機(jī)密碼
Ok,咱們的K8s集群搭建好了!
好,如果要安裝存儲/消息/數(shù)據(jù)庫相關(guān)的
運(yùn)行如下:
sealos run labring/helm:v3.8.2 # 安裝helm sealos run labring/openebs:v1.9.0 # 安裝openebs sealos run labring/minio-operator:v4.4.16 labring/ingress-nginx:4.1.0 \ labring/mysql-operator:8.0.23-14.1 labring/redis-operator:3.1.4 # 喜歡的話可以把它們寫一起
minio mysql redis 等都是高可用的,跑在 kubernetes 集群之上
OK,大功告成安裝完成!
五、可能遇見的問題
sealos run的時候鏡像下載緩慢
不能說的軟件嘗試,換個好的網(wǎng)絡(luò)環(huán)境
自己用命令先拉取如下:
sealos pull labring/kubernetes-docker:v1.23.12-4.1.3
增加阿里云的源:
六、安裝測試
安裝Kubernetes Dashboard
修改配置文件
下載recommended.yaml
同樣需要開啟不能說的軟件技術(shù)
https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.0/aio/deploy/recommended.yaml
官網(wǎng)安裝方式行不通,使用這種方式進(jìn)行訪問
修改dashboard的yaml文件
注意這里加了type關(guān)鍵字核nodePort
pods運(yùn)行失敗怎么辦?
成功運(yùn)行如下:
運(yùn)行pod之前會先拉取鏡像,拉取鏡像失敗的話,查看改pod運(yùn)行在哪個node上,在對應(yīng)的node上拉取鏡像即可!
1、查看dashboard被k8s分配到了哪一臺機(jī)器上
kubectl get pods --all-namespaces -o wide
2、去該節(jié)點(diǎn)拉取鏡像
使用命令查看哪個鏡像拉取失敗了手動拉取鏡像
即可!
kubectl describe pod name列 -n 命名空間
實(shí)例如下:
kubectl describe pod kubernetes-dashboard-546cbc58cd-zbb55 -n kubernetes-dashboard
去node2節(jié)點(diǎn)用docker拉取鏡像
3、拉取完后,pods會自動重建
可以等pods重建,也可以手動刪除,讓它直接重建
kubectl get deployment -n <namespace> kubectl delete deployment <deployment名> -n <namespace>
創(chuàng)建 ServiceAccount 和 ClusterRoleBinding
kubectl apply -f https://kuboard.cn/install-script/k8s-dashboard/auth.yaml
獲取Bearer Token
kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')
訪問
注意是https
通過集群內(nèi)任一節(jié)點(diǎn)https://IP+30012
即可訪問dashboard
原文鏈接:https://blog.csdn.net/qq_45714272/article/details/127049336
相關(guān)推薦
- 2022-05-22 Python學(xué)習(xí)之os包使用教程詳解_python
- 2022-05-01 oracle刪除超過N天數(shù)據(jù)腳本的方法_oracle
- 2022-04-20 用Python實(shí)現(xiàn)插值算法_python
- 2022-10-30 詳解Objective?C?中Block如何捕獲外部值_IOS
- 2022-06-21 C#實(shí)現(xiàn)XML文件與DataTable、Dataset互轉(zhuǎn)_C#教程
- 2023-07-31 el-tree默認(rèn)展開或折疊,全選或全不選
- 2022-09-15 如何使用注解方式實(shí)現(xiàn)?Redis?分布式鎖_Redis
- 2023-07-25 rollup的五大核心配置
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支