简单体验K8S的Saas服务-青云KubeSphereCloud轻量集群服务

2023-11-01

简单体验K8S的Saas服务-青云KubeSphereCloud轻量集群服务

背景

之前有写过几篇KubeSphere的使用笔记:

使用kubekey的all-in-one安装K8S1.24及KubeSphere3.3:https://lizhiyong.blog.csdn.net/article/details/126236516

在KubeSphere启动服务网格Istio并解决解决ContainerCreating问题:https://lizhiyong.blog.csdn.net/article/details/126380224

在KubeSphere启用基于Jenkins的DevOps:https://lizhiyong.blog.csdn.net/article/details/126396878

在K8S1.24使用Helm3部署Alluxio2.8.1:https://lizhiyong.blog.csdn.net/article/details/126815426

都是基于笔者的双路e5搭建的虚拟机【
配置单:https://lizhiyong.blog.csdn.net/article/details/123294308
】,在单节点操作的,但是众所周知,K8S的设计初衷就是Running Always,所以虚拟机挂起的方式还是有点不便。这还只是单节点,如果是多节点,那虚拟机玩起来更麻烦。

https://kubesphere.cloud/console/overview/

在这里插入图片描述

正好青云给了10h白piao的机会,特意试试Saas模式的KubeSphere。价格合适的话,租一个其实也还可以,毕竟双路e5光是300w功耗一个月电费也300r了。。。

在这里插入图片描述

青云对笔者这样的K8S学徒工还是相当的友好。

体验

实际操作来体验下。。。

新建集群

在这里插入图片描述

此时只能选最低配,否则:

在这里插入图片描述

就会督促缴费升级来获取更好的服务。。。

在这里插入图片描述

可以看到专业型支持1Master+3Worker的模式:

在这里插入图片描述

自己玩只能白piao基础型的1Master+1Worker。

点继续后:

在这里插入图片描述

集群就创建好了。。。

默认就有:

在这里插入图片描述

显然控制平面已经有了。

鼠标移到进入KubeSphere会显示密码。复制以后跳转:

在这里插入图片描述

登录改密码后就是熟悉的KubeSphere界面:

在这里插入图片描述

进入平台管理:

在这里插入图片描述

这2个服务吃了不少资源。。。

在这里插入图片描述

实际可以使用的资源就剩不到3G内存了。。。基本上也只能做点轻量的事情。。。

在这里插入图片描述

控制平面还打了污点。。。灰常机智。。。

在这里插入图片描述

同样可以敲kubectl的命令。。。

参照:https://kubernetes.io/zh-cn/docs/reference/kubectl/

和Shell的黑窗口敲命令行差不多。。。

集群巡检服务

在这里插入图片描述

接下来获取这4h免费时长。

在这里插入图片描述

点开启:

在这里插入图片描述

再确认:

在这里插入图片描述

白piao的配置低,当然开启会比较慢。。。

在这里插入图片描述

开启成功后2h到手。。。

执行一个巡检任务

点详情试试:

在这里插入图片描述

新集群当然是没什么告警和危险。。。

再点一次巡检:

在这里插入图片描述

此时2h到手。。。

容灾备份服务

在这里插入图片描述

接下来当然是先把19h拿到手。。。

导入一个自建集群

在这里插入图片描述

代理连接K8S集群,附带个shell:

kubectl apply -f https://kubesphere.cloud/cluster/v1/users/一串数字/clusters/一串数字/agentmanifest

若选择“代理连接 Kubernetes 集群”的方式导入集群,您只需在 kubectl 中运行下方命令,即可在 Kubernetes 集群中安装代理连接组件。。。

如果选直接连接K8S集群:

若选择“直接连接 Kubernetes 集群”的方式导入集群,您需要确保 KubeConfig 的 Server 地址可以通过公网进行访问。。。

在这里插入图片描述

右侧有个很友好的帮助文档:

自己玩,选代理连接的Demo模式试试水:

会失败。。。需要到自己的托管K8S集群敲这个命令:

在这里插入图片描述

然后5h到手。。。

在这里插入图片描述

说明这个轻量K8S也是可以像正常的公网K8S集群一样使用。。。

添加托管备份仓库

