openstack安装记录(一)环境准备
参考文献:
官方文档 http://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/index.html
最小实例:
- 控制节点: 1 处理器, 4 GB 内存, 及5 GB 存储
- 计算节点: 1 处理器, 2 GB 内存, 及10 GB 存储
- 安全
通过运行下面的命令:
openssl rand -hex 10
密码及对应关系:
|
密码名称 |
描述 |
|---|---|
|
SERVICE_PASS |
服务帐号密码 |
|
SERVICE_DBPASS |
数据库密码 |
|
数据库密码(不能使用变量) |
数据库的root密码 |
| ADMIN_PASS |
admin 用户密码 |
| CEILOMETER_DBPASS |
Telemetry 服务的数据库密码 |
| CEILOMETER_PASS |
Telemetry 服务的 ceilometer 用户密码 |
| CINDER_DBPASS |
块设备存储服务的数据库密码 |
| CINDER_PASS |
块设备存储服务的 cinder 密码 |
| DASH_DBPASS | Database password for the dashboard |
| DEMO_PASS |
demo 用户的密码 |
| GLANCE_DBPASS |
镜像服务的数据库密码 |
| GLANCE_PASS |
镜像服务的 glance 用户密码 |
| HEAT_DBPASS |
Orchestration服务的数据库密码 |
| HEAT_DOMAIN_PASS |
Orchestration 域的密码 |
| HEAT_PASS |
Orchestration 服务中``heat``用户的密码 |
| KEYSTONE_DBPASS |
认证服务的数据库密码 |
| NEUTRON_DBPASS |
网络服务的数据库密码 |
| NEUTRON_PASS |
网络服务的 neutron 用户密码 |
| NOVA_DBPASS |
计算服务的数据库密码 |
| NOVA_PASS |
计算服务中``nova``用户的密码 |
| RABBIT_PASS |
RabbitMQ的guest用户密码 |
| SWIFT_PASS |
对象存储服务用户``swift``的密码 |
- 主机网络
示例架构假设使用如下网络:
管理使用 10.0.0.0/24 带有网关 10.0.0.1
这个网络需要一个网关以为所有节点提供内部的管理目的的访问,例如包的安装、安全更新、 DNS,和 NTP。
提供者网段 203.0.113.0/24,网关203.0.113.1
这个网络需要一个网关来提供在环境中内部实例的访问。
控制节点服务器
配置网络接口
将第一个接口配置为管理网络接口:
IP 地址: 10.0.0.11
子网掩码: 255.255.255.0 (or /24)
默认网关: 10.0.0.1
提供者网络接口使用一个特殊的配置,不分配给它IP地址。配置第二块网卡作为提供者网络:
将其中的 INTERFACE_NAME替换为实际的接口名称。例如,eth1 或者*ens224*。
编辑``/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME``文件包含以下内容:
不要改变 键``HWADDR`` 和 UUID 。
DEVICE=INTERFACE_NAME
TYPE=Ethernet
ONBOOT="yes"
BOOTPROTO="none"
重启系统以激活修改。
配置域名解析
设置节点主机名为 controller。
编辑 /etc/hosts 文件包含以下内容:
# controller
10.0.0.11 controller # compute1
10.0.0.31 compute1 # block1
10.0.0.41 block1 # object1
10.0.0.51 object1 # object2
10.0.0.52 object2
计算节点
配置网络接口¶
将第一个接口配置为管理网络接口:
IP 地址:10.0.0.31
子网掩码: 255.255.255.0 (or /24)
默认网关: 10.0.0.1
注解另外的计算节点应使用 10.0.0.32、10.0.0.33 等等。
提供者网络接口使用一个特殊的配置,不分配给它IP地址。配置第二块网卡作为提供者网络:
将其中的 INTERFACE_NAME替换为实际的接口名称。例如,eth1 或者*ens224*。
编辑``/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME``文件包含以下内容:
不要改变 键``HWADDR`` 和 UUID 。
DEVICE=INTERFACE_NAME
TYPE=Ethernet
ONBOOT="yes"
BOOTPROTO="none"
重启系统以激活修改。
配置域名解析¶
设置节点主机名为``compute1``。
编辑 /etc/hosts 文件包含以下内容:
# controller
10.0.0.11 controller # compute1
10.0.0.31 compute1 # block1
10.0.0.41 block1 # object1
10.0.0.51 object1 # object2
10.0.0.52 object2
- 时间同步
控制节点服务器
在控制节点上执行这些步骤。
安全并配置组件
安装软件包:
# yum install chrony
编辑 /etc/chrony.conf 文件,按照你环境的要求,对下面的键进行添加,修改或者删除:
server NTP_SERVER iburst
使用NTP服务器的主机名或者IP地址替换 NTP_SERVER 。配置支持设置多个 server 值。
注解控制节点默认跟公共服务器池同步时间。但是你也可以选择性配置其他服务器,比如你组织中提供的服务器。
为了允许其他节点可以连接到控制节点的 chrony 后台进程,在``/etc/chrony.conf`` 文件添加下面的键:
allow 10.0.0.0/24
如有必要,将 10.0.0.0/24 替换成你子网的相应描述。
启动 NTP 服务并将其配置为随系统启动:
# systemctl enable chronyd.service
# systemctl start chronyd.service
其他节点服务器
安全并配置组件
安装软件包:
# yum install chrony
编辑``/etc/chrony.conf`` 文件并注释除``server`` 值外的所有内容。修改它引用控制节点:
server controller iburst
启动 NTP 服务并将其配置为随系统启动:
# systemctl enable chronyd.service
# systemctl start chronyd.service
验证
我们建议您在继续进一步的操作之前验证 NTP 的同步。有些节点,特别是哪些引用了控制节点的,需要花费一些时间去同步。
在控制节点上执行这个命令:
# chronyc sources
210 Number of sources = 2
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^- 192.0.2.11 2 7 12 137 -2814us[-3000us] +/- 43ms
^* 192.0.2.12 2 6 177 46 +17us[ -23us] +/- 68ms在 Name/IP address 列的内容应显示NTP服务器的主机名或者IP地址。在 S 列的内容应该在NTP服务目前同步的上游服务器前显示*。
在所有其他节点执行相同命令:
# chronyc sources
210 Number of sources = 1
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* controller 3 9 377 421 +15us[ -87us] +/- 15ms在 Name/IP address 列的内容应显示控制节点的主机名。
安装openstack仓库:
注:不能同时存在 epel仓库,会改变依赖的环境
centos:
yum install centos-release-openstack-mitaka
redhat:
yum install https://rdoproject.org/repos/rdo-release.rpm
完成安装:
升级包:
yum upgrade
安装openstack客户的:
yum install python-openstackclient
关闭selinux:
yum install openstack-selinux
安装mysql,及python-mysql
安装mongodb
安装rabbitmq并做以下操作:
添加openstack用户:
rabbitmqctl add_user openstack RABBIT_PASS
给openstack用户配置写和读权限:
rabbitmqctl set_permissions openstack ".*" ".*" ".*"
安装memcached和python-memcache
openstack安装记录(一)环境准备的更多相关文章
- OpenStack 安装:基本环境准备
刚刚学完openstack,这几篇文章就算对过去课程的一个总结吧. 首先说说基本的结构:在一台Dell的workstation上面安装了VMware,在VMware上面安装两台CentOS,现在给每台 ...
- openstack安装记录(二)keystone安装
先决条件 在你配置 OpenStack 身份认证服务前,你必须创建一个数据库和管理员令牌. 完成下面的步骤以创建数据库: 用数据库连接客户端以 root 用户连接到数据库服务器: $ mysql -u ...
- Devstack 安装OpenStack Pike版本(单机环境)
问题背景 最近在研究OpenStack的时候,需要对其源代码进行调试,公司服务器上部署的OpenStack环境又不能随意的进行折腾,为了研究的持续性和方便性,就决定再自己的虚拟机上面使用Devstac ...
- Mac OSX系统中Hadoop / Hive 与 spark 的安装与配置 环境搭建 记录
Mac OSX系统中Hadoop / Hive 与 spark 的安装与配置 环境搭建 记录 Hadoop 2.6 的安装与配置(伪分布式) 下载并解压缩 配置 .bash_profile : ...
- XenServer虚拟化环境安装记录
Xenserver,思杰基于Xen的虚拟化服务器.Citrix XenServer是一种全面而易于管理的服务器虚拟化平台,基于强大的 Xen Hypervisor 程序之上.XenServer 是为了 ...
- 完整部署CentOS7.2+OpenStack+kvm 云平台环境(1)--基础环境搭建
公司在IDC机房有两台很高配置的服务器,计划在上面部署openstack云平台虚拟化环境,用于承载后期开发测试和其他的一些对内业务.以下对openstack的部署过程及其使用做一详细介绍,仅仅依据本人 ...
- OpenStack实践系列①openstack简介及基础环境部署
OpenStack实践系列①openstack简介及基础环境部署 一.OpenStack初探1.1 OpenStack简介 OpenStack是一整套开源软件项目的综合,它允许企业或服务提供者建立.运 ...
- 完整部署CentOS7.2+OpenStack+kvm 云平台环境(2)--云硬盘等后续配置
继上一篇博客介绍了完整部署CentOS7.2+OpenStack+kvm 云平台环境(1)--基础环境搭建,本篇继续讲述后续部分的内容 1 虚拟机相关1.1 虚拟机位置介绍 openstack上创建的 ...
- 《Linux就该这么学》自学笔记_ch22_使用openstack部署云计算服务环境
<Linux就该这么学>自学笔记_ch22_使用openstackb部署云计算服务环境 文章主要内容: 了解云计算 Openstack项目 服务模块组件详解 安装Openstack软件 使 ...
随机推荐
- js 事件小结
1,事件对象 e || window.event //ie 2, 取鼠标点击坐标 带有滚动条的 var top = document.documentElement.scrollTop | ...
- 【转】cocos2d-x windows开发环境配置
声明:本教程在参考了以下博文,并经过自己的摸索后实际操作得出,本教程系本人原创,由于升级后的cocos2d-x有了一些变化,目前的博文还没有关于Cocos2d-x 2.2.1最新版搭建Android交 ...
- PHP根据经纬度,计算2点之间的距离的2种方法
计算地球表面2点之间的球面距离 /** * @param $lat1 * @param $lng1 * @param $lat2 * @param $lng2 * @return int */ fun ...
- Cows(poj 2481 树状数组)
Cows Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 15301 Accepted: 5095 Description ...
- dreamweaver批量去除空格,空行
制作网店的时候,发现有空行,或者空格.如果数量比较少,可以手动清除.如果多的话,可以使用dreamweaver批量去除.方法如下: 第一步,用正则表达式删除所有空白行(其实这一步不一定要做,我只是为了 ...
- 如何使用Prism框架的EventAggregator在模块间进行通信
目的 本文主要介绍如何使用Prism类库提供的事件机制在松耦合组件之间相互通信,Prism类库的事件机制建立在事件聚合服务之上,允许发布者和订阅者通过事件进行通信,不需要彼此之间引用. 事件聚合 Ev ...
- IE6 js修改img的src属性问题
今天在做项目,有个点击按钮切换图片功能,即修改img的src属性,在IE6下测试,切换图片不显示,右键选择显示图片,可以显示出来,琢磨了很久,最终发现是因为该按钮是a标签导致的, 随后上网查了下,有些 ...
- C++ Primer day 01
1.标准输入与输出 #include<iostream> int main(){ int v1,v2; std::cout<<"Enter two numbers:& ...
- 将vim作为QT开发的IDE
转载请注明链接与作者huihui1988 用了一段时间的vim,喜欢上了这种简洁高效的编辑器.恰逢正在学习QT中,于是将vim变成了开发QT的工具.以下是具体配置. 一.语法高亮支持: 1.打开VIM ...
- Eclipse servlet和jsp编写
servlet: 在你新建的Application myapp/WEB-INF/classes/test目录下新建HelloWorld.java package test; import java.i ...