k8s中kubeSphere的安裝使用+阿里云私有鏡像倉庫配置完整步驟

一、實驗目的

1、掌握kubeSphere 的安裝部署

2、掌握kubesphere 使用外部鏡像倉庫;

2、熟悉圖像化部署任務:產生pod---定義服務--驗證訪問

本次實驗旨在通過 KubeSphere 平臺部署基于自定義鏡像(nginx:1.26.0?)的有狀態副本集,以實現 Nginx 服務的容器化部署與管理,熟悉 KubeSphere 中工作負載創建、鏡像拉取、資源配置等操作流程,驗證 Nginx 服務在容器環境下的正常運行及外部可訪問性。

實驗環境

  • 集群環境:KubeSphere 容器平臺,具備多個節點組成的 Kubernetes 集群,節點運行正常且網絡連通性良好。

  • 鏡像倉庫:阿里云容器鏡像服務,已將?nginx:1.26.0?鏡像推送至私有倉庫?crpi-6t100g2gal8ziki7.cn-hangzhou.personal.cr.aliyuncs.com/aliyun230166/apps?。

  • 操作終端:在具備?kubectl?工具且能連接到 KubeSphere 集群的環境中執行命令,同時使用 KubeSphere 控制臺進行可視化操作。

二、實驗內容

配置步驟

1.安裝依賴項

# 安裝必要工具

sudo yum install -y socat conntrack ebtables ipset

# 使用官方腳本安裝 Helm3

curl -fsSL https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

如果安裝不了,看是不是因為污點的問題報錯如上,如果是可以使用下面的命令移除污點

kubectl taint nodes master node-role.kubernetes.io/control-plane:NoSchedule-

安裝 KubeSphere Core(可能需要等待久一點,出現下面的頁面即可)

helm upgrade --install -n kubesphere-system --create-namespace ks-core \

??https://charts.kubesphere.io/main/ks-core-1.1.4.tgz --debug --wait \

??--set global.imageRegistry=swr.cn-southwest-2.myhuaweicloud.com/ks \

??--set extension.imageRegistry=swr.cn-southwest-2.myhuaweicloud.com/ks

#驗證安裝

kubectl get pods -n kubesphere-system -w

kubectl get svc -n kubesphere-system ks-console

#卸載方式

為避免數據丟失,請提前備份所有重要數據。
操作步驟
執行以下命令卸載 KubeSphere。

helm -n kubesphere-system uninstall ks-core

2. 訪問 KubeSphere 控制臺

訪問 KubeSphere 控制臺

開啟端口轉發(本地訪問)

kubectl port-forward --address 0.0.0.0 -n kubesphere-system svc/ks-console 8080:80

訪問地址:http://10.1.1.85:8080

默認賬號密碼:admin/P@88w0rd

如果登錄不了可能是因為進行端口轉發時停止了命令,或者瀏覽器緩存問題,可以通過快捷鍵shift+ctrl+delete進行刪除瀏覽記錄。

初次登錄會讓你修改密碼,根據提示修改密碼

登錄成功如下:

報錯補充:

如果一直登錄不了或者刷新頁面不了,可能是因為停止了端口轉發

確認端口轉發正常運行

  • 檢查kubectl port-forward命令是否仍在運行,若已停止需重新執行:
  • kubectl port-forward --address 0.0.0.0 -n kubesphere-system svc/ks-console 8080:80
  • netstat -tulpn | grep 8080 # 應看到類似輸出:tcp 0 0 0.0.0.0:8080 ... kubectl
  • kill -9 21006? #殺死舊進程
  • netstat -tulpn | grep 8080 #確認是否殺死,釋放端口,再執行開放端口命令
  • kubectl port-forward --address 0.0.0.0 -n kubesphere-system svc/ks-console 8080:80

3.配置私有鏡像倉庫(以阿里云為例)

阿里云登錄 - 歡迎登錄阿里云,安全穩定的云計算服務平臺當kubesphere自帶的鏡像地址不能獲取鏡像時,就需要用自建的鏡像倉庫地址或阿里鏡像倉庫地址。

(1)點擊鏈接登錄阿里云,進入以下界面

阿里云登錄 - 歡迎登錄阿里云,安全穩定的云計算服務平臺

