图片没粘贴过来,请看本人gitbook吧https://www.gitbook.com/book/jingtyu/how-to-learn-zstack-code

运行环境

zstack的安装方式有很多种离线安装、在线安装、一键安装、分布式安装等。都很简单,下面介绍一下源码编译安装.

(一)操作系统的选择

操作系统:centos7.2(不要是使用centos6编译后不支持Zstack Management,建议使用Centos7和Ubuntu14.04以上版本)

提示如有问题请检查是否最小化安装 centos7.2, 并设置好root密码。然后加载光驱到 /mnt/cdrom 安装 net-tools 包,支持 ifconfig 等命令。未验证(申请公司的虚拟机)

编辑 repo 文件 (配置yum源)

cat CentOS-Media.repo

[c7-media]

name=CentOS-$releasever - Media

baseurl=file:///mnt/cdrom

gpgcheck=1

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

  1. cat epel.repo

[epel]

name=Extra Packages for Enterprise Linux 7 - $basearce - mirrors.aliyun.com

mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch

failovermethod=priority

enabled=1

gpgcheck=0

然后执行:
 
yum clean all
 
yum makecache

如果出错,重复几次,一定正确。

(二)下载安装编译依赖

必须的组件ant,maven,java-1.8.0-openjdk-devel,bzip2,gzip, wget, zip, unzip, git等工具

1.安装基础组件:yum install -y java-1.8.0-openjdk-devel.x86_64 java-1.8.0-openjdk.x86_64 ant git libffi libffi-devel openssl-devel bc ant sshpass 如下页面表示安装成功。如果后续过程缺少依赖包请自行安装。

2.maven安装:yum install -y maven-3.0.5 (版本3.0.5)

由于ZStack核心是Java代码,里面需要很多maven的依赖库,但是很多maven的依赖库的第一选择都是放在google管理的软件仓库。 由于总所周知的原因,会导致第一次编译ZStack的时候异常缓慢,甚至是无法通过。

解决办法一(亲试)

配置国内快速maven镜像:

vi /etc/maven/settings.xml

在<mirrors>配置节点下面加入

<mirror>
<id>alimaven1</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
 
<mirror>
<id>alimaven2</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
 
<mirror>
<id>repo1</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo1.maven.org/maven2/</url>
</mirror>
 
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>

解决方法二(未试)

maven的.m2/库是可以在不同机器上共享的。 在百度云盘里有一份编译的依赖包:http://pan.baidu.com/s/1eQvUmWU。 大家下载之后,可以根据说明,把依赖库的内容放到/root/.m2 的目录里即可(随着ZStack的开发,ZStack可能会引入一些新的库文件, 有可能在编译新的ZStack的时候,还是会遇到动态下载少量的依赖包,不过由于新的依赖包数量不多,所以下载速度应该可以接收)。

另外如果有条件,大家也可以使用http代理服务器加速maven依赖包的下载,设置的方法可以参考:https://maven.apache.org/guides/mini/guide-proxies.html

3.golang-1.6.3安装

wget https://storage.googleapis.com/golang/go1.6.3.linux-amd64.tar.gz

安装和配置路径请见官网文档:https://golang.org/doc/install?download=go1.6.3.linux-amd64.tar.gz

wgethttps://storage.googleapis.com/golang/go1.6.3.linux-amd64.tar.gz

sudo tar -C /usr/local -xvzf go1.6.3.linux-amd64.tar.gz

vi /etc/profile

添加:

#go lang

export GOROOT=/usr/local/go

export PATH=$PATH:$GOROOT/bin

退出,保存

使环境变量生效: source /etc/profile

检查是否安装成功: go version

(三)源码下载

1,最新源码地址(本人用的是1.7.2)

ZStack核心组件:

https://github.com/zstackio/zstack.git

ZStack虚拟机管理:

https://github.com/zstackio/zstack-utility.git

ZStack-dashboard:

https://github.com/zstackio/zstack-dashboard.git

ZSstack-vyos:

https://github.com/zstackio/zstack-vyos.git

tomact下载

wget -c http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.35/bin/apache-tomcat-7.0.35.zip

把代码和tomact放在同一目录下

mkdir -/home/zstack

cd /home/zstack

源码下载

git clone -b 1.7.x https://github.com/zstackorg/zstack
 
git clone -b 1.7.x https://github.com/zstackorg/zstack-utility
 
git clone -b 1.7.x https://github.com/zstackorg/zstack-dashboard
 
wget -c http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.35/bin/apache-tomcat-7.0.35.zip

*如果不是首次安装请注意清理依赖包(以root用户登录)

cd /root/.m2

rm -fr repository

