Chapter04 副本机制和其他控制器: 部署托管的 pod

Chapter04 副本机制和其他控制器: 部署托管的 pod

书籍 kubernetes in action 摘要笔记
操作系统:centos7.6
kubernetes:v1.11.5
kb = kubectl
有些步骤只 cat file,还需要 kb apply -f file

replication controller

rc (replication controller)使用 label 来管理 pods
1、水平缩放 pod

# kb scale rc kubia --replicas=10
# kb edit rc kubia
...
spec
  replicas:3

2、更改已托管的 pod 的 label,rc 会重新创建新的 pod

kb label pod kubia-dmdck app=foo --overwrite

3、更改 rc 的标签选择器,会让已有的 pod 脱离 rc 控制,并重新创建 pod
4、删除 rc 使用 --cascade=false 保持 pod 不中断运行

kb delete rc kubia --cascade=false

5、 如果节点本身崩溃, control plane 必须为所有随节点停止运行的 pod 创建替代品。但是它不会为你直接创建的 pod 执行此操作,这些 pod 只被 kubelet 管理。为确保你的应用程序在另外一个节点上重新启动,需要使用 rc 或类似机制管理 pod
6、kb edit rc
编辑 rc 来更改容器模板中的容器镜像,删除现有的容器,替换为新的容器,可以用于升级 pod。

ReplicaSet

ReplicaSet 的行为与 ReplicationController 完全相同,但 pod 选择器的表达能力更强。ReplicaSet 的选择器还允许匹配缺少某个标签的 pod, 或包含特定标签名的 pod,不管其值如何。

daemonset

1、deamonset 在每个节点上运行一个 pod
2、加上 Node Selector 只在特定节点上运行 pod

job

1、job 中的 pod 在内部进程成功结束时,不重启容器,一旦任务完成,pod 就处于完成状态
2、completions 为你希望 pod 运行多少次,parallelism 指定 job 并行运行多少 pod

apiVersion: batch/v1
kind: Job
metadata:
  name: multi-completion-batch-job
spec:
  completions: 5
  parallelism: 2
  template:
    metadata:
      labels:
        app: batch-job
    spec:
      restartPolicy: OnFailure
      containers:
      - name: main
        image: luksa/batch-job

3、限制 job pod 完成任务时间

activeDeadlineSeconds

4、通过 job manifest 中的 spec.backoffLimit 字段,可以配置 job 在被标记为失败之前可以重试的次数,默认 6
5、pod 的默认属性 restartPlolicy 为 Always,job 不能使用默认策略,要明确的将重启设置为 OnFailure 或 Nerver

cronjob
apiVersion: batch/v1beta1
kind: CronJob
metadata:
  name: batch-job-every-fifteen-minutes
spec:
  schedule: "0,15,30,45 * * * *"
  jobTemplate:
    spec:
      template:
        metadata:
          labels:
            app: periodic-batch-job
        spec:
          restartPolicy: OnFailure
          containers:
          - name: main
            image: luksa/batch-job
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值