828华为云征文 | 使用Flexus云服务器X实例部署Kubernetes图形化管理平台

news2024/11/26 0:27:37

828华为云征文 | 使用Flexus云服务器X实例部署Kubernetes图形化管理平台

  • 1. 基础部署环境说明
  • 2. 部署Kubernetes环境
  • 3. 部署Kubernetes Dashboard
  • 4. 创建登录账号token
  • 5. 访问Kubernetes Dashboard

1. 基础部署环境说明

   Kubernetes作为当今最流行的容器编排平台,随着云计算、微服务架构和DevOps文化的普及,Kubernetes在自动化部署、扩展和管理容器化应用程序方面扮演着越来越重要的角色。未来Kubernetes将继续优化其稳定性、安全性和易用性,以满足企业级应用的需求。同时随着边缘计算、AI和大数据等技术的融合,Kubernetes有望成为支撑下一代分布式应用的基础设施,推动整个IT行业的创新与发展。
   本次选择使用华为Flexus云服务器X实例部署Kubernetes图形化管理平台,因为最近华为云828 B2B企业节正在举办,选择Flexus X云主机实例,享受定制化性能优化、99.99%的高可用性保障,以及全面的技术支持,让您的业务飞速发展,云端无忧!
在这里插入图片描述
 
在这里插入图片描述

2. 部署Kubernetes环境

   因为本次主要是在Flexus云服务器X实例中部署Kubernetes图形化管理平台,所以Kubernetes环境的部署不是本篇的重点内容,但是Kubernetes图形化管理平台又依赖Kubernetes环境,所以本次使用kk工具进行Kubernetes环境的部署。当然如果自己有Kubernetes环境,也可以跳过本章节,直接进行下面的部署过程。

[root@flexusx-3e9a ~]# export KKZONE=cn
[root@flexusx-3e9a ~]# curl -sfL https://get-kk.kubesphere.io | VERSION=v2.3.0 sh -

[root@flexusx-3e9a ~]# tar xvf kubekey-v2.3.0-linux-amd64.tar.gz
[root@flexusx-3e9a ~]# ./kk version --show-supported-k8s
v1.19.0
v1.19.8
v1.19.9
v1.20.4
v1.20.6
v1.20.10
v1.21.0
v1.21.1
……

[root@flexusx-3e9a ~]# ./kk create cluster --with-kubernetes v1.22.12 

3. 部署Kubernetes Dashboard

   部署和访问Kubernetes Dashboard官方手册

[root@flexusx-3e9a ~]# wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

[root@flexusx-3e9a ~]# grep image recommended.yaml
          image: registry.cn-hangzhou.aliyuncs.com/cloud_wzy/dashboard:v2.7.0
          imagePullPolicy: IfNotPresent
          image: registry.cn-hangzhou.aliyuncs.com/cloud_wzy/metrics-scraper:v1.0.8
[root@flexusx-3e9a ~]# kubectl apply -f recommended.yaml
[root@flexusx-3e9a ~]# kubectl get ns
NAME                   STATUS   AGE
kubernetes-dashboard   Active   21s

[root@flexusx-3e9a ~]# kubectl get pods -n kubernetes-dashboard
NAME                                        READY   STATUS    RESTARTS   AGE
dashboard-metrics-scraper-66fbb549b-g9n2j   1/1     Running   0          47s
kubernetes-dashboard-67c5c7dc6b-fqpnv       1/1     Running   0          47s
[root@flexusx-3e9a ~]# kubectl get svc -n kubernetes-dashboard
NAME                        TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE
dashboard-metrics-scraper   ClusterIP   10.102.209.140   <none>        8000/TCP   2m12s
kubernetes-dashboard        ClusterIP   10.101.169.76    <none>        443/TCP    2m12s


[root@flexusx-3e9a ~]# kubectl edit svc kubernetes-dashboard -n kubernetes-dashboard
......
  selector:
    k8s-app: kubernetes-dashboard
  sessionAffinity: None
  type: NodePort