(四)编译源码

cd /home/zstack/zstack

mvn -DskipTests clean install

cd /home/zstack/zstack-utility/zstackbuild

git checkout1.7.x # 变更当前分支

vi build.properties # 修改创建版本为 1.7.x

# 执行创建命令

# 执行创建命令

ant -Dzstack_build_root=/home/zstack/ -Dzstack.build_version=1.7.x -Dzstack-utiltiy.build_version=1.7.x -Dzstackdashboard.build_version=master all-in-one

提示:编译出错重新编译时,需要删除/root/zstack/zstack-utility/zstackbuild/target文件夹,重新编译

编译成后在 /home/zstack/zstack-utility/zstackbuild/target 有 zstack-installer-1.7.3.bin 文件,即为安装包。

最新版本安装请参考https://github.com/zstackio/zstack-woodpecker

译后安装

$ cd /home/zstack/zstack-utility/zstackbuild/target $ sudo bash zstack-installer*.bin -a -D -R aliyun (公网环境) $ sudo bash zstack-installer*.bin -o -D (定制环境)

选项说明-D :初始化数据库。 -a/-o 全部安装, -R 制定安装源

Notice: 假如安装失败,检查是否需要手动安装如下安装包: * libvirt-daemon-1.2.17-13.el7_2.5.x86_64.rpm * libvirt-client-1.2.17-13.el7.x86_64.rpm

centos6安装时会报错如下

没办法请换centos7。

centos7会报错如下忘记截图啦

1.大概意思是说无法访问zstack.org请检查DNS,/etc/resolve.cnf文件,就是说无法解析域名检查dns

原因:老的官网已经不再了,当然解析不到了,请将域名和新的ip地址进行映射。

vi /etc/hosts

123.129.244.4 zstack.org

2.还遇到报错python and gcc faild

查看log /tmp/zstackinstalltion.log,可能原因是gcc,python版本冲突无法安装

我手动安装后重启机器后可以pass

*每次重新安装前记得删除/usr/local/zstack文件

成功后会如下所示:

1。检查系统:…通过

2。下载并解压Zstack都在同一个包:

ZStack一体包下载:…通过

打开Zstack一体包:…通过

打开tomcat:…通过

在Tomcat安装zstack:…通过

3。安装起来:

禁用SELinux:…通过

安装Python和GCC:…通过

安装点:…通过

安装起来:…通过

4。安装系统库:

安装通用库:…通过

安装virtualenv:…通过

5。安装Zstack工具:

命令行安装zstack:…通过

安装Zstack控制:…通过

6。配置系统:

改变所有权ZStack安装根目录:…通过

配置zstack.properties:…通过

配置Tomcat Java选项:…通过

安装Zstack管理节点:…通过

配置本地NFS服务器(主存储器):…通过

配置本地HTTP服务器(存储图像):…通过

7。安装数据库和消息总线:

SSH密钥生成温度:…通过

安装MySQL服务器:…通过

部署Zstack数据库:…通过

安装RabbitMQ服务器:…通过

8。开始Zstack服务器:

开始Zstack管理节点:…通过

9。开始Zstack Web UI:

安装Zstack Web UI:…通过

开始Zstack仪表板:…通过

ZStack All In One 1.7 Installation Completed:

  • Installation path: /usr/local/zstack

  • UI is running, visit http://10.0.53.237:5000 in Chrome or Firefox

    Use zstack-ctl [stop_ui|start_ui] to stop/start the UI service

  • Management node is running

    Use zstack-ctl [stop|start] to stop/start it

  • ZStack command line tool is installed: zstack-cli

  • ZStack control tool is installed: zstack-ctl

  • For system security, database root password is set to: zstack.mysql.password . You can use `mysqladmin -u root --password=zstack.mysql.password password NEW_PASSWORD` to change it. To be noticed: ZStack will use 'zstack' user to access database. Change 'root' password won't impact 'zstack' access database.

  • 10.0.53.237:/usr/local/zstack/nfs_root is configured for primary storage as an EXAMPLE

  • http://10.0.53.237/image is ready for storing images as an EXAMPLE. After copy your_image_name to the folder /usr/local/zstack/http_root, your image local url is http://10.0.53.237/image/your_image_name

  • You can use `zstack-ctl install_management_node --host=remote_ip` to install more management nodes

Zstack所有在一个1.7.3安装完成:

  • Zstack管理节点成功安装在/usr/local Zstack

•管理节点正在运行

你可以使用zstack-ctl stopi|star(停止|开始)停止/启动

  • Zstack Web UI运行,访问HTTP:/ / 10..0.53.237:5000浏览器

你可以使用zstack-ctl stop_ui|start_ui(停止|开始)停止/启动服务

-安装Zstack命令行工具:Zstack cli

-安装Zstack控制工具:zstack-ctl

你可以使用` Zstack-ctl install_management_node——远程= remote_ip `安装更多的管理节点

想学习更多关于zstack源码知识,请看本人gitbook:https://www.gitbook.com/book/jingtyu/how-to-learn-zstack-code 将持续更新

zstack源码编译安装(1.7.x版本)的更多相关文章

  1. SSH/SSL 源码编译安装简易操作说明

    环境:CentOS 6.7 安全加固需求,由于某盟扫描系统主机有SSL系列漏洞,客户要求必须修复: 解决方案:将SSH/SSL升级到最新版本,删除SSL旧版本(实测不删除旧版本某盟扫描无法通过). 当 ...

  2. 源码编译安装 MySQL 5.5.x 实践

    1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...

  3. 烂泥:mysql5.5数据库cmake源码编译安装

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...

  4. Centos7.X 源码编译安装subversion svn1.8.x

    说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...

  5. centos6.5环境源码编译安装mysql5.6.34

    centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...

  6. centos 6.5源码编译安装subversion 1.8.10

    一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网 ...

  7. Linux环境PostgreSQL源码编译安装

    Linux环境PostgreSQL源码编译安装 Linux版本: Red Hat 6.4 PostgreSQL版本: postgresql-9.3.2.tar.gz 数据存放目录: /var/post ...

  8. 总结源码编译安装mysql

    最近在学习源码编译安装LAMP.LNMP时,一直遇到一个难题,就是就是mysql无论怎么源码编译安装,到最后启动服务都提示"Starting MySQL.The server quit wi ...

  9. Linux下源码编译安装rpy2

    R(又称R语言)是一款开源的跨平台的数值统计和数值图形化展现工具.rpy2是Python直接调用R的第三方库,它可以实现使用python读取R的对象.调用R的方法以及Python与R数据结构转换等.这 ...

随机推荐

  1. WSAAsyncSelect Demo

    #include <WinSock2.h> #include <Windows.h> #include <StrSafe.h> #pragma comment(li ...

  2. Confluence安装、汉化及jira整合

    今天上午装了一下Confluence,刚开始装的时候成功了,成功后进入数据库配置阶段,本人想把jira和confluence整合一起用,刚开始提示数据库连接问题,后来一直问题提示Connection ...

  3. react 项目全家桶构件流程

    资源:create-react-app.react.react-dom.redux.react-redux.redux-thunk.react-router-dom.antd-mobile/antd. ...

  4. Apicloud 接入海康摄像头

    1准备工作 , 加载apicloud 海康视频模块. 引入 SDK 重新生成项目测试 再config.xml写入appid 话不多说直接上代码 video=api.require("haik ...

  5. Go 语言基础

    Go 语言基础 特点 常用命令 go run 直接运行, 不会生成可执行文件 go build 生成可执行文件, 推荐 加分特点 UTF-8编码 高并发: go 关键字 管道: pipe := mak ...

  6. octavia的实现与分析(一)·openstack负载均衡的现状与发展以及lvs,Nginx,Haproxy三种负载均衡机制的基本架构和对比

    [负载均衡] 大量用户发起请求的情况下,服务器负载过高,导致部分请求无法被响应或者及时响应. 负载均衡根据一定的算法将请求分发到不同的后端,保证所有的请求都可以被正常的下发并返回. [主流实现-LVS ...

  7. 仿照Spring自己实现有各种通知的AOP,AOP实现的步骤分解

    一.需求: 仿照Spring的AOP写的 MyAOP 2.0,有环绕通知.前置通知.后置通知.返回通知.异常通知等. 已实现:①通过动态代理+通知的注解类,实现了前置通知.后置通知等各种通知:②切点( ...

  8. Codeforces 617E:XOR and Favorite Number(莫队算法)

    http://codeforces.com/problemset/problem/617/E 题意:给出n个数,q个询问区间,问这个区间里面有多少个区间[i,j]可以使得ai^ai+1^...^aj ...

  9. Qt实现表格控件-支持多级列表头、多级行表头、单元格合并、字体设置等

    目录 一.概述 二.效果展示 三.定制表头 1.重写数据源 2.重写QHeaderView 四.设置属性 五.相关文章 原文链接:Qt实现表格控件-支持多级列表头.多级行表头.单元格合并.字体设置等 ...

  10. S7 300数据块中的变量指定断电保持特性

    利用DB块内变量属性的保持性,勾选上就可以保持了.300PLC数据块默认断电保持.