在这里插入图片描述

新建托管仓库即可。。。自建仓库比较麻烦,得先有S3对象存储:

在这里插入图片描述

托管仓库相当简单,确定后即可分分钟生成:

在这里插入图片描述

又拿到2h。。。

开启备份容灾组件

在这里插入图片描述

但是:

在这里插入图片描述

但是明明是同一个集群,zhiyong-k8s2却可以:

在这里插入图片描述

很迷的操作。。。

在这里插入图片描述

实际上配置太低,当然还是失败了。。。

创建一个备份计划

在这里插入图片描述

这一步也就无法继续了。。。5h拿不到了。。。

创建一个恢复计划

在这里插入图片描述

自然这5h也就拿不到了。。。

探索高阶功能

还有个任务可以白piao时长:

在这里插入图片描述

官方文档有帮助:https://kubesphere.cloud/docs/ks-lite/quickstart/use-lite-cluster/

照着操作。。。

创建deployment

在这里插入图片描述

先删除这个跑不起来的任务。。。

在这里插入图片描述

在这里插入图片描述

点对号以后,看到默认的是滚动更新:

在这里插入图片描述

随便写一个。。。

在这里插入图片描述

在这里插入图片描述

当然是只能调度到这个节点。。。写不写都是这个节点。。。

此时自动写好了yaml:

apiVersion: apps/v1
kind: Deployment
metadata:
  namespace: default
  labels:
    app: zhiyong-nginx
  name: zhiyong-nginx
  annotations:
    kubesphere.io/description: zhiyong的nginx部署
    kubesphere.io/alias-name: zhiyong-nginx1
spec:
  replicas: 1
  selector:
    matchLabels:
      app: zhiyong-nginx
  template:
    metadata:
      labels:
        app: zhiyong-nginx
      annotations:
        kubesphere.io/imagepullsecrets: '{}'
        app: nginx
        logging.kubesphere.io/logsidecar-config: '{}'
    spec:
      containers:
        - name: container-x86i6v
          imagePullPolicy: IfNotPresent
          ports:
            - name: http-0
              protocol: TCP
              containerPort: 80
          image: nginx
          volumeMounts:
            - name: zhiyong-pv1
              readOnly: false
              mountPath: /data
              subPath: data1
      serviceAccount: default
      initContainers: []
      volumes:
        - hostPath:
            path: /k8s/data/nginx1
          name: zhiyong-pv1
      imagePullSecrets: null
      nodeSelector:
        kubernetes.io/hostname: ks-cloud-worker
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%

创建部署即可。。。遇到了一点问题。。。所以笔者删除了这个部署,重新创建了一个不挂载pv,不访问端口的部署:

kind: Deployment
apiVersion: apps/v1
metadata:
  name: zhiyong-nginx
  namespace: default
  labels:
    app: zhiyong-nginx
  annotations:
    deployment.kubernetes.io/revision: '1'
    kubesphere.io/alias-name: zhiyong-nginx1
    kubesphere.io/creator: admin
    kubesphere.io/description: zhiyong的nginx1
spec:
  replicas: 1
  selector:
    matchLabels:
      app: zhiyong-nginx
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: zhiyong-nginx
      annotations:
        app: nginx
        kubesphere.io/creator: admin
        kubesphere.io/imagepullsecrets: '{}'
    spec:
      containers:
        - name: container-97lo6b
          image: nginx
          ports:
            - name: tcp-80
              containerPort: 80
              protocol: TCP
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: IfNotPresent
      restartPolicy: Always
      terminationGracePeriodSeconds: 30
      dnsPolicy: ClusterFirst
      serviceAccountName: default
      serviceAccount: default
      securityContext: {}
      schedulerName: default-scheduler
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 25%
      maxSurge: 25%
  revisionHistoryLimit: 10
  progressDeadlineSeconds: 600

在这里插入图片描述
部署成功。

创建service

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

此时自动生成的yaml:

apiVersion: v1
kind: Service
metadata:
  namespace: default
  labels:
    app: zhiyong-nginx-service
  name: zhiyong-nginx-service
  annotations:
    kubesphere.io/alias-name: zhiyong-nginx1
    kubesphere.io/description: zhiyong的nginx服务
