依赖环境
- windows版本:win7以上
- cmake:3.2以上
- mysql: 4.1.17以上
- nvm:0.35.1以上
- node: 12.13.0以上
分别安装vs2019,nodejs, git, mysql等。vs2019中已经包含cmake。
安装完成后,在cmd窗口中输入命令测试环境是否已经生效。
Tars C++开发环境安装
注意以下操作都在cmd命令行下进行, 请保证cmake git nodejs vs等环境变量的生效。
注意以管理员身份打开cmd。
#选择好安装目录
git clone https://github.com/TarsCloud/TarsFramework.git --recursive
#进入build目录
cd TarsFramework
git submodule update --remote --recursive
cd build
cmake ..
cmake --build . --config RelWithDebInfo
cmake --build . --config RelWithDebInfo --target install
默认情况下, 编译Tars会自动下载mysql client源码, 并编译libmyql.dll。
默认的安装包路径:c:/tars/cpp, 即编译完成的框架&安装脚本在这个目录。
默认的安装完成后的路径为c:/tars-install, 即安装完成后的路径。
install以后, 依赖的库(mysql静态库)和头文件也会安装到该目录下(c:/tars/cpp/thirdparty), 如果开启了ssl, nghttp2同理.
Tars框架安装
注意:需要先完成TarsFramework的编译和安装。
此处只安装一个节点,不安装从节点。如果需要安装从节点,请参考相关文档。
在c:\tars\cpp\deploy下载tarsweb并重命名为web:
cd c:\tars\cpp\deploy
git clone https://github.com/TarsCloud/TarsWeb.git web
一键部署:
#busybox.exe sh ./windows-install.sh MYSQL_HOST MYSQL_PASSWORD HOSTIP REBUILD(false[default]/true) SLAVE(false[default]/true) MYSQL_USER MYSQL_PORT
busybox.exe sh ./windows-install.sh 192.168.1.18 123456 192.168.1.18 false false root 3306
说明:
框架可以部署在单机或者多机上, 多机是一主多从模式, 通常一主一从足够了:
- 主节点只能有一台, 从节点可以多台
- 主节点默认会安装:tarsAdminRegistry, tarspatch, tarsweb, tarslog, 这几个服务在从节点上不会安装
- tarsAdminRegistry只能是单点(带有发布状态)
- tarslog也只能是单点, 否则日志会分散在多机上
- 原则上tarspatch, tarsweb可以是多点, 如果部署成多点, 需要把c:\tars-install\patchs目录做成多机间共享, 否则无法正常发布服务
- 可以后续把tarslog部署到大硬盘服务器上
- 实际使用中, 即使主从节点都挂了, 也不会影响框架上服务的正常运行, 只会影响发布
- 一键部署会自动安装好web, 同时开启web权限
部署完成后会创建5个数据库,分别是db_tars、db_tars_web、db_user_system、 tars_stat、tars_property。
- db_tars是框架运行依赖的核心数据库,里面包括了服务部署信息、服务模版信息、服务配置信息等等;
- db_tars_web是web管理平台用到数据库
- db_user_system是web管理平台用到的权限管理数据库
- tars_stat是服务监控数据存储的数据库;
- tars_property是服务属性监控数据存储的数据库;
安装成功会看到如下输出信息:
2019-10-31 11:06:13 INSTALL TARS SUCC: http://xxx.xxx.xxx.xxx:3000/ to open the tars web.
2019-10-31 11:06:13 If in Docker, please check you host ip and port.
2019-10-31 11:06:13 You can start tars web manual: cd /usr/local/app/web; npm run prd
访问web界面,输入192.168.1.18:3000,会出现首次登录设置密码的界面。
进入后如下图:
问题解决
一键部署时,如果出现以下错误:
是因为安装的pm2未生效。
新打开cmd窗口,再次运行一键安装部署脚本:
#busybox.exe sh ./windows-install.sh MYSQL_HOST MYSQL_PASSWORD HOSTIP REBUILD(false[default]/true) SLAVE(false[default]/true) MYSQL_USER MYSQL_PORT
busybox.exe sh ./windows-install.sh 192.168.1.18 123456 192.168.1.18 false false root 3306
结果如下:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)