openstack笔记 3

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: openstack笔记

四、安装placement服务(controller执行)                    

 


1、创建placement数据库

[root@controller ~]# mysql -u root -p

Enter password:

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MariaDB connection id is 25

Server version: 10.3.20-MariaDB MariaDB Server

 

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

 

MariaDB [(none)]> CREATE DATABASE placement;

Query OK, 1 row affected (0.000 sec)

 

MariaDB [(none)]> GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'localhost' IDENTIFIED BY '000000';

Query OK, 0 rows affected (0.000 sec)

 

MariaDB [(none)]> GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'%' IDENTIFIED BY '000000';

Query OK, 0 rows affected (0.001 sec)

 


2、获admin凭证

[root@controller ~]# source admin-openrc

 


3创建placement服务用户

# 创建一个名为placement的用户
[root@controller ~]# openstack user create --domain default --password-prompt placement
User Password:
Repeat User Password:
+---------------------+----------------------------------+
|
+---------------------+----------------------------------+
| domain_id           | default                           |
| enabled             | True                              |
| id                   | 177aa1815f7746e0a1e1f534b249c30b |
| name                | placement                         |
| options             | {}                                |
| password_expires_at | None                              |
+---------------------+----------------------------------+
# 将placement用户添加到具有admin角色的服务项目
[root@controller ~]# openstack role add --project service --user placement admin


4、创建placementAPI条目


 

[root@controller ~]# openstack service create --name placement   --description

"Placement API" placement

+-------------+----------------------------------+

| Field       | Value                             |

+-------------+----------------------------------+

| description | Placement API

| enabled     | True

| id          | 243815997a0a4500a904ec2d39b5a346

| name        | placement

| type        | placement

|

|

|

|

|

+-------------+----------------------------------+

 


5、创建placement服务端点

[root@controller ~]# openstack endpoint create --region RegionOne placement public http://controller:8778
+--------------+----------------------------------+
| Field        | Value                             |
+--------------+----------------------------------+
| enabled      | True                              |
| id           | 9bfb9b75aaf746bdacb72d94c5378939 |
| interface    | public                            |
| region       | RegionOne                         |
| region_id    | RegionOne                         |
| service_id   | 243815997a0a4500a904ec2d39b5a346 |
| service_name | placement                         |
| service_type | placement                         |
| url          | http://controller:8778           |
+--------------+----------------------------------+
[root@controller ~]#  openstack endpoint create --region RegionOne placement internal http://controller:8778
+--------------+----------------------------------+
| Field        | Value                             |
+--------------+----------------------------------+
|
|
|
|
|
|
| service_name | placement
| service_type | placement
| url          | http://controller:8778
+--------------+----------------------------------+
[root@controller ~]# openstack endpoint create --region RegionOne placement admin http://controller:8778
+--------------+----------------------------------+
| Field        | Value                             |
+--------------+----------------------------------+
|
|
|
|
|
|
|
|
|
+--------------+----------------------------------+

6安装placement服务

[root@controller ~]# yum install openstack-placement-api -y


7、修改placement配置文

编辑/etc/placement/placement.conf文件,并完成以下操作:

   [placement_database]本节中,配置数据库访问:

 

[placement_database]

connection = mysql+pymysql://placement:000000@controller/placement

 

# 使用下面的命令可直接修

openstack-config --set /etc/placement/placement.conf placement_database connection mysql+pymysql://placement:000000@controller/placement

  [api] [keystone_authtoken]部分,配置身份服务访问:

[api]
auth_strategy = keystone
[keystone_authtoken]
auth_url = http://controller:5000/v3 memcached_servers = controller:11211 auth_type = password                project_domain_name = Default       user_domain_name = Default          project_name = service
username = placement
password = 000000
# 使用下面的命令可直接修改
openstack-config --set /etc/placement/placement.conf api auth_strategy keystone openstack-config --set /etc/placement/placement.conf keystone_authtoken auth_url
http://controller:5000/v3
openstack-config --set /etc/placement/placement.conf keystone_authtoken memcached_servers controller:11211
openstack-config --set /etc/placement/placement.conf keystone_authtoken auth_type password
openstack-config --set /etc/placement/placement.conf keystone_authtoken project_domain_name Default
openstack-config --set /etc/placement/placement.conf keystone_authtoken user_domain_name Default
openstack-config --set /etc/placement/placement.conf keystone_authtoken project_name service
openstack-config --set /etc/placement/placement.conf keystone_authtoken username placement
openstack-config --set /etc/placement/placement.conf keystone_authtoken password
000000

8同步placement数据库


[root@controller ~]# su -s /bin/sh -c "placement-manage db sync" placement

# 忽略此命令输出的任何启用消息

 

9启动http服务


[root@controller ~]# systemctl restart httpd

五、安装nova服务                                                            

( 1-12)在controller执行

 


