openstack安装配置—— controller node配置

    实际生产环境中,每个服务模块很有可能都是一个集群,但我们这里只是带大家配置了一个实验环境,所以我们这里把keystone、nova、neutron、glance、dashboard都安装在了contoller节点上。


controller节点基础配置

[[email protected] ~]# hostname

controller

[[email protected] ~]# lscpu

Architecture:          x86_64

CPU op-mode(s):        32-bit, 64-bit

Byte Order:            Little Endian

CPU(s):                4

On-line CPU(s) list:   0-3

Thread(s) per core:    1

Core(s) per s

ocket:    1

Socket(s):             4

NUMA node(s):          1

Vendor ID:             GenuineIntel

CPU family:            6

Model:                 44

Model name:            Westmere E56xx/L56xx/X56xx (Nehalem-C)

Stepping:              1

CPU MHz:               2400.084

BogoMIPS:              4800.16

Hypervisor vendor:     KVM

Virtualization type:   full

L1d cache:             32K

L1i cache:             32K

L2 cache:              4096K

NUMA node0 CPU(s):     0-3

[[email protected] ~]# free -h

total        used        free      shared  buff/cache   available

Mem:           7.8G        108M        7.6G        8.3M         98M        7.6G

Swap:            0B          0B          0B

[[email protected] ~]# lsblk

NAME            MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT

sr0              11:0    1  1024M  0 rom

vda             252:0    0   400G  0 disk

├─vda1          252:1    0   500M  0 part /boot

└─vda2          252:2    0 399.5G  0 part

├─centos-root 253:0    0    50G  0 lvm  /

├─centos-swap 253:1    0   3.9G  0 lvm

└─centos-data 253:2    0 345.6G  0 lvm  /data

[[email protected] ~]# ifconfig

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

inet 192.168.10.10  netmask 255.255.255.0  broadcast 192.168.10.255

inet6 fe80::5054:ff:fef1:33de  prefixlen 64  scopeid 0x20<link>

ether 52:54:00:f1:33:de  txqueuelen 1000  (Ethernet)

RX packets 3892  bytes 336939 (329.0 KiB)

RX errors 0  dropped 341  overruns 0  frame 0

TX packets 11  bytes 746 (746.0 B)

TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

inet 10.0.0.10  netmask 255.255.0.0  broadcast 10.0.255.255

inet6 fe80::5054:ff:fe53:7f28  prefixlen 64  scopeid 0x20<link>

ether 52:54:00:53:7f:28  txqueuelen 1000  (Ethernet)

RX packets 3745  bytes 322672 (315.1 KiB)

RX errors 0  dropped 326  overruns 0  frame 0

TX packets 11  bytes 746 (746.0 B)

TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

inet 111.40.215.8  netmask 255.255.255.240  broadcast 111.40.215.15

inet6 fe80::5054:ff:fe53:7f82  prefixlen 64  scopeid 0x20<link>

ether 52:54:00:53:7f:82  txqueuelen 1000  (Ethernet)

RX packets 82  bytes 9291 (9.0 KiB)

RX errors 0  dropped 0  overruns 0  frame 0

TX packets 82  bytes 9653 (9.4 KiB)

TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536

inet 127.0.0.1  netmask 255.0.0.0

inet6 ::1  prefixlen 128  scopeid 0x10<host>

loop  txqueuelen 0  (Local Loopback)

RX packets 2718  bytes 387704 (378.6 KiB)

RX errors 0  dropped 0  overruns 0  frame 0

TX packets 2718  bytes 387704 (378.6 KiB)

TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[[email protected] ~]# getenforce

Disabled

[[email protected] ~]# iptables -vnL

Chain INPUT (policy ACCEPT 10697 packets, 37M bytes)

pkts bytes target     prot opt in     out     source               destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)

pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 9283 packets, 865K bytes)

pkts bytes target     prot opt in     out     source               destination

[[email protected] ~]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.10.10 controller

192.168.10.20 block1

192.168.10.31 compute1

192.168.10.32 compute2

[[email protected] ~]#

配置时间同步服务

[[email protected] ~]# yum list | grep chrony

chrony.x86_64                              2.1.1-4.el7.centos          updates

[[email protected] ~]# yum install -y chrony

[[email protected] ~]# vim /etc/chrony.conf

[[email protected] ~]# grep -v ^# /etc/chrony.conf | tr -s [[:space:]]

server 0.centos.pool.ntp.org iburst

server 1.centos.pool.ntp.org iburst

server 2.centos.pool.ntp.org iburst

server 3.centos.pool.ntp.org iburst

stratumweight 0

driftfile /var/lib/chrony/drift

rtcsync

makestep 10 3

allow 192.168.10/24

bindcmdaddress 127.0.0.1

bindcmdaddress ::1

keyfile /etc/chrony.keys

commandkey 1

generatecommandkey

noclientlog

logchange 0.5

logdir /var/log/chrony

[[email protected] ~]# systemctl enable chronyd.service

[[email protected] ~]# systemctl start chronyd.service

启用OpenStack程序包仓库

[[email protected] ~]# yum install -y centos-release-openstack-mitaka

升级本机系统及内核

[[email protected] ~]# yum upgrade  //此步不建议执行,内核升级后openstack service create时会报HTTP400错误

由于升级的内核,所以需要重启一次使新的内核生效  //没更新内核不需要

[[email protected] ~]# reboot

安装 OpenStack 客户端

[[email protected] ~]# yum install -y python-openstackclient

安装配置mysql

[[email protected] ~]# yum install -y mariadb-server python2-PyMySQL

[[email protected] ~]# cat /etc/my.cnf.d/openstack.cnf

[mysqld]

bind-address = 192.168.10.10

default-storage-engine = innodb

innodb_file_per_table

max_connections = 4096

collation-server = utf8_general_ci

character-set-server = utf8

[[email protected] ~]# systemctl enable mariadb.service

Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.

[[email protected] ~]# systemctl start mariadb.service

[[email protected] ~]# ss -tnl

State       Recv-Q Send-Q                                                 Local Address:Port                                                                Peer Address:Port

LISTEN      0      128                                                                *:22022                                                                          *:*

LISTEN      0      128                                                    192.168.10.10:3306                                                                           *:*

LISTEN      0      128                                                               :::22022                                                                         :::*

[[email protected] ~]# mysql_secure_installation

安装配置消息队列服务rabbitmq

[[email protected] ~]# yum install -y rabbitmq-server

[[email protected] ~]# systemctl enable rabbitmq-server.service

Created symlink from /etc/systemd/system/multi-user.target.wants/rabbitmq-server.service to /usr/lib/systemd/system/rabbitmq-server.service.

[[email protected] ~]# systemctl start rabbitmq-server.service

[[email protected] ~]# ss -tnl

State       Recv-Q Send-Q                                                 Local Address:Port                                                                Peer Address:Port

LISTEN      0      128                                                                *:22022                                                                          *:*

LISTEN      0      128                                                                *:25672                                                                          *:*

LISTEN      0      128                                                    192.168.10.10:3306                                                                           *:*

LISTEN      0      128                                                                *:4369                                                                           *:*

LISTEN      0      128                                                               :::22022                                                                         :::*

LISTEN      0      128                                                               :::5672                                                                          :::*

[[email protected] ~]# rabbitmqctl add_user openstack RABBIT_PASS

Creating user "openstack" ...

[[email protected] ~]# rabbitmqctl set_permissions openstack ".*" ".*" ".*"

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

[[email protected] ~]#

安装配置memcached用于缓存令牌

[[email protected] ~]# yum install -y memcached python-memcached

[[email protected] ~]# systemctl enable memcached.service

Created symlink from /etc/systemd/system/multi-user.target.wants/memcached.service to /usr/lib/systemd/system/memcached.service.

[[email protected] ~]# systemctl start memcached.service

[[email protected] ~]# ss -tnl

State       Recv-Q Send-Q                                                 Local Address:Port                                                                Peer Address:Port

LISTEN      0      128                                                                *:22022                                                                          *:*

LISTEN      0      128                                                                *:25672                                                                          *:*

LISTEN      0      128                                                    192.168.10.10:3306                                                                           *:*

LISTEN      0      128                                                        127.0.0.1:11211                                                                          *:*

LISTEN      0      128                                                                *:4369                                                                           *:*

LISTEN      0      128                                                               :::22022                                                                         :::*

LISTEN      0      128                                                               :::5672                                                                          :::*

LISTEN      0      128                                                              ::1:11211                                                                         :::*

[[email protected] ~]#

正式开始安装配置keystone

数据库准备

[[email protected] ~]# mysql

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

Your MariaDB connection id is 4

Server version: 10.1.20-MariaDB MariaDB Server

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

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

MariaDB [(none)]> CREATE DATABASE keystone;

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO ‘keystone‘@‘localhost‘ \

->   IDENTIFIED BY ‘KEYSTONE_DBPASS‘;

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO ‘keystone‘@‘%‘ \

->   IDENTIFIED BY ‘KEYSTONE_DBPASS‘;

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit

Bye


安装并修改配置文件

[[email protected] ~]# yum install -y openstack-keystone httpd mod_wsgi

[[email protected] ~]# cp /etc/keystone/keystone.conf{,.bak}

[[email protected] ~]# vim /etc/keystone/keystone.conf

[[email protected] ~]# grep -v ^# /etc/keystone/keystone.conf | tr -s [[:space:]]

[DEFAULT]

admin_token = ADMIN_TOKEN

[assignment]

[auth]

[cache]

[catalog]

[cors]

[cors.subdomain]

[credential]

[database]

connection = mysql+pymysql://keystone:[email protected]/keystone

[domain_config]

[endpoint_filter]

[endpoint_policy]

[eventlet_server]

[eventlet_server_ssl]

[federation]

[fernet_tokens]

[identity]

[identity_mapping]

[kvs]

[ldap]

[matchmaker_redis]

[memcache]

[oauth1]

[os_inherit]

[oslo_messaging_amqp]

[oslo_messaging_notifications]

[oslo_messaging_rabbit]

