当前位置: 首页 > news >正文

Kubernetes-1.22.0 可视化部署

目录

        Kubeadm方式部署3master,2work集群(Kubernetes-1.22.0)-CSDN博客

1. 官方Dashboard

2. Kuboard 部署

3. Rainbond 部署

4. Kubesphere 部署


1. 官方Dashboard

kubectl apply -f https://kuboard.cn/install-script/k8s-dashboard/v2.0.0-beta5.yaml
或使用
# kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta5/aio/deploy/recommended.yaml# 以上两个命令等价的,看你能访问哪个yaml文件
[root@kub-k8s-master1 ~]# kubectl edit svc kubernetes-dashboard -n kubernetes-dashboard
# 注意将 type: ClusterIP 改为 type: NodePort

[root@kub-k8s-master1 ~]# kubectl get svc -A |grep kubernetes-dashboard
kubernetes-dashboard   dashboard-metrics-scraper   ClusterIP   10.108.232.82   <none>        8000/TCP                 4m32s
kubernetes-dashboard   kubernetes-dashboard        NodePort    10.99.188.251   <none>        443:30155/TCP            4m32s

创建访问账号,准备一个yaml文件 vi dash.yaml 

[root@kub-k8s-master1 ~]# vi dash.yaml
apiVersion: v1
kind: ServiceAccount
metadata:name: admin-usernamespace: kubernetes-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:name: admin-user
roleRef:apiGroup: rbac.authorization.k8s.iokind: ClusterRolename: cluster-admin
subjects:
- kind: ServiceAccountname: admin-usernamespace: kubernetes-dashboard
[root@kub-k8s-master1 ~]# kubectl apply -f dash.yaml

获取访问令牌token

[root@kub-k8s-master1 ~]# kubectl -n kubernetes-dashboard get secret $(kubectl -n kubernetes-dashboard get sa/admin-user -o jsonpath="{.secrets[0].name}") -o go-template="{{.data.token | base64decode}}"
eyJhbGciOiJSUzI1NiIsImtpZCI6IjZ2ZFVLalpIenZvYXVTX2V5bHhVaHF0eHZhZUZWVDZZY2hnWjg0MVVPQWsifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLXM4dHNnIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiIwNjY1ZGUyYy0zNTZmLTQ1ZDAtYjYyNC01MTgzNjkxMzg3MDAiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZXJuZXRlcy1kYXNoYm9hcmQ6YWRtaW4tdXNlciJ9.gK8503FaqyeN0lnPhAMleipCL0eSNV33s7hFLlEXq-yOfo_ywrJXxJk_4R1ttnJ3tVTCgBMPQubmkKpcUmi4KMnVkt8RIGSrMgiWWDujlkm-sykG1bZtvuGkB9vPzDKnIANhNuvwSRTO6ngyk-_DMOoajRQsmMJU8uJsFSJtDsToN8d40plhpcfhEEsgFJ2YNCKVZ0phSr7HTF_ep_BcROGUEi65zS9Tf-DumfilA1QcejMOzveFiCBWubnol1utPkfLhCS53oN2aqwkNr4MnRPG6hux1QwIbaWW8Cst5qOeqr5_0OXFHBLMB4wrpnJLwYV_5nzw4Ucxy_baiufQSw

浏览器访问

任意节点ip+端口[上面查看到为30155]  例如我这里访问:https://192.168.226.154:30155/

 当看到不安全提示,键盘输入  thisisunsafe  输入后会自动跳转登陆页

 

卸载方式:

kubectl delete -f dash.yaml
kubectl delete -f https://kuboard.cn/install-script/k8s-dashboard/v2.0.0-beta5.yaml
kubectl delete -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml
rm -rf dash.yaml

2. Kuboard 部署

仅需在kub-k8s-master1上执行即可

安装命令 

# 从指定的 URL 下载 YAML 文件,并使用 kubectl 将该文件定义的资源应用到 Kubernetes 集群中。
# 这个命令用于部署 Kuboard,这是一个 Kubernetes 可视化管理工具。
# YAML 文件中可能包括 Deployment、Service、ConfigMap 等 Kubernetes 资源的定义。
kubectl apply -f https://addons.kuboard.cn/kuboard/kuboard-v3.yaml
# 也可以使用下面的指令,唯一的区别是,该指令使用华为云的镜像仓库替代 docker hub 分发 Kuboard 所需要的镜像
# kubectl apply -f https://addons.kuboard.cn/kuboard/kuboard-v3-swr.yaml# 获取并显示 `kuboard` 命名空间中的所有 Pod 的状态信息。
# 这将列出在 `kuboard` 命名空间中运行的所有 Pod,包括它们的名称、状态、准备情况、重启次数和运行时间。
# 该命令帮助确认 Kuboard 服务是否正常运行。
kubectl get pod -n kuboard# 获取并显示 `kuboard` 命名空间中的所有 Service 的状态信息。
# 这将列出在 `kuboard` 命名空间中创建的所有 Service,包括它们的名称、类型、ClusterIP、外部IP、端口和目标。
# 该命令帮助确认 Kuboard 服务是否已成功创建,并了解它们的访问方式。
kubectl get svc -n kuboard

 浏览器访问这个地址就是负载均衡IP+端口:http://192.168.226.151:30080/

