openstack-manuals/doc/install-guide/section_debconf-api-endpoints.xml
Christian Berendt a2d662d600 Unified the syntax of the XML root element (install-guide)
The XML root element of Docbook XML files should match the following
format:

<ELEMENT xmlns="http://docbook.org/ns/docbook"
  xmlns:xi="http://www.w3.org/2001/XInclude"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  version="5.0"
  xml:id="THE_XML_ID_OF_THE_ELEMENT">

Change-Id: I1e0804e2c5021bd78b77483f3156c5b069453555
2014-07-09 22:19:31 +02:00

104 lines
4.4 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink"
version="5.0"
xml:id="debconf-api-endpoints">
<title>Register API endpoints</title>
<para>All Debian packages for API services, except the
<package>heat-api</package> package, register the service in the
Identity Service catalog. This feature is helpful because API
endpoints are difficult to remember.</para>
<note>
<para>The <package>heat-common</package> package and not the
<package>heat-api</package> package configures the
Orchestration service.</para>
</note>
<para>When you install a package for an API service, you are
prompted to register that service. However, after you install or
upgrade the package for an API service, Debian immediately removes
your response to this prompt from the <package>debconf</package>
database. Consequently, you are prompted to re-register the
service with the Identity Service. If you already registered the
API service, respond <literal>no</literal> when you
upgrade.</para>
<informalfigure>
<mediaobject>
<imageobject>
<imagedata scale="50"
fileref="figures/debconf-screenshots/api-endpoint_1_register_endpoint.png"
/>
</imageobject>
</mediaobject>
</informalfigure>
<para>This screen registers packages in the Identity Service
catalog:</para>
<informalfigure>
<mediaobject>
<imageobject>
<imagedata scale="50"
fileref="figures/debconf-screenshots/api-endpoint_2_keystone_server_ip.png"
/>
</imageobject>
</mediaobject>
</informalfigure>
<para>You are prompted for the Identity Service
<literal>admin_token</literal> value. The Identity Service uses
this value to register the API service. When you set up the
<package>keystone</package> package, this value is configured
automatically.</para>
<informalfigure>
<mediaobject>
<imageobject>
<imagedata scale="50"
fileref="figures/debconf-screenshots/api-endpoint_3_keystone_authtoken.png"
/>
</imageobject>
</mediaobject>
</informalfigure>
<para>This screen configures the IP addresses for the service. The
configuration script automatically detects the IP address used by
the interface that is connected to the default route
(<code>/sbin/route</code> and <code>/sbin/ip</code>).</para>
<para>Unless you have a unique set up for your network, press
<keycap>ENTER</keycap>.</para>
<informalfigure>
<mediaobject>
<imageobject>
<imagedata scale="50"
fileref="figures/debconf-screenshots/api-endpoint_4_service_endpoint_ip_address.png"
/>
</imageobject>
</mediaobject>
</informalfigure>
<para>This screen configures the region name for the service. For
example, <code>us-east-coast</code> or
<code>europe-paris</code>.</para>
<informalfigure>
<mediaobject>
<imageobject>
<imagedata scale="50"
fileref="figures/debconf-screenshots/api-endpoint_5_region_name.png"
/>
</imageobject>
</mediaobject>
</informalfigure>
<para>The Debian package post installation scripts will then perform the
below commands for you:</para>
<programlisting language="ini">PKG_SERVICE_ID=$(pkgos_get_id keystone --os-token ${AUTH_TOKEN} \
--os-endpoint http://${KEYSTONE_ENDPOINT_IP}:35357/v2.0/ service-create \
--name=${SERVICE_NAME} --type=${SERVICE_TYPE} --description="${SERVICE_DESC}")
keystone --os-token ${AUTH_TOKEN} \
--os-endpoint http://${KEYSTONE_ENDPOINT_IP}:35357/v2.0/
endpoint-create \
--region "${REGION_NAME}" --service_id=${PKG_SERVICE_ID} \
--publicurl=http://${PKG_ENDPOINT_IP}:${SERVICE_PORT}${SERVICE_URL} \
--internalurl=http://${PKG_ENDPOINT_IP}:${SERVICE_PORT}${SERVICE_URL} \
--adminurl=http://${PKG_ENDPOINT_IP}:${SERVICE_PORT}${SERVICE_URL})</programlisting>
<para>The values of <literal>AUTH_TOKEN</literal>, <literal>KEYSTONE_ENDPOINT_IP</literal>,
<literal>PKG_ENDPOINT_IP</literal> and <literal>REGION_NAME</literal> depend on the
answer you will provide to the debconf prompts. But the values of <literal>SERVICE_NAME</literal>,
<literal>SERVICE_TYPE</literal>, <literal>SERVICE_DESC</literal> and <literal>SERVICE_URL</literal>
are already pre-wired in each package, so you don't have to remember them.</para>
</section>