1.简单理解入门k8s

本文介绍了Kubernetes(k8s)的基础操作,包括使用kubectl创建和管理pod、namespace,以及kubectl apply命令的使用。通过实例展示了如何创建、查看和删除namespace及pod,并解释了kubectl apply在资源不存在和已存在时的不同行为。此外,文章还简要探讨了k8s在服务高可用性方面的特点。
摘要由CSDN通过智能技术生成

k8s操作简单入门

一、k8s操作的三种方式简介

  • 使用kubectl + 命令操作,例如:
kubectl run nginx --image=nginx:latest --port=80
 这种方式简单灵活,但无法审计和跟踪对象,通常用于测试环境
  • 使用kubectl + 命令 + yaml操作,例如:
kubectl create -f nginx.yaml
这种方式可以跟踪和审计,但项目大时操作繁琐,一般用于开发环境
  • 使用kubectl + apply + yaml操作,例如:
kubectl apply -f nginx.yaml
这种方式支持按目录批量操作,但很难调试,适合大项目批量部署

二、namespace的简单操作

  • namespace就是用来划分不同的区域,不同区域中的pod相互隔离(pod可以先理解为docker的容器)

1.查看namespace

 kubectl get ns

查看ns

2.创建一个namespace,例如test。命令中的namespace可简写为ns

 kubectl create namespace test

在这里插入图片描述

3.删除一个namespace,此时namespace中的pod也会被删除

 kubectl delete ns test

在这里插入图片描述

4.使用yaml方式进行上面的三个操作

首先书写ns-test.yaml,内容如下:

apiVersion: v1
kind: Namespace
metadata:
  name: test

在这里插入图片描述
1.创建namespace

 kubecel create -f ns-test.yaml

或者

 kubectl apply -f ns-test.yaml

在这里插入图片描述
2.删除namespace

 kubectl delete -f ns-test.yaml

在这里插入图片描述

三、pod的简单操作

  • Docker中使用镜像创建容器运行。在k8s中,使用镜像创建pod运行,所有容器都称之为pod

1.创建一个pod,例如nginx

 kubectl run pod --image=nginx:latest -n test
  • 注意,-n参数是指定namespace,即将容器创建在哪个namespace中。若不指定,则创建在名为default的namespace中。
    在这里插入图片描述

2.查看pod

 kubectl get pod -n test

在这里插入图片描述

3.删除pod

  • 注意,pod-644584df94-nl6mq是上面查到的pod名称
 kubectl delete pod pod-644584df94-nl6mq -n test
 删除 test 中,名为 pod-644584df94-nl6mq 的 pod

在这里插入图片描述

  • 小插曲:此时再查询pod,会发现还能查询到nginx的pod,但是仔细看,会发现这个pod的名字已经和之前不同了,这就是k8s强大的地方之一。它发现pod被删掉了,就会马上启动一个同样的pod来代替之前的pod,以保证服务继续运行在这里插入图片描述

4.使用yaml方式进行上面的三个操作

1.编写pod-nginx.yaml

apiVersion: v1
kind: Namespace
metadata:
  name: test

---

apiVsersion: v1
kind: Pod
metadata:
  name: nginx
  namespace: test
spec:
  containers:
  - name: nginx-pod
    image: nginx:latest
  • yaml分为两部分,上面就是namespace的部分,下面就是nginx的pod基本信息了。namespace部分这里不要也可以。
  • 注意:因为这个yaml中包含namespace的配置,所以创建时,若没有这个namespace,就会创建namespace。同理,使用yaml执行删除操作时,会同时删除这个namespace

2.创建

 kubectl create -f pod-nginx.yaml

或者

 kubectl apply -f pod-nginx.yaml

在这里插入图片描述
3.查看

 kubectl get -f pod-nginx.yaml

在这里插入图片描述
4.删除

 kubectl delete -f pod-nginx.yaml

在这里插入图片描述

四、kubectl apply命令简单解释

  • 资源不存在时,执行kubectl apply + yaml,就会创建资源,相当于执行kubectl create + yaml
  • 资源存在时,执行kubectl apply,则会更新资源,相当于执行kubectl patch。

所以,创建或者更新时,使用apply命令即可。
删除时使用delete查询则使用get

怎么样,k8s入门是不是非常简单呢?如果感觉对您有一点帮助,还请您帮忙点点赞,感谢您的支持

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值