前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kubernete-Pod操作管理

Kubernete-Pod操作管理

作者头像
Yuou
发布2022-09-26 15:26:11
1430
发布2022-09-26 15:26:11
举报
文章被收录于专栏:乱七八糟技术日常

有状态和无状态的区别

  • 无状态
    1. 认为Pod都是一样的
    2. 没有顺序要求
    3. 不用考虑在哪个Node运行
    4. 随意进行伸缩和扩展
  • 有状态
    1. 有关无状态的因素都需要考虑
    2. 让每个Pod都是独立的,保持Pod启动顺序的唯一性
    3. 唯一的网络标识符,持久化存储数据
    4. 有序化,例如MYSQL主从

无头Service

  • ClusterIP:None

部署StatefulSet

代码语言:javascript
复制
# 首先构建一个无头Service
apiVersion: v1
kind: Service
metadata:
  name: nginx
  labels: 
    app: nginx
spec:
  ports:
  - port: 80
    name: web
  clusterIP: None
  selector:
    app: nginx
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: nginx-statefulset
  namespace: default
spec: 
  serviceName: nginx
  replicas: 3
  selector:
    matchLabels: 
      app: nginx
  template:
    metadata: 
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.7.9
        ports:
        - containerPort: 80

部署守护进程

在每个Node上运行一个Pod,新加入的node也同样运行一个Pod在里面

代码语言:javascript
复制
apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: ds-test
  labels:
    app: filebeat
spec: 
  selector:
    matchLabels:
      app: filebeat
  template: 
    metadata: 
      labels:
        app: filebeat
    spec:
      containers: 
      - name: logs
        image: nginx
        ports: 
        - containerPort: 80
        volumeMounts:
        - name: varlog
          mountPath: /tmp/log
      volumes:
      - name: varlog
        hostPath:
          path: /var/log

Job与Cronjob

  1. Job(一次性任务)
代码语言:javascript
复制
apiVersion: batch/v1
kind: Job
metadata:
  name: pi
spec:
  template:
    spec: 
      containers:
      - name: pi
        image: perl
        command: ["perl","-Mbignum=bpi","-wle","print bpi(2000)"]
      restartPolicy: Never
  backoffLimit: 4 # 失败后尝试执行4次
  1. Cronjob(定时任务)
代码语言:javascript
复制
apiVersion: batch/v1beta1
kind: CronJob
metadata: 
  name: hallo
spec:
  schedule: "*/1 * * * *"
  jobTemplate: 
    spec: 
      template: 
        spec: 
          containers: 
          - name: hello
            image: busybox
            args: 
            - /bin/sh
            - -c
            - date; echo Hello form the Kubernetes Cluster messages
          restartPolicy: OnFailure
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 部署StatefulSet
  • 部署守护进程
  • Job与Cronjob
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档