1、创建nova数据库

[root@controller ~]# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 14
Server version: 10.3.20-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> CREATE DATABASE nova_api;
Query OK, 1 row affected (0.001 sec)
MariaDB [(none)]> CREATE DATABASE nova;
Query OK, 1 row affected (0.000 sec)
MariaDB [(none)]> CREATE DATABASE nova_cell0;
Query OK, 1 row affected (0.000 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON IDENTIFIED BY '000000';
Query OK, 0 rows affected (0.001 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON '000000';
Query OK, 0 rows affected (0.000 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON IDENTIFIED BY '000000';
Query OK, 0 rows affected (0.000 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON '000000';
Query OK, 0 rows affected (0.001 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON IDENTIFIED BY '000000';
Query OK, 0 rows affected (0.000 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON BY '000000';
Query OK, 0 rows affected (0.001 sec)

 


2、获admin凭证

[root@controller ~]# source admin-openrc

 


3、创建nova

[root@controller ~]# openstack user create --domain default --password-prompt nova
User Password:
Repeat User Password:
+---------------------+----------------------------------+
| Field               | Value                             |
+---------------------+----------------------------------+
| domain_id           | default                           |
| enabled             | True                              |
| id                   | 52839842e36545a990a2592b086eaf7a |
| name                | nova                              |
| options             | {}                                |
| password_expires_at | None                              |
+---------------------+----------------------------------+
# 为nova用户添加admin角色权限
[root@controller ~]# openstack role add --project service --user nova admin
# 创建nova服务实体
[root@controller ~]# openstack service create --name nova   --description
"OpenStack Compute" compute
+-------------+----------------------------------+
| Field       | Value                             |
+-------------+----------------------------------+
| description | OpenStack Compute                |
| enabled     | True                              |
| id          | 44d6d5f37d5b48e3ac1c276d0c0ffe78 |
| name        | nova                              |
| type        | compute                           |
+-------------+----------------------------------+

4、配置computeAPI服务端点


 

[root@controller ~]# openstack endpoint create --region RegionOne compute public http://controller:8774/v2.1

+--------------+----------------------------------+

| Field        | Value                             |

+--------------+----------------------------------+

| enabled      | True                              |

| id           | 543f7db42c514401a4b072a495dab6ef |

| interface    | public                            |

| region       | RegionOne                         |

| region_id    | RegionOne                         |

| service_id   | 44d6d5f37d5b48e3ac1c276d0c0ffe78 |

| service_name | nova                              |

| service_type | compute                           |

| url          | http://controller:8774/v2.1      |

+--------------+----------------------------------+

[root@controller ~]# openstack endpoint create --region RegionOne compute internal http://controller:8774/v2.1

+--------------+----------------------------------+

| Field        | Value                             |

+--------------+----------------------------------+

| enabled      | True                              |

| id           | ff42a2c6f9934983846173bddd485e27 |

| interface    | internal                          |

| region       | RegionOne                         |

| region_id    | RegionOne                         |

| service_id   | 44d6d5f37d5b48e3ac1c276d0c0ffe78 |

| service_name | nova                              |

| service_type | compute                           |

| url          | http://controller:8774/v2.1      |

+--------------+----------------------------------+

[root@controller ~]# openstack endpoint create --region RegionOne compute admin http://controller:8774/v2.1

+--------------+----------------------------------+

| Field        | Value                             |

+--------------+----------------------------------+

| enabled      | True                              |

| id           | 6f8ac70bcb40407e9d184091399772f5 |

| interface    | admin                             |

| region       | RegionOne                         |

| region_id    | RegionOne                         |

| service_id   | 44d6d5f37d5b48e3ac1c276d0c0ffe78 |

| service_name | nova                              |

| service_type | compute                           |

| url          | http://controller:8774/v2.1      |

+--------------+----------------------------------+

 


5、安装nova和相关服务

[root@controller ~]# yum install openstack-nova-api openstack-nova-conductor openstack-nova-novncproxy openstack-nova-scheduler -y

 


6、修改nova配置文件

编辑/etc/nova/nova.conf文件,并完成以下操作

  [DEFAULT]部分,只启用计算和元数据api:


 

[DEFAULT]

enabled_apis = osapi_compute,metadata

 

# 使用下面的命令可直接修

openstack-config --set /etc/nova/nova.conf DEFAULT enabled_apis

osapi_compute,metadata

  [api_database] [database]部分,配置数据库访问:

 

[api_database]

connection = mysql+pymysql://nova:000000@controller/nova_api

 

[database]

connection = mysql+pymysql://nova:000000@controller/nova

 

# 使用下面的命令可直接修

openstack-config --set /etc/nova/nova.conf api_database connection mysql+pymysql://nova:000000@controller/nova_api

openstack-config --set /etc/nova/nova.conf database connection

mysql+pymysql://nova:000000@controller/nova

 在 [DEFAULT]部分,配置RabbitMQ消息队列访问:

 

[DEFAULT]

transport_url = rabbit://openstack:000000@controller:5672/

 

# 使用下面的命令可直接修

openstack-config --set /etc/nova/nova.conf DEFAULT transport_url

rabbit://openstack:000000@controller:5672/

 在 [api] [keystone_authtoken]部分中,配置身份服务访问:

[api]
auth_strategy = keystone
[keystone_authtoken]
www_authenticate_uri = http://controller:5000/
auth_url = http://controller:5000/
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = nova
password = 000000
# 使用下面的命令可直接修改
openstack-config --set /etc/nova/nova.conf api auth_strategy keystone openstack-config --set /etc/nova/nova.conf keystone_authtoken
www_authenticate_uri http://controller:5000/
openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_url http://controller:5000/
openstack-config --set /etc/nova/nova.conf keystone_authtoken memcached_servers controller:11211
openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_type password openstack-config --set /etc/nova/nova.conf keystone_authtoken
project_domain_name Default
user_domain_name
project_name
openstack-config --set /etc/nova/nova.conf keystone_authtoken username nova  openstack-config --set /etc/nova/nova.conf keystone_authtoken password 000000

[DEFAULT]部分,配置my_ip选项,使用控制节点的管理接口IP地址:

 

[DEFAULT]

my_ip = 192.168.75,20

 

# 使用下面的命令可直接修

openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 192.168.75.20

   [DEFAULT]部分,启用对网络服务的支持:

 

[DEFAULT]

use_neutron = true

firewall_driver = nova.virt.firewall.NoopFirewallDriver

 

# 使用下面的命令可直接修

openstack-config --set /etc/nova/nova.conf DEFAULT use_neutron true openstack-config --set /etc/nova/nova.conf DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver

 在 [vnc] 中配置vnc代理使用控制节点的管理接口IP地址


 

[vnc]

enabled = true

server_listen = 0.0.0.0

server_proxyclient_address = 192.168.75.20

 

# 使用下面的命令可直接修

openstack-config --set /etc/nova/nova.conf vnc enabled true

openstack-config --set /etc/nova/nova.conf vnc server_listen 0.0.0.0     openstack-config --set /etc/nova/nova.conf vnc server_proxyclient_address 192.168.75.20

openstack-config --set /etc/nova/nova.conf vnc novncproxy_base_url

http://192.168.75.20:6080/vnc_auto.html

  [glance]部分,配置Image service api的位置:

 

[glance]

api_servers = http://controller:9292

 

# 使用下面的命令可直接修

openstack-config --set /etc/nova/nova.conf glance api_servers

http://controller:9292

 [oslo_concurrency]部分中,配置锁路径:

 

[oslo_concurrency]

lock_path = /var/lib/nova/tmp

 

# 使用下面的命令可直接修

openstack-config --set /etc/nova/nova.conf oslo_concurrency lock_path /var/lib/nova/tmp

 [placement]部分,配置对placement服务的访问

 

[placement]

region_name = RegionOne

project_domain_name = Default

project_name = service

auth_type = password

user_domain_name = Default

auth_url = http://controller:5000/v3

username = placement

password = 000000

# 使用下面的命令可直接修

openstack-config --set /etc/nova/nova.conf placement region_name RegionOne      openstack-config --set /etc/nova/nova.conf placement project_domain_name Default openstack-config --set /etc/nova/nova.conf placement project_name service       openstack-config --set /etc/nova/nova.conf placement auth_type password         openstack-config --set /etc/nova/nova.conf placement user_domain_name Default   openstack-config --set /etc/nova/nova.conf placement auth_url

http://controller:5000/v3

openstack-config --set /etc/nova/nova.conf placement openstack-config --set /etc/nova/nova.conf placement

 

username placement

password 000000

 


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
消息中间件 安全 Linux
openstack笔记 5
openstack笔记
|
消息中间件 API 数据库
openstack笔记 4
openstack笔记
|
存储 API 数据安全/隐私保护
openstack笔记 7
openstack笔记
102 0
|
消息中间件 Linux 网络安全
openstack笔记 6
openstack笔记
101 0
|
存储 前端开发 数据库
openstack笔记 2
openstack笔记
|
消息中间件 网络协议 网络安全
openstack笔记 1
openstack笔记
134 0
|
网络协议 Linux 网络安全
openstack 云平台一体化部署(超详细)
openstack 云平台一体化部署(超详细)
1273 0
openstack 云平台一体化部署(超详细)
|
3月前
|
消息中间件 缓存 Shell
跟我一起来学OpenStack部署
跟我一起来学OpenStack部署
292 0
|
4月前
|
存储 数据安全/隐私保护 Docker
Kolla-ansible部署openStack
Kolla-ansible部署openStack
411 11