網站首頁 編程語言 正文
virtualbox創建k8s集群(兩分鐘完成)
- 背景
- 步驟
- 1、安裝virtualbox軟件
- 2、從百度云下載該k8s集群的voa文件
- 3、選擇導入虛擬電腦,將剛才下載的voa文件導入進來
- 4、啟動三臺虛擬機
- 5、使用MobaXterm等遠程連接工具連接上三臺k8s節點
- 6、嘗試使用k8s部署pod
- 結尾
背景
之前在學習k8s的時候,就因為這個創建k8s的三節點集群,耽誤了好幾個月的時間,因為文檔不論怎么看,都不如實操來得實在,光看文檔也不會有什么理解和體會,所以相信大多數人學習k8s時,都希望能夠直接操作k8s集群吧?
但是集群創建,對于毫無經驗的人來說,稍微有一個地方錯了,便會卡死不知道待怎么辦,我當初也是為了這個連續熬了好幾個星期,并且即使在這臺電腦上創建成功了,在另外一臺電腦上再次創建時,依然不知道要怎么操作。
因此,我把我的k8s集群,導出成了虛擬電腦,那么你只需要下載一個virtualbox軟件,再導入虛擬電腦,直接完成集群的創建,可以直接使用
步驟
1、安裝virtualbox軟件
這一步基本上不需要說什么,直接在網上或者軟件管家搜索virtualBox,按照提示安裝下來就行
2、從百度云下載該k8s集群的voa文件
鏈接:https://pan.baidu.com/s/1kwVG921gzsvgajZMv8oM9Q
提取碼:jp77
由于百度網盤限制大小4GB,所以把他分成了兩個壓縮包上傳,解壓后就是下面的 虛擬電腦.voa
3、選擇導入虛擬電腦,將剛才下載的voa文件導入進來
打開virtualBox,選擇 管理->導入虛擬電腦
1、選擇剛才下號的虛擬電腦文件
2、MAC地址設定選擇 包含所有網卡的MAC地址
3、點擊導入,便可以等待導入完成
4、啟動三臺虛擬機
當可以看到virtualbox的界面上就會多出這三個虛擬機出來,那就是導入成功了,直分別點擊無界面啟動就好了。
如果顯示無法啟動,那就重啟一下電腦,一般就可以啟動。
重啟電腦之后還不能啟動的話,應該是電腦沒有開啟硬盤虛擬化,可以直接百度搜索電腦虛擬化,進入bios界面將電腦的虛擬化打開即可。
5、使用MobaXterm等遠程連接工具連接上三臺k8s節點
連接下面三個節點:
k8s-node1 192.168.56.100
k8s-node2 192.168.56.101
k8s-node3 192.168.56.102
賬號為root
密碼為vagrant
連接好后執行 kubectl get nodes,可以看到已經有三個節點的集群出現了
連接上k8s-node1 ,這是個控制節點,任何k8s相關命令操作可以再這個節點上執行
6、嘗試使用k8s部署pod
接著部署一個nginx-deployment.yaml ,可以看到最后node-2和node-3節點上成功部署出了兩個Pod。
[root@k8s-node1 ~]# ls
anaconda-ks.cfg get_helm.sh kube-flannel.yml mytestyaml original-ks.cfg
cluster-configuration.yaml helm-v2.17.0-linux-amd64.tar.gz.asc kubesphere-installer.yaml openebs-operator-1.5.0.yaml testnamespaces.yaml
[root@k8s-node1 ~]# cd mytestyaml
[root@k8s-node1 mytestyaml]# ls
mysql-rc.yaml nginx-deployment.yaml nginx-headless-service.yaml nginx-pod.yaml nginx-service2.yaml nginx-service.yaml wide
[root@k8s-node1 mytestyaml]# kubectl apply -f nginx-deployment.yaml
deployment.apps/nginx-deployment created
[root@k8s-node1 mytestyaml]# kubectl get pods -o wide
No resources found in default namespace.
[root@k8s-node1 mytestyaml]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
nginx-deployment-85ff79dd56-5m2xm 0/1 ContainerCreating 0 17s <none> k8s-node3 <none> <none>
[root@k8s-node1 mytestyaml]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
nginx-deployment-85ff79dd56-5m2xm 1/1 Running 0 63s 10.244.2.96 k8s-node3 <none> <none>
nginx-deployment-85ff79dd56-9gb9p 1/1 Running 0 53s 10.244.1.107 k8s-node2 <none> <none>
[root@k8s-node1 mytestyaml]#
結尾
期望可以幫到你成功的創建k8s集群,大家可以在下面留言交流
原文鏈接:https://blog.csdn.net/weixin_44228698/article/details/123695365
相關推薦
- 2023-05-07 numpy.concatenate函數用法詳解_python
- 2023-01-30 uniapp語音識別(訊飛語音)轉文字_其它相關
- 2022-07-14 C++深入探索類和對象之封裝及class與struct的區別_C 語言
- 2022-04-03 Android實現recyclerview城市字母索引列表_Android
- 2022-10-05 react-router-dom入門使用教程(前端路由原理)_React
- 2022-07-04 python實現PyEMD經驗模態分解殘差量分析_python
- 2023-01-10 Vmware虛擬機設置主機端口映射方式_VMware
- 2023-11-11 flask python 設置定時任務 flask 周期性執行任務方案
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支