Enviroment

本文包含以下部分。

  • Host networking
  • Network Time Protocol (NTP)
  • OpenStack packages
  • SQL database
  • NoSQL database
  • Message queue
  • Memcached

Host Networking

首先,应该disable 自动化的网络管理工具如 Network Manager (无论是controller还是compute节点).

systemctl stop NetworkManager
systemctl disable NetworkManager

其次,关掉iptables 和 selinux, firewalld(无论是controller还是compute节点)

# disable selinux
setenforce 0
# edit the /etc/selinux/config set SELINUX=disabled # turn off firewalld
systemctl disable firewalld
systemctl stop firewalld # iptables 默认不安装,所以不用disable

接下来配置controller 节点 和 compute节点,我们的机器都有至少两块网卡,一块网卡配置外界可访问的IP,用作节点管理的用途,这个网络(叫做management network)将来也会用作openstack vm之间vxlan 访问的tunnel。 另一块网卡留在后面用。

本例中,我们的management network配置如下:

# controller node
10.79.148.84/24
# compute01
10.79.148.83/24
# compute02
10.79.148.86/24
# gateway
10.79.148.1
# DNS
64.104.123.245

另一块网卡的配置,统一如下(interface_name的名字根据实际情况填写):

DEVICE=INTERFACE_NAME
TYPE=Ethernet
ONBOOT="yes"
BOOTPROTO="none"

配置完ip,gateway,DNS还要配置各个机器的hosts文件,保证各个机器之间能够互相访问,并且每个机器都能够访问互联网。

NTP

如果你的机器不能方便访问外网NTP。那么你可以安装Chrony。这是一个用于实现NTP的软件。如果能够访问外网NTP,那么直接指定一个crontab 去定时跟NTP同步即可。如:

yum install ntpdate
# 编辑crontabe

openstack package

在centos上安装openstack mikita的源

yum install centos-release-openstack-mitaka

然后运行

yum upgrade

安装openstack client

yum install python-openstackclient

SQL database

安装mysql。当然你也可以用其它的sql 数据库。数据库安装的位置不重要,只要需要使用它的服务能够访问到即可,我们这里把数据库安装到controller节点。

yum install mariadb mariadb-server python2-PyMySQL

编辑 /etc/my.cnf.d/openstack.cnf的[mysqld]设置数据库监听地址

bind-address = 10.79.148.84

编辑 /etc/my.cnf.d/openstack.cnf的[mysqld]设置字符集等配置

default-storage-engine = innodb
innodb_file_per_table
collation-server = utf8_general_ci
character-set-server = utf8

启动并设置mysql开机启动

systemctl start mariadb.service
systemctl enable mariadb.service

运行 mysql_secure_installation 做安全配置

NoSQL database

Telemetry service 使用nosql。我们推荐用mongodb。这里不做介绍,因为我们不打算在本文中使用Telemetry service。

Message queue

openstack使用message queue在各服务间通信。我们这里使用rabbit mq. 并且我们把rabbit mq安装到controller上。但是和sql数据库一样,你可以安装在任何地方,只要相关的服务能够访问它即可。步骤如下:

安装

yum install rabbitmq-server

启动,并设置开机启动

# systemctl enable rabbitmq-server.service
# systemctl start rabbitmq-server.service

创建用户并赋予密码

rabbitmqctl add_user openstack RABBIT_PASS

给openstack用户设置权限

rabbitmqctl set_permissions openstack ".*" ".*" ".*"

Memcache

keystone 服务使用了memcache来缓存token。所以我们这里还要安装memcache。同样,我们把他安装在controller节点,但其实任意位置都可以。

yum install memcached python-memcached

启动并设置开机启动

systemctl enable memcached.service
systemctl start memcached.service

