资源管理

集群管理

Kubernetes是大规模容器集群管理软件,一个集群可以管理一组节点资源,Kubernetes将自动调度容器运行在可用节点上。

菜单路径

产品与服务→计算→容器引擎→资源管理→集群管理

创建集群

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“集群管理”,进入集群列表页面。

4.点击“+ 购买集群”,按要求填写基本信息。(龙芯环境下没有购买集群功能)

包年包月:

1)集群信息

2)选择机型

3)主机配置

4)组件配置

5)确认配置

6.点击“立即购买”,进入集群订单管理页面。

7.确认订单是否正确,点击去支付集群创建成功。

集群管理及操作

操作步骤

1.登录控制台

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“集群管理”,进入集群管理页面。

集群管理页面的基本操作如表1所示。

表1

操作名称 操作 详解
查询 根据集群名称查询。
刷新 清空搜索条件并刷新集群管理页面。
删除 删除集群,此操作不可恢复,请慎重。(龙芯环境无此功能)
扩容 扩容集群,点击扩容可进入扩容界面。 (龙芯环境无此功能)
续费 续费功能(龙芯环境无此功能)
ID/名称 点击集群ID可进入集群详情页面,点击修改集群名称
集群状态 显示集群的运行状态:离线、扩容、运行
正常/总结点 显示集群节点数
CPU(核) 显示集群CPU使用状态
内存(GiB) 显示集群内存使用状态

集群详情

操作步骤

1.登录控制台

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“集群管理”,进入集群管理页面。

4.点击集群ID,进入集群详情页面:

基本信息

  • 基本配置:显示集群的基本配置,点击“编辑”按钮可修改集群名称。

  • 节点列表:显示集群节点信息。点击“移出”按钮可移除节点。

  • 节点列表:显示集群节点信息。点击“绑定弹性ip”按钮可绑定IP。

  • 节点列表:显示集群节点信息。点击"解绑弹性ip" 按钮可解绑IP。

组件实例

监控数据
  • 集群情况:显示集群CPU、内存的使用情况,节点、容器组运行状态。

  • 资源监控:显示CPU、内存近24小时的使用情况。

