说明: linux-node1 控制节点
linux-node2 计算节点
2.1.两台centos7服务器
主机名:
[root@linux-node1 ~]# hostname
linux-node1
[root@linux-node2 ~]# hostname
linux-node2
IP:
linux-node1 192.168.56.11/24
linux-node2 192.168.56.12/24
host解析
cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.56.11 linux-node1 linux-node1.oldboyedu.com
192.168.56.12 linux-node2 linux-node2.oldboyedu.com
2.2 selinux 和防火墙关闭
[root@linux-node2 ~]# getenforce
Disabled
[root@linux-node1 ~]# getenforce
Disabled
#可以用sed
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config
防火墙:
systemctl stop firewalld
systemctl disable firewalld
2.3 配置时间同步(两台都做)
yum –y install chrony
grep"allow" /etc/chrony.conf #打开
allow192.168/16
systemctl enable chronyd.service #设置开机自启
systemctl start chronyd.service #启动
timedatectl set-timezone Asia/Shanghai #同步时区
2.4 在linux-node1 上安装数据库
yum install -y mariadb mariadb-serverMySQl-python #安装数据库
\cp /usr/share/mysql/my-medium.cnf /etc/my.cnf #拷贝配置文件
在vi /etc/my.cnf 添加如下几行
[mysqld]
default-storage-engine = innodb #默认的存储引擎
innodb_file_per_table #使用独享的表空间
collation-server = utf8_general_ci #设置校对规则
init-connect = 'SET NAMES utf8' #设置链接的字符集
character-set-server = utf8 #设置默认的字符集
systemctl enable mariadb.service #开机启动数据库
systemctl start mariadb.service #立马启动数据库
2.5 初始化数据库
2.6 为各个组件创建数据库并收授权
2.6.1 keystone
MariaDB[(none)]> create database keystone;
Query OK,1 row affected (0.01 sec)
MariaDB[(none)]> grant all on keystone.* to 'keystone'@'localhost' identified by'keystonne';
Query OK,0 rows affected (0.00 sec)
MariaDB[(none)]> grant all on keystone.* to 'keystone'@'%' identified by'keystone';
Query OK, 0 rows affected (0.00 sec)
2.6.2 glance
MariaDB[(none)]> create database glance;
Query OK,1 row affected (0.00 sec)
MariaDB[(none)]> grant all on glance.* to 'glance'@'%' identified by 'glance';
Query OK,0 rows affected (0.00 sec)
MariaDB[(none)]> grant all on glance.* to 'glance'@'localhost' identified by'glance';
2.6.3 nova和nova_api
MariaDB[(none)]> create database nova;
Query OK,1 row affected (0.00 sec)
MariaDB[(none)]> grant all on nova.* to 'nova'@'%' identified by 'nova';
Query OK,0 rows affected (0.00 sec)
MariaDB[(none)]> grant all on nova.* to 'nova'@'localhost' identified by 'nova';
Query OK,0 rows affected (0.00 sec)
MariaDB[(none)]> create database nova_api;
Query OK,1 row affected (0.00 sec)
MariaDB[(none)]> grant all on nova_api.* to 'nova'@'localhost' identified by'nova';
Query OK,0 rows affected (0.00 sec)
MariaDB[(none)]> grant all on nova_api.* to 'nova'@'%' identified by 'nova';
2.6.4 neutron
MariaDB[(none)]> create database neutron;
Query OK,1 row affected (0.00 sec)
MariaDB[(none)]> grant all on neutron.* to 'neutron'@'%' identified by 'neutron';
Query OK,0 rows affected (0.00 sec)
MariaDB[(none)]> grant all on neutron.* to 'neutron'@'localhost' identified by'neutron';;
Query OK,0 rows affected (0.00 sec)
MariaDB[(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
2.6.5 检验数据库
MariaDB[(none)]> show databases;
+--------------------+
|Database |
+--------------------+
|information_schema |
|glance |
|keystone |
|mysql |
|neutron |
|nova |
| nova_api |
|performance_schema |
+--------------------+
8 rows inset (0.00 sec)
MariaDB[(none)]>
2.7 安装消息队列(rabbitmq)
2.7.1 基本安装
yuminstall rabbitmq-server -y
systemctl enable rabbitmq-server.service
systemctl start rabbitmq-server.service
[root@linux-node1~]# rabbitmqctl add_user openstack openstack #创建消息队列认证用户
Creatinguser "openstack" ...
...done.
[root@linux-node1~]#
#创建的用户得授权才能使用
[root@linux-node1~]# rabbitmqctl set_permissions openstack ".*" ".*"".*" #授权用户才能使用
Settingpermissions for user "openstack" in vhost "/" ...
...done.
2.7.2 web界面安装
查看组件
[root@linux-node1~]# rabbitmq-plugins list
[ ]amqp_client 3.3.5
[ ]cowboy 0.5.0-rmq3.3.5-git4b93c2d
[ ]eldap 3.3.5-gite309de4
[ ]mochiweb 2.7.0-rmq3.3.5-git680dba8
[ ]rabbitmq_amqp1_0 3.3.5
[ ]rabbitmq_auth_backend_ldap 3.3.5
[ ]rabbitmq_auth_mechanism_ssl 3.3.5
[ ]rabbitmq_consistent_hash_exchange 3.3.5
[ ]rabbitmq_federation 3.3.5
[ ]rabbitmq_federation_management 3.3.5
[ ]rabbitmq_management 3.3.5
[ ]rabbitmq_management_agent 3.3.5
[ ]rabbitmq_management_visualiser 3.3.5
[ ]rabbitmq_mqtt 3.3.5
[ ]rabbitmq_shovel 3.3.5
[ ]rabbitmq_shovel_management 3.3.5
[ ]rabbitmq_stomp 3.3.5
[ ]rabbitmq_test 3.3.5
[ ]rabbitmq_tracing 3.3.5
[ ]rabbitmq_web_dispatch 3.3.5
[ ]rabbitmq_web_stomp 3.3.5
[ ]rabbitmq_web_stomp_examples 3.3.5
[ ]sockjs 0.3.4-rmq3.3.5-git3132eb9
[ ]webmachine 1.10.3-rmq3.3.5-gite9359c7
加载组件
rabbitmq-plugins enable rabbitmq_management
systemctlrestart rabbitmq-server.service #重启消息队列
说明
rabbitmq监听的是5672
rabbitmq的管理界面监听的是15672
2.7.3 访问测试
默认是用户guest 密码是guest
让openstack用户拥有admistrator的权限进行登录