不少OpenStack服务使用一个SQL数据库来存储信息。数据库一般运行在controller节点。下面安装步骤进行MariaDB数据库来用Openstack服务提供信息存储。OpenStack服务也支持其它SQL数据库,包括PostgreSQL。html
1.安装软件包:python
yum install mariadb mariadb-server python2-PyMySQL
2.建立和编辑/etc/my.cnf.d/openstack.cnf文件,完成如下步骤mysql
l在[mysqld]部分,将bind-address设置为controller节点的管理IP地址sql
[mysqld]mongodb
…….数据库
Bind-address=controllerapache
l在[mysqld]部分,添加下面配置缓存
[mysqld]
...
default-storage-engine = innodb
innodb_file_per_table
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
1.启动数据库并设置开机自启动ide
systemctl enable mariadb.service
systemctl start mariadb.service
2.经过运行mysql_secure_installation脚原本安装数据库服务,在此过程当中须要为root帐号设置密码memcached
mysql_secure_installation
Telemetry服务用一个NoSQL数据库来存储信息。数据库一般运行在controller节点。下面步骤是安装MongoDB。
备注:当Telemetry服务安装时NoSQL数据库服务才是必须要装的。
1.安装MongoDB软件包
yum install mongodb-server mongodb
2.编辑/etc/mongod.conf文件,并完成下面步骤
l将bind_ip配置为控制节点的管理接口的IP地址
bind_ip = controller
l默认状况下MongoDB会在/var/lib/mongodb/journal文件夹建立几个1GB的日志文件。若是想将每一个日志文件减到128MB,想将全部的日志空间限制到512MB,设置smallfiles:
smallfiles = true
你也能够将日志关掉,获取更多信息查看MongoDB manual.
启动MongDB服务并设置为开机自启动。
systemctl enable mongod.service
systemctl start mongod.service
OpenStack用一个message queue来协调各个服务以前的操做和状态信息。消息队列服务一般运行在controller节点。OpenStack支持几种消息队列服务,包括RabbitMQ, Qpid, 和 ZeroMQ。然而,大多数分布包的OpenStack支持一个特定的消息队列服务。因为大多数分布部署支持RabbitMQ因此下面步骤安装的是RabbitMQ。若是你喜欢部署其它的消息队列服务,查阅相关文件来安装。
1.安装软件包
yum install rabbitmq-server
2.启动消息队列服务并设置开机自启动
systemctl enable rabbitmq-server.service
systemctl start rabbitmq-server.service
3.添加openstack用户
rabbitmqctl add_user openstack RABBIT_PASS
Creating user "openstack" ...
...done.
将RABBIT_PASS替换成合适的密码
4.修改权限,容许openstack用户有读写权
rabbitmqctl set_permissions openstack ".*" ".*" ".*"
Setting permissions for user "openstack" in vhost "/" ...
...done.
为服务提供认证机制的Identity服务使用memcached来缓存令牌。Memcached服务一般运行在controller节点。在生产环境上部署,建议使用结防火墙,认证和加密来保护它。
安装软件包
yum install memcached python-memcached
启动Memcached服务并设置开机自启动
systemctl enable memcached.service
systemctl start memcached.service