openstack setup demo Enviroment的更多相关文章

  1. openstack setup demo Identity service

    openstack Identity service 名叫keystone.它提供了用户校验,以及服务目录查询(即列出所有的服务以及相关信息)等功能. keystone 主要包含以下几个部分 Serv ...

  2. openstack setup demo Compute service

    本文包含以下部分 Compute service overview Install and configure controller node Prerequisites Install and co ...

  3. openstack setup demo Image service

    Image service (glance)是openstack中管理vm image的service.本文包含以下内容: overview install overview glance包含以下部分 ...

  4. openstack setup demo Overview

    Overview openstack是一套开源的云计算部署平台,通过一系列service提供IAAS.每一个service都提供API.具体的service列表如下: dashboard Horizo ...

  5. openstack setup demo 前言

    我们搭建一套三节点的openstanck集群.一个controller节点,两个compute节点.操作系统采用Centos7,操作系统版本信息如下. [root@controller01 ~]# c ...

  6. openstack安装配置

    openstack:1.控制节点安装所有,计算节点只有nova-compute:2.网络选择: nova-network还是neutron: nova-network比较简单, neutron功能强大 ...

  7. Open Daylight integration with OpenStack: a tutorial

    Open Daylight integration with OpenStack: a tutorial How to deploy OpenDaylight and integrate it wit ...

  8. [转] Customizing OpenStack RBAC policies

    http://www.florentflament.com/blog/customizing-openstack-rbac-policies.html OpenStack uses a role ba ...

  9. OpenStack入门之【OpenStack-havana】之单网卡-All In One 安装(基于CentOS6.4)

    这篇文章是自己的一篇老文,分享下,请君慢用.... =========================================== [特别申明]:经过了一段时间的不断学习加不断的测试得出本文, ...

随机推荐

  1. spring-mvc hello world (1)

    我学习一个程序,都是从DEMO开始的. 先不了解SPRING-MVC的原理,但一些小的概念还是需要了解的.由于之前有过SSH的工程经验,故基本的东东,不在叙述. 1.准备环境 JAR包:

  2. IMX6核心板系列解决方案-工业级|商业级|四核|双核|Plus核心板

    i.MX 6Quad四核商业级和工业级系列的应用处理器将可扩展平台与广泛的集成和高能效处理功能相结合,尤其适合多媒体应用.i.MX6 Quad处理器的特性包括: 满足操作系统和游戏的MIPS需求,增强 ...

  3. Laravel Mix编译前端资源

    目前项目是使用的vue+laravel来写的,其中laravel和vue分别放了一个目录,但是这样有个问题,那就是vue需要经常更新,不然运行项目会经常出现各种问题,这里就看了看laravel的文档, ...

  4. Java Servlet 非英文乱码

    response.setHeader("Content-Type", "text/json; charset=UTF-8"); request.setChara ...

  5. 给SVN控制的项目添加忽略文件/文件夹

    忽略目录其实有些像建立一个文件夹,但却不放入版本控制.如果不加入版本控制又会在svn status命令中显示出来,很不方便,所以可以设置本文件夹属性,让它既加入版本控制,又忽略其变化 未加入控制的文件 ...

  6. 启动myeclipse弹窗Please allow Subclipse team to receive anonymous usage statistics for this Eclipse intance

    Please allow Subclipse team to receive anonymous usage statistics for this Eclipse intance(翻译:请允许Sub ...

  7. python selenium定位总结(转)

    转自:http://www.cnblogs.com/yufeihlf/p/5717291.html 父子定位元素 查找有父亲元素的标签名为span,它的所有标签名叫input的子元素 find_ele ...

  8. viewDidLoad等相关函数调用

    viewDidLoad 此方法只有当view从nib文件初始化的时候才被调用.viewDidLoad用于初始化,加载时用到的. loadView 此方法在控制器的view为nil的时候被调用.虽然经常 ...

  9. 关于统一代码规范ResultBean<T>

    之前看了一篇文章,是java团长的一篇代码规范的文章,很有启发.统一返回格式确实给开发带来方便和美感, 有时候Colltroller返回String或者什么Map,list什么的,虽然都转成json返 ...

  10. Layui表格之动态添加数据(表格多选解决方案)

    前言: Layui已经给出了多选记录的解决方案,是在每条数据的前面加上CheckBox,每次选择都有监听.效果是这样: 实现监听的代码如下,这是一种解决选择多条数据的方案: table.on('edi ...