[install-guide] replace command 'keystone' with 'openstack'

Replace deprecated python-keystoneclient commands with
python-openstackclient commands.

Partially implements bp installguide-kilo.

Change-Id: I7fb17c5519efb3b729e183a05fcc4e306fa4d312
This commit is contained in:
Christian Berendt 2015-04-17 08:07:10 +02:00 committed by Matthew Kassawara
parent d3c569f12c
commit 1921f35b37
12 changed files with 381 additions and 203 deletions

View File

@ -117,31 +117,67 @@ connecting to: controller:27017/test
<substeps>
<step>
<para>Create the <literal>ceilometer</literal> user:</para>
<screen><prompt>$</prompt> <userinput>keystone user-create --name ceilometer --pass <replaceable>CEILOMETER_PASS</replaceable></userinput></screen>
<para>Replace <replaceable>CEILOMETER_PASS</replaceable> with a
suitable password.</para>
<screen><prompt>$</prompt> <userinput>openstack user create --password-prompt ceilometer</userinput>
<computeroutput>User Password:
Repeat User Password:
+----------+----------------------------------+
| Field | Value |
+----------+----------------------------------+
| email | None |
| enabled | True |
| id | b7657c9ea07a4556aef5d34cf70713a3 |
| name | ceilometer |
| username | ceilometer |
+----------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Add the <literal>admin</literal> role to the
<literal>ceilometer</literal> user.</para>
<screen><prompt>$</prompt> <userinput>keystone user-role-add --user ceilometer --tenant service --role admin</userinput></screen>
<screen><prompt>$</prompt> <userinput>openstack role add --project service --user ceilometer admin</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| name | admin |
+-------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Create the <literal>ceilometer</literal> service
entity:</para>
<screen><prompt>$</prompt> <userinput>keystone service-create --name ceilometer --type metering \
--description "Telemetry"</userinput></screen>
<screen><prompt>$</prompt> <userinput>openstack service create --type metering \
--description "Telemetry" ceilometer</userinput>
<computeroutput>+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | Telemetry |
| enabled | True |
| id | 3405453b14da441ebb258edfeba96d83 |
| name | ceilometer |
| type | metering |
+-------------+----------------------------------+</computeroutput></screen>
</step>
</substeps>
</step>
<step>
<para>Create the Telemetry module API endpoint:</para>
<screen><prompt>$</prompt> <userinput>keystone endpoint-create \
--service-id $(keystone service-list | awk '/ metering / {print $2}') \
<screen><prompt>$</prompt> <userinput>openstack endpoint create \
--publicurl http://<replaceable>controller</replaceable>:8777 \
--internalurl http://<replaceable>controller</replaceable>:8777 \
--adminurl http://<replaceable>controller</replaceable>:8777</userinput> \
--region regionOne</screen>
--adminurl http://<replaceable>controller</replaceable>:8777 \
--region regionOne \
metering</userinput>
<computeroutput>+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| adminurl | http://controller:8777 |
| id | d3716d85b10d4e60a67a52c6af0068cd |
| internalurl | http://controller:8777 |
| publicurl | http://controller:8777 |
| region | regionOne |
| service_id | 3405453b14da441ebb258edfeba96d83 |
| service_name | ceilometer |
| service_type | metering |
+--------------+----------------------------------+</computeroutput></screen>
</step>
</procedure>
<procedure os="debian">

View File

@ -19,20 +19,25 @@
</step>
<step>
<para>Create the <literal>ResellerAdmin</literal> role:</para>
<screen><prompt>$</prompt> <userinput>keystone role-create --name ResellerAdmin</userinput>
<computeroutput>+----------+----------------------------------+
| Property | Value |
+----------+----------------------------------+
| id | 462fa46c13fd4798a95a3bfbe27b5e54 |
| name | ResellerAdmin |
+----------+----------------------------------+</computeroutput></screen>
<screen><prompt>$</prompt> <userinput>openstack role create ResellerAdmin</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | 462fa46c13fd4798a95a3bfbe27b5e54 |
| name | ResellerAdmin |
+-------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Add the <literal>ResellerAdmin</literal> role to the
<literal>service</literal> tenant and <literal>ceilometer</literal>
user:</para>
<screen><prompt>$</prompt> <userinput>keystone user-role-add --tenant service --user ceilometer \
--role 462fa46c13fd4798a95a3bfbe27b5e54</userinput></screen>
<screen><prompt>$</prompt> <userinput>openstack role add --project service --user ceilometer ResellerAdmin</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | 462fa46c13fd4798a95a3bfbe27b5e54 |
| name | ResellerAdmin |
+-------+----------------------------------+</computeroutput></screen>
</step>
</procedure>
<procedure>

