【kubernetes】在k8s集群環境上,部署kubesphere

部署kubesphere

學習于尚硅谷kubesphere課程

前置環境配置-部署默認存儲類型

這里使用nfs

#所有節點安裝
yum install -y nfs-utils
# 在master節點執行以下命令 
echo "/nfs/data/ *(insecure,rw,sync,no_root_squash)" > /etc/exports
# 執行以下命令,啟動 nfs 服務;創建共享目錄
mkdir -p /nfs/data
# 在master執行
systemctl enable rpcbind
systemctl enable nfs-server
systemctl start rpcbind
systemctl start nfs-server
# 使配置生效
exportfs -r
#檢查配置是否生效
exportfs

在這里插入圖片描述

#在從節點執行(選做)
showmount -e 192.168.8.11
mkdir -p /nfs/data
mount -t nfs 192.168.8.11:/nfs/data /nfs/data

配置存儲,注意修改nfs服務的IP
在這里插入圖片描述

#創建sc.yaml,
kubectl apply -f sc.yaml##確認配置是否生效
kubectl get sc

sc.yaml

## 創建了一個存儲類
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:name: nfs-storageannotations:storageclass.kubernetes.io/is-default-class: "true"
provisioner: k8s-sigs.io/nfs-subdir-external-provisioner
parameters:archiveOnDelete: "true"  ## 刪除pv的時候,pv的內容是否要備份---
apiVersion: apps/v1
kind: Deployment
metadata:name: nfs-client-provisionerlabels:app: nfs-client-provisioner# replace with namespace where provisioner is deployednamespace: default
spec:replicas: 1strategy:type: Recreateselector:matchLabels:app: nfs-client-provisionertemplate:metadata:labels:app: nfs-client-provisionerspec:serviceAccountName: nfs-client-provisionercontainers:- name: nfs-client-provisionerimage: registry.cn-hangzhou.aliyuncs.com/lfy_k8s_images/nfs-subdir-external-provisioner:v4.0.2# resources:#    limits:#      cpu: 10m#    requests:#      cpu: 10mvolumeMounts:- name: nfs-client-rootmountPath: /persistentvolumesenv:- name: PROVISIONER_NAMEvalue: k8s-sigs.io/nfs-subdir-external-provisioner- name: NFS_SERVERvalue: 192.168.8.11 ## 指定自己nfs服務器地址- name: NFS_PATH  value: /nfs/data  ## nfs服務器共享的目錄volumes:- name: nfs-client-rootnfs:server: 192.168.8.11path: /nfs/data
---
apiVersion: v1
kind: ServiceAccount
metadata:name: nfs-client-provisioner# replace with namespace where provisioner is deployednamespace: default
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:name: nfs-client-provisioner-runner
rules:- apiGroups: [""]resources: ["nodes"]verbs: ["get", "list", "watch"]- apiGroups: [""]resources: ["persistentvolumes"]verbs: ["get", "list", "watch", "create", "delete"]- apiGroups: [""]resources: ["persistentvolumeclaims"]verbs: ["get", "list", "watch", "update"]- apiGroups: ["storage.k8s.io"]resources: ["storageclasses"]verbs: ["get", "list", "watch"]- apiGroups: [""]resources: ["events"]verbs: ["create", "update", "patch"]
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:name: run-nfs-client-provisioner
subjects:- kind: ServiceAccountname: nfs-client-provisioner# replace with namespace where provisioner is deployednamespace: default
roleRef:kind: ClusterRolename: nfs-client-provisioner-runnerapiGroup: rbac.authorization.k8s.io
---
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:name: leader-locking-nfs-client-provisioner# replace with namespace where provisioner is deployednamespace: default
rules:- apiGroups: [""]resources: ["endpoints"]verbs: ["get", "list", "watch", "create", "update", "patch"]
---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:name: leader-locking-nfs-client-provisioner# replace with namespace where provisioner is deployednamespace: default
subjects:- kind: ServiceAccountname: nfs-client-provisioner# replace with namespace where provisioner is deployednamespace: default
roleRef:kind: Rolename: leader-locking-nfs-client-provisionerapiGroup: rbac.authorization.k8s.io

在這里插入圖片描述

部署kubesphere

#下載安裝配置文件
wget https://github.com/kubesphere/ks-installer/releases/download/v3.1.1/kubesphere-installer.yaml
wget https://github.com/kubesphere/ks-installer/releases/download/v3.1.1/cluster-configuration.yaml
#無需修改,直接apply
kubectl apply -f kubesphere-installer.yaml#需要修改一些配置 啟用所需插件,修改網絡策略等
kubectl apply -f cluster-configuration.yaml#查看kubesphere安裝狀態
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f#等待安裝完成即可,過程有點漫長

