• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
gys001
博客园    首页    新随笔    联系   管理    订阅  订阅

k8s实战入门——Pod

Pod

Pod是kubernetes集群进行管理的最小单元,程序要运行必须部署在容器中,而容器必须存在于Pod中。

Pod可以认为是容器的封装,一个Pod中可以存在一个或者多个容器。

image-20200407121501907

kubernetes在集群启动之后,集群中的各个组件也都是以Pod方式运行的。可以通过下面命令查看:

[root@master ~]# kubectl get pod -n kube-system

[root@master ~]# kubectl get pod -n kube-system -o wide

创建并运行

kubernetes没有提供单独运行Pod的命令,都是通过Pod控制器来实现的

# 命令格式: kubectl run (pod控制器名称) [参数]
# --image 指定Pod的镜像
# --port 指定端口
# --namespace 指定namespace

[root@master ~]# kubectl create ns dev
[root@master ~]# kubectl run nginx --image=nginx:latest --port=80 --namespace dev

查看pod信息
# 查看Pod基本信息
[root@master ~]# kubectl get pods -n dev

# 查看Pod的详细信息
[root@master ~]# kubectl describe pod nginx -n dev

 注:通常看最后的Events,用来排错

排错示例

指定一个不存在的镜像版本

[root@master ~]# kubectl run nginx1 --image=nginx:11111 --port=80 --namespace dev

[root@master ~]# kubectl get pods -n dev

[root@master ~]# kubectl describe pod nginx1 -n dev #查看Events显示的信息

访问Pod
# 获取PodIP
[root@master ~]# kubectl get pods -n dev -o wide

#访问Pod
[root@master ~]# curl http://10.244.1.23:80
删除指定Pod

# 删除指定Pod

kubectl delete pod pod的名称 [-n 命名空间]
[root@master ~]# kubectl delete pod nginx -n dev

注:在1.18版本及以后
kubectl run 产生的pod能直接删除
kubectl run nginx --image=nginx:latest --port=80 --namespace dev
kubectl delete pod nginx --namespace dev

通过deployment等用pod控制器产生的pod不能直接删除,会拉起一个新的pod
kubectl create deployment web --image=nginx
kubectl delete deployment web
yaml配置操作

创建一个pod-nginx.yaml,内容如下:

apiVersion: v1
kind: Pod
metadata:
  name: nginx    #这里的名字是pod的名字
  namespace: dev
spec:
  containers:
  - image: nginx:latest
    name: pod
    ports:
    - name: nginx-port
      containerPort: 80
      protocol: TCP
然后就可以执行对应的创建和删除命令了:
创建:kubectl create -f pod-nginx.yaml

删除:kubectl delete -f pod-nginx.yaml

参考

黑马B站k8s课程https://www.bilibili.com/video/BV1Qv41167ck/
https://gitee.com/yooome/golang/blob/main/k8s%E8%AF%A6%E7%BB%86%E6%95%99%E7%A8%8B-%E8%B0%83%E6%95%B4%E7%89%88/k8s%E8%AF%A6%E7%BB%86%E6%95%99%E7%A8%8B.md
https://www.yuque.com/fairy-era/yg511q/xyqxge

 

posted @ 2022-11-07 10:43  gys001  阅读(85)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3