[root@flexusx-3e9a ~]# kubectl get svc -n kubernetes-dashboard
NAME                        TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)         AGE
dashboard-metrics-scraper   ClusterIP   10.102.209.140   <none>        8000/TCP        8m49s
kubernetes-dashboard        NodePort    10.101.169.76    <none>        443:30156/TCP   8m49s

4. 创建登录账号token

   创建SA(此SA账号用于和集群内的程序交互使用,可以参考我的其他博客了解SA账号作用):

[root@flexusx-3e9a ~]# kubectl create sa dashboardsa -n kube-system
[root@flexusx-3e9a ~]# kubectl get sa -n kube-system | grep dashboardsa
dashboardsa                          0         57s

[root@flexusx-3e9a ~]# kubectl create clusterrolebinding rolebind-dashboard --clusterrole admin --serviceaccount kube-system:dashboardsa -n kube-system

   因为从kubernetes 1.24版本开始,创建SA不再自动生成secrets,所以接下来需要手动创建一个secrets
   手动创建secrets:官方参考手册

[root@flexusx-3e9a ~]# vim dashboardsa-secret.yaml
[root@flexusx-3e9a ~]# cat dashboardsa-secret.yaml
apiVersion: v1
kind: Secret
metadata:
  name: secret-sa-sample
  annotations:
    kubernetes.io/service-account.name: "dashboardsa"
type: kubernetes.io/service-account-token
[root@flexusx-3e9a ~]# kubectl apply -f dashboardsa-secret.yaml -n kube-system
[root@flexusx-3e9a ~]# kubectl get secrets -n kube-system
NAME               TYPE                                  DATA   AGE
secret-sa-sample   kubernetes.io/service-account-token   3      12s

[root@flexusx-3e9a ~]# kubens kube-system
[root@flexusx-3e9a ~]# kubectl describe secrets secret-sa-sample
Name:         secret-sa-sample
Namespace:    kube-system
Labels:       <none>
Annotations:  kubernetes.io/service-account.name: dashboardsa
              kubernetes.io/service-account.uid: 90bc6cea-5b6e-4a14-b271-3e3f26cb87a4

Type:  kubernetes.io/service-account-token

Data
====
ca.crt:     1099 bytes
namespace:  11 bytes
token:      eyJhbGciOiJSUzI1NiIsImtpZCI6IlJ5WnAtellKaHF2VWxpc0FvRTNoc2JTRkZFQ2VnY09SX1FlNjRDTTZjSmMifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJzZWNyZXQtc2Etc2FtcGxlIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImRhc2hib2FyZHNhIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiOTBiYzZjZWEtNWI2ZS00YTE0LWIyNzEtM2UzZjI2Y2I4N2E0Iiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZHNhIn0.rbqlQuYMx6YqAo0GOhMKbNkTRjGUkWOOfyndaQCqHzZckpxFUK5YRvvN88k5-DFA0L0nHBWx1LBijINgEKig9wsaB1VOU5tAsoDRdR5PSTeGrp6H5urVXVHQ5tTwug8G2P8BgDzu0eYGvihpEh27Ovt4H-CNmvfgvTIvlJ3rIopsierDhhtC2L0HyLtZK0b2__o4cbErcFGCmca6TVLMbOH__jCDtO4v80dKXN0VKevozc_l1aQ0KD-UGehpsE7nch2fx1IALyNLXbIlgUflTzXOvFyiNysiSXlzBQUITGLW37Htfqw9k2MaSfPTnHA1yn-ly4jKjWx5L0dQ1_UZdQ

5. 访问Kubernetes Dashboard

在这里插入图片描述

  也可以选择使用Kubeconfig方式登录,将kubernetes集群中/etc/kubernetes/admin.conf文件下载到本地,然后再上传到此处即可。
 
在这里插入图片描述
 
在这里插入图片描述

[root@flexusx-3e9a ~]# kubectl get deployment -n demo
NAME           READY   UP-TO-DATE   AVAILABLE   AGE
wzy-demo2024   5/5     5            5           62m