在這里插入圖片描述

#查看一下,是否有pod非running狀態
kubectl get pod -A

在這里插入圖片描述

#查看一下pod,未running的原因
kubectl describe pod  -n kubesphere-monitoring-system prometheus-k8s-0
kubectl describe pod  -n kubesphere-monitoring-system prometheus-k8s-1
kubectl describe pod  -n kubesphere-system openpitrix-import-job-8qczq

在這里插入圖片描述

#解決上面的問題
kubectl -n kubesphere-monitoring-system create secret generic kube-etcd-client-certs  --from-file=etcd-client-ca.crt=/etc/kubernetes/pki/etcd/ca.crt  --from-file=etcd-client.crt=/etc/kubernetes/pki/apiserver-etcd-client.crt  --from-file=etcd-client.key=/etc/kubernetes/pki/apiserver-etcd-client.key

等會再看看pod狀態。

測試訪問kubesphere

在這里插入圖片描述

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

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

相關文章

QML與C++交互

目錄 1 QML獲取C的變量值 2 QML獲取C創建的自定義對象 3 QML發送信號綁定C端的槽 4 C端發送信號綁定qml端槽 5 C調用QML端函數 1 QML獲取C的變量值 QQmlApplicationEngine engine; 全局對象 上下文屬性 QQmlApplicationEngine engine; QQmlContext *context1 engine.…

flowable流程移植新項目前端問題匯總

flowable流程移植到新項目時,出現一些前端問題,匯總如下: PS F:\khxm\NBCIO_VUE> yarn run serve yarn run v1.21.1 $ vue-cli-service serve INFO Starting development server... ERROR Error: Vue packages version mismatch: -…

25 | 葡萄酒質量數據分析

基于kaggle提供的公開數據集,對全球葡萄酒分布情況和質量情況進行數據探索和分析 from kaggle: https://www.kaggle.com/zynicide/wine-reviews 分析思路: 0、數據準備 1、葡萄酒的種類 2、葡萄酒質量 3、葡萄酒價格 4、葡萄酒描述詞庫 5、品鑒師信息 6、總結 0、數據準備 …

學習Vue:組件的概念和優勢

在現代的前端開發中,組件化開發是一種重要的方法,它可以將復雜的應用程序拆分成多個獨立的、可復用的組件。Vue.js 是一個流行的前端框架,它支持組件化開發,讓開發者能夠更輕松地構建和維護復雜的用戶界面。在本文中,我…

計算機組成部分

計算機的五大部件是什么?答案:計算機的五大部件是運算器,控制器,存儲器,輸入設備和輸出設備。 其中運算器和控制器合稱中央處理器,是計算機的核心部件; 存儲器是用來存儲程序指令和數據用的&am…

修改第三方組件默認樣式

深度選擇器 修改el-input的樣式&#xff1a; <el-input class"input-area"></el-input>查看DOM結構&#xff1a; 原本使用 /deep/ 但是可能不兼容 使用 :deep .input-area {:deep(.el-input__inner){background-color: blue;} }將 input 框背景色改為…

【Kubernetes】Kubernetes的Pod進階

Pod進階 一、資源限制和重啟策略1. 資源限制2. 資源單位2.1 CPU 資源單位2.2 內存 資源單位 3. 重啟策略&#xff08;restartPolicy&#xff09; 二、健康檢查的概念1. 健康檢查1.1 探針的三種規則1.2 Probe 支持三種檢查方法 2. 示例2.1 exec 方式2.2 httpGet 方式2.3 tcpSock…

臨床試驗三原則-對照、重復、隨機

臨床試驗必須遵循三個基本原則&#xff1a;對照、重復、隨機。 一、對照原則和對照的設置 核心觀點&#xff1a;有比較才有鑒別。 對照組和試驗組同質可比。 三臂試驗 安慰劑&#xff1a;試驗組&#xff1a;陽性對照組1&#xff1a;n&#xff1a;m&#xff08;n≥m&#xff…

FFmpeg常見命令行(五):FFmpeg濾鏡使用

前言 在Android音視頻開發中&#xff0c;網上知識點過于零碎&#xff0c;自學起來難度非常大&#xff0c;不過音視頻大牛Jhuster提出了《Android 音視頻從入門到提高 - 任務列表》&#xff0c;結合我自己的工作學習經歷&#xff0c;我準備寫一個音視頻系列blog。本文是音視頻系…

