首页 > 其他 > 详细

YAML配置文件管理资源

时间:2019-12-26 17:14:29      阅读:93      评论:0      收藏:0      [点我收藏+]

配置文件说明:
? 定义配置时,指定最新稳定版API(当前为v1);
? 配置文件应该存储在集群之外的版本控制仓库中。如果需要,可以快速回滚配置、重新创建和恢复;
? 应该使用YAML格式编写配置文件,而不是JSON。尽管这些格式都可以使用,但YAML对用户更加友好;
? 可以将相关对象组合成单个文件,通常会更容易管理;
? 不要没必要的指定默认值,简单和最小配置减少错误;
? 在注释中说明一个对象描述更好维护

pod管理
1)、yaml文件创建Pod对象:cat pod.yaml
apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
  labels:
    app: nginx
spec:
  containers:
    - name: nginx
      image: nginx

2)、基本管理:
# 创建pod资源
kubectl create -f pod.yaml
# 查看pods
kubectl get pods nginx-pod
# 查看pod描述
kubectl describe pod nginx-pod
# 更新资源
kubectl apply -f pod.yaml
# 删除资源
kubectl delete pod nginx-pod
kubectl delete -f nginx-deployment.yaml
kubectl delete -f pod.yaml

3)、资源限制
示例:
apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
  labels:
    app: nginx
spec:
  containers:
    - name: nginx
      image: nginx
      resources:
      requests:
        memory: "64Mi"
        cpu: "250m"
      limits:
        memory: "128Mi"
        cpu: "500m"

4)、调度约束
Pod.spec.nodeName       强制约束Pod调度到指定Node节点上
Pod.spec.nodeSelector   通过lable-selector机制选择节点

示例:
apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
  labels:
    app: nginx
spec:
  nodeSelector:
    env_role: dev
containers:
  - name: nginx
    image: nginx

5)、重启策略
三种重启策略:
Always:当容器停止,总是重启容器,默认策略。
OnFailure:当容器异常退出(退出状态码非0)时,才重启容器。
Never:当容器终止退出,从不重启容器。

示例:
apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
  labels:
    app: nginx
spec:
  containers:
  - name: nginx
    image: nginx
  restartPolicy: OnFailure

6)、健康检查
提供Probe机制,有以下两种类型:
? livenessProbe
如果检查失败,将杀死容器,根据Pod的restartPolicy来操作。
? readinessProbe
如果检查失败,Kubernetes会把Pod从service endpoints中剔除。

Probe支持以下三种检查方法:
? httpGet
发送HTTP请求,返回200-400范围状态码为成功。
? exec
执行Shell命令返回状态码是0为成功。
? tcpSocket
发起TCP Socket建立成功。

示例:
apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
  labels:
    app: nginx
spec:
  containers:
    - name: nginx
      image: nginx
      ports:
      - containerPort: 80
      livenessProbe:
        httpGet:
          path: /index.html
          port: 80

YAML配置文件管理资源

原文:https://www.cnblogs.com/litzhiai/p/12102747.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!