View File

@ -50,61 +50,66 @@
<substeps>
<step>
<para>Create a <literal>cinder</literal> user:</para>
<screen><prompt>$</prompt> <userinput>keystone user-create --name cinder --pass <replaceable>CINDER_PASS</replaceable></userinput>
<computeroutput>+----------+----------------------------------+
| Property | Value |
<screen><prompt>$</prompt> <userinput>openstack user create --password-prompt cinder</userinput>
<computeroutput>User Password:
Repeat User Password:
+----------+----------------------------------+
| email | |
| enabled | True |
| id | 881ab2de4f7941e79504a759a83308be |
| name | cinder |
| username | cinder |
| Field | Value |
+----------+----------------------------------+
| email | None |
| enabled | True |
| id | 881ab2de4f7941e79504a759a83308be |
| name | cinder |
| username | cinder |
+----------+----------------------------------+</computeroutput></screen>
<para>Replace <replaceable>CINDER_PASS</replaceable> with a suitable
password.</para>
</step>
<step>
<para>Add the <literal>admin</literal> role to the
<literal>cinder</literal> user:</para>
<screen><prompt>$</prompt> <userinput>keystone user-role-add --user cinder --tenant service --role admin</userinput></screen>
<note>
<para>This command provides no output.</para>
</note>
<screen><prompt>$</prompt> <userinput>openstack role add --project service --user cinder admin</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| name | admin |
+-------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Create the <literal>cinder</literal> service entities:</para>
<screen><prompt>$</prompt> <userinput>keystone service-create --name cinderv2 --type volumev2 \
--description "OpenStack Block Storage"</userinput>
<screen><prompt>$</prompt> <userinput>openstack service create --type volumev2 \
--description "OpenStack Block Storage" cinderv2</userinput>
<computeroutput>+-------------+----------------------------------+
| Property | Value |
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Block Storage |
| enabled | True |
| id | 16e038e449c94b40868277f1d801edb5 |
| name | cinderv2 |
| type | volumev2 |
| description | OpenStack Block Storage |
| enabled | True |
| id | 16e038e449c94b40868277f1d801edb5 |
| name | cinderv2 |
| type | volumev2 |
+-------------+----------------------------------+</computeroutput></screen>
</step>
</substeps>
</step>
<step>
<para>Create the Block Storage service API endpoint:</para>
<screen><prompt>$</prompt> <userinput>keystone endpoint-create \
--service-id $(keystone service-list | awk '/ volumev2 / {print $2}') \
<screen><prompt>$</prompt> <userinput>openstack endpoint create \
--publicurl http://<replaceable>controller</replaceable>:8776/v2/%\(tenant_id\)s \
--internalurl http://<replaceable>controller</replaceable>:8776/v2/%\(tenant_id\)s \
--adminurl http://<replaceable>controller</replaceable>:8776/v2/%\(tenant_id\)s \
--region regionOne</userinput>
<computeroutput>+-------------+-----------------------------------------+
| Property | Value |
+-------------+-----------------------------------------+
| adminurl | http://controller:8776/v2/%(tenant_id)s |
| id | 097b4a6fc8ba44b4b10d4822d2d9e076 |
| internalurl | http://controller:8776/v2/%(tenant_id)s |
| publicurl | http://controller:8776/v2/%(tenant_id)s |
| region | regionOne |
| service_id | 16e038e449c94b40868277f1d801edb5 |
+-------------+-----------------------------------------+</computeroutput></screen>
--region regionOne \
volumev2</userinput>
<computeroutput>+--------------+-----------------------------------------+
| Field | Value |
+--------------+-----------------------------------------+
| adminurl | http://controller:8776/v2/%(tenant_id)s |
| id | 097b4a6fc8ba44b4b10d4822d2d9e076 |
| internalurl | http://controller:8776/v2/%(tenant_id)s |
| publicurl | http://controller:8776/v2/%(tenant_id)s |
| region | regionOne |
| service_id | 16e038e449c94b40868277f1d801edb5 |
| service_name | cinderv2 |
| service_type | volumev2 |
+--------------+-----------------------------------------+</computeroutput></screen>
</step>
</procedure>
<procedure os="ubuntu;rhel;centos;fedora;sles;opensuse">

View File

@ -78,7 +78,7 @@ Repeat User Password:
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | 1169d778631b4fd1aefd9d35314e1c56 |
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| name | admin |
+-------+----------------------------------+</computeroutput></screen>
</step>

View File

@ -48,30 +48,39 @@
<substeps>
<step>
<para>Create the <literal>heat</literal> user:</para>
<screen><prompt>$</prompt> <userinput>keystone user-create --name heat --pass <replaceable>HEAT_PASS</replaceable></userinput>
<computeroutput>+----------+----------------------------------+
| Property | Value |
<screen><prompt>$</prompt> <userinput>openstack user create --password-prompt heat</userinput>
<computeroutput>User Password:
Repeat User Password:
+----------+----------------------------------+
| email | |
| enabled | True |
| id | 7fd67878dcd04d0393469ef825a7e005 |
| name | heat |
| username | heat |
| Field | Value |
+----------+----------------------------------+
| email | None |
| enabled | True |
| id | 7fd67878dcd04d0393469ef825a7e005 |
| name | heat |
| username | heat |
+----------+----------------------------------+</computeroutput></screen>
<para>Replace <replaceable>HEAT_PASS</replaceable> with a suitable
password.</para>
</step>
<step>
<para>Add the <literal>admin</literal> role to the
<literal>heat</literal> user:</para>
<screen><prompt>$</prompt> <userinput>keystone user-role-add --user heat --tenant service --role admin</userinput></screen>
<note>
<para>This command provides no output.</para>
</note>
<screen><prompt>$</prompt> <userinput>openstack role add --project service --user heat admin</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| name | admin |
+-------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Create the <literal>heat_stack_owner</literal> role:</para>
<screen><prompt>$</prompt> <userinput>keystone role-create --name heat_stack_owner</userinput></screen>
<screen><prompt>$</prompt> <userinput>openstack role create heat_stack_owner</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | c0a1cbee7261446abc873392f616de87 |
| name | heat_stack_owner |
+-------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Create the heat domain in Identity service:</para>
@ -85,7 +94,13 @@
<step>
<para>Add the <literal>heat_stack_owner</literal> role to the
<literal>demo</literal> tenant and user:</para>
<screen><prompt>$</prompt> <userinput>keystone user-role-add --user demo --tenant demo --role heat_stack_owner</userinput></screen>
<screen><prompt>$</prompt> <userinput>openstack role add --project demo --user demo heat_stack_owner</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | c0a1cbee7261446abc873392f616de87 |
| name | heat_stack_owner |
+-------+----------------------------------+</computeroutput></screen>
<note>
<para>You must add the <literal>heat_stack_owner</literal>
role to users that manage stacks.</para>
@ -93,7 +108,13 @@
</step>
<step>
<para>Create the <literal>heat_stack_user</literal> role:</para>
<screen><prompt>$</prompt> <userinput>keystone role-create --name heat_stack_user</userinput></screen>
<screen><prompt>$</prompt> <userinput>openstack role create heat_stack_user</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | e01546b1a81c4e32a6d14a9259e60154 |
| name | heat_stack_user |
+-------+----------------------------------+</computeroutput></screen>
<note>
<para>The Orchestration service automatically assigns the
<literal>heat_stack_user</literal> role to users that it
@ -106,65 +127,69 @@
<step>
<para>Create the <literal>heat</literal> and
<literal>heat-cfn</literal> service entities:</para>
<screen><prompt>$</prompt> <userinput>keystone service-create --name heat --type orchestration \
--description "Orchestration"</userinput>
<screen><prompt>$</prompt> <userinput>openstack service create --type orchestration \
--description "Orchestration" heat</userinput>
<computeroutput>+-------------+----------------------------------+
| Property | Value |
| Field | Value |
+-------------+----------------------------------+
| description | Orchestration |
| enabled | True |
| id | 031112165cad4c2bb23e84603957de29 |
| name | heat |
| type | orchestration |
| description | Orchestration |
| enabled | True |
| id | 031112165cad4c2bb23e84603957de29 |
| name | heat |
| type | orchestration |
+-------------+----------------------------------+</computeroutput>
<prompt>$</prompt> <userinput>keystone service-create --name heat-cfn --type cloudformation \
--description "Orchestration"</userinput>
<prompt>$</prompt> <userinput>openstack service create --type cloudformation \
--description "Orchestration" heat-cfn</userinput>
<computeroutput>+-------------+----------------------------------+
| Property | Value |
| Field | Value |
+-------------+----------------------------------+
| description | Orchestration |
| enabled | True |
| id | 297740d74c0a446bbff867acdccb33fa |
| name | heat-cfn |
| type | cloudformation |
| description | Orchestration |
| enabled | True |
| id | 297740d74c0a446bbff867acdccb33fa |
| name | heat-cfn |
| type | cloudformation |
+-------------+----------------------------------+</computeroutput></screen>
</step>
</substeps>
</step>
<step>
<para>Create the Orchestration service API endpoints:</para>
<screen><prompt>$</prompt> <userinput>keystone endpoint-create \
--service-id $(keystone service-list | awk '/ orchestration / {print $2}') \
<screen><prompt>$</prompt> <userinput>openstack endpoint create \
--publicurl http://<replaceable>controller</replaceable>:8004/v1/%\(tenant_id\)s \
--internalurl http://<replaceable>controller</replaceable>:8004/v1/%\(tenant_id\)s \
--adminurl http://<replaceable>controller</replaceable>:8004/v1/%\(tenant_id\)s \
--region regionOne</userinput>
<computeroutput>+-------------+-----------------------------------------+
| Property | Value |
+-------------+-----------------------------------------+
| adminurl | http://controller:8004/v1/%(tenant_id)s |
| id | f41225f665694b95a46448e8676b0dc2 |
| internalurl | http://controller:8004/v1/%(tenant_id)s |
| publicurl | http://controller:8004/v1/%(tenant_id)s |
| region | regionOne |
| service_id | 031112165cad4c2bb23e84603957de29 |
+-------------+-----------------------------------------+</computeroutput>
<prompt>$</prompt> <userinput>keystone endpoint-create \
--service-id $(keystone service-list | awk '/ cloudformation / {print $2}') \
--region regionOne \
orchestration</userinput>
<computeroutput>+--------------+-----------------------------------------+
| Field | Value |
+--------------+-----------------------------------------+
| adminurl | http://controller:8004/v1/%(tenant_id)s |
| id | f41225f665694b95a46448e8676b0dc2 |
| internalurl | http://controller:8004/v1/%(tenant_id)s |
| publicurl | http://controller:8004/v1/%(tenant_id)s |
| region | regionOne |
| service_id | 031112165cad4c2bb23e84603957de29 |
| service_name | heat |
| service_type | orchestration |
+--------------+-----------------------------------------+</computeroutput>
<prompt>$</prompt> <userinput>openstack endpoint create \
--publicurl http://<replaceable>controller</replaceable>:8000/v1 \
--internalurl http://<replaceable>controller</replaceable>:8000/v1 \
--adminurl http://<replaceable>controller</replaceable>:8000/v1 \
--region regionOne</userinput>
<computeroutput>+-------------+----------------------------------+
| Property | Value |
+-------------+----------------------------------+
| adminurl | http://controller:8000/v1 |
| id | f41225f665694b95a46448e8676b0dc2 |
| internalurl | http://controller:8000/v1 |
| publicurl | http://controller:8000/v1 |
| region | regionOne |
| service_id | 297740d74c0a446bbff867acdccb33fa |
+-------------+----------------------------------+</computeroutput></screen>
--region regionOne \
cloudformation</userinput>
<computeroutput>+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| adminurl | http://controller:8000/v1 |
| id | f41225f665694b95a46448e8676b0dc2 |
| internalurl | http://controller:8000/v1 |
| publicurl | http://controller:8000/v1 |
| region | regionOne |
| service_id | 297740d74c0a446bbff867acdccb33fa |
| service_name | heat-cfn |
| service_type | cloudformation |
+--------------+----------------------------------+</computeroutput></screen>
</step>
</procedure>
<procedure os="ubuntu;rhel;centos;fedora;sles;opensuse">

View File

@ -199,10 +199,10 @@ admin_token = <replaceable>ADMIN_TOKEN</replaceable></programlisting>
to automatically create an admin tenant and an admin user. This can
later be used for other OpenStack services to contact the Identity
service. This is the equivalent of running the below commands:</para>
<screen><prompt>#</prompt> <userinput>keystone tenant-create --name admin --description "Admin Tenant"</userinput>
<prompt>#</prompt> <userinput>keystone user-create --name admin --pass <replaceable>ADMIN_PASS</replaceable> --email root@localhost</userinput>
<prompt>#</prompt> <userinput>keystone role-create --name admin</userinput>
<prompt>#</prompt> <userinput>keystone user-role-add user-role-add --user admin --role admin --tenant admin</userinput></screen>
<screen><prompt>#</prompt> <userinput>openstack project create --description "Admin Tenant" admin</userinput>
<prompt>#</prompt> <userinput>openstack user create --password <replaceable>ADMIN_PASS</replaceable> --email root@localhost admin</userinput>
<prompt>#</prompt> <userinput>openstack role create admin</userinput>
<prompt>#</prompt> <userinput>openstack role add --project demo --user demo _member_</userinput></screen>
<informalfigure>
<mediaobject>
<imageobject>
@ -252,13 +252,13 @@ admin_token = <replaceable>ADMIN_TOKEN</replaceable></programlisting>
<title>Create the Identity service endpoints</title>
<para>In Debian, the Keystone package offers automatic registration of Keystone
in the service catalogue. This is equivalent of running the below commands:</para>
<screen><prompt>#</prompt> <userinput>keystone service-create --name keystone --type identity --description "OpenStack Identity"</userinput>
<screen><prompt>#</prompt> <userinput>openstack service create --type identity --description "OpenStack Identity" keystone</userinput>
<prompt>#</prompt> <userinput>keystone endpoint-create \
--service-id $(keystone service-list | awk '/ identity / {print $2}') \
--publicurl http://<replaceable>controller</replaceable>:5000/v2.0 \
--internalurl http://<replaceable>controller</replaceable>:5000/v2.0 \
--adminurl http://<replaceable>controller</replaceable>:35357/v2.0 \
--region regionOne</userinput></screen>
--region regionOne \
identity</userinput></screen>
<informalfigure>
<mediaobject>
<imageobject>

