从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试

第四阶段

时  间:2023年8月11日

参加人:全班人员

内  容:

Kubernetes集群应用部署测试

目录

应用部署测试


应用部署测试

下面我们部署一个简单的Nginx WEB服务,该容器运行时会监听80端口。

(一)环境配置:

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第1张图片

 

(二)Kubernetes 支持两种方式创建资源:

1、用kubectl命令直接创建,在命令行中通过参数指定资源的属性。此方式简单直观,比较适合临时测试或实验使用。

kubectl run web --image=nginx --replicas=2(已不支持)

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第2张图片

检查:[root@k8s-master ~]# kubectl describe pod web

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第3张图片

[root@k8s-master ~]# kubectl get pod -o wide

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第4张图片

[root@k8s-node01 ~]# curl -l 10.244.1.2

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第5张图片

2、通过配置文件和kubectl create/apply创建。

在配置文件中描述了应用的信息和需要达到的预期状态。

kubectl create -f nginx-deployment.yaml

以Deployment YAML方式创建Nginx服务

1)创建deployment:

[root@k8s-master ~]# cat nginx-deployment.yaml

#使用yaml的方式进行创建应用,配置如下:

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第6张图片

deployment配置文件说明:

apiVersion: apps/v1 #apiVersion是当前配置格式的版本

kind: Deployment #kind是要创建的资源类型,这里是Deploymnet

metadata: #metadata是该资源的元数据,name是必须的元数据项

  name: nginx-deployment

  labels:

    app: nginx

spec: #spec部分是该Deployment的规则说明

  replicas: 3 #relicas指定副本数量,默认为1

  selector:

    matchLabels:

      app: nginx

  template: #template定义Pod的模板,这是配置的重要部分

    metadata: #metadata定义Pod的元数据,至少要顶一个label,label的key和value可以任意指定

      labels:

        app: nginx

    spec: #spec描述的是Pod的规则,此部分定义pod中每一个容器的属性,name和image是必需的

      containers:

      - name: nginx

        image: nginx:latest

        ports:

        - containerPort: 80

2)创建nginx-deployment应用

[root@k8s-master ~]# kubectl create -f nginx-deployment.yaml

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第7张图片

 

3)查看deployment详情

[root@k8s-master ~]# kubectl get deployment

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第8张图片

 

4)查看pod在状态,正在创建中,此时应该正在拉取镜像

[root@k8s-master ~]# kubectl get pod    

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第9张图片

 

5)查看具体某个pod的状态信息

[root@k8s-master ~]# kubectl describe pod nginx-deployment-7947dc656-5rmck

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第10张图片

[root@k8s-master ~]# kubectl get pod -o wide #创建成功,状态为Running

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第11张图片

        如果要删除这些资源,执行 kubectl delete deployment nginx-deployment 或者 kubectl delete -f nginx-deployment.yaml。

3、测试Pod访问

[root@k8s-node01 ~]# curl --head http://10.244.1.2

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第12张图片

[root@k8s-master ~]# elinks --dump http://10.244.1.2

从小白到大神之路之学习运维第78天-------Kubernetes集群应用部署测试_第13张图片

 

你可能感兴趣的:(学习,运维,kubernetes)