Skip to the content.

Cài đặt Openstack Nova.

Các thành phần của Openstack Compute (Nova):

queue

Một trung tâm để truyền tin nhắn giữa các daemon. Thường là RabbitMQ.

SQL database

Lưu trữ trạng thái built-time, run-time của hệ thống.

Mô hình cài đặt

Hình ảnh mô hình cài đặt

Cài đặt Openstack Nova trên Controller

Chuẩn bị

  1. Tạo database. ``` mysql -uroot -pSQLROOTPASS « EOF CREATE DATABASE nova_api; CREATE DATABASE nova; CREATE DATABASE nova_cell0;

GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova’@’localhost’
IDENTIFIED BY ‘NOVA_DBPASS’; GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova’@’%’
IDENTIFIED BY ‘NOVA_DBPASS’; GRANT ALL PRIVILEGES ON nova.* TO ‘nova’@’localhost’
IDENTIFIED BY ‘NOVA_DBPASS’; GRANT ALL PRIVILEGES ON nova.* TO ‘nova’@’%’
IDENTIFIED BY ‘NOVA_DBPASS’; GRANT ALL PRIVILEGES ON nova_cell0.* TO ‘nova’@’localhost’
IDENTIFIED BY ‘NOVA_DBPASS’; GRANT ALL PRIVILEGES ON nova_cell0.* TO ‘nova’@’%’
IDENTIFIED BY ‘NOVA_DBPASS’; EOF


2. Tạo tài khoản và dịch vụ cho nova.

. admin-openrc openstack user create –domain default –password=NOVA_PASS nova openstack role add –project service –user nova admin openstack service create –name nova
–description “OpenStack Compute” compute openstack endpoint create –region RegionOne
compute public http://192.168.30.171:8774/v2.1 openstack endpoint create –region RegionOne
compute internal http://192.168.30.171:8774/v2.1 openstack endpoint create –region RegionOne
compute admin http://192.168.30.171:8774/v2.1



### Cài đặt và cấu hình các thành phần
1. Cài đặt gói:

yum install openstack-nova-api openstack-nova-conductor
openstack-nova-novncproxy openstack-nova-scheduler

2. Backup và chỉnh sửa file cấu hình **/etc/nova/nova.conf** \

mv /etc/nova/nova.conf /etc/nova/nova.conf.orig cat « EOF > /etc/nova/nova.conf [DEFAULT] enabled_apis = osapi_compute,metadata transport_url = rabbit://openstack:RABBIT_PASS@192.168.30.171:5672/ my_ip = 192.168.30.171 use_neutron = true firewall_driver = nova.virt.firewall.NoopFirewallDriver

[api_database] connection = mysql+pymysql://nova:NOVA_DBPASS@192.168.30.171/nova_api

[database] connection = mysql+pymysql://nova:NOVA_DBPASS@192.168.30.171/nova

[api] auth_strategy = keystone

[keystone_authtoken] www_authenticate_uri = http://192.168.30.171:5000/ auth_url = http://192.168.30.171:5000/ memcached_servers = 192.168.30.171:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service username = nova password = NOVA_PASS

[vnc] enabled = true server_listen = $my_ip server_proxyclient_address = $my_ip

[glance] api_servers = http://192.168.30.171:9292

[oslo_concurrency] lock_path = /var/lib/nova/tmp

[placement] region_name = RegionOne project_domain_name = Default project_name = service auth_type = password user_domain_name = Default auth_url = http://192.168.30.171:5000/v3 username = placement password = PLACEMENT_PASS EOF

3. Đồng bộ database: 

su -s /bin/sh -c “nova-manage api_db sync” nova

su -s /bin/sh -c “nova-manage cell_v2 map_cell0” nova

su -s /bin/sh -c “nova-manage cell_v2 create_cell –name=cell1 –verbose” nova

su -s /bin/sh -c “nova-manage db sync” nova

su -s /bin/sh -c “nova-manage cell_v2 list_cells” nova


### Hoàn tất cài đặt
Khởi động các dịch vụ:

systemctl enable
openstack-nova-api.service
openstack-nova-scheduler.service
openstack-nova-conductor.service
openstack-nova-novncproxy.service systemctl start
openstack-nova-api.service
openstack-nova-scheduler.service
openstack-nova-conductor.service
openstack-nova-novncproxy.service


## Cài đặt Openstack Nova trên Compute
### Cài đặt và cấu hình các thành phần
1. Cài đặt gói cần thiết

yum install -y openstack-nova-compute

2. Backup và chỉnh sửa file cấu hình **/etc/nova/nova.conf**:

mv /etc/nova/nova.conf /etc/nova/nova.conf.orig cat « ‘EOF’ >/etc/nova/nova.conf [DEFAULT] enabled_apis = osapi_compute,metadata transport_url = rabbit://openstack:RABBIT_PASS@controller:5672 my_ip = 192.168.30.172 use_neutron = true firewall_driver = nova.virt.firewall.NoopFirewallDriver

[api] auth_strategy = keystone

[keystone_authtoken] www_authenticate_uri = http://192.168.30.171:5000/ auth_url = http://192.168.30.171:5000/ memcached_servers = 192.168.30.171:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service username = nova password = NOVA_PASS

[vnc] enabled = true server_listen = 0.0.0.0 server_proxyclient_address = $my_ip novncproxy_base_url = http://192.168.30.171:6080/vnc_auto.html

[glance] api_servers = http://192.168.30.171:9292

[oslo_concurrency] lock_path = /var/lib/nova/tmp

[placement] region_name = RegionOne project_domain_name = Default project_name = service auth_type = password user_domain_name = Default auth_url = http://192.168.30.171:5000/v3 username = placement password = PLACEMENT_PASS

EOF


### Hoàn tất cài đặt
1. Kiểm tra phần cứng hỗ trợ
- Chạy lệnh sau để kiểm tra:

egrep -c ‘(vmx|svm)’ /proc/cpuinfo

Nếu kết quả trả về 1 hoặc lớn hơn thì Compute node hỗ trợ phần cứng phù hợp để chạy và không cần phải cấu hình thêm.


2. Khởi động dịch vụ Compute:

systemctl enable libvirtd.service openstack-nova-compute.service systemctl start libvirtd.service openstack-nova-compute.service


3. Cấu hình firewalld trên compute node

firewall-cmd –add-port={8773-8775/tcp,6080-6082/tcp} –permanent firewall-cmd –reload


4. Cấu hình firewalld trên các compute:

firewall-cmd –add-port=5900-5999/tcp –permanent firewall-cmd –reload ```