spec:
  sessionAffinity: None
  selector:
    app: zhiyong-nginx
  ports:
    - name: http-1
      protocol: TCP
      targetPort: 80
      port: 8888
  type: NodePort

手残取消了,只好重新配置一遍,图凑合看吧。。。

这种轻量服务器和普通ECS的公网K8S不同,此时是无法直接对外访问的!!!在KubeSphere看到的IP其实并不是真实的公网IP,那么不在同一个网段当然也就不能直接访问:

在这里插入图片描述

kind: Service
apiVersion: v1
metadata:
  name: zhiyong-nginx-service
  namespace: default
  labels:
    app: zhiyong-nginx-service
  annotations:
    kubesphere.io/alias-name: zhiyong-nginx1
    kubesphere.io/creator: admin
    kubesphere.io/description: zhiyong的nginx服务
spec:
  ports:
    - name: http-1
      protocol: TCP
      port: 8888
      targetPort: 80
      nodePort: 31592
  selector:
    app: zhiyong-nginx
  clusterIP: 10.96.118.1
  clusterIPs:
    - 10.96.118.1
  type: NodePort
  sessionAffinity: None
  externalTrafficPolicy: Cluster
  ipFamilies:
    - IPv4
  ipFamilyPolicy: SingleStack
  internalTrafficPolicy: Cluster

实际会自动变成这样。。。

对外暴露

所以还需要创建对外的LoadBalancer,将服务对外暴露出去:

在这里插入图片描述

此时才能对外访问:

在这里插入图片描述

删除集群

在这里插入图片描述

先删除对外暴露的网络服务,再删除集群。

在这里插入图片描述

过一会儿,可以看到剩余小时不变,显然是可以随用随开,不用就停!!!

租金

目前看到是这样,不知道后续是否会变化。。。

在这里插入图片描述

低配版是4C8G,200h需要138r。平均0.69r/h。和小学对面5r包夜的黑网吧有的一拼。

在这里插入图片描述

中配版1000h需要1200r。平均1.2r/h。比正规网吧3r/h冲3000送2000还便宜。。。

非专业运维的大数据平台开发攻城狮们可以考虑合租了。。。

转载请注明出处:https://lizhiyong.blog.csdn.net/article/details/129868719

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

简单体验K8S的Saas服务-青云KubeSphereCloud轻量集群服务 的相关文章

