#yyds干货盘点#--k8s-pod讲解

Posted 流年_火星程序员

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点#--k8s-pod讲解相关的知识,希望对你有一定的参考价值。

准备完整的写一套关于kubernets的详细学习介绍。就先从pod开始吧。

pod是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。pod简单来说就是docker中共享空间的一组容器,它本身基于linux namespace和cgroup隔离。一般我们很少单独去创建一个pod,都是通过负载资源去创建的,例如

具体我就不详细介绍回头再写,下面我们来写一个最简单的pod.yaml

apiVersion: batch/v1
kind: Job
metadata:
name: hello
spec:
template:
# 这里是 Pod 模版
spec:
containers:
- name: hello
image: busybox
command: [sh, -c, echo "Hello, Kubernetes!" && sleep 3600]
restartPolicy: OnFailure

PS:快速获取一个yaml文件,比如获取一个nginx的pod,可以执行如下:

kubectl run nginx --image=nginx --dry-run -o yaml

接着讲如果pod里面要使用变量怎么做呢?

很简单,只需要在spec下面添加env,例如这样:

env: 
- name: DEMOx
value:"Hello x sir"
- name: DEMOy
value:"Hello y si

我们还发现yaml里面总有restartPolicy这个参数,其实restartPolicy包含了以下三个:Always 总是重启 OnFailure 失败了才重启 Never 从不重启。

那么久需要说到容器的状态了,含义如下:

Pending:pod已经建立,但是pod里还有容器没有创建完成 
Running :pod已经被调度到节点上,且容器工作正常
Completed :pod里所有容器正常退出
Failed:顾名思义

初始化容器的概念 比如一个容器A依赖其他容器,可以为A设置多个 依赖容易A1,A2,A3 A1,A2,A3要按照顺序启动,A1没有启动启动起来的 话,A2,A3是不会启动的,直到所有的静态容器全 部启动完毕,主容器A才会启动。 如果初始化容器失败,则会一直重启,pod不会创建。具体initpod太细的就不讲了。

以上是关于#yyds干货盘点#--k8s-pod讲解的主要内容,如果未能解决你的问题,请参考以下文章

#yyds干货盘点#Vuex实战讲解(全),玩转Vue必备知识

# yyds干货盘点 # 盘点一份JS逆向代码转换为Python代码的教程

#yyds干货盘点#RabbitMQ的简单模式案例讲解,非常详细

#yyds干货盘点#RabbitMQ的简单模式案例讲解,非常详细

#yyds干货盘点#Git详细介绍及安装讲解教程

#yyds干货盘点# Java | 关于synchronized相关理解