首页 > 其他分享 >k8s pod完整生命周期

k8s pod完整生命周期

时间:2023-05-04 14:37:21浏览次数:35  
标签:生命周期 name -- master01 init pod k8s root

 

[root@master01 pod_init]# cat pod-all-life-cycles.yaml

apiVersion: v1
kind: Pod
metadata:
  name: init-pod-1
  namespace: default
  labels:
    app: ini-pod
    dev: pro
spec:
  initContainers:
  - name: init-1
    image: nginx:1.16.0
    imagePullPolicy: IfNotPresent
    command: ["/bin/sh"]
    args: ["-c", "echo hello-1; sleep 3"]
  - name: init-2
    image: nginx:1.16.0
    imagePullPolicy: IfNotPresent
    command: ["/bin/sh"]
    args: ["-c", "echo hello-2; sleep 5"]
  containers:
  - name: init-pod-01
    image: nginx:1.16.0
    imagePullPolicy: IfNotPresent
    ports:
    - name: tcp80
      containerPort: 80
    - name: tcp443
      containerPort: 443
    lifecycle:
      postStart:
        exec:
          command: ["/bin/sh", "-c", "echo Hello from the postStart handler > /usr/share/message"]
      preStop:
        exec:
          command: ["/bin/sh","-c","nginx -s quit; while killall -0 nginx; do sleep 1; done"]
    startupProbe:
      httpGet:
        path: /
        port: 80
      initialDelaySeconds: 5
      periodSeconds: 5
      successThreshold: 1
      failureThreshold: 3
      timeoutSeconds: 5
    readinessProbe:
      exec:
        command: ["/bin/sh","-c","sleep 2"]
      initialDelaySeconds: 4
      periodSeconds: 4
      successThreshold: 1
      failureThreshold: 4
      timeoutSeconds: 4
    livenessProbe:
      tcpSocket:
        port: 80
      initialDelaySeconds: 3
      periodSeconds: 3
      successThreshold: 1
      failureThreshold: 3
      timeoutSeconds: 3

pod 基础操作

#1
# 启动pod  apply yaml 
[root@master01 pod_init]# kubectl apply -f pod-all-life-cycles.yaml

# 停止pod  apply yaml 
[root@master01 pod_init]# kubectl  delete -f pod-all-life-cycles.yaml --force --grace-period=0
# 强制删除 pod     参数 --force --grace-period=0
[root@master01 pod_init]# kubectl  delete pods init-pod-1 --force --grace-period=0

# 查看pod 详细信息 [root@master01 pod_init]# kubectl describe pod init-pod-1 # 实时监控pop创建过程信息 [root@master01 pod_init]# kubectl get pod -o wide -w

 

标签:生命周期,name,--,master01,init,pod,k8s,root
From: https://www.cnblogs.com/liuyoushui/p/17258658.html

相关文章

  • k8s Kubernetes Dashboard 安装与使用
    https://github.com/kubernetes/dashboardhttps://developer.aliyun.com/article/745086https://github.com/kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.mdhttps://kubernetes.io/zh-cn/docs/tasks/access-application-cluster/web-ui-......
  • k8s 编写pod yaml 文件 启动pod 查看pod详细信息 查看pod日志 连接pod容器 删除po
    #1创建podyaml文件#使用帮助命令 [root@master01pod]#kubectlexplainpod.spec[root@master01pod]#catpod-self.yamlapiVersion:v1kind:Podmetadata:name:pod-selfnamespace:defaultlabels:app:my-selfdev:prospec:restartPolic......
  • k8s 使用 RBAC 鉴权 建立不同用户使用k8s。只有指定命名空间的权限
    k8s使用RBAC鉴权https://kubernetes.io/zh-cn/docs/reference/access-authn-authz/rbac/#创建sa账号kubectlcreatesasa-test-20230408#使用sa账号创建pod资源[root@master01sa]#catpod.yamlapiVersion:v1kind:Podmetadata:name:sa-test-pod-20230408......
  • k8s 控制器-Replicaset-Deployment cordon drain
    k8s控制器-Replicaset-Deployment#cordon警戒线 执行后不会在调度到该节点上了[root@master01deployment]#kubectlcordonnode01node/node01cordoned[root@master01deployment]# NAMESTATUSROLESAGEVERSIONmaster0......
  • k8s labels 创建和删除
    #1lables#nodelabel[root@master01pod]#kubectllabelpodspod-selftime=2023 [root@master01pod]#kubectlgetnode--show-labels [root@master01pod]#kubectllabelnodesnode01host- #2podlabel [root@master01pod]#kubectllabelnodesno......
  • 案例分享-full gc导致k8s pod重启
     在之前的记一次k8spod频繁重启的优化之旅中分享过对于pod频繁重启的一些案例,最近又遇到一例,继续分享出来希望能给大家带来些许收获。问题现象报警群里突然显示某pod频繁重启,我随即上去查看日志,主要分这么几步:  1.查看pod重启的原因,kubectldescirbepodLastState:......
  • 01. k8s1.15.1高可用版本(docker引擎,Centos7.9)
    1.软件版本首先要把centos7系统的内核升级最好4.4以上(默认3.10的内核,运行大规模docker的时候会有bug)软件/系统版本备注Centos7.9最小安装版k8s1.15.1flannel0.11etcd3.3.102.角色分配k8s角色主机名节点IP备注master1+etcd1mas......
  • 读取 k8s 存储在 etcd 上的数据
    读取k8s存储在etcd上的数据EtcdAssistant是一款Etcd可视化管理工具,便捷高效地操作您的etcd集群;支持多种键的视图;管理租约、用户、角色和权限。etcd是一个分布式KV存储系统,在分布式系统中被广泛使用,Kubernetes就是使用了etcd存储持久化数据,包括创建的所有Pod、Deploy......
  • kubevirt实验部署:k8s1.23.17+kube-ovn+nfs+kubevirt+ceph 集成使用
    标签(空格分隔):kubernetes系列一:kubevirt的简介KubeVirt是一个Kubernetes插件,它为Kubernetes提供了在与容器相同的基础结构上提供、管理和控制虚拟机的能力。KubeVirt是由云原生计算基金会(CNCF)赞助的开源项目,目前正处于孵化阶段。KubeVirt使Kubernetes能够使用与容器化工作负......
  • Bean的生命周期
    一、什么是Bean的生命周期bean生命周期就是从bean初始化到bean销毁的这个过程,分为:bean的定义、bean实例化、bean生存期、bean销毁。二、Bean生命周期的过程bean生命周期的过程可以总结为:资源定位->bean定义(将bean的定义保存到BeanDefinition实例中)->发布bean(定......