目录
前言
一、安装MariaDB数据库
二、安装 RabbitMQ 消息队列
三、安装 memcached
总结
前言
一、安装MariaDB数据库(controller)
大多数openstack组件使用SQL数据库来存储信息,一般情况下将SQL数据库安装在控制节点(controller),支持MariaDB、 MySQL等。数据库可以安装单独的节点,甚至安装数据库集群。
yum -y install mariadb mariadb-server MySQL-python
vim /etc/my.cnf.d/openstack.cnf
[mysqld]
bind-address = 192.168.122.11
default-storage-engine = innodb
innodb_file_per_table
collation-server = utf8_general_ci
init-connect = 'SET NAMES utf8'
character-set-server = utf8
systemctl start mariadb
systemctl enable mariadb
mysql_secure_installation
#下载MariaDB
yum -y install mariadb mariadb-server MySQL-python
#编辑并创建/etc/my.cnf.d/openstack.cnf
vim /etc/my.cnf.d/openstack.cnf
[mysqld]
#将bind-address的值设为controller的openstack内部管理地址
#这样其他openstack组件就可以通过该地址来访问数据库
bind-address = 192.168.122.11
#启用一些有用的选项和 UTF-8 字符集
default-storage-engine = innodb
innodb_file_per_table
collation-server = utf8_general_ci
init-connect = 'SET NAMES utf8'
character-set-server = utf8
#开启mariadb.service并设为开机自启动
systemctl start mariadb
systemctl enable mariadb
#初始化数据库,并将数据库root密码设为xyz123
mysql_secure_installation
二、安装 RabbitMQ 消息队列(controller)
消息队列rabbitmq的作用: 组件之间相互通讯的工具 异步方式信息同步
openstack使用消息队列来协调各组件间的操作和状态信息,通常部署在控制节点上(controller)。openstack支持 RabbitMQ、Qpid和 ZeroMQ,但是不同的open stack支持不同的消息队列,大多数opensatck都支持RabbitMQ。
yum -y install erlang socat rabbitmq-server
systemctl start rabbitmq-server
systemctl enable rabbitmq-server
rabbitmqctl add_user openstack xyz123
rabbitmqctl set_user_tags openstack administrator
rabbitmqctl set_permissions openstack ".*" ".*" ".*"
#安装rabbitmq-server及其依赖包erlang、socat
yum -y install erlang socat rabbitmq-server
#开启rabbitmq-server并设为开机自启动
systemctl start rabbitmq-server
systemctl enable rabbitmq-server
#在rabbitmq中创建openstack用户,密码为xyz123
rabbitmqctl add_user openstack xyz123
#将用户openstack设为administrator管理员
rabbitmqctl set_user_tags openstack administrator
#给用户openstack对所有资源有配置,读以及写权限
rabbitmqctl set_permissions openstack ".*" ".*" ".*"
三、安装 memcached(controller)
memcache作用: memcached缓存openstack各类服务的验证的token令牌。
openstack的keystone身份认证项目。就会利用Memcached来缓存租户的Token等身份信息,从而在用户登陆验证时无需查询存储在MySQL后端数据库中的用户信息,这在数据库高负荷运行下的大型openstack集群中能够极大地提高用户的身份验证过程,在如web管理界面Horizon和对象存储Swift项目也都会利用Memcached来缓存数据以提高客户端的访问请求响应速率。
yum -y install memcached python-memcached
vim /etc/sysconfig/memcached
OPTIONS="-l 127.0.0.1,::1,controller"
systemctl restart memcached
systemctl enable memcached
#安装memcached
yum -y install memcached python-memcached
修改配置文件
vim /etc/sysconfig/memcached
#127.0.0.1代表本机可连接,::1代表ipv6的127.0.0.1
#controller代表绑定的192.168.122.11,其他组件可以通过192.168.122.11来访问memcached
OPTIONS="-l 127.0.0.1,::1,controller"
#重启memcached使配置文件生效并设为开机自启动
systemctl restart memcached
systemctl enable memcached
总结
三大基础服务配置完成