图片没粘贴过来,请看本人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

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. MongoDB自学日记3——架构及HA

    在对mongoDB的操作有了一定基础后,终于可以扯扯HA和架构这两个高大上的概念了.在这之前当然还得弄清楚mongoDB的Key feature:Sharding. 1. Sharding Shard ...

  2. Tido 习题-二叉树-树状数组实现

    题目描述 这就是一个简单的树状数组入门题 可以动态地进行区间和查询 随时可能会进行更新   #include<iostream> #include<cstdio> #inclu ...

  3. java 字节码指令集

    This is a list of the instructions that make up the Java bytecode, an abstract machine language that ...

  4. Fish and Oh My Fish in Ubuntu

    After install Fish shell, then install Oh My Fish . Oh My Fish(shortly OMF) can make our Fish shell ...

  5. 高并发架构系列:Redis缓存和MySQL数据一致性方案详解

    一.需求起因 在高并发的业务场景下,数据库大多数情况都是用户并发访问最薄弱的环节.所以,就需要使用redis做一个缓冲操作,让请求先访问到redis,而不是直接访问MySQL等数据库. 这个业务场景, ...

  6. STL库的应用

    容器分为两类:序列式容器和关联式容器. 序列式容器,其中的元素不一定有序,但都可以被排序.如:vector.list.deque.stack.queue.heap.priority_queue.sli ...

  7. 走近Java之包装器类Integer

    前几天,有个同事问了我一个关于Integer类赋值的问题,很有意思,我们一起来看一下(如果有说的不正确的地方,欢迎大家指正). 如上图,同样是赋值,但是两次比较的结果完全不同.我们走近了解一下. 在I ...

  8. C#使用sqlite-net搭建简易的ORM

    SQLite简易版ORM 首先打开项目,使用nuget搜索sqlite-net,如下图: 下载完成后,我们会多出两个文件,SQLite.cs和SQLiteAsync.cs. 我们新建一个文件夹SQLi ...

  9. Web前端——JavaScript扩展补充

    JS补充 document也是windows的一个子对象 a标签点击事件 要想设置点击a标签,执行某种方法,推荐在a标签的herf属性使用JavaScript伪协议,实现点击之后执行的js方法,而不是 ...

  10. 剖析Unreal Engine超真实人类的渲染技术Part 3 - 毛发渲染及其它

    目录 四.毛发渲染 4.1 毛发的构造及渲染技术 4.1.1 毛发的构造 4.1.2 Marschner毛发渲染模型 4.1.3 毛发的间接光照 4.2 毛发的底层实现 4.3 毛发的材质解析 4.3 ...