微服务架构体系在许多公司都很流行,用到微服务也一般都会有到k8s来部署。Nacos是阿里的一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。自然而然地,我们会用k8s来部署Nacos集群。数据库作为一个重要的部分,其性能及管理的要求,我一般会单独部署数据库,而不是把它放到k8s里。本文将使用自建数据库,使用Ingress发布配置后台。下面将进行详细的部署过程。
Nacos的官网为:https://nacos.io/zh-cn/index.html,大家可以访问,进行更详细的了解。
一、先看一下部署完成的效果
1、k8s的效果,将有3个服务:
2、部署完成的页面访问效果:
二、下面会说明整个部署的过程。
1、部署的思路:
集群与物理机差别及难点:
在k8s中部署nacos集群和在物理机上直接部署nacos机器差别不大,最主要的区别是k8s中部署的服务没有固定的ip地址,而nacos集群部署需要配置所有实例的ip
解决方法:
用k8s的特性,在k8s中通过StatefulSet和Headless Service为每个nacos实例生成一个唯一的dns地址,创建一个普通Service给可客户端使用,每一个实例就一个固定的访问。
2、创建数据库脚本
创建数据库名:nacos
执行数据库脚本,数据库脚本为,打开链接进行下载脚本:
https://github.com/alib