网站建设活动广告/公关策划公司

网站建设活动广告,公关策划公司,wordpress图片调用,手工灯笼KubeSphere简介 KubeSphere 是一款功能强大的容器管理平台,以下是其简介: 1)基本信息 开源项目:基于 Apache-2.0 授权协议开源,由 Google Go、Groovy、HTML/CSS 和 Shell 等多种编程语言开发。基础架构:…

KubeSphere简介

KubeSphere 是一款功能强大的容器管理平台,以下是其简介:

1)基本信息

  • 开源项目:基于 Apache-2.0 授权协议开源,由 Google Go、Groovy、HTML/CSS 和 Shell 等多种编程语言开发。
  • 基础架构:以 Kubernetes 为内核,架构具有即插即用特性,可运行在私有云、公有云、混合云等多种环境,支持多云与多集群的统一管理。

2)功能特性

  • 全栈 IT 自动化:提供从 Kubernetes 集群搭建到运维的全栈 IT 自动化能力,支持在线和离线安装、升级与扩容。
  • 可视化资源管理:提供可视化的 Kubernetes 资源管理界面,用户可通过向导式界面轻松创建和管理各种 K8s 资源。
  • 强大的 DevOps 功能:内置基于 Jenkins 的 DevOps 系统,支持图形化和脚本两种方式的 CI/CD 流水线构建,还提供 S2I 和 B2I 等 CD 工具。
  • 微服务治理出色:基于 Istio 提供可视化无代码侵入的灰度发布、熔断、流量治理等功能,同时支持分布式 Tracing。
  • 多租户管理:提供基于角色的细粒度统一认证,支持对接企业 LDAP/AD,实现多层级的权限管理。
  • 可观察性强:提供集群、工作负载、Pod、容器等多维度的监控,支持基于多租户的日志查询与日志收集,提供节点与应用层级的告警与通知功能。
  • 基础设施管理全面:支持 Kubernetes 节点管理、节点扩容与集群升级,支持对接多种存储系统,提供可视化运维管理 PVC、StorageClass 的功能,并支持 CSI 插件对接云平台存储。
  • 网络管理灵活:提供租户网络隔离与 K8s NetworkPolicy 管理功能,支持 Calico、Flannel 等多种网络插件,并提供 Porter LB 用于暴露物理环境 K8s 集群的 LoadBalancer 服务。
  • 支持 GPU 资源管理:可运行 TensorFlow 等 ML 框架,为 AI 和大数据应用提供支持。
  • 技术架构:采用前后端分离设计,后端各个功能组件可通过 REST API 对接外部系统,这种设计让其能灵活运行在各种 Kubernetes、私有云、公有云、VM 或物理环境之上。

3)应用场景

  • 助力业务数字化转型:帮助企业一步升级容器架构,适应数字化转型需求。
  • 降低运维复杂度:通过多维管控 Kubernetes,让运维工作更加轻松。
  • 推动企业 DevOps 落地:实现敏捷开发与自动化运维,提升开发和运维效率。
  • 升级云原生架构:提供灵活的微服务解决方案,助力企业构建云原生架构。
  • 释放硬件最大效能:基于物理环境构建全栈容器架构,充分利用硬件资源。

在本次部署中选择用NFS作为存储

1、为什么需要用到NFS?

  • 提供持久化存储:在 KubeSphere 中,应用产生的数据需要持久化保存,如数据库的存储、应用的配置文件等。NFS 能将服务器上的目录共享给 Kubernetes 集群中的多个节点,使容器在重启或在不同节点间迁移时,仍可访问到相同的数据,保证应用的正常运行和数据的一致性。
  • 实现数据共享:KubeSphere 中的多个容器或应用可能需要共享数据,NFS 允许不同节点上的容器挂载同一个 NFS 共享目录,实现数据的共享和交换,便于应用之间协作。比如,多个 Web 应用容器可能需要共享静态资源文件,通过 NFS 就可以方便地实现。
  • 简化存储管理:NFS 的配置和管理相对简单。管理员只需在 NFS 服务器上配置共享目录和访问权限,KubeSphere 集群中的节点即可通过网络挂载 NFS 目录,无需在每个节点上单独配置复杂的存储设备和管理策略,降低了存储管理的难度和成本。
  • 支持动态卷供应:结合 Kubernetes 的 NFS Subdir External Provisioner 插件,NFS 能为 KubeSphere 提供动态卷供应能力。当有新的 PersistentVolumeClaim(PVC)创建时,系统可自动根据 StorageClass 的配置,在 NFS 服务器上创建对应的存储卷并挂载到需要的容器中,提高了存储资源的分配效率和灵活性。
  • 兼容性和通用性:NFS 是一种广泛支持的网络存储协议,与 KubeSphere 及 Kubernetes 生态系统中的许多组件和应用都有良好的兼容性。大多数容器化应用都能轻松地使用 NFS 作为存储后端,无需进行大量的适配工作,方便用户在 KubeSphere 平台上部署各种类型的应用。