[oslo_middleware]

[oslo_policy]

[paste_deploy]

[policy]

[resource]

[revoke]

[role]

[saml]

[shadow_users]

[signing]

[ssl]

[token]

provider = fernet

[tokenless_auth]

[trust]

初始化身份认证服务keystone的数据库

[[email protected] ~]# su -s /bin/sh -c "keystone-manage db_sync" keystone

官方文档mysql配置文件中少了一行skip_name_resolve导致初始化数据库时报错

[[email protected] ~]# mysql -e "show tables from keystone"

[[email protected] ~]# mysql -hcontroller -ukeystone -pKEYSTONE_DBPASS

ERROR 1045 (28000): Access denied for user ‘keystone‘@‘controller‘ (using password: YES)

[[email protected] ~]# vim /etc/my.cnf.d/openstack.cnf

[[email protected] ~]# cat /etc/my.cnf.d/openstack.cnf

[mysqld]

bind-address = 192.168.10.10

default-storage-engine = innodb

innodb_file_per_table

max_connections = 4096

collation-server = utf8_general_ci

character-set-server = utf8

skip_name_resolve

[[email protected] ~]# systemctl restart mariadb

[[email protected] ~]# mysql -hcontroller -ukeystone -pKEYSTONE_DBPASS

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

Your MariaDB connection id is 2

Server version: 10.1.20-MariaDB MariaDB Server

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

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

MariaDB [(none)]> quit

Bye

初始化keystone服务数据库

[[email protected] ~]# su -s /bin/sh -c "keystone-manage db_sync" keystone

[[email protected] ~]# mysql -e "show tables from keystone"

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

| Tables_in_keystone     |

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

| access_token           |

| assignment             |

| config_register        |

| consumer               |

| credential             |

| domain                 |

| endpoint               |

| endpoint_group         |

| federated_user         |

| federation_protocol    |

| group                  |

| id_mapping             |

| identity_provider      |

| idp_remote_ids         |

| implied_role           |

| local_user             |

| mapping                |

| migrate_version        |

| password               |

| policy                 |

| policy_association     |

| project                |

| project_endpoint       |

| project_endpoint_group |

| region                 |

| request_token          |

| revocation_event       |

| role                   |

| sensitive_config       |

| service                |

| service_provider       |

| token                  |

| trust                  |

| trust_role             |

| user                   |

| user_group_membership  |

| whitelisted_config     |

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

[[email protected] ~]#

初始化Fernet keys

[[email protected] ~]# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone

配置keystone

[[email protected] ~]# cp /etc/httpd/conf/httpd.conf{,.bak}

[[email protected] ~]# vim /etc/httpd/conf/httpd.conf

[[email protected] ~]# grep ^ServerName /etc/httpd/conf/httpd.conf  //修改servername一行为hostname即可

ServerName controller

[[email protected] ~]# vim /etc/httpd/conf.d/wsgi-keystone.conf

[[email protected] ~]# cat /etc/httpd/conf.d/wsgi-keystone.conf

Listen 5000

Listen 35357

<VirtualHost *:5000>

WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}

WSGIProcessGroup keystone-public

WSGIScriptAlias / /usr/bin/keystone-wsgi-public

WSGIApplicationGroup %{GLOBAL}

WSGIPassAuthorization On

ErrorLogFormat "%{cu}t %M"

ErrorLog /var/log/httpd/keystone-error.log

CustomLog /var/log/httpd/keystone-access.log combined

<Directory /usr/bin>

Require all granted

</Directory>

</VirtualHost>

<VirtualHost *:35357>

WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}

WSGIProcessGroup keystone-admin

WSGIScriptAlias / /usr/bin/keystone-wsgi-admin

WSGIApplicationGroup %{GLOBAL}

WSGIPassAuthorization On

ErrorLogFormat "%{cu}t %M"

ErrorLog /var/log/httpd/keystone-error.log

CustomLog /var/log/httpd/keystone-access.log combined

<Directory /usr/bin>

Require all granted

</Directory>

</VirtualHost>

[[email protected] ~]# httpd -t

Syntax OK

[[email protected] ~]# systemctl enable httpd.service

Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

[[email protected] ~]# systemctl start httpd.service

[[email protected] ~]# ss -tnl  //新增5000和35357端口的监听

State       Recv-Q Send-Q                                                 Local Address:Port                                                                Peer Address:Port

LISTEN      0      128                                                                *:22022                                                                          *:*

LISTEN      0      128                                                                *:25672                                                                          *:*

LISTEN      0      128                                                    192.168.10.10:3306                                                                           *:*

LISTEN      0      128                                                        127.0.0.1:11211                                                                          *:*

LISTEN      0      128                                                                *:4369                                                                           *:*

LISTEN      0      128                                                               :::22022                                                                         :::*

LISTEN      0      128                                                               :::5000                                                                          :::*

LISTEN      0      128                                                               :::5672                                                                          :::*

LISTEN      0      128                                                              ::1:11211                                                                         :::*

LISTEN      0      128                                                               :::80                                                                            :::*

LISTEN      0      128                                                               :::35357                                                                         :::*

[[email protected] ~]#

创建keystone服务及API

[[email protected] ~]# export OS_TOKEN=ADMIN_TOKEN

[[email protected] ~]# export OS_URL=http://controller:35357/v3

[[email protected] ~]# export OS_IDENTITY_API_VERSION=3

[[email protected] ~]# openstack service create \                  //创建认证服务的 API 端点

>   --name keystone --description "OpenStack Identity" identity  //升级内核后操作此步会报HTTP400错误

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

| Field       | Value                            |

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

| description | OpenStack Identity               |

| enabled     | True                             |

| id          | cc3d2bc9ba464f99afa0c931e8c130a0 |

| name        | keystone                         |

| type        | identity                         |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \  //创建公共接口的认证服务

>   identity public http://controller:5000/v3

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

| Field        | Value                            |

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

| enabled      | True                             |

| id           | 8a6d73a17c23411590c40fab1513bcc8 |

| interface    | public                           |

| region       | RegionOne                        |

| region_id    | RegionOne                        |

| service_id   | cc3d2bc9ba464f99afa0c931e8c130a0 |

| service_name | keystone                         |

| service_type | identity                         |

| url          | http://controller:5000/v3        |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \  //创建内部接口的认证服务

>   identity internal http://controller:5000/v3

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

| Field        | Value                            |

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

| enabled      | True                             |

| id           | 844a6d59ef464971a5b1d227caa11de1 |

| interface    | internal                         |

| region       | RegionOne                        |

| region_id    | RegionOne                        |

| service_id   | cc3d2bc9ba464f99afa0c931e8c130a0 |

| service_name | keystone                         |

| service_type | identity                         |

| url          | http://controller:5000/v3        |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \  //创建管理接口的认证服务

>   identity admin http://controller:35357/v3

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

| Field        | Value                            |

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

| enabled      | True                             |

| id           | cae3be719b9f4e9ca0413064ac5ed693 |

| interface    | admin                            |

| region       | RegionOne                        |

| region_id    | RegionOne                        |

| service_id   | cc3d2bc9ba464f99afa0c931e8c130a0 |

| service_name | keystone                         |

| service_type | identity                         |

| url          | http://controller:35357/v3       |

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

[[email protected] ~]#

[[email protected] ~]# openstack domain create --description "Default Domain" default  //创建域 default

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

| Field       | Value                            |

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

| description | Default Domain                   |

| enabled     | True                             |

| id          | 3ad6ac5f704c494e9f16b9e04ef745fe |

| name        | default                          |

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

[[email protected] ~]# openstack project create --domain default \  //创建 admin 项目

>   --description "Admin Project" admin

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

| Field       | Value                            |

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

| description | Admin Project                    |

| domain_id   | 3ad6ac5f704c494e9f16b9e04ef745fe |

| enabled     | True                             |

| id          | 9b07e2a368214247bb3051e806f94f9b |

| is_domain   | False                            |

| name        | admin                            |

| parent_id   | 3ad6ac5f704c494e9f16b9e04ef745fe |

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

[[email protected] ~]# openstack user create --domain default \  //创建 admin 用户

>   --password-prompt admin

User Password:

Repeat User Password:

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

| Field     | Value                            |

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

| domain_id | 3ad6ac5f704c494e9f16b9e04ef745fe |

| enabled   | True                             |

| id        | 5ba61aad8d0d4da081d78c849b392549 |

| name      | admin                            |

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

[[email protected] ~]# openstack role create admin  //创建 admin 角色

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

| Field     | Value                            |

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

| domain_id | None                             |

| id        | 3eb429c5cf384d50b2686f2ea4d8b28a |

| name      | admin                            |

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

[[email protected] ~]# openstack role add --project admin --user admin admin  //添加 admin 角色到 admin 项目和用户上

[[email protected] ~]#

[[email protected] ~]# openstack project create --domain default \  //创建 service 项目

>   --description "Service Project" service

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

| Field       | Value                            |

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

| description | Service Project                  |

| domain_id   | 3ad6ac5f704c494e9f16b9e04ef745fe |

| enabled     | True                             |

| id          | f69c48a81f38460ab603ade2a3e44826 |

| is_domain   | False                            |

| name        | service                          |

| parent_id   | 3ad6ac5f704c494e9f16b9e04ef745fe |

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

[[email protected] ~]# openstack project create --domain default \  //创建 demo 项目

>   --description "Demo Project" demo

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

| Field       | Value                            |

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

| description | Demo Project                     |

| domain_id   | 3ad6ac5f704c494e9f16b9e04ef745fe |

| enabled     | True                             |

| id          | 0200f6457da84abd9055a5c192386747 |

| is_domain   | False                            |

| name        | demo                             |

| parent_id   | 3ad6ac5f704c494e9f16b9e04ef745fe |

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

[[email protected] ~]# openstack user create --domain default \  //创建 demo 用户

>   --password-prompt demo

User Password:

Repeat User Password:

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

| Field     | Value                            |

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

| domain_id | 3ad6ac5f704c494e9f16b9e04ef745fe |

| enabled   | True                             |