View File

@ -149,7 +149,7 @@ Repeat User Password:
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| id | 9fe2ff9ee4384b1894a90878d3e92bab |
| name | _member_ |
+-------+----------------------------------+</computeroutput></screen>
</step>

View File

@ -67,7 +67,7 @@ Repeat User Password:
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | 1169d778631b4fd1aefd9d35314e1c56 |
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| name | admin |
+-------+----------------------------------+</computeroutput></screen>
</step>
@ -93,7 +93,7 @@ Repeat User Password:
--publicurl http://<replaceable>controller</replaceable>:9696 \
--adminurl http://<replaceable>controller</replaceable>:9696 \
--internalurl http://<replaceable>controller</replaceable>:9696 \
--region regionOne
--region regionOne \
network</userinput>
<computeroutput>+--------------+----------------------------------+
| Field | Value |

View File

@ -70,7 +70,7 @@ Repeat User Password:
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | 1169d778631b4fd1aefd9d35314e1c56 |
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| name | admin |
+-------+----------------------------------+</computeroutput></screen>
</step>

View File

@ -119,23 +119,85 @@ max_allowed_packet = 256M</programlisting>
</step>
</substeps>
</step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu"><para>Create database schema:
<screen><prompt>#</prompt> <userinput>sahara-db-manage --config-file /etc/sahara/sahara.conf upgrade head</userinput></screen>
</para></step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu"><para>You must register the Data processing service with the Identity
service so that other OpenStack services can locate it. Register the
service and specify the endpoint:
<screen><prompt>$</prompt> <userinput>keystone service-create --name sahara --type data_processing \
--description "Data processing service"</userinput>
<prompt>$</prompt> <userinput>keystone endpoint-create \
--service-id $(keystone service-list | awk '/ sahara / {print $2}') \
<step os="rhel;centos;fedora;opensuse;sles;ubuntu">
<para>Create database schema:
<screen><prompt>#</prompt> <userinput>sahara-db-manage --config-file /etc/sahara/sahara.conf upgrade head</userinput></screen>
</para>
</step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu">
<para>Source the <literal>admin</literal> credentials to gain access to
admin-only CLI commands:</para>
<screen><prompt>$</prompt> <userinput>source admin-openrc.sh</userinput></screen>
</step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu">
<para>To create the service credentials, complete these steps:</para>
<substeps>
<step>
<para>Create the <literal>sahara</literal> user:</para>
<screen><prompt>$</prompt> <userinput>openstack user create --password-prompt sahara</userinput>
<computeroutput>User Password:
Repeat User Password:
+----------+----------------------------------+
| Field | Value |
+----------+----------------------------------+
| email | None |
| enabled | True |
| id | 92fbc405a237420fbc92e9bbd697b8c8 |
| name | sahara |
| username | sahara |
+----------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Add the <literal>admin</literal> role to the
<literal>sahara</literal> user:</para>
<screen><prompt>$</prompt> <userinput>openstack role add --project service --user sahara admin</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| name | admin |
+-------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Create the <literal>sahara</literal> service entity:</para>
<screen><prompt>$</prompt> <userinput>openstack service create --type data_processing \
--description "Data processing service" sahara</userinput>
<computeroutput>+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | Data processing service |
| enabled | True |
| id | 6e867d0a062e4c1fb1c335b74ab7a8f4 |
| name | sahara |
| type | data_processing |
+-------------+----------------------------------+</computeroutput></screen>
</step>
</substeps>
</step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu">
<para>Create the Data processing service API endpoint:</para>
<screen><prompt>$</prompt> <userinput>openstack endpoint create \
--publicurl http://<replaceable>controller</replaceable>:8386/v1.1/%\(tenant_id\)s \
--internalurl http://<replaceable>controller</replaceable>:8386/v1.1/%\(tenant_id\)s \
--adminurl http://<replaceable>controller</replaceable>:8386/v1.1/%\(tenant_id\)s \
--region regionOne</userinput></screen>
</para></step>
--region regionOne \
data_processing</userinput>
<computeroutput>+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| adminurl | http://controller:8386/v1.1/%(tenant_id)s |
| id | dbb754f069c949e19fc40171112bfc01 |
| internalurl | http://controller:8386/v1.1/%(tenant_id)s |
| publicurl | http://controller:8386/v1.1/%(tenant_id)s |
| region | regionOne |
| service_id | 6e867d0a062e4c1fb1c335b74ab7a8f4 |
| service_name | sahara |
| service_type | data_processing |
+--------------+-------------------------------------------+</computeroutput></screen>
</step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu">
<para>Start the Data processing service and configure it to
start when the system boots:
<screen><prompt>#</prompt> <userinput>systemctl enable openstack-sahara-all.service</userinput>