随机推荐

  • Python将纵向数据进行分组之后横向转化

    那天也是在某个公司进行了面试 面试官出了一个题 将下面的这个表格的数据进行转化 转变形式为这种 OK 我承认 我当时感觉特别的紧张 直接不知道代码怎么去写 面试的时候我还是想了一种方法 我说我会新建两个字典来分别存储brand和produc
  • 目标检测中的Anchor

    前言 在计算机视觉四大基本任务 检测 分类 定位 分割 中 图像的目标检测受到的了研究者们越来越多的关注 今天我们就来聊一聊在目标检测中一项重要的机制 Anchor Anchor机制在凯明大神提出的Faster RCNN 2015年提出 时
  • MQTT 笔记:apollo mqtt server + paho-mqtt python

    记录下写client时遇到的一些问题 1 subscribe topic qos 和 publish topic payload None qos 0 retain False 网上找到的简单的client代码subscribe都放在回调函
  • linux gcc 头文件搜索路径

    一 头文件 gcc 在编译时寻找所需要的头文件 搜寻会从 I开始 然后找gcc的环境变量 C INCLUDE PATH CPLUS INCLUDE PATH OBJC INCLUDE PATH 再找内定目录 usr include usr
  • Nginx面试中最常见的18道题

    Nginx的并发能力在同类型网页服务器中的表现 相对而言是比较好的 因此受到了很多企业的青睐 我国使用Nginx网站的知名用户包括腾讯 淘宝 百度 京东 新浪 网易等等 Nginx是网页服务器运维人员必备技能之一 下面为大家整理了一些比较常
  • 光标聚焦事件—搜索框实例

    要点 1 onfocus事件是光标聚集响应的事件 onblur是焦点失去事件 2 注意光标聚焦时 将提示内容去掉 并将字体的前景色改为黑色 和用户输入颜色上作区分 在改回提示内容时 将前景色改为灰色 html和内置的js代码
  • Pymc3的安装

    Pymc3的安装 安装代码 python版本3 8 pip install arviz pip install theano pymc pip install pymc3 一定要装theano pymc 而不是theano 安装theano
  • Chrome 谷歌翻译凉了?教你修复

    9月30日发现 Chrome 的右键网页翻译突然失效了 遇到其他语言的网站 Chrome 右键的网页翻译真乃神器 原来 Google 发言人称因 使用率太低 谷歌翻译服务已正式退出中国 这就导致了两个问题 Chrome 浏览器的右键网页翻译
  • 深度学习:Keras入门(一)之基础篇

    http www cnblogs com lc1217 p 7132364 html 1 关于Keras 1 简介 Keras是由纯python编写的基于theano tensorflow的深度学习框架 Keras是一个高层神经网络API
  • 283. Move Zeroes

    class Solution public void moveZeroes vector
  • adb push permission denied解决办法

    解决方法一 adb remount 解决方法二 1 adb shell进去手机端 2 代表是普通用户权限 3 su 进去root权限 变成 4 chmod R 777 system 5 exit exit 退出来 6 adb push xx
  • 关于GB2312,GBK,GB18030,Unicode,utf-8,utf-16等的字符集和编码问题一次全说清

    文章目录 关于字符 字符集和字符编码 ASCII字符集 ASCII编码 EASCII ASCII扩展 字符集和编码 GB2312字符集和编码 GB18030字符集和编码 BIG5字符集和编码 Unicode字符集 UTF 32编码 UTF
  • CLion配置Qt环境

    配置CLion QT5 前言 一 Qt的安装 二 安装Clion 三 配置Clion 总结 前言 我们在学习或者使用QT开发项目的时候 会使用Qt Creator进行编码 但是Qt Creator编译器对于从PyCharm或者IDEA等Je
  • 数据可视化需求评估内容

    一 参与沟通人员 1 业务需求提出方 2 IT或设计的业务系统运维部门 eg ERP部门 3 报表开发部门人员 二 会议确定内容 1 确定报表使用对象 2 各指标的数据来源是否都有 数据质量 3 数据缺失是否需要补录 补录方式 是否需要帆软
  • Python 抓取数据并可视化

    Python 抓取数据并数据可视化 前言 一 数据抓取篇 更新爬虫代码 2023 3 11 1 简单的构建反爬措施 2 解析数据 3 完整代码 二 数据可视化篇 1 数据可视化库选用 2 案例实战 1 柱状图Bar 2 地图Map 省份 城
  • 深度学习Keras实现CNN结构框架------LeNet、AlexNet、ZFNet、VGGNet、GoogleNet、ResNet

    一 LeNet 5模型的结构图 LeNet 5共有7层 不包含输入 每层都包含可训练参数 连接权重 输入图像为32 32大小 这要比Mnist数据库 一个公认的手写数据库 大小应该是28 28 中最大的字母还大 这样做的原因是希望潜在的明显
  • Mac字体怎么安装?如何在macOS电脑导入字体文件?

    在我们平时见到的广告 摄影水印 报价 专辑封面 书籍封面产品设计 签名 名片 徽标 品牌 杂志 社交媒体文案等等都是需要不同的字体来完成 想要突出你的作品风格 选择一款精美的字体是很重要的 下面让MacW小编带大家学一下Mac字体的安装方法
  • json-server 安装报错 ERR:EPERM

    在学习json server中碰到的问题 在安装json server时 npm install g json server 会报出ERR EPERM的错 就像这样 这是因为没有权限导致的 百度了很多方法都没用 打开windows powe
  • HTML5练习案例——特别休假申请单

    完成 特别休假申请单 表格结构如下图所示 代码实现 h2 style width 500px text align center h2
  • 简单体验K8S的Saas服务-青云KubeSphereCloud轻量集群服务

    简单体验K8S的Saas服务 青云KubeSphereCloud轻量集群服务 背景 之前有写过几篇KubeSphere的使用笔记 使用kubekey的all in one安装K8S1 24及KubeSphere3 3 https lizhi