k8s部署应用(命令行模式)

1.部署一个redis

kubectl create deployment isee-redis --image=redis

– 命令解析:
kubectl create deployment 固定写法,创建一个部署
isee-redis 容器名称
–image=redis 指定镜像

1.获取k8s里面所有资源

kubectl get all

在这里插入图片描述
可以看到,已经有一个名称为isee-redis-xxx的pod,status是Running状态;
replicaset:复制,即我们的应用要复制几份,这里我们只有一份

3.查看部署情况

-- 查看所有的部署情况(包括service、replicaset等)
kubectl get all -o wide
-- 查看pod的部署情况
kubectl get pods -o wide

在这里插入图片描述
可以看到刚才部署的redis是在k8s-node2节点上,
在k8s-node2节点执行docker images可以查看到已经下载的镜像,
docker ps 可以看到刚才部署的redis已经在运行了。

4.获取默认命名空间的pod

kubectl get pods

在这里插入图片描述

5.获取所有命名空间的pod

kubectl get pods --all-namespaces

在这里插入图片描述

我们部署的pod都是在默认的命名空间中

6.暴露服务访问

expose deployment isee-redis --port=6379 --target-port=6379 --type=NodePort

–port=6379 pod的6379映射redis容器的6379,service会代理pod的6379
–target-port=6379 redis容器的端口
–port的端口可以不是6379,因为这是pod的端口

7.查看service

kubectl get svc

在这里插入图片描述

30243:服务的端口,通过这个端口来访问容器资源
简而言之,若想要连接redis,在客户端填写端口时就填写30243,service会代理我们的端口

在这里插入图片描述

8.应用扩容

kubectl scale --replicas=3 deployment isee-redis

–replicas=3 扩容几份
isee-redis 哪一次部署

查看pod部署情况:kubectl get pods -o wide
在这里插入图片描述
k8s-node2节点部署了2个,k8s-node1节点部署了1个

查看service端口:kubectl get svc
在这里插入图片描述
使用30243端口在node1、node2节点都可以访问到,因为我们在两个节点都部署了

缩容只需要将–replicas指定为1即可:

kubectl scale --replicas=1 deployment isee-redis

9.删除部署

-- 查看部署信息
kubectl get all
-- 删除这次部署
kubectl delete deployment.apps/isee-redis
-- 删除service暴露
kubectl delete service/isee-redis![在这里插入图片描述](https://img-blog.csdnimg.cn/8bdde438e7ce4e1faa92d5297a7e7434.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1Jvb2tpZXhpYW9NdV9h,size_16,color_FFFFFF,t_70)

在这里插入图片描述

10.查看yaml部署的yaml内容

kubectl create deployment isee-redis --image=redis --dry-run -o yaml

在这里插入图片描述

11.转存yaml文件

kubectl create deployment isee-redis --image=redis --dry-run -o yaml > isee-redis.yaml

应用刚才转存的配置文件:

kubectl apply -f isee-redis.yaml

版权声明:本文为RookiexiaoMu_a原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。