| id        | deb3adea97e34fee9161a47940762a53 |

| name      | demo                             |

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

[[email protected] ~]# openstack role create user  //创建 user 角色

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

| Field     | Value                            |

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

| domain_id | None                             |

| id        | f190788929f9490fbfa25437a4958868 |

| name      | user                             |

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

[[email protected] ~]# openstack role add --project demo --user demo user  //添加 user 角色到 demo 项目和用户上

[[email protected] ~]#

[[email protected] ~]# cp /etc/keystone/keystone-paste.ini{,.bak}

[[email protected] ~]# vim /etc/keystone/keystone-paste.ini

[[email protected] ~]# grep "pipeline =" /etc/keystone/keystone-paste.ini

pipeline = cors sizelimit url_normalize request_id build_auth_context token_auth json_body ec2_extension public_service

pipeline = cors sizelimit url_normalize request_id build_auth_context token_auth json_body ec2_extension s3_extension admin_service

pipeline = cors sizelimit url_normalize request_id build_auth_context token_auth json_body ec2_extension_v3 s3_extension service_v3

pipeline = cors sizelimit url_normalize public_version_service

pipeline = cors sizelimit url_normalize admin_version_service

[[email protected] ~]# unset OS_TOKEN OS_URL  //释放相应环境变量

[[email protected] ~]# openstack --os-auth-url http://controller:35357/v3 \  //使用 admin 用户请求认证令牌

>   --os-project-domain-name default --os-user-domain-name default \

>   --os-project-name admin --os-username admin token issue

Password:

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

| Field      | Value                                                                                                             |

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

| expires    | 2017-07-15T15:38:12.000000Z                                                                                       |

| id         | gAAAAABZaijUXthvg1i_ttx6r_h3lUAAEWtQ4DWantpcOtBHkmyIJETUkURiHO2GBaVQirpU-vGdFfdrZz_iRbnP-                         |

|            | 8mTcZUgsZco5PhwG7ZnuBAaDx37JdlY9IqHXdiSo8x9dTa4R9lVTl_KwTtTrp1EpBIRv6sOqEhN4L0eH4HqGIyeiQj9X34                    |

| project_id | 9b07e2a368214247bb3051e806f94f9b                                                                                  |

| user_id    | 5ba61aad8d0d4da081d78c849b392549                                                                                  |

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

[[email protected] ~]# openstack --os-auth-url http://controller:5000/v3 \  ///使用 demo 用户请求认证令牌

>   --os-project-domain-name default --os-user-domain-name default \  //使用 demo 用户的密码和API端口5000,这样只会允许对身份认证服务API的常规(非管理)访问

>   --os-project-name demo --os-username demo token issue

Password:

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

| Field      | Value                                                                                                                   |

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

| expires    | 2017-07-15T15:45:40.000000Z                                                                                             |

| id         | gAAAAABZaiqUFOQRqC9UYyq6LxagUXzm7jtuNz4co8DlDHue-RXuwoF042NuMnYDe20Bk5WvXBDzUYkTnfMTlsTpORxpx0hSfp3u6F6fsJdv-           |

|            | l7pAS1s0BmrK9lN_hmQF52Fnc9Ql27HSw3_TSMHSW0IltLk_s5ES3Cn9yyH4eVmE059xXcfkmE                                              |

| project_id | 0200f6457da84abd9055a5c192386747                                                                                        |

| user_id    | deb3adea97e34fee9161a47940762a53                                                                                        |

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

[[email protected] ~]#

创建 admin 和 ``demo``项目和用户创建客户端环境变量脚本

[[email protected] ~]# vim admin-openrc

[[email protected] ~]# cat admin-openrc

export OS_PROJECT_DOMAIN_NAME=default

export OS_USER_DOMAIN_NAME=default

export OS_PROJECT_NAME=admin

export OS_USERNAME=admin

export OS_PASSWORD=ADMIN_PASS

export OS_AUTH_URL=http://controller:35357/v3

export OS_IDENTITY_API_VERSION=3

export OS_IMAGE_API_VERSION=2

[[email protected] ~]# vim demo-openrc

[[email protected] ~]# cat demo-openrc

export OS_PROJECT_DOMAIN_NAME=default

export OS_USER_DOMAIN_NAME=default

export OS_PROJECT_NAME=demo

export OS_USERNAME=demo

export OS_PASSWORD=DEMO_PASS

export OS_AUTH_URL=http://controller:5000/v3

export OS_IDENTITY_API_VERSION=3

export OS_IMAGE_API_VERSION=2

[[email protected] ~]#

验证keytone服务

通过加载身份认证服务的环境变量的方式来请求认证令牌

[[email protected] ~]# source admin-openrc

[[email protected] ~]# openstack token issue

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

| Field      | Value                                                                                                                   |

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

| expires    | 2017-07-15T15:51:36.000000Z                                                                                             |

| id         | gAAAAABZaiv4Gracm7030LSRHtVaDkAaJccGLgdxL0sDOzj4ChC9STe8YvKeuCEafbZnG4o3QZKQIx4jg-                                      |

|            | C88nRFs4KhkhmNhT6Xxqak4DAln90Mmb4Dz8LHMdgKCukwGIojAsGvChQjT6tyfQdXM4RjasCLQoVO6x3dcPFAAcTdJx6BDzcTcAg                   |

| project_id | 9b07e2a368214247bb3051e806f94f9b                                                                                        |

| user_id    | 5ba61aad8d0d4da081d78c849b392549                                                                                        |

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

[[email protected] ~]# source demo-openrc

[[email protected] ~]# openstack token issue

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

| Field      | Value                                                                                                                   |

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

| expires    | 2017-07-15T15:53:44.000000Z                                                                                             |

| id         | gAAAAABZaix4nu_KL0oYBTtCgdpXKwVFS1BoQAA8DM6xONR9Ur3wrU1GqcJeOrPlmbVCH5ES0kjTTYnnnv99cfs6K30tZpS5batAmxLu7tYHVKb1cmf1zAU |

|            | 7BInZr9B5QwWrHYw1W8nMFnw7H3_sbDvcXJs4MJ1V-dXRBoYDhPxM1wKY4Fs8M3E                                                        |

| project_id | 0200f6457da84abd9055a5c192386747                                                                                        |

| user_id    | deb3adea97e34fee9161a47940762a53                                                                                        |

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

[[email protected] ~]#

glance服务的安装配置

数据库准备

[[email protected] ~]# mysql

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

Your MariaDB connection id is 13

Server version: 10.1.20-MariaDB MariaDB Server

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

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

MariaDB [(none)]> CREATE DATABASE glance;

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO ‘glance‘@‘localhost‘ \

->   IDENTIFIED BY ‘GLANCE_DBPASS‘;

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO ‘glance‘@‘%‘ \

->   IDENTIFIED BY ‘GLANCE_DBPASS‘;

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit

Bye

创建glance服务及API

[[email protected] ~]# . admin-openrc

[[email protected] ~]# openstack user create --domain default --password-prompt glance

User Password:

Repeat User Password:

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

| Field     | Value                            |

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

| domain_id | 3ad6ac5f704c494e9f16b9e04ef745fe |

| enabled   | True                             |

| id        | e80ec7311d4341568d1f118b59720565 |

| name      | glance                           |

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

[[email protected] ~]# openstack role add --project service --user glance admin

[[email protected] ~]# openstack service create --name glance \

>   --description "OpenStack Image" image

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

| Field       | Value                            |

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

| description | OpenStack Image                  |

| enabled     | True                             |

| id          | 2e7d8b2f950b4f8e80fb42876f9bad91 |

| name        | glance                           |

| type        | image                            |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \

>   image public http://controller:9292

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

| Field        | Value                            |

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

| enabled      | True                             |

| id           | 1594c895113547c0850a57d92fd67bc2 |

| interface    | public                           |

| region       | RegionOne                        |

| region_id    | RegionOne                        |

| service_id   | 2e7d8b2f950b4f8e80fb42876f9bad91 |

| service_name | glance                           |

| service_type | image                            |

| url          | http://controller:9292           |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \

>   image internal http://controller:9292

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

| Field        | Value                            |

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

| enabled      | True                             |

| id           | 6271f4201c10451d97209e54042cb995 |

| interface    | internal                         |

| region       | RegionOne                        |

| region_id    | RegionOne                        |

| service_id   | 2e7d8b2f950b4f8e80fb42876f9bad91 |

| service_name | glance                           |

| service_type | image                            |

| url          | http://controller:9292           |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \

>   image admin http://controller:9292

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

| Field        | Value                            |

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

| enabled      | True                             |

| id           | abd592a97be54cacbe946f394be98699 |

| interface    | admin                            |

| region       | RegionOne                        |

| region_id    | RegionOne                        |

| service_id   | 2e7d8b2f950b4f8e80fb42876f9bad91 |

| service_name | glance                           |

| service_type | image                            |

| url          | http://controller:9292           |

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

[[email protected] ~]#

安装并修改配置文件

[[email protected] ~]# yum install -y openstack-glance

[[email protected] ~]# cp /etc/glance/glance-api.conf{,.bak}

[[email protected] ~]# vim /etc/glance/glance-api.conf

[[email protected] ~]# grep -v ^# /etc/glance/glance-api.conf | tr -s [[:space:]]

[DEFAULT]

[cors]

[cors.subdomain]

[database]

connection = mysql+pymysql://glance:[email protected]/glance

[glance_store]

stores = file,http

default_store = file

filesystem_store_datadir = /var/lib/glance/images/

[image_format]

[keystone_authtoken]

auth_uri = http://controller:5000

auth_url = http://controller:35357

memcached_servers = controller:11211

auth_type = password

project_domain_name = default

user_domain_name = default

project_name = service

username = glance

password = GLANCE_PASS

[matchmaker_redis]

[oslo_concurrency]

[oslo_messaging_amqp]

[oslo_messaging_notifications]

[oslo_messaging_rabbit]

[oslo_policy]

[paste_deploy]

flavor = keystone

[profiler]

[store_type_location_strategy]

