您的位置:首页 > 运维架构

自动安装分布式mitaka版本openstack

2016-04-25 13:26 417 查看
作者:【吴业亮】云计算开发工程师

博客:http://blog.csdn.net/wylfengyujiancheng

mitaka已经发布四天,目前代码bug还不少,本次本地源为4月12号的代码,由于个人能力有限,一些问题暂时没解决,欢迎共同交流。

安装过程视频:http://pan.baidu.com/s/1miPE9Xu

代码路径: 链接:http://pan.baidu.com/s/1qY9rxda 密码:c4ad

本文介绍如何通过脚本自动安装matika环境。操作系统请下载分享的iso,不要到网上随意下载,原因本地源是基于这个iso做的。安装过程各个节点无需上网。如安装单节点allinone模式,只安装controller即可。如有多个节点,重复执行computer或block代码即可。



二、建议硬件配置:

controller

vcpu: 2+

内存:4G+

硬盘:10G

computer

vcpu: 2+

内存:4G+

硬盘:10G+

block

vcpu: 1+

内存:2G+

硬盘:10G+ (多块)

否则在安装过程中会报一些服务起不来错误

三、安装各个节点的操作系统

1、使用CentOS-7-x86_64-DVD-1511.iso(本地源为CentOS7.2的)

2、安装类型为basic web server



四、使用本地源方法

1、用ftp工具(如:filezilla)通过root用户将软件包mitaka-centos-rdo.tar.gz上传到服务器/mnt下

2、解压压缩包
<code class="hljs vala has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;">#cd  /mnt</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># tar –zxvf mitaka-centos-rdo.tar.gz</span>
</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul>


3、配置本地源配置文件

删除网络源
<code class="hljs vala has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># cd /etc/yum.repos.d/ && mkdir bak_repo_bak && mv *.repo  bak_repo_bak </span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul>


4、新建/etc/yum.repos.d/repo.repo并写入(必须命名为repo.repo,脚本判断本地源的依据)
<code class="hljs makefile has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;"># cat <<END >/etc/yum.repos.d/repo.repo</span>
[repo]
<span class="hljs-constant" style="box-sizing: border-box;">name</span>=repo
<span class="hljs-constant" style="box-sizing: border-box;">baseurl</span>=file:///mnt/mitaka-centos-rdo
<span class="hljs-constant" style="box-sizing: border-box;">gpgcheck</span>=0
<span class="hljs-constant" style="box-sizing: border-box;">enabled</span>=1
<span class="hljs-constant" style="box-sizing: border-box;">proxy</span>=_none_
END
</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li></ul>


5、执行下列命令测试,有正常回显,如报错返回检查配置文件及文件路径是否正确。
<code class="hljs vala has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># yum repolist</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul>


五、配置安装信息

1、用ftp工具(如:filezilla)通过root用户将mitaka_install-V1.6.zip 上传到服务器/root下
<code class="hljs vala has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># cd /root/</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># unzip mitaka_install-V1.6.zip</span>
</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul>


2、配置安装信息/root/mitaka_install-V1.6/lib/lib/installrc。



解释:

Controller节点信息

HOST_NAME对应controller的主机名

MANAGER_IP第一块网卡IP,作为管理网

ALL_PASSWORD各个组件、数据库及dashboard用户密码

NET_DEVICE_NAME第二块网卡名称,虚拟机网卡绑定到该网卡上

CONTROLLER_COMPUTER=True

controller节点上是否安装nova-computer服务,如果需要做到控制和计算隔离,请改为False。

NEUTRON_PUBLIC_NET为浮动IP网络的网段 ,即外出网络网段

PUBLIC_NET_GW为浮动IP网络的网关

PUBLIC_NET_START为浮动IP网络地址池的起始IP

PUBLIC_NET_END为浮动IP网络地址池的结束IP

SECOND_NET为系统第二块网卡的IP,用于绑定网桥,走虚拟机流量

NEUTRON_DNS为浮动IP网络的DNS

NEUTRON_PRIVATE_NET为demo租户的网络

PRIVATE_NET_GW为demo租户的网络网关

PRIVATE_NET_DNS为demo租户的网络DNS

BLOCK_CINDER_DISK新增一个空白的分区或磁盘用于配置cinder云硬盘(block节点)

可选:

CINDER_DISK新增一个空白的分区或磁盘用于配置cinder云硬盘(controller节点)

注意:请检查各个节点的各个网卡名称是否与实际名称一致,如不一致可用nmtui命令修改

举例:



不一致,将wired connection 1 改为eth1



3、配置hosts文件,此处配个节点的信息。
<code class="hljs vala has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># cat /root/ mitaka_install-V1.6lib/hosts</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul>




六、执行安装
<code class="hljs vala has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># cd ~/mitaka_install-V1.6</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># bash main.sh</span>
</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul>


输入数字进入需要安装的节点,1表示安装controller,2表示安装computer节点,3表示安装block节点



1、安装controller节点

选择1,进入安装controller节点模式

输入数字1 ,Configure System Environment.

当出现下列回显表示安装配置成功



注意:安装Configure System Environment后会自动重启一次

重启后用root重新登录
<code class="hljs vala has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># cd ~/ mitaka_install-V1.6</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;"># bash main.sh</span>
</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul>


输入数字2 Install Mariadb and Rabbitmq-server

成功回显



输入数字 3 Install Keystone.

成功回显



输入数字4 Install Glance..

成功回显



输入数字5 Install Nova

成功回显



输入数字6 Install Cinder

成功回显



输入数字7 进入Install Neutron,

成功回显



输入数字8 Install Dashboard

成功回显



输入0退出脚本



2、安装computer节点服务

进入computer节点安装模式输入1,配置系统

成功回显:



输入2安装nova和neutron-agent服务,需要手动输入computer节点的第二块网卡名称用于走虚拟机流量



成功回显:



注意:如有多个computer节点请重复此章节操作即可

3、安装block节点服务

输入1进入配置系统

成功回显:



输入2进入安装cinder服务

成功回显:



注意:如有多个block节点请重复此章节操作即可

七、登录openstack及创建虚拟机

1、Dashboard安装成功后在浏览器中输出http://eth0-IP/dashboard



登录用户名及密码

管理员用户:admin

普通用户:demo

密码:参见/root/ mitaka_install-V1.6/lib/lib/installrc

2、创建虚拟机

点击computer – instance-launch instance创建虚拟机



3、分配浮动IP

点击associate floating ip 给虚拟机分配IP



附录

1、脚本必须用root执行,否则自动退出

2、脚本日志在/var/log/openstack-centos-mitaka,如果报错,打开日志最下面找到ERROR的一行,检查环境问题。

3、执行脚本时绿色回显表示执行命令成功。

4、脚本报错后执行再次执行,自动识别已经安装的步骤。

5、该脚本支持物理机也支持虚拟机。

7、已知bug,如果虚拟机创建在computer节点上,虚拟机网络不通,vnc打不开,需要重新下controller节点的nova和neutron服务或者直接重启controller节点。

8、代码路径:

链接:http://pan.baidu.com/s/1qY9rxda 密码:c4ad

9、在安装过程中如果有问题欢迎交流,因为本人平时也有工作,有时不能及时回复大家的消息,请理解!

邮箱:wuyeliangdt@126.com

微信:A873230308
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: