[Openstack] What is the difference between provider network and	tenant network?
    Danny Choi (dannchoi) 
    dannchoi at cisco.com
       
    Fri Oct  3 01:14:08 UTC 2014
    
    
  
Hi,
I used devstack to deploy Juno OpenStack.
By default, devstack created 2 users: admin (with role “admin”) and demo.
ubuntu at trusty1:~/devstack$ source openrc admin admin
ubuntu at trusty1:~/devstack$ keystone user-list
+----------------------------------+---------+---------+------------------+
|                id                |   name  | enabled |      email       |
+----------------------------------+---------+---------+------------------+
| 3f09f4a2e2e5476681f7726d1bd7a238 |  admin  |   True  |                  |   <<<<<
| f9b63fc02a2c41c4a99508215d34698e |  cinder |   True  |                  |
| b31235476f904c968a48a6ed13a4423d |   demo  |   True  | demo at example.com |   <<<<<
| 1379192fe5f7427db0b9550f31ae3c8d |  glance |   True  |                  |
| 349ef723ec7e40c6bd4b8d8284696a04 |   heat  |   True  |                  |
| db2c4d82c9154d4eb58b3308041e8280 | neutron |   True  |                  |
| 87becace86e2459493a5e692b47374a8 |   nova  |   True  |                  |
+----------------------------------+---------+---------+—————————+
ubuntu at trusty1:~/devstack$ keystone user-role-list --user admin --tenant admin
+----------------------------------+------------------+----------------------------------+----------------------------------+
|                id                |       name       |             user_id              |            tenant_id             |
+----------------------------------+------------------+----------------------------------+----------------------------------+
| 9fe2ff9ee4384b1894a90878d3e92bab |     _member_     | 3f09f4a2e2e5476681f7726d1bd7a238 | db81f81239f54d5d89293dacc7a284d2 |
| 2c9362c08a224154bdcaeee35d740ddc |      admin       | 3f09f4a2e2e5476681f7726d1bd7a238 | db81f81239f54d5d89293dacc7a284d2 |   <<<<<
| b2419a321cae46ab9d11d2e126502271 | heat_stack_owner | 3f09f4a2e2e5476681f7726d1bd7a238 | db81f81239f54d5d89293dacc7a284d2 |
+----------------------------------+------------------+----------------------------------+----------------------------------+
ubuntu at trusty1:~/devstack$ keystone user-role-list --user demo --tenant demo
+----------------------------------+------------------+----------------------------------+----------------------------------+
|                id                |       name       |             user_id              |            tenant_id             |
+----------------------------------+------------------+----------------------------------+----------------------------------+
| 12ff05c09c5d4d1a8cf15d35f84f7a75 |      Member      | b31235476f904c968a48a6ed13a4423d | 181003e05ad44b688925372d97b985c0 |
| 9fe2ff9ee4384b1894a90878d3e92bab |     _member_     | b31235476f904c968a48a6ed13a4423d | 181003e05ad44b688925372d97b985c0 |
| 21fcd6d7847f44e6a3b9ad777a27f811 |   anotherrole    | b31235476f904c968a48a6ed13a4423d | 181003e05ad44b688925372d97b985c0 |
| b2419a321cae46ab9d11d2e126502271 | heat_stack_owner | b31235476f904c968a48a6ed13a4423d | 181003e05ad44b688925372d97b985c0 |
+----------------------------------+------------------+----------------------------------+----------------------------------+
There are 2 networks created, public (tenant = admin) and private (tenant = demo).
ubuntu at trusty1:~/devstack$ keystone tenant-list
+----------------------------------+--------------------+---------+
|                id                |        name        | enabled |
+----------------------------------+--------------------+---------+
| db81f81239f54d5d89293dacc7a284d2 |       admin        |   True  |   <<<<<
| 181003e05ad44b688925372d97b985c0 |        demo        |   True  |   <<<<<
| f170d762ab2c471d9a9f522116f8a178 | invisible_to_admin |   True  |
| d500c4a4ec3d459abfe665bfb886a881 |      service       |   True  |
+----------------------------------+--------------------+---------+
ubuntu at trusty1:~/devstack$ neutron net-list
+--------------------------------------+---------+----------------------------------------------------+
| id                                   | name    | subnets                                            |
+--------------------------------------+---------+----------------------------------------------------+
| 5e05170c-ae6c-4b60-8f59-8a6988705ff2 | public  | 3eb289a4-9686-4a94-a928-8d5ae23b1dd6 172.24.4.0/24 |
| b18a4a3f-7167-4c61-87f5-b21f87118160 | private | 3f5b84c5-937e-44ae-b645-64758386a501 10.0.0.0/24   |
+--------------------------------------+---------+----------------------------------------------------+
ubuntu at trusty1:~/devstack$ neutron net-show public
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | True                                 |
| id                        | 5e05170c-ae6c-4b60-8f59-8a6988705ff2 |
| name                      | public                               |
| provider:network_type     | vlan                                 |
| provider:physical_network | physnet1                             |
| provider:segmentation_id  | 391                                  |
| router:external           | True                                 |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   | 3eb289a4-9686-4a94-a928-8d5ae23b1dd6 |
| tenant_id                 | db81f81239f54d5d89293dacc7a284d2     |   <<<<<
+---------------------------+--------------------------------------+
ubuntu at trusty1:~/devstack$ neutron net-show private
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | True                                 |
| id                        | b18a4a3f-7167-4c61-87f5-b21f87118160 |
| name                      | private                              |
| provider:network_type     | vlan                                 |
| provider:physical_network | physnet1                             |
| provider:segmentation_id  | 390                                  |
| router:external           | False                                |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   | 3f5b84c5-937e-44ae-b645-64758386a501 |
| tenant_id                 | 181003e05ad44b688925372d97b985c0     |   <<<<<
+---------------------------+--------------------------------------+
Notice both networks contain the provider info:
  *   provider:network_type
  *   provider:physical_network
  *   provider:segmentation_id
