2种创建部署的方式一、查找镜像二、部署tomcat(2种)
1.1、命令行方式创建部署
1.1.1、遇到这种请检查网络和docker1.1.2、模拟宕机tomcat效果,关闭node21.2.3 、暴漏tomcat访问 1.2、yaml方式创建部署
1.2.1、删除命令行创建的1.2.2、查看部署tomcat的yaml内容1.2.3、生成yaml文件1.2.4、部署,应用文件1.2.5、暴露(映射)端口出来
1.2.5.1、查看yaml内容1.2.5.2、信息合并到tomcat8.deployment.yaml文件1.2.5.4、删除刚才创建的部署,然后再次应用,创建映射以前生效 1.2.6、访问 三、命令扩容和缩容四、命令小结
2种创建部署的方式
有2种创建方式
- 一种是采用命令行的模式一种是采用yaml文件的方式
kubectl文档 ==>官网文档
命令里面的资源类型==>官方文档
格式化输出==>官方文档
示例-常用操作==>官方文档
如图:
一、查找镜像
docker hub地址
如图:
二、部署tomcat(2种) 1.1、命令行方式创建部署
- 主节点会去调度其他节点,来下载镜像,启动容器k8s里面最小的单位是pod,容器在pod里面k8s是基础docker,所以要配置镜像加速,不然很慢,很容易拉取失败要保证网络的稳定性和网速,不要使用手机热点
1、检查网络
ping www.baidu.com
2、拉取tomcat8
kubectl create deployment tomcat8 --image=tomcat:8.5.38-jre8
3、查看k8s里面的所有资源(里面有4部分)
kubectl get all
3、查看详细信息,查看toncat部署在哪个节点
kubectl get pods -o wide
4、查看pod的详细信息
kubectl describe pod
删除
# kubectl delete deploy/tomcat8
如图:
拉取中
1分钟后拉取成功-如图
- ImagePullBackOff 检查网络(docker、镜像加速、外网、部署的网络配置)ErrImagePull 镜像地址不对
官网说明
1、查看节点状态
kubectl get nodes
node2状态为notReady
2、查看tomcat状态
- 注明:需要一小会时间才会监控到(预计2-3分钟)master会在选一个节点,再次拉取tomcat
kubectl get pods -o wide
3、重启node2节点,他启动完会移除他下面的tomcat
- -port=80 指定pod端口–target-port=8080 pod容器暴漏的端口–type=NodePort 以什么形式暴漏
映射命令
kubectl expose deployment tomcat8 --port=80--target-port=8080--type=NodePort
删除服务
kubectl delete service/tomcat8
查看
kubectl get svc #详细 kubectl get svc -o wide
如图:
访问ip:端口
- http://192.168.56.100:32742/http://192.168.56.101:32742/http://192.168.56.102:32742/都可以
#查看 kubectl get all #删除服务 kubectl delete service/tomcat8 #删除部署 kubectl delete deploy/tomcat8
如图:
查看帮助
kubectl create deployment tomcat8 --image=tomcat:8.5.38-jre8 --help
表示尝试运行,加上 -o yaml 会打印成yaml格式
查看yaml内容
kubectl create deployment tomcat8 --image=tomcat:8.5.38-jre8 --dry-run -o yaml1.2.3、生成yaml文件
输出到 tomcat8.deployment.yaml
kubectl create deployment tomcat8 --image=tomcat:8.5.38-jre8 --dry-run -o yaml >tomcat8.deployment.yaml
编码文件删除没用的信息,并设置创建3个
vi tomcat8.deployment.yaml
如图:
kubectl apply -f tomcat8.deployment.yaml
如图:
kubectl expose deployment tomcat8 --port=80 --target-port=8080 --type=NodePort --dry-run -o yaml1.2.5.2、信息合并到tomcat8.deployment.yaml文件
将映射的yaml内容复制到tomcat8.deployment.yaml
vi tomcat8.deployment.yaml1.2.5.4、删除刚才创建的部署,然后再次应用,创建映射以前生效
删除
kubectl apply -f tomcat8.deployment.yaml
再次应用文件
kubectl apply -f tomcat8.deployment.yaml
如图:
三、命令扩容和缩容拓展:这边还可以结合ingress,采用域名的方式,并能负载聚合
扩容
#查看 kubectl get deployment #扩容成3个 kubectl scale --replicas=3 deployment tomcat8 #pod信息 kubectl get pods -o wide
扩容如图:
缩容
# 缩容成1个 kubectl scale --replicas=1 deployment tomcat8 #pod信息 kubectl get pods -o wide
缩容如图:
#查看节点 kubectl get nodes #创建部署 kubectl create deployment tomcat8 --image=tomcat:8.5.38-jre8 #查看所有 kubectl get all #查看pod详情 kubectl get pods #查看pod详情 kubectl get pods -o wide #查看pod的详情内容 kubectl describe pod #服务详情 kubectl get svc -o wide #删除部署 kubectl delete deploy/tomcat8 #删除service kubectl delete service/tomcat8 #扩容tomcat8 为3 kubectl scale --replicas=3 deployment tomcat8 #缩容tomcat8 为1 kubectl scale --replicas=1 deployment tomcat8