2、 在KubeSphere部署中,NFS和其他存储方案对比有什么优缺点?

在 KubeSphere 部署中,NFS 和其他常见存储方案(如本地磁盘、Ceph、Longhorn)对比如下:

2.1、NFS存储方案
优点
  • 简单易维护:设置和维护相对容易,管理人员只需在 NFS 服务器上配置共享目录和访问权限,即可实现存储共享,对技术要求相对较低。
  • 共享能力强:允许多个节点和 Pod 同时访问相同的文件系统,能很好地满足多个应用或容器之间共享数据的需求。
  • 成本低廉:通常运行在标准的硬件和网络基础设施上,无需特殊的存储硬件设备,可显著降低存储成本。
  • 动态供给:通过使用 NFS 客户端动态配置器,如 nfs-client-provisioner,Kubernetes 可以动态创建和管理持久化卷,提高存储资源的分配效率。
  • 兼容性广泛:作为得到广泛支持的文件共享协议,与许多云服务提供商和存储解决方案都兼容,大多数容器化应用都能轻松使用。
缺点
  • 存在单点故障:NFS 服务器一旦出现问题,所有依赖它的服务都可能受到影响,导致业务中断。
  • 性能瓶颈:在高负载和大量并发访问的场景下,性能可能不如专为容器化环境设计的存储解决方案。
  • 网络依赖严重:性能和稳定性高度依赖网络质量,网络问题可能导致连接异常或中断,影响应用的正常运行。
  • 容量管理困难:难以限制实际使用容量,可能导致存储空间的过度使用,造成存储资源的浪费。
  • 数据安全风险:本身不提供数据冗余或备份功能,需要额外配置以确保数据安全,在处理敏感数据时安全性相对较弱。
2.2、本地磁盘存储方案
优点
  • 性能卓越:磁盘和应用系统中间的 IO 路径最短,可以提供最佳的性能,能满足 IO 密集型应用对磁盘读写速度的要求。
  • 数据可靠:通过 RAID 技术可以避免因单个磁盘故障而导致的数据丢失,提供了一定程度的可靠性保证。
  • 部署简单:在服务器的硬盘槽上插上硬盘,利用 HBA 卡或软件的方式制作 RAID,划分逻辑卷,格式化成某种文件系统后,挂载到容器中即可。
缺点
  • 数据不可迁移:由于容器的动态性,Pod 漂移至其他节点时,无法使用之前节点磁盘上的数据,限制了 Pod 的调度灵活性。
  • 缺乏节点级高可用:当物理节点发生故障时,数据都存储在故障节点上,应用无法在其他节点恢复运行。
  • 扩展困难:业务使用的存储空间受限于本地磁盘的大小,达到磁盘空间上限后难以扩容,且部署 RAID 耗时较长,难以快速部署大量应用系统。
2.3、Ceph 存储方案
优点
  • 高扩展性:能够轻松应对大规模数据存储需求,可通过添加节点实现性能和容量的线性扩展。
  • 高可靠性:采用分布式架构,数据分布在多个节点上,通过数据冗余和副本机制确保数据的高可用性和可靠性。
  • 支持多种存储类型:支持块存储、对象存储和文件存储等多种存储类型,能满足不同应用场景的需求。
缺点
  • 部署和管理复杂:需要专业的知识和技能进行部署、配置和维护,对运维人员要求较高。
  • 性能优化难度大:由于涉及多个组件和复杂的网络拓扑,性能优化需要深入了解其架构和原理,难度较大。
  • 资源消耗较高:为了保证性能和可靠性,Ceph 需要较多的计算和存储资源,成本相对较高。

2.4、Longhorn 存储方案
优点
  • 轻量级高可用:特别适用于 Kubernetes 环境,提供易于使用的图形界面,方便用户进行管理和操作。
  • 自动快照和备份:具备自动快照、备份和恢复等功能,可有效保护数据,降低数据丢失风险。
  • 动态扩展:支持动态扩展,能够根据业务需求灵活调整存储容量。
缺点
  • 功能相对有限:与一些功能强大的企业级存储系统相比,功能可能不够丰富,对于一些复杂的存储需求可能无法满足。
  • 性能表现因环境而异:在不同的硬件和网络环境下,性能表现可能存在较大差异,需要进行充分的测试和优化。

