如何同时搭建多个节点

文档是默认只能搭建运行一个cdn节点,由于有些也有其它需求,需要在服务器搭建多个节点,这里大概说下教程。

1、复制一份节点源码,并进行配置

比如我之前安装过节点,且源码路径为/home/cdn-node,那么我可以复制一份源码,可以使用命令:

#新建一个目录,存放节点源码,不要和之前同名就行
mkdir /home/cdn-node1
#将之前的同步源码复制过来
\cp -rf /home/cdn-node/* /home/cdn-node1

此时的同步源码目录为/home/cdn-node1

然后修改下这个要使用的节点运行端口和进程名称,修改该节点目录下的ecosystem.config.js文件,如下:

#该节点进程名称,自行修改,和默认的不一样就行
name: "cdn-node1",

#运行端口,注意是env_production那块,PORT为该节点默认运行端口,自行修改,和之前不一样就行
env_production: {
  PORT: 3001,
  NODE_ENV: "production"
  }

2、给新节点新建一个数据库

直接运行目命令:

#数据库用户名和密码均为efvcdn1,将下面命令一起复制进SSH客户端运行
cat <<EOF > createdb
use efvcdn1
db.createUser( { user: "efvcdn1", pwd: "efvcdn1", roles: [ { role: "readWrite", db: "efvcdn1" } ] } )
EOF
mongo<createdb && rm -rf createdb

最原始默认节点数据库都是efvcdn,这里肯定不能之前一样,那么我们都命名efvcdn1就行了,如果你再搞第3个节点,那么直接批量替换关键词为efvcdn2即可。

接下来编辑该目录配置文件/home/cdn-node1/config/config.js,改下数据库连接信息,如:

#分别是数据库相关信息,也就是上面新建的数据库名称,这里全部改成efvcdn1即可
db: "efvcdn1",
dbUser: "efvcdn1",
dbPassword: "efvcdn1",

其它配置参数参考默认的节点搭建教程。

3、启动源码

#进入源码目录
cd /home/cdn-node1
#环境生效
source /etc/profile
#启动程序
pm2 start ecosystem.config.js --env production
#设置开机自启
pm2 save
pm2 startup

#验证是否运行成功,返回Hello World!信息即安装成功,后面的端口为你修改的端口
curl 127.0.0.1:3001

最后绑定域名即可。