集群命令操作

  • Kubectl:输入AccessKey 和 SecretKey 可进行下载配置文件;
  • Kubectl创建负载均衡类型的Service,主要注意以下两点;

    • metadata.annotation添加三行注解;
      service.beta.kubernetes.io/inspur-load-balancer-slbid: 负载均衡实例ID,从负载均衡控制台获取
      loadbalancer.inspur.com/forward-rule: 调度算法(RR:轮询,WRR:加权轮询,WLC:加权最小连接数,SH:源IP算法)
      loadbalancer.inspur.com/is-healthcheck: "0"
      
    • spec.type选择LoadBalancer类型。
  • 集群没有开启Istio,通过Kubectl创建Ingress,并暴露服务;

    • 首先,使用kubectl工具,在工作节点安装部署ingress-controller和default-http-backend服务;
    • 然后,创建负载均衡类型的Service,并关联Ingress-controller,同时,负载均衡控制台绑定eip,service的EXTERNAL-IP显示负载均衡绑定的eip,则可以从外部访问ingress-controller服务;
    • 最后,创建ingress,ingress创建示例可以参考下面的YAML实例。同时,配置本地hosts域名解析(负载均衡eip+ingress实例的访问域名),配置好后,就可以通过浏览器访问服务(http://域名:ingress-controller的service NodePort/url),如:http://inspur.ingresstest.com:30080/nginx。
  • 使用Kubectl创建Ingress Controller和默认的Backend服务。

下面的例子使用Nginx来实现一个Ingress Controller(创建ingress-controller的daemonset和service、default-http-backend的deployment和service、rbac权限管理资源):

apiVersion: apps/v1
kind: DaemonSet
metadata:
  labels:
    app: ingress-controller
  name: ingress-controller
  namespace: default ### 任意命名空间,注意和svc,和default-http-backend命民空间保持一致
spec:
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: ingress-controller
  template:
    metadata:
      labels:
        app: ingress-controller
    spec:
      containers:
      - args:
        - /nginx-ingress-controller
        - --default-backend-service=$(POD_NAMESPACE)/default-http-backend ### default-http-backend和ingress-controller部署在同一命名空间
        env:
        - name: POD_NAME
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: metadata.name
        - name: POD_NAMESPACE
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: metadata.namespace
        image: registry.inspurcloud.cn/library/cke/nginx-ingress/nginx-ingress-controller:0.23.0 ### registry.inspurcloud.cn为镜像仓库地址,不同环境镜像仓库地址不同
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 80
          hostPort: 80
          protocol: TCP
        - containerPort: 443
          hostPort: 443
          protocol: TCP
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /healthz
            port: 10254
            scheme: HTTP
          initialDelaySeconds: 10
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1
        name: ingress-controller
      dnsPolicy: ClusterFirst
      hostNetwork: true
      nodeSelector:
        node-role.kubernetes.io/node: "true"
      restartPolicy: Always
  updateStrategy:
    type: OnDelete
---
apiVersion: v1
kind: Service
metadata:
  annotations:
    loadbalancer.inspur.com/forward-rule: RR
    loadbalancer.inspur.com/is-healthcheck: "0"
    service.beta.kubernetes.io/inspur-load-balancer-slbid: slb-1326792503217577984 ### 负载均衡id
  labels:
    app: ingress-controller
  name: ingress-slb-svc
  namespace: default
spec:
  ports:
  - nodePort: 30080
    port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: ingress-controller ### 关联ingress-contrnller
  type: LoadBalancer
---
apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    deployment.kubernetes.io/revision: "1"
  labels:
    k8s-app: default-http-backend
  name: default-http-backend
  namespace: default
spec:
  replicas: 1
  selector:
    matchLabels:
      app: default-http-backend
  strategy:
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 1
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: default-http-backend
    spec:
      containers:
      - image: registry.inspurcloud.cn/library/cke/nginx-ingress/defaultbackend:1.0
        imagePullPolicy: IfNotPresent
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /healthz
            port: 8080
            scheme: HTTP
          initialDelaySeconds: 30
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 5
        name: default-http-backend
        ports:
        - containerPort: 8080
          protocol: TCP
        resources:
          limits:
            cpu: 10m
            memory: 20Mi
          requests:
            cpu: 10m
            memory: 20Mi
      dnsPolicy: ClusterFirst
      nodeSelector:
        node-role.kubernetes.io/node: "true"
      restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
  annotations:
    cloud.inspur.com/defaultsvc: "true"
  labels:
    app: default-http-backend
  name: default-http-backend
  namespace: default
spec:
  ports:
  - name: default-http
    port: 80
    protocol: TCP
    targetPort: 8080
  selector:
    app: default-http-backend
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: ingress-clusterrolebinding
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
  - kind: ServiceAccount ### 命名空间下没有serviceaccount,则需要创建
    name: default
    namespace: default ### 和ingress-controller服务一致

通过ingress提供负载均衡服务示例如下:

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: ingress-test
  annotations:
    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/use-regex: "true"
spec:
  rules:
    - host: inspur.ingresstest.com ### 访问域名
      http:
        paths:
          - path: /nginx ### url
            backend:
              serviceName: deploy-test-default-svc ### 服务service的名称
              servicePort: 80
---
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: deploy-test
  name: deploy-test
  namespace: default
spec:
  selector:
    matchLabels:
      app: deploy-test
  template:
    metadata:
      labels:
        app: deploy-test
      name: deploy-test
    spec:
      containers:
      - image: registry.inspurcloud.cn/nginx/nginx:v0.0.1 ### 服务镜像
        imagePullPolicy: IfNotPresent
        name: container-001
        ports:
        - containerPort: 80
          name: 5qnss-tcp-80
          protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
  annotations:
    cloud.inspur.com/defaultsvc: "true"
  labels:
    app: deploy-test
  name: deploy-test-default-svc
  namespace: default
spec:
  ports:
  - name: http-80-80-snzqv
    port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: deploy-test
Web Terminal操作

  • Web Terminal:可进行连接web terminal。

日志操作

1.操作日志可查看集群的安装进度如图:

  • 可查询集群的创建、扩容、删除、移除节点详情。

集群扩容(龙芯环境无此功能)

操作步骤

1.登录控制台

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“集群管理”,进入集群列表页面。

4.点击“集群扩容”,进入扩容界面:

属性名称 填写规则
集群名称 显示集群名称。
状态 集群的状态。
集群规模 显示集群规模。
已有节点数 显示已有的节点数
CPU 选择CPU:4核、8核、16核。
计费模式 按需计费或者包年
标准规格 从规格列表选择
内存 选择内存: 8GiB、16GiB。
磁盘 设定系统盘容量,最小100GiB 最大1000GiB。
Worker数 设定Worker节点数,最小1 最大10。
Worker总数 显示Worker总数。
密码 8-16个字符,由数字、大小写字母、特殊字符三者组成,支持英文特殊字符~!@#$%^&*?/()_-+=
确认密码 8-16个字符,由数字、大小写字母、特殊字符三者组成,支持英文特殊字符~!@#$%^&*?/()_-+=

纳管

操作步骤

1.登录控制台

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“集群管理”,进入集群列表页面。

4.点击“纳管”,进入纳管界面:

属性名称 填写规则
集群名称 显示集群名称。
Docker版本 显示Docker版本。
虚拟私有网络 显示虚拟私有网络。
云服务器 建议纳管云服务器最小规格为4核 8Gib ;云服务器系统操作版本为ubuntu18.04.1 ; 云服务器需提前安装iptables和denyhosts
登录方式 可选择密钥或密码
密码 输入密码 和确认密码
密钥 请先上传密钥文件,然后自动生产密钥对

节点管理

节点是接入到集群的计算资源,是集群的工作节点。

菜单路径

产品与服务→计算→容器引擎→资源管理→节点管理

节点列表及操作

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“节点管理”,进入节点列表页面。

4.列表中的基本操作如表2所示。

表2

操作名称 操作 详解
查询 选择集群,节点状态(可用、不可用、未知)再按名称查询。
刷新 清空搜索条件并刷新节点列表。
节点名称 进入节点详情页面,支持“基本信息”查看。

5.点击列表中的编辑标签可进行增加、删除和修改标签如图:

6.点击列表中的添加污点可进行增加、删除和修改污点如图:

7.点击列表中的节点名称可查看详情包括节点详情、资源分配、容器组、监控和污点。

8.资源分配如图:

9.容器组如图:

10.监控:可查看CPU和内存、存储和磁盘、I/O和网络如图:

节点池管理

节点池帮助用户更好地管理 Kubernetes 集群内的节点。

菜单路径

产品与服务→计算→容器引擎→资源管理→节点池管理

创建节点池

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“节点池管理”,进入节点池列表页面。

4.点击“创建节点池”,进入创建节点池界面:

属性名称 填写规则
节点池名称 显示节点池名称
节点数量 节点池的初始节点数量
弹性伸缩 开关节点池自动扩缩容,需要安装 autoscaler 组件才可开启
节点上限 开启弹性伸缩时可配置,当节点池有多少节点时停止自动扩容,节点上限不能超过集群可管理的最大节点数
节点下限 开启弹性伸缩时可配置,当节点池有多少节点时停止自动缩容,最小可缩容至 0 节点
优先级 开启弹性伸缩时可配置,自动扩容时的节点池优先级,数值越大节点池的优先级越高;当优先级相同时,将按照最小浪费原则,根据规格选择扩容后既能满足 Pending 的 Pod 正常调度,又浪费资源最少的节点池;当节点池规格也相同时,则随机选取一个进行扩容
弹性缩容冷却时间 开启弹性伸缩时可配置,集群触发缩容后节点池多长时间内不能继续缩容
标准规格 选择节点池节点规格
磁盘 设定系统盘容量
登录方式 选择节点登录方式,支持密码和密钥两种
密码 密码登录方式:8-32个字符,必须包含大小写字母、数字和特殊字符,支持以下英文特殊字符!%()*+,-./:;<=>?@^_{ }~
确认密码 密码登录方式:8-32个字符,必须包含大小写字母、数字和特殊字符,支持以下英文特殊字符!%()*+,-./:;<=>?@^_{ }~
密钥对 秘钥登录方式:选择密钥对

节点池列表及操作

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“节点池管理”,进入节点池列表页面。

  • DefaultPool:创建集群时会自动创建默认节点池,创建集群时的初始节点都归属于默认节点池,通过集群管理里的集群扩容功能创建的节点也归属于默认节点池,默认节点池不可进行操作。

列表中的基本操作如表3所示。

表3

操作名称 操作 详解
查询 选择集群,再按节点池名称查询。
刷新 清空搜索条件并刷新节点池列表。
节点池名称 进入节点池详情页面,支持“基本信息”、“节点列表”、“伸缩历史”查看。
伸缩 伸缩节点池内节点的数量。
编辑 编辑节点池弹性伸缩相关配置。
删除 删除节点池。

4.点击列表中的节点池名称可查看详情,包括基本信息、节点列表、伸缩历史。

  • 节点列表如图:

  • 伸缩历史如图:

5.点击列表中的伸缩按钮可以修改节点池内节点的数量。

6.点击列表中的编辑按钮可以修改节点池弹性伸缩相关配置。

7.点击列表中的删除按钮可以删除节点池。

autoscaler 组件

节点池的弹性伸缩功能需要借助 autoscaler 组件来实现,当有 pod 处于 pending 状态或者满足扩容策略规则时,autoscaler 会对节点池进行扩容;当节点池内节点的资源利用率较低时,且此节点上存在的 pod 都能被重新调度到其他节点上运行时,autoscaler 会对此节点采取缩容操作。

组件参数:

属性名称 填写规则
自动缩容 开关自动缩容功能
百分比 当集群节点资源(CPU、内存)低于多少百分比时,认定节点为空闲状态,默认50%
空置时间 节点处于多长时间的空闲状态时,会触发缩容操作,默认10分钟
扩容后缩容冷却时间 autoscaler 触发扩容后整个集群多长时间内不能被缩容,默认10分钟
节点删除后缩容冷却时间 autoscaler 触发缩容后整个集群多长时间内不能继续缩容,默认10分钟
缩容失败后缩容冷却时间 缩容失败后整个集群多长时间内不能继续缩容,默认3分钟
空节点缩容最大并发数 缩容时一次最多能够缩容多少节点
自动扩容 未调度示例扩容:当有 pod 处于 pending 状态时触发节点池扩容

弹性伸缩

弹性伸缩根据 Pod 调度状态及资源使用情况对集群的节点进行自动扩容缩容,使用本功能需要提前安装 autoscaler 组件。

菜单路径

产品与服务→计算→容器引擎→资源管理→弹性伸缩

创建弹性伸缩

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“弹性伸缩”,进入弹性伸缩列表页面。

4.点击“创建弹性伸缩”,进入创建弹性伸缩界面:

5.点击“添加”,进入添加规则信息界面:

  • 添加定时触发规则

  • 添加指标触发规则

属性名称 填写规则
集群 选择创建弹性伸缩的集群
名称 显示弹性伸缩的名称
关联节点池 选择弹性伸缩规则生效的节点池,可同时关联多个节点池
是否启用 控制弹性伸缩规则是否生效
添加规则信息 添加弹性伸缩规则,支持“定时触发”、“指标触发”两种触发类型的规则
规则名称 显示伸缩规则的名称
策略类型 选择伸缩规则的触发类型
触发时间 选择定时触发的触发时间
条件 选择指标触发的条件,支持“CPU分配率”、“内存分配率”两种
执行动作 触发规则生效时节点池的执行动作

弹性伸缩列表及操作

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“弹性伸缩”,进入弹性伸缩列表页面。

列表中的基本操作如表4所示。

表4

操作名称 操作 详解
查询 选择集群,再按弹性伸缩状态、名称查询。
刷新 清空搜索条件并刷新弹性伸缩列表。
伸缩名称 进入弹性伸缩详情页面,支持“基本信息”、“关联节点池”、“执行规则”、“伸缩历史”查看。
编辑 编辑弹性伸缩相关配置。
禁用 禁用弹性伸缩规则。
启用 启用弹性伸缩规则。
删除 删除弹性伸缩。

4.点击列表中的弹性伸缩名称可查看详情,包括基本信息、关联节点池、执行规则、伸缩历史。

  • 关联节点池如图:

  • 执行规则如图:

  • 伸缩历史如图:

5.点击列表中的编辑按钮可以编辑弹性伸缩的配置。

6.点击列表中的禁用按钮可以禁用弹性伸缩策略。

7.点击列表中的启用按钮可以启用弹性伸缩策略。

8.点击列表中的删除按钮可以删除弹性伸缩策略。

组件管理

组件包含一个或多个应用,以容器或Linux进程的方式运行在集群的节点上。组件负责对集群的功能进行增强和扩展。

菜单路径

产品与服务→计算→容器引擎→资源管理→组件管理

组件市场列表及操作

操作步骤

1.点击安装,可对集群进行组件安装:如:

2.组件详情:如:

组件实例列表及操作

1.组件实例列表,可对集群进行升级和删除组件功能:如:

2.实例详情:如:

Volcano组件

组件简介

Volcano是一个基于Kubernetes的容器批量计算平台,主要用于高性能计算场景。补充了Kubernetes在高性能计算场景中需要的一些特性,这些特性通常是机器学习大数据应用、科学计算、特效渲染等多种高性能工作负载所需的。作为一个通用批处理平台,Volcano与几乎所有的主流计算框架无缝对接,如Spark 、TensorFlow 、PyTorch 、 Flink 、Argo 、MindSpore 、 PaddlePaddle 等。它还提供了包括基于各种主流架构的CPU、GPU在内的异构设备混合调度能力。Volcano的设计理念建立在15年来多种系统和平台大规模运行各种高性能工作负载的使用经验之上,并结合来自开源社区的最佳思想和实践。

组件项目开源地址:https://github.com/volcano-sh/volcano

组件项目官方文档:https://volcano.sh/zh/docs/

使用说明

MPI框架演示用例
apiVersion: batch.volcano.sh/v1alpha1
kind: Job
metadata:
  name: lm-mpi-job
spec:
  minAvailable: 3
  schedulerName: volcano
  plugins:
    ssh: []
    svc: []
  tasks:
    - replicas: 1
      name: mpimaster
      policies:
        - event: TaskCompleted
          action: CompleteJob
      template:
        metadata:
          labels:
            pod-template-hash: "6c7778b874"
            user: inspurtest01
            user_group: group-inspurtest01
        spec:
          containers:
            - command:
                - /bin/sh
                - -c
                - |
                  MPI_HOST=`cat /etc/volcano/mpiworker.host | tr "\n" ","`;
                  mkdir -p /var/run/sshd; /usr/sbin/sshd;
                  mpiexec --allow-run-as-root --host ${MPI_HOST} -np 2 mpi_hello_world;
              #image: volcanosh/example-mpi:0.0.1
              image: registry-dev.inspurcloud.cn/library/cks/volcanosh/example-mpi:0.0.1
              name: mpimaster
              ports:
                - containerPort: 22
                  name: mpijob-port
              workingDir: /home
          restartPolicy: OnFailure
    - replicas: 2
      name: mpiworker
      template:
        metadata:
          labels:
            pod-template-hash: "6c7778b874"
            user: inspurtest01
            user_group: group-inspurtest01
        spec:
          containers:
            - command:
                - /bin/sh
                - -c
                - |
                  mkdir -p /var/run/sshd; /usr/sbin/sshd -D;
              #image: volcanosh/example-mpi:0.0.1
              image: registry-dev.inspurcloud.cn/library/cks/volcanosh/example-mpi:0.0.1
              name: mpiworker
              ports:
                - containerPort: 22
                  name: mpijob-port
              workingDir: /home
          restartPolicy: OnFailure
MNIST 数据集演示用例
apiVersion: batch.volcano.sh/v1alpha1
kind: Job
metadata:
  name: mindspore-cpu
spec:
  minAvailable: 1
  schedulerName: volcano
  policies:
    - event: PodEvicted
      action: RestartJob
  plugins:
    ssh: []
    env: []
    svc: []
  maxRetry: 5
  queue: default
  tasks:
    - replicas: 4
      name: "pod"
      template:
        spec:
          containers:
            - command: ["/bin/bash", "-c", "python /tmp/lenet.py"]
              #image: lyd911/mindspore-cpu-example:0.2.0
              image: registry-dev.inspurcloud.cn/library/cks/volcanosh/mindspore-cpu-example:0.2.0
              imagePullPolicy: IfNotPresent
              name: mindspore-cpu-job
              resources:
                limits:
                  cpu: "1"
                requests:
                  cpu: "1"
          restartPolicy: OnFailure
用例测试

将以上用例文件内容通过集群的 Web Terminal 功能在集群中进行测试

容器引擎→资源管理→集群管理→集群详情→Web Terminal

#将演示用例内容粘贴到文件中
vi volcano-test.yaml
#使用文件创建演示用例
kubectl create -f volcano-test.yaml
#查看演示用例
kubectl get vcjob
#查看执行用例的pod
kubectl get po 
#查看用例执行日志
kubectl logs {{podName}}

使用文件创建演示用例 查看演示用例\查看执行用例的pod 查看用例执行日志

命名空间

命名空间是一组资源的集合,这些资源包括CPU、内存、存储、网络等。你可以创建命名空间,设置各种资源的配额,然后分配给用户使用。用户的应用会被部署到命名空间中,并受其配额的限制,使其所能够使用的CPU、内存、存储、网络等资源可控。

菜单路径

产品与服务→计算→容器引擎→资源管理→命名空间

创建命名空间

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“命名空间”,进入命名空间列表页面。

4.点击"+ 创建空间",按要求填写基本信息。

属性名称 填写规则
集群名称 选择集群。
空间名称 空间名称允许输入小写字母、数字、-,不能以-开头或结尾,长度不能超过20。命名空间不能输入大写字母
空间描述 空间描述允许输入汉字、大小写字母、数字、-,不能以-开头或结尾,长度不能超过20。
存储信息 选择存储类型。
  • 高级配置(选填):
属性名称 填写规则
隔离网络 选择隔离网络是否开启。
安全策略 选择安全策略。
CPU 设定CPU,输入正整数。
内存 设定内存,输入正整数。
卷个数 卷是kubernetes中的pvc,对应一块存储空间,可被挂载到容器上,供应用程序或中间件使用,输入正整数。
容器组个数 设定容器组个数,输入正整数。
容器组CPU 设定容器组CPU,输入正整数。
容器组内存 设定容器组内存,输入正整数。

5.点击“提交”,创建完成。

命名空间列表及操作

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“命名空间”,进入命名空间列表页面。如图:

列表中的基本操作如表5所示

表5

操作名称 操作 详解
查询 按空间描述查询。
空间名称 进入命名空间详情页面,支持“基本信息”查看。
编辑 进入编辑页面,修改命名空间基本信息。
更多 可进入删除、分配用户界面。
刷新 清空搜索条件并刷新列表。
删除
删除应用,此操作不可恢复,请慎重。
分配用户
进入分配用户页面

分配用户

操作步骤

未分配 :

  1. 输入要查找的用户名或id,点击“”。

  2. 选择未已分配的命名空间,可以选择多项。

  3. 点击“分配”

已分配 :

  1. 输入要查找的用户名或id,点击“”。

  2. 选择收回的命名空间,可以选则多项。

  3. 点击“收回”

网络策略

网络策略用于隔离命名空间的网络,也可以在命名空间内部隔离pod的网络,网络策略只适用于容器网络的工作负载。

菜单路径

产品与服务→计算→容器引擎→资源管理→网络策略

创建网络策略

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“网络策略”,进入网络策略列表页面。

4.点击“+ 创建网络策略”,按要求填写信息。

5.如图:

属性名称 填写规则
名称 名称允许输入大小写字母、数字、-,不能以-开头或结尾。
命名空间 选择已存在的命名空间。
容器标签 添加容器标签。
访问容器标签 添加访问容器标签。

4.点击“提交”,创建完成,返回列表页面。

网络策略列表及操作

操作步骤

1.登录控制台。

2.点击“产品与服务”选择“计算”>“容器引擎”,进入容器引擎页面。

3.点击“资源管理”选择“网络策略”,进入网络策略列表页面。如图:

列表中的基本操作如表6所示。

表6

操作名称 操作 详解
查询 按网络策略名称查询。
网络策略名称 进入网络策略详情页面,支持“基本信息”查看。
编辑 进入编辑页面,修改网络策略的基本信息。
刷新 清空搜索条件并刷新列表。
删除 删除应用,此操作不可恢复,请慎重。

日志管理

用户通过日志管理可以查询容器引擎的日志信息。该功能最多展示1000条数据且至少精确到某一应用名称或者某一命名空间方可查询。

菜单路径

产品与服务→计算→容器引擎→资源管理→日志管理

日志列表及操作

操作步骤

1.登录控制台。

2.点击“集群管理”,选择左侧导航栏中的日志管理,进入日志管理页面。

3.选择具体的应用或命名空间查询。

1)根据命名空间