一、配置NFS

1、所有服务器节点安装NFS服务

前面实验已经安装过参考博客:k8s基础(6)—Kubernetes-存储_kubectl delete pvc-CSDN博客

2、配置KubeSphere共享的目录

#步骤一:创建共享目录
mkdir -p /opt/nfs/data/kubesphere#步骤二:在/etc/exports文件中加入下面的行
/opt/nfs/data/kubesphere *(insecure,rw,sync,no_root_squash)#步骤三:重启NFS服务
systemctl restart rpcbind && systemctl enable rpcbind
systemctl restart nfs && systemctl enable nfs#步骤四:查看配置是否生效
exportfs -r
exportfs#步骤五:其他集群节点上查看配置是否生效
showmount -e 192.168.72.130

 

3、部署NFS Subdir External Provisioner 插件

作用:因为NFS没有可以提供动态卷供应的能力,安装NFS Subdir External Provisioner 插件,NFS 能为 KubeSphere 提供动态卷供应能力。当有新的 PersistentVolumeClaim(PVC)创建时,系统可自动根据 StorageClass 的配置,在 NFS 服务器上创建对应的存储卷并挂载到需要的容器中,提高了存储资源的分配效率和灵活性。

3.1、安装步骤

#步骤一:创建安装目录
mkdir -p  /opt/k8s/kubesphere && cd /opt/k8s/kubesphere#步骤二:下载压缩包
wget https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/archive/refs/tags/nfs-subdir-external-provisioner-4.0.18.zip#步骤三:下载后解压
unzip nfs-subdir-external-provisioner-4.0.18.zip#步骤四:进入文件目录
cd nfs-subdir-external-provisioner-nfs-subdir-external-provisioner-4.0.18#步骤五:创建命名空间(Namespace)方便管理
kubectl create ns nfs-system#步骤六:替换部署文件中的命名空间名称
sed -i'' "s/namespace:.*/namespace: nfs-system/g" ./deploy/rbac.yaml ./deploy/deployment.yaml#步骤七:替换部署文件中的命名空间为nfs-system
cd /opt/k8s/kubesphere/nfs-subdir-external-provisioner-nfs-subdir-external-provisioner-4.0.18sed -i'' "s/namespace:.*/namespace: nfs-system/g" ./deploy/rbac.yaml ./deploy/deployment.yamlgrep "namespace:" ./deploy/*     #验证是否替换成功#步骤八:创建RBAC资源
cd /opt/k8s/kubesphere/nfs-subdir-external-provisioner-nfs-subdir-external-provisioner-4.0.18/deploy
kubectl apply -f rbac.yaml#步骤九:检查NFS客户端Provisioner部署是否成功#检查 ServiceAccount输出中是否包含 nfs-client-provisioner,确认 ServiceAccount 已经正确创建
kubectl get serviceaccount -n nfs-system|grep nfs-client-provisioner#检查RBAC配置,确认ClusterRole和ClusterRoleBinding 是否已创建:
kubectl get clusterrole | grep nfs-client-provisioner-runner
kubectl get clusterrolebinding | grep run-nfs-client-provisioner#步骤十:
#1)配置deployment.yaml将nfs-subdir-external-provisioner:v4.0.2的镜像地址改为自己的私有镜像地址(注:nfs-subdir-external-provisioner:v4.0.2镜像GitHub上获取网络受阻,可以先找到资源上传到自己的私有仓库中,可参考的源有:registry.cn-hangzhou.aliyuncs.com/lfy_k8s_images/nfs-subdir-external-provisioner:v4.0.2)
#2)修改NFS_SERVER和NFS_PATH为NFS主机对应的IP和共享的目录
#3)修改volumes中的server和path为NFS主机的IP和NFS共享的目录
#如下:
apiVersion: apps/v1
kind: Deployment
metadata:name: nfs-client-provisionerlabels:app: nfs-client-provisioner# replace with namespace where provisioner is deployednamespace: nfs-system
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/yangbin-docker/nfs-subdir-external-provisioner:v4.0.2imagePullPolicy: IfNotPresentvolumeMounts:- name: nfs-client-rootmountPath: /persistentvolumesenv:- name: PROVISIONER_NAMEvalue: k8s-sigs.io/nfs-subdir-external-provisioner- name: NFS_SERVERvalue: 192.168.72.130- name: NFS_PATHvalue: /opt/nfs/data/kubespherevolumes:- name: nfs-client-rootnfs:server: 192.168.72.130path: /opt/nfs/data/kubesphere#步骤十一:执行/nfs-subdir-external-provisioner部署命令
kubectl apply -f deployment.yaml#步骤十二:验证插件是否部署成功
kubectl get deployment,pods -n nfs-system#步骤十三:部署StorageClass
kubectl apply -f class.yaml#检查StorageClass是否部署成功
kubectl get sc 

3.2、检查Provisioner、ClusterRole、ClusterRoleBinding是否部署成功

3.3、检查nfs-client-provisioner是否部署成功

 

3.4、检查StorageClass是否部署成功

 

 二、部署KubeSphere

1.安装核心组件 KubeSphere Core

1.1、安装helm

#步骤一:下载helm安装包
wget https://get.helm.sh/helm-v3.10.0-linux-amd64.tar.gz#步骤二:解压
tar -zxvf helm-v3.10.0-linux-amd64.tar.gz#步骤三:将helm配置成系统命令
mv linux-amd64/helm /usr/local/bin/helm

1.2、通过helm安装KubeSphere的核心组件KubeSphere Core

helm upgrade --install -n kubesphere-system --create-namespace ks-core https://charts.kubesphere.com.cn/main/ks-core-1.1.3.tgz --debug --wait \
--set global.imageRegistry=swr.cn-southwest-2.myhuaweicloud.com/ks \
--set extension.imageRegistry=swr.cn-southwest-2.myhuaweicloud.com/ks \
--set hostClusterName=k8s-paco



1.3、查看部署是否成功 

2、浏览器上输入地址进行登录验证

2.1、在浏览器上输入上述的地址 

2.2、修改密码

三、KubeSphere模块介绍

1、工作台功能介绍

1.1、查看之前安装的集群

 

1.2、集群节点(Nodes)

1.3、项目(NameSpace) 

1.4、工作负载

  • Deployment (自定义服务)
  • StatefulSet(有状态副本集)
  • DaemonSet(守护进程集)

1.5、容器组(Pods) 

1.6、服务(Service)

 

1.7、配置

保密字典(Secret)
配置字典(ConfigMap

1.8、配置

持久卷(pv)
持久卷声明(pvc)
存储类(StorageClass

1.9、集群设置

2、扩展市场

在此可以安装自己业务需要的组件

 

3、应用商店

 

参考文档:KubeSphere部署安装,接入KubeKey安装的k8s集群_kubesphere 安装部署-CSDN博客

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

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

相关文章

Hadoop 基础原理

Hadoop 基础原理 基本介绍Hadoop 的必要性Hadoop 核心组件Hadoop 生态系统中的附加组件 HDFSHDFS 集群架构HDFS 读写流程HDFS 写流程HDFS 读流程 NameNode 持久化机制 MapReduce底层原理示例 Hadoop 是一个由 Apache 基金会开发的分布式系统基础架构,主要解决海量数…

Linux编辑器

1.三种模式 2.图例 3.wq 4.光标的使用

TMDS视频编解码算法

因为使用的是DDR进行传输,即双倍频率采样,故时钟只用是并行数据数据的5倍,而不是10倍。 TMDS算法流程: 视频编码TMDS算法流程实现: timescale 1 ps / 1ps //DVI编码通常用于视频传输,将并行数据转换为适合…

计算机网络————(一)HTTP讲解

基础内容分类 从TCP/IP协议栈为依托,由上至下、从应用层到基础设施介绍协议。 1.应用层: HTTP/1.1 Websocket HTTP/2.0 2.应用层的安全基础设施 LTS/SSL 3.传输层 TCP 4.网络层及数据链路层 IP层和以太网 HTTP协议 网络页面形成基本 流程&#xff1a…

【网络编程】广播和组播

数据包发送方式只有一个接受方,称为单播。如果同时发给局域网中的所有主机,称为广播。只有用户数据报(使用UDP协议)套接字才能广播: 广播地址以192.168.1.0 (255.255.255.0) 网段为例,最大的主机地址192.168.1.255代表该网段的广…

小程序如何实现跨页面通信

前言 最近有很多同学问,小程序里面如何进行跨页面通信。看了下之前的老代码,基本都是基于onShow或者localStorage。虽然可以实现,但是并不怎么优雅。 今天就来聊一聊,小程序的跨页面通信的几种实现方案。或许会有你想要的方案&a…

【工具】win-画图 保留图片信息并仅改变图片比例的工具

Windows 系统自带的“画图”工具 Windows 系统自带的“画图”(Paint)工具可以进行简单的图片编辑,包括调整图片大小和比例。 使用方法: 打开“画图”工具(可以通过在开始菜单中搜索“画图”或“Paint”)。…

实验3 知识表示与推理

实验3 知识表示与推理 一、实验目的 (1)掌握知识和知识表示的基本概念,理解其在AI中的深刻含义与意义; (2)熟悉AI中常用的知识表示方法的优缺点及其应用场景; (3)掌握产…

在 M1 Mac 上解锁 TensorFlow GPU 加速:从环境搭建到实战验证

在 M1 Mac 上解锁 TensorFlow GPU 加速:从环境搭建到实战验证 前言:苹果芯片的深度学习新纪元 随着 Apple Silicon 芯片的普及,M1/M2/M3 系列 Mac 已成为移动端深度学习开发的新选择。本文将以 TensorFlow 2.x 为例,手把手教你如…

Python 数据分析概述 ①

一文读懂Python数据分析:从基础到实践全攻略 在当今数字化浪潮中,数据分析已然成为解锁海量数据价值的关键钥匙,而Python凭借其独特优势,在数据分析领域大放异彩。今天,咱们就结合教学PPT内容,深入探索Pyt…

【Gin-Web】Bluebell社区项目梳理6:限流策略-漏桶与令牌桶

本文目录 一、限流二、漏桶三、令牌桶算法四、Gin框架中实现令牌桶限流 一、限流 限流又称为流量控制,也就是流控,通常是指限制到达系统的并发请求数。 限流虽然会影响部分用户的使用体验,但是能一定程度上保证系统的稳定性,不至…

Linux高并发服务器开发 第十九天(线程 进程)

目录 1.进程组和会话 2.守护进程 2.1守护进程daemon概念 2.2创建守护进程 3.线程 3.1线程的概念 3.2线程内核三级映射 3.3线程共享 3.4线程优缺点 4.线程控制原语 4.1获取线程id 4.2创建线程 4.3循环创建N个子线 4.4子线程传参地址,错误示例 4.5线程…

软件工程和系统分析与设计

软件工程 1、软件危机 2、软件过程模型 2.1 瀑布模型 2.2原型模型 2.3螺旋模型 2.4敏捷模型 2.5软件统一过程 3、软件能力成熟度模型 CMM 4、软件能力成熟度模型集成 CMMI 系统分析与设计 1、结构化方法SASD 1.1结构化分析 DFD 1.2结构化设计 SD-是一种面向数据流的设计…

Qt/C++面试【速通笔记一】

Qt 信号与槽机制 什么是信号(Signal)和槽(Slot)? 在Qt中,信号(Signal)和槽(Slot)是实现对象之间通信的一种机制。信号是对象在某些事件发生时发出的通知&…

LangChain大模型应用开发:构建Agent智能体

介绍 大家好,博主又来给大家分享知识了。今天要给大家分享的内容是使用LangChain进行大模型应用开发中的构建Agent智能体。 在LangChain中,Agent智能体是一种能够根据输入的任务或问题,动态地决定使用哪些工具(如搜索引擎、数据库查询等)来…

微服务架构概述及创建父子项目

目录 一,什么是单体架构 二,什么是集群和分布式架构 三,什么是微服务架构 四,解决微服务难题的方案Spring-cloud Spring Cloud Alibaba是阿里巴实现的方案,基于SpringCloud的规范。如果说Spring Cloud Netflix 是…

C/C++跳动的爱心

系列文章 序号直达链接1C/C李峋同款跳动的爱心2C/C跳动的爱心3C/C经典爱心4C/C满屏飘字5C/C大雪纷飞6C/C炫酷烟花7C/C黑客帝国同款字母雨8C/C樱花树9C/C奥特曼10C/C精美圣诞树11C/C俄罗斯方块小游戏12C/C贪吃蛇小游戏13C/C孤单又灿烂的神14C/C闪烁的爱心15C/C哆啦A梦16C/C简单…

量子计算的威胁,以及企业可以采取的措施

当谷歌、IBM、Honeywell和微软等科技巨头纷纷投身量子计算领域时,一场技术军备竞赛已然拉开帷幕。 量子计算虽能为全球数字经济带来巨大价值,但也有可能对相互关联的系统、设备和数据造成损害。这一潜在影响在全球网络安全领域引起了强烈关注。也正因如…

Unity制作游戏——前期准备:Unity2023和VS2022下载和安装配置——附安装包

1.Unity2023的下载和安装配置 (1)Unity官网下载地址(国际如果进不去,进国内的官网,下面以国内官网流程为例子) unity中国官网:Unity中国官网 - 实时内容开发平台 | 3D、2D、VR & AR可视化 …

Android 串口通信

引言 在iot项目中,Android 端总会有和硬件通信。 通信这里:串口通信,蓝牙通信或者局域网通信。 这里讲一下串口通信。 什么是串口? “串口”(Serial Port)通常是指一种用于与外部设备进行串行通信的接口。…