4 分析yaml文件

1 创建命名空间

首先查看一下当前的所有命名空间:
kubectl get namespace
在这里插入图片描述
使用yaml文件的方式生成一个名为test的命令空间,创建namespace-test.yaml文件,内容为:

apiVersion: v1
kind: Namespace
metadata:
  name: test

执行如下命令kubectl apply -f namespace-test.yaml,创建这个namespace
在这里插入图片描述
再次查看namespace,就发现已经创建好了
在这里插入图片描述

2 创建pod

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  namespace: test
spec:
  containers:
  - image: nginx:latest
    name: pod001
    ports: 
    - name: nginx-port
      containerPort: 80
      protocol: TCP

我这里定义的一个pod,名字为nginx,是在test这个namespace下的,然后容器用的是nginx:latest,执行
kubectl apply -f test-pod.yaml
在这里插入图片描述
此时执行命令:kubectl get all -n test
在这里插入图片描述
发现这个test这个明明空间下确实有一个名为nginx的pod

3 给pod加标签

先看上面的nginx的情况:
kubectl get all -n test -o wide --show-labels
在这里插入图片描述
可以知道这个pod上是没有任何标签的。执行如下命令:
kubectl label pod nginx love=coffee -n test
在这里插入图片描述
打上标签以后,然后再看一下:标签存在了
在这里插入图片描述
当然也是可以通过修改yaml文件的方式来实现的,如:

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  namespace: test
  labels:
    love: "tea"
spec:
  containers:
  - image: nginx:latest
    name: pod001
    ports:
    - name: nginx-port
      containerPort: 80
      protocol: TCP

在这里插入图片描述
执行完以后,可以看到变成了love=tea

4 创建deployment

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-dep
  namespace: test
spec:
  replicas: 3
  selector:
    matchLabels:
      run: nginx
  template:
    metadata:
      labels:
        run: nginx
    spec:
      containers:
      - image: nginx:latest
        name: nginx
        ports:
        - containerPort: 80
          protocol: TCP

在这里插入图片描述
查看这个详情:
在这里插入图片描述

5 创建service

apiVersion: v1
kind: Service
metadata:
  name: svc-nginx
  namespace: test
spec:
  clusterIP: 10.109.179.231 #固定svc的内网ip
  ports:
  - port: 80
    protocol: TCP
    targetPort: 80
  selector:
    run: nginx
  type: ClusterIP

目的是代理到标签为run=nginx的所有pod。创建完成后,多了一个service
在这里插入图片描述
访问这个service的内网ip:能访问成功
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值