KubeSphere的基本使用操作

2024-03-22 23:52

本文主要是介绍KubeSphere的基本使用操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

KubeSphere的基本使用操作

  • 基本使用
    • 用户角色
    • 创建企业空间
    • 创建项目
  • 创建应用
    • 创建密钥
      • 创建MySQL密钥
      • 创建WordPress密钥
    • 创建存储卷
      • 创建MySQL存储卷
      • 创建Wordpress存储卷
    • 添加组件
      • 服务类型
      • 添加MySQL组件
      • 添加WordPress组件
    • 访问Wordpress

基本使用

用户角色

KubeSphere 中的权限控制分为平台、企业空间、项目三个层级,通过角色来控制用户在不同层级的资源访问权限。

用户的创建与角色分配,具体操作参考官方文档: 创建企业空间、项目、用户和平台角色

1.平台角色:

主要控制用户对平台资源的访问权限,如集群的管理、企业空间的管理、平台用户的管理等。

platform-self-provisioner:创建企业空间并成为所创建的企业空间的管理员platform-regular:被邀请加入企业空间之前无法访问任何资源platform-admin:管理 KubeSphere 平台上的所有资源

2.企业空间角色:

主要控制企业空间成员在企业空间下的资源访问权限,如企业空间下项目、DevOps 项目的管理等。

企业空间名称-viewer:查看企业空间中的所有资源企业空间名称-self-provisioner:查看企业设置、管理应用模板、创建项目和 DevOps 项目企业空间名称-regular:查看企业空间设置企业空间名称-admin:管理企业空间中的所有资源

3.项目角色:

主要控制项目下资源的访问权限,如工作负载的管理、流水线的管理等。

viewer:查看项目中的所有资源operator:管理项目中除用户和角色之外的资源admin:管理项目中的所有资源

创建企业空间

企业空间是用来管理项目、DevOps 项目、应用模板和应用仓库的一种逻辑单元。可以在企业空间中控制资源访问权限,也可以安全地在团队内部分享资源。

点击左上角的平台管理并选择访问控制。在企业空间页面,点击创建。
在这里插入图片描述
在这里插入图片描述
进入企业空间
在这里插入图片描述

创建项目

KubeSphere 中的项目即 Kubernetes 命名空间,用于将资源划分成互不重叠的分组。这一功能可在多个租户之间分配集群资源,是一种逻辑分区功能。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建应用

这里使用KubeSphere创建Wordpress(MySQL 和 Wordpress)应用为例,将其创建后发布至Kubernetes中,并在集群外访问Wordpress服务。

一个完整的Wordpress应用会包括以下Kubernetes对象,其中MySQL作为后端数据库,Wordpress本身作为前端提供浏览器访问。

在这里插入图片描述

创建密钥

创建MySQL密钥

MySQL的环境变量MYSQL_ROOT_PASSWORD即root用户的密码属于敏感信息,不适合以明文的方式表现在步骤中,因此以创建密钥的方式来代替该环境变量。创建的密钥将在创建 MySQL 的容器组设置时作为环境变量写入。

名称:作为 MySQL 容器中环境变量的名称,可自定义,例如 mysql-secret别名:别名可以由任意字符组成,帮助您更好的区分资源,例如 MySQL 密钥描述信息:简单介绍该密钥,如 MySQL 初始密码密钥设置页,填写如下信息,完成后点击 创建。类型:选择 默认(Opaque)DataData 键值对填写 MYSQL_ROOT_PASSWORD123456

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建WordPress密钥

同上,创建一个WordPress密钥,Data键值对填写 WORDPRESS_DB_PASSWORD123456

在这里插入图片描述

创建存储卷

创建MySQL存储卷

名称:mysql-pvc别名:mysql持久化存储卷描述信息:Wordpress PVC存储类型默认 local,访问模式和存储卷容量也可以使用默认值

在这里插入图片描述
在这里插入图片描述

创建Wordpress存储卷

名称:wordpress-pvc别名:Wordpress 持久化存储卷描述信息:Wordpress PVC存储类型默认 local,访问模式和存储卷容量也可以使用默认值

在这里插入图片描述
在这里插入图片描述

添加组件

创建自制应用,填写基本信息

在这里插入图片描述

服务类型

在KubeSphere中,存在两种服务类型,它们存在一定区别:

1.无状态服务:

特点:无状态服务不会在不同的调用之间存储任何数据。每个请求都是独立的,服务器不会记住之前的状态部署特点:对于无状态服务,Kubernetes 可以随时将 Pod 重新部署到其他节点,因为它们在功能上是可互换的示例:Web 服务器、API 服务等。这些服务可以水平扩展,因为它们的每个实例都是相同的,不依赖于特定节点上的状态

2.有状态服务:

特点:有状态服务需要在不同的调用之间保留某种形式的状态或数据。这可能包括数据库、缓存或需要持久化存储的服务部署特点:由于有状态服务持有数据,Kubernetes 部署有状态服务通常需要使用持久卷(Persistent Volumes)来确保数据的持久性和可靠性示例:数据库服务、消息队列、缓存服务等。这些服务通常需要稳定的网络标识符和持久存储,以便在重启或重新部署时保留状态

创建服务类型
在这里插入图片描述
选择创建服务的类型
在这里插入图片描述

添加MySQL组件

名称: mysql组件版本:v1别名:MySQL数据库负载类型:选择 有状态服务

在这里插入图片描述
点击添加容器镜像,镜像填写mysql:5.7,然后按回车键或点击 DockerHub
在这里插入图片描述
在搜索结果处选择对应镜像,点击 使用默认端口。
在这里插入图片描述
注意,在高级设置中确保内存限制 ≥ 1000 Mi,否则可能 MySQL 会因内存 Limit 不够而无法启动。
在这里插入图片描述
下滑至环境变量,在此勾选环境变量,然后选择 用配置文件或密钥,名称填写为 MYSQL_ROOT_PASSWORD,下拉框中选择密钥为mysql-secretMYSQL_ROOT_PASSWORD
在这里插入图片描述
点击 添加存储卷模板,为 MySQL创建一个 PVC 实现数据持久化。

存储卷名称:必填,起一个简洁明了的名称,便于用户浏览和搜索,此处填写 mysql-pvc存储类型:选择集群已有的存储类型,如 Local容量和访问模式:容量默认 10 Gi,访问模式默认 ReadWriteOnce (单个节点读写)挂载路径:存储卷在容器内的挂载路径,选择 读写,路径填写 /var/lib/mysql

在这里插入图片描述
点击添加存储卷,选择已有存储卷 mysql-pvc,访问模式改为读写,容器挂载路径 /var/lib/mysql。完成后点击
在这里插入图片描述
在这里插入图片描述

添加WordPress组件

操作步骤与添加MySQL组件步骤类似,以下是大概操作步骤:

名称: wordpress组件版本:v1别名:Wordpress前端负载类型:默认 无状态服务添加容器镜像,镜像填写wordpress:4.8-apache,使用默认端口下滑至环境变量,勾选环境变量,添加两个环境变量:点击引用配置文件或密钥,名称填写 WORDPRESS_DB_PASSWORD,选择在第一步创建的配置 (Secret) wordpress-secret和 WORDPRESS_DB_PASSWORD。点击添加环境变量,名称填写 WORDPRESS_DB_HOST,值填写 mysql,对应的是上一步创建MySQL服务的名称,否则无法连接MySQL数据库

主要是环境变量配置:
在这里插入图片描述
这个应用添加配置好了2个服务
在这里插入图片描述
接下来就是应用设置路由规则,这里暂不操作,具体操作参考文档:应用路由
在这里插入图片描述
最后点击创建,等待MySQL和WordPress组件信息都已添加完成
在这里插入图片描述
在这里插入图片描述
工作负载下查看 部署 和 有状态副本集 的状态,当它们都显示为 运行中,说明 WordPress 应用创建成功。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

访问Wordpress

访问Wordpress服务前,查看wordpress 服务,将外网访问设置为NodePort

点击更多操作→ 编辑外网访问,选择 NodePort,然后该服务将在每个节点打开一个节点端口,通过 任意节点IP:对应节点端口即可在浏览器访问WordPress。
在这里插入图片描述
在这里插入图片描述
更新成功,得到节点端口:30489
在这里插入图片描述
访问 http://{任意节点IP}:{节点端口} 即可访问WordPress网站
在这里插入图片描述

这篇关于KubeSphere的基本使用操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/836500

相关文章

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有

MyBatis ParameterHandler的具体使用

《MyBatisParameterHandler的具体使用》本文主要介绍了MyBatisParameterHandler的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、概述二、源码1 关键属性2.setParameters3.TypeHandler1.TypeHa

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方