默认用户名:admin    初始化密码: Kuboard123

使用文档:安装 Kuboard v3 - kubernetes | Kuboard

 

卸载kuboard方式: 

从 Kubernetes 集群中删除 Kuboard 相关的所有资源。这会删除与指定 YAML 文件相关联的所有 Kubernetes 对象

kubectl delete -f https://addons.kuboard.cn/kuboard/kuboard-v3.yaml

3. Rainbond 部署

官方网站:Rainbond

官方文档:快速安装 | Rainbond

运行安装,仅需在kub-k8s-master1主机运行即可,安装时会提示你选择IP,直接回车默认即可。

curl -o install.sh https://get.rainbond.com && bash ./install.sh

执行完上述脚本后,耐心等待 3-5 分钟,可以看到如下日志输出,表示 Rainbond 已启动完成

浏览器访问终端提示的地址:http://192.168.226.151:7070

注册初始化管理员用户 

 

卸载方式:

# Delete PVC
kubectl get pvc -n rbd-system | grep -v NAME | awk '{print $1}' | xargs kubectl delete pvc -n rbd-system# Delete PV
kubectl get pv | grep rbd-system | grep -v NAME | awk '{print $1}' | xargs kubectl delete pv# Delete CRD
kubectl delete crd componentdefinitions.rainbond.io \
helmapps.rainbond.io \
rainbondclusters.rainbond.io \
rainbondpackages.rainbond.io \
rainbondvolumes.rainbond.io \
rbdcomponents.rainbond.io \
servicemonitors.monitoring.coreos.com \
thirdcomponents.rainbond.io \
rbdabilities.rainbond.io \
rbdplugins.rainbond.io \
servicemeshclasses.rainbond.io \
servicemeshes.rainbond.io \
-n rbd-system# Delete NAMESPACE
kubectl delete ns rbd-system

4. Kubesphere 部署

仅需在kub-k8s-master1上执行即可

在 Kubernetes 上最小化安装 KubeSphere

官方文档:在 Kubernetes 上最小化安装 KubeSphere

# 从 GitHub 上指定的 URL 下载并应用 KubeSphere 安装程序的 YAML 文件。
# 这个命令将创建和配置 KubeSphere 所需的所有 Kubernetes 资源,包括 Deployments、Services、ConfigMaps 等。
# 这是 KubeSphere 的核心组件,用于启动和管理 KubeSphere。
kubectl apply -f https://github.com/kubesphere/ks-installer/releases/download/v3.4.1/kubesphere-installer.yaml# 从 GitHub 上指定的 URL 下载并应用 KubeSphere 集群配置的 YAML 文件。
# 这个命令将配置集群级别的设置,如网络、存储、监控等,以便根据集群的需求优化和定制 KubeSphere。
# 这些配置会影响 KubeSphere 的集群环境设置,确保与实际环境的兼容性和性能。
kubectl apply -f https://github.com/kubesphere/ks-installer/releases/download/v3.4.1/cluster-configuration.yaml

 查看日志

# 获取并显示 KubeSphere 系统命名空间中与 KubeSphere 安装相关的 Pod 的实时日志。
# 这个命令结合了两个 `kubectl` 命令:
# 1. `kubectl get pod -n kubesphere-system -l 'app in (ks-install, ks-installer)' -o jsonpath='{.items[0].metadata.name}'`:
#    - 获取 `kubesphere-system` 命名空间中所有标签为 `app=ks-install` 或 `app=ks-installer` 的 Pod 名称。
#    - 使用 `jsonpath` 提取第一个 Pod 的名称。
# 2. `kubectl logs -n kubesphere-system <pod-name> -f`:
#    - 显示指定 Pod 的实时日志,帮助监控 KubeSphere 的安装或运行状态。
# `-f` 参数表示跟踪日志输出,即实时更新日志内容。
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l 'app in (ks-install, ks-installer)' -o jsonpath='{.items[0].metadata.name}') -f

检查服务部署状态

kubectl get pods -n kubesphere-system

使用 kubectl get pod --all-namespaces 查看所有 Pod 是否在 KubeSphere 的相关命名空间中正常运行。如果是,请通过以下命令检查控制台的端口:

kubectl get svc/ks-console -n kubesphere-system

默认用户名:admin  默认密码:P@88w0rd