[task]

[taskflow_executor]

[[email protected] ~]#

[[email protected] ~]# cp /etc/glance/glance-registry.conf{,.bak}

[[email protected] ~]# vim /etc/glance/glance-registry.conf

[[email protected] ~]# grep -v ^# /etc/glance/glance-registry.conf | tr -s [[:space:]]

[DEFAULT]

[database]

connection = mysql+pymysql://glance:[email protected]/glance

[glance_store]

[keystone_authtoken]

auth_uri = http://controller:5000

auth_url = http://controller:35357

memcached_servers = controller:11211

auth_type = password

project_domain_name = default

user_domain_name = default

project_name = service

username = glance

password = GLANCE_PASS

[matchmaker_redis]

[oslo_messaging_amqp]

[oslo_messaging_notifications]

[oslo_messaging_rabbit]

[oslo_policy]

[paste_deploy]

flavor = keystone

[profiler]

[[email protected] ~]#

初始化glance服务数据库

[[email protected] ~]# su -s /bin/sh -c "glance-manage db_sync" glance

Option "verbose" from group "DEFAULT" is deprecated for removal.  Its value may be silently ignored in the future.

/usr/lib/python2.7/site-packages/oslo_db/sqlalchemy/enginefacade.py:1056: OsloDBDeprecationWarning: EngineFacade is deprecated; please use oslo_db.sqlalchemy.enginefacade

expire_on_commit=expire_on_commit, _conf=conf)

/usr/lib/python2.7/site-packages/pymysql/cursors.py:166: Warning: (1831, u‘Duplicate index `ix_image_properties_image_id_name`. This is deprecated and will be disallowed in a future release.‘)

result = self._query(query)

[[email protected] ~]# mysql -e "show tables from glance"

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

| Tables_in_glance                 |

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

| artifact_blob_locations          |

| artifact_blobs                   |

| artifact_dependencies            |

| artifact_properties              |

| artifact_tags                    |

| artifacts                        |

| image_locations                  |

| image_members                    |

| image_properties                 |

| image_tags                       |

| images                           |

| metadef_namespace_resource_types |

| metadef_namespaces               |

| metadef_objects                  |

| metadef_properties               |

| metadef_resource_types           |

| metadef_tags                     |

| migrate_version                  |

| task_info                        |

| tasks                            |

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

[[email protected] ~]# systemctl enable openstack-glance-api.service \

>   openstack-glance-registry.service

Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-glance-api.service to /usr/lib/systemd/system/openstack-glance-api.service.

Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-glance-registry.service to /usr/lib/systemd/system/openstack-glance-registry.service.

[[email protected] ~]# systemctl start openstack-glance-api.service \

>   openstack-glance-registry.service  //启动后新增9292和9191两个端口

[[email protected] ~]# ss -tnl

State      Recv-Q Send-Q                       Local Address:Port                                      Peer Address:Port

LISTEN     0      128                                      *:25672                                                *:*

LISTEN     0      128                          192.168.10.10:3306                                                 *:*

LISTEN     0      128                              127.0.0.1:11211                                                *:*

LISTEN     0      128                                      *:9292                                                 *:*

LISTEN     0      128                                      *:4369                                                 *:*

LISTEN     0      128                                      *:22022                                                *:*

LISTEN     0      128                                      *:9191                                                 *:*

LISTEN     0      128                                     :::5000                                                :::*

LISTEN     0      128                                     :::5672                                                :::*

LISTEN     0      128                                    ::1:11211                                               :::*

LISTEN     0      128                                     :::80                                                  :::*

LISTEN     0      128                                     :::35357                                               :::*

LISTEN     0      128                                     :::22022                                               :::*

[[email protected] ~]#

验证glance服务

[[email protected] ~]# . admin-openrc

[[email protected] ~]# wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img

--2017-07-15 23:43:29--  http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img

Resolving download.cirros-cloud.net (download.cirros-cloud.net)... 64.90.42.85, 2607:f298:6:a036::bd6:a72a

Connecting to download.cirros-cloud.net (download.cirros-cloud.net)|64.90.42.85|:80... connected.

HTTP request sent, awaiting response... 200 OK

Length: 13287936 (13M) [text/plain]

Saving to: ‘cirros-0.3.4-x86_64-disk.img’

100%[==============================================================================================>] 13,287,936   579KB/s   in 26s

2017-07-15 23:43:55 (507 KB/s) - ‘cirros-0.3.4-x86_64-disk.img’ saved [13287936/13287936]

[[email protected] ~]# openstack image list

[[email protected] ~]# openstack image create "cirros" \

>   --file cirros-0.3.4-x86_64-disk.img \

>   --disk-format qcow2 --container-format bare \

>   --public

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

| Field            | Value                                                |

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

| checksum         | ee1eca47dc88f4879d8a229cc70a07c6                     |

| container_format | bare                                                 |

| created_at       | 2017-07-16T06:55:44Z                                 |

| disk_format      | qcow2                                                |

| file             | /v2/images/9b0a7de0-6ff5-488b-9067-813e8a88de98/file |

| id               | 9b0a7de0-6ff5-488b-9067-813e8a88de98                 |

| min_disk         | 0                                                    |

| min_ram          | 0                                                    |

| name             | cirros                                               |

| owner            | 9b07e2a368214247bb3051e806f94f9b                     |

| protected        | False                                                |

| schema           | /v2/schemas/image                                    |

| size             | 13287936                                             |

| status           | active                                               |

| tags             |                                                      |

| updated_at       | 2017-07-16T06:55:44Z                                 |

| virtual_size     | None                                                 |

| visibility       | public                                               |

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

[[email protected] ~]# openstack image list

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

| ID                                   | Name   | Status |

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

| 9b0a7de0-6ff5-488b-9067-813e8a88de98 | cirros | active |

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

[[email protected] ~]#

安装配置compute服务

nova数据库创建及配置

[[email protected] ~]# mysql

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

Your MariaDB connection id is 23

Server version: 10.1.20-MariaDB MariaDB Server

Copyright (c) 2000, 2016, 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.01 sec)

MariaDB [(none)]> CREATE DATABASE nova;

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova‘@‘localhost‘ \

->   IDENTIFIED BY ‘NOVA_DBPASS‘;

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova‘@‘%‘ \

->   IDENTIFIED BY ‘NOVA_DBPASS‘;

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO ‘nova‘@‘localhost‘ \

->   IDENTIFIED BY ‘NOVA_DBPASS‘;

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO ‘nova‘@‘%‘ \

->   IDENTIFIED BY ‘NOVA_DBPASS‘;

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit

Bye

[[email protected] ~]#

创建nova服务及API

[[email protected] ~]# . admin-openrc

[[email protected] ~]# openstack user create --domain default \

>   --password-prompt nova

User Password:

Repeat User Password:

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

| Field     | Value                            |

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

| domain_id | 3ad6ac5f704c494e9f16b9e04ef745fe |

| enabled   | True                             |

| id        | 482ba5f11f9d4c9eaebc1318fe7a2084 |

| name      | nova                             |

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

[[email protected] ~]# openstack role add --project service --user nova admin

[[email protected] ~]# openstack service create --name nova \

>   --description "OpenStack Compute" compute

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

| Field       | Value                            |

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

| description | OpenStack Compute                |

| enabled     | True                             |

| id          | e0b01cdd88d84a5eb28bd28a63d3f268 |

| name        | nova                             |

| type        | compute                          |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \

>   compute public http://controller:8774/v2.1/%\(tenant_id\)s

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

| Field        | Value                                     |

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

| enabled      | True                                      |

| id           | 240f7e0efeb64386943b7852ba5628d0          |

| interface    | public                                    |

| region       | RegionOne                                 |

| region_id    | RegionOne                                 |

| service_id   | e0b01cdd88d84a5eb28bd28a63d3f268          |

| service_name | nova                                      |

| service_type | compute                                   |

| url          | http://controller:8774/v2.1/%(tenant_id)s |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \

>   compute internal http://controller:8774/v2.1/%\(tenant_id\)s

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

| Field        | Value                                     |

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

| enabled      | True                                      |

| id           | d9acbd2cbd454b9c9c936cff43306550          |

| interface    | internal                                  |

| region       | RegionOne                                 |

| region_id    | RegionOne                                 |

| service_id   | e0b01cdd88d84a5eb28bd28a63d3f268          |

| service_name | nova                                      |

| service_type | compute                                   |

| url          | http://controller:8774/v2.1/%(tenant_id)s |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \

>   compute admin http://controller:8774/v2.1/%\(tenant_id\)s

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

| Field        | Value                                     |

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

| enabled      | True                                      |

| id           | f1d1d402625a4714952d72bc8b141c2e          |

| interface    | admin                                     |

| region       | RegionOne                                 |

| region_id    | RegionOne                                 |

| service_id   | e0b01cdd88d84a5eb28bd28a63d3f268          |

| service_name | nova                                      |

| service_type | compute                                   |

| url          | http://controller:8774/v2.1/%(tenant_id)s |

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

[[email protected] ~]#

安装及修改配置文件

[[email protected] ~]# yum install openstack-nova-api openstack-nova-conductor \

>   openstack-nova-console openstack-nova-novncproxy \

>   openstack-nova-scheduler

[[email protected] ~]# cp /etc/nova/nova.conf{,.bak}

[[email protected] ~]# vim /etc/nova/nova.conf

[[email protected] ~]# grep -v ^# /etc/nova/nova.conf | tr -s [[:space:]]

[DEFAULT]

enabled_apis = osapi_compute,metadata

rpc_backend = rabbit

auth_strategy = keystone

my_ip = 192.168.10.10

use_neutron = True

firewall_driver = nova.virt.firewall.NoopFirewallDriver

[api_database]

connection = mysql+pymysql://nova:[email protected]/nova_api

[barbican]

[cache]

[cells]

[cinder]

[conductor]

[cors]

[cors.subdomain]

[database]

connection = mysql+pymysql://nova:[email protected]/nova

[ephemeral_storage_encryption]

[glance]

