如何在同一系统中运行两个WSO2 Identity Server服务
运行第二个WSO2 IS 5.11.0实例(使用9444端口)
1. 复制现有实例目录
deb包默认安装路径为/opt/wso2is-5.11.0,先复制一份作为第二个实例的基础目录:
sudo cp -r /opt/wso2is-5.11.0 /opt/wso2is-5.11.0-instance2
给新目录设置正确权限:
sudo chown -R wso2:wso2 /opt/wso2is-5.11.0-instance2
2. 修改端口配置(指定9444为HTTPS端口)
编辑新实例的核心配置文件/opt/wso2is-5.11.0-instance2/repository/conf/deployment.toml,推荐用端口偏移的方式一键修改所有冲突端口(偏移量1时,默认9443端口会自动变为9444):
[server] offset = 1
如果需要手动指定单个端口,可替换以下配置:
# 修改HTTPS端口为9444 [transport.https.properties] port = 9444 # 修改HTTP端口为9764(避免与原实例9763冲突) [transport.http.properties] port = 9764 # 修改服务停止端口为9445(避免与原实例9443冲突) [server] stop_port = 9445
3. 创建新的systemd服务文件
复制原服务配置文件并修改为新实例的服务:
sudo cp /etc/systemd/system/wso2is-5.11.0.service /etc/systemd/system/wso2is-5.11.0-instance2.service
编辑新服务文件,更新目录指向:
sudo nano /etc/systemd/system/wso2is-5.11.0-instance2.service
修改内容如下:
[Unit] Description=WSO2 Identity Server 5.11.0 Instance 2 After=network.target [Service] Type=forking User=wso2 Group=wso2 WorkingDirectory=/opt/wso2is-5.11.0-instance2 ExecStart=/opt/wso2is-5.11.0-instance2/bin/wso2server.sh start ExecStop=/opt/wso2is-5.11.0-instance2/bin/wso2server.sh stop Restart=on-abnormal [Install] WantedBy=multi-user.target
4. 启动并验证第二个实例
重新加载systemd配置:
sudo systemctl daemon-reload
启动新服务:
sudo service wso2is-5.11.0-instance2 start
验证端口监听状态:
sudo netstat -tulpn | grep 9444
也可通过访问https://localhost:9444确认服务正常运行。
内容的提问来源于stack exchange,提问作者Vaisakh Gopinath
相关产品推荐
相关产品推荐