属性名称 详情
集群 选择要查看的命名空间所在的集群。
命名空间 选择要查看的命名空间 。
pod名称 选择要创建应用实例的应用。
关键字 日志内容的关键字。
开始时间 选择要查看的起始时间。
结束时间 选择要查看的结束时间。

2)根据应用

属性名称 详情
集群 选择要查看的应用所在的集群。
应用名称 选择要查看的应用。
关键字 日志内容的关键字。
开始时间 选择查看的起始时间。
接束时间 选择查看的结束时间。

3.点击“搜索"按钮进行查看。

存储管理

存储管理用于管理容器的持久化卷,主要支持云盘、对象存储、NFS存储、本地存储四种类型。

菜单路径

产品与服务→计算→容器引擎→资源管理→存储管理

存储管理列表及操作

操作步骤

1.登录控制台。

2.点击“资源管理”,选择左侧导航栏中的存储管理,进入存储管理页面。

1)存储卷列表: 如图

属性名称 详情
点击创建存储卷进入创建页面
集群 选择要查看的命名空间所在的集群。
根据名称查询数据
点击编辑进入编辑页面
点击删除,删除数据
列表名称列 点击名称进入详情页面

2)创建存储卷: 如图

2.1)存储类型选择:云硬盘

属性名称 详情
集群 选择要创建的集群
存储类型 选择要创建的存储类型
云硬盘 选择要创建的云硬盘
描述 请输入描述
访问方式 ReadWriteOnce(默认)
回收策略 选择回收策略
存储容量 输入存储容量

