1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| # pod yaml 文件内容 apiVersion: apps/v1 # apps不能省略 kind: Deployment metadata: namespace: ns-test name: nginx-pod spec: selector: matchLabels: app: nginx # 集群数量 replicas: 1 #设置滚动升级策略 #Kubernetes在等待设置的时间后才开始进行升级,例如5s minReadySeconds: 5 strategy: type: RollingUpdate rollingUpdate: #在升级过程中最多可以比原先设置多出的Pod数量 maxSurge: 1 #在升级过程中Deployment控制器最多可以删除多少个旧Pod,主要用于提供缓冲时间 maxUnavailable: 1 template: metadata: labels: app: nginx spec: nodeSelector: # 设置节点选择器 node-label: node-label-value # 节点的标签和值全部匹配 # imagePullSecrets 的账号需要和当前的namespace一致 # 拉取镜像的密码,通过该kubectl create secret配置 # 如果是http的镜像地址,kubectl create secret设置的无效,直接使用docker login登录,该处配置注释掉 imagePullSecrets: - name: harbor serviceAccountName: admin-user containers: - name: nginx image: registry.cn-hangzhou.aliyuncs.com/inus/k8s:nginx-latest resources: requests: # 初始化申请的资源 memory: "1Gi" cpu: "200m" limits: # 限制的最大资源 memory: "2Gi" cpu: "400m" ports: - containerPort: 80
# 创建 kubectl create -f nginx-pod.yml kubectl get pod -n ns-test kubectl describe pod pod名称 -n 命名空间名称 kubectl delete pod pod名称 -n 命名空间名称
|