[問題] FreeBSD11 中 ZStack 源碼編譯過程
[解答] 參考:http://zstack.org/cn_blog/build-zstack.html
zstack 的commit id: 55f182cf11fe4c14ec43098f330a6b396e19b9fa
下載下面四個倉庫的代碼,需要放到同一個目錄,我是放放在/usr/home/harvis/Opensource/目錄里面的
zstack
zstack-dashboard
zstack-utility
zstack-vyos
cd /usr/home/harvis/Opensource/
git clone https://github.com/zstackio/zstack
git clone https://github.com/zstackio/zstack-dashboard
git clone https://github.com/zstackio/zstack-utility
git clone https://github.com/zstackio/zstack-vyos
開始編譯了,首先安裝需要的依賴軟件包,zstack依賴maven,mariadb,rabbitmq, golang 這幾大件,
比較繁瑣的是maven里面的依賴庫,網速慢,耐着點性子。
先編譯zstack
cd zstack/
mvn -DskipTests clean install
再編譯zstack all in one安裝包
編譯之前先配置一些 go 的兩個環境變量
$ export GOROOT="/usr/local/go"
$ export GOPATH="/home/harvis/go"
cd zstack-utility/zstackbuild
ant -Dzstack_build_root=/usr/home/harvis/Opensource all-in-one
編譯出來的all-in-one bin格式的文件,/usr/home/harvis/Opensource/zstack-utility/zstackbuild/target/zstack-installer-1.11.0.bin
有點遺憾,FreeBSD中all-in-one安裝包不能用,因為它是為Centos6/7/Ubuntu14.04定制的,我是參照CentOS7,手工部署的,能跑起來UI。
但是沒法跑zstack simulator, 在創建VmInstance的步驟出錯。
[問題] CentOS7 中 zstack start/stop service step by step
[解答] 手動啟動的流程如下
[harvis@centos7 ~]$ sudo service httpd start
[harvis@centos7 ~]$ sudo service rabbitmq-server start
[harvis@centos7 ~]$ sudo service mariadb start
[harvis@centos7 ~]$ sudo /etc/init.d/zstack-consoleproxy start
[harvis@centos7 ~]$ sudo /etc/init.d/zstack-server start
手工停止服務的流程如下
[harvis@centos7 ~]$ sudo /etc/init.d/zstack-server stop
[harvis@centos7 ~]$ sudo /etc/init.d/zstack-consoleproxy stop
[harvis@centos7 ~]$ sudo service mariadb stop
[harvis@centos7 ~]$ sudo service rabbitmq-server stop
[harvis@centos7 ~]$ sudo service httpd stop
[問題] freebsd 中 zstack start/stop service step by step
[解答] 手動啟動的流程如下
# start mysql
sudo /usr/local/etc/rc.d/mysql-server onestart
sleep 2
# start rabbitmq
sudo /usr/local/etc/rc.d/rabbitmq onestart
sleep 2
# start apache24(httpd)
sudo /usr/local/etc/rc.d/apache24 onestart
sleep 2
# start console proxy agent
. /usr/local/zstack/virtualenv/consoleproxy/bin/activate && python -c "from consoleproxy import cdaemon; cdaemon.main()" start
sleep 2
# start zstack managemen node and dashboard
sudo zstack-ctl start
手工停止zstack服務的流程如下
# stop zstack management node and dashboard
sudo zstack-ctl stop
# stop console proxy agent
. /usr/local/zstack/virtualenv/consoleproxy/bin/activate && python -c "from consoleproxy import cdaemon; cdaemon.main()" stop
# stop apache24(httpd)
sudo /usr/local/etc/rc.d/apache24 onestop
# start rabbitmq
sudo /usr/local/etc/rc.d/rabbitmq onestop
# stop mysql
sudo /usr/local/etc/rc.d/mysql-server onestop
mvn -DskipTests clean install