天天看點

基于OpenStack建構企業私有雲(1)實驗環境準備

請嚴格按照實驗環境執行,如果你是新手,不按環境來,幾乎不會成功,因為OpenStack依賴的元件太多了。

任何一個小錯誤都可能導緻最終無法建立虛拟機。

基于OpenStack建構企業私有雲(1)實驗環境準備

一.基礎軟體包安裝

1.安裝EPEL倉庫

# rpm -ivh [url]http://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm[/url]
           

2.安裝OpenStack倉庫

# yum install -y centos-release-openstack-queens           

3.安裝OpenStack用戶端

# yum install -y python-openstackclient           

4.安裝openstack SELinux管理包

# yum install -y openstack-selinux           

二.MySQL資料庫部署

1.MySQL安裝

[root@linux-node1 ~]# yum install -y mariadb mariadb-server python2-PyMySQL           

2.修改MySQL配置檔案

[root@linux-node1 ~]# vim /etc/my.cnf.d/openstack.cnf
[mysqld]

bind-address = 192.168.56.11 #設定監聽的IP位址

default-storage-engine = innodb  #設定預設的存儲引擎

innodb_file_per_table = on#使用獨享表空間

collation-server = utf8_general_ci #伺服器的預設校對規則

character-set-server = utf8 #伺服器安裝時指定的預設字元集設定

max_connections = 4096 #設定MySQL的最大連接配接數,生産請根據實際情況設定。
           

3.啟動MySQL Server并設定開機啟動

[root@linux-node1 ~]# systemctl enable mariadb.service
[root@linux-node1 ~]# systemctl start mariadb.service           

4.進行資料庫安全設定

[root@linux-node1 ~]# mysql_secure_installation           

5.資料庫建立

[root@linux-node1 ~]# mysql -u root -p
Enter password:
…
MariaDB [(none)]>

Keystone資料庫
CREATE DATABASE keystone;
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'keystone';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'keystone';

Glance資料庫
CREATE DATABASE glance;
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'glance';
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'glance';

Nova資料庫
CREATE DATABASE nova;
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'nova';
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'nova';
CREATE DATABASE nova_api;
GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' IDENTIFIED BY 'nova';
GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' IDENTIFIED BY 'nova';
CREATE DATABASE nova_cell0;
GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'localhost' IDENTIFIED BY 'nova';
GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'%' IDENTIFIED BY 'nova';

Neutron 資料庫
CREATE DATABASE neutron;
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'neutron';
GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY 'neutron';

Cinder資料庫
CREATE DATABASE cinder;
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'cinder';
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'cinder';           

三:消息代理RabbitMQ

1.安裝RabbitMQ

[root@linux-node1 ~]# yum install -y rabbitmq-server

2.設定開啟啟動,并啟動RabbitMQ

[root@linux-node1 ~]# systemctl enable rabbitmq-server.service

[root@linux-node1 ~]# systemctl start rabbitmq-server.service

3.添加openstack使用者。

[root@linux-node1 ~]# rabbitmqctl add_user openstack openstack

Creating user "openstack" ...

4.給剛才建立的openstack使用者,建立權限。

[root@linux-node1 ~]# rabbitmqctl set_permissions openstack "." "." ".*"

Setting permissions for user "openstack" in vhost "/" ...

5.啟用Web監控插件

[root@linux-node1 ~]# rabbitmq-plugins list

[root@linux-node1 ~]# rabbitmq-plugins enable rabbitmq_management