2.2)存储类型选择:对象存储

属性名称 详情
集群 选择要创建的集群
存储类型 选择要创建的存储类型
名称 长度2-128,名称允许输入小写字母、-、数字,不能以-开头或结尾。
描述 请输入描述
访问方式 选择访问方式
回收策略 Retain(保留资源) (默认)
存储容量 输入存储容量
accessKey 请选择accessKey
存储桶 请选择存储桶
访问域名 根据选择的存储桶自动填充访问域名
secretKey 输入secretKey

2.3)存储类型选择:对象存储

属性名称 详情
集群 选择要创建的集群
存储类型 选择要创建的存储类型
名称 长度2-128,名称允许输入小写字母、-、数字,不能以-开头或结尾。
描述 请输入描述
访问方式 选择访问方式
回收策略 Retain(保留资源) (默认)
存储容量 输入存储容量
nodeSelector 请输入key 和value
path 请输入path

3: 点击存储卷名称进入详情页;如图

4: 点击存储卷名称进入详情页;如图

5: 点击创建存储声明进入创建页;如图

属性名称 详情
集群 选择要创建的集群
名称 名称允许输入小写字母、数字、-,不能以-开头或结尾。
命名空间 请选择命名空间
访问方式 选择访问方式
存储卷类型 请选择存储类型
选择存储卷 请选择存储卷

6: 点击存储声明名称进入存储名称详情页;如图

7: 点击存储声明编辑按钮进入编辑页面;如图

域名映射

服务域名是为微服务提供外部访问能力的基础域名。 集群绑定弹性IP后,会默认生成一个xip域名(格式为:{IP}.xip.io)。也可是自行申请的域名,并确保域名能解析到当前集群的弹性IP。

菜单路径

产品与服务→计算→容器引擎→资源管理→服务域名

域名映射列表及操作

操作步骤

1.登录控制台。

2.点击“资源管理”,选择左侧导航栏中的服务域名,进入域名映射页面。

属性名称 详情
创建域名映射 点击进入创建域名映射
可按名称搜索

3.点击“创建域名映射”,进入创建页面:如图。

属性名称 详情
集群 选择要创建的集群环境
域名 请输入1到235个字符串,由小写字符,数字,连接符"-",小数点组成。只可单独出现,且至少包含一个“.”。并且必须以小写字母或数字开头和结尾

4.点击“变更配置”,进入编辑页面:如图。

属性名称 详情
集群 选择要创建的集群环境
域名 请输入1到235个字符串,由小写字符,数字,连接符"-",小数点组成。只可单独出现,且至少包含一个“.”。并且必须以小写字母或数字开头和结尾