卸载方法: 

kubectl delete -f https://github.com/kubesphere/ks-installer/releases/download/v3.4.0/kubesphere-installer.yaml
kubectl delete -f https://github.com/kubesphere/ks-installer/releases/download/v3.4.0/cluster-configuration.yaml

相关文章:

Kubernetes-1.22.0 可视化部署

目录 Kubeadm方式部署3master&#xff0c;2work集群&#xff08;Kubernetes-1.22.0&#xff09;-CSDN博客 1. 官方Dashboard 2. Kuboard 部署 3. Rainbond 部署 4. Kubesphere 部署 1. 官方Dashboard kubectl apply -f https://kuboard.cn/install-script/k8s-dashboard/v2…...

在 vue3 中动态路由问题记录

第一种 如果这样子的话需要加上 /* vite-ignore / ,但是在这样用这行部署服务器上跳转会有问题 component: () > import(/ vite-ignore */ ../views/ e.component .vue) 第二种 // 解决跳转问题const modeules imporet.meta.glob(/views/**/**.vue)component: modules…...

进程编程及其函数的使用

1. 创建进程 创建进程的核心操作是使用 fork() 系统调用。 1.1 fork() 系统调用 fork() 创建一个新进程&#xff08;子进程&#xff09;&#xff0c;新进程几乎是父进程的完整拷贝。fork() 返回两次&#xff1a; 在父进程中&#xff0c;返回子进程的 PID。在子进程中&#…...

为什么funnel图在邮件中不显示

在电子邮件中嵌入的Funnel图或其他图表可能不显示的原因有以下几种&#xff1a; 1. 邮件客户端对外部内容的限制 大多数邮件客户端为了安全&#xff0c;会阻止从外部服务器加载的内容&#xff0c;如图片、脚本或嵌入式图表。Funnel图通常是通过链接或外部脚本生成的&#xff…...

C语言 ——— 写一个函数,判断一个字符串是否为另外一个字符串旋转之后的字符串

目录 题目要求 代码思路 代码实现 题目要求 写一个函数&#xff0c;判断一个字符串是否为另外一个字符串旋转之后的字符串 例如 s1 "AABCD" &#xff1b;s2 "BCDAA" &#xff0c;返回1 s1 "AABcd" &#xff1b;s2 "BCDAA" …...

白骑士的Matlab教学实战项目篇 4.4 机器学习与AI

系列目录 上一篇&#xff1a;白骑士的Matlab教学实战项目篇 4.3 控制系统设计 机器学习与人工智能&#xff08;AI&#xff09;是当前技术发展的前沿领域&#xff0c;通过数据驱动的模型和算法&#xff0c;可以解决许多复杂的问题。MATLAB 提供了丰富的工具和函数&#xff0c;支…...

事件监控模块——Channel模块

这个模块就是 记录文件描述符 和 想要监控的事件&#xff0c;实际就绪的事件&#xff0c;以及事件发生之后要怎么做&#xff0c;判断有没有监控这个事件&#xff0c;获取事件。 class Poller; class EventLoop; class Channel {private:int _fd;EventLoop *_loop;uint32_t _ev…...

OCR调研

OCR调研 一、介绍 OCR&#xff08;Optical Character Recognition&#xff0c;光学字符识别&#xff09;是一种将图像中的文字转换为计算机可处理格式的技术。OCR技术经历了从传统OCR到基于深度学习的OCR的转变。深度学习OCR技术通过模拟人脑神经元结构处理文本和图像数据&am…...

数据结构(学习版)

考纲 (一)数据结构部分; 线性表栈、队列、数组查找和内部排序树和图 (二)计算机算法设计部分: 递归与分省策路、回溯法贪心算法、分支限界法、动态规划算法设计中的数据结构运用 (三)程序设计基础(C或C)部分: 基本数据类型、各种运算符和表达式、基本控制结构。数组的定义…...

除了知云文献翻译外,这几款翻译工具值得推荐!

近年来&#xff0c;市面上涌现出众多优秀的文献翻译工具&#xff0c;其中知云文献翻译凭借其强大的功能受到了广泛好评。然而&#xff0c;除了知云文献翻译外&#xff0c;还有几款翻译工具同样值得推荐。今天&#xff0c;就让我们一起来了解一下&#xff01; Foxit在线翻译 链…...

Element UI动态实现面包屑导航~

思路&#xff1a;监听路由变化&#xff0c;在路由规则中添加meta然后在组件中渲染。 import Vue from "vue" import VueRouter from "vue-router" Vue.use(VueRouter) // 解决ElementUI导航栏中的vue-router在3.0版本以上重复点菜单报错问题 const origin…...

安科瑞Acrel-2000ES储能能量管理系统在新型电力系统下分布式储能的研究