進入控制臺進行實名認證

阿里云登錄 - 歡迎登錄阿里云,安全穩定的云計算服務平臺

(2)點擊上述鏈接,進入容器鏡像服務創建個人版實例

(3)個人實例配置

設置Registry登錄密碼

(4)創建命名空間(全網獨一無二,個人版命名空間最多可創建3個)

(5)設置訪問憑證(點擊訪問憑證然后點擊設置固定密碼)

(6)創建鏡像倉庫

創建成功效果如下

(7)私倉使用

使用docker拉取鏡像

docker pull nginx:1.26.0

使用docker images查看

虛擬機登錄私有倉庫

docker login --username=nick7182281059 crpi-6t100g2gal8ziki7.cn-hangzhou.personal.cr.aliyuncs.com

輸入私倉密碼,出現“Login Succeeded”表示登錄成功,如果報錯可能是網絡的問題。

為nginx:1.26.0打標簽

# 使用鏡像ID添加標簽(推薦方式)

docker tag 94543a6c1aef crpi-6t100g2gal8ziki7.cn-hangzhou.personal.cr.aliyuncs.com/aliyun230166/apps:nginx-1.26.0

# 或者使用鏡像名添加標簽 docker tag nginx:1.26.0 crpi-6t100g2gal8ziki7.cn-hangzhou.personal.cr.aliyuncs.com/aliyun230166/apps:nginx-1.26.0

推送鏡像至阿里云容器鏡像服務

# 先登錄阿里云容器鏡像服務(如果未登錄)

docker login --username=nick7182281059 crpi-6t100g2gal8ziki7.cn-hangzhou.personal.cr.aliyuncs.com

# 推送鏡像 docker push crpi-6t100g2gal8ziki7.cn-hangzhou.personal.cr.aliyuncs.com/aliyun230166/apps:nginx-1.26.0

在阿里云鏡像倉庫apps里面查看

從阿里云私有倉庫拉取鏡像

# 刪除nginx:1.26.0

docker rmi nginx:1.26.0

# 拉取鏡像(使用完整的倉庫路徑和標簽)

docker pull crpi-6t100g2gal8ziki7.cn-hangzhou.personal.cr.aliyuncs.com/aliyun230166/apps:nginx-1.26.0

# 驗證拉取

docker images | grep nginx

# 應看到類似輸出: # crpi-6t100g2gal8ziki7.cn-hangzhou.personal.cr.aliyuncs.com/aliyun230166/apps nginx-1.26.0 94543a6c1aef 12 months ago 188MB

4.應用部署

(1)準備工作:

有兩種方式創建密鑰

使用命令:已創建鏡像拉取密鑰

kubectl create secret docker-registry aliyun-registry \--docker-server=crpi-6t100g2gal8ziki7.cn-hangzhou.personal.cr.aliyuncs.com \--docker-username=nick7182281059 \--docker-password=@Hn230166 \-n default# 進行驗證
kubectl get secrets -n default | grep aliyun-registry
# 應看到類似輸出:
# aliyun-registry    kubernetes.io/dockerconfigjson   1      5m

或者可以選擇頁面創建保密字典,二選一即可

填寫名稱(如?aliyun-registry?)

選擇項目(如?default?項目 )

數據設置(選擇鏡像服務信息)

下面這個地址就是鏡像服務地址

(2)在 KubeSphere 控制臺配置鏡像倉庫

創建有狀態副本集

基本信息

名稱:?nginx-demo
別名:nginx-hn,可根據需要填寫,也可留空。
項目:?default
描述:可按需填寫對該部署的描述信息,也可留空。

點擊下一步。

注意這個查找的目錄:

阿里云的命名空間/倉庫名稱:鏡像版本

容器和服務的端口都寫80

測試環境存儲設置可以不搞,直接下一步就好

創建成功效果圖

三、實驗結論

1.KubeSphere 優勢:

提供圖形化界面,簡化 Kubernetes 集群管理。

支持多租戶和擴展組件,適合企業級應用場景。

2.挑戰與改進:

初始安裝需嚴格滿足環境要求(如端口開放、依賴項安裝)。

