Nacos Kubernetes

K8S部署Nacos微服务

Posted on 2020-10-15,3 min read

本地搭建Nacos环境

下载代码资源

https://gitee.com/pingfanrenbiji/nacos.git

编译Nacos

mvn -Prelease-nacos clean install -U -Dmaven.test.skip=true 

img

启动Nacos

./distribution/target/nacos-server-1.3.0-BETA/nacos/bin/startup.sh -m standalone

img

下载user、order代码资源

https://gitee.com/pingfanrenbiji/nacos-example.git

启动user服务

img

启动order服务

img

查看注册情况

http://127.0.0.1:8848/nacos
nacos/nacos
img

验证下 user是否能够访问order

  访问 localhost:8100/k8s
  查看日志

img

将order和user服务 docker化

将order和user分别生成jar包

img

存放到同一个文件夹 目录结构如下

img
img

分别创建Dockerfile文件

img
img

生成镜像

sudo docker build -t user-image:v1.0 .
sudo docker build -t order-image:v1.0 .

img
img

将镜像推送到阿里云docker库

  • 网址
https://cr.console.aliyun.com/cn-hangzhou/new

  • 打 tag
sudo docker tag user-image:v1.0 registry.cn-shanghai.aliyuncs.com/mengfanxiao/user-image:v1.0
sudo docker tag order-image:v1.0 registry.cn-shanghai.aliyuncs.com/mengfanxiao/order-image:v1.0
  • 推送
sudo docker push registry.cn-shanghai.aliyuncs.com/mengfanxiao/user-image
sudo docker push registry.cn-shanghai.aliyuncs.com/mengfanxiao/order-image
img

k8s部署2个docker

  • 创建user.yaml
img
  • 创建order.yaml
img
  • 部署
kubectl apply -f user.yaml
kubectl apply -f order.yaml 

  • 查看部署pods情况
kubectl get pods

img
kubectl get pods -o wide

img
进入集群环境 查看pod之间是否可以访问
kubectl run busybox --rm=true --image=busybox --restart=Never -it
img
  • 查看service
kubectl get svc

img
  • 查看 ingress
kubectl get ingress

img
  • 查看user 和 order服务 是否成功注册到 nacos
img

ip为Pod的IPip为Pod的IP

img
至此 user 和 server 2个springboot项目 以pod的方式跑起来了 也注册到了 宿主机上的nacos服务上 

问题协查方式

  • 查看pod docker imags版本号是否正确
kubectl describe pods|grep user

img
  • 查看pod docker 启动日志
kubectl logs -f order-65d5b4d858-rgnfs

  • 查看 k8s 服务启动文件 比如 order.yaml 文件 其中的端口号映射是否正确

未完待续

  • 通过 service NodeType方式访问 order
  • 通过ingress nginx方式访问user
  • 测试 user是否可以访问到 order

资源文件

https://gitee.com/pingfanrenbiji/nacos-example.git
相关配置文件也在其中

参考文章

https://www.cnblogs.com/wuzhenzhao/p/12076827.html
https://zhuanlan.zhihu.com/p/68700978

原文链接:https://juejin.im/post/6844904166691700750

下一篇: 在K8S上搭建Redis集群→