k8s集群07:核心概念 Pod

10 篇文章 5 订阅
10 篇文章 1 订阅
本文档详细介绍了在Kubernetes集群中操作Pod的基本步骤,包括理解Pod的概念,查看不同命名空间下的Pod,创建Pod的资源清单文件并应用,验证Pod的创建,以及如何访问和删除Pod。通过实例演示了kubectl命令行工具的使用,帮助读者掌握Kubernetes Pod的基础操作。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、前言

通过前面课程学习,大家已经掌握了k8s集群中NameSpace操作,那么如果我们想在k8s集群中运行应用程序,应该使用什么资源对象呢?我们知道k8s集群中是不能直接运行容器的,k8s集群中最小调度单元为Pod,因此我们要使用Pod来运行应用程序。

二、学习目标

√ 了解Pod概念
√ 了解查看Pod方法
√ 了解创建Pod方法
√ 了解Pod访问方法
√ 了解删除Pod方法

三、学习步骤

在这里插入图片描述

四、课程内容

4.1 Pod介绍

在这里插入图片描述
Pod是kubernetes集群能够调度的最小单元
Pod是容器的封装

4.2 查看Pod

命令及输出 
查看default命名空间中的Pod 
[root@master1 ~]# kubectl get pod No resources found.[root@master1 ~]# kubectl get pods No resources found.[root@master1 ~]# kubectl get pods -- namespace default No resources found.[root@master1 ~]# kubectl get pod -- namespace default No resources found.
命令
查看kube-system命名空间中的Pod 
[root@master1 ~]# kubectl get namespace
输出
NAME STATUS AGE 
default Active 17h 
kube-node-lease Active 17h 
kube-public Active 17h 
kube-system Active 17h 确认有此命名空间
命令
[root@master1 ~]# kubectl get pod -n kube- system
输出
NAME READY 
STATUS RESTARTS AGE 
calico-node-896hj 1/2 
Running 0 17h 
calico-node-q4w7q 2/2 
Running 0 17h calico-node-qzws6 1/2 
Running 0 17h 
calico-typha-7d87d68466-5mdw4 1/1 
Running 0 17h 
coredns-5c98db65d4-9l4tp 1/1 
Running 0 17h 
coredns-5c98db65d4-sqxj7 1/1 
Running 0 17h 
etcd-master1 1/1 
Running 0 17h 
kube-apiserver-master1 1/1 
Running 0 17h 
kube-controller-manager-master1 1/1 
Running 0 17h 
kube-proxy-4sgmb 1/1 
Running 0 17h 
kube-proxy-crmq2 1/1 
Running 0 17h 
kube-proxy-sqhp4 1/1 
Running 0 17h
kube-scheduler-master1 1/1 
Running 1 17h

4.3 创建Pod

由于网络原因,建议提前准备好容器镜像,本次使用nginx:latest容器镜像。

4.3.1 编写用于创建Pod资源清单文件

[root@master1 yamldir]# cat 02-create- pod.yaml 
apiVersion: v1 
kind: Pod 
metadata: 
  name: pod1 
  spec: containers: 
  - name: ngninx-pod 
    image: nginx:latest 
    ports: 
    - name: nginxport 
    - containerPort: 80

4.3.2 应用用于创建Pod资源清单文件

命令
[root@master1 yamldir]# kubectl apply -f 02- create-pod.yaml
输出
pod/pod1 created

4.3.3 验证Pod是否被创建

命令
查看已创建pod 
[root@master1 yamldir]# kubectl get pods
输出
NAME READY STATUS RESTARTS AGE 
pod1 1/1 Running 0 88s
命令
通过指定默认命名空间查看已创建pod 
[root@master1 yamldir]# kubectl get pods -n default
输出
NAME READY STATUS RESTARTS AGE 
pod1 1/1 Running 0 2m43s
命令
查看pod更加详细信息 
[root@master1 yamldir]# kubectl get pods -o wide
输出
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GAT 
pod1 1/1 Running 0 9m5s 172.16.1.2 node2 <none> <none>

4.4 Pod访问

命令
[root@master1 ~]# curl http://172.16.1.2
输出
<!DOCTYPE html> 
<html> 
<head> 
<title>Welcome to nginx!</title> 
<style>
    body {
        width: 35em; 
        margin: 0 auto; 
        font-family: Tahoma, Verdana, Arial, sans-serif; 
        }
</style> 
</head> <body> 
<h1>Welcome to nginx!</h1> 
<p>If you see this page, the nginx web server is successfully installed and 
working. Further configuration is required. </p> 

<p>For online documentation and support please refer to 
<a href="http://nginx.org/">nginx.org</a>. 
<br/> 
Commercial support is available at 
<a href="http://nginx.com/">nginx.com</a>. </p> 

<p><em>Thank you for using nginx.</em></p> 
</body>
</html>

4.5 删除Pod

可通过命令行删除,也可通过资源清单(YAML)文件删除。

4.5.1 kubectl 命令行删除

命令
[root@master1 ~]# kubectl delete pods pod1
输出
pod "pod1" deleted

4.5.2 通过kubectl通过Pod资源清单文件删除

命令
[root@master1 yamldir]# kubectl delete -f 02-create-pod.yaml
输出
pod "pod1" deleted

五、学习总结

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值