私有鏡像倉庫配置需注意權限和鏡像命名規則。

部署成功驗證:通過一系列配置和操作,成功在 KubeSphere 平臺上創建了基于自定義 Nginx 鏡像的有狀態副本集,并關聯相應服務,實現了 Nginx 服務的容器化部署。在瀏覽器或使用?curl?命令訪問指定地址時,能夠看到 Nginx 歡迎頁面,表明 Nginx 服務正常運行,達到了實驗預期目的。

關鍵要點總結

鏡像拉取密鑰:正確創建并關聯鏡像拉取密鑰是從私有鏡像倉庫成功拉取鏡像的關鍵,否則會出現 “找不到鏡像” 等錯誤。

資源配置:合理設置容器資源配額(CPU 和內存 )、健康檢查等高級設置項,有助于保障服務的穩定運行和可靠性。

網絡與權限:確保集群節點與鏡像倉庫的網絡連通性,以及賬號在鏡像倉庫具備拉取權限,是順利完成部署的重要前提。

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

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

相關文章

STM32單片機簡介

1.基本情況 STM32單片機正如其名是32位微控制器,相較于51單片機的8位微控制器,性能會更好,但學習難度也會提高。 在stm32單片機中內核時核心部分,是ARM公司設計的,其在stm32單片機中占據極為重要的地位。(程序指令的…

GESP】C++一級考試大綱知識點梳理(1)

計算機基礎和操作系統 GESP C++一級官方考試大綱中,除可通過編碼掌握的Dev C++開發工具的使用和C++編程基礎語法知識外(考綱2-13),還涉及計算機基礎知識的要求(考綱1): (1)了解計算機的基本構成(CPU,內存,I/O 設備等) ,了解 Windows、Linux等操作系統基本概念和常…

淺談 JavaScript 性能優化

文章目錄 概要一、代碼執行優化1. 減少全局變量訪問2. 避免不必要的計算3. 優化循環操作 二、內存管理優化1. 減少內存泄漏2. 對象池與內存復用 三、渲染性能優化1. 避免強制同步布局2. 減少 DOM 操作3. 優化動畫與合成 四、網絡加載優化1. 代碼壓縮與 Tree Shaking2. 按需加載…

mongodb nosql數據庫筆記

MongoDB 簡介 MongoDB 是一個開源的 NoSQL 數據庫,采用文檔存儲模型(BSON 格式,類似 JSON),支持高靈活性、水平擴展和高性能的數據操作。與傳統關系型數據庫(如 MySQL)不同,MongoDB…

Flutter實現不規則瀑布流布局拖拽重排序

因為業務,所以需要用flutter去實現一種不規則圖形的瀑布流,但是同時需要支持拖拽并重新排序。效果類似如下。 查詢過現有的插件,要么是僅支持同樣大小的組件進行排序,要么就是動畫效果不是很滿意,有點死板,…

微信小程序(uniapp)實現騰訊云 IM 消息撤回

uniapp 實現騰訊云 IM 消息撤回功能實戰指南 一、功能實現原理 騰訊云 IM 的消息撤回功能通過 消息修訂(Message Revision) 機制實現,核心流程如下: 發送方調用撤回 API 刪除指定消息云端生成撤回通知消息(類型為 T…

AI入門示例

市面上有很多AI大模型,這里以 智譜的大模型 為示例 1.先要注冊智譜AI開放平臺 2.注冊成功后,會贈送3個月的免費額度,如下 3.然后去控制臺,創建一個API KEY 4.接著就可以開始寫代碼了 提前導入包: openai 示例1&…

【數據結構】單鏈表練習

1.鏈表的中間節點 https://leetcode.cn/problems/middle-of-the-linked-list/description/ 用快慢指針來解決 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* middleNode(struct ListNode* he…

嘗鮮純血鴻蒙,華為國際版本暫時不支持升級。如mateX6 國際版?為什么不支持?什么時候支持?

一:mateX6 國際版支持鴻蒙嗎? 不支持 二:華為國際版支持鴻蒙嗎? 不支持 三:華為國際版什么時候支持? 2025年預期可以支持。請耐心等待。 三:國際版為什么不支持? EMUI 采用AO…

Spring Boot的啟動流程,以及各個擴展點的執行順序

目錄 1. 初始化階段執行順序 1.1 Bean的構造方法(構造函數) 1.2 PostConstruct 注解方法 1.3 InitializingBean 的 afterPropertiesSet() 1.4 Bean(initMethod "自定義方法") 2. 上下文就緒后的擴展點 2.1 ApplicationContext 事件監聽…

刀具問題討論

1 刀具的問題概述 問題描述 一道工序用自動化車床連續加工某種零件,由于刀具損壞等原因該工序會出現故障,其中刀具損壞故障占95%, 其它故障僅占 5%。工序出現故障是完全隨機的, 假定在生產任一零件時出現故障的機會均相同。工作人員通過檢查零件來確定…

vite配置一個css插件

vite.config.js的plugins執行函數 該例子只是替換一些css,具體內容不重要,主要看形參的運用 // vite-plugin-css.js export default function cssPlugin() {return {name: vite-plugin-css-post, // 插件的名字,Vite 插件必須有名字enforce: post, // 設定插件執…

?1.1.1 按位與運算替代求余運算優化場景

在計算機編程中,使用按位與運算(&)替代求余運算(%)可以提高效率的特殊場景是:當除數是 2 的整數次冪(即 ( b 2^n ),其中 ( n ) 為自然數)時。例如,( b …

CentOS 7 環境中部署 LNMP(Linux + Nginx + MySQL 5.7 + PHP)

在 CentOS 7 環境中部署 LNMP(Linux Nginx MySQL 5.7 PHP) 環境的詳細步驟如下。此方案確保各組件版本兼容,并提供完整的配置驗證流程。 1. 更新系統 sudo yum update -y 2. 安裝 MySQL 5.7 2.1 添加 MySQL 官方 YUM 倉庫 由于MySQL并不…

UniApp微信小程序自定義導航欄實現

UniApp微信小程序自定義導航欄 在UniApp開發微信小程序時,頁面左上角默認有一個返回按鈕(在導航欄左側),但有時我們需要自定義這個按鈕的樣式和功能,同時保持與導航欄中間的標題和右側膠囊按鈕(藥丸屏&…

Java大師成長計劃之第35天:未來展望與個人總結

引言 作為一門歷史悠久的編程語言,Java自1995年問世以來,經歷了多個版本的迭代與演進,依然在當今技術生態中占據著重要地位。從早期的Java SE、Java EE到后來的Java Spring框架,再到現代的微服務架構與云原生應用,Jav…

Ubuntu開機自動運行Docker容器中的Qt UI程序

Ubuntu開機自動運行Docker容器中的Qt UI程序 引言為什么需要這樣配置?解決方案概覽詳細實現步驟1. 創建容器啟動腳本2. 創建系統服務3. 配置自動登錄和顯示設置常見問題解決方案1. 程序無法顯示(X11權限問題)2. 分辨率設置不生效3. 服務啟動失敗安全注意事項結語附錄:完整文…

Scratch節日 | 龍舟比賽 | 端午節

端午節快樂! 這款專為孩子們打造的Scratch游戲——《龍舟比賽》,讓你在掌控龍舟的競速中,沉浸式體驗中華傳統節日的魅力! 🎮 游戲亮點 節日氛圍濃厚:化身龍舟選手,在波濤洶涌的河流中展開刺激競…

(五)MMA(OpenTelemetry/Rabbit MQ/ApiGateway/MongoDB)

文章目錄 項目地址一、OpenTelemetry1.1 配置OpenTelemetry1. 服務添加2. 添加服務標識3. 添加請求的標識4. 添加中間價 二、Rabbit MQ2.1 配置Rabbit MQ1. docker-compose2. 添加Rabbit MQ的Connect String 2.2 替換成Rabbit MQ1. 安裝所需要的包2. 使用 三、API Gateways3.1 …

格恩朗超聲波水表 助力農業精準灌溉與振興?

在農業現代化的征程中,水資源的精準利用至關重要,而這離不開高精度計量設備的支持。大連格恩朗品牌積極響應國家全面推進鄉村振興、加快農業農村現代化的號召,精心打造的超聲波水表,憑借其超高精度,成為綠色灌溉領域的…