View File

@ -34,61 +34,66 @@
<substeps>
<step>
<para>Create the <literal>swift</literal> user:</para>
<screen><prompt>$</prompt> <userinput>keystone user-create --name swift --pass <replaceable>SWIFT_PASS</replaceable></userinput>
<computeroutput>+----------+----------------------------------+
| Property | Value |
<screen><prompt>$</prompt> <userinput>openstack user create --password-prompt swift</userinput>
<computeroutput>User Password:
Repeat User Password:
+----------+----------------------------------+
| email | |
| enabled | True |
| id | d535e5cbd2b74ac7bfb97db9cced3ed6 |
| name | swift |
| username | swift |
| Field | Value |
+----------+----------------------------------+
| email | None |
| enabled | True |
| id | d535e5cbd2b74ac7bfb97db9cced3ed6 |
| name | swift |
| username | swift |
+----------+----------------------------------+</computeroutput></screen>
<para>Replace <replaceable>SWIFT_PASS</replaceable> with a suitable
password.</para>
</step>
<step>
<para>Add the <literal>admin</literal> role to the
<literal>swift</literal> user:</para>
<screen><prompt>$</prompt> <userinput>keystone user-role-add --user swift --tenant service --role admin</userinput></screen>
<note>
<para>This command provides no output.</para>
</note>
<screen><prompt>$</prompt> <userinput>openstack role add --project service --user swift admin</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| name | admin |
+-------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Create the <literal>swift</literal> service entity:</para>
<screen><prompt>$</prompt> <userinput>keystone service-create --name swift --type object-store \
--description "OpenStack Object Storage"</userinput>
<screen><prompt>$</prompt> <userinput>openstack service create --type object-store \
--description "OpenStack Object Storage" swift</userinput>
<computeroutput>+-------------+----------------------------------+
| Property | Value |
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Object Storage |
| enabled | True |
| id | 75ef509da2c340499d454ae96a2c5c34 |
| name | swift |
| type | object-store |
| description | OpenStack Object Storage |
| enabled | True |
| id | 75ef509da2c340499d454ae96a2c5c34 |
| name | swift |
| type | object-store |
+-------------+----------------------------------+</computeroutput></screen>
</step>
</substeps>
</step>
<step>
<para>Create the Object Storage service API endpoints:</para>
<screen><prompt>$</prompt> <userinput>keystone endpoint-create \
--service-id $(keystone service-list | awk '/ object-store / {print $2}') \
<screen><prompt>$</prompt> <userinput>openstack endpoint create \
--publicurl 'http://<replaceable>controller</replaceable>:8080/v1/AUTH_%(tenant_id)s' \
--internalurl 'http://<replaceable>controller</replaceable>:8080/v1/AUTH_%(tenant_id)s' \
--adminurl http://<replaceable>controller</replaceable>:8080 \
--region regionOne</userinput>
<computeroutput>+-------------+---------------------------------------------------+
| Property | Value |
+-------------+---------------------------------------------------+
| adminurl | http://controller:8080/ |
| id | af534fb8b7ff40a6acf725437c586ebe |
| internalurl | http://controller:8080/v1/AUTH_%(tenant_id)s |
| publicurl | http://controller:8080/v1/AUTH_%(tenant_id)s |
| region | regionOne |
| service_id | 75ef509da2c340499d454ae96a2c5c34 |
+-------------+---------------------------------------------------+</computeroutput></screen>
--region regionOne \
object-store</userinput>
<computeroutput>+--------------+----------------------------------------------+
| Field | Value |
+--------------+----------------------------------------------+
| adminurl | http://controller:8080/ |
| id | af534fb8b7ff40a6acf725437c586ebe |
| internalurl | http://controller:8080/v1/AUTH_%(tenant_id)s |
| publicurl | http://controller:8080/v1/AUTH_%(tenant_id)s |
| region | regionOne |
| service_id | 75ef509da2c340499d454ae96a2c5c34 |
| service_name | swift |
| service_type | object-store |
+--------------+----------------------------------------------+</computeroutput></screen>
</step>
</procedure>
<procedure>