Nginx反向代理服務流式輸出設置

Nginx反向代理服務流式輸出設置 1.問題場景 提問&#xff1a;為什么我部署的服務沒有流式響應 最近在重構原有的GPT項目時&#xff0c;遇到gpt回答速度很慢的現象。在使用流式輸出的接口時&#xff0c;接口響應速度居然還是達到了30s以上。 2.現象分析 分析現象我發現&…

Leetcode鏈表篇 Day3

.24. 兩兩交換鏈表中的節點 - 力扣&#xff08;LeetCode&#xff09; 1.構建虛擬結點 2.兩兩一組&#xff0c;前繼結點一定在兩兩的前面 3.保存結點1和結點3 19. 刪除鏈表的倒數第 N 個結點 - 力扣&#xff08;LeetCode&#xff09; 1.雙指針&#xff1a;快慢指針 兩個指針的差…

新能源汽車需要檢測哪些項目

截至2022年底&#xff0c;中國新能源車保有量達1310萬輛&#xff0c;其中純電動汽車保有量1045萬輛。為把好新能源汽車安全關&#xff0c;我國新能源汽車除了完善的強制性產品認證型式實驗外&#xff0c;還建立了“車企-地方-國家”逐級上報的三級監管體系實行新能源汽車全生命…

2023.8.14論文閱讀

文章目錄 ESPNet: Efficient Spatial Pyramid of Dilated Convolutions for Semantic Segmentation摘要本文方法實驗結果 DeepFusion: Lidar-Camera Deep Fusion for Multi-Modal 3D Object Detection摘要本文方法實驗結果 ESPNet: Efficient Spatial Pyramid of Dilated Convo…

vue 路由地址把#去掉

在路由對象里邊添加history模式就不顯示# mode:history // 4.通過規則創建對象 const router new VueRouter({routes,// 默認模式為hash 帶# // history 不帶#mode:history })想把端口號8000換成其他的 比如我這樣的3000更換端口號教程

Android Framework 動態更新插拔設備節點執行權限

TF卡設備節點是插上之后動態添加&#xff0c;所以不能通過初始化設備節點權限來解決&#xff0c;需要監聽TF插入事件&#xff0c;在init.rc 監聽插入后動態更新設備節點執行權限 添加插拔TF卡監聽 frameworks/base/services/core/java/com/android/server/StorageManagerServic…

IL匯編ldc指令學習

ldc指令是把值送到棧上&#xff0c; 說明如下&#xff0c; ldc.i4 將所提供的int32類型的值作為int32推送到計算堆棧上&#xff1b; ldc.i4.0 將數值0作為int32推送到計算堆棧上&#xff1b; ... ldc.i4.8 將數值8作為int32推送到計算堆棧上&#xff1b; ldc.i4.m1 將數值-…

Stable Diffusion 告別復制關鍵詞,高質量提示詞自動生成插件

在使用SD時,我們經常會遇到心中無想法,或不知如何描述心中所想的圖像。有時由于提示詞的選擇不當,生成的圖片質量也不盡如人意。為此,我今天為大家推薦一個高質量的提示詞自動生成插件——One Button Prompt。 下面是他生成的一些樣圖。 文章目錄 插件安裝插件說明主菜單工…

用python繪制CDF圖

一、code import os.pathimport pandas as pd import numpy as np import matplotlib.pyplot as pltcsv_path r"XXX.csv" save_fig_path os.path.join(os.path.split(csv_path)[0], "metrics_cdf.png")# 從CSV讀取數據 data pd.read_csv(csv_path)[XXX…

Android 屏幕適配資源xml的配置方法

在 Android 中進行屏幕適配是確保應用在不同設備上正常顯示的重要步驟之一。資源文件夾的配置是實現屏幕適配的關鍵之一&#xff0c;以下是一些常見的資源文件夾配置方法&#xff0c;以適應不同屏幕尺寸和密度。 不同屏幕尺寸的適配&#xff1a; res/layout&#xff1a;通常存放…

使用vscode進行遠程調試

官方調試手冊&#xff1a;vscode官方調試手冊 1.安裝python擴展 如果是遠程連接的話&#xff0c;一定要在ssh上啟用擴展。不然創建基于python的配置文件時就會提示&#xff0c;無python擴展。 2.新建配置文件&#xff0c;并修改參數 點擊左側第四個按鈕&#xff0c;運行與調試…