api_servers = http://controller:9292

[guestfs]

[hyperv]

[image_file_url]

[ironic]

[keymgr]

[keystone_authtoken]

auth_uri = http://controller:5000

auth_url = http://controller:35357

memcached_servers = controller:11211

auth_type = password

project_domain_name = default

user_domain_name = default

project_name = service

username = nova

password = NOVA_PASS

[libvirt]

[matchmaker_redis]

[metrics]

[neutron]

[osapi_v21]

[oslo_concurrency]

lock_path = /var/lib/nova/tmp

[oslo_messaging_amqp]

[oslo_messaging_notifications]

[oslo_messaging_rabbit]

rabbit_host = controller

rabbit_userid = openstack

rabbit_password = RABBIT_PASS

[oslo_middleware]

[oslo_policy]

[rdp]

[serial_console]

[spice]

[ssl]

[trusted_computing]

[upgrade_levels]

[vmware]

[vnc]

vncserver_listen = $my_ip

vncserver_proxyclient_address = $my_ip

[workarounds]

[xenserver]

[[email protected] ~]#

初始化nova服务数据库

[[email protected] ~]# su -s /bin/sh -c "nova-manage api_db sync" nova

[[email protected] ~]# mysql -e "show tables from nova_api"

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

| Tables_in_nova_api |

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

| build_requests     |

| cell_mappings      |

| flavor_extra_specs |

| flavor_projects    |

| flavors            |

| host_mappings      |

| instance_mappings  |

| migrate_version    |

| request_specs      |

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

[[email protected] ~]# su -s /bin/sh -c "nova-manage db sync" nova

/usr/lib/python2.7/site-packages/pymysql/cursors.py:166: Warning: (1831, u‘Duplicate index `block_device_mapping_instance_uuid_virtual_name_device_name_idx`. This is deprecated and will be disallowed in a future release.‘)

result = self._query(query)

/usr/lib/python2.7/site-packages/pymysql/cursors.py:166: Warning: (1831, u‘Duplicate index `uniq_instances0uuid`. This is deprecated and will be disallowed in a future release.‘)

result = self._query(query)

[[email protected] ~]# mysql -e "show tables from nova"

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

| Tables_in_nova                             |

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

| agent_builds                               |

| aggregate_hosts                            |

| aggregate_metadata                         |

| aggregates                                 |

| allocations                                |

| block_device_mapping                       |

| bw_usage_cache                             |

| cells                                      |

| certificates                               |

| compute_nodes                              |

| console_pools                              |

| consoles                                   |

| dns_domains                                |

| fixed_ips                                  |

| floating_ips                               |

| instance_actions                           |

| instance_actions_events                    |

| instance_extra                             |

| instance_faults                            |

| instance_group_member                      |

| instance_group_policy                      |

| instance_groups                            |

| instance_id_mappings                       |

| instance_info_caches                       |

| instance_metadata                          |

| instance_system_metadata                   |

| instance_type_extra_specs                  |

| instance_type_projects                     |

| instance_types                             |

| instances                                  |

| inventories                                |

| key_pairs                                  |

| migrate_version                            |

| migrations                                 |

| networks                                   |

| pci_devices                                |

| project_user_quotas                        |

| provider_fw_rules                          |

| quota_classes                              |

| quota_usages                               |

| quotas                                     |

| reservations                               |

| resource_provider_aggregates               |

| resource_providers                         |

| s3_images                                  |

| security_group_default_rules               |

| security_group_instance_association        |

| security_group_rules                       |

| security_groups                            |

| services                                   |

| shadow_agent_builds                        |

| shadow_aggregate_hosts                     |

| shadow_aggregate_metadata                  |

| shadow_aggregates                          |

| shadow_block_device_mapping                |

| shadow_bw_usage_cache                      |

| shadow_cells                               |

| shadow_certificates                        |

| shadow_compute_nodes                       |

| shadow_console_pools                       |

| shadow_consoles                            |

| shadow_dns_domains                         |

| shadow_fixed_ips                           |

| shadow_floating_ips                        |

| shadow_instance_actions                    |

| shadow_instance_actions_events             |

| shadow_instance_extra                      |

| shadow_instance_faults                     |

| shadow_instance_group_member               |

| shadow_instance_group_policy               |

| shadow_instance_groups                     |

| shadow_instance_id_mappings                |

| shadow_instance_info_caches                |

| shadow_instance_metadata                   |

| shadow_instance_system_metadata            |

| shadow_instance_type_extra_specs           |

| shadow_instance_type_projects              |

| shadow_instance_types                      |

| shadow_instances                           |

| shadow_key_pairs                           |

| shadow_migrate_version                     |

| shadow_migrations                          |

| shadow_networks                            |

| shadow_pci_devices                         |

| shadow_project_user_quotas                 |

| shadow_provider_fw_rules                   |

| shadow_quota_classes                       |

| shadow_quota_usages                        |

| shadow_quotas                              |

| shadow_reservations                        |

| shadow_s3_images                           |

| shadow_security_group_default_rules        |

| shadow_security_group_instance_association |

| shadow_security_group_rules                |

| shadow_security_groups                     |

| shadow_services                            |

| shadow_snapshot_id_mappings                |

| shadow_snapshots                           |

| shadow_task_log                            |

| shadow_virtual_interfaces                  |

| shadow_volume_id_mappings                  |

| shadow_volume_usage_cache                  |

| snapshot_id_mappings                       |

| snapshots                                  |

| tags                                       |

| task_log                                   |

| virtual_interfaces                         |

| volume_id_mappings                         |

| volume_usage_cache                         |

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

[[email protected] ~]#

启用并启动nova服务

[[email protected] ~]# systemctl enable openstack-nova-api.service \

>   openstack-nova-consoleauth.service openstack-nova-scheduler.service \

>   openstack-nova-conductor.service openstack-nova-novncproxy.service

Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-api.service to /usr/lib/systemd/system/openstack-nova-api.service.

Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-consoleauth.service to /usr/lib/systemd/system/openstack-nova-consoleauth.service.

Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-scheduler.service to /usr/lib/systemd/system/openstack-nova-scheduler.service.

Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-conductor.service to /usr/lib/systemd/system/openstack-nova-conductor.service.

Created symlink from /etc/systemd/system/multi-user.target.wants/openstack-nova-novncproxy.service to /usr/lib/systemd/system/openstack-nova-novncproxy.service.

[[email protected] ~]# ss -tnl

State      Recv-Q Send-Q                       Local Address:Port                                      Peer Address:Port

LISTEN     0      128                                      *:25672                                                *:*

LISTEN     0      128                          192.168.10.10:3306                                                 *:*

LISTEN     0      128                              127.0.0.1:11211                                                *:*

LISTEN     0      128                                      *:9292                                                 *:*

LISTEN     0      128                                      *:4369                                                 *:*

LISTEN     0      128                                      *:22022                                                *:*

LISTEN     0      128                                      *:9191                                                 *:*

LISTEN     0      128                                     :::5672                                                :::*

LISTEN     0      128                                     :::5000                                                :::*

LISTEN     0      128                                    ::1:11211                                               :::*

LISTEN     0      128                                     :::80                                                  :::*

LISTEN     0      128                                     :::35357                                               :::*

LISTEN     0      128                                     :::22022                                               :::*

[[email protected]controller ~]# systemctl start openstack-nova-api.service \          //nova服务启动后新增端口8774 8775

>   openstack-nova-consoleauth.service openstack-nova-scheduler.service \

>   openstack-nova-conductor.service openstack-nova-novncproxy.service

[[email protected] ~]# ss -tnl

State      Recv-Q Send-Q                       Local Address:Port                                      Peer Address:Port

LISTEN     0      128                                      *:25672                                                *:*

LISTEN     0      128                          192.168.10.10:3306                                                 *:*

LISTEN     0      128                              127.0.0.1:11211                                                *:*

LISTEN     0      128                                      *:9292                                                 *:*

LISTEN     0      128                                      *:4369                                                 *:*

LISTEN     0      100                                      *:6080                                                 *:*

LISTEN     0      128                                      *:8774                                                 *:*

LISTEN     0      128                                      *:22022                                                *:*

LISTEN     0      128                                      *:8775                                                 *:*

LISTEN     0      128                                      *:9191                                                 *:*

LISTEN     0      128                                     :::5672                                                :::*

LISTEN     0      128                                     :::5000                                                :::*

LISTEN     0      128                                    ::1:11211                                               :::*

LISTEN     0      128                                     :::80                                                  :::*

LISTEN     0      128                                     :::35357                                               :::*

LISTEN     0      128                                     :::22022                                               :::*

[[email protected] ~]#

待计算节点成功启动后进行以下操作进行检验

[[email protected] ~]# . admin-openrc

[[email protected] ~]# openstack compute service list  //该输出应该显示三个服务组件在控制节点上启用,一个服务组件在计算节点上启用

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

| Id | Binary           | Host       | Zone     | Status  | State | Updated At                 |

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

|  1 | nova-conductor   | controller | internal | enabled | up    | 2017-07-16T11:28:19.000000 |

|  2 | nova-scheduler   | controller | internal | enabled | up    | 2017-07-16T11:28:19.000000 |

|  3 | nova-consoleauth | controller | internal | enabled | up    | 2017-07-16T11:28:19.000000 |

| 12 | nova-compute     | compute1   | nova     | enabled | up    | 2017-07-16T11:28:27.000000 |

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

[[email protected] ~]#

Networking 服务安装配置(创建私有网络模型(包括公有网络))

网络服务数据库准备

[[email protected] ~]# mysql

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

Your MariaDB connection id is 32

Server version: 10.1.20-MariaDB MariaDB Server

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

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

MariaDB [(none)]> CREATE DATABASE neutron;

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON neutron.* TO ‘neutron‘@‘localhost‘ \

->   IDENTIFIED BY ‘NEUTRON_DBPASS‘;

Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON neutron.* TO ‘neutron‘@‘%‘ \

->   IDENTIFIED BY ‘NEUTRON_DBPASS‘;

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit

Bye

[[email protected] ~]#

