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. oracle 时间格式转化以及计算

    --A表中的日期字段 create_date   例如:2017-08-05  转化为2017年8月5日   oracle 在这里的双引号会忽略 select to_char(to_date(tt.c ...

  2. 内存管理总结-autoreleasePool

    转自其他 序言 无论是在MRC时期还是ARC时期,做过开发的程序员都接触过autoreleasepool.尽管接触过但本人对它还不是很了解.本文只是将自己的理解说出来.在内存管理的文章中提到了OC的内 ...

  3. angular2快速开始

    简介 5 分钟从0搭建一个ng2项目demohttps://angular.io/docs/js/latest/quickstart.html 你运气真好,竟然看到了这篇文章,你省事了,一分钟让你完成 ...

  4. C++学习之继承篇

    今天通过对实验二继承,重载,覆盖的学习,让我更深一步理解了这些概念的区别. 首先来明确一个概念,函数名即地址,也就是说函数名就是个指针. 编译阶段,编译器为每个函数的代码分配一个地址空间并编译函数代码 ...

  5. Linux之基础命令——文件操作

    ls(显示指定工作目录下的内容) -a 显示所有文件及目录 包括隐藏文件 -l 除文件名称外,还会将文件类型.权限.拥有者.文件大小等信息详细列出[可以ll简写] -r 将文件以相反次序显示(默认是a ...

  6. CREATE GROUP - 定义一个新的用户组

    SYNOPSIS CREATE GROUP name [ [ WITH ] option [ ... ] ] where option can be: SYSID gid | USER usernam ...

  7. 进程的互斥运行:CreateMutex函数实现只运行一个程序实例

    HANDLE hMutex=CreateMutex(NULL,TRUE,"HDZBUkeyDoctorTool"); if(hMutex) { if(ERROR_ALREADY_E ...

  8. WebDriver的多浏览器测试的浏览器驱动程序

    1.在使用IE浏览器进行WebDriver自动化测试之前,需要从http://docs.seleniumhq.org/download/网站上下载一个WebDriver链接IE浏览器的驱动程序,文件名 ...

  9. JAVA基础——数据流

    DataInputStream 类和DataOutputStream 类 在前面的学习中,我们知道数据流处理的数据都是指字节或字节数组,但实际上很多时候不是这样的,它需要数据流能直接读.写各种各样的j ...

  10. Spring对象类型——单例和多例

    由于看淘淘商城的项目,涉及到了项目中处理spring中bean对象的两种类型,分别是单例和多例,就在此记录一下,方便加深理解,写出更加健壮的代码. 一.单例和多例的概述 在Spring中,bean可以 ...