kubeSphere使用镜像安装部署Nacos集群
前置环境
nacos集群版需要mysql作为数据源。所以需要k8s中安装mysql数据库并建好数据库表。
此次搭建 naocs:2.0.3 版本的集群,下载官方的安装包,获取其中的配制文件及SQL文件,下载地址:https://github.com/alibaba/nacos/releases/tag/2.0.3。

首先在数据库中创建一个nacos_config数据库,并执行config 目录下的 nacos-mysql.sql

编辑配置文件
进入kubeshere的配置中心,新建一个配置nacos-conf。

新建配置项application.properties,配置的值,就是复制nacos/conf目录下的application.properties。
配置项主要修改的地方是,开启数据源,配置mysql的地址和数据名。mysql地址为k8s中mysql的DNS
1 | ### If use MySQL as datasource: |

注意:服务DNS的组成就是:服务名.项目名。

再新建一个配置项cluster.conf,用来配置集群信息,就是复制nacos/conf目录下cluster.conf
1 | nacos-v1-0.nacos.common-util.svc.cluster.local:8848 |

注意:这里面不好弄的就是这三个nacos集群节点的地址,节点的地址是:服务名-容器序号-服务DNS.svc.cluster.local:端口。
也就是说这里得先约定创建nacos服务的时候名字为nacos。因为创建的是有状态服务所以服务ID是固定的为v1-0 v1-1 v1-2 …依次类推。
创建nacos工作负载
选择创建有状态服务。

名称一定要是和上面集群地址约定的一样,本例子中为nacos。

副本数选择3,容器选择nacos/nacos-server:v2.1.0。Nacos2.0版本因为考虑1.x版本的升级用户。所以2.0版本启动时必须先以1.X模式启动。Nacos 2.1版本默认关闭从1.x版本升级。副本数也可选择1,单节点部署。

Nacos2.0以上版本增加grpc连接,所以端口设置8848和9848。

同步主机时区。

若是副本数1,单节点部署,需要增加环境变量 MODE:standalone

挂载配置文件。

application.properties 挂载到:/home/nacos/conf/application.properties。

添加子文件application.properties。

cluster.conf 挂载到:/home/nacos/conf/cluster.conf。

添加子文件cluster.conf。若是副本数1,单节点部署,则不需要。


点击下一步,点击创建。查看日志。


为 nacos 创建一个 NodePort的服务
选择指定工作负载。


指定工作负载,选择刚才创建的nacos服务。

端口设置8848和9848。

然后下一步,选择外部访问,NodePort 模式。

最后创建,点击该服务进入详情,释放的端口不固定,外网访问端口也需要修改相差1000。


点击更新,即可看到释放的端口。

在浏览器访问http://192.168.418.111:31432/nacos。使用 nacos/nacos 登录