创建neutron服务及API

[[email protected] ~]# . admin-openrc

[[email protected] ~]# openstack user create --domain default --password-prompt neutron

User Password:

Repeat User Password:

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

| Field     | Value                            |

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

| domain_id | 3ad6ac5f704c494e9f16b9e04ef745fe |

| enabled   | True                             |

| id        | b457d498a26849a987abaf206445cee2 |

| name      | neutron                          |

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

[[email protected] ~]# openstack role add --project service --user neutron admin

[[email protected] ~]# openstack service create --name neutron \

>   --description "OpenStack Networking" network

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

| Field       | Value                            |

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

| description | OpenStack Networking             |

| enabled     | True                             |

| id          | 8baf1525da9043e6986382c930ff568c |

| name        | neutron                          |

| type        | network                          |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \

>   network public http://controller:9696

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

| Field        | Value                            |

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

| enabled      | True                             |

| id           | 6957aef00e7d40699cd90c76325fa94e |

| interface    | public                           |

| region       | RegionOne                        |

| region_id    | RegionOne                        |

| service_id   | 8baf1525da9043e6986382c930ff568c |

| service_name | neutron                          |

| service_type | network                          |

| url          | http://controller:9696           |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \

>   network internal http://controller:9696

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

| Field        | Value                            |

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

| enabled      | True                             |

| id           | 8975831926f64c3cbf3c667b383d133a |

| interface    | internal                         |

| region       | RegionOne                        |

| region_id    | RegionOne                        |

| service_id   | 8baf1525da9043e6986382c930ff568c |

| service_name | neutron                          |

| service_type | network                          |

| url          | http://controller:9696           |

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

[[email protected] ~]# openstack endpoint create --region RegionOne \

>   network admin http://controller:9696

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

| Field        | Value                            |

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

| enabled      | True                             |

| id           | 60068eea4be246a7bd8880540faed006 |

| interface    | admin                            |

| region       | RegionOne                        |

| region_id    | RegionOne                        |

| service_id   | 8baf1525da9043e6986382c930ff568c |

| service_name | neutron                          |

| service_type | network                          |

| url          | http://controller:9696           |

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

[[email protected] ~]#

安装及修改配置文件

[[email protected] ~]# yum install -y openstack-neutron openstack-neutron-ml2 \

>   openstack-neutron-linuxbridge ebtables

[[email protected] ~]# cp /etc/neutron/neutron.conf{,.bak}

[[email protected] ~]# vim /etc/neutron/neutron.conf

[[email protected] ~]# grep -v ^# /etc/neutron/neutron.conf | tr -s [[:space:]]

[DEFAULT]

core_plugin = ml2

service_plugins = router

allow_overlapping_ips = True

rpc_backend = rabbit

auth_strategy = keystone

notify_nova_on_port_status_changes = True

notify_nova_on_port_data_changes = True

[agent]

[cors]

[cors.subdomain]

[database]

connection = mysql+pymysql://neutron:[email protected]/neutron

[keystone_authtoken]

auth_uri = http://controller:5000

auth_url = http://controller:35357

memcached_servers = controller:11211

auth_type = password

project_domain_name = default

user_domain_name = default

project_name = service

username = neutron

password = NEUTRON_PASS

[matchmaker_redis]

[nova]

auth_url = http://controller:35357

auth_type = password

project_domain_name = default

user_domain_name = default

region_name = RegionOne

project_name = service

username = nova

password = NOVA_PASS

[oslo_concurrency]

lock_path = /var/lib/neutron/tmp

[oslo_messaging_amqp]

[oslo_messaging_notifications]

[oslo_messaging_rabbit]

rabbit_host = controller

rabbit_userid = openstack

rabbit_password = RABBIT_PASS

[oslo_policy]

[qos]

[quotas]

[ssl]

[[email protected] ~]#

二层插件路由网络设备配置  //生产环境中要想使用比较复杂的网络环境时需要使用openswitch组件

[[email protected] ~]# cp /etc/neutron/plugins/ml2/ml2_conf.ini{,.bak}

[[email protected] ~]# vim /etc/neutron/plugins/ml2/ml2_conf.ini

[[email protected] ~]# grep -v ^# /etc/neutron/plugins/ml2/ml2_conf.ini | tr -s [[:space:]]

[DEFAULT]

[ml2]

type_drivers = flat,vlan,vxlan

tenant_network_types = vxlan

mechanism_drivers = linuxbridge,l2population

extension_drivers = port_security

[ml2_type_flat]

flat_networks = provider

[ml2_type_geneve]

[ml2_type_gre]

[ml2_type_vlan]

[ml2_type_vxlan]

vni_ranges = 1:1000

[securitygroup]

enable_ipset = True

[[email protected] ~]#

linuxbridge代理端配置

[[email protected] ~]# cp /etc/neutron/plugins/ml2/linuxbridge_agent.ini{,.bak}

[[email protected] ~]# vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini

[[email protected] ~]# grep -v ^# /etc/neutron/plugins/ml2/linuxbridge_agent.ini | tr -s [[:space:]]

[DEFAULT]

[agent]

[linux_bridge]

physical_interface_mappings = provider:eth1

[securitygroup]

enable_security_group = True

firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

[vxlan]

enable_vxlan = True

local_ip = 192.168.10.10

l2_population = True

[[email protected] ~]#

3层nat路由代理配置

[[email protected] ~]# cp /etc/neutron/l3_agent.ini{,.bak}

[root[email protected] ~]# vim /etc/neutron/l3_agent.ini

[[email protected] ~]# grep -v ^# /etc/neutron/l3_agent.ini | tr -s [[:space:]]

[DEFAULT]

interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver

external_network_bridge =

[AGENT]

[[email protected] ~]#

dhcp代理配置

[[email protected] ~]# cp /etc/neutron/dhcp_agent.ini{,.bak}

[[email protected] ~]# vim /etc/neutron/dhcp_agent.ini

[[email protected] ~]# grep -v ^# /etc/neutron/dhcp_agent.ini | tr -s [[:space:]]

[DEFAULT]

interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver

dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq

enable_isolated_metadata = True

[AGENT]

[[email protected] ~]#

元数据代理配置

[[email protected] ~]# cp /etc/neutron/metadata_agent.ini{,.bak}

[[email protected] ~]# vim /etc/neutron/metadata_agent.ini

[[email protected] ~]# grep -v ^# /etc/neutron/metadata_agent.ini | tr -s [[:space:]]

[DEFAULT]

nova_metadata_ip = controller

metadata_proxy_shared_secret = METADATA_SECRET

[AGENT]

[[email protected] ~]#

网络配置完成后再次编辑计算服务配置文件

[[email protected] ~]# vim /etc/nova/nova.conf

追加以下内容

url = http://controller:9696

auth_url = http://controller:35357

auth_type = password

project_domain_name = default

user_domain_name = default

region_name = RegionOne

project_name = service

username = neutron

password = NEUTRON_PASS

service_metadata_proxy = True

metadata_proxy_shared_secret = METADATA_SECRET

创建链接文件

[[email protected] ~]# ll /etc/neutron/plugin.ini

ls: cannot access /etc/neutron/plugin.ini: No such file or directory

[[email protected] ~]# ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini

[[email protected] ~]# ll /etc/neutron/plugin.ini

lrwxrwxrwx 1 root root 37 Jul 16 22:07 /etc/neutron/plugin.ini -> /etc/neutron/plugins/ml2/ml2_conf.ini

[[email protected] ~]#

初始化neutron数据库

[[email protected] ~]# su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf \

>   --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron

No handlers could be found for logger "oslo_config.cfg"

INFO  [alembic.runtime.migration] Context impl MySQLImpl.

INFO  [alembic.runtime.migration] Will assume non-transactional DDL.

Running upgrade for neutron ...

INFO  [alembic.runtime.migration] Context impl MySQLImpl.

INFO  [alembic.runtime.migration] Will assume non-transactional DDL.

INFO  [alembic.runtime.migration] Running upgrade  -> kilo, kilo_initial

INFO  [alembic.runtime.migration] Running upgrade kilo -> 354db87e3225, nsxv_vdr_metadata.py

INFO  [alembic.runtime.migration] Running upgrade 354db87e3225 -> 599c6a226151, neutrodb_ipam

INFO  [alembic.runtime.migration] Running upgrade 599c6a226151 -> 52c5312f6baf, Initial operations in support of address scopes

INFO  [alembic.runtime.migration] Running upgrade 52c5312f6baf -> 313373c0ffee, Flavor framework

INFO  [alembic.runtime.migration] Running upgrade 313373c0ffee -> 8675309a5c4f, network_rbac

INFO  [alembic.runtime.migration] Running upgrade 8675309a5c4f -> 45f955889773, quota_usage

INFO  [alembic.runtime.migration] Running upgrade 45f955889773 -> 26c371498592, subnetpool hash

INFO  [alembic.runtime.migration] Running upgrade 26c371498592 -> 1c844d1677f7, add order to dnsnameservers

INFO  [alembic.runtime.migration] Running upgrade 1c844d1677f7 -> 1b4c6e320f79, address scope support in subnetpool

INFO  [alembic.runtime.migration] Running upgrade 1b4c6e320f79 -> 48153cb5f051, qos db changes

INFO  [alembic.runtime.migration] Running upgrade 48153cb5f051 -> 9859ac9c136, quota_reservations

INFO  [alembic.runtime.migration] Running upgrade 9859ac9c136 -> 34af2b5c5a59, Add dns_name to Port

INFO  [alembic.runtime.migration] Running upgrade 34af2b5c5a59 -> 59cb5b6cf4d, Add availability zone

INFO  [alembic.runtime.migration] Running upgrade 59cb5b6cf4d -> 13cfb89f881a, add is_default to subnetpool

INFO  [alembic.runtime.migration] Running upgrade 13cfb89f881a -> 32e5974ada25, Add standard attribute table

INFO  [alembic.runtime.migration] Running upgrade 32e5974ada25 -> ec7fcfbf72ee, Add network availability zone