View File

@ -36,28 +36,6 @@
registration. The <command>trove-manage db_sync</command>
command runs automatically.</para>
</step>
<step>
<para>Prepare OpenStack:</para>
<substeps>
<step>
<para>Source the <filename>admin-openrc.sh</filename> file.</para>
<screen><prompt>$</prompt> <userinput>source ~/admin-openrc.sh</userinput></screen>
</step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu">
<para>Create a <literal>trove</literal> user that Compute uses to
authenticate with the Identity service. Use the
<literal>service</literal> tenant and give the user the
<literal>admin</literal> role:
</para>
<screen><prompt>$</prompt> <userinput>keystone user-create --name trove --pass <replaceable>TROVE_PASS</replaceable></userinput>
<prompt>$</prompt> <userinput>keystone user-role-add --user trove --tenant service --role admin</userinput></screen>
<para>Replace <replaceable>TROVE_PASS</replaceable> with a
suitable password.</para>
</step>
</substeps>
</step>
<step>
<para>All configuration files should be placed at <filename>/etc/trove</filename> directory.
@ -208,24 +186,86 @@ log_file = trove-guestagent.log</programlisting>
</step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu">
<para>You must register the Database service with the Identity service so
that other OpenStack services can locate it. Register the
service and specify the endpoint:</para>
<screen><prompt>$</prompt> <userinput>keystone service-create --name trove --type database \
--description "OpenStack Database service"</userinput>
<prompt>$</prompt> <userinput>keystone endpoint-create \
--service-id $(keystone service-list | awk '/ trove / {print $2}') \
<para>Source the <literal>admin</literal> credentials to gain access to
admin-only CLI commands:</para>
<screen><prompt>$</prompt> <userinput>source admin-openrc.sh</userinput></screen>
</step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu">
<para>To create the service credentials, complete these steps:</para>
<substeps>
<step>
<para>Create the <literal>trove</literal> user:</para>
<screen><prompt>$</prompt> <userinput>openstack user create --password-prompt trove</userinput>
<computeroutput>User Password:
Repeat User Password:
+----------+----------------------------------+
| Field | Value |
+----------+----------------------------------+
| email | None |
| enabled | True |
| id | a0bb962771744d63a659c540d5384b0c |
| name | trove |
| username | trove |
+----------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Add the <literal>admin</literal> role to the
<literal>trove</literal> user:</para>
<screen><prompt>$</prompt> <userinput>openstack role add --project service --user trove admin</userinput>
<computeroutput>+-------+----------------------------------+
| Field | Value |
+-------+----------------------------------+
| id | cd2cb9a39e874ea69e5d4b896eb16128 |
| name | admin |
+-------+----------------------------------+</computeroutput></screen>
</step>
<step>
<para>Create the <literal>neutron</literal> service entity:</para>
<screen><prompt>$</prompt> <userinput>openstack service create --type database \
--description "OpenStack Database service" trove</userinput>
<computeroutput>+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Database service |
| enabled | True |
| id | 390a039be169460c994110210c620d2f |
| name | trove |
| type | database |
+-------------+----------------------------------+</computeroutput></screen>
</step>
</substeps>
</step>
<step os="rhel;centos;fedora;opensuse;sles;ubuntu">
<para>Create the Database service API endpoint:</para>
<screen><prompt>$</prompt> <userinput>openstack endpoint create \
--publicurl http://<replaceable>controller</replaceable>:8779/v1.0/%\(tenant_id\)s \
--internalurl http://<replaceable>controller</replaceable>:8779/v1.0/%\(tenant_id\)s \
--adminurl http://<replaceable>controller</replaceable>:8779/v1.0/%\(tenant_id\)s \
--region regionOne</userinput></screen>
--region regionOne \
database</userinput>
<computeroutput>+--------------+-------------------------------------------+
| Field | Value |
+--------------+-------------------------------------------+
| adminurl | http://controller:8779/v1.0/%(tenant_id)s |
| id | 22db3a4e1ce1407f80dfc1fbe6c26278 |
| internalurl | http://controller:8779/v1.0/%(tenant_id)s |
| publicurl | http://controller:8779/v1.0/%(tenant_id)s |
| region | regionOne |
| service_id | 390a039be169460c994110210c620d2f |
| service_name | trove |
| service_type | database |
+--------------+-------------------------------------------+</computeroutput></screen>
</step>
<step os="ubuntu;debian">
<para>Restart the Database services:</para>
<screen><prompt>#</prompt> <userinput>service trove-api restart</userinput>
<prompt>#</prompt> <userinput>service trove-taskmanager restart</userinput>
<prompt>#</prompt> <userinput>service trove-conductor restart</userinput></screen>
</step>
<step os="rhel;centos;fedora;sles;opensuse">
<para>Start the Database services and configure them to start when the
system boots:</para>