摘要&#xff1a;传统电力系统的结构和运行模式在以新能源为主体的新型电力系统中发生了巨大的变化&#xff0c;分布式储能作为电力系统中重要的能量调节器&#xff0c;也迎来了新的发展机遇。立足于储能技术发展现状&#xff0c;分析了分布式储能技术特点及在清洁可再生能源方…...

Git 逆转时光:版本回退操作详解

git 版本回退操作详解 一、Git的工作流程二、git clean尚未 commit 的修改三、已经 commit 尚未 push 到 remote 仓库四、已经提交到 remote 仓库五、回退建议六、总结 一、Git的工作流程 在讲这个版本回退之前&#xff0c;我们要温习一下Git的原理。下面这张图就是 Git 的整个…...

8.6.数据库基础技术-数据库的控制

并非控制 事务&#xff1a;由一系列DML操作组成&#xff0c;这些操作&#xff0c;要么全做&#xff0c;要么全不做&#xff0c;它从第一个DML操作开始&#xff0c;rollback、commit或者DDL结束&#xff0c;拥有以下四种特性&#xff0c;详解如下&#xff1a; &#xff08;操作)…...

php语言基础入门

文章目录 php语言基础入门一、简介二、基础语法1、变量2、常量3、注释4、基础数据类型4.1、整形数据类型4.2、布尔数据类型4.3、字符串数据类型4.4、浮点型数据类型4.5、PHP数据类型之查看和判断数据类型 5、流程控制5.1、if-elseif-else语句使用5.2、switch语句使用5.3、while…...

告别杂音,从 AI 音频降噪开始

生活中&#xff0c;音频无处不在。无论是聆听动人的音乐&#xff0c;还是参与重要的电话会议&#xff0c;又或是沉浸于精彩的网课学习&#xff0c;清晰、纯净的音频质量都至关重要。然而&#xff0c;音频中的噪声却像不速之客&#xff0c;扰乱着这份美好。 音频中的噪声形式多样…...

Postman中params传参与Body传参区别以及Body中不同类型的区别

Postman中params传参与Body传参区别 在HTTP请求中&#xff0c;参数可以通过不同的方式传递给服务器&#xff0c;其中最常见的两种方式是使用params&#xff08;查询参数&#xff09;和body&#xff08;请求体&#xff09;。以下是它们的主要区别&#xff1a; 1. 位置&#xf…...

数据结构入门——05队列

1.队列 队列&#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作的特殊线性表&#xff0c;队列具有先 进先出FIFO(First In First Out) 入队列&#xff1a;进行插入操作的一端称为队尾出队列&#xff1a;进行删除操作的一端称为队头 队列也可以数…...

使用python MySQL 实现一个 key-value(string:json) 读写库

在Python中,我们可以使用`pymysql`库(如果MySQL服务器版本较高,也推荐使用`mysql-connector-python`)来建立一个简单的key-value存储库,其中键是字符串,值是JSON格式的数据。这里我们创建一个基本的类来完成读写操作: import pymysql.cursors import jsonclass JsonKVS…...

实现:uniapp项目分享视频页面到微信,可以自定义分享的页面样式及内容

背景&#xff1a;最近在逐步完善一个uniapp项目的视频功能&#xff0c; 包括有视频录制及发布&#xff0c;在完善过程中想要实现分享 视频到微信的功能&#xff0c;也就是相当于分享链接到微信&#xff0c; 微信打开后可以获取到视频并可以观看&#xff0c;有了想法便 准备实行…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

C++初阶-list的底层

目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

Spring Boot面试题精选汇总

&#x1f91f;致敬读者 &#x1f7e9;感谢阅读&#x1f7e6;笑口常开&#x1f7ea;生日快乐⬛早点睡觉 &#x1f4d8;博主相关 &#x1f7e7;博主信息&#x1f7e8;博客首页&#x1f7eb;专栏推荐&#x1f7e5;活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量&#xff0c;这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)

目录 一、&#x1f44b;&#x1f3fb;前言 二、&#x1f608;sinx波动的基本原理 三、&#x1f608;波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、&#x1f30a;波动优化…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

GO协程(Goroutine)问题总结

在使用Go语言来编写代码时&#xff0c;遇到的一些问题总结一下 [参考文档]&#xff1a;https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现&#xff1a; 今天在看到这个教程的时候&#xff0c;在自己的电…...

协议转换利器,profinet转ethercat网关的两大派系,各有千秋

随着工业以太网的发展&#xff0c;其高效、便捷、协议开放、易于冗余等诸多优点&#xff0c;被越来越多的工业现场所采用。西门子SIMATIC S7-1200/1500系列PLC集成有Profinet接口&#xff0c;具有实时性、开放性&#xff0c;使用TCP/IP和IT标准&#xff0c;符合基于工业以太网的…...