INFO  [alembic.runtime.migration] Running upgrade ec7fcfbf72ee -> dce3ec7a25c9, Add router availability zone

INFO  [alembic.runtime.migration] Running upgrade dce3ec7a25c9 -> c3a73f615e4, Add ip_version to AddressScope

INFO  [alembic.runtime.migration] Running upgrade c3a73f615e4 -> 659bf3d90664, Add tables and attributes to support external DNS integration

INFO  [alembic.runtime.migration] Running upgrade 659bf3d90664 -> 1df244e556f5, add_unique_ha_router_agent_port_bindings

INFO  [alembic.runtime.migration] Running upgrade 1df244e556f5 -> 19f26505c74f, Auto Allocated Topology - aka Get-Me-A-Network

INFO  [alembic.runtime.migration] Running upgrade 19f26505c74f -> 15be73214821, add dynamic routing model data

INFO  [alembic.runtime.migration] Running upgrade 15be73214821 -> b4caf27aae4, add_bgp_dragent_model_data

INFO  [alembic.runtime.migration] Running upgrade b4caf27aae4 -> 15e43b934f81, rbac_qos_policy

INFO  [alembic.runtime.migration] Running upgrade 15e43b934f81 -> 31ed664953e6, Add resource_versions row to agent table

INFO  [alembic.runtime.migration] Running upgrade 31ed664953e6 -> 2f9e956e7532, tag support

INFO  [alembic.runtime.migration] Running upgrade 2f9e956e7532 -> 3894bccad37f, add_timestamp_to_base_resources

INFO  [alembic.runtime.migration] Running upgrade 3894bccad37f -> 0e66c5227a8a, Add desc to standard attr table

INFO  [alembic.runtime.migration] Running upgrade kilo -> 30018084ec99, Initial no-op Liberty contract rule.

INFO  [alembic.runtime.migration] Running upgrade 30018084ec99 -> 4ffceebfada, network_rbac

INFO  [alembic.runtime.migration] Running upgrade 4ffceebfada -> 5498d17be016, Drop legacy OVS and LB plugin tables

INFO  [alembic.runtime.migration] Running upgrade 5498d17be016 -> 2a16083502f3, Metaplugin removal

INFO  [alembic.runtime.migration] Running upgrade 2a16083502f3 -> 2e5352a0ad4d, Add missing foreign keys

INFO  [alembic.runtime.migration] Running upgrade 2e5352a0ad4d -> 11926bcfe72d, add geneve ml2 type driver

INFO  [alembic.runtime.migration] Running upgrade 11926bcfe72d -> 4af11ca47297, Drop cisco monolithic tables

INFO  [alembic.runtime.migration] Running upgrade 4af11ca47297 -> 1b294093239c, Drop embrane plugin table

INFO  [alembic.runtime.migration] Running upgrade 1b294093239c -> 8a6d8bdae39, standardattributes migration

INFO  [alembic.runtime.migration] Running upgrade 8a6d8bdae39 -> 2b4c2465d44b, DVR sheduling refactoring

INFO  [alembic.runtime.migration] Running upgrade 2b4c2465d44b -> e3278ee65050, Drop NEC plugin tables

INFO  [alembic.runtime.migration] Running upgrade e3278ee65050 -> c6c112992c9, rbac_qos_policy

INFO  [alembic.runtime.migration] Running upgrade c6c112992c9 -> 5ffceebfada, network_rbac_external

INFO  [alembic.runtime.migration] Running upgrade 5ffceebfada -> 4ffceebfcdc, standard_desc

OK

[[email protected] ~]# mysql -e "show tables from neutron"

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

| Tables_in_neutron                       |

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

| address_scopes                          |

| agents                                  |

| alembic_version                         |

| allowedaddresspairs                     |

| arista_provisioned_nets                 |

| arista_provisioned_tenants              |

| arista_provisioned_vms                  |

| auto_allocated_topologies               |

| bgp_peers                               |

| bgp_speaker_dragent_bindings            |

| bgp_speaker_network_bindings            |

| bgp_speaker_peer_bindings               |

| bgp_speakers                            |

| brocadenetworks                         |

| brocadeports                            |

| cisco_csr_identifier_map                |

| cisco_hosting_devices                   |

| cisco_ml2_apic_contracts                |

| cisco_ml2_apic_host_links               |

| cisco_ml2_apic_names                    |

| cisco_ml2_n1kv_network_bindings         |

| cisco_ml2_n1kv_network_profiles         |

| cisco_ml2_n1kv_policy_profiles          |

| cisco_ml2_n1kv_port_bindings            |

| cisco_ml2_n1kv_profile_bindings         |

| cisco_ml2_n1kv_vlan_allocations         |

| cisco_ml2_n1kv_vxlan_allocations        |

| cisco_ml2_nexus_nve                     |

| cisco_ml2_nexusport_bindings            |

| cisco_port_mappings                     |

| cisco_router_mappings                   |

| consistencyhashes                       |

| default_security_group                  |

| dnsnameservers                          |

| dvr_host_macs                           |

| externalnetworks                        |

| extradhcpopts                           |

| firewall_policies                       |

| firewall_rules                          |

| firewalls                               |

| flavors                                 |

| flavorserviceprofilebindings            |

| floatingipdnses                         |

| floatingips                             |

| ha_router_agent_port_bindings           |

| ha_router_networks                      |

| ha_router_vrid_allocations              |

| healthmonitors                          |

| ikepolicies                             |

| ipallocationpools                       |

| ipallocations                           |

| ipamallocationpools                     |

| ipamallocations                         |

| ipamavailabilityranges                  |

| ipamsubnets                             |

| ipavailabilityranges                    |

| ipsec_site_connections                  |

| ipsecpeercidrs                          |

| ipsecpolicies                           |

| lsn                                     |

| lsn_port                                |

| maclearningstates                       |

| members                                 |

| meteringlabelrules                      |

| meteringlabels                          |

| ml2_brocadenetworks                     |

| ml2_brocadeports                        |

| ml2_dvr_port_bindings                   |

| ml2_flat_allocations                    |

| ml2_geneve_allocations                  |

| ml2_geneve_endpoints                    |

| ml2_gre_allocations                     |

| ml2_gre_endpoints                       |

| ml2_network_segments                    |

| ml2_nexus_vxlan_allocations             |

| ml2_nexus_vxlan_mcast_groups            |

| ml2_port_binding_levels                 |

| ml2_port_bindings                       |

| ml2_ucsm_port_profiles                  |

| ml2_vlan_allocations                    |

| ml2_vxlan_allocations                   |

| ml2_vxlan_endpoints                     |

| multi_provider_networks                 |

| networkconnections                      |

| networkdhcpagentbindings                |

| networkdnsdomains                       |

| networkgatewaydevicereferences          |

| networkgatewaydevices                   |

| networkgateways                         |

| networkqueuemappings                    |

| networkrbacs                            |

| networks                                |

| networksecuritybindings                 |

| neutron_nsx_network_mappings            |

| neutron_nsx_port_mappings               |

| neutron_nsx_router_mappings             |

| neutron_nsx_security_group_mappings     |

| nexthops                                |

| nsxv_edge_dhcp_static_bindings          |

| nsxv_edge_vnic_bindings                 |

| nsxv_firewall_rule_bindings             |

| nsxv_internal_edges                     |

| nsxv_internal_networks                  |

| nsxv_port_index_mappings                |

| nsxv_port_vnic_mappings                 |

| nsxv_router_bindings                    |

| nsxv_router_ext_attributes              |

| nsxv_rule_mappings                      |

| nsxv_security_group_section_mappings    |

| nsxv_spoofguard_policy_network_mappings |

| nsxv_tz_network_bindings                |

| nsxv_vdr_dhcp_bindings                  |

| nuage_net_partition_router_mapping      |

| nuage_net_partitions                    |

| nuage_provider_net_bindings             |

| nuage_subnet_l2dom_mapping              |

| poolloadbalanceragentbindings           |

| poolmonitorassociations                 |

| pools                                   |

| poolstatisticss                         |

| portbindingports                        |

| portdnses                               |

| portqueuemappings                       |

| ports                                   |

| portsecuritybindings                    |

| providerresourceassociations            |

| qos_bandwidth_limit_rules               |

| qos_network_policy_bindings             |

| qos_policies                            |

| qos_port_policy_bindings                |

| qospolicyrbacs                          |

| qosqueues                               |

| quotas                                  |

| quotausages                             |

| reservations                            |

| resourcedeltas                          |

| router_extra_attributes                 |

| routerl3agentbindings                   |

| routerports                             |

| routerroutes                            |

| routerrules                             |

| routers                                 |

| securitygroupportbindings               |

| securitygrouprules                      |

| securitygroups                          |

| serviceprofiles                         |

| sessionpersistences                     |

| standardattributes                      |

| subnetpoolprefixes                      |

| subnetpools                             |

| subnetroutes                            |

| subnets                                 |

| tags                                    |

| tz_network_bindings                     |

| vcns_router_bindings                    |

| vips                                    |

| vpnservices                             |

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

[[email protected] ~]#

重启nova-api服务

[[email protected] ~]# systemctl restart openstack-nova-api.service

启用并启动私有网络模型的所有服务

[[email protected] ~]# ss -tnl

State      Recv-Q Send-Q                       Local Address:Port                                      Peer Address:Port

LISTEN     0      128                                      *:25672                                                *:*

LISTEN     0      128                          192.168.10.10:3306                                                 *:*

LISTEN     0      128                              127.0.0.1:11211                                                *:*

LISTEN     0      128                                      *:9292                                                 *:*

LISTEN     0      128                                      *:4369                                                 *:*

LISTEN     0      100                                      *:6080                                                 *:*

LISTEN     0      128                                      *:8774                                                 *:*

LISTEN     0      128                                      *:22022                                                *:*

LISTEN     0      128                                      *:8775                                                 *:*

LISTEN     0      128                                      *:9191                                                 *:*

LISTEN     0      128                                     :::5672                                                :::*

LISTEN     0      128                                     :::5000                                                :::*