[root@flexusx-3e9a ~]# kubectl get pod -n demo
NAME                            READY   STATUS    RESTARTS   AGE
wzy-demo2024-5c757c7bc4-6655c   1/1     Running   0          62m
wzy-demo2024-5c757c7bc4-j8ngd   1/1     Running   0          62m
wzy-demo2024-5c757c7bc4-pp68q   1/1     Running   0          62m
wzy-demo2024-5c757c7bc4-rcqmt   1/1     Running   0          62m
wzy-demo2024-5c757c7bc4-tw598   1/1     Running   0          62m

[root@flexusx-3e9a ~]# kubectl get svc -n demo
NAME           TYPE           CLUSTER-IP     EXTERNAL-IP      PORT(S)        AGE
wzy-demo2024   LoadBalancer   10.98.123.58   192.168.24.237   80:31810/TCP   62m

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Kubernetes】常见面试题汇总(七)

目录 20.简述 Kubernetes 创建一个 Pod 的主要流程&#xff1f; 21.简述 Kubernetes 中 Pod 的重启策略&#xff1f; 20.简述 Kubernetes 创建一个 Pod 的主要流程&#xff1f; Kubernetes 中创建一个 Pod 涉及多个组件之间联动&#xff0c;主要流程如下&#xff1a; &#…

如何让Google收录我的网站?

其实仅仅只是收录&#xff0c;只要在GSC提交网址&#xff0c;等个两三天&#xff0c;一般就能收录&#xff0c;但收录是否会掉&#xff0c;这篇内容收录了是否有展现&#xff0c;排名&#xff0c;就是另外一个课题了&#xff0c;如果不收录&#xff0c;除了说明你的网站有问题&…

人工智能赋能千行百业

人工智能将赋能千行百业 人工智能&#xff08;AI&#xff09;作为当今科技领域的核心驱动力之一&#xff0c;正以前所未有的速度和广度赋能千行百业&#xff0c;深刻改变着我们的生产、生活方式以及社会经济的运行模式。以下是人工智能在多个行业中的赋能作用的几个关键方面&am…

QT多个界面

主函数 #include "widget.h" #include "second.h" #include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;Second s;QObject::connect(&w,&Widget::my_signals,&s,&Second::my_slots);w.…

全面质量管理知识竞赛题库

全面质量管理知识竞赛题库 第 1 章 质量 三、单项选择题 1.根据 ISO9000 标准的定义&#xff0c;“质量”是指“客体的一组固有特性满足要求的程度”&#xff0c;以下&#xff08; B &#xff09;不属于产 品的“固有特性”。 A.产品的寿命 B.产品的价格 C.产品制造和使用的…

民宿|基于java的民宿推荐系统(源码+数据库+文档)

民宿推荐系统 目录 基于java的民宿推荐系统 一、前言 二、系统设计 三、系统功能设计 系统功能实现 前台&#xff1a; 后台&#xff1a; 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1a;✌…

react-问卷星项目(1)

学习的一位MOOC老师的经验&#xff0c;记录一下学习的过程 本项目技术栈&#xff1a;React18TS4AntDesign5Next.js13 项目&#xff1a;低代码&#xff0c;B/C react官方文档 核心价值&#xff1a; 组件化&#xff1a;不是React原创&#xff0c;但在React中流行开来 数据驱…

怎么用python打开文件

python文件读写文件是最常见的IO操作。Python内置了读写文件的函数&#xff0c;用法和C是兼容的。 读写文件前&#xff0c;我们先必须了解一下&#xff0c;在磁盘上读写文件的功能都是由操作系统提供的&#xff0c;现代操作系统不允许普通的程序直接操作磁盘。 读写文件就是请…

使用java对栅格数据的处理,对栅格文件进行导入导出

需求背景&#xff1a; 对栅格文件进行导入导出&#xff08;使用代码的方式&#xff0c;非命令方式&#xff09;&#xff1b; 当然也可以使用代码和GDAL的方式进行&#xff0c;但是GDAL配置部署不便捷&#xff0c;故选用GeoTools方式来实现。 ps&#xff1a;若是使用命令方式&am…

大模型api谁家更便宜

