`
maosheng
  • 浏览: 568109 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Kubernetes 应用编排、管理与运维

k8s 
阅读更多
一、kubectl 运维命令

kubectl controls the Kubernetes cluster manager.

Find more information at: https://kubernetes.io/docs/reference/kubectl/overview/

Basic Commands (Beginner):
  create        Create a resource from a file or from stdin.
  expose        使用 replication controller, service, deployment 或者 pod 并暴露它作为一个 新的 Kubernetes Service
  run           在集群中运行一个指定的镜像
  set           为 objects 设置一个指定的特征

Basic Commands (Intermediate):
  explain       查看资源的文档
  get           显示一个或更多 resources
  edit          在服务器上编辑一个资源
  delete        Delete resources by filenames, stdin, resources and names, or by resources and label selector

Deploy Commands:
  rollout       Manage the rollout of a resource
  scale         Set a new size for a Deployment, ReplicaSet or Replication Controller
  autoscale     自动调整一个 Deployment, ReplicaSet, 或者 ReplicationController 的副本数量

Cluster Management Commands:
  certificate   修改 certificate 资源.
  cluster-info  显示集群信息
  top           Display Resource (CPU/Memory/Storage) usage.
  cordon        标记 node 为 unschedulable
  uncordon      标记 node 为 schedulable
  drain         Drain node in preparation for maintenance
  taint         更新一个或者多个 node 上的 taints

Troubleshooting and Debugging Commands:
  describe      显示一个指定 resource 或者 group 的 resources 详情
  logs          输出容器在 pod 中的日志
  attach        Attach 到一个运行中的 container
  exec          在一个 container 中执行一个命令
  port-forward  Forward one or more local ports to a pod
  proxy         运行一个 proxy 到 Kubernetes API server
  cp            复制 files 和 directories 到 containers 和从容器中复制 files 和 directories.
  auth          Inspect authorization

Advanced Commands:
  diff          Diff live version against would-be applied version
  apply         通过文件名或标准输入流(stdin)对资源进行配置
  patch         使用 strategic merge patch 更新一个资源的 field(s)
  replace       通过 filename 或者 stdin替换一个资源
  wait          Experimental: Wait for a specific condition on one or many resources.
  convert       在不同的 API versions 转换配置文件
  kustomize     Build a kustomization target from a directory or a remote url.

Settings Commands:
  label         更新在这个资源上的 labels
  annotate      更新一个资源的注解
  completion    Output shell completion code for the specified shell (bash or zsh)

Other Commands:
  alpha         Commands for features in alpha
  api-resources Print the supported API resources on the server
  api-versions  Print the supported API versions on the server, in the form of "group/version"
  config        修改 kubeconfig 文件
  plugin        Provides utilities for interacting with plugins.
  version       输出 client 和 server 的版本信息

Usage:
  kubectl [flags] [options]

Use "kubectl <command> --help" for more information about a given command.
Use "kubectl options" for a list of global command-line options (applies to all commands).


二、kubectl 命令详解:

#查看

#查看所有对象
kubectl get all
#查看namespace
kubectl get namespace
# 查看 node
kubectl get nodes
kubectl get node <node-name> -o yaml  ##查看node的 yaml 文件
kubectl get node --show-labels        ##查看node的标签
#查看所有namespace的pods运行情况
kubectl get pods --all-namespaces
查看Pod所有标签
kubectl get pods --show-labels
查看标签env=dev的Pods
kubectl get pods --show-labels -l env=dev
查看标签env=dev并tie=front的Pods
kubectl get pods --show-labels -l env=dev,tie=front
查看标签env=test,dev的Pods
kubectl get pods --show-labels -l 'env in (test,dev)'
根据标签查看pods
kubectl get pods -l app=nginx
#查看具体pods,记得后边跟namespace名字哦
kubectl get pods  kubernetes-dashboard-76479d66bb-nj8wr --namespace=kube-system
# 查看pods具体信息
kubectl get pods -o wide kubernetes-dashboard-76479d66bb-nj8wr --namespace=kube-system
# 查看 pod 的 yaml 信息
#kubectl get pod kubernetes-dashboard-latest-3665071062-b5k84 --namespace=kube-system  -o yaml
# 查看 pod 动态
kubectl get pod --watch  ## kubectl get pod -w
# 查看 pod 调度信息
kubectl get pod -o wide
# 查看集群健康状态
kubectl get cs
# 获取所有deployment
kubectl get deployment --all-namespaces
# 查看具体的 deployment
kubectl get deployment nginx-app
# 查看 replicaset
kubectl get replicasets   ## kubectl get rs
# 查看rc和servers
kubectl get rc,svc
kubectl get replicaset  ## kubectl get rc
kubectl get service     ## kubectl get svc
# 查看DaemonSet
Kubectl get ds   
kubectl get daemonsets
# 查看pods结构信息(重点,通过这个看日志分析错误)
# 对控制器和服务,node同样有效
kubectl describe pods xxxxpodsname --namespace=xxxnamespace
# 查看pod日志
kubectl logs $POD_NAME
# 查看pod变量
kubectl exec my-nginx-5j8ok -- printenv | grep SERVICE
# 查看deployment动态
kubectl get --watch deployments
# 查看 statefulset
kubectl get sts ## kubectl get statefulsets
# 查看endpoint
kubectl get endpoints
kubectl get endpoints --all-namespaces
# 查看job,cronjobs
kubectl get jobs
kubectl describe job tj-org-import-job-1596090600
kubectl get cronjobs
kubectl get cronjobs tj-org-import-job -o yaml
# 查看pvc,pv
kubectl get pvc
kubectl get pv
# 查看 serviceaccout
kubectl get serviceaccout
kubectl get serviceaccout default
kubectl get serviceaccout default -o yaml
kubectl get serviceaccount --all-namespace  ## kubectl get sa --all-namespace
# 查看 secret
kubectl get secret
kubectl get secret default-token-xxxx -o yaml
echo -n "xxxxx" | base64 --decode  ## base64解码
# 查看 role,rolebinding
kubectl get role
kubectl get clusterrole
kubectl get rolebinding
kubectl get clusterrolebinding
# 查看 configmap
kubectl get configmap
# 查看 component status
kubectl get cs  ## kubectl get componentstatus
NAME                 STATUS    MESSAGE             ERROR
controller-manager   Healthy   ok                 
scheduler            Healthy   ok                 
etcd-0               Healthy   {"health":"true"}
# 查看资源的文档
kubectl explain pods            ##查看pod提供的完整配置字段
kubectl explain pods.metadata   ##查看pod.metadata提供的完整配置字段
kubectl explain pod.spec        ##查看pod.sepc提供的完整配置字段
kubectl explain pod.spec.containers
kubectl explain pod.spec.containers.livenessProbe


# 集群
# 查看集群健康状态
kubectl get cs
# 集群核心组件运行情况        
kubectl cluster-info   
# 表空间名
kubectl get namespaces 
# Server,Client版本 
kubectl version     
# API 版本    
kubectl api-versions 
# 查看事件   
kubectl get events     
//获取全部节点
kubectl get nodes     
//删除节点
kubectl delete node k8s2 
# 查看变更进度
kubectl rollout status deploy nginx-test

# 创建
# 创建资源
kubectl create -f pod-demo.yaml   ## -f file类型
kubectl create -f ./nginx.yaml    
# 创建当前目录下的所有yaml资源     
kubectl create -f .          
# 使用多个文件创建资源                
kubectl create -f ./nginx1.yaml -f ./mysql2.yaml    
# 使用目录下的所有清单文件来创建资源
kubectl create -f ./dir      
# 使用 url 来创建资源               
kubectl create -f https://git.io/vPieo        
#创建带有终端的pod
kubectl run -i --tty busybox --image=busybox   
# 启动一个 nginx 实例
kubectl run nginx --image=nginx          
#启动多个pod    
kubectl run mybusybox --image=busybox --replicas=5   
# 获取 pod 和 svc 的文档
kubectl explain pods
kubectl explain svc                     

# 更新
# 滚动更新 pod
kubectl rolling-update python-v1 -f python-v2.json           frontend-v1
# 更新资源名称并更新镜像
kubectl rolling-update python-v1 python-v2 --image=image:v2 
# 更新 pod 中的镜像
kubectl rolling-update python --image=image:v2                
# 退出已存在的进行中的滚动更新
kubectl rolling-update python-v1 python-v2 --rollback       
#为 nginx RC 创建服务,启用本地 80 端口连接到容器上的 8000 端口
kubectl expose rc nginx --port=80 --target-port=8000
#更新单容器 pod 的镜像版本(tag)到 v4
kubectl get pod nginx-pod -o yaml | sed 's/\(image: myimage\):.*$/\1:v4/' | kubectl replace -f -
# 添加标签
kubectl label pods nginx-pod new-label=awesome 
# 添加注解                   
kubectl annotate pods nginx-pod icon-url=http://goo.gl/XXBTWq   
升级Deployment
#kubectl set image deployment nginx-deployment nginx=nginx:1.9.1
查询升级状态
#kubectl rollout status deployment nginx-deployment
弹性扩/缩容
#kubectl scale deployment nginx-deployment --replicas=10
# 自动扩展 deployment              
kubectl autoscale deployment nginx-deployment --min=10 --max=15 --cpu-percent=80  #回滚上一个的版本
kubectl rollout undo deployment nginx-deployment 
#回滚到以前制定的版本 
kubectl rollout undo deployment nginx-deployment --to-revision=3 
#查看deployment历史修订版本
kubectl rollout history deployment nginx-deployment  
#查看制定的版本deployment历史修订版本
kubectl rollout history deployment nginx-deployment --reversion=3 
暂停/恢复
#kubectl rollout pause deployment nginx-deployment
#kubectl rollout resume deployment nginx-deployment


# 编辑资源
# 编辑名为 docker-registry 的 service
kubectl edit svc/docker-registry  
# 编辑名为 nginx-deployment的deployment                 
kubectl edit deployment/nginx-deployment            
# 动态伸缩,将foo副本集变成3个
kubectl scale --replicas=3 rs/foo 
# 缩放“foo”中指定的资源。                              
kubectl scale --replicas=3 -f foo.yaml    
# 将deployment/mysql从2个变成3个                      
kubectl scale --current-replicas=2 --replicas=3 deployment/mysql 
# 变更多个控制器的数量
kubectl scale --replicas=5 rc/foo rc/bar rc/baz                  
# 查看变更进度
kubectl rollout status deploy deployment/mysql

kubectl edit configmap [configmapname]
kubectl edit deployment [deploymentname]                        

# 删除
# 删除 pod.json 文件中定义的类型和名称的 pod
kubectl delete -f ./pod.json                                             
# 删除名为“baz”的 pod 和名为“foo”的 service
kubectl delete pod,service baz foo                                       
# 删除具有 name=myLabel 标签的 pod 和 serivce
kubectl delete pods,services -l name=myLabel                             
# 删除 my-ns namespace下的所有 pod 和 serivce,包括尚未初始化的  
kubectl -n my-ns delete po,svc --all
# 强制删除pod
kubectl delete pods prometheus-7fcfcb9f89-qkkf7 --grace-period=0 --force
强制删除rc
#kubectl delete rc nginx-controller --force --cascade=false ##删除RC,不删除Pod,默认是级联删除
强制删除deployment
#kubectl delete deployment kubernetes-dashboard-latest  --namespace=kube-system --force=true --cascade=false
# 删除yaml 文件对应的pod
kubectl delete -f pod-demo.yaml  ## -f file类型

kubectl delete rc --cascade=false  ##删除RC,不删除Pod,默认是级联删除  kubectl delete replicationcontrollers

# 交互
# dump 输出 pod 的日志(stdout)
kubectl logs nginx-pod    
# dump 输出 pod 中容器的日志(stdout,pod 中有多个容器的情况下使用) 
kubectl logs -f <pod-name> -c <container-name>                      
kubectl logs nginx-pod -c my-container    
docker logs -f <docker-name>  
# 流式输出 pod 的日志(stdout)          
kubectl logs -f nginx-pod  
# 流式输出 pod 中容器的日志(stdout,pod 中有多个容器的情况下使用)                          
kubectl logs -f nginx-pod -c my-container    
# 交互式 shell 的方式运行 pod        
kubectl run -i --tty busybox --image=busybox -- sh 
# 连接到运行中的容器
kubectl attach nginx-pod -i  
# 转发 pod 中的 6000 端口到本地的 5000 端口                        
kubectl port-forward nginx-pod 5000:6000  
# 在已存在的容器中执行命令(只有一个容器的情况下)           
kubectl exec nginx-pod -- ls /       
# 在已存在的容器中执行命令(pod 中有多个容器的情况下)                
kubectl exec nginx-pod -c my-container -- ls /    
# 显示指定 pod和容器的指标度量   
kubectl top pod POD_NAME --containers    
进入一个正在运行的Pod
#kubectl exec -it pod-name /bin/bash
进入一个正在运行的包含多个容器的Pod
kubectl exec -it <pod-name> -c <container-name> /bin/sh   ##进入容器
kubectl exec -it pod-name -c container-name /bin/bash   
docker exec -it <container-name> /bin/sh   ##进入容器

[root@k8s-master ~]# kubectl exec -it nginx-deployment-5658f5b9cb-z8dgp -c nginx /bin/bash
[root@k8s-master ~]# kubectl exec -it nginx-deployment-5658f5b9cb-pntsk -c nginx /bin/bash
root@nginx-deployment-5658f5b9cb-z8dgp:/usr/sbin#./nginx -s reload 
root@nginx-deployment-5658f5b9cb-pntsk:/usr/sbin#./nginx -s reload     

# 调度配置
# 标记 my-node 不可调度
$ kubectl cordon k8s-node  
# 清空 my-node 以待维护                                           
$ kubectl drain k8s-node  
# 标记 my-node 可调度                                             
$ kubectl uncordon k8s-node      
# 显示 my-node 的指标度量                                      
$ kubectl top node k8s-node 
# 将当前集群状态输出到 stdout                                           
$ kubectl cluster-info dump     
# 将当前集群状态输出到 /path/to/cluster-state                                      
$ kubectl cluster-info dump --output-directory=/path/to/cluster-state  
#如果该键和影响的污点(taint)已存在,则使用指定的值替换
$ kubectl taint nodes foo dedicated=special-user:NoSchedule

标签
# 通过标签过滤
kubectl get pods -l app  ##有app key的标签
kubectl get pods -l app,release ## 有app,release key的标签2
kubectl get pods -l app=ngnix  ##标签app=nginx
kubectl get pods -l app=nginx,release=stable  ##标签app=nginx且release=stable
kubectl get pods -l app=nginx,release!=stable  ##标签app=nginx且release!=stable
kubectl get pods -l "release in(alpha,beta)"
kubectl get pods -l "release noin(alpha,beta)"
# 添加标签
kubectl label pods pod-demo release=alpha
# 修改标签
kubectl label pods pod-demo release=stable --overwrite
# 显示标签
kubectl get pods pod-demo --show-labels
# 删除标签
kubectl label pod pod-demo release-

提示:其他资源对象同理

kubectl get 资源如下:
 
  * all 
  * certificatesigningrequests (aka 'csr') 
  * clusterrolebindings 
  * clusterroles 
  * componentstatuses (aka 'cs') 
  * configmaps (aka 'cm') 
  * controllerrevisions 
  * cronjobs 
  * customresourcedefinition (aka 'crd') 
  * daemonsets (aka 'ds') 
  * deployments (aka 'deploy') 
  * endpoints (aka 'ep') 
  * events (aka 'ev') 
  * horizontalpodautoscalers (aka 'hpa') 
  * ingresses (aka 'ing') 
  * jobs 
  * limitranges (aka 'limits') 
  * namespaces (aka 'ns') 
  * networkpolicies (aka 'netpol') 
  * nodes (aka 'no') 
  * persistentvolumeclaims (aka 'pvc') 
  * persistentvolumes (aka 'pv') 
  * poddisruptionbudgets (aka 'pdb') 
  * podpreset 
  * pods (aka 'po') 
  * podsecuritypolicies (aka 'psp') 
  * podtemplates 
  * replicasets (aka 'rs') 
  * replicationcontrollers (aka 'rc') 
  * resourcequotas (aka 'quota') 
  * rolebindings 
  * roles 
  * secrets 
  * serviceaccounts (aka 'sa') 
  * services (aka 'svc') 
  * statefulsets (aka 'sts') 
  * storageclasses (aka 'sc')


三、应用编排与管理

配置清单,四个一级清单:

apiVersion: group/version

kind:

metadata:

spec:

创建 Nginx Deployment 和 Service(nginx.yaml)

### define deployment info ###
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: nginx-deployment
  namespace: default
  labels:
    app: nginx
    env: dev
    tie: front
### define pod info ###
spec:
# define the pod count
  replicas: 2
  revisionHistoryLimit: 5  #保存5个历史版本
# define update strategy 
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable; 25%
    type: RollingUpdate   #滚动升级
# select the pod which is controlled
  selector:
    matchLabels:
      app: nginx
      env: dev
      tie: front
# define the pod
  template:
    metadata:
# define the pod label,which must be same with selector's matchLabels
      labels:
        app: nginx
        env: dev
        tie: front
### define container info ###
    spec:
      containers:
# define the container name
      - name: nginx
        image: nginx:1.17.5
        imagePullPolicy: IfNotPresent
        volumeMounts:
        - name: conf
          mountPath: /etc/nginx
        - name: opt
          mountPath: /opt
      ##定义pod反亲和,硬亲和
      affinity:
        podAntiAffinity:  ##podAffinity:  亲和
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchExpression:
              - key: app
                operator: In
                values:
                - keyin-demo
            topologyKey: kubernetes.io/hostname
      ##定义pod反亲和,软亲和
      affinity:
        podAntiAffinity:    ##podAffinity:  亲和
          preferredDuringSchedulingIgnoredDuringExecution:
  - weight: 100
    podAffinityTerm:
              labelSelector:
                matchExpression:
                - key: app
                  operator: In
                  values:
                  - keyin-demo
              topologyKey: rack     ## rack 是 node 的一个label
      #node label selector
      nodeSelector:
        type: nginx
      volumes:
      - name: conf
        hostPath:
          path: /etc/nginx
          type: Directory
      - name: opt
        hostPath:
          path: /opt
          type: Directory

---

apiVersion: v1
# delcare it's service
kind: Service
metadata:
  name: nginx-service
  labels:
    app: nginx
    env: dev
    tie: front
spec:
  externalIPs:
  - 192.101.10.80
  - 192.101.10.81
  - 192.101.10.82
  ports:
# define the service's port
  - port: 80
    name: nginx-service-80 
    protocol: TCP
# define the container's port
    targetPort: 80
#    nodePort: 30080
# define the pod label which the selector match with
  selector:
    app: nginx
    env: dev
    tie: front
# three type : ClusterIP,NodePort,LoadBalancer
  type: ClusterIP


创建:
kubectl create -f nginx.yaml











分享到:
评论

相关推荐

    藏经阁-TiDB在Kubernetes平台的自动化运维实践.pdf

    10. Kubernetes自动化运维:Kubernetes提供了多种自动化运维工具,例如Operator、Helm等,用于简化应用程序的部署和管理。 在本文档中,我们可以看到很多关于Kubernetes和TiDB的知识点,例如Kubernetes Operator、...

    2024kubernetes+DevOps云原生运维开发全栈架构师技术实战课程

    本篇将基于《2024kubernetes+DevOps云原生运维开发全栈架构师技术实战课程》的内容,详细探讨Kubernetes作为容器编排引擎的核心价值及其与DevOps文化的融合方式。 #### Kubernetes核心概念 **Kubernetes**(简称K8...

    Kubernetes实战(套装共2册)PDF

    Kubernetes是一种开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序,是Google在2014年捐给Cloud Native Computing Foundation(CNCF)的项目。Kubernetes的核心理念是通过集群管理容器化工作负载,...

    多云环境应用的智能编排与运维.pdf

    但是随着微服务架构的兴起,应用被进一步细分为独立、松散耦合的服务组件,每个服务运行在其容器内,并通过容器编排工具如Docker和Kubernetes进行管理,这显著提高了应用的可扩展性和弹性。 微服务架构的优势在于,...

    TiDB在Kubernetes平台自动化部署运维实践v1.pptx

    随着运维模式的演变,从手动脚本到配置管理工具(如 Ansible),再到容器编排系统,Kubernetes 已成为事实上的标准,被誉为“云原生的操作系统”。Kubernetes 提供了一个分布式、跨平台的环境,统一管理计算、内存、...

    Kubernetes、K8s运维架构师实战集训营【中高级】

    Kubernetes(简称K8s)是Google开源的一种容器编排系统,用于自动化容器化的应用部署、扩展和管理。它提供了一种跨主机集群的容器编排平台,让开发者和运维人员能够轻松地在物理机或虚拟机上管理容器化的应用程序。 ...

    基于Kubernetes的应用编排实践.pptx

    【基于Kubernetes的应用编排实践】 在现代软件开发中,微服务架构因其高效开发、简单维护、高稳定性及良好的扩展...随着Kubernetes社区的不断发展和完善,应用编排工具也将持续演进,以更好地服务于开发者和运维人员。

    基于kubernetes实现云上自动化运维.pdf

    Kubernetes(简称k8s)是由Google于2014年开源的容器编排管理系统,它旨在自动化容器化的应用程序部署、扩展和管理。Kubernetes提供了一种强大而灵活的方式来管理和运行分布式系统,特别适合在云环境中实现自动化...

    Python-Adminset自动化运维平台CMDBCDDevOps资产管理任务编排持续交付系统监控运维管理配置管理

    Python在运维领域的广泛应用,使得Adminset能够轻松集成其他开源工具,如Ansible、Docker、Kubernetes等,构建起强大的自动化运维生态。 文件"guohongze-adminset-6a39483"可能是该平台的源码或者特定版本的打包...

    KubeTelecom:一种面向5G网络切片的多云多容器集群管理与运维引擎.docx

    KubeTelecom能够集成了跨云资源池的资源管理、编排以及运维功能,确保在不同云环境下的Kubernetes集群能够协同工作,满足5G网络切片的复杂需求。 KubeTelecom的主要特点和功能可能包括: - **多租户支持**:为不同...

    kubernetes部署运维学习笔记

    ### Kubernetes部署运维学习笔记 #### 一、Kubernetes的核心价值及功能 Kubernetes(简称K8s)是一种高效的容器管理工具,它通过自动化的方式解决了在生产环境中管理容器化应用程序的一系列挑战。Kubernetes的设计...

    Kubernetes、K8s运维架构师实战集训营【中高级,最新第6期,2021年12月结课】

    在本实践集训营中,我们将深入探讨Kubernetes(K8s)这一强大的容器编排系统,它是现代云原生应用的关键基础设施。作为中高级的K8s运维架构师,你需要掌握一系列技能,以确保集群的高效运行和应用程序的稳定部署。本...

    Python-Mxonline3使用Python3x与Django201开发的k8s运维管理平台网站

    【Python3.x与Django2.0.1的结合应用】 在现代的Web开发领域,Python3.x以其简洁明了的语法和...通过这个项目,我们可以学习到Python与Django在Web开发中的最佳实践,以及如何将这些技术应用到容器编排系统的管理中。

    kubernetes应用学习手册

    Kubernetes是目前最受欢迎的容器编排工具之一,它能够自动化容器化应用的部署、扩展以及操作。在本部分中,我们将详细介绍如何使用kubectl工具,它是一个命令行接口,用于与Kubernetes集群进行通信,执行命令和操作...

    Kubernetes与Java微服务:自动化部署与编排的艺术

    通过Kubernetes Java客户端,开发者可以轻松地将Java应用集成到Kubernetes生态中,实现应用的高效管理和运维。随着云原生技术的不断发展,Kubernetes与Java的结合将为Java开发者带来更多的可能性和机遇。

    Linux运维-运维Kubernetes教程5、资源控制器2、资料.zip

    在本Linux运维-Kubernetes教程中,我们将深入探讨资源控制器这一核心概念,特别是在Kubernetes集群管理中的应用。资源控制器是Kubernetes生态系统中的关键组件,它们帮助自动化处理资源对象的状态,确保这些对象按照...

    容器化应用的监控和运维实践.pptx

    Kubernetes(K8s)作为容器编排的领导者,为开发者提供了强大的平台来管理和运行容器化应用。然而,随着容器化的普及,监控和运维也变得日益复杂。本文将探讨容器化应用的监控和运维实践,以及如何有效解决问题。 ...

    基于 Kubernetes 与 OAM 构建统一、标准化的应用管理平台1

    Kubernetes 是一个强大的容器编排系统,它提供了一种声明式的方式来管理和部署应用程序。然而,直接使用 Kubernetes 对于业务研发和运维团队来说可能存在一定的学习曲线和操作复杂性。为了解决这一问题,我们探讨了...

    基于Kubernetes与OAM应用管理平台方案.pptx

    OAM专注于定义应用层抽象,通过标准化方式帮助平台开发者编写应用层驱动,并提供插件化能力注册与管理机制。它由以下部分组成: - **应用组件(Components)**:定义应用程序的工作负载,如Docker Compose的...

Global site tag (gtag.js) - Google Analytics