LISTEN     0      128                                    ::1:11211                                               :::*

LISTEN     0      128                                     :::80                                                  :::*

LISTEN     0      128                                     :::35357                                               :::*

LISTEN     0      128                                     :::22022                                               :::*

[[email protected] ~]# systemctl enable neutron-server.service \

>   neutron-linuxbridge-agent.service neutron-dhcp-agent.service \

>   neutron-metadata-agent.service neutron-l3-agent.service

Created symlink from /etc/systemd/system/multi-user.target.wants/neutron-server.service to /usr/lib/systemd/system/neutron-server.service.

Created symlink from /etc/systemd/system/multi-user.target.wants/neutron-linuxbridge-agent.service to /usr/lib/systemd/system/neutron-linuxbridge-agent.service.

Created symlink from /etc/systemd/system/multi-user.target.wants/neutron-dhcp-agent.service to /usr/lib/systemd/system/neutron-dhcp-agent.service.

Created symlink from /etc/systemd/system/multi-user.target.wants/neutron-metadata-agent.service to /usr/lib/systemd/system/neutron-metadata-agent.service.

Created symlink from /etc/systemd/system/multi-user.target.wants/neutron-l3-agent.service to /usr/lib/systemd/system/neutron-l3-agent.service.

[[email protected] ~]# systemctl start neutron-server.service \

>   neutron-linuxbridge-agent.service neutron-dhcp-agent.service \

>   neutron-metadata-agent.service neutron-l3-agent.service  //服务启动成功后会多出9696端口

[[email protected] ~]# ss -tnl

State      Recv-Q Send-Q                       Local Address:Port                                      Peer Address:Port

LISTEN     0      128                                      *:25672                                                *:*

LISTEN     0      128                          192.168.10.10:3306                                                 *:*

LISTEN     0      128                              127.0.0.1:11211                                                *:*

LISTEN     0      128                                      *:9292                                                 *:*

LISTEN     0      128                                      *:4369                                                 *:*

LISTEN     0      128                                      *:9696                                                 *:*

LISTEN     0      100                                      *:6080                                                 *:*

LISTEN     0      128                                      *:8774                                                 *:*

LISTEN     0      128                                      *:22022                                                *:*

LISTEN     0      128                                      *:8775                                                 *:*

LISTEN     0      128                                      *:9191                                                 *:*

LISTEN     0      128                                     :::5672                                                :::*

LISTEN     0      128                                     :::5000                                                :::*

LISTEN     0      128                                    ::1:11211                                               :::*

LISTEN     0      128                                     :::80                                                  :::*

LISTEN     0      128                                     :::35357                                               :::*

LISTEN     0      128                                     :::22022                                               :::*

[[email protected] ~]#

前往计算节点配置网络

配置完计算节点网络后继续以下步骤验证网络服务配置

[[email protected] ~]# . admin-openrc

[[email protected] ~]# neutron ext-list  //列出加载的扩展来验证 neutron-server 进程是否正常启动

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

| alias                     | name                                          |

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

| default-subnetpools       | Default Subnetpools                           |

| network-ip-availability   | Network IP Availability                       |

| network_availability_zone | Network Availability Zone                     |

| auto-allocated-topology   | Auto Allocated Topology Services              |

| ext-gw-mode               | Neutron L3 Configurable external gateway mode |

| binding                   | Port Binding                                  |

| agent                     | agent                                         |

| subnet_allocation         | Subnet Allocation                             |

| l3_agent_scheduler        | L3 Agent Scheduler                            |

| tag                       | Tag support                                   |

| external-net              | Neutron external network                      |

| net-mtu                   | Network MTU                                   |

| availability_zone         | Availability Zone                             |

| quotas                    | Quota management support                      |

| l3-ha                     | HA Router extension                           |

| provider                  | Provider Network                              |

| multi-provider            | Multi Provider Network                        |

| address-scope             | Address scope                                 |

| extraroute                | Neutron Extra Route                           |

| timestamp_core            | Time Stamp Fields addition for core resources |

| router                    | Neutron L3 Router                             |

| extra_dhcp_opt            | Neutron Extra DHCP opts                       |

| security-group            | security-group                                |

| dhcp_agent_scheduler      | DHCP Agent Scheduler                          |

| router_availability_zone  | Router Availability Zone                      |

| rbac-policies             | RBAC Policies                                 |

| standard-attr-description | standard-attr-description                     |

| port-security             | Port Security                                 |

| allowed-address-pairs     | Allowed Address Pairs                         |

| dvr                       | Distributed Virtual Router                    |

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

[[email protected] ~]# neutron agent-list  //列出代理以验证启动 neutron 代理是否成功(如果仅是公共网络,会少L3 agent这一条)

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

| id                                   | agent_type         | host       | availability_zone | alive | admin_state_up | binary                    |

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

| a86bbd06-5b67-44c7-b9a0-819fc4b7c9bc | Linux bridge agent | controller |                   | :-)   | True           | neutron-linuxbridge-agent |

| cdd100fc-ee7d-4821-beb1-4cbd0fc9bb15 | L3 agent           | controller | nova              | :-)   | True           | neutron-l3-agent          |

| e0ba9b79-76db-4539-b980-1652411580a1 | Linux bridge agent | compute1   |                   | :-)   | True           | neutron-linuxbridge-agent |

| e146eeb9-07b4-4ec2-9312-c522e714629e | Metadata agent     | controller |                   | :-)   | True           | neutron-metadata-agent    |

| f7dde89e-d6f5-4b8c-8ce2-88a2ad218f32 | DHCP agent         | controller | nova              | :-)   | True           | neutron-dhcp-agent        |

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

[[email protected] ~]#

nova和neutron服务需要计算节点配置的还比较多,要想能够启动实例crontroller上还需要等compute节点安装配置完成后,再回来创建好实例启动需要的网络环境后方可进行。

时间: 2024-08-04 18:38:00

openstack安装配置—— controller node配置的相关文章

Openstack组件部署 — Networking service_安装并配置Controller Node

目录 目录 前文列表 前提条件 完成下面的步骤以创建数据库 创建service credentials服务凭证 创建Neutron的API Endpoints 配置自服务网络 安装网络组件 配置服务组件 配置 Modular Layer 2 ML2 插件 配置Linux 桥接代理 配置layer-3代理 配置DHCP代理 配置元数据代理 配置计算使用网络 完成安装 前文列表 Openstack组件部署 - Overview和前期环境准备 Openstack组建部署 - Environment o

Openstack组件部署 — Nova_安装和配置Controller Node

目录 目录 前文列表 Prerequisites 先决条件 To create the databases To create the service credentials Create the Compute service API endpoints Install and configure components Install the packages Edit the etcnovanovaconf file Populate the Compute databases Finali

openstack安装配置—— block node配置

    对于云主机来说,机器可以随时销毁再创建,但数据一定不能,所以就需要数据的持久存储,openstack官方给出的数据存储方案就是cinder模块,cinder模块需要cinder服务端和cinder存储节点共同构成,在本实验中,我们把cinder服务端一并安装在了controller节点上,另行配置一台cinder存储节点,也就是我们的block节点. block节点基础配置 [[email protected] ~]# lscpu Architecture:          x86_6

openstack安装配置—— compute node配置

    计算节点需要配置的主要是nova和neutron的客户端,控制节点在进行资源调度及配置时需要计算节点配合方能实现的,计算节点配置内容相对较少,实际生产环境中,需要配置的计算节点数量相当庞大,那么我们就需要借助ansible或者puppet这样的自动化工具进行了,   废话不多讲,直接进入配置状态. compute节点基础配置 [[email protected] ~]# lscpu Architecture:          x86_64 CPU op-mode(s):        

一键安装openstack juno 之controller node.

原文名称: OpenStack Juno Scripted Installation on CentOS 7 Step I:  本机信息配置 CONTROLLER_IP=192.168.173.133ADMIN_TOKEN=ADMIN123SERVICE_PWD=Service123ADMIN_PWD=password #this host IP infoTHISHOST_NAME=juno-controllerTHISHOST_IP=192.168.173.133THISHOST_NETMAS

openstack安装配置(二)

增加image - 前期准备(controller) image又叫做glance,是用来管理镜像的一个组件,我们用镜像来安装操作系统.glance支持让用户自己管理自定义镜像. 创建glance库和用户 mysql -uroot -ptn1Pi6Ytm > CREATE database  glance; > GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost'    IDENTIFIED BY 'Zznky4tP0'; >

openstack安装配置(三)

增加Networking - 前期准备(controller) Networking又叫做Neutron,是Openstack必不可少的组件,它其实是网络虚拟化的实现工具,可以让我们模拟出路由器.交换机.网卡等网络设备. Neutron支持两种网络模式,第一种是非常简单的网络架构,它仅支持是让实例连接外网,不支持自定义网络.路由器以及浮动ip.只有管理员或者授权的用户有权限去管理网络.第二种网络功能比较强大,支持自定义网络管理,支持自建路由器并且也支持浮动ip.即使没有授权的用户也可以管理网络,

OpenStack安装与配置2

第二部分 OpenStack安装与配置 一.引言 本章内容讲解如何在3台物理机上搭建最小化云平台,这3台机器分为称为Server1.Server2和Client1,之后的各章也是如此.Server1承载着Nova.Glance.Swift.Keystone及Horizon(OpenStack的Web UI)服务.Server2只用来运行实例管理的nova运算工作站.由于OpenStack组件采用分布式结构,其中的任何一部分或几个部分都可以安装在任意服务器上. Client1并不是安装所必须的,在

三、安装并配置Kubernetes Node节点

1. 安装并配置Kubernetes Node节点 1.1 安装Kubernetes Node节点所需服务 yum -y install kubernetes ? 通过yum安装kubernetes服务时默认将所有的Kubernetes服务全部安装,我们只需要在Master和Node上启动相应的服务即可. 1.2 修改Kubernetes服务配置文件 vim /etc/kubernetes/config KUBE_LOGTOSTDERR="--logtostderr=true" KUB