1 openai 可点此链接查询价格&#xff1a;https://openai.com/api/pricing/ 2 百度 可点此链接查询价格&#xff1a;https://console.bce.baidu.com/qianfan/chargemanage/list 需要注意&#xff0c;百度千帆平台上还提供其他家的模型调用服务&#xff0c; 如llama, yi-34b等…

IDE快速复制文件名

在很多情况下我们需要复制IDE中文件的名称&#xff0c;习惯性的F2却不能重命名 如图操作又比较繁琐 解决方法⭐⭐⭐ 其实直接CtrlC可以复制文件名&#x1f921;&#x1f921;&#x1f921;

7-Zip压缩包如何添加密码,加密后如何取消

压缩包文件大家经常使用&#xff0c;最熟悉的肯定是RAR、ZIP格式压缩文件&#xff0c;但是7z压缩文件格式也很好用&#xff0c;它是三种压缩文件格式中压缩率最大的。想要将文件压缩到最小&#xff0c;使用7z格式可以达到最大化。那么在使用7z压缩格式的时候&#xff0c;我们可…

银河麒麟V10系统软件商店手动更新方法

银河麒麟桌面操作系统V10重新安装之后&#xff0c;有些软件商店未能及时的自动更新&#xff0c;从而软件商店里无法获取最新的软件应用&#xff0c;这个时候就需要我们手动的进行升级更新一下软件商店了&#xff0c;更新之后软件商店里的内容就会增加不少&#xff0c;那么&…

阿尔泰科技案例解析-炼钢厂设备监测解决方案!

案例背景 在一家大型钢铁冶炼厂中&#xff0c;熔炉是生产过程的核心设备&#xff0c;广泛应用于金属冶炼、铸造和加工步骤&#xff0c;如钢铁的冶炼和精炼。为了确保熔炉在最佳状态下运行&#xff0c;并防止潜在的故障或事故&#xff0c;该厂需要对熔炉及厂房内相关设备的多个…

开发模型例题

答案&#xff1a;A 解析&#xff1a;瀑布模型是跟对需求明确的项目 增量模型是将需求分为多个阶段&#xff0c;适合一开始需求不明确的 演化模型适合用户需求不清&#xff0c;需求经常变化的情况 螺旋模型适合庞大&#xff0c;复杂且具有高风险的系统

F12抓包07:Network界面功能详细介绍

课程大纲 ​ 本课介绍F12“网络”&#xff08;Network&#xff09;tab菜单界面的功能区域和使用。 8.1 录制与清空 8.2 过滤与搜索 1、url过滤 2、全局搜索 8.3 保留日志 勾选“保留日志”&#xff1a;刷新界面后请求记录不清空&#xff1b;否则&#xff0c;清空历史请求记录…

西门子博途PLC跑马灯的简单编程方式

新手必学的PLC程序&#xff0c;老电工转型电气工程师必看&#xff01;#自动化##PLC##电工##电气##学习##编程##跑马灯##西门子##外企# 工控人加入PLC工业自动化精英社群 工控人加入PLC工业自动化精英社群

AutoIT:强大的RPA自动化脚本神器,安装到使用的保姆级教程!

作为一个经常需要在Windows上处理各种繁琐任务的“码农”&#xff0c;我对各种自动化工具有着深厚的兴趣。尤其是AutoIT这种工具&#xff0c;让人简直爱不释手。 我有时候需要写一大堆技术文档&#xff0c;里面各种表格、数据&#xff0c;手动操作简直让人头大。那时候&#x…

5款AI头像生成神器,独特头像不是梦!

在各种应用程序和社交媒体平台上&#xff0c;头像几乎无处不在。它不仅仅是个人的标识&#xff0c;更是展现个性和特征的一种方式。随着人工智能技术的不断进步&#xff0c;各种头像生成器应运而生&#xff0c;让我们能够创造出更加独特和个性化的头像。使用这些AI头像生成器非…

How can I register a custom environment in OpenAI‘s gym?

题意&#xff1a;如何在OpenAI的Gym中注册一个自定义环境&#xff1f; 问题背景&#xff1a; I have created a custom environment, as per the OpenAI Gym framework; containing step, reset, action, and reward functions. I aim to run OpenAI baselines on this custom…