However, if I change the credentials to demo, these provider info disappear.
ubuntu at trusty1:~/devstack$ source openrc demo demo
ubuntu at trusty1:~/devstack$ neutron net-list
+--------------------------------------+---------+--------------------------------------------------+
| id                                   | name    | subnets                                          |
+--------------------------------------+---------+--------------------------------------------------+
| 5e05170c-ae6c-4b60-8f59-8a6988705ff2 | public  | 3eb289a4-9686-4a94-a928-8d5ae23b1dd6             |
| b18a4a3f-7167-4c61-87f5-b21f87118160 | private | 3f5b84c5-937e-44ae-b645-64758386a501 10.0.0.0/24 |
+--------------------------------------+---------+--------------------------------------------------+
ubuntu at trusty1:~/devstack$ neutron net-show public
+-----------------+--------------------------------------+
| Field           | Value                                |
+-----------------+--------------------------------------+
| admin_state_up  | True                                 |
| id              | 5e05170c-ae6c-4b60-8f59-8a6988705ff2 |
| name            | public                               |
| router:external | True                                 |
| shared          | False                                |
| status          | ACTIVE                               |
| subnets         | 3eb289a4-9686-4a94-a928-8d5ae23b1dd6 |
| tenant_id       | db81f81239f54d5d89293dacc7a284d2     |
+-----------------+--------------------------------------+
ubuntu at trusty1:~/devstack$ neutron net-show private
+-----------------+--------------------------------------+
| Field           | Value                                |
+-----------------+--------------------------------------+
| admin_state_up  | True                                 |
| id              | b18a4a3f-7167-4c61-87f5-b21f87118160 |
| name            | private                              |
| router:external | False                                |
| shared          | False                                |
| status          | ACTIVE                               |
| subnets         | 3f5b84c5-937e-44ae-b645-64758386a501 |
| tenant_id       | 181003e05ad44b688925372d97b985c0     |
+-----------------+--------------------------------------+
Why the provider info does not exist?
Also, as user demo, I cannot create a network with the provider info specified, which is possible if it is user admin.  Why?
ubuntu at trusty1:~/devstack$ source openrc demo demo
ubuntu at trusty1:~/devstack$ neutron net-create demo_network --provider:network_type vlan --provider:physical_network physnet1 --provider:segmentation_id 399
Forbidden (HTTP 403) (Request-ID: req-fd2453a8-f82b-410c-9085-e487a4a29694)       <<<<<
ubuntu at trusty1:~/devstack$ source openrc admin admin
ubuntu at trusty1:~/devstack$ neutron net-create admin_network --provider:network_type vlan --provider:physical_network physnet1 --provider:segmentation_id 399
Created a new network:
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | True                                 |
| id                        | df176962-8c61-4621-ac3a-e978a56b1933 |
| name                      | admin_network                        |
| provider:network_type     | vlan                                 |
| provider:physical_network | physnet1                             |
| provider:segmentation_id  | 399                                  |
| router:external           | False                                |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tenant_id                 | db81f81239f54d5d89293dacc7a284d2     |
+---------------------------+--------------------------------------+
ubuntu at trusty1:~/devstack$ neutron net-show admin_network
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | True                                 |
| id                        | df176962-8c61-4621-ac3a-e978a56b1933 |
| name                      | admin_network                        |
| provider:network_type     | vlan                                 |
| provider:physical_network | physnet1                             |
| provider:segmentation_id  | 399                                  |
| router:external           | False                                |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tenant_id                 | db81f81239f54d5d89293dacc7a284d2     |
+---------------------------+--------------------------------------+
Is it true that to create a provider network, the user has to have the “admin” role?
###########
Also, in Horizon dashboard, I logged in as user admin.
>From the Projects pulldown, select admin.
At the left pane, Project->Network->Networks, only the “public" network is shown.
Admin->System->Networks, both “public” and “private” networks are shown.
>From the Projects pulldown, select demo.
At the left pane, Project->Network->Networks, only the “private" network is shown.
Admin->System->Networks, both “public” and “private” networks are shown.
Is this an expected behavior?
Thanks,
Danny
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20141003/605cc4c7/attachment.html>
    
    
More information about the Openstack
mailing list