k8s部署dashboard kubepi

1. KubePi 简介
KubePi 是一个开源的 Kubernetes 多集群管理面板,提供以下核心功能:

多集群管理:支持接入多个 Kubernetes 集群统一管理。

可视化操作:提供资源(Pod、Deployment、Service 等)的创建、删除、监控功能。

权限控制:基于角色的访问控制(RBAC),支持多租户隔离。

监控与日志:集成 Prometheus、Grafana 和日志收集组件。

安全审计:操作记录和审计日志。

适用场景:

需要集中管理多个 Kubernetes 集群的团队。

希望简化 Kubernetes 资源操作的开发者和运维人员。

需要可视化监控和告警的集群管理员。

2. 系统要求
2.1 硬件要求
组件    最低配置    推荐配置
CPU    2 核    4 核
内存    4GB    8GB
存储    20GB    50GB(需持久化)
2.2 软件依赖
Kubernetes 集群:版本 ≥ 1.18

Docker:版本 ≥ 20.10(若使用 Docker 部署)

NFS 服务器:用于持久化存储(可选,但生产环境推荐)

2.3 网络要求
开放端口:

80/8000:KubePi Dashboard 访问端口。

30000-32767:NodePort 范围(若使用 Service 暴露服务)。

3.kubepi部署

3.1 nfs部署

 

3.2 kubepi 部署pv、pvc

 

3.3 kubepi 部署deployment

 

3.4 kubepi 部署service

 

3.5 kubepi web 控制台登陆

3.6 kubepi修改默认密码

 

3.7kubepi导入k8s集群

1. 创建 ServiceAccount (SA)
bash
复制
kubectl create sa ampadmin --namespace kube-system
作用:在 kube-system 命名空间中创建一个名为 ampadmin 的 ServiceAccount。

用途:ServiceAccount 是 Kubernetes 中用于身份认证的实体,通常用于 Pod 或外部服务与 Kubernetes API 交互。

输出:serviceaccount/ampadmin created 表示创建成功。

2. 绑定 ClusterRole
bash
复制
kubectl create clusterrolebinding ampadmin --clusterrole=cluster-admin --serviceaccount=kube-system:ampadmin
作用:将 ampadmin ServiceAccount 绑定到 Kubernetes 内置的 cluster-admin ClusterRole。

解释:

cluster-admin 是 Kubernetes 的超级管理员角色(拥有集群最高权限)。

此操作意味着 ampadmin 账号获得了对整个集群的完全控制权。

输出:clusterrolebinding.rbac.authorization.k8s.io/ampadmin created 表示绑定成功。

3. 获取 ServiceAccount 的 Token
bash
复制
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep ampadmin | awk '{print $1}') | grep token: | awk '{print $2}'
目的:提取 ampadmin ServiceAccount 的认证 Token,用于通过 Kubernetes API 进行身份验证。

分步解析:
获取 Secret 名称:

bash
复制
kubectl -n kube-system get secret | grep ampadmin | awk '{print $1}'
列出 kube-system 命名空间中的所有 Secret。

通过 grep ampadmin 过滤出与 ampadmin 相关的 Secret。

使用 awk '{print $1}' 提取 Secret 名称(通常是 ampadmin-token-xxxxx)。

查看 Secret 详细信息:

bash
复制
kubectl -n kube-system describe secret <secret-name>
输出 Secret 的详细信息,其中包含 token 字段。

提取 Token:

bash
复制
grep token: | awk '{print $2}'
过滤出包含 token: 的行。

使用 awk '{print $2}' 提取 Token 值。

4. 最终输出
结果:该命令会返回一个长字符串(类似 eyJhbGciOiJSUzI1NiIsImtpZ...),这是 ampadmin ServiceAccount 的 JWT Token。

用途:此 Token 可用于:

通过 kubectl 命令行工具认证:

bash
复制
kubectl --token=<TOKEN> get pods -n kube-system
通过 Kubernetes Dashboard 登录。

集成到 CI/CD 工具或其他需要访问集群的应用中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/891404.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

强大数定律与弱大数定律的区别

先来讲一下弱大数定律吧,这个比较好理解 弱大数定律的标准形式是这样的: \[\forall \epsilon>0,\underset{n\rightarrow\infty}{\lim}P(|\bar{X}_n-\mu|<\epsilon)=1 \]这里注意的是我们的极限符号是包含概率的,我们按照数列极限的定义将其写开: \[\forall \epsilon&…

分布式锁—1.原理算法和使用建议

大纲 1.Redis分布式锁的8大问题 2.Redis的RedLock算法分析 3.基于Redis和zk的分布式锁实现原理 4.Redis分布式锁的问题以及使用建议1.Redis分布式锁的8大问题 (1)非原子操作(set+lua) (2)忘了释放锁(手动+超时) (3)释放了其他线程的锁(lua+唯一值) (4)加锁失败的处理(自旋+睡眠…

理解Rust引用及其生命周期标识(上)

写在前面 作为Rust开发者,你是否还没有完全理解引用及其生命周期?是否处于教程一看就会,但在实际开发过程中不知所措?本文将由浅入深,手把手教你彻底理解Rust引用与生命周期。 关于本文的理解门槛 本文主要面向的是已经基本上了解过Rust这门语言,对引用以及生命周期(及其…

TCP/IP协议栈相关知识

为什么提出TCP/IP参考模型OSI参考模型比较复杂TCP和IP两大协议在网络上广泛使用 三种参考模型如今用的最多的是TCP/IP五层模型,而OSI七层模型更多用于学习。 TCP/IP常见协议要了解协议对应的传输层端口号,因为计算机是通过端口号分辨所使用的是那种协议。 应用层要了解常见协…

Vulkan环境配置 | vscode+msvc 解决方案

Vulkan环境配置 | vscode+msvc 解决方案 前言 如果作为Windows 11侠的你是一个vscode爱好者,凑巧电脑上还安装有Visual Studio,这个时候你突然想配置一个Vulkan开发环境。作为minimalist的你可不希望在电脑上安装任何额外的组件,那么这篇安装指南一定适合你。 准备工作 你需…

mysql索引原理简单说明

本次使用的是mysql5.7.17 首先说下索引中的组合索引,即多个字段组合的索引就叫做组合索引,但是什么时候会生效,什么时候会失效,我不是很清楚 首先建个表造点数据看下情况,CREATE TABLE `bank` (`id` INT(11) PRIMARY KEY AUTO_INCREMENT COMMENT 主键,`bank_end` VARCHAR…

Vulnhub-Troll-1靶机-ftp匿名登录+流量包分析+hydra爆破+ssh登录脚本提权

一、靶机搭建 选择扫描虚拟机选择路径即可二、信息收集 扫ip 靶机ip:192.168.108.144扫开放端口 开放了ftp服务扫版本服务信息信息如下 21/tcp open ftp vsftpd 3.0.2 22/tcp open ssh OpenSSH 6.6.1p1 Ubuntu 2ubuntu2 (Ubuntu Linux; protocol 2.0) 80/tcp open …

八、(了解即可)MyBatis懒加载(或者叫延迟加载)

八、(了解即可)MyBatis懒加载(或者叫延迟加载)@目录八、懒加载(了解即可)8.1 为啥需要懒加载?8.2 懒加载是什么?8.3 开启方式8.4 既然fetchType可以控制懒加载那么我仅仅配置fetchType不配置全局的可以吗?8.5 aggressiveLazyLoading是做什么么的?8.6 注意点8.7 案例验证懒加…

基于惯性加权PSO优化的目标函数最小值求解matlab仿真

1.程序功能描述基于惯性加权PSO优化的目标函数最小值求解matlab仿真。 2.测试软件版本以及运行结果展示MATLAB2022A版本运行 (完整程序运行后无水印) 3.核心程序yfits = []; % 主循环开始 for iter =1: Miteryfit = zeros(Npop,1); % 初始化函数值数组% 更新粒子速度…

题解:at_abc391_e Hierarchical Majority Vote

对于一个长度为 \(3^n\) 的 01 字符串 \(B = B_1B_2\dots B_{3^n}\),定义一种操作获得长度为 \(3^{n-1}\) 的 01 字符串 \(C = C_1C_2\dots C_{3^{n-1}}\):对于 \(i = 1,2,\dots,3^{n-1}\),令 \(C_i\) 为 \(B_{3i}\)、\(B_{3i-1}\)、\(B_{3i-2}\) 中出现次数最多的字符。现给…

解决VScode设置ctrl+,被占用

关闭启用更多系统热键设置可以用OpenArk找找