diff --git a/api-quick-start/source/locale/api-quick-start.pot b/api-quick-start/source/locale/api-quick-start.pot index efe75f0c8..fc95adcba 100644 --- a/api-quick-start/source/locale/api-quick-start.pot +++ b/api-quick-start/source/locale/api-quick-start.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: API-Quick-Start 0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-11-07 06:35+0000\n" +"POT-Creation-Date: 2015-11-26 06:40+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -23,34 +23,33 @@ msgstr "" #: ../api-quick-start.rst:7 msgid "" "To authenticate access to OpenStack services, you must first issue an " -"authentication request to OpenStack Identity to acquire an authentication " -"token. To request an authentication token, you must supply a payload of " -"credentials in the authentication request." +"authentication request with a payload of credentials to OpenStack Identity " +"to get an authentication token." msgstr "" -#: ../api-quick-start.rst:12 +#: ../api-quick-start.rst:11 msgid "" "Credentials are usually a combination of your user name and password, and " -"optionally, the name or ID of the tenant in which your cloud runs. Ask your " +"optionally, the name or ID of the tenant where your cloud runs. Ask your " "cloud administrator for your user name, password, and tenant so that you can " "generate authentication tokens. Alternatively, you can supply a token rather " "than a user name and password." msgstr "" -#: ../api-quick-start.rst:18 +#: ../api-quick-start.rst:17 msgid "" "When you send API requests, you include the token in the ``X-Auth-Token`` " "header. If you access multiple OpenStack services, you must get a token for " "each service. A token is valid for a limited time before it expires. A token " "can also become invalid for other reasons. For example, if the roles for a " -"user change, existing tokens for that user are invalid." +"user change, existing tokens for that user are no longer valid." msgstr "" -#: ../api-quick-start.rst:26 +#: ../api-quick-start.rst:24 msgid "Authentication and API request workflow" msgstr "" -#: ../api-quick-start.rst:28 +#: ../api-quick-start.rst:26 msgid "" "Request an authentication token from the Identity endpoint that your cloud " "administrator gave you. Send a payload of credentials in the request as " @@ -58,176 +57,181 @@ msgid "" "authentication token." msgstr "" -#: ../api-quick-start.rst:33 +#: ../api-quick-start.rst:31 msgid "" "Send API requests and include the token in the ``X-Auth-Token`` header. " "Continue to send API requests with that token until the service completes " -"the request or a 401 Unauthorized error occurs." +"the request or the Unauthorized (401) error occurs." +msgstr "" + +#: ../api-quick-start.rst:35 +msgid "If the Unauthorized (401) error occurs, request another token." msgstr "" #: ../api-quick-start.rst:37 -msgid "If the 401 Unauthorized error occurs, request another token." -msgstr "" - -#: ../api-quick-start.rst:39 msgid "" "The examples in this section use cURL commands. For information about cURL, " "see http://curl.haxx.se/. For information about the OpenStack APIs, see " "`OpenStack API Reference `__." msgstr "" -#: ../api-quick-start.rst:48 +#: ../api-quick-start.rst:45 msgid "Authenticate" msgstr "" -#: ../api-quick-start.rst:50 +#: ../api-quick-start.rst:47 msgid "The payload of credentials to authenticate contains these parameters:" msgstr "" -#: ../api-quick-start.rst:53 +#: ../api-quick-start.rst:50 msgid "Description" msgstr "" -#: ../api-quick-start.rst:53 +#: ../api-quick-start.rst:50 msgid "Parameter" msgstr "" -#: ../api-quick-start.rst:53 +#: ../api-quick-start.rst:50 msgid "Type" msgstr "" -#: ../api-quick-start.rst:55 +#: ../api-quick-start.rst:52 msgid "" "The user name. If you do not provide a user name and password, you must " "provide a token." msgstr "" -#: ../api-quick-start.rst:55 +#: ../api-quick-start.rst:52 msgid "username (required)" msgstr "" -#: ../api-quick-start.rst:55 ../api-quick-start.rst:59 -#: ../api-quick-start.rst:61 ../api-quick-start.rst:68 -#: ../api-quick-start.rst:79 +#: ../api-quick-start.rst:52 ../api-quick-start.rst:56 +#: ../api-quick-start.rst:58 ../api-quick-start.rst:65 +#: ../api-quick-start.rst:75 msgid "xsd:string" msgstr "" -#: ../api-quick-start.rst:59 +#: ../api-quick-start.rst:56 msgid "The password for the user." msgstr "" -#: ../api-quick-start.rst:59 +#: ../api-quick-start.rst:56 msgid "password (required)" msgstr "" -#: ../api-quick-start.rst:61 +#: ../api-quick-start.rst:58 msgid "*tenantName* (Optional)" msgstr "" -#: ../api-quick-start.rst:61 +#: ../api-quick-start.rst:58 msgid "" -"The tenant name. Both the *tenantId* and *tenantName* are optional, but " -"should not be specified together. If both attributes are specified, the " -"server responds with a 400 Bad Request." +"The tenant name. Both the *tenantId* and *tenantName* are optional and " +"mutually exclusive. If you specify both attributes, the server returns the " +"Bad Request (400) response code." msgstr "" -#: ../api-quick-start.rst:68 +#: ../api-quick-start.rst:65 +msgid "*tenantId* (Optional)" +msgstr "" + +#: ../api-quick-start.rst:65 msgid "" -"The tenant ID. Both the *tenantId* and *tenantName* are optional, but should " -"not be specified together. If both attributes are specified, the server " -"responds with a 400 Bad Request. If you do not know the tenantId, you can " -"send a request with \"\" for the tenantId and get the ID returned to you in " -"the response." +"The tenant ID. Both the *tenantId* and *tenantName* are optional and " +"mutually exclusive. If you specify both attributes, the server returns the " +"Bad Request (400) response code. If you do not know the tenant name ID, send " +"a request with \"\" for the tenant name or ID. The response returns the " +"tenant name or ID." msgstr "" -#: ../api-quick-start.rst:69 -msgid "(Optional)" -msgstr "" - -#: ../api-quick-start.rst:76 -msgid "*tenantId*" -msgstr "" - -#: ../api-quick-start.rst:79 +#: ../api-quick-start.rst:75 msgid "" "A token. If you do not provide a token, you must provide a user name and " "password." msgstr "" -#: ../api-quick-start.rst:79 +#: ../api-quick-start.rst:75 msgid "token (Optional)" msgstr "" -#: ../api-quick-start.rst:85 +#: ../api-quick-start.rst:81 msgid "" "For a typical OpenStack deployment that runs Identity, use the following " -"cURL command to request a token with your tenantName and ID:" +"cURL command to request a token. Specify your tenant name, and user name and " +"password credentials:" msgstr "" -#: ../api-quick-start.rst:96 +#: ../api-quick-start.rst:93 msgid "" -"If the request succeeds, you receive a 200 OK response followed by a " +"If the request succeeds, it returns the OK (200) response code followed by a " "response body that contains a token in the form ``\"id\":\"token\"`` and an " "expiration date and time in the form ``\"expires\":\"datetime\"``." msgstr "" -#: ../api-quick-start.rst:101 +#: ../api-quick-start.rst:98 msgid "" -"If you do not know your tenant name or ID, you can send an authentication " -"request with an empty tenantName, as follows:" +"If you do not know the tenant name or ID, send a request with \"\" for the " +"tenant name or ID. The response returns the tenant name or ID." msgstr "" -#: ../api-quick-start.rst:112 +#: ../api-quick-start.rst:109 msgid "The following example shows a successful response:" msgstr "" -#: ../api-quick-start.rst:309 +#: ../api-quick-start.rst:334 msgid "Send API requests" msgstr "" -#: ../api-quick-start.rst:311 +#: ../api-quick-start.rst:336 msgid "" "This section shows how to make some basic Compute API calls. For a complete " -"list of Compute API v2.0 calls, see `Compute APIs and Extensions `__." +"list of Compute API calls, see `Compute API (CURRENT) `__." msgstr "" -#: ../api-quick-start.rst:315 -msgid "Use the Compute API to list flavors, as follows:" +#: ../api-quick-start.rst:340 +msgid "Export the token ID to the ``TOKEN`` environment variable. For example:" msgstr "" -#: ../api-quick-start.rst:401 -msgid "Use the Compute API to list images, as follows:" +#: ../api-quick-start.rst:346 +msgid "The token expires every 24 hours." msgstr "" -#: ../api-quick-start.rst:512 -msgid "Use the Compute API to list servers, as follows:" +#: ../api-quick-start.rst:348 +msgid "Use the Compute API to list flavors:" msgstr "" -#: ../api-quick-start.rst:545 +#: ../api-quick-start.rst:431 +msgid "Use the Compute API to list images:" +msgstr "" + +#: ../api-quick-start.rst:542 +msgid "Use the Compute API to list servers:" +msgstr "" + +#: ../api-quick-start.rst:575 msgid "OpenStack command-line clients" msgstr "" -#: ../api-quick-start.rst:547 +#: ../api-quick-start.rst:577 msgid "" "For scripting work and simple requests, you can use a command-line client " "like the ``openstack-client`` client. This client enables you to use the " "Identity, Compute, Block Storage, and Object Storage APIs through a command-" "line interface. Also, each OpenStack project has a related client project " -"that includes Python API bindings and a CLI." +"that includes Python API bindings and a command-line interface (CLI)." msgstr "" -#: ../api-quick-start.rst:553 +#: ../api-quick-start.rst:583 msgid "" "For information about the command-line clients, see `OpenStack Command-Line " "Interface Reference `__." msgstr "" -#: ../api-quick-start.rst:557 +#: ../api-quick-start.rst:587 msgid "Install the clients" msgstr "" -#: ../api-quick-start.rst:559 +#: ../api-quick-start.rst:589 msgid "" "Use ``pip`` to install the OpenStack clients on a Mac OS X or Linux system. " "It is easy and ensures that you get the latest version of the client from " @@ -235,39 +239,39 @@ msgid "" "lets you update or remove a package." msgstr "" -#: ../api-quick-start.rst:564 +#: ../api-quick-start.rst:594 msgid "" -"You must install each project's client separately, but the python-" -"openstackclient covers multiple projects." +"You must install the client for each project separately, but the ``python-" +"openstackclient`` covers multiple projects." msgstr "" -#: ../api-quick-start.rst:567 -msgid "Run this command to install or update a client package:" +#: ../api-quick-start.rst:597 +msgid "Install or update a client package:" msgstr "" -#: ../api-quick-start.rst:573 +#: ../api-quick-start.rst:603 msgid "Where *PROJECT* is the project name." msgstr "" -#: ../api-quick-start.rst:575 -msgid "For example, to install the ``openstack`` client, run this command:" +#: ../api-quick-start.rst:605 +msgid "For example, install the ``openstack`` client:" msgstr "" -#: ../api-quick-start.rst:581 +#: ../api-quick-start.rst:611 msgid "To update the ``openstack`` client, run this command:" msgstr "" -#: ../api-quick-start.rst:587 +#: ../api-quick-start.rst:617 msgid "To remove the ``openstack`` client, run this command:" msgstr "" -#: ../api-quick-start.rst:593 +#: ../api-quick-start.rst:623 msgid "" "Before you can issue client commands, you must download and source the " "``openrc`` file to set environment variables." msgstr "" -#: ../api-quick-start.rst:596 +#: ../api-quick-start.rst:626 msgid "" "For complete information about the OpenStack clients, including how to " "source the ``openrc`` file, see `OpenStack End User Guide `__." msgstr "" -#: ../api-quick-start.rst:604 +#: ../api-quick-start.rst:632 msgid "Launch an instance" msgstr "" -#: ../api-quick-start.rst:606 +#: ../api-quick-start.rst:634 msgid "" "To launch instances, you must choose a name, an image, and a flavor for your " "instance." msgstr "" -#: ../api-quick-start.rst:609 +#: ../api-quick-start.rst:637 msgid "" "To list available images, call the Compute API through the ``openstack`` " -"client, as follows:" +"client:" msgstr "" -#: ../api-quick-start.rst:624 +#: ../api-quick-start.rst:652 msgid "To list flavors, run this command:" msgstr "" -#: ../api-quick-start.rst:644 +#: ../api-quick-start.rst:672 msgid "To launch an instance, note the IDs of your desired image and flavor." msgstr "" -#: ../api-quick-start.rst:646 +#: ../api-quick-start.rst:674 msgid "" -"To launch an instance named ``my_instance``, run the ``openstack server " -"create`` command with the image and flavor IDs and the server name, as " -"follows:" +"To launch the ``my_instance`` instance, run the ``openstack server create`` " +"command with the image and flavor IDs and the server name:" msgstr "" -#: ../api-quick-start.rst:688 +#: ../api-quick-start.rst:716 msgid "" "For information about the default ports that the OpenStack components use, " "see `Firewalls and default ports`_ in the *OpenStack Configuration " diff --git a/api-quick-start/source/locale/de/LC_MESSAGES/api-quick-start.po b/api-quick-start/source/locale/de/LC_MESSAGES/api-quick-start.po index 0819ad256..fdd1fcb5d 100644 --- a/api-quick-start/source/locale/de/LC_MESSAGES/api-quick-start.po +++ b/api-quick-start/source/locale/de/LC_MESSAGES/api-quick-start.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: API-Quick-Start 0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-11-07 03:42+0000\n" +"POT-Creation-Date: 2015-11-26 03:49+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -12,12 +12,9 @@ msgstr "" "Last-Translator: Andreas Jaeger \n" "Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n" -"X-Generator: Zanata 3.7.1\n" +"X-Generator: Zanata 3.7.3\n" "Language-Team: German\n" -msgid "(Optional)" -msgstr "(Optional)" - msgid "**OpenStack Python Software Development Kit (SDK)**" msgstr "**OpenStack Python Software Development Kit (SDK)**" @@ -30,9 +27,6 @@ msgstr "**REST Clients**" msgid "**cURL**" msgstr "**cURL**" -msgid "*tenantId*" -msgstr "*tenantId*" - msgid "*tenantName* (Optional)" msgstr "*tenantName* (optional)" @@ -95,31 +89,9 @@ msgstr "" "firefox/addon/restclient/>`__. Für Chrome, siehe `rest-client `__." -msgid "" -"Credentials are usually a combination of your user name and password, and " -"optionally, the name or ID of the tenant in which your cloud runs. Ask your " -"cloud administrator for your user name, password, and tenant so that you can " -"generate authentication tokens. Alternatively, you can supply a token rather " -"than a user name and password." -msgstr "" -"Ein Berechtigungsnachweis ist im Allgemeinen eine Kombination aus " -"Benutzername und Passwort sowie optional der Name oder die ID des Mandants, " -"welcher die Cloud betreibt. Fragen Sie Ihren Cloud Administrator nach Ihrem " -"Benutzernamen, Ihrem Passwort und dem Mandantennamen so dass Sie einen " -"Authentifizierungstoken generieren können. Alternativ können Sie auch direkt " -"einen Token anstatt dem Benutzernamen und Passwort angeben." - msgid "Description" msgstr "Beschreibung" -msgid "" -"For a typical OpenStack deployment that runs Identity, use the following " -"cURL command to request a token with your tenantName and ID:" -msgstr "" -"Für eine typische OpenStack Installation welche Identity verwendet, benutzen " -"Sie ein cURL Kommando wie das folgende um einen Token anzufragen mit Ihrem " -"tenantName und ID:" - msgid "" "For complete information about the OpenStack clients, including how to " "source the ``openrc`` file, see `OpenStack End User Guide `__." -msgid "For example, to install the ``openstack`` client, run this command:" -msgstr "" -"Um beispielsweise den ``openstack`` client zu installieren, führen Sie " -"dieses Kommando aus:" - msgid "" "For information about the command-line clients, see `OpenStack Command-Line " "Interface Reference `__." @@ -155,41 +122,6 @@ msgstr "" "Für Informationen über die von OpenStack verwendeten Standardports, siehe " "`Firewalls and default ports`_ in der *OpenStack Configuration Reference*." -msgid "" -"For scripting work and simple requests, you can use a command-line client " -"like the ``openstack-client`` client. This client enables you to use the " -"Identity, Compute, Block Storage, and Object Storage APIs through a command-" -"line interface. Also, each OpenStack project has a related client project " -"that includes Python API bindings and a CLI." -msgstr "" -"Für Skriptingarbeiten können Sie einen Kommandozeilenclient wie den " -"``openstack-client`` verwenden. Dieser Client ermöglicht Ihnen die APIs von " -"Compute, Abbild Dienst, Block Speicher, Netzwerk (neutron), Objekt " -"Speicher, Orchestrierung und Telemetry mittels eines " -"Kommandozeileninterfaces zu nutzen. Darüberhinaus hat jedes OpenStack " -"Projekt einen entsprechenden Client, der eine Python API und ein " -"Kommandozeileninterface beinhaltet." - -msgid "If the 401 Unauthorized error occurs, request another token." -msgstr "" -"Wenn der 401 Unauthorized Fehler auftritt, fordern sie einen neuen Token an." - -msgid "" -"If the request succeeds, you receive a 200 OK response followed by a " -"response body that contains a token in the form ``\"id\":\"token\"`` and an " -"expiration date and time in the form ``\"expires\":\"datetime\"``." -msgstr "" -"Wenn die Anfrage erfolgreich ist erhalten Sie eine 200 OK Antwort, gefolgt " -"durch einen Hauptteil welcher einen Token in Form von ``\"id\":\"token\"`` " -"und ein Ablaufdatum in der Form ``\"expires\":\"datetime\"`` enthält." - -msgid "" -"If you do not know your tenant name or ID, you can send an authentication " -"request with an empty tenantName, as follows:" -msgstr "" -"Wenn Sie den Namen oder die ID Ihres Mandanten nicht kennen können Sie eine " -"Authentifzierungsanfrage mit einem leeren tenantName wie folgt senden:" - msgid "Install the clients" msgstr "Installiere die Clients" @@ -223,23 +155,9 @@ msgstr "" "beschrieben. Wenn die Anfrage erfolgreich ist, erhalten Sie ein " "Authentifizierungstoken." -msgid "Run this command to install or update a client package:" -msgstr "" -"Führen Sie dieses Kommando aus um ein Client-Paket zu installieren oder zu " -"aktualisieren:" - msgid "Send API requests" msgstr "API Anfragen senden" -msgid "" -"Send API requests and include the token in the ``X-Auth-Token`` header. " -"Continue to send API requests with that token until the service completes " -"the request or a 401 Unauthorized error occurs." -msgstr "" -"Senden Sie API Anfragen und fügen Sie das Token im ``X-Auth-Token`` Header " -"ein. Fahren Sie fort API Anfragen mit diesem Token zu senden bis die Aufgabe " -"erledigt ist oder ein 401 Unauthorized Fehler auftritt." - msgid "" "The examples in this section use cURL commands. For information about cURL, " "see http://curl.haxx.se/. For information about the OpenStack APIs, see " @@ -261,28 +179,6 @@ msgstr "" "Der Berechtigungsnachweis als Nutzdaten für die Authentifzierung hat " "folgende Parameter: " -msgid "" -"The tenant ID. Both the *tenantId* and *tenantName* are optional, but should " -"not be specified together. If both attributes are specified, the server " -"responds with a 400 Bad Request. If you do not know the tenantId, you can " -"send a request with \"\" for the tenantId and get the ID returned to you in " -"the response." -msgstr "" -"Die ID des Mandanten. Beide Attribute, *tenantId* und *tenantName* sind " -"optional, aber sollten nicht gleichzeitig angegeben werden. Wenn beide " -"Attribute angegeben wurden antwortet der Server mit 400 Bad Request. Wenn " -"Sie die tenantId nicht kennen, können Sie eine Anfrage mit \"\" für die " -"tenantId senden und bekommen die ID im response zurückgegeben." - -msgid "" -"The tenant name. Both the *tenantId* and *tenantName* are optional, but " -"should not be specified together. If both attributes are specified, the " -"server responds with a 400 Bad Request." -msgstr "" -"Der Mandantenname. Beide, der *tenantId* und *tenantName* sind optional, " -"sollten aber nicht zusammen angegeben werden. Wenn beide Attribute angegeben " -"sind, antwortet der Server mit 400 Bad Request." - msgid "" "The user name. If you do not provide a user name and password, you must " "provide a token." @@ -290,42 +186,11 @@ msgstr "" "Der Benutzername. Wenn Sie keinen Benutzernamen und Passwort angeben, müssen " "Sie ein Token verwenden." -msgid "" -"This section shows how to make some basic Compute API calls. For a complete " -"list of Compute API v2.0 calls, see `Compute APIs and Extensions `__." -msgstr "" -"Der Abschnitt zeigt wie man einige grundsätzliche Compute API Aufrufe macht. " -"Für eine komplette Liste der mögliche Compute API Aufrufe, siehe `Compute " -"APIs and Extensions `__." - -msgid "" -"To authenticate access to OpenStack services, you must first issue an " -"authentication request to OpenStack Identity to acquire an authentication " -"token. To request an authentication token, you must supply a payload of " -"credentials in the authentication request." -msgstr "" -"Um den Zugriff auf die OpenStack Dienste zu authentifizieren müssen Sie erst " -"eine Authentifizierungsanfrage an OpenStack Identity für einen " -"Authentifizierungs-Token stellen. Um einen Authentifizierungs-Token " -"anzufragen müssen Sie den Berechtigungsnachweis als Nutzdaten in der " -"Authentifizierungsanfrage mitsenden." - msgid "To begin sending API requests, use one of the following methods:" msgstr "" "Um mit dem Senden von API Anfragen zu beginnen, benutzen Sie eine der " "folgenden Methoden:" -msgid "" -"To launch an instance named ``my_instance``, run the ``openstack server " -"create`` command with the image and flavor IDs and the server name, as " -"follows:" -msgstr "" -"Um eine Instanz mit dem Namen``my_instance`` zu starten, führen Sie den " -"``openstack server create`` Befehl mit den IDs des Abbildes und der Variante " -"sowie dem Namen des Servers wie folgt aus:" - msgid "To launch an instance, note the IDs of your desired image and flavor." msgstr "" "Um eine Instanz zu starten, notieren Sie sich die IDs des gewünschten " @@ -338,13 +203,6 @@ msgstr "" "Um eine Instanz zu starten müssen Sie einen Namen, ein Abbild und eine " "Variante für Ihre Instanz auswählen." -msgid "" -"To list available images, call the Compute API through the ``openstack`` " -"client, as follows:" -msgstr "" -"Um eine Liste der verfügbaren Abbilder anzuzeigen, rufen Sie die Compute API " -"durch den ``openstack`` Client wie folgt auf:" - msgid "To list flavors, run this command:" msgstr "" "Führen Sie folgendes Kommando aus um eine Liste der Varianten anzuzeigen:" @@ -372,20 +230,6 @@ msgstr "" "python.org/pypi>`__ bekommen. Außerdem lässt Sie ``pip`` Pakete " "aktualisieren oder entfernen. " -msgid "Use the Compute API to list flavors, as follows:" -msgstr "" -"Benutzen Sie die Compute API wie folgt, um eine Liste der Varianten " -"anzuzeigen:" - -msgid "Use the Compute API to list images, as follows:" -msgstr "" -"Benutzen Sie die Compute API wie folgt, um eine Liste der Abbilder " -"anzuzeigen:" - -msgid "Use the Compute API to list servers, as follows:" -msgstr "" -"Benutzen Sie die Compute API wie folgt, um eine Liste von Servern anzuzeigen:" - msgid "" "Use this SDK to write Python automation scripts that create and manage " "resources in your OpenStack cloud. The SDK implements Python bindings to the " @@ -403,30 +247,9 @@ msgstr "" "Implementierung. Siehe auch das `OpenStack Python SDK `__ in dem *OpenStack End User Guide*." -msgid "" -"When you send API requests, you include the token in the ``X-Auth-Token`` " -"header. If you access multiple OpenStack services, you must get a token for " -"each service. A token is valid for a limited time before it expires. A token " -"can also become invalid for other reasons. For example, if the roles for a " -"user change, existing tokens for that user are invalid." -msgstr "" -"Wenn Sie eine API Anfrage senden, beinhaltet diese den Token im ``X-Auth-" -"Token`` header. Wenn Sie auf mehrere OpenStack Dienste zugreifen müssen Sie " -"einen Token für jeden Dienst haben. Ein Token ist nur für eine begrenzte " -"Zeit gültig bis dieser abläuft. Ein Token kann auch aus anderen Gründen " -"ungültig werden. Zum Beispiel werden vorhandene Token eines Benutzers " -"ungültig, wenn sich die Rollen des Benutzers verändern." - msgid "Where *PROJECT* is the project name." msgstr "*PROJEKT* ist der Projektname." -msgid "" -"You must install each project's client separately, but the python-" -"openstackclient covers multiple projects." -msgstr "" -"Sie müssen für jedes Projekt den Client einzeln installieren, aber der " -"python-openstackclient kann für mehrere Projekte benutzt werden." - msgid "password (required)" msgstr "Passwort (erforderlich)" diff --git a/api-quick-start/source/locale/ja/LC_MESSAGES/api-quick-start.po b/api-quick-start/source/locale/ja/LC_MESSAGES/api-quick-start.po index 206ad4297..cfc0ab4bf 100644 --- a/api-quick-start/source/locale/ja/LC_MESSAGES/api-quick-start.po +++ b/api-quick-start/source/locale/ja/LC_MESSAGES/api-quick-start.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: API-Quick-Start 0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-11-07 03:42+0000\n" +"POT-Creation-Date: 2015-11-26 03:49+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -12,12 +12,9 @@ msgstr "" "Last-Translator: KATO Tomoyuki \n" "Language: ja\n" "Plural-Forms: nplurals=1; plural=0\n" -"X-Generator: Zanata 3.7.1\n" +"X-Generator: Zanata 3.7.3\n" "Language-Team: Japanese\n" -msgid "(Optional)" -msgstr "(オプション)" - msgid "**OpenStack Python Software Development Kit (SDK)**" msgstr "**OpenStack Python Software Development Kit (SDK)**" @@ -30,9 +27,6 @@ msgstr "**REST クライアント**" msgid "**cURL**" msgstr "**cURL**" -msgid "*tenantId*" -msgstr "*tenantId*" - msgid "*tenantName* (Optional)" msgstr "*tenantName* (オプション)" @@ -99,29 +93,9 @@ msgstr "" "en-US/firefox/addon/restclient/>`__ を、 Chrome については `rest-client " "`__ を参照してください。" -msgid "" -"Credentials are usually a combination of your user name and password, and " -"optionally, the name or ID of the tenant in which your cloud runs. Ask your " -"cloud administrator for your user name, password, and tenant so that you can " -"generate authentication tokens. Alternatively, you can supply a token rather " -"than a user name and password." -msgstr "" -"クレデンシャルは、一般的には、ユーザー名とパスワードの組み合わせです。オプ" -"ションとして、あなたのクラウドを実行するテナントの名前や ID を指定します。認" -"証トークンを生成するのに必要な、あなたのユーザー名、パスワード、テナントはク" -"ラウド管理者に問い合わせてください。ユーザー名とパスワードの代わりに、トーク" -"ンを指定することもできます。" - msgid "Description" msgstr "説明" -msgid "" -"For a typical OpenStack deployment that runs Identity, use the following " -"cURL command to request a token with your tenantName and ID:" -msgstr "" -"Identity Service を実行している一般的な OpenStack 環境の場合、以下の cURL コ" -"マンドを使用して、テナントの名前や ID を使ってトークンを要求します。" - msgid "" "For complete information about the OpenStack clients, including how to " "source the ``openrc`` file, see `OpenStack End User Guide `__ 、`OpenStack Command-Line Interface Reference `__ を参照してください。" -msgid "For example, to install the ``openstack`` client, run this command:" -msgstr "" -"例えば、``openstack`` クライアントをインストールする場合、このコマンドを実行" -"します。" - msgid "" "For information about the command-line clients, see `OpenStack Command-Line " "Interface Reference `__." @@ -157,40 +126,6 @@ msgstr "" "*OpenStack Configuration Reference* の `Firewalls and default ports`_ を参照" "してください。" -msgid "" -"For scripting work and simple requests, you can use a command-line client " -"like the ``openstack-client`` client. This client enables you to use the " -"Identity, Compute, Block Storage, and Object Storage APIs through a command-" -"line interface. Also, each OpenStack project has a related client project " -"that includes Python API bindings and a CLI." -msgstr "" -"スクリプト作成や単純なリクエストには ``openstack-client`` クライアントなどの" -"コマンドラインクライアントが利用できます。このクライアントを使って、コマンド" -"ラインインターフェースから Identity API、 Compute API、Block Storage API、" -"Object Storage API を使用できます。また、各 OpenStack プロジェクトには対応す" -"るクライアントプロジェクトがあり、 Python API バインディングと CLI が提供され" -"ています。" - -msgid "If the 401 Unauthorized error occurs, request another token." -msgstr "" -"401 Unauthorized エラーが発生した場合には、別のトークンをリクエストします。" - -msgid "" -"If the request succeeds, you receive a 200 OK response followed by a " -"response body that contains a token in the form ``\"id\":\"token\"`` and an " -"expiration date and time in the form ``\"expires\":\"datetime\"``." -msgstr "" -"リクエストに成功すると、200 OK 応答を受け取ります。レスポンス本文には ``\"id" -"\":\"token\"`` 形式のトークンと ``\"expires\":\"datetime\"`` 形式の有効期限が" -"入っています。" - -msgid "" -"If you do not know your tenant name or ID, you can send an authentication " -"request with an empty tenantName, as follows:" -msgstr "" -"テナントの名前や ID が不明な場合、以下のように tenantName を空にして認証リク" -"エストを送信できます。" - msgid "Install the clients" msgstr "クライアントのインストール" @@ -223,23 +158,9 @@ msgstr "" "`authenticate` に書かれているとおりです。リクエストに成功すると、サーバーから" "認証トークンが返されます。" -msgid "Run this command to install or update a client package:" -msgstr "" -"クライアントパッケージをインストールまたは更新するには、以下のコマンドを実行" -"します。" - msgid "Send API requests" msgstr "API リクエストの送信" -msgid "" -"Send API requests and include the token in the ``X-Auth-Token`` header. " -"Continue to send API requests with that token until the service completes " -"the request or a 401 Unauthorized error occurs." -msgstr "" -"API リクエストを送信する際には ``X-Auth-Token`` ヘッダーにトークンを指定しま" -"す。サービスに対するリクエストが全部完了するか、401 Unauthorized エラーが発生" -"するまで、API リクエストの送信ではそのトークンを使い続けます。" - msgid "" "The OpenStack project provides a command-line client that enables you to " "access APIs through easy-to-use commands. See the section called :ref:" @@ -269,27 +190,6 @@ msgid "The payload of credentials to authenticate contains these parameters:" msgstr "" "認証のためのクレデンシャルのペイロードには、以下のパラメーターを指定します。" -msgid "" -"The tenant ID. Both the *tenantId* and *tenantName* are optional, but should " -"not be specified together. If both attributes are specified, the server " -"responds with a 400 Bad Request. If you do not know the tenantId, you can " -"send a request with \"\" for the tenantId and get the ID returned to you in " -"the response." -msgstr "" -"テナント ID。*tenantId* と *tenantName* はどちらもオプションです。ただし、同" -"時には指定できません。両方の属性が指定されている場合、サーバーは 400 Bad " -"Request 応答を返します。tenantId が不明な場合、tenantId に \"\" を指定してリ" -"クエストを送信し、返されたレスポンスから ID を取得できます。" - -msgid "" -"The tenant name. Both the *tenantId* and *tenantName* are optional, but " -"should not be specified together. If both attributes are specified, the " -"server responds with a 400 Bad Request." -msgstr "" -"テナント名。*tenantId* と *tenantName* はオプションです。ただし、同時には指定" -"できません。両方の属性が指定された場合、サーバーは 400 Bad Request を返しま" -"す。" - msgid "" "The user name. If you do not provide a user name and password, you must " "provide a token." @@ -297,38 +197,9 @@ msgstr "" "ユーザー名。ユーザー名とパスワードを指定しない場合は、トークンを指定する必要" "があります。" -msgid "" -"This section shows how to make some basic Compute API calls. For a complete " -"list of Compute API v2.0 calls, see `Compute APIs and Extensions `__." -msgstr "" -"このセクションでは、基本的な Compute API コールの実行方法を示します。Compute " -"API v2.0 コールの一覧は `Compute APIs and Extensions `__ を参照してください。" - -msgid "" -"To authenticate access to OpenStack services, you must first issue an " -"authentication request to OpenStack Identity to acquire an authentication " -"token. To request an authentication token, you must supply a payload of " -"credentials in the authentication request." -msgstr "" -"OpenStack サービスへのアクセスの認証を行うには、最初に OpenStack Identity に" -"認証リクエストを行って、認証トークンを取得する必要があります。認証トークンを" -"リクエストするためには、認証リクエストにクレデンシャルをペイロードに指定する" -"必要があります。" - msgid "To begin sending API requests, use one of the following methods:" msgstr "API リクエストを送信するには、以下の方法のいずれかを使用します。" -msgid "" -"To launch an instance named ``my_instance``, run the ``openstack server " -"create`` command with the image and flavor IDs and the server name, as " -"follows:" -msgstr "" -"``my_instance`` という名前のインスタンスを起動するには、以下のようにイメージ " -"ID、フレーバー ID、サーバー名を指定して ``openstack server create`` コマンド" -"を実行します。" - msgid "To launch an instance, note the IDs of your desired image and flavor." msgstr "" "インスタンスの起動にあたり、使用したいイメージとフレーバーの ID を記録しま" @@ -341,13 +212,6 @@ msgstr "" "インスタンスを起動する場合、インスタンスの名前、イメージ、フレーバーを選択す" "る必要があります。" -msgid "" -"To list available images, call the Compute API through the ``openstack`` " -"client, as follows:" -msgstr "" -"利用可能なイメージの一覧を表示するには、以下のように ``openstack`` クライアン" -"トから Compute API を呼び出します。" - msgid "To list flavors, run this command:" msgstr "フレーバーの一覧を表示するには、このコマンドを実行します。" @@ -371,15 +235,6 @@ msgstr "" "からクライアントの最新バージョンを簡単かつ確実に入手できます。また、``pip`` " "を使ってパッケージの更新や削除ができます。" -msgid "Use the Compute API to list flavors, as follows:" -msgstr "以下は、 Compute API を使用して、フレーバーの一覧を表示しています" - -msgid "Use the Compute API to list images, as follows:" -msgstr "以下は、 Compute API を使用して、イメージの一覧を表示してします。" - -msgid "Use the Compute API to list servers, as follows:" -msgstr "以下は、 Compute API を使用して、サーバーの一覧を表示してします。" - msgid "" "Use this SDK to write Python automation scripts that create and manage " "resources in your OpenStack cloud. The SDK implements Python bindings to the " @@ -397,29 +252,9 @@ msgstr "" "*OpenStack エンドユーザーガイド* の `OpenStack Python SDK `__ を参照してください。" -msgid "" -"When you send API requests, you include the token in the ``X-Auth-Token`` " -"header. If you access multiple OpenStack services, you must get a token for " -"each service. A token is valid for a limited time before it expires. A token " -"can also become invalid for other reasons. For example, if the roles for a " -"user change, existing tokens for that user are invalid." -msgstr "" -"API リクエストの送信時、``X-Auth-Token`` ヘッダーにトークンを指定します。複数" -"の OpenStack サービスにアクセスする場合、サービス毎にトークンを取得する必要が" -"あります。トークンは一定時間有効で、その後期限切れとなります。トークンは他の" -"理由で失効することもあります。例えば、ユーザーのロールが変更された場合、その" -"ユーザーの既存のトークンは無効になります。" - msgid "Where *PROJECT* is the project name." msgstr "*PROJECT* はプロジェクト名です。" -msgid "" -"You must install each project's client separately, but the python-" -"openstackclient covers multiple projects." -msgstr "" -"各プロジェクトのクライアントは別々にインストールする必要がありますが、 " -"python-openstackclient は複数のプロジェクトに対応しています。" - msgid "password (required)" msgstr "パスワード (必須)" diff --git a/api-quick-start/source/locale/ko_KR/LC_MESSAGES/api-quick-start.po b/api-quick-start/source/locale/ko_KR/LC_MESSAGES/api-quick-start.po index e0c4318f0..1de909a46 100644 --- a/api-quick-start/source/locale/ko_KR/LC_MESSAGES/api-quick-start.po +++ b/api-quick-start/source/locale/ko_KR/LC_MESSAGES/api-quick-start.po @@ -5,20 +5,17 @@ msgid "" msgstr "" "Project-Id-Version: API-Quick-Start 0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-11-07 03:42+0000\n" +"POT-Creation-Date: 2015-11-26 03:49+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"PO-Revision-Date: 2015-11-06 09:01+0000\n" -"Last-Translator: Ian Y. Choi \n" +"PO-Revision-Date: 2015-11-26 04:12+0000\n" +"Last-Translator: Sungjin Kang \n" "Language: ko-KR\n" "Plural-Forms: nplurals=1; plural=0\n" -"X-Generator: Zanata 3.7.1\n" +"X-Generator: Zanata 3.7.3\n" "Language-Team: Korean (South Korea)\n" -msgid "(Optional)" -msgstr "(선택 항목)" - msgid "**OpenStack Python Software Development Kit (SDK)**" msgstr "**OpenStack Python 소프트웨어 개발 키트 (SDK)**" @@ -31,8 +28,8 @@ msgstr "**REST 클라이언트**" msgid "**cURL**" msgstr "**cURL**" -msgid "*tenantId*" -msgstr "*tenantId*" +msgid "*tenantId* (Optional)" +msgstr "*tenantId* (선택 항목)" msgid "*tenantName* (Optional)" msgstr "*tenantName* (선택 항목)" @@ -102,25 +99,30 @@ msgstr "" msgid "" "Credentials are usually a combination of your user name and password, and " -"optionally, the name or ID of the tenant in which your cloud runs. Ask your " +"optionally, the name or ID of the tenant where your cloud runs. Ask your " "cloud administrator for your user name, password, and tenant so that you can " "generate authentication tokens. Alternatively, you can supply a token rather " "than a user name and password." msgstr "" "Credential은 일반적으로 사용자 이름과 암호 조합으로 사용되나, 추가로 클라우드" -"에서 사용하는 tenant 이름이나 ID를 사용할 수 있습니다. 토큰을 생성할 수 있도" -"록 사용자 이름, 암호, tenant를 클라우드 관리자에게 문의하십시오. 사용자 이름" -"과 암호를 사용하기 보다는 토큰을 사용하십시오." +"에서 실행하는 공간에서 tenant 이름이나 ID으로 사용할 수 있습니다. 토큰을 생성" +"할 수 있도록 사용자 이름, 암호, tenant를 클라우드 관리자에게 문의하십시오. 사" +"용자 이름과 암호를 사용하기 보다는 토큰을 사용하십시오." msgid "Description" msgstr "설명" +msgid "Export the token ID to the ``TOKEN`` environment variable. For example:" +msgstr "Token ID를 ``TOKEN`` 환경 변수로 내보냅니다. 예를 들면:" + msgid "" "For a typical OpenStack deployment that runs Identity, use the following " -"cURL command to request a token with your tenantName and ID:" +"cURL command to request a token. Specify your tenant name, and user name and " +"password credentials:" msgstr "" -"Identity를 사용하여 일반적인 OpenStack 배포를 하는 경우, cURL 명령어를 사용하" -"여 tenantName과 ID와 함께 토큰을 다음과 같이 요청할 수 있습니다:" +"Identity를 사용하여 일반적인 OpenStack 배포를 하는 경우, 다음 cURL 명령어를 " +"사용하여 토큰을 요청합니다. Tenant 이름, 사용자 이름 및 암호 credential을 지" +"정합니다:" msgid "" "For complete information about the OpenStack clients, including how to " @@ -135,9 +137,8 @@ msgstr "" "admin/>`__, 그리고 `OpenStack Command-Line Interface Reference `__ 를 살펴봅니다." -msgid "For example, to install the ``openstack`` client, run this command:" -msgstr "" -"예를 들어, ``openstack`` 클라이언트를 설치하려면, 이 명령을 실행합니다:" +msgid "For example, install the ``openstack`` client:" +msgstr "예를 들면, ``openstack`` 클라이언트를 설치하려면:" msgid "" "For information about the command-line clients, see `OpenStack Command-Line " @@ -160,32 +161,35 @@ msgid "" "like the ``openstack-client`` client. This client enables you to use the " "Identity, Compute, Block Storage, and Object Storage APIs through a command-" "line interface. Also, each OpenStack project has a related client project " -"that includes Python API bindings and a CLI." +"that includes Python API bindings and a command-line interface (CLI)." msgstr "" "스크립트 작업 및 간단한 요청의 경우, ``openstack-client`` 클라이언트와 같은 " "커맨드라인 클라이언트를 사용할 수 있습니다. 이 클라이언트는 커맨드 인터페이스" "를 이용하여 Compute API를 사용할 수 있도록 합니다. 또한, 각 OpenStack 프로젝" -"트는 Python API 바인딩과 CLI를 포함하는 적절한 클라이언트 프로젝트를 가집니" -"다." +"트는 Python API 바인딩과 명령 라인 인터페이스 (CLI)를 포함하는 적절한 클라이" +"언트 프로젝트를 가집니다." -msgid "If the 401 Unauthorized error occurs, request another token." -msgstr "만약 401 권한 없음 에러 발생시, 다른 토큰으로 요청합니다." +msgid "If the Unauthorized (401) error occurs, request another token." +msgstr "만약 권한 없음 (401) 에러가 발생하게 되면, 다른 토큰을 요청합니다." msgid "" -"If the request succeeds, you receive a 200 OK response followed by a " +"If the request succeeds, it returns the OK (200) response code followed by a " "response body that contains a token in the form ``\"id\":\"token\"`` and an " "expiration date and time in the form ``\"expires\":\"datetime\"``." msgstr "" -"요청이 성공하면, 200 OK 응답과 함께 토큰은 ``\"id\":\"token\"`` 형식으로, 그" -"리고 만료 날짜와 시간은 ``\"expires\":\"datetime\"`` 형식으로 포함된 본문을 " -"받습니다." +"요청이 성공하면, OK (200) 응답 코드와 함께 토큰은 ``\"id\":\"token\"`` 형식으" +"로, 그리고 만료 날짜와 시간은 ``\"expires\":\"datetime\"`` 형식으로 포함된 응" +"답 본문을 받습니다." msgid "" -"If you do not know your tenant name or ID, you can send an authentication " -"request with an empty tenantName, as follows:" +"If you do not know the tenant name or ID, send a request with \"\" for the " +"tenant name or ID. The response returns the tenant name or ID." msgstr "" -"만약 tenant 이름 또는 ID를 모른다면, 빈 tenantName를 이용하여 인증 요청을 다" -"음과 같이 보낼 수 있습니다:" +"Tenant 이름에 대한 ID를 알지 못한다면 요청을 보낼 때 tenant 이름 또는 ID를 " +"\"\"으로 보냅니다. 반환 값에서 tenant 이름 또는 ID를 확인할 수 있습니다." + +msgid "Install or update a client package:" +msgstr "클라이언트 패키지 설치 또는 업데이트:" msgid "Install the clients" msgstr "클라이언트 설치" @@ -218,21 +222,17 @@ msgstr "" "ref:`authenticate` 에 보여지는 바와 같이 요청 내에 credential에 대한 payload" "를 보냅니다. 요청이 성공하면, 서버는 인증 토큰을 반환해 줍니다." -msgid "Run this command to install or update a client package:" -msgstr "" -"클라이언트 패키지를 설치하거나 업데이트하려면 다음 명령을 실행하십시오:" - msgid "Send API requests" msgstr "API 요청 보내기" msgid "" "Send API requests and include the token in the ``X-Auth-Token`` header. " "Continue to send API requests with that token until the service completes " -"the request or a 401 Unauthorized error occurs." +"the request or the Unauthorized (401) error occurs." msgstr "" "API를 요청하고 ``X-Auth-Token`` 헤더에 토큰을 포함합니다. 서비스가 요청을 완" -"료하거나 401 권한 없음 에러가 발생할 때까지 토큰을 이용하여 API 요청을 계속 " -"보냅니다." +"료하거나 권한 없음 (401) 에러가 발생할 때까지 토큰을 이용하여 API 요청을 계" +"속 보냅니다." msgid "" "The OpenStack project provides a command-line client that enables you to " @@ -255,31 +255,35 @@ msgid "The following example shows a successful response:" msgstr "다음은 성공한 응답을 보여줍니다:" msgid "The password for the user." -msgstr "사용자의 비밀번호입니다." +msgstr "사용자의 암호입니다." msgid "The payload of credentials to authenticate contains these parameters:" msgstr "인증 credential에 대한 payload는 다음과 같은 매개 변수를 가집니다:" msgid "" -"The tenant ID. Both the *tenantId* and *tenantName* are optional, but should " -"not be specified together. If both attributes are specified, the server " -"responds with a 400 Bad Request. If you do not know the tenantId, you can " -"send a request with \"\" for the tenantId and get the ID returned to you in " -"the response." +"The tenant ID. Both the *tenantId* and *tenantName* are optional and " +"mutually exclusive. If you specify both attributes, the server returns the " +"Bad Request (400) response code. If you do not know the tenant name ID, send " +"a request with \"\" for the tenant name or ID. The response returns the " +"tenant name or ID." msgstr "" -"Tenent ID입니다. *tenantId* 와 *tenantName* 은 선택 사항입니다. 그러나 둘을 " -"같이 사용할 수 없습니다. 두 항목을 모두 사용하면 서버에서는 400 잘못된 요청으" -"로 처리합니다. tenantId를 알지 못한다면 요청을 보낼 때 tenantId를 \"\"으로 보" -"내면 반환 값에서 ID를 확인할 수 있습니다" +"Tenant ID입니다. *tenantId* 와 *tenantName* 은 선택 사항이며 상호 배타적인 성" +"격을 띱니다. 두 항목을 모두 사용하는 경우, 서버에서는 잘못된 요청 (400) 응답 " +"코드를 반환합니다. tenant 이름에 대한 ID를 알지 못한다면 요청을 보낼 때 " +"tenant 이름 또는 ID를 \"\"으로 보냅니다. 반환 값에서 tenant 이름 또는 ID를 확" +"인할 수 있습니다." msgid "" -"The tenant name. Both the *tenantId* and *tenantName* are optional, but " -"should not be specified together. If both attributes are specified, the " -"server responds with a 400 Bad Request." +"The tenant name. Both the *tenantId* and *tenantName* are optional and " +"mutually exclusive. If you specify both attributes, the server returns the " +"Bad Request (400) response code." msgstr "" -"Tenent 이름입니다. *tenantId* 와 *tenantName* 은 선택 사항입니다. 그러나 둘" -"을 같이 사용할 수 없습니다. 두 항목을 모두 사용하면 서버에서는 400 잘못된 요" -"청으로 처리합니다." +"Tenent 이름입니다. *tenantId* 와 *tenantName* 은 선택 사항이며 상호 배타적인 " +"성격을 띱니다. 두 항목을 모두 사용하는 경우, 서버에서는 잘못된 요청 (400) 응" +"답 코드를 반환합니다." + +msgid "The token expires every 24 hours." +msgstr "토큰은 매 24시간마다 만료됩니다." msgid "" "The user name. If you do not provide a user name and password, you must " @@ -290,35 +294,26 @@ msgstr "" msgid "" "This section shows how to make some basic Compute API calls. For a complete " -"list of Compute API v2.0 calls, see `Compute APIs and Extensions `__." +"list of Compute API calls, see `Compute API (CURRENT) `__." msgstr "" "이번 섹션에서는 어떻게 기본 Compute API 콜을 생성할 것인지에 대해 알려줍니" -"다. Compute API v2.0 콜에 대한 전체 목록은 `Compute APIs and Extensions " -"`__ 에서 확인할 수 있" -"습니다." +"다. Compute API 요청에 대한 전체 목록은 `Compute API (CURRENT) `__ 에서 확인할 수 있습니" +"다." msgid "" "To authenticate access to OpenStack services, you must first issue an " -"authentication request to OpenStack Identity to acquire an authentication " -"token. To request an authentication token, you must supply a payload of " -"credentials in the authentication request." +"authentication request with a payload of credentials to OpenStack Identity " +"to get an authentication token." msgstr "" -"OpenStack 서비스에 접근하여 인증하기 위해서는 먼저 인증 토큰을 사용하여 " -"OpenStack Identity에서 인증을 요청해야 합니다. 인증 토큰을 요청하기 위해 " -"credential에서 payload를 제공합니다." +"OpenStack 서비스에 접근하여 인증하기 위해서는 먼저 인증 토큰을 얻기 위해 " +"OpenStack Identity에 credential에 대한 payload를 요청하는 인증을 발급해야 합" +"니다." msgid "To begin sending API requests, use one of the following methods:" msgstr "API 요청을 보내기 위해, 다음 방법 중 하나를 선택해 사용합니다:" -msgid "" -"To launch an instance named ``my_instance``, run the ``openstack server " -"create`` command with the image and flavor IDs and the server name, as " -"follows:" -msgstr "" -"인스턴스 이름을 ``my_instance`` 로 하려면, 이미지, flavor ID, 서버 이름과 같" -"이 ``openstack server create`` 명령어를 다음과 같이 실행합니다:" - msgid "To launch an instance, note the IDs of your desired image and flavor." msgstr "인스턴스를 시작하기 전, 원하는 이미지와 flavor의 ID를 확인합니다." @@ -329,11 +324,18 @@ msgstr "" "인스턴스를 시작하기 위해 이름, 이미지, 인스턴스의 flavor를 선택해야 합니다." msgid "" -"To list available images, call the Compute API through the ``openstack`` " -"client, as follows:" +"To launch the ``my_instance`` instance, run the ``openstack server create`` " +"command with the image and flavor IDs and the server name:" msgstr "" -"사용가능한 이미지 목록을 확인하려면 ``openstack`` 클라이언트를 통해 Compute " -"API를 다음과 같이 호출합니다:" +"``my_instance`` 인스턴스를 구동하려면, 이미지, flavor ID, 서버 이름과 같이 " +"``openstack server create`` 명령어를 다음과 같이 실행합니다:" + +msgid "" +"To list available images, call the Compute API through the ``openstack`` " +"client:" +msgstr "" +"사용 가능한 이미지 목록을 확인하려면, ``openstack`` 클라이언트를 통해 " +"Compute API를 호출합니다:" msgid "To list flavors, run this command:" msgstr "Flavor 목록을 확인하려면, 다음 명령을 실행하십시오:" @@ -358,14 +360,14 @@ msgstr "" "터 최신 버전의 클라이언트를 얻는 것을 보장합니다. 또한, ``pip`` 로 패키지를 " "업데이트하거나 제거할 수 있습니다." -msgid "Use the Compute API to list flavors, as follows:" -msgstr "Flavors 목록에서 Compute API를 다음과 같이 사용합니다:" +msgid "Use the Compute API to list flavors:" +msgstr "Compute API를 사용하여 flavor 목록을 살펴봅니다:" -msgid "Use the Compute API to list images, as follows:" -msgstr "이미지 목록에서 Compute API를 다음과 같이 사용합니다:" +msgid "Use the Compute API to list images:" +msgstr "Compute API를 사용하여 이미지 목록을 살펴봅니다:" -msgid "Use the Compute API to list servers, as follows:" -msgstr "Compute API를 사용하여 서버 목록을 보고 싶으면, 다음과 같이 합니다:" +msgid "Use the Compute API to list servers:" +msgstr "Compute API를 사용하여 서버 목록을 살펴봅니다:" msgid "" "Use this SDK to write Python automation scripts that create and manage " @@ -389,28 +391,29 @@ msgid "" "header. If you access multiple OpenStack services, you must get a token for " "each service. A token is valid for a limited time before it expires. A token " "can also become invalid for other reasons. For example, if the roles for a " -"user change, existing tokens for that user are invalid." +"user change, existing tokens for that user are no longer valid." msgstr "" "API 요청을 보낼때, ``X-Auth-Token`` 헤더에 토큰을 포함하여 보냅니다. 여러 " "OpenStack 서비스에 접근한다면, 각 서비스에 대한 토큰을 가져올 수 있습니다. 토" "큰은 제한시간 전까지만 유효합니다. 다른 이유로도 토큰이 만료될 수 있습니다. " -"예를 들어, 사용자 역할이 변경되었다면, 사용자가 사용하던 토큰은 만료됩니다." +"예를 들어, 사용자 역할이 변경되었다면, 사용자가 사용하던 토큰은 더 이상 유효" +"하지 않습니다." msgid "Where *PROJECT* is the project name." msgstr "*PROJECT* 은 프로젝트 이름입니다." msgid "" -"You must install each project's client separately, but the python-" -"openstackclient covers multiple projects." +"You must install the client for each project separately, but the ``python-" +"openstackclient`` covers multiple projects." msgstr "" -"각 프로젝트에 대한 클라이언트를 별도로 설치해야 하지만, python-" -"openstackclient는 여러 프로젝트를 포함합니다." +"각 프로젝트에 대한 클라이언트를 별도로 설치해야 하지만, ``python-" +"openstackclient`` 는 여러 프로젝트를 포함합니다." msgid "password (required)" -msgstr "password (필수 항목)" +msgstr "암호 (필수 항목)" msgid "token (Optional)" -msgstr "token (선택 사항)" +msgstr "token (선택 항목)" msgid "username (required)" msgstr "username (필수 항목)" diff --git a/api-ref/locale/api-ref.pot b/api-ref/locale/api-ref.pot index ce2c7687e..997cc2c0e 100644 --- a/api-ref/locale/api-ref.pot +++ b/api-ref/locale/api-ref.pot @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2015-11-07 06:35+0000\n" +"POT-Creation-Date: 2015-11-26 06:40+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -49,15 +49,15 @@ msgstr "" msgid "Versions" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-admin-v2.xml:32(title) ./api-ref/src/docbkx/ch_identity-v3.xml:47(title) ./api-ref/src/docbkx/ch_identity-v2.xml:40(title) +#: ./api-ref/src/docbkx/ch_identity-admin-v2.xml:32(title) ./api-ref/src/docbkx/ch_identity-v2.xml:40(title) msgid "Tokens" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-admin-v2.xml:45(title) ./api-ref/src/docbkx/ch_identity-v3.xml:193(title) +#: ./api-ref/src/docbkx/ch_identity-admin-v2.xml:45(title) ./api-ref/src/docbkx/ch_identity-v3.xml:108(link) msgid "Users" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-admin-v2.xml:64(title) +#: ./api-ref/src/docbkx/ch_identity-admin-v2.xml:62(title) msgid "Tenants" msgstr "" @@ -70,175 +70,175 @@ msgid "Image service API v2 (CURRENT)" msgstr "" #: ./api-ref/src/docbkx/ch_images-v2.xml:11(para) -msgid "Image service API v2.0, API v2.1, and API v2.2." +msgid "Image service API v2.0, API v2.1, API v2.2, and API v2.3." msgstr "" #: ./api-ref/src/docbkx/ch_images-v2.xml:12(para) ./api-ref/src/docbkx/ch_images-v1.xml:15(para) msgid "Cloud providers can configure property protections that prevent non-administrative users from updating and deleting protected properties. For more information, see Image property protection in the OpenStack Cloud Administrator Guide." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:21(title) ./api-ref/src/docbkx/ch_database-v1.xml:12(title) ./api-ref/src/docbkx/ch_blockstorage-api-v1.xml:37(title) ./api-ref/src/docbkx/ch_identity-v3.xml:34(title) ./api-ref/src/docbkx/ch_identity-v2.xml:14(title) ./api-ref/src/docbkx/ch_netconn-v2.xml:24(title) ./api-ref/src/docbkx/ch_images-v1.xml:23(title) ./api-ref/src/docbkx/ch_share-v2.xml:36(title) ./api-ref/src/docbkx/ch_compute-v2.1.xml:75(title) ./api-ref/src/docbkx/ch_orchestration-v1.xml:23(title) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:16(title) +#: ./api-ref/src/docbkx/ch_images-v2.xml:21(title) ./api-ref/src/docbkx/ch_database-v1.xml:12(title) ./api-ref/src/docbkx/ch_blockstorage-api-v1.xml:37(title) ./api-ref/src/docbkx/ch_identity-v3.xml:48(link) ./api-ref/src/docbkx/ch_identity-v3.xml:116(title) ./api-ref/src/docbkx/ch_identity-v2.xml:14(title) ./api-ref/src/docbkx/ch_netconn-v2.xml:24(title) ./api-ref/src/docbkx/ch_images-v1.xml:23(title) ./api-ref/src/docbkx/ch_share-v2.xml:36(title) ./api-ref/src/docbkx/ch_compute-v2.1.xml:75(title) ./api-ref/src/docbkx/ch_orchestration-v1.xml:23(title) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:16(title) msgid "API versions" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:30(title) ./api-ref/src/docbkx/ch_images-v1.xml:37(title) ./api-ref/src/docbkx/ch_compute-v2.1.xml:443(title) +#: ./api-ref/src/docbkx/ch_images-v2.xml:34(title) ./api-ref/src/docbkx/ch_images-v1.xml:41(title) ./api-ref/src/docbkx/ch_compute-v2.1.xml:454(title) msgid "Images" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:31(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:35(para) msgid "Creates, lists, updates, and deletes images." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:32(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:36(para) msgid "Image operations show all fields in the response body. Any field with no value is set to null value (JSON null data type)." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:37(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:41(para) msgid "The possible status values for images are:" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:41(caption) +#: ./api-ref/src/docbkx/ch_images-v2.xml:45(caption) msgid "Image status" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:46(th) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:287(th) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:350(th) ./api-ref/src/docbkx/ch_share-v2.xml:151(th) ./api-ref/src/docbkx/ch_share-v2.xml:646(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:68(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:204(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:420(th) +#: ./api-ref/src/docbkx/ch_images-v2.xml:50(th) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:293(th) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:356(th) ./api-ref/src/docbkx/ch_share-v2.xml:151(th) ./api-ref/src/docbkx/ch_share-v2.xml:645(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:68(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:206(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:422(th) msgid "Status" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:47(th) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:288(th) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:351(th) ./api-ref/src/docbkx/ch_share-v2.xml:152(th) ./api-ref/src/docbkx/ch_share-v2.xml:647(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:69(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:205(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:421(th) +#: ./api-ref/src/docbkx/ch_images-v2.xml:51(th) ./api-ref/src/docbkx/ch_objectstorage-v1.xml:112(para) ./api-ref/src/docbkx/ch_identity-v3.xml:204(th) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:294(th) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:357(th) ./api-ref/src/docbkx/ch_share-v2.xml:152(th) ./api-ref/src/docbkx/ch_share-v2.xml:646(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:69(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:207(th) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:423(th) msgid "Description" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:52(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:56(para) msgid "queued" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:54(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:58(para) msgid "The Image service reserved an image ID for the image in the registry but has not uploaded any image data." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:62(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:66(para) msgid "saving" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:64(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:68(para) msgid "The Image service is currently uploading the raw data for the image." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:71(para) ./api-ref/src/docbkx/ch_share-v2.xml:653(code) +#: ./api-ref/src/docbkx/ch_images-v2.xml:75(para) ./api-ref/src/docbkx/ch_share-v2.xml:652(code) msgid "active" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:73(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:77(para) msgid "The image is active and fully available in the Image service." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:80(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:84(para) msgid "killed" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:82(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:86(para) msgid "An error occurred during the upload of image data." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:88(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:92(para) msgid "deleted" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:90(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:94(para) msgid "The Image service retains information about the image but the image is no longer available for use." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:98(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:102(para) msgid "pending_delete" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:100(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:104(para) msgid "Similar to the deleted status. An image in this state is not recoverable." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:132(title) +#: ./api-ref/src/docbkx/ch_images-v2.xml:136(title) msgid "Image data" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:133(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:137(para) msgid "Uploads and downloads raw image data." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:143(title) +#: ./api-ref/src/docbkx/ch_images-v2.xml:147(title) msgid "Image tags" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:144(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:148(para) msgid "Adds and deletes image tags." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:154(title) ./api-ref/src/docbkx/ch_images-v1.xml:58(title) +#: ./api-ref/src/docbkx/ch_images-v2.xml:158(title) ./api-ref/src/docbkx/ch_images-v1.xml:62(title) msgid "Members" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:170(title) +#: ./api-ref/src/docbkx/ch_images-v2.xml:174(title) msgid "Image schemas" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:171(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:175(para) msgid "Gets a JSON-schema document that represents an images or image entity." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:193(title) -msgid "Metadata definition resource types" +#: ./api-ref/src/docbkx/ch_images-v2.xml:197(title) +msgid "Metadata definition resource types (since API v2.0)" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:194(para) -msgid "Lists resource types. Also, creates, lists, and removes resource type associations in a specified namespace. (Since API v2.0.)" +#: ./api-ref/src/docbkx/ch_images-v2.xml:198(para) +msgid "Lists resource types. Also, creates, lists, and removes resource type associations in a namespace." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:215(title) -msgid "Metadata definition namespaces" +#: ./api-ref/src/docbkx/ch_images-v2.xml:219(title) +msgid "Metadata definition namespaces (since API v2.0)" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:216(para) -msgid "Creates, lists, gets details for, updates, and deletes metadata definition namespaces. Defines namespaces that can contain property definitions, object definitions, and resource type associations. (Since API v2.0.)" +#: ./api-ref/src/docbkx/ch_images-v2.xml:220(para) +msgid "Creates, lists, gets details for, updates, and deletes metadata definition namespaces. Defines namespaces that can contain property definitions, object definitions, and resource type associations." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:237(title) -msgid "Metadata definition properties" +#: ./api-ref/src/docbkx/ch_images-v2.xml:240(title) +msgid "Metadata definition properties (since API v2.0)" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:238(para) -msgid "Creates, lists, gets details for, updates, and deletes metadata definition properties. (Since API v2.0.)" +#: ./api-ref/src/docbkx/ch_images-v2.xml:241(para) +msgid "Creates, lists, gets details for, updates, and deletes metadata definition properties." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:256(title) -msgid "Metadata definition objects" +#: ./api-ref/src/docbkx/ch_images-v2.xml:259(title) +msgid "Metadata definition objects (since API v2.0)" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:257(para) -msgid "Creates, lists, gets details for, updates, and deletes metadata definition objects. (Since API v2.0.)" +#: ./api-ref/src/docbkx/ch_images-v2.xml:260(para) +msgid "Creates, lists, gets details for, updates, and deletes metadata definition objects." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:274(title) -msgid "Metadata definition tags" +#: ./api-ref/src/docbkx/ch_images-v2.xml:277(title) +msgid "Metadata definition tags (since API v2.0)" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:275(para) -msgid "Creates, lists, gets details for, updates, and deletes metadata definition tags. (Since API v2.0.)" +#: ./api-ref/src/docbkx/ch_images-v2.xml:278(para) +msgid "Creates, lists, gets details for, updates, and deletes metadata definition tags." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:294(title) +#: ./api-ref/src/docbkx/ch_images-v2.xml:297(title) msgid "Metadata definition schemas" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:295(para) +#: ./api-ref/src/docbkx/ch_images-v2.xml:298(para) msgid "Gets a JSON-schema document that represents a metadata definition entity." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:343(title) -msgid "Tasks" +#: ./api-ref/src/docbkx/ch_images-v2.xml:346(title) +msgid "Tasks (since API v2.2)" msgstr "" -#: ./api-ref/src/docbkx/ch_images-v2.xml:344(para) -msgid "Creates, lists, and gets details for tasks. (Since API v2.2.)" +#: ./api-ref/src/docbkx/ch_images-v2.xml:347(para) +msgid "Creates, lists, and gets details for tasks." msgstr "" #: ./api-ref/src/docbkx/ch_identity-v2-ext.xml:14(title) ./api-ref/src/docbkx/itemizedlist-service-list.xml:55(link) @@ -289,7 +289,7 @@ msgstr "" msgid "OAuth extension (OS-OAUTH1)" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:42(link) ./api-ref/src/docbkx/ch_identity-v3-ext.xml:338(title) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:42(link) ./api-ref/src/docbkx/ch_identity-v3-ext.xml:339(title) msgid "Trust extension (OS-TRUST)" msgstr "" @@ -389,55 +389,55 @@ msgstr "" msgid "Enables users to delegate roles to third-party consumers through the The OAuth 1.0 Protocol." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:287(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:288(para) msgid "A user is an Identity API user who delegates its roles and who authorizes request tokens. A consumer is a third-party application that uses OAuth to access a protected resource. An OAuth-derived token enables admin users to act on behalf of the authorizing user. A request token is a token that the consumer uses to get authorization from the user and exchanges with an OAuth verifier for an access token. The OAuth verifier is a required string that is provided with the corresponding request token in exchange for an access token. An access token is a token that the consumer uses to request Identity API tokens on behalf of the authorizing user instead of using the credentials for the user." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:300(para) -msgid "Request and access tokens use token keys to identify themselves. For OpenStack purposes, the token key is the token ID. The consumer uses a token secret to establish ownership of a specified token. Both request and access tokens have token secrets." +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:301(para) +msgid "Request and access tokens use token keys to identify themselves. For OpenStack purposes, the token key is the token ID. The consumer uses a token secret to establish ownership of a token. Both request and access tokens have token secrets." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:306(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:307(para) msgid "Delegated authentication through OAuth occurs as follows:" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:311(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:312(para) msgid "A user creates a consumer." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:314(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:315(para) msgid "The consumer gets an unauthorized request token. Then, the consumer uses the request token to initiate user authorization." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:319(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:320(para) msgid "The user authorizes the request token." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:322(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:323(para) msgid "The consumer exchanges the authorized request token and the OAuth verifier for an access token." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:325(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:326(para) msgid "The authorizing user receives the request token key from the consumer out-of-band." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:329(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:330(para) msgid "The consumer uses the access token to request an Identity API token." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:339(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:340(para) msgid "Creates a trust." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:340(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:343(para) msgid "A trust is an OpenStack Identity extension that enables delegation and, optionally, impersonation through keystone. A trust extension defines a relationship between a trustor and trustee. A trustor is the user who delegates a limited set of their own rights to another user. A trustee is the user whose trust is being delegated to, for a limited time." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:348(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:351(para) msgid "The trust can eventually enable the trustee to impersonate the trustor. For security reasons, some safety measures are added. For example, if a trustor loses a given role, any trusts and the related tokens that the user issued with that role are automatically revoked." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:355(para) +#: ./api-ref/src/docbkx/ch_identity-v3-ext.xml:358(para) msgid "For more information, see Use trusts." msgstr "" @@ -449,75 +449,143 @@ msgstr "" msgid "OpenStack Data Processing API v1.1 (CURRENT)" msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:10(title) ./api-ref/src/docbkx/itemizedlist-service-list.xml:80(link) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:14(title) ./api-ref/src/docbkx/itemizedlist-service-list.xml:80(link) msgid "Object Storage API v1 (SUPPORTED)" msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:11(para) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:15(para) msgid "Manages the accounts, containers, and objects in the Object Storage system." msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:15(para) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:19(para) msgid "To run the cURL command examples for these requests, set these environment variables:" msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:21(para) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:25(para) msgid "publicURL. The public URL that is the HTTP endpoint from where you can access Object Storage. It includes the Object Storage API version number and your account name. For example, https://23.253.72.207/v1/my_account." msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:29(para) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:33(para) msgid "token. The authentication token for Object Storage." msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:35(para) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:39(para) msgid "To obtain these values, run the command." msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:39(para) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:43(para) msgid "As shown in this example, the public URL appears in the StorageURL field, and the token appears in the Auth Token field:" msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:55(para) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:59(para) msgid "For a complete description of HTTP 1.1 header definitions, see Header Field Definitions." msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:61(title) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:65(title) msgid "Discoverability" msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:62(para) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:66(para) msgid "If configured, lists the activated capabilities for this version of the OpenStack Object Storage API." msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:73(title) ./api-ref/src/docbkx/ch_identity-v3.xml:79(title) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:77(title) msgid "Endpoints" msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:74(para) -msgid "If configured, lists endpoints for a specified account." +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:78(para) +msgid "If configured, lists endpoints for an account." msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:85(title) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:89(title) msgid "Accounts" msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:86(para) -msgid "Lists containers for a specified account. Creates, updates, shows, and deletes account metadata." +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:90(para) +msgid "Lists containers for an account. Creates, updates, shows, and deletes account metadata." msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:100(title) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:94(para) +msgid "Account metadata operations work differently than container and object metadata operations work. Depending on the contents of your account metadata request, the Object Storage API updates the metadata in one of these ways:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:101(caption) +msgid "Account metadata operations" +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:107(para) +msgid "POST request body contains" +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:121(para) ./api-ref/src/docbkx/ch_objectstorage-v1.xml:137(para) +msgid "A metadata key without a value." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:124(para) ./api-ref/src/docbkx/ch_objectstorage-v1.xml:156(para) +msgid "The metadata key already exists for the account." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:129(para) +msgid "The API removes the metadata item from the account." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:140(para) ./api-ref/src/docbkx/ch_objectstorage-v1.xml:171(para) +msgid "The metadata key does not already exist for the account." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:146(para) +msgid "The API ignores the metadata key." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:153(para) ./api-ref/src/docbkx/ch_objectstorage-v1.xml:168(para) +msgid "A metadata key value." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:161(para) +msgid "The API updates the metadata key value for the account." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:177(para) +msgid "The API adds the metadata key and value pair, or item, to the account." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:185(para) +msgid "One or more account metadata items are omitted." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:188(para) +msgid "The metadata items already exist for the account." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:194(para) +msgid "The API does not change the existing metadata items." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:202(para) +msgid "For these requests, specifying the X-Remove-Account-Meta-* request header for the key with any value is equivalent to specifying the X-Account-Meta-* request header with an empty value." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:207(para) +msgid "Metadata keys must be treated as case-insensitive at all times. These keys can contain ASCII 7-bit characters that are not control (0-31) characters, DEL, or a separator character, according to HTTP/1.1. Also, Object Storage does not support the underscore character, which it silently converts to a hyphen." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:215(para) +msgid "The metadata values in Object Storage do not follow HTTP/1.1 rules for character encodings. You must use a UTF-8 encoding to get a byte array for any string that contains characters that are not in the 7-bit ASCII 0-127 range. Otherwise, Object Storage returns the 404 response code for ISO-8859-1 characters in the 128-255 range, which is a direct violation of the HTTP/1.1 basic rules." +msgstr "" + +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:234(title) msgid "Containers" msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:101(para) -msgid "Lists objects in a specified container. Creates, shows details for, and deletes containers. Creates, updates, shows, and deletes container metadata." +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:235(para) +msgid "Lists objects in a container. Creates, shows details for, and deletes containers. Creates, updates, shows, and deletes container metadata." msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:118(title) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:252(title) msgid "Objects" msgstr "" -#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:119(para) +#: ./api-ref/src/docbkx/ch_objectstorage-v1.xml:253(para) msgid "Creates, replaces, shows details for, and deletes objects. Copies objects from another object with a new or different name. Updates object metadata." msgstr "" @@ -613,15 +681,15 @@ msgstr "" msgid "Snapshots" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v1.xml:121(title) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:329(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v1.xml:121(title) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:331(title) msgid "Quota sets extension (os-quota-sets)" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v1.xml:122(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:330(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:357(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v1.xml:122(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:332(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:359(para) msgid "Administrators only, depending on policy settings." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v1.xml:124(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:333(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v1.xml:124(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:335(para) msgid "Shows, updates, and deletes quotas for a tenant." msgstr "" @@ -638,10 +706,18 @@ msgid "The API status reflects the state of t msgstr "" #: ./api-ref/src/docbkx/preface.xml:35(para) -msgid "You must install the packages for each API separately. You can use the APIs and extensions after you authenticate through the Identity API:" +msgid "You must install the packages for each API separately." msgstr "" -#: ./api-ref/src/docbkx/preface.xml:44(para) +#: ./api-ref/src/docbkx/preface.xml:38(para) +msgid "You can use the APIs and extensions after you authenticate through the Identity API. In exchange for a set of authentication credentials, the Identity service generates tokens. A token represents the authenticated identity of a user and, optionally, grants authorization on a specific project or domain." +msgstr "" + +#: ./api-ref/src/docbkx/preface.xml:45(para) ./api-ref/src/docbkx/ch_identity-v3.xml:137(para) +msgid "The body of an authentication request must include a payload that specifies the authentication method, which is password or token, the credentials, and, optionally, the authorization scope. You can scope a token to a project or domain, or the token can be unscoped. You cannot scope a token to both a project and domain." +msgstr "" + +#: ./api-ref/src/docbkx/preface.xml:62(para) msgid "To get started with the APIs, see the OpenStack API Quick Start." msgstr "" @@ -658,249 +734,569 @@ msgid "Telemetry API v2 (CURRENT)" msgstr "" #: ./api-ref/src/docbkx/ch_telemetry-v2.xml:11(para) -msgid "Manages Telemetry operations." +msgid "Manages alarms, meters, samples, resources, and capabilities through a set of services:" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:13(title) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:17(para) +msgid "Aodh. An alarming service." +msgstr "" + +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:23(para) +msgid "Ceilometer . A data collection service." +msgstr "" + +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:29(para) +msgid "Gnocchi. A time-series database and resource indexing service." +msgstr "" + +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:36(para) +msgid "If Gnocchi is enabled, meters, samples, and resources API operations return the 410 response code." +msgstr "" + +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:41(title) msgid "Alarms" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:14(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:42(para) msgid "Lists, creates, gets details for, updates, and deletes alarms." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:40(title) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:70(title) msgid "Meters" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:41(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:71(para) msgid "Lists all meters, adds samples to meters, and lists samples for meters. For list operations, if you do not explicitly set the limit query parameter, a default limit is applied. The default limit is the default_api_return_limit configuration option value." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:48(para) -msgid "Also, computes and lists statistics for samples in a specified time range. You can use the aggregate query parameter in the statistics URI to explicitly select the stddev, cardinality, or any other standard function. For example:" +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:78(para) +msgid "Also, computes and lists statistics for samples in a time range. You can use the aggregate query parameter in the statistics URI to explicitly select the stddev, cardinality, or any other standard function. For example:" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:56(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:86(para) msgid "The aggregate.param parameter value is optional for all functions except the cardinality function." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:60(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:90(para) msgid "The API silently ignores any duplicate aggregate function and parameter pairs." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:64(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:94(para) msgid "The API accepts and storage drivers support duplicate functions with different parameter values. In this example, the cardinality function is accepted twice with two different parameter values:" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:72(emphasis) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:102(emphasis) msgid "Examples:" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:73(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:103(para) msgid "Use the stddev function to request the standard deviation of CPU utilization:" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:78(para) ./api-ref/src/docbkx/ch_telemetry-v2.xml:120(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:108(para) ./api-ref/src/docbkx/ch_telemetry-v2.xml:150(para) msgid "The response looks like this:" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:96(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:126(para) msgid "Use the cardinality function with the project ID to return the number of distinct tenants with images:" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:101(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:131(para) msgid "The following, more complex, example determines:" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:106(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:136(para) msgid "The number of distinct instances (cardinality)" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:111(para) -msgid "The total number of instance samples (count) for a specified tenant in 15-minute intervals (period and groupby options)" +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:141(para) +msgid "The total number of instance samples (count) for a tenant in 15-minute intervals (period and groupby options)" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:193(title) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:223(title) msgid "Samples" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:194(para) -msgid "Lists all samples and gets information for a specified sample." +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:224(para) +msgid "Lists all samples and gets information for a sample." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:197(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:227(para) msgid "For list operations, if you do not explicitly set the limit query parameter, a default limit is applied. The default limit is the default_api_return_limit configuration option value." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:215(title) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:245(title) msgid "Resources" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:216(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:246(para) msgid "Lists all and gets information for resources." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:229(title) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:259(title) msgid "Capabilities" msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:230(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:260(para) msgid "Gets information for API and storage capabilities." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:231(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:261(para) msgid "The Telemetry service enables you to store samples, events, and alarm definitions in supported database back ends. The capabilities resource enables you to list the capabilities that a database supports." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:237(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:267(para) msgid "The capabilities resource returns a flattened dictionary of capability properties, each with an associated boolean value. A value of true indicates that the corresponding capability is available in the back end." msgstr "" -#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:243(para) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:273(para) msgid "You can optionally configure separate database back ends for samples, events, and alarms definitions. The capabilities response shows a value of true to indicate that the definitions database for samples, events, or alarms is ready to use in a production environment." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:10(title) ./api-ref/src/docbkx/itemizedlist-service-list.xml:35(link) +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:289(title) +msgid "Events" +msgstr "" + +#: ./api-ref/src/docbkx/ch_telemetry-v2.xml:290(para) +msgid "Lists all events and shows details for an event." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:14(title) ./api-ref/src/docbkx/itemizedlist-service-list.xml:35(link) msgid "Identity API v3 (CURRENT)" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:11(para) ./api-ref/src/docbkx/ch_identity-v2.xml:11(para) -msgid "Gets an authentication token that permits access to the OpenStack services REST API." -msgstr "" - #: ./api-ref/src/docbkx/ch_identity-v3.xml:15(para) -msgid "Like most OpenStack projects, OpenStack Identity protects its APIs by defining policy rules based on a role-based access control (RBAC) approach." +msgid "The Identity service generates authentication tokens that permit access to the OpenStack services REST APIs. Clients obtain this token and the URL endpoints for other service APIs by supplying their valid credentials to the authentication service." msgstr "" #: ./api-ref/src/docbkx/ch_identity-v3.xml:21(para) -msgid "The Identity service keystone.conf configuration file sets the name and location of a JSON policy file that stores these rules." +msgid "Each time you make a REST API request to an OpenStack service, you supply your authentication token in the X-Auth-Token request header." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:27(para) +#: ./api-ref/src/docbkx/ch_identity-v3.xml:26(para) +msgid "Like most OpenStack projects, OpenStack Identity protects its APIs by defining policy rules based on a role-based access control (RBAC) approach." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:31(para) +msgid "The Identity service keystone.conf configuration file sets the name and location of a JSON policy file that stores these rules." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:36(para) msgid "For information about Identity API protection, see Identity API protection with role-based access control (RBAC) in the OpenStack Cloud Administrator Guide." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:48(para) -msgid "Manages tokens." +#: ./api-ref/src/docbkx/ch_identity-v3.xml:42(para) +msgid "This page lists the Identity API operations in the following order:" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:61(title) -msgid "Service catalog" +#: ./api-ref/src/docbkx/ch_identity-v3.xml:53(link) +msgid "Authentication and token management" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:62(para) -msgid "Manages the catalog of services." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:80(para) -msgid "Manages endpoints." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:90(title) -msgid "Domains" -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:91(para) -msgid "Manages domains." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:92(para) -msgid "Domains represent collections of users, groups, and projects. Each is owned by exactly one domain. Users, however, can be associated with multiple projects by granting roles to the user on a project, including projects owned by other domains." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:95(para) -msgid "Each domain defines a namespace where certain API-visible name attributes exist, which affects whether those names must be globally unique or unique within that domain. In the Identity API, the uniqueness of the following attributes is as follows:" -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:100(para) -msgid "Domain name. Globally unique across all domains." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:104(para) -msgid "Role name. Globally unique across all domains." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:108(para) -msgid "User name. Unique within the owning domain." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:112(para) -msgid "Project name. Unique within the owning domain." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:116(para) -msgid "Group name. Unique within the owning domain." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:155(title) -msgid "Projects" -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:156(para) -msgid "Manages projects." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:194(para) -msgid "Manages users." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:218(title) -msgid "Groups" -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:219(para) -msgid "Manages groups." -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:247(title) +#: ./api-ref/src/docbkx/ch_identity-v3.xml:58(link) msgid "Credentials" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:248(para) -msgid "Manages credentials." +#: ./api-ref/src/docbkx/ch_identity-v3.xml:63(link) +msgid "Domains" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:266(title) -msgid "Roles" +#: ./api-ref/src/docbkx/ch_identity-v3.xml:68(link) +msgid "Domain configuration" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:267(para) -msgid "Manages roles." +#: ./api-ref/src/docbkx/ch_identity-v3.xml:73(link) +msgid "Groups" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:289(title) +#: ./api-ref/src/docbkx/ch_identity-v3.xml:78(link) msgid "Policies" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:290(para) -msgid "Manages policies." +#: ./api-ref/src/docbkx/ch_identity-v3.xml:83(link) +msgid "Projects" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:291(para) -msgid "You can encode policy rule sets into a blob to be consumed by remote services. To do so, set type to application/json and specify policy rules as JSON strings in a blob. For example:" -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:300(para) -msgid "Or:" -msgstr "" - -#: ./api-ref/src/docbkx/ch_identity-v3.xml:322(title) +#: ./api-ref/src/docbkx/ch_identity-v3.xml:88(link) msgid "Regions" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:323(para) -msgid "Manages regions." +#: ./api-ref/src/docbkx/ch_identity-v3.xml:93(link) +msgid "Roles" msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:324(para) +#: ./api-ref/src/docbkx/ch_identity-v3.xml:98(link) +msgid "Role assignments" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:103(link) +msgid "Service catalog and endpoints" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:117(para) +msgid "You can list information about all Identity API versions or show details for the most recent Identity API v3 micro-version." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:130(title) +msgid "Authentication and token management (auth, tokens)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:131(para) +msgid "In exchange for a set of authentication credentials, the Identity service generates tokens. A token represents the authenticated identity of a user and, optionally, grants authorization on a specific project or domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:145(para) +msgid "Tokens have IDs, which the Identity API returns in the X-Subject-Token response header." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:149(para) +msgid "Also, validates an authentication token and lists the domains, projects, roles, and endpoints to which the token gives access. Forces the immediate revocation of a token." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:154(para) +msgid "After you obtain an authentication token, you can:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:159(para) +msgid "Make REST API requests to other OpenStack services. You supply the ID of your authentication token in the X-Auth-Token request header." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:166(para) +msgid "Validate your authentication token and list the domains, projects, roles, and endpoints that your token gives you access to." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:173(para) +msgid "Use your token to request another token scoped for a different domain and project." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:179(para) +msgid "Force the immediate revocation of a token." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:184(para) +msgid "List revoked public key infrastructure (PKI) tokens." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:189(para) +msgid "The Identity API treats expired tokens as no longer valid tokens. The deployment determines how long expired tokens are stored." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:194(para) +msgid "These authentication errors can occur:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:198(caption) +msgid "Authentication errors" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:203(th) +msgid "Response code" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:211(code) +msgid "Bad Request (400)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:215(para) +msgid "The Identity service failed to parse the request as expected. One of the following errors occurred:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:221(para) +msgid "A required attribute was missing." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:226(para) +msgid "An attribute that is not allowed was specified, such as an ID on a request in a basic CRUD operation." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:233(para) +msgid "An attribute of an unexpected data type was specified." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:244(code) +msgid "Unauthorized (401)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:248(para) +msgid "One of the following errors occurred:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:253(para) +msgid "Authentication was not performed." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:258(para) +msgid "The specified X-Auth-Token header is not valid." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:264(para) +msgid "The authentication credentials are not valid." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:274(code) +msgid "Forbidden (403)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:278(para) +msgid "The identity was successfully authenticated but it is not authorized to perform the requested action." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:287(code) +msgid "Not Found (404)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:291(para) +msgid "An operation failed because a referenced entity cannot be found by ID. For a request, the referenced entity might be specified in the request body rather than in the resource path." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:302(code) +msgid "Conflict (409)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:306(para) +msgid "A or operation failed. For example, a client tried to update a unique attribute for an entity, which conflicts with that of another entity in the same collection." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:312(para) +msgid "Or, a client issued a create operation twice on a collection with a user-defined, unique attribute. For example, a client made a /users request two times for the unique, user-defined name attribute for a user entity." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:342(title) +msgid "Credentials (credentials)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:343(para) +msgid "In exchange for a set of authentication credentials that the user submits, the Identity service generates and returns a token. A token represents the authenticated identity of a user and, optionally, grants authorization on a specific project or domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:349(para) +msgid "You can list all credentials, and create, show details for, update, and delete a credential." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:362(title) +msgid "Domains (domains, users, groups, roles)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:363(para) +msgid "A domain is a collection of users, groups, and projects. Each group and project is owned by exactly one domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:367(para) +msgid "Each domain defines a namespace where certain API-visible name attributes exist, which affects whether those names must be globally unique or unique within that domain. In the Identity API, the uniqueness of these attributes is as follows:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:375(para) +msgid "Domain name. Globally unique across all domains." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:381(para) +msgid "Role name. Globally unique across all domains." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:387(para) +msgid "User name. Unique within the owning domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:393(para) +msgid "Project name. Unique within the owning domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:399(para) +msgid "Group name. Unique within the owning domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:423(title) +msgid "Domain configuration (domains, config) (since v3.4) (EXPERIMENTAL)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:424(para) +msgid "You can manage domain-specific configuration options." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:427(para) +msgid "Domain-specific configuration options are structured within their group objects. The API supports only the identity and ldap groups. These groups override the default configuration settings for the storage of users and groups by the Identity server." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:434(para) +msgid "You can create, update, and delete domain-specific configuration options by using the HTTP , , and methods. When updating, it is only necessary to include those options that are being updated." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:440(para) +msgid "To create an option, use the method. The Identity API does not return options that are considered sensitive, although you can create and update these options. The only option currently considered sensitive is the password option within the ldap group." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:447(para) +msgid "The API enables you to include sensitive options as part of non- sensitive options. For example, you can include the password as part of the url option." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:452(para) +msgid "If you try to create or update configuration options for groups other than the identitycode> or ldap groups, the Forbidden (403) response code is returned." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:458(para) +msgid "For information about how to integrate the Identity service with LDAP, see Integrate Identity with LDAP." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:473(title) +msgid "Groups (groups, users)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:474(para) +msgid "A group is a collection of users. Each group is owned by a domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:477(para) +msgid "When you grant a role to a group, you explicitly associate that group with a project or domain. This action is equivalent to granting the role to each group member on that project and domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:482(para) +msgid "When you grant a role to a group, that role is automatically granted to any user that you add to the group. When you revoke a role from a group, that role is automatically revoked from any user that you remove from the group. Any token that authenticates that user, project, and domain is revoked." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:489(para) +msgid "As with users, a group without any role grants is useless from the perspective an OpenStack service and has no access to resources. However, a group without role grants is permitted as a way of acquiring or loading users and groups from external sources before mapping them to projects and domains." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:507(title) +msgid "Policies (policies)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:508(para) +msgid "A policy is an arbitrarily serialized policy engine rule set to be consumed by a remote service." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:512(para) +msgid "You encode policy rule sets into a blob to be consumed by remote services. To do so, set type to application/json and specify policy rules as JSON strings in a blob. For example:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:541(title) +msgid "Projects (projects, users, groups, roles)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:542(para) +msgid "A project is the base unit of ownership. Resources are owned by a specific project. A project is owned by a specific domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:546(para) +msgid "(Since v3.4) You can create a hierarchy of projects by setting a parent ID when you create projects. All projects in a hierarchy must be owned by the same domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:551(para) +msgid "(Since v3.6) Optionally, you can create a project that behaves both as a project and a domain. As a domain, the project provides a name space in which you can create users, groups, and other projects. If you create a project that behaves as a domain, you cannot update this project to behave like a regular project." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:578(title) +msgid "Regions (regions) (since v3.2)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:579(para) msgid "A region is a general division of an OpenStack deployment. You can associate zero or more sub-regions with a region to create a tree-like structured hierarchy." msgstr "" -#: ./api-ref/src/docbkx/ch_identity-v3.xml:329(para) +#: ./api-ref/src/docbkx/ch_identity-v3.xml:584(para) msgid "Although a region does not have a geographical connotation, a deployment can use a geographical name for a region, such as us-east." msgstr "" +#: ./api-ref/src/docbkx/ch_identity-v3.xml:589(para) +msgid "You can list, create, update, show details for, and delete regions." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:603(title) +msgid "Roles (roles)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:604(para) +msgid "Roles grant a user a set of permitted actions for either a specific project or an entire domain." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:608(para) +msgid "You can grant roles to a user on a project, including projects owned by other domains." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:612(para) +msgid "You can create, list, and delete roles. You can also list roles assigned to a specified domain, project, or user." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:616(para) +msgid "You can list role assignments and, since v3.6, all role assignments within a tree of projects. Use the query parameters to filter the list because the role assignments list can be long. Some typical examples are:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:624(para) +msgid "List role assignments for the specified user:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:630(para) +msgid "List role assignments for the specified project:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:636(para) +msgid "List all role assignments for a specified project and its sub- projects:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:640(para) +msgid "If you specify include_subtree=true, you must also specify the scope.project.id. Otherwise, this call returns the Bad Request (400) response code." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:648(para) +msgid "Each role assignment entity in the collection contains a link to the assignment that created the entity." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:652(para) +msgid "Use the effective query parameter to list effective assignments at the user, project, and domain level. This parameter allows for the effects of group membership. The group role assignment entities themselves are not returned in the collection. This represents the effective role assignments that would be included in a scoped token." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:660(para) +msgid "In the response, the links entity section for entities for group members also contains a URL that enables access to the membership of the group." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:665(para) +msgid "You can use the other query parameters with the effective parameter, such as:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:671(para) +msgid "Determine what a user can actually do:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:677(para) +msgid "Get the equivalent set of role assignments that are included in a project-scoped token response:" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:739(title) +msgid "Service catalog and endpoints (services, endpoints)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:740(para) +msgid "A service is an OpenStack web service that you can access through a URL, or endpoint." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:744(para) +msgid "A service catalog lists the services that are available to the caller based upon the current authorization." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:748(para) +msgid "You can create, list, show details for, update, and delete services. When you create or update a service, you can enable the service, which causes it and its endpoints to appear in the service catalog." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:754(para) +msgid "You can create, list, show details for, update, and delete endpoints." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:768(title) +msgid "Users (users, groups, projects, roles)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:769(para) +msgid "A user is an individual API consumer that is owned by a domain. A role explicitly associates a user with projects or domains. A user with no assigned roles has no access to OpenStack resources." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:774(para) +msgid "You can list, create, show details for, update, delete, and change the password for users." +msgstr "" + +#: ./api-ref/src/docbkx/ch_identity-v3.xml:777(para) +msgid "You can also list groups, projects, and roles for a specified user. To list user roles, see Roles." +msgstr "" + #: ./api-ref/src/docbkx/api-ref.xml:11(title) msgid "OpenStack API Reference" msgstr "" @@ -909,6 +1305,10 @@ msgstr "" msgid "Identity API v2.0 (SUPPORTED)" msgstr "" +#: ./api-ref/src/docbkx/ch_identity-v2.xml:11(para) +msgid "Gets an authentication token that permits access to the OpenStack services REST API." +msgstr "" + #: ./api-ref/src/docbkx/api-ref-objectstorage-v1.xml:11(title) msgid "OpenStack Object Storage API v1 (SUPPORTED)" msgstr "" @@ -973,7 +1373,7 @@ msgstr "" msgid "Some cloud implementations do not expose this API and offer pretested images only." msgstr "" -#: ./api-ref/src/docbkx/ch_images-v1.xml:72(title) +#: ./api-ref/src/docbkx/ch_images-v1.xml:76(title) msgid "Shared images" msgstr "" @@ -1030,7 +1430,7 @@ msgid "Extensions" msgstr "" #: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:17(para) -msgid "Lists available Networking API v2.0 extensions and shows details for a specified extension." +msgid "Lists available Networking API v2.0 extensions and shows details for an extension." msgstr "" #: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:29(title) @@ -1069,267 +1469,267 @@ msgstr "" msgid "To define multiple physical bindings for a network, include a segments list in the request body of a POST /v2.0/networks request. Each element in the segments list has the same structure as the provider network attributes. These attributes are provider:network_type, provider:physical_network, and provider:segmentation_id. The validation rules for these attributes are the same as for the Networks provider extended attributes. You cannot use both extensions at the same time." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:77(para) -msgid "The NSX and ML2 plug-ins support this extension. With the ML2 plug-in, you can specify multiple VLANs for a specified network, a VXLAN tunnel ID, and a VLAN." +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:80(para) +msgid "The NSX and ML2 plug-ins support this extension. With the ML2 plug-in, you can specify multiple VLANs for a network, a VXLAN tunnel ID, and a VLAN." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:83(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:89(title) msgid "VLAN transparency extension (networks)" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:84(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:90(para) msgid "Enables plug-ins that support VLAN transparency to deliver VLAN-transparent trunk networks. If the service does not support VLAN transparency and a user requests a VLAN-transparent network, the plug-in refuses to create one and returns an appropriate error to the user." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:91(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:97(para) msgid "You cannot update the vlan-transparent attribute. If you try to do so, an error occurs." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:95(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:101(para) msgid "To delete a VLAN-transparent network, issue a normal delete network request." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:99(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:105(para) msgid "The ML2 plug-in currently supports this extension. With the ML2 plug-in, you can set the vlan-transparent attribute to either true or false." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:108(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:114(title) msgid "Ports binding extended attributes (ports)" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:109(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:115(para) msgid "Lists, creates, shows information for, and updates ports." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:123(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:129(title) msgid "Security groups (security-groups)" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:124(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:130(para) msgid "Lists, creates, shows information for, updates, and deletes security groups." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:141(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:147(title) msgid "Security group rules (security-group-rules)" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:142(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:148(para) msgid "Lists, creates, shows information for, and deletes security group rules." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:160(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:166(title) msgid "Layer-3 networking" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:161(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:167(para) msgid "Routes packets between subnets, forwards packets from internal networks to external ones, and accesses instances from external networks through floating IPs." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:163(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:210(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:439(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:169(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:216(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:445(para) msgid "This extension introduces these resources:" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:166(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:172(para) msgid "router. A logical entity for forwarding packets across internal subnets and NATting them on external networks through an appropriate external gateway." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:171(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:177(para) msgid "floatingip. An external IP address that is mapped to a port that is attached to an internal network." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:179(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:185(title) msgid "Metering labels and rules" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:180(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:186(para) msgid "Creates, modifies, and deletes OpenStack Layer3 metering labels and rules." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:185(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:191(title) msgid "Firewall-as-a-Service (FWaaS) 2.0 (CURRENT)" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:186(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:192(para) msgid "The FWaaS extension enables you to deploy firewalls to protect your networks." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:190(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:196(para) msgid "The FWaaS extension enables you to:" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:195(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:201(para) msgid "Apply firewall rules on traffic entering and leaving tenant networks." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:199(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:205(para) msgid "Apply TCP, UDP, ICMP, or protocol-agnostic rules." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:203(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:209(para) msgid "Create and share firewall policies that hold an ordered collection of the firewall rules." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:207(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:213(para) msgid "Audit firewall rules and policies." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:213(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:219(para) msgid "firewall. A logical firewall resource that a tenant can instantiate and manage. A firewall is associated with one firewall policy." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:219(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:225(para) msgid "firewall_policy. An ordered collection of firewall rules. You can share a firewall policy across tenants. You can include a firewall policy as part of an audit workflow so that an authorized relevant entity can audit the firewall policy. This entity can be different from the tenant who created or the tenants that use the firewall policy." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:229(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:235(para) msgid "firewall_rule. A collection of attributes like ports and IP addresses that define match criteria and action, such as allow or deny, that must be taken on the matched data traffic." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:268(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:274(title) msgid "Load-Balancer-as-a-Service (LBaaS) 1.0 (STABLE)" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:269(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:275(para) msgid "The LBaaS version 1.0 extension pairs with the Networking 2.0 API to enable OpenStack tenants to manage load balancers for their VMs. With this extension, you can load-balance client traffic from one network to application services, such as VMs, on the same network." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:276(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:282(para) msgid "Use this extension to create and manage virtual IP addresses (VIPs), pools, members of a pool, health monitors associated with a pool, and view status of a resource." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:282(caption) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:345(caption) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:288(caption) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:351(caption) msgid "Load balancer statuses" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:293(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:356(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:299(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:362(para) msgid "ACTIVE" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:294(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:357(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:300(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:363(para) msgid "Resource is ready and active." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:297(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:360(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:303(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:366(para) msgid "PENDING_CREATE" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:298(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:361(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:304(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:367(para) msgid "Resource is being created." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:301(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:364(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:307(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:370(para) msgid "PENDING_UPDATE" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:302(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:365(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:308(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:371(para) msgid "Resource is being updated." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:305(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:368(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:311(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:374(para) msgid "PENDING_DELETE" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:306(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:369(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:312(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:375(para) msgid "Resource is pending deletion." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:309(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:372(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:315(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:378(para) msgid "INACTIVE" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:310(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:373(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:316(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:379(para) msgid "Resource was created but is not active." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:313(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:376(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:319(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:382(para) msgid "ERROR" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:315(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:377(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:321(para) ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:383(para) msgid "Object within the service is not working. The error_details attribute provides an explanation for the error, its cause, and possibly a solution." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:331(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:337(title) msgid "Load-Balancer-as-a-Service (LBaaS) 2.0 (EXPERIMENTAL)" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:332(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:338(para) msgid "The LBaaS version 2.0 extension pairs with the Networking 2.0 API to enable OpenStack tenants to manage load balancers for their VMs. With this extension you can load-balance client traffic from one network to application services, such as VMs, on the same network." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:339(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:345(para) msgid "Use this extension to create and manage load balancers, listeners, pools, members of a pool, and health monitors associated with a pool and view status of a resource." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:391(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:397(title) msgid "Subnet pools extension (subnetpools)" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:392(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:398(para) msgid "Manages subnet pools" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:406(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:412(title) msgid "Virtual-Private-Network-as-a-Service (VPNaaS) 2.0 (CURRENT)" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:407(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:413(para) msgid "The VPNaaS extension enables OpenStack tenants to extend private networks across the public telecommunication infrastructure." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:411(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:417(para) msgid "This initial implementation of the VPNaaS extension provides:" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:416(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:422(para) msgid "Site-to-site VPN that connects two private networks." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:420(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:426(para) msgid "Multiple VPN connections per tenant." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:423(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:429(para) msgid "IKEv1 policy support with 3des, aes-128, aes-256, or aes-192 encryption." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:427(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:433(para) msgid "IPSec policy support with 3des, aes-128, aes-192, or aes-256 encryption, sha1 authentication, ESP, AH, or AH-ESP transform protocol, and tunnel or transport mode encapsulation." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:435(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:441(para) msgid "Dead Peer Detection (DPD) with hold, clear, restart, disabled, or restart-by-peer actions." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:442(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:448(para) msgid "service. A parent object that associates VPN with a specific subnet and router." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:446(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:452(para) msgid "ikepolicy. The Internet Key Exchange (IKE) policy that identifies the authentication and encryption algorithm to use during phase one and two negotiation of a VPN connection." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:454(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:460(para) msgid "ipsecpolicy. The IP security policy that specifies the authentication and encryption algorithm and encapsulation mode to use for the established VPN connection." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:462(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:468(para) msgid "ipsec-site-connection. Details for the site-to-site IPsec connection, including the peer CIDRs, MTU, authentication mode, peer address, DPD settings, and status." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:473(title) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:479(title) msgid "Extra routes" msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:474(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:480(para) msgid "Adds extra routes to the router resource." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:476(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:482(para) msgid "You can update a router to add a set of next hop IPs and destination CIDRs." msgstr "" -#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:479(para) +#: ./api-ref/src/docbkx/ch_netconn-v2-ext.xml:485(para) msgid "The next hop IP must be part of a subnet to which the router interfaces are connected. You can configure the routes attribute on only update operations." msgstr "" @@ -1414,7 +1814,7 @@ msgid "A share is a remote, mountable file system. You can mount a share to and msgstr "" #: ./api-ref/src/docbkx/ch_share-v2.xml:109(para) -msgid "You can create a share and associate it with a network, list shares, and show information for, update, and delete a specified share." +msgid "You can create a share and associate it with a network, list shares, and show information for, update, and delete a share." msgstr "" #: ./api-ref/src/docbkx/ch_share-v2.xml:113(para) @@ -1449,7 +1849,7 @@ msgstr "" msgid "Share statuses" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:158(code) ./api-ref/src/docbkx/ch_share-v2.xml:390(code) ./api-ref/src/docbkx/ch_share-v2.xml:432(code) ./api-ref/src/docbkx/ch_share-v2.xml:679(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:74(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:211(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:427(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:158(code) ./api-ref/src/docbkx/ch_share-v2.xml:389(code) ./api-ref/src/docbkx/ch_share-v2.xml:431(code) ./api-ref/src/docbkx/ch_share-v2.xml:678(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:74(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:213(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:429(para) msgid "creating" msgstr "" @@ -1457,7 +1857,7 @@ msgstr "" msgid "The share is being created." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:166(code) ./api-ref/src/docbkx/ch_share-v2.xml:393(code) ./api-ref/src/docbkx/ch_share-v2.xml:435(code) ./api-ref/src/docbkx/ch_share-v2.xml:670(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:93(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:235(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:451(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:166(code) ./api-ref/src/docbkx/ch_share-v2.xml:392(code) ./api-ref/src/docbkx/ch_share-v2.xml:434(code) ./api-ref/src/docbkx/ch_share-v2.xml:669(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:93(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:237(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:453(para) msgid "deleting" msgstr "" @@ -1465,7 +1865,7 @@ msgstr "" msgid "The share is being deleted." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:174(code) ./api-ref/src/docbkx/ch_share-v2.xml:387(code) ./api-ref/src/docbkx/ch_share-v2.xml:429(code) ./api-ref/src/docbkx/ch_share-v2.xml:661(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:97(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:247(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:463(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:174(code) ./api-ref/src/docbkx/ch_share-v2.xml:386(code) ./api-ref/src/docbkx/ch_share-v2.xml:428(code) ./api-ref/src/docbkx/ch_share-v2.xml:660(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:97(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:249(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:465(para) msgid "error" msgstr "" @@ -1473,7 +1873,7 @@ msgstr "" msgid "An error occurred during share creation." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:184(code) ./api-ref/src/docbkx/ch_share-v2.xml:396(code) ./api-ref/src/docbkx/ch_share-v2.xml:438(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:102(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:475(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:184(code) ./api-ref/src/docbkx/ch_share-v2.xml:395(code) ./api-ref/src/docbkx/ch_share-v2.xml:437(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:102(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:477(para) msgid "error_deleting" msgstr "" @@ -1481,7 +1881,7 @@ msgstr "" msgid "An error occurred during share deletion." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:194(code) ./api-ref/src/docbkx/ch_share-v2.xml:384(code) ./api-ref/src/docbkx/ch_share-v2.xml:426(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:78(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:223(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:439(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:194(code) ./api-ref/src/docbkx/ch_share-v2.xml:383(code) ./api-ref/src/docbkx/ch_share-v2.xml:425(code) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:78(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:225(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:441(para) msgid "available" msgstr "" @@ -1582,7 +1982,7 @@ msgid "Share actions" msgstr "" #: ./api-ref/src/docbkx/ch_share-v2.xml:319(para) -msgid "Grants or revokes share access, lists the permissions for a specified share, and explicitly updates the state of a share." +msgid "Grants or revokes share access, lists the permissions for a share, and explicitly updates the state of a share." msgstr "" #: ./api-ref/src/docbkx/ch_share-v2.xml:323(para) @@ -1610,322 +2010,322 @@ msgid "cert. Authenticates an instance through a TLS certificate. S msgstr "" #: ./api-ref/src/docbkx/ch_share-v2.xml:361(para) -msgid "user. Authenticates by a specified user or group name. A valid value is an alphanumeric string that can contain some special characters and is from 4 to 32 characters long." +msgid "user. Authenticates by a user or group name. A valid value is an alphanumeric string that can contain some special characters and is from 4 to 32 characters long." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:369(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:368(para) msgid "To verify that the access rules (ACL) were configured correctly for a share, you list permissions for a share." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:373(para) -msgid "As administrator, you can reset the state of a share and force-delete a specified share in any state. Use the policy.json file to grant permissions for this action to other roles." +#: ./api-ref/src/docbkx/ch_share-v2.xml:372(para) +msgid "As administrator, you can reset the state of a share and force-delete a share in any state. Use the policy.json file to grant permissions for this action to other roles." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:379(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:378(para) msgid "You can set the state of a share to one of these supported states:" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:412(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:411(title) msgid "Share snapshots" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:413(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:412(para) msgid "Use the shared file service to make snapshots of shares. A share snapshot is a point-in-time, read-only copy of the data that is contained in a share. You can create, update, and delete share snapshots. After you create a share snapshot, you can create a share from it." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:420(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:419(para) msgid "You can update a share snapshot to rename it, change its description, or update its state to one of these supported states:" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:441(para) -msgid "As administrator, you can also reset the state of a snapshot and force-delete a specified share snapshot in any state. Use the policy.json file to grant permissions for these actions to other roles." +#: ./api-ref/src/docbkx/ch_share-v2.xml:440(para) +msgid "As administrator, you can also reset the state of a snapshot and force-delete a share snapshot in any state. Use the policy.json file to grant permissions for these actions to other roles." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:467(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:466(title) msgid "Share networks" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:468(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:467(para) msgid "A share network stores network information that share servers can use where shares are hosted. You can associate a share with a single share network. When you create a share, you can optionally specify the ID of a share network through which instances can access the share." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:475(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:474(para) msgid "You can create, update, view, and delete a share network." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:478(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:477(para) msgid "When you create a share network, you can specify only one type of network:" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:483(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:482(para) msgid "Neutron network. Specify a network ID and subnet ID." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:487(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:486(para) msgid "Nova network. Specify a network ID." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:491(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:490(para) msgid "For more information about supported plug-ins for share networks, see Manila Network Plugins." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:497(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:496(para) msgid "A share network has these attributes:" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:502(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:501(para) msgid "The IP block in Classless Inter-Domain Routing (CIDR) notation from which to allocate the network." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:508(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:507(para) msgid "The IP version of the network." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:513(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:512(para) msgid "The network type, which is vlan, vxlan, gre, or flat." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:520(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:519(para) msgid "If the network uses segmentation, a segmentation identifier. For example, VLAN, VXLAN, and GRE networks use segmentation." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:547(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:546(title) msgid "Security services" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:548(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:547(para) msgid "You can create, update, view, and delete a security service. A security service stores configuration information for clients for authentication and authorization (AuthN/AuthZ). For example, a share server will be the client for an existing service such as LDAP, Kerberos, or Microsoft Active Directory." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:555(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:554(para) msgid "You can associate a share with from one to three security service types:" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:561(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:560(para) msgid "ldap. LDAP." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:565(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:564(para) msgid "kerberos. Kerberos." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:570(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:569(para) msgid "active_directory. Microsoft Active Directory." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:575(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:574(para) msgid "You can configure a security service with these options:" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:580(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:579(para) msgid "A DNS IP address." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:583(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:582(para) msgid "An IP address or host name." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:586(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:585(para) msgid "A domain." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:589(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:588(para) msgid "A user or group name." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:593(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:592(para) msgid "The password for the user, if you specify a user name." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:612(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:611(title) msgid "Share servers" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:613(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:612(para) msgid "A share server is created by multi-tenant back-end drivers where shares are hosted. For example, with the generic driver, shares are hosted on Compute VMs. With the cluster_mode driver from NetApp, shares are hosted on virtual storage servers, also known as Vservers or SVMs." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:620(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:619(para) msgid "Administrators can perform read and delete actions for share servers. An administrator can delete an active share server only if it contains no dependent shares. If an administrator deletes the share server, the Shared File Systems service creates a share server in response to a subsequent create share request." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:627(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:626(para) msgid "An administrator can use the policy.json file to grant permissions for share server actions to other roles." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:631(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:630(para) msgid "The status of a share server indicates its current state. After you successfully set up a share server, its status is active. If errors occur during set up such as when server data is not valid, its status is error." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:637(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:636(para) msgid "The possible share servers statuses are:" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:641(caption) +#: ./api-ref/src/docbkx/ch_share-v2.xml:640(caption) msgid "Share server statuses" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:656(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:655(para) msgid "Share server was successfully set up." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:664(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:663(para) msgid "The set up or deletion of the share server failed." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:673(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:672(para) msgid "The share server has no dependent shares and is being deleted." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:682(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:681(para) msgid "The share server is being created on the back end with data from the database." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:704(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:703(title) msgid "Share instances (since API v2.3)" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:705(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:704(para) msgid "Administrators can list, show information for, explicitly set the state of, and force-delete share instances. Use the policy.json file to grant permissions for these actions to other roles." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:725(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:724(title) msgid "Share types" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:726(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:725(para) msgid "A share type enables you to filter or choose back ends before you create a share. A share type behaves in the same way as a Block Storage volume type behaves." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:731(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:730(para) msgid "You set a share type to private or public and manage the access to the private share types." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:735(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:734(para) msgid "When you issue a create a share type request, you can submit a request body with either a share_type or volume_type object. The use of the volume_type object is deprecated but supported. It is recommended that you use the share_type object when you create a share type." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:743(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:742(para) msgid "No matter which object type you include in the request, the API creates both a volume_type object and a share_type object. Both objects have the same ID. When you issue a list share types request, the response shows both share_types and volume_types objects." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:750(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:749(para) msgid "You can set share types as either public or private. By default a share type is created as publicly accessible. Set os-share-type-access:is_public to False to make the share type private." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:755(para) -msgid "You can manage the access to the private share types for the different projects. You can add access, remove access, and get information about access for a specified private share type." +#: ./api-ref/src/docbkx/ch_share-v2.xml:754(para) +msgid "You can manage the access to the private share types for the different projects. You can add access, remove access, and get information about access for a private share type." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:760(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:759(para) msgid "Administrators can create share types with these extra specifications that are used to filter back ends:" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:766(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:765(para) msgid "driver_handles_share_servers. Required. Defines the driver mode for share server, or storage, life cycle management. The Shared File Systems service creates a share server for the export of shares." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:771(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:770(para) msgid "Set to True when the share driver manages, or handles, the share server life cycle." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:775(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:774(para) msgid "Set to False when an administrator rather than a share driver manages the storage life cycle." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:781(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:780(para) msgid "snapshot_support. Filters back ends by whether they do or do not support share snapshots." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:785(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:784(para) msgid "Set to True to find back ends that support share snapshots." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:788(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:787(para) msgid "Set to False to find back ends that do not support share snapshots." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:794(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:793(para) msgid "Administrators can also set additional extra specifications for a share type for the following purposes:" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:800(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:799(para) msgid "Filter back ends. Specify these unqualified extra specifications in this format: extra_spec=value. For example, netapp_raid_type=raid4." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:808(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:807(para) msgid "Set data for the driver. Except for the special capabilities prefix, you specify these qualified extra specifications with its prefix followed by a colon: vendor:extra_spec=value. For example, netapp:thin_provisioned=true." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:817(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:816(para) msgid "The scheduler uses the special capabilities prefix for filtering. The scheduler can only create a share on a back end that reports capabilities that match the unscoped extra-spec keys for the share type. For details, see Capabilities and Extra-Specs." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:824(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:823(para) msgid "Each driver implementation determines which extra specification keys it uses. For details, see the documentation for the driver." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:828(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:827(para) msgid "An administrator can use the policy.json file to grant permissions for share type creation with extra specifications to other roles." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:861(title) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:523(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:860(title) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:525(title) msgid "Back-end storage pools" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:862(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:861(para) msgid "An administrator can list all back-end storage pools that are known to the scheduler service." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:876(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:875(title) msgid "Services" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:877(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:876(para) msgid "Lists services. Services include manila-share and manila-scheduler and their binaries, hosts, availability zones, current statuses, and states (up or down)." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:883(para) -msgid "Administrators can also enable or disable a specified service." +#: ./api-ref/src/docbkx/ch_share-v2.xml:882(para) +msgid "Administrators can also enable or disable a service." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:899(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:898(title) msgid "Availability zones" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:900(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:899(para) msgid "Describes availability zones." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:910(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:909(title) msgid "Manage share" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:911(para) -msgid "Configures Shared File Systems to manage a specified share." +#: ./api-ref/src/docbkx/ch_share-v2.xml:910(para) +msgid "Configures Shared File Systems to manage a share." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:921(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:920(title) msgid "Unmanage share" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:922(para) -msgid "Configures Shared File Systems to unmanage a specified share." +#: ./api-ref/src/docbkx/ch_share-v2.xml:921(para) +msgid "Configures Shared File Systems to unmanage a share." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:925(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:924(para) msgid "The share unmanage operation is not supported for shares that are created on top of share servers (created with share networks)." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:929(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:928(para) msgid "You can unmanage a share that has no dependent snapshots." msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:939(title) +#: ./api-ref/src/docbkx/ch_share-v2.xml:938(title) msgid "Quota sets" msgstr "" -#: ./api-ref/src/docbkx/ch_share-v2.xml:940(para) +#: ./api-ref/src/docbkx/ch_share-v2.xml:939(para) msgid "Provides quotas management support." msgstr "" @@ -1978,7 +2378,7 @@ msgid "Passwords" msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:90(para) -msgid "When you create a server, you can specify a password through the optional adminPass attribute. The specified password must meet the complexity requirements set by your OpenStack Compute provider. The server might enter an ERROR state if the complexity requirements are not met. In this case, a client might issue a change password action to reset the server password." +msgid "When you create a server, you can specify a password through the optional adminPass attribute. The password must meet the complexity requirements set by your OpenStack Compute provider. The server might enter an ERROR state if the complexity requirements are not met. In this case, a client might issue a change password action to reset the server password." msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:98(para) @@ -2046,7 +2446,7 @@ msgid "The file injection might not occur until after the server is built and bo msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:187(para) -msgid "During file injection, any existing files that match specified files are renamed to include the BAK extension appended with a time stamp. For example, if the /etc/passwd file exists, it is backed up as /etc/passwd.bak.1246036261.5785." +msgid "During file injection, any existing files that match files in the request are renamed to include the BAK extension appended with a time stamp. For example, if the /etc/passwd file exists, it is backed up as /etc/passwd.bak.1246036261.5785." msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:193(para) @@ -2102,7 +2502,7 @@ msgid "Servers IPs (servers, ips)" msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:315(para) -msgid "Lists the IP addresses assigned to an instance or shows details for a specified IP address." +msgid "Lists the IP addresses assigned to an instance or shows details for an IP address." msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:324(title) @@ -2114,386 +2514,382 @@ msgid "Lists metadata, creates or replaces one or more metadata items, and updat msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:329(para) -msgid "Shows details for, creates or replaces, and updates a specified metadata item, by key, for a server." +msgid "Shows details for, creates or replaces, and updates a metadata item, by key, for a server." msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:338(title) -msgid "Servers action (servers, os-server-actions)" +msgid "Servers action (servers, os-instance-actions)" msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:339(para) -msgid "Permits all users to list available server actions for a specified server. Permits administrators to get details for a specified server action for a specified server." +msgid "Permits all users to list available server actions for a server. Permits administrators to get details for a server action for a server." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:349(title) -msgid "Servers password (servers, os-server-password)" +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:348(title) +msgid "Port interfaces (servers, os-interface)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:350(para) -msgid "Gets the encrypted administrative password set through the metadata service." +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:349(para) +msgid "Creates a port interface and uses it to attach a port to a server and detaches a port interface from a server. Also, lists all port interfaces and shows details for a port interface." msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:359(title) -msgid "Servers virtual interfaces (servers, os-virtual-interfaces)" +msgid "Servers password (servers, os-server-password)" msgstr "" #: ./api-ref/src/docbkx/ch_compute-v2.1.xml:360(para) -msgid "Lists virtual interfaces for a specified server instance." +msgid "Gets the encrypted administrative password set through the metadata service." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:368(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:369(title) +msgid "Servers virtual interfaces (servers, os-virtual-interfaces)" +msgstr "" + +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:370(para) +msgid "Lists virtual interfaces for a server instance." +msgstr "" + +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:378(title) msgid "Flavors with extended attributes (flavors)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:369(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:379(para) msgid "Shows information about flavors." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:377(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:387(title) msgid "Flavors access (flavors, os-flavor-access, action)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:378(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:388(para) msgid "Provides flavor access support." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:399(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:409(title) msgid "Flavors extra-specs (flavors, os-flavor-extra-specs)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:400(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:410(para) msgid "Lists, creates, deletes, and updates the extra-specs or keys for a flavor." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:409(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:419(title) msgid "Flavors manage (flavors, os-flavor-manage)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:410(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:420(para) msgid "Creates and deletes flavors." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:418(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:428(title) msgid "Keypairs (keypairs)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:419(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:429(para) msgid "Generates, imports, and deletes SSH keys." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:425(title) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:35(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:435(title) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:35(title) msgid "Limits (limits)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:426(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:436(para) msgid "Shows all global and rate limit information." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:434(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:444(title) msgid "Extensions (extensions)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:435(para) -msgid "Available extensions." +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:445(para) +msgid "Lists the available extensions and shows details for an extension, by alias." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:444(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:455(para) msgid "Lists, gets details for, and deletes images. Also sets, lists, gets details for, and deletes image metadata." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:448(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:459(para) msgid "An image is a collection of files that you use to create and rebuild a server. By default, operators provide pre-built operating system images. You can also create custom images. See Compute server actions." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:454(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:465(para) msgid "If you set the image size policy in the policy.json file, the OS-EXT-IMG-SIZE:size extended attribute is visible." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:473(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:484(title) msgid "Image metadata" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:474(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:485(para) msgid "Shows details for, sets, updates, and deletes image metadata or metadata items." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:490(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:501(title) msgid "Guest agents (os-agents)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:491(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:502(para) msgid "Creates, lists, updates, and deletes guest agent builds. Use guest agents to access files on the disk, configure networking, or run other applications or scripts in the guest while the agent runs. This hypervisor-specific extension is not currently enabled for KVM. Use of guest agents is possible only if the underlying service provider uses the Xen driver." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:504(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:515(title) msgid "Host aggregates (os-aggregates, action)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:505(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:516(para) msgid "Creates and manages host aggregates. An aggregate assigns metadata to groups of compute nodes. Aggregates are only visible to the cloud provider." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:515(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:526(title) msgid "Assisted volume snapshots (os-assisted-volume-snapshots)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:516(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:527(para) msgid "Creates and deletes snapshots through an emulator/hypervisor. The qcow2 file format is supported." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:520(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:531(para) msgid "An internal snapshot that lacks storage such as NFS or GlusterFS can use an emulator/hypervisor to add the snapshot feature." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:529(title) -msgid "Attach Interfaces (os-attach-interfaces)" -msgstr "" - -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:530(para) -msgid "Creates, lists, gets details for, and deletes port interfaces." -msgstr "" - -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:538(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:540(title) msgid "Availability zones (os-availability-zone)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:539(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:541(para) msgid "Gets availability zone information." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:547(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:549(title) msgid "Bare metal nodes (os-baremetal-nodes)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:548(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:550(para) msgid "Bare metal nodes." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:554(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:556(title) msgid "Servers with block device mapping format (servers, os-block-device-mapping)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:556(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:558(para) msgid "Creates a server with a block device mapping." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:562(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:564(title) msgid "Cells (os-cells, capacities)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:563(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:565(para) msgid "Adds neighbor cells, lists neighbor cells, and gets the capabilities of the local cell." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:572(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:574(title) msgid "Root certificates (os-certificates)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:573(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:575(para) msgid "Creates and shows details for a root certificate." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:579(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:581(title) msgid "Cloudpipe (os-cloudpipe)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:580(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:582(para) msgid "Manages virtual VPNs for projects." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:586(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:588(title) msgid "Server consoles (servers, os-consoles, os-console-auth-token)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:587(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:589(para) msgid "Manages server consoles." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:593(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:595(title) msgid "Fixed IPs (os-fixed-ips)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:594(para) -msgid "Shows data for a specified fixed IP, such as host name, CIDR, and address. Also, reserves and frees a fixed IP address." +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:596(para) +msgid "Shows data for a fixed IP, such as host name, CIDR, and address. Also, reserves and frees a fixed IP address." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:603(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:605(title) msgid "Floating IP DNS records (os-floating-ip-dns)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:604(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:606(para) msgid "Manages DNS records associated with IP addresses allocated by the floating IPs extension. Requests are dispatched to a DNS driver selected at startup." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:614(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:616(title) msgid "Floating IP pools (os-floating-ip-pools)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:615(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:617(para) msgid "Manages groups of floating IPs." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:623(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:625(title) msgid "Floating IPs (os-floating-ips)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:624(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:626(para) msgid "Assigns and allocates floating IP addresses to instances that run in an OpenStack cloud." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:633(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:635(title) msgid "Floating IPs bulk (os-floating-ips-bulk)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:634(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:636(para) msgid "Bulk-creates, deletes, and lists floating IPs. Default pool name is nova. To view available pools, use the os-floating-ip-pools extension." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:643(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:645(title) msgid "Ping instances (os-fping)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:644(para) -msgid "Pings all or specified instances and reports which ones are alive." +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:646(para) +msgid "Pings instances and reports which ones are alive." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:652(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:654(title) msgid "Hosts (os-hosts)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:653(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:655(para) msgid "Manages physical hosts." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:661(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:663(title) msgid "Hypervisors (os-hypervisors)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:662(para) ./api-ref/src/docbkx/ch_compute-v2.1.xml:707(para) -msgid "Displays extra statistical information from the machine that hosts the hypervisor through the API for the hypervisor (XenAPI or KVM/libvirt)." +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:664(para) +msgid "Lists all hypervisors, shows summary statistics for all hypervisors over all compute nodes, shows details for a hypervisor, and shows the uptime for a hypervisor." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:672(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:674(title) msgid "Instance usage audit log (os-instance-usage-audit-log)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:673(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:675(para) msgid "Administrator only. Monitors task logs." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:681(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:683(title) msgid "Migrations (os-migrations)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:682(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:684(para) msgid "Shows data on migrations." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:690(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:692(title) msgid "Networks (os-networks)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:691(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:693(para) msgid "Creates, lists, shows information for, and deletes networks." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:694(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:696(para) msgid "Adds network to a project, disassociates a network from a project, and disassociates a project from a network." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:698(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:700(para) msgid "Associates host with and disassociates host from a network." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:706(title) -msgid "PCI pools (os-pci)" -msgstr "" - -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:717(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:708(title) msgid "Quota class (os-quota-class-sets)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:718(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:709(para) msgid "Provides quota classes management support." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:726(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:717(title) msgid "Quota sets (os-quota-sets)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:727(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:718(para) msgid "Permits administrators, depending on policy settings, to view quotas for a project and view and update default quotas." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:736(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:727(title) msgid "Security groups (os-security-groups)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:737(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:728(para) msgid "Lists, shows information for, creates, and deletes security groups." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:745(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:736(title) msgid "Rules for default security group (os-security-group-default-rules)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:747(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:738(para) msgid "Lists, shows information for, and creates default security group rules." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:756(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:747(title) msgid "Rules for security group (os-security-group-rules)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:757(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:748(para) msgid "Creates and deletes security group rules." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:765(title) -msgid "Execute external events (os-server-external-events)" +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:756(title) +msgid "Create external events (os-server-external-events)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:766(para) -msgid "Executes external events." +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:757(para) +msgid "Creates one or more external events. Each event is dispatched to a server instance." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:774(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:766(title) msgid "Server groups (os-server-groups)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:775(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:767(para) msgid "Lists, shows information for, creates, and deletes server groups." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:792(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:784(title) msgid "Manage services (os-services)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:793(para) -msgid "Lists all or only disabled Compute services for all hosts in a specified tenant. Logs information for disabled services. Enables or disables scheduling for, forces down, unsets the forced-down state of, or deletes a specified service." +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:785(para) +msgid "Lists all or only disabled Compute services for all hosts in a tenant. Logs information for disabled services. Enables or disables scheduling for, forces down, unsets the forced-down state of, or deletes a service." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:824(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:816(title) msgid "Usage reports (os-simple-tenant-usage)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:825(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:817(para) msgid "Reports usage statistics on compute and storage resources." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:833(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:825(title) msgid "Project networks (os-tenant-networks)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:834(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:826(para) msgid "Creates, lists, shows information for, and deletes project networks." msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:842(title) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:834(title) msgid "Volume extension (os-volumes, os-snapshots)" msgstr "" -#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:843(para) +#: ./api-ref/src/docbkx/ch_compute-v2.1.xml:835(para) msgid "Manages volumes and snapshots for use with the Compute API." msgstr "" @@ -2518,7 +2914,7 @@ msgid "Consistency groups enable you to create snapshots at the exact same point msgstr "" #: ./api-ref/src/docbkx/ch_share-v2-experimental.xml:38(para) -msgid "As an administrator, you can also reset the state of a consistency group and force-delete a specified consistency group in any state. Use the policy.json file to grant permissions for these actions to other roles." +msgid "As an administrator, you can also reset the state of a consistency group and force-delete a consistency group in any state. Use the policy.json file to grant permissions for these actions to other roles." msgstr "" #: ./api-ref/src/docbkx/ch_share-v2-experimental.xml:64(title) @@ -2530,11 +2926,11 @@ msgid "You can create snapshots of consistency groups. To create a snapshot, you msgstr "" #: ./api-ref/src/docbkx/ch_share-v2-experimental.xml:71(para) -msgid "A consistency group snapshot can have member shares. To add a member share, include the consistency_group_id parameter in the create share request. This ID must match the ID of the consistency group from which the consistency group snapshot was created. Then, when you use consistency group snapshots to restore data, you can easily determine which shares belong to a specified consistency group." +msgid "A consistency group snapshot can have member shares. To add a member share, include the consistency_group_id parameter in the create share request. This ID must match the ID of the consistency group from which the consistency group snapshot was created. Then, when you use consistency group snapshots to restore data, you can easily determine which shares belong to a consistency group." msgstr "" #: ./api-ref/src/docbkx/ch_share-v2-experimental.xml:80(para) -msgid "As an administrator, you can also reset the state of a consistency group snapshot and force-delete a specified consistency group snapshot in any state. Use the policy.json file to grant permissions for these actions to other roles." +msgid "As an administrator, you can also reset the state of a consistency group snapshot and force-delete a consistency group snapshot in any state. Use the policy.json file to grant permissions for these actions to other roles." msgstr "" #: ./api-ref/src/docbkx/ch_data-processing-v1.1.xml:10(title) @@ -2646,7 +3042,7 @@ msgid "Job executions" msgstr "" #: ./api-ref/src/docbkx/ch_data-processing-v1.1.xml:229(para) -msgid "A job execution object represents a Hadoop job that runs on a specified cluster. A job execution polls the status of a running job and reports it to the user. Also a user can cancel a running job." +msgid "A job execution object represents a Hadoop job that runs on a cluster. A job execution polls the status of a running job and reports it to the user. Also a user can cancel a running job." msgstr "" #: ./api-ref/src/docbkx/ch_data-processing-v1.1.xml:252(title) @@ -2681,35 +3077,35 @@ msgstr "" msgid "Stacks" msgstr "" -#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:83(title) +#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:91(title) msgid "Stack actions" msgstr "" -#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:84(para) +#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:92(para) msgid "Performs non-lifecycle operations on the stack. Specify the action in the request body." msgstr "" -#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:97(title) +#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:105(title) msgid "Stack resources" msgstr "" -#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:118(title) +#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:126(title) msgid "Stack events" msgstr "" -#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:140(title) +#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:148(title) msgid "Templates" msgstr "" -#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:169(title) +#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:177(title) msgid "Build info" msgstr "" -#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:178(title) +#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:186(title) msgid "Software configuration" msgstr "" -#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:207(title) +#: ./api-ref/src/docbkx/ch_orchestration-v1.xml:215(title) msgid "Manage service" msgstr "" @@ -2805,11 +3201,11 @@ msgstr "" msgid "A backup is being restored to the volume." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:116(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:271(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:116(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:273(para) msgid "error_restoring" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:117(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:276(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:117(para) ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:278(para) msgid "An error occurred during backup restoration to a volume." msgstr "" @@ -2841,142 +3237,162 @@ msgstr "" msgid "Extends the size of, resets statuses for, sets image metadata for, and removes image metadata from a volume. Attaches a volume to a server, detaches a volume from a server, and removes a volume from Block Storage management without actually removing the back-end storage object associated with it." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:184(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:186(title) msgid "Backups (backups)" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:185(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:187(para) msgid "A backup is a full copy of a volume stored in an external service. The service can be configured. The only supported service is Object Storage. A backup can subsequently be restored from the external service to either the same volume that the backup was originally taken from or to a new volume. Backup and restore operations can only be carried out on volumes that are in an unattached and available state." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:194(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:196(para) msgid "When you create, list, or delete backups, these status values are possible:" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:199(caption) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:201(caption) msgid "Backup statuses" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:216(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:218(para) msgid "The backup is being created." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:228(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:230(para) msgid "The backup is ready to be restored to a volume." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:240(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:242(para) msgid "The backup is being deleted." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:252(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:254(para) msgid "An error has occurred with the backup." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:259(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:261(para) msgid "restoring" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:264(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:266(para) msgid "The backup is being restored to a volume." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:285(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:287(para) msgid "If an error occurs, you can find more information about the error in the fail_reason field for the backup." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:307(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:309(title) msgid "Backup actions (backups, action)" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:308(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:310(para) msgid "Force-deletes a backup." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:318(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:320(title) msgid "Capabilities for storage back ends (capabilities)" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:319(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:321(para) msgid "Shows capabilities for a storage back end." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:356(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:358(title) msgid "Quality of service (QoS) specifications (qos-specs)" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:360(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:362(para) msgid "Creates, lists, shows details for, associates, disassociates, sets keys, unsets keys, and deletes quality of service (QoS) specifications." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:386(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:388(title) msgid "Volume types (types)" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:405(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:407(title) msgid "Volume snapshots (snapshots)" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:406(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:408(para) msgid "A snapshot is a point-in-time copy of the data that a volume contains." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:410(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:412(para) msgid "When you create, list, or delete snapshots, these status values are possible:" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:415(caption) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:417(caption) msgid "Snapshot statuses" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:432(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:434(para) msgid "The snapshot is being created." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:444(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:446(para) msgid "The snapshot is ready to be used." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:456(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:458(para) msgid "The snapshot is being deleted." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:468(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:470(para) msgid "An error occurred during snapshot creation." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:480(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:482(para) msgid "An error occurred during snapshot deletion." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:508(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:510(title) msgid "Volume manage extension (os-volume-manage)" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:509(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:511(para) msgid "Creates volumes by using existing storage instead of allocating new storage." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:516(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:518(title) msgid "Volume image metadata extension (os-vol-image-meta)" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:517(para) -msgid "Shows image metadata that is associated with a specified volume." +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:519(para) +msgid "Shows image metadata that is associated with a volume." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:524(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:526(para) msgid "Administrator only. Lists all back-end storage pools that are known to the scheduler service." msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:531(title) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:533(title) msgid "Volume transfer" msgstr "" -#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:532(para) +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:534(para) msgid "Transfers a volume from one user to another user." msgstr "" +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:540(title) +msgid "Consistency groups" +msgstr "" + +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:541(para) +msgid "Consistency groups enable you to create snapshots at the exact same point in time from multiple volumes. For example, a database might place its tables, logs, and configuration on separate volumes. To restore this database from a previous point in time, it makes sense to restore the logs, tables, and configuration together from the exact same point in time." +msgstr "" + +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:549(para) +msgid "Use the policy.json file to grant permissions for these actions to limit roles." +msgstr "" + +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:556(title) +msgid "Consistency group snapshots" +msgstr "" + +#: ./api-ref/src/docbkx/ch_blockstorage-api-v2.xml:557(para) +msgid "Lists all, lists all with details, shows details for, creates, and deletes consistency group snapshots." +msgstr "" + #: ./api-ref/src/docbkx/ch_share-v1.xml:18(para) msgid "The Shared File Systems API v1 is functionally identical to the the Shared File Systems API v2. Subsequent API v2 micro-versions, such as v2.1, differ from API v1." msgstr "" diff --git a/api-ref/locale/fr.po b/api-ref/locale/fr.po index d46581c8c..415efe989 100644 --- a/api-ref/locale/fr.po +++ b/api-ref/locale/fr.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2015-11-07 03:42+0000\n" +"POT-Creation-Date: 2015-11-26 03:50+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -19,7 +19,7 @@ msgstr "" "Last-Translator: openstackjenkins \n" "Language: fr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-Generator: Zanata 3.7.1\n" +"X-Generator: Zanata 3.7.3\n" "Language-Team: French\n" msgid "2010-2015" @@ -264,37 +264,6 @@ msgstr "" msgid "Creates and shows details for a root certificate." msgstr "Crée et affiche les détails d'un certificat racine." -msgid "" -"Creates, lists, gets details for, updates, and deletes metadata definition " -"namespaces. Defines namespaces that can contain property definitions, object " -"definitions, and resource type associations. (Since API v2.0.)" -msgstr "" -"Crée, liste, obtient des détails pour, mises à jour, et supprime les " -"métadonnées des espaces de noms de définition. Définit les espaces de noms " -"qui peuvent contenir des définitions de propriétés, définitions d'objets, et " -"des associations de type de ressource. (Depuis API v2.0.)" - -msgid "" -"Creates, lists, gets details for, updates, and deletes metadata definition " -"objects. (Since API v2.0.)" -msgstr "" -"Crée, liste, obtient les détails pour, met à jour et supprime des objets de " -"définition de métadonnées. (Depuis API v2.0.)" - -msgid "" -"Creates, lists, gets details for, updates, and deletes metadata definition " -"properties. (Since API v2.0.)" -msgstr "" -"Crée, liste, obtient les détails pour, met à jour et supprime des propriétés " -"de définition de métadonnées. (Depuis API v2.0.)" - -msgid "" -"Creates, lists, gets details for, updates, and deletes metadata definition " -"tags. (Since API v2.0.)" -msgstr "" -"Crée, liste, obtient les détails pour, met à jour, et supprime les " -"métadonnées des balises de définition. (Depuis API v2.0.)" - msgid "Credentials" msgstr "Information d'Authentification " @@ -326,41 +295,9 @@ msgstr "" msgid "Description" msgstr "Description" -msgid "" -"Displays extra statistical information from the machine that hosts the " -"hypervisor through the API for the hypervisor (XenAPI or KVM/libvirt)." -msgstr "" -"Affiche des informations statistiques additionnelles à partir de la machine " -"qui héberge l'hyperviseur au moyen de l'API pour l'hyperviseur (XenAPI ou " -"KVM/libvirt)." - msgid "Domains" msgstr "Domaines" -msgid "" -"Domains represent collections of users, groups, and projects. Each is owned " -"by exactly one domain. Users, however, can be associated with multiple " -"projects by granting roles to the user on a project, including projects " -"owned by other domains." -msgstr "" -"Les domaines représentent des collections d'utilisateurs, de groupes, et de " -"projets. Chacun d'entre eux est possédé par exactement un domaine. Les " -"utilisateurs, cependant, peuvent être associés avec des projets multiples en " -"accordant des rôles à un utilisateur sur un projet, incluant les projets " -"possédés par d'autres domaines." - -msgid "" -"During file injection, any existing files that match specified files are " -"renamed to include the BAK extension appended with a time stamp. For " -"example, if the /etc/passwd file exists, it is backed up as " -"/etc/passwd.bak.1246036261.5785." -msgstr "" -"Lors de l'injection de fichiers, tous les fichiers existants qui sont bien " -"des fichiers spécifiés sont renommés pour inclure l'extension BAK annexée " -"avec un horodatage. Par exemple, si le fichier /etc/mot de pasee existe, il est sauvegardé comme /etc/mot de passe." -"bak.1246036261.5785 ." - msgid "ERROR" msgstr "ERROR" @@ -370,18 +307,6 @@ msgstr "Erreur. Une erreur est survenue avec le volume." msgid "ERROR_DELETING. There was an error deleting the volume." msgstr "SUPPRESSION_ERREUR. Il y a eu erreur supprimant le volume." -msgid "" -"Each domain defines a namespace where certain API-visible name attributes " -"exist, which affects whether those names must be globally unique or unique " -"within that domain. In the Identity API, the uniqueness of the following " -"attributes is as follows:" -msgstr "" -"Chaque domaine défini un espace de nommage où certains attributs de nom " -"visibles de l'API existent, ce qui affecte le fait que ces noms doivent être " -"globallement uniques ou uniques à l'intérieur de ce domaine. Dans l'API de " -"Gestion des Identités, la caractère unique des attributs suivants est " -"représenté comme suit:" - msgid "" "Enables administrative users to define multiple physical bindings for an " "OpenStack Networking network and list or show details for networks with " @@ -499,9 +424,6 @@ msgstr "Schémas d'images" msgid "Image service API v2 (CURRENT)" msgstr "API du service image v2 (COURANT)" -msgid "Image service API v2.0, API v2.1, and API v2.2." -msgstr "Image service API v2.0, v2.1 API et API v2.2." - msgid "Image tags" msgstr "Etiquettes d'image" @@ -539,21 +461,6 @@ msgstr "Limites (limits)" msgid "Lists information for all API versions." msgstr "Liste les informations pour toutes les versions de l'API." -msgid "" -"Lists resource types. Also, creates, lists, and removes resource type " -"associations in a specified namespace. (Since API v2.0.)" -msgstr "" -"Énumère les types de ressources. Aussi, crée, listes, et supprime les " -"associations de type de ressources dans un espace de noms spécifié. (Depuis " -"API v2.0.)" - -msgid "" -"Lists the IP addresses assigned to an instance or shows details for a " -"specified IP address." -msgstr "" -"Dresse la liste des adresses IP attribuées à une instance ou montre les " -"détails d'une adresse IP spécifiée." - msgid "" "Lists, creates, deletes, and updates the extra-specs or keys for a flavor." msgstr "" @@ -591,24 +498,9 @@ msgstr "" msgid "Members" msgstr "Membres" -msgid "Metadata definition namespaces" -msgstr "Espaces des noms de définition de métadonnées" - -msgid "Metadata definition objects" -msgstr "Objets de définition de métadonnées" - -msgid "Metadata definition properties" -msgstr "Propriétés de définition des métadonnées" - -msgid "Metadata definition resource types" -msgstr "Types de ressource de définition de métadonnées" - msgid "Metadata definition schemas" msgstr " Schémas de définition de métadonnées" -msgid "Metadata definition tags" -msgstr "Balises de définition de métadonnées" - msgid "Metering labels and rules" msgstr "Libellés et règles de comptage" @@ -687,9 +579,6 @@ msgstr "APN v2 Administrateur d'Identité OpenStack (soutenu)" msgid "OpenStack Telemetry API v2 (CURRENT)" msgstr " OpenStack télémétrie API v2 (ACTUEL)" -msgid "Or:" -msgstr "Ou bien:" - msgid "Orchestration API v1 (CURRENT)" msgstr "API d'Orchestration v1 (ACTUELLE)" @@ -747,18 +636,6 @@ msgstr "Extension de jeux de quotas (os-quota-sets)" msgid "Quotas extension (quotas)" msgstr "Extension de gestion des Quotas (quotas)" -msgid "" -"Request and access tokens use token keys to identify themselves. For " -"OpenStack purposes, the token key is the token ID. The consumer uses a token " -"secret to establish ownership of a specified token. Both request and access " -"tokens have token secrets." -msgstr "" -"Les jetons de requête et d'accès utilisent des jetons de clés pour " -"s'identifier eux-même. Dans le but d'OpenStack, le jeton de clé est le jeton " -"d'ID. Le consommateur utilise un secret de jeton afin d'établir la propriété " -"d'un jeton spécifié. A la fois les jetons de requête et d'accès ont des " -"secrets de jeton." - msgid "Resource is being created." msgstr "La ressource est en train d'être créée. " @@ -815,9 +692,6 @@ msgstr "Diagnostic serveurs (serveurs, diagnostics)" msgid "Servers multiple create (servers)" msgstr "Création multiple serveurs (servers)" -msgid "Service catalog" -msgstr "Catalogue de services" - msgid "Services" msgstr "Services" @@ -910,15 +784,6 @@ msgstr "" "parti est utilisé pour identifier un parti quand il communique avec KDS ou " "une autre partie." -msgid "" -"The NSX and ML2 plug-ins support this extension. With the ML2 plug-in, you " -"can specify multiple VLANs for a specified network, a VXLAN tunnel ID, and a " -"VLAN." -msgstr "" -"Les plugins NSX et ML2 supportent cette extension. Avec le plugin ML2, vous " -"pouvez spécifier de multiples VLANs pour un réseau donné, un ID de tunnel " -"VXLAN, et un VLAN." - msgid "" "The OS-INHERIT extension was extended in API v3.4 to allow inheritance from " "projects in addition to inheritance from domains. To access project " @@ -1146,22 +1011,6 @@ msgstr "" "destination utilise pour calculer les clés de signature et de cryptage " "partagées." -msgid "" -"When you create a server, you can specify a password through the optional " -"adminPass attribute. The specified password must meet " -"the complexity requirements set by your OpenStack Compute provider. The " -"server might enter an ERROR state if the complexity " -"requirements are not met. In this case, a client might issue a change " -"password action to reset the server password." -msgstr "" -"Lorsque vous créez un serveur, vous pouvez indiquer un mot de passe au moyen " -"de l'attribut optionnel adminPass. Le mot de passe " -"indiqué doit correspondre aux réglages de complexité donnés par votre " -"fournisseur de Calcul OpenStack. Le serveur pourrait provoquer un état " -"d'ERREUR si les critères de complexité ne sont pas remplis. " -"Dans ce cas, un client peut éventuellement déclencher une action de " -"changement de mot de passe pour réinitialiser le mot de passe du serveur." - msgid "" "When you create, list, or delete backups, these status values are possible:" msgstr "" @@ -1181,16 +1030,6 @@ msgstr "" "Lorsque vous créez, listez ou supprimez des volumes, les valeurs d'état " "suivantes sont possibles:" -msgid "" -"You can encode policy rule sets into a blob to be consumed by remote " -"services. To do so, set type to application/json " -"and specify policy rules as JSON strings in a blob. For example:" -msgstr "" -"Vous pouvez encoder des ensembles de règles de la politique dans un blob " -"pour être consommé par les services distants. Pour ce faire, réglez " -"type application/json et spécifier des règles de la " -"politique en tant que chaînes JSON dans un blob . Par exemple:" - msgid "" "You can use both IPv4 and IPv6 addresses as access addresses and you can " "assign both addresses simultaneously. You can update access addresses after " diff --git a/api-ref/locale/ko_KR.po b/api-ref/locale/ko_KR.po index b95bc72cd..ffefe6068 100644 --- a/api-ref/locale/ko_KR.po +++ b/api-ref/locale/ko_KR.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2015-10-21 15:43+0000\n" +"POT-Creation-Date: 2015-11-26 03:50+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -16,7 +16,7 @@ msgstr "" "Last-Translator: Sungjin Kang \n" "Language: ko-KR\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Zanata 3.7.1\n" +"X-Generator: Zanata 3.7.3\n" "Language-Team: Korean (South Korea)\n" msgid "2010-2015" @@ -137,13 +137,6 @@ msgstr "데이터베이스 (databases)" msgid "Description" msgstr "설명" -msgid "" -"Displays extra statistical information from the machine that hosts the " -"hypervisor through the API for the hypervisor (XenAPI or KVM/libvirt)." -msgstr "" -"하이퍼바이저(Xen API, KVM/libvirt)에 대한 API를 이용하여 하이퍼바이저를 호스" -"팅하는 머신에서 별도의 통계 정보를 표시합니다." - msgid "Domains" msgstr "도메인" @@ -228,9 +221,6 @@ msgstr "이미지 스키마" msgid "Image service API v2 (CURRENT)" msgstr "Image service API v2 (현재 사용)" -msgid "Image service API v2.0, API v2.1, and API v2.2." -msgstr "Image service API v2.0, API v2.1, and API v2.2." - msgid "Image tags" msgstr "이미지 태그" @@ -261,13 +251,6 @@ msgstr "제한" msgid "Limits (limits)" msgstr "제한 (limits)" -msgid "" -"Lists available Networking API v2.0 extensions and shows details for a " -"specified extension." -msgstr "" -"사용 가능한 네트워킹 API v2.0 확장 목록 및 구체적인 확장에 대한 세부 내용을 " -"보여줍니다." - msgid "" "Lists, creates, deletes, and updates the extra-specs or keys for a flavor." msgstr "Flavor에대한 여분 스펙이나 키를 나열, 생성, 삭제, 업데이트 합니다." @@ -372,9 +355,6 @@ msgstr "OpenStack Shared File Systems API v2.0 (현재 사용)" msgid "OpenStack Telemetry API v2 (CURRENT)" msgstr "OpenStack Telemetry API v2 (현재 사용)" -msgid "Or:" -msgstr "또는:" - msgid "Orchestration API v1 (CURRENT)" msgstr "Orchestration API v1 (CURRENT)" @@ -468,9 +448,6 @@ msgstr "서버" msgid "Servers multiple create (servers)" msgstr "서버 다중 생성 (servers)" -msgid "Service catalog" -msgstr "서비스 카탈로그" - msgid "Services" msgstr "서비스" @@ -531,14 +508,6 @@ msgstr "" "의 VM에대한 어플리케이션 서비스를 하나의 네트워크에서 클라이언트 트레픽을 부" "하 분산할 수 있습니다." -msgid "" -"The NSX and ML2 plug-ins support this extension. With the ML2 plug-in, you " -"can specify multiple VLANs for a specified network, a VXLAN tunnel ID, and a " -"VLAN." -msgstr "" -"NSX와 ML2 플러그인이 이 확장을 지원합니다. ML2 플러그인을 사용하면, 지정된 네" -"트워크에서 다중 VLAN, VXLAN 터널 ID, VLAN을 지정할 수 있습니다." - msgid "The backup is being created." msgstr "백업을 생성중입니다." @@ -651,20 +620,6 @@ msgstr "볼륨 타입" msgid "Volumes" msgstr "볼륨" -msgid "" -"When you create a server, you can specify a password through the optional " -"adminPass attribute. The specified password must meet " -"the complexity requirements set by your OpenStack Compute provider. The " -"server might enter an ERROR state if the complexity " -"requirements are not met. In this case, a client might issue a change " -"password action to reset the server password." -msgstr "" -"서버를 생성할때, 선택적인 adminPass 속성을 통해 암호를 " -"지정할 수 있습니다. 지정한 암호는 OpenStack Compute ​provider​에 의해 설정된 복" -"잡한 요구사항을 충족해야합니다. 만약 복잡한 요구사항에 충족되지 못한다면, 서" -"버에 ERROR 상태를 입력할 수 있습니다. 이 상황에서는 클라이언트에" -"서 서버 암호를 리셋할 수 있는 암호 변경 작업을 진행할 수 있습니다." - msgid "" "You can use both IPv4 and IPv6 addresses as access addresses and you can " "assign both addresses simultaneously. You can update access addresses after " diff --git a/firstapp/source/locale/firstapp.pot b/firstapp/source/locale/firstapp.pot index c39c29b5e..1ade22f1b 100644 --- a/firstapp/source/locale/firstapp.pot +++ b/firstapp/source/locale/firstapp.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: FirstApp 0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-10-22 06:04+0000\n" +"POT-Creation-Date: 2015-11-26 06:40+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -22,193 +22,171 @@ msgstr "" #: ../advice.rst:5 msgid "" -"In this section, we will introduce some operational concepts and tasks which " -"may be new to developers who have not written cloud applications before." +"This section introduces some operational concepts and tasks to developers " +"who have not written cloud applications before." msgstr "" -#: ../advice.rst:10 +#: ../advice.rst:9 msgid "Monitoring" msgstr "" -#: ../advice.rst:12 +#: ../advice.rst:11 msgid "" -"Monitoring is essential for cloud applications, especially if the " -"application is to be 'scalable'. You must know how many requests are coming " -"in, and what impact that has on the various services -- in other words, " -"enough information to determine whether you should start another worker or " -"API service as we did in :doc:`/scaling_out`." +"Monitoring is essential for 'scalable' cloud applications. You must know how " +"many requests are coming in and the impact that these requests have on " +"various services. You must have enough information to determine whether to " +"start another worker or API service as you did in :doc:`/scaling_out`." msgstr "" -#: ../advice.rst:21 +#: ../advice.rst:20 msgid "" -"Aside from this kind of monitoring, you should consider availability " -"monitoring. Does your application care about a worker going down? Maybe " -"not. Does it care about a failed database server? Probably yes." +"In addition to this kind of monitoring, you should consider availability " +"monitoring. Although your application might not care about a failed worker, " +"it should care about a failed database server." msgstr "" -#: ../advice.rst:25 +#: ../advice.rst:24 msgid "" -"One great pattern to add this to your application is the `Health Endpoint " -"Monitoring Pattern `, where a special API endpoint is introduced to your application for a " -"basic health check." +"Use the `Health Endpoint Monitoring Pattern ` to implement functional checks within your " +"application that external tools can access through exposed endpoints at " +"regular intervals." msgstr "" -#: ../advice.rst:32 +#: ../advice.rst:30 msgid "Backups" msgstr "" -#: ../advice.rst:34 +#: ../advice.rst:32 msgid "" -"Where instances store information that is not reproducible (such as a " -"database server, a file server, or even log files for an application), it is " -"important to back up this information as you would a normal non-cloud " -"server. It sounds simple, but just because it is 'in the cloud' does not " -"mean it has any additional robustness or resilience when it comes to failure " -"of the underlying hardware or systems." +"Just as you back up information on a non-cloud server, you must back up non-" +"reproducible information, such as information on a database server, file " +"server, or in application log files. Just because something is 'in the " +"cloud' does not mean that the underlying hardware or systems cannot fail." msgstr "" -#: ../advice.rst:41 +#: ../advice.rst:38 msgid "" -"OpenStack provides a couple of tools that make it easier to perform backups. " -"If your provider runs OpenStack Object Storage, this is normally extremely " -"robust and has several handy API calls and CLI tools for working with " -"archive files." +"OpenStack provides a couple of tools that make it easy to back up data. If " +"your provider runs OpenStack Object Storage, you can use its API calls and " +"CLI tools to work with archive files." msgstr "" -#: ../advice.rst:46 +#: ../advice.rst:42 msgid "" -"It is also possible to create snapshots of running instances and persistent " -"volumes using the OpenStack API. Refer to the documentation of your SDK for " -"more." +"You can also use the OpenStack API to create snapshots of running instances " +"and persistent volumes. For more information, see your SDK documentation." +msgstr "" + +#: ../advice.rst:49 +msgid "" +"In addition to configuring backups, review your policies about what you back " +"up and how long to retain each backed up item." msgstr "" #: ../advice.rst:53 -msgid "" -"While the technical action to perform backups can be straightforward, you " -"should also think about your policies regarding what is backed up and how " -"long each item should be retained." +msgid "Phoenix servers" msgstr "" -#: ../advice.rst:58 -msgid "Phoenix Servers" +#: ../advice.rst:55 +msgid "" +"`Phoenix Servers `_, named " +"for the mythical bird that is consumed by fire and rises from the ashes to " +"live again, make it easy to start over with new instances." msgstr "" #: ../advice.rst:60 msgid "" -"Application developers and operators who employ `Phoenix Servers `_ have built systems that start " -"from a known baseline (sometimes just a specific version of an operating " -"system) and have built tooling that will automatically build, install, and " -"configure a system with no manual intervention." +"Application developers and operators who use phoenix servers have access to " +"systems that are built from a known baseline, such as a specific operating " +"system version, and to tooling that automatically builds, installs, and " +"configures a system." msgstr "" -#: ../advice.rst:66 +#: ../advice.rst:65 msgid "" -"Phoenix Servers, named for the mythological bird that would live its life, " -"be consumed by fire, then rise from the ashes to live again, make it " -"possible to easily \"start over\" with new instances." +"If you deploy your application on a regular basis, you can resolve outages " +"and make security updates without manual intervention. If an outage occurs, " +"you can provision more resources in another region. If you must patch " +"security holes, you can provision additional compute nodes that are built " +"with the updated software. Then, you can terminate vulnerable nodes and " +"automatically fail-over traffic to the new instances." msgstr "" -#: ../advice.rst:70 -msgid "" -"If your application is automatically deployed on a regular basis, resolving " -"outages and security updates are not special operations that require manual " -"intervention. If you suffer an outage, provision more resources in another " -"region. If you have to patch security holes, provision more compute nodes " -"that will be built with the updated/patched software, then terminate " -"vulnerable nodes, with traffic automatically failing over to the new " -"instances." -msgstr "" - -#: ../advice.rst:79 +#: ../advice.rst:74 msgid "Security" msgstr "" -#: ../advice.rst:81 +#: ../advice.rst:76 msgid "" -"Security-wise, one thing to keep in mind is that if one instance of an " -"application is compromised, all instances with the same image and " -"configuration are likely to suffer the same vulnerability. In this case, it " -"is safer to rebuild all of your instances (a task made easier by " -"configuration management - see below)." +"If one application instance is compromised, all instances with the same " +"image and configuration will likely suffer the same vulnerability. The " +"safest path is to use configuration management to rebuild all instances." msgstr "" -#: ../advice.rst:88 +#: ../advice.rst:82 msgid "Configuration management" msgstr "" -#: ../advice.rst:90 +#: ../advice.rst:84 msgid "" -"Tools such as Ansible, Chef, and Puppet allow you to describe exactly what " -"should be installed on an instance and how it should be configured. Using " -"these descriptions, the tool implements any changes required to get to the " -"desired state." +"Configuration management tools, such as Ansible, Chef, and Puppet, enable " +"you to describe exactly what to install and configure on an instance. Using " +"these descriptions, these tools implement the changes that are required to " +"get to the desired state." msgstr "" -#: ../advice.rst:95 +#: ../advice.rst:89 msgid "" -"These tools vastly reduce the amount of effort it takes to work with large " -"numbers of servers, and also improves the ability to recreate, update, move, " -"or distribute applications." +"These tools vastly reduce the effort it takes to work with large numbers of " +"servers, and also improve the ability to recreate, update, move, and " +"distribute applications." msgstr "" -#: ../advice.rst:100 +#: ../advice.rst:94 msgid "Application deployment" msgstr "" -#: ../advice.rst:102 +#: ../advice.rst:96 msgid "" -"Related to configuration management is the question of how you deploy your " -"application." +"How do you deploy your application? For example, do you pull the latest code " +"from a source control repository? Do you make packaged releases that update " +"infrequently? Do you perform haphazard tests in a development environment " +"and deploy only after major changes?" msgstr "" -#: ../advice.rst:105 -msgid "For example, do you:" +#: ../advice.rst:101 +msgid "" +"One of the latest trends in scalable cloud application deployment is " +"`continuous integration `_ and `continuous deployment `_ (CI/CD)." msgstr "" -#: ../advice.rst:107 -msgid "pull the latest code from a source control repository?" -msgstr "" - -#: ../advice.rst:108 -msgid "make packaged releases that update infrequently?" +#: ../advice.rst:106 +msgid "" +"CI/CD means that you always test your application and make frequent " +"deployments to production." msgstr "" #: ../advice.rst:109 msgid "" -"big-bang test in a development environment and deploy only after major " -"changes?" -msgstr "" - -#: ../advice.rst:112 -msgid "" -"One of the latest trends in deploying scalable cloud applications is " -"`continuous integration `_ / `continuous deployment `_ (CI/CD). Working in a CI/CD fashion means you " -"are always testing your application and making frequent deployments to " -"production." -msgstr "" - -#: ../advice.rst:119 -msgid "" "In this tutorial, we have downloaded the latest version of our application " -"from source and installed it on a standard image. Our magic install script " -"also updates the standard image to have the latest dependencies we need to " -"run the application." +"from source and installed it on a standard image. Our magic installation " +"script also updates the standard image to have the latest dependencies that " +"you need to run the application." msgstr "" -#: ../advice.rst:124 +#: ../advice.rst:114 msgid "" -"Another approach to this is to create a 'gold' image - one that has your " -"application and dependencies pre-installed. This means faster boot times and " -"a higher degree of control over what is on the instance, however a process " -"is needed to ensure that 'gold' images do not fall behind on security " -"updates." +"Another approach is to create a 'gold' image, which pre-installs your " +"application and its dependencies. A 'gold' image enables faster boot times " +"and more control over what is on the instance. However, if you use 'gold' " +"images, you must have a process in place to ensure that these images do not " +"fall behind on security updates." msgstr "" -#: ../advice.rst:130 +#: ../advice.rst:121 msgid "Fail fast" msgstr "" @@ -217,15 +195,14 @@ msgid "Appendix" msgstr "" #: ../appendix.rst:6 -msgid "Bootstrapping your network" +msgid "Bootstrap your network" msgstr "" #: ../appendix.rst:8 msgid "" -"Most cloud providers will provision all of the required network objects " -"necessary to boot an instance. An easy way to see if these have been " -"created for you is to access the Network Topology section of the OpenStack " -"dashboard." +"Most cloud providers provision all network objects that are required to boot " +"an instance. To determine whether these objects were created for you, access " +"the Network Topology section of the OpenStack dashboard." msgstr "" #: ../appendix.rst:21 @@ -239,8 +216,8 @@ msgstr "" #: ../block_storage.rst:8 msgid "" "By default, data in OpenStack instances is stored on 'ephemeral' disks. " -"These disks stay with the instance throughout its lifetime, but when the " -"instance is terminated, that storage and all the data stored on it " +"These disks remain with the instance throughout its lifetime. When you " +"terminate the instance, that storage and all the data stored on it " "disappears. Ephemeral storage is allocated to a single instance and cannot " "be moved to another instance." msgstr "" @@ -255,232 +232,246 @@ msgid "" "Block Storage (cinder) project implements block storage." msgstr "" -#: ../block_storage.rst:21 +#: ../block_storage.rst:22 msgid "" "Though you might have configured Object Storage to store images, the Fractal " -"application needs a database to track the location of and parameters that " -"were used to create images in Object Storage. This database server cannot " +"application needs a database to track the location of, and parameters that " +"were used to create, images in Object Storage. This database server cannot " "fail." msgstr "" -#: ../block_storage.rst:25 +#: ../block_storage.rst:27 msgid "" -"If you are an advanced user, consider how you might remove the database from " -"the architecture and replace it with Object Storage metadata (then " -"contribute these steps to :doc:`craziness`). Other users can continue " -"reading to learn how to work with block storage and move the Fractal " -"application database server to use it." +"If you are an advanced user, think about how you might remove the database " +"from the architecture and replace it with Object Storage metadata, and then " +"contribute these steps to :doc:`craziness`." msgstr "" -#: ../block_storage.rst:32 +#: ../block_storage.rst:31 +msgid "" +"Otherwise, continue reading to learn how to work with, and move the Fractal " +"application database server to use, block storage." +msgstr "" + +#: ../block_storage.rst:35 msgid "Basics" msgstr "" -#: ../block_storage.rst:34 +#: ../block_storage.rst:37 msgid "" -"Later on, we'll use a Block Storage volume to provide persistent storage for " -"the database server for the Fractal application. But first, learn how to " +"Later on, you will use a Block Storage volume to provide persistent storage " +"for the database server for the Fractal application. But first, learn how to " "create and attach a Block Storage device." msgstr "" -#: ../block_storage.rst:40 ../durability.rst:77 ../introduction.rst:13 +#: ../block_storage.rst:43 ../durability.rst:70 ../introduction.rst:14 msgid "This section has not yet been completed for the .NET SDK." msgstr "" -#: ../block_storage.rst:44 ../durability.rst:81 ../introduction.rst:17 +#: ../block_storage.rst:47 msgid "This section has not yet been completed for the fog SDK." msgstr "" -#: ../block_storage.rst:52 ../durability.rst:111 ../introduction.rst:25 +#: ../block_storage.rst:55 ../durability.rst:107 ../introduction.rst:26 msgid "This section has not yet been completed for the pkgcloud SDK." msgstr "" -#: ../block_storage.rst:64 -msgid "As always, connect to the API endpoint:" +#: ../block_storage.rst:59 ../durability.rst:111 ../networking.rst:56 +msgid "This section has not yet been completed for the OpenStack SDK." msgstr "" -#: ../block_storage.rst:94 +#: ../block_storage.rst:67 +msgid "Connect to the API endpoint:" +msgstr "" + +#: ../block_storage.rst:97 msgid "To try it out, make a 1GB volume called :test'." msgstr "" -#: ../block_storage.rst:114 +#: ../block_storage.rst:117 msgid "The parameter :code:`size` is in gigabytes." msgstr "" -#: ../block_storage.rst:116 -msgid "List all volumes to see if it was successful:" -msgstr "" - -#: ../block_storage.rst:136 -msgid "Attach the storage volume to a running instance." +#: ../block_storage.rst:119 +msgid "To see if the volume creation was successful, list all volumes:" msgstr "" #: ../block_storage.rst:139 +msgid "Attach the storage volume to a running instance." +msgstr "" + +#: ../block_storage.rst:142 msgid "Use Block Storage for the Fractal database server" msgstr "" -#: ../block_storage.rst:141 +#: ../block_storage.rst:144 msgid "" "You need a server for the dedicated database. Use the image, flavor, and " "keypair that you used in :doc:`/getting_started` to launch an :code:`app-" "database` instance." msgstr "" -#: ../block_storage.rst:145 +#: ../block_storage.rst:148 msgid "" "You also need a security group to permit access to the database server (for " "MySQL, port 3306) from the network:" msgstr "" -#: ../block_storage.rst:167 +#: ../block_storage.rst:170 msgid "" "Create a volume object by using the unique identifier (UUID) for the volume. " "Then, use the server object from the previous code snippet to attach the " "volume to it at :code:`/dev/vdb`:" msgstr "" -#: ../block_storage.rst:185 +#: ../block_storage.rst:188 msgid "Log in to the server to run the following steps." msgstr "" -#: ../block_storage.rst:187 +#: ../block_storage.rst:190 msgid "" "Replace :code:`IP_SERVICES` with the IP address of the services instance and " "USERNAME to the appropriate user name." msgstr "" -#: ../block_storage.rst:190 +#: ../block_storage.rst:193 msgid "Now prepare the empty block device." msgstr "" -#: ../block_storage.rst:202 +#: ../block_storage.rst:205 msgid "" "Stop the running MySQL database service and move the database files from :" "file:`/var/lib/mysql` to the new volume, which is temporarily mounted at :" "file:`/mnt/database`." msgstr "" -#: ../block_storage.rst:211 +#: ../block_storage.rst:214 msgid "" "Sync the file systems and mount the block device that contains the database " "files to :file:`/var/lib/mysql`." msgstr "" -#: ../block_storage.rst:222 +#: ../block_storage.rst:225 msgid "" "Finally, start the stopped MySQL database service and validate that " "everything works as expected." msgstr "" -#: ../block_storage.rst:231 +#: ../block_storage.rst:234 msgid "Extras" msgstr "" -#: ../block_storage.rst:233 +#: ../block_storage.rst:236 msgid "" "You can detach the volume and reattach it elsewhere, or use the following " -"steps to destroy the volume." +"steps to delete the volume." msgstr "" -#: ../block_storage.rst:237 +#: ../block_storage.rst:240 msgid "The following operations are destructive and result in data loss." msgstr "" -#: ../block_storage.rst:239 -msgid "To detach and destroy a volume:" +#: ../block_storage.rst:242 +msgid "To detach and delete a volume:" msgstr "" -#: ../block_storage.rst:255 +#: ../block_storage.rst:258 msgid "" ":code:`detach_volume` and :code:`destroy_volume` take a volume object, not a " "name." msgstr "" -#: ../block_storage.rst:267 +#: ../block_storage.rst:270 msgid "" "Other features, such as creating volume snapshots, are useful for backups:" msgstr "" -#: ../block_storage.rst:277 +#: ../block_storage.rst:280 msgid "" "For information about these and other calls, see `libcloud documentation " "`_." msgstr "" -#: ../block_storage.rst:282 +#: ../block_storage.rst:284 msgid "Work with the OpenStack Database service" msgstr "" -#: ../block_storage.rst:284 +#: ../block_storage.rst:286 msgid "" "Previously, you manually created the database, which is useful for a a " "single database that you rarely update. However, the OpenStack :code:`trove` " "component provides Database as a Service (DBaaS)." msgstr "" -#: ../block_storage.rst:288 +#: ../block_storage.rst:290 msgid "" "This OpenStack Database service is not installed in many clouds right now, " "but if your cloud supports it, it can make your life a lot easier when " "working with databases." msgstr "" -#: ../block_storage.rst:292 +#: ../block_storage.rst:294 msgid "" "SDKs do not generally support the service yet, but you can use the 'trove' " "command-line client to work with it instead." msgstr "" -#: ../block_storage.rst:295 +#: ../block_storage.rst:297 msgid "" -"Install the trove command-line client by following this guide: http://docs." -"openstack.org/cli-reference/content/install_clients.html" +"To install the 'trove' command-line client, see `Install the OpenStack " +"command-line clients `_." msgstr "" -#: ../block_storage.rst:298 +#: ../block_storage.rst:300 msgid "" -"Then, set up necessary variables for your cloud in an :file:`openrc.sh` file " -"by using this guide: http://docs.openstack.org/cli-reference/content/" -"cli_openrc.html" +"To set up environment variables for your cloud in an :file:`openrc.sh` file, " +"see `Set environment variables using the OpenStack RC file `_." msgstr "" -#: ../block_storage.rst:302 +#: ../block_storage.rst:304 msgid "" "Ensure you have an :file:`openrc.sh` file, source it, and validate that your " "trove client works: ::" msgstr "" -#: ../block_storage.rst:317 +#: ../block_storage.rst:319 msgid "" "For information about supported features and how to work with an existing " -"database service installation, see these `slides `_." +"database service installation, see `Database as a Service in OpenStack " +"`_." msgstr "" -#: ../block_storage.rst:322 ../craziness.rst:67 ../durability.rst:317 -#: ../getting_started.rst:1222 ../introduction.rst:631 ../networking.rst:795 -#: ../scaling_out.rst:408 +#: ../block_storage.rst:324 ../craziness.rst:72 ../durability.rst:406 +#: ../getting_started.rst:1359 ../introduction.rst:790 ../networking.rst:796 +#: ../orchestration.rst:481 ../scaling_out.rst:432 msgid "Next steps" msgstr "" -#: ../block_storage.rst:324 +#: ../block_storage.rst:326 msgid "" "You should now be fairly confident working with Block Storage volumes. For " -"information about other calls, see the volume documentation for your SDK or " -"try one of these tutorial steps:" +"information about other calls, see the volume documentation for your SDK. " +"Or, try one of these tutorial steps:" msgstr "" -#: ../block_storage.rst:328 ../durability.rst:330 -msgid ":doc:`/orchestration`: to automatically orchestrate the application" +#: ../block_storage.rst:330 ../durability.rst:423 ../getting_started.rst:1368 +#: ../introduction.rst:806 ../scaling_out.rst:451 +msgid ":doc:`/orchestration`: Automatically orchestrate your application." msgstr "" -#: ../block_storage.rst:329 ../durability.rst:331 -msgid ":doc:`/networking`: to learn about more complex networking" +#: ../block_storage.rst:331 ../durability.rst:424 ../getting_started.rst:1369 +#: ../introduction.rst:807 ../orchestration.rst:488 ../scaling_out.rst:452 +msgid ":doc:`/networking`: Learn about complex networking." msgstr "" -#: ../block_storage.rst:330 ../durability.rst:332 ../networking.rst:802 -msgid ":doc:`/advice`: for advice for developers new to operations" +#: ../block_storage.rst:332 ../durability.rst:425 ../getting_started.rst:1370 +#: ../introduction.rst:808 ../networking.rst:802 ../orchestration.rst:489 +#: ../scaling_out.rst:453 +msgid ":doc:`/advice`: Get advice about operations." msgstr "" #: ../craziness.rst:3 @@ -502,7 +493,7 @@ msgid "" "Architecture Design Guide." msgstr "" -#: ../craziness.rst:15 +#: ../craziness.rst:14 msgid "" "OpenStack supports 'regions', which are geographically-separated " "installations that are connected to a single service catalog. This section " @@ -510,8 +501,8 @@ msgid "" "high availability." msgstr "" -#: ../craziness.rst:19 ../craziness.rst:32 ../craziness.rst:39 -#: ../craziness.rst:64 +#: ../craziness.rst:19 ../craziness.rst:33 ../craziness.rst:40 +#: ../craziness.rst:69 msgid "This section is incomplete. Please help us finish it!" msgstr "" @@ -528,27 +519,27 @@ msgstr "" #: ../craziness.rst:29 msgid "" -"You might want to use multiple clouds such as a private cloud inside your " +"You might want to use multiple clouds, such as a private cloud inside your " "organization and a public cloud. This section attempts to do exactly that." msgstr "" -#: ../craziness.rst:35 +#: ../craziness.rst:36 msgid "High availability" msgstr "" -#: ../craziness.rst:37 +#: ../craziness.rst:38 msgid "Using Pacemaker to look at the API." msgstr "" -#: ../craziness.rst:42 +#: ../craziness.rst:43 msgid "conf.d, etc.d" msgstr "" -#: ../craziness.rst:44 +#: ../craziness.rst:45 msgid "Use conf.d and etc.d." msgstr "" -#: ../craziness.rst:46 +#: ../craziness.rst:47 msgid "" "In earlier sections, the Fractal application used an installation script " "into which the metadata API passed parameters to bootstrap the cluster. " @@ -561,289 +552,306 @@ msgid "" "use for configuration." msgstr "" -#: ../craziness.rst:57 -msgid "Using Object Storage instead of a database" +#: ../craziness.rst:58 +msgid "Use Object Storage instead of a database" msgstr "" -#: ../craziness.rst:59 +#: ../craziness.rst:60 msgid "" -"We haven't quite figured out how to do this yet, but the general steps " -"involve changing the fractal upload code to store metadata with the object " -"in swift, then changing the API code such as \"list fractals\" to query " -"swift to get the metadata. If you do this, you should be able to stop using " -"a database." +"We have not quite figured out how to stop using a database, but the general " +"steps are:" msgstr "" -#: ../craziness.rst:69 +#: ../craziness.rst:63 msgid "" -"Wow! If you've made it through this section, you know more than the authors " -"of this guide know about working with OpenStack clouds." +"Change the Fractal upload code to store metadata with the object in Object " +"Storage." msgstr "" -#: ../craziness.rst:72 +#: ../craziness.rst:66 +msgid "" +"Change the API code, such as \"list fractals,\" to query Object Storage to " +"get the metadata." +msgstr "" + +#: ../craziness.rst:74 +msgid "" +"Wow! If you have made it through this section, you know more than the " +"authors of this guide know about working with OpenStack clouds." +msgstr "" + +#: ../craziness.rst:77 msgid "" "Perhaps you can `contribute `_?" msgstr "" #: ../durability.rst:3 -msgid "Making it durable" +msgid "Make it durable" msgstr "" #: ../durability.rst:14 -msgid "" -"This section introduces object storage. `OpenStack Object Storage `_ (code-named swift) is open " -"source software for creating redundant, scalable data storage using clusters " -"of standardized servers to store petabytes of accessible data. It is a long-" -"term storage system for large amounts of static data that can be retrieved, " -"leveraged, and updated. Access is via an API, not through a file-system like " -"more traditional storage." +msgid "This section introduces object storage." msgstr "" -#: ../durability.rst:23 +#: ../durability.rst:16 msgid "" -"There are a two key concepts to understand in the Object Storage API. The " -"Object Storage API is organized around two types of entities:" +"`OpenStack Object Storage `_ (code-named swift) is open-source software that enables you to " +"create redundant, scalable data storage by using clusters of standardized " +"servers to store petabytes of accessible data. It is a long-term storage " +"system for large amounts of static data that you can retrieve, leverage, and " +"update. Unlike more traditional storage systems that you access through a " +"file system, you access Object Storage through an API." +msgstr "" + +#: ../durability.rst:24 +msgid "The Object Storage API is organized around objects and containers." msgstr "" #: ../durability.rst:26 -msgid "Objects" -msgstr "" - -#: ../durability.rst:27 -msgid "Containers" -msgstr "" - -#: ../durability.rst:29 msgid "" -"Similar to the Unix programming model, an object is a \"bag of bytes\" that " -"contains data, such as documents and images. Containers are used to group " -"objects. You can make many objects inside a container, and have many " -"containers inside your account." +"Similar to the UNIX programming model, an object, such as a document or an " +"image, is a \"bag of bytes\" that contains data. You use containers to group " +"objects. You can place many objects inside a container, and your account can " +"have many containers." msgstr "" -#: ../durability.rst:34 +#: ../durability.rst:31 msgid "" -"If you think about how you traditionally make what you store durable, very " -"quickly you should come to the conclusion that keeping multiple copies of " -"your objects on separate systems is a good way to do that. However, keeping " -"track of multiple copies of objects is a pain, and building that into an app " -"requires a lot of logic. OpenStack Object Storage does this automatically " -"for you behind-the-scenes - replicating each object at least twice before " -"returning 'write success' to your API call. It will always work to ensure " -"that there are three copies of your objects (by default) at all times - " -"replicating them around the system in case of hardware failure, maintenance, " -"network outage or any other kind of breakage. This is very convenient for " -"app creation - you can just dump objects into object storage and not have to " -"care about any of this additional work to keep them safe." +"If you think about how you traditionally make what you store durable, you " +"quickly conclude that keeping multiple copies of your objects on separate " +"systems is a good way strategy. However, keeping track of those multiple " +"copies is difficult, and building that into an app requires complicated " +"logic." msgstr "" -#: ../durability.rst:51 -msgid "Using Object Storage to store fractals" -msgstr "" - -#: ../durability.rst:53 +#: ../durability.rst:36 msgid "" -"The Fractals app currently uses the local filesystem on the instance to " -"store the images it generates. This is not scalable or durable, for a number " -"of reasons." +"OpenStack Object Storage automatically replicates each object at least twice " +"before returning 'write success' to your API call. A good strategy is to " +"keep three copies of objects, by default, at all times, replicating them " +"across the system in case of hardware failure, maintenance, network outage, " +"or another kind of breakage. This strategy is very convenient for app " +"creation. You can just dump objects into object storage and not worry about " +"the additional work that it takes to keep them safe." msgstr "" -#: ../durability.rst:57 +#: ../durability.rst:46 +msgid "Use Object Storage to store fractals" +msgstr "" + +#: ../durability.rst:48 msgid "" -"Because the local filesystem is ephemeral storage, if the instance is " -"terminated, the fractal images will be lost along with the instance. Block " -"based storage, which we'll discuss in :doc:`/block_storage`, avoids that " -"problem, but like local filesystems, it requires administration to ensure " +"The Fractals app currently uses the local file system on the instance to " +"store the images that it generates. For a number of reasons, this approach " +"is not scalable or durable." +msgstr "" + +#: ../durability.rst:52 +msgid "" +"Because the local file system is ephemeral storage, the fractal images are " +"lost along with the instance when the instance is terminated. Block-based " +"storage, which the :doc:`/block_storage` section discusses, avoids that " +"problem, but like local file systems, it requires administration to ensure " "that it does not fill up, and immediate attention if disks fail." msgstr "" -#: ../durability.rst:64 +#: ../durability.rst:58 msgid "" -"The Object Storage service manages many of these tasks that normally would " -"require the application owner to manage them, and presents a scalable and " -"durable API that you can use for the fractals app, without having to be " -"concerned with the low level details of how the objects are stored and " -"replicated, and growing the storage pool. In fact, Object Storage handles " -"replication intrinsically, storing multiple copies of each object and " -"returning one of them on demand using the API." +"The Object Storage service manages many of the tasks normally managed by the " +"application owner. The Object Storage service provides a scalable and " +"durable API that you can use for the fractals app, eliminating the need to " +"be aware of the low level details of how objects are stored and replicated, " +"and how to grow the storage pool. Object Storage handles replication for " +"you. It stores multiple copies of each object. You can use the Object " +"Storage API to return an object, on demand." msgstr "" -#: ../durability.rst:73 -msgid "First, let's learn how to connect to the Object Storage endpoint:" +#: ../durability.rst:66 +msgid "First, learn how to connect to the Object Storage endpoint:" msgstr "" -#: ../durability.rst:96 +#: ../durability.rst:92 msgid "" "Libcloud 0.16 and 0.17 are afflicted with a bug that means authentication to " "a swift endpoint can fail with `a Python exception `_. If you encounter this, you can upgrade " -"your libcloud version, or apply a simple `2-line patch `_. If you encounter this, you can upgrade your " +"libcloud version, or apply a simple `2-line patch `_." msgstr "" -#: ../durability.rst:104 +#: ../durability.rst:100 msgid "" "Libcloud uses a different connector for Object Storage to all other " -"OpenStack services, so a conn object from previous sections won't work here " -"and we have to create a new one named :code:`swift`." +"OpenStack services, so a conn object from previous sections will not work " +"here and we have to create a new one named :code:`swift`." msgstr "" -#: ../durability.rst:123 +#: ../durability.rst:119 msgid "" "To begin to store objects, we must first make a container. Call yours :code:" "`fractals`:" msgstr "" -#: ../durability.rst:132 ../durability.rst:147 +#: ../durability.rst:128 ../durability.rst:140 ../durability.rst:155 +#: ../durability.rst:167 msgid "You should see output such as:" msgstr "" -#: ../durability.rst:138 +#: ../durability.rst:146 msgid "" "You should now be able to see this container appear in a listing of all " "containers in your account:" msgstr "" -#: ../durability.rst:153 +#: ../durability.rst:173 msgid "" -"The next logical step is to upload an object. Find a photo of a goat online, " -"name it :code:`goat.jpg` and upload it to your container :code:`fractals`:" +"The next logical step is to upload an object. Find a photo of a goat on " +"line, name it :code:`goat.jpg`, and upload it to your :code:`fractals` " +"container:" msgstr "" -#: ../durability.rst:163 +#: ../durability.rst:189 msgid "" -"List objects in your container :code:`fractals` to see if the upload was " -"successful, then download the file to verify the md5sum is the same:" +"List objects in your :code:`fractals` container to see if the upload was " +"successful. Then, download the file to verify that the md5sum is the same:" msgstr "" -#: ../durability.rst:196 -msgid "Finally, let's clean up by deleting our test object:" +#: ../durability.rst:249 +msgid "Finally, clean up by deleting the test object:" msgstr "" -#: ../durability.rst:204 -msgid "You need to pass in objects to the delete commands, not object names." +#: ../durability.rst:263 +msgid "You must pass in objects and not object names to the delete commands." msgstr "" -#: ../durability.rst:206 +#: ../durability.rst:265 +msgid "Now, no more objects are available in the :code:`fractals` container." +msgstr "" + +#: ../durability.rst:276 +msgid "Back up the Fractals from the database on the Object Storage" +msgstr "" + +#: ../durability.rst:278 msgid "" -"Now there should be no more objects be available in the container :code:" -"`fractals`." +"Back up the Fractals app images, which are currently stored inside the " +"database, on Object Storage." msgstr "" -#: ../durability.rst:217 -msgid "Backup the Fractals from the database on the Object Storage" +#: ../durability.rst:281 +msgid "Place the images in the :code:`fractals`' container:" msgstr "" -#: ../durability.rst:219 +#: ../durability.rst:295 msgid "" -"So let's now use the knowledge from above to backup the images of the " -"Fractals app, stored inside the database right now, on the Object Storage." +"Next, back up all existing fractals from the database to the swift " +"container. A simple `for` loop takes care of that:" msgstr "" -#: ../durability.rst:223 -msgid "Use the :code:`fractals`' container from above to put the images in:" -msgstr "" - -#: ../durability.rst:231 -msgid "" -"Next, we backup all of our existing fractals from the database to our swift " -"container. A simple for loop takes care of that:" -msgstr "" - -#: ../durability.rst:246 +#: ../durability.rst:298 ../durability.rst:318 msgid "Replace :code:`IP_API_1` with the IP address of the API instance." msgstr "" -#: ../durability.rst:248 +#: ../durability.rst:320 msgid "" "The example code uses the awesome `Requests library `_. Ensure that it is installed on your system " -"before trying to run the script above." +"requests.org/en/latest/>`_. Before you try to run the previous script, make " +"sure that it is installed on your system." msgstr "" -#: ../durability.rst:252 +#: ../durability.rst:327 msgid "Configure the Fractals app to use Object Storage" msgstr "" -#: ../durability.rst:254 +#: ../durability.rst:329 msgid "" -"Currently it is not possible to directly store generated images on the " -"OpenStack Object Storage. Please revisit this section again in the future." +"Currently, you cannot directly store generated images in OpenStack Object " +"Storage. Please revisit this section again in the future." msgstr "" -#: ../durability.rst:259 +#: ../durability.rst:334 msgid "Extra features" msgstr "" -#: ../durability.rst:262 +#: ../durability.rst:337 msgid "Delete containers" msgstr "" -#: ../durability.rst:264 +#: ../durability.rst:339 msgid "" -"One call we didn't cover above that you probably need to know is how to " -"delete a container. Ensure that you have removed all objects from the " -"container before running this, otherwise it will fail:" +"To delete a container, make sure that you have removed all objects from the " +"container before running this script. Otherwise, the script fails:" msgstr "" -#: ../durability.rst:274 +#: ../durability.rst:354 msgid "It is not possible to restore deleted objects. Be careful." msgstr "" -#: ../durability.rst:277 +#: ../durability.rst:357 msgid "Add metadata to objects" msgstr "" -#: ../durability.rst:279 +#: ../durability.rst:359 msgid "" -"You can also do advanced things like uploading an object with metadata, such " -"as in this below example, but for further information we'll refer you to the " -"documentation for your SDK. This option also uses a bit stream to upload the " -"file - iterating bit by bit over the file and passing those bits to swift as " -"they come, compared to loading the entire file in memory and then sending " -"it. This is more efficient, especially for larger files." +"You can complete advanced tasks such as uploading an object with metadata, " +"as shown in following example. For more information, see the documentation " +"for your SDK. This option also uses a bit stream to upload the file, " +"iterating bit by bit over the file and passing those bits to Object Storage " +"as they come. Compared to loading the entire file in memory and then sending " +"it, this method is more efficient, especially for larger files." msgstr "" -#: ../durability.rst:296 +#: ../durability.rst:381 msgid "Large objects" msgstr "" -#: ../durability.rst:298 +#: ../durability.rst:383 msgid "" -"For efficiency, most Object Storage installations treat large objects (say, :" -"code:`> 5GB`) differently than smaller objects." +"For efficiency, most Object Storage installations treat large objects, :code:" +"`> 5GB`, differently than smaller objects." msgstr "" -#: ../durability.rst:303 +#: ../durability.rst:394 msgid "" -"If you are working with large objects, use the :code:" -"`ex_multipart_upload_object` call instead of the simpler :code:" -"`upload_object` call. How the upload works behind-the-scenes is by splitting " -"the large object into chunks, and creating a special manifest so they can be " -"recombined on download. Alter the :code:`chunk_size` parameter (in bytes) " -"according to what your cloud can accept." +"If you work with large objects, use the :code:`ex_multipart_upload_object` " +"call instead of the simpler :code:`upload_object` call. The call splits the " +"large object into chunks and creates a manifest so that the chunks can be " +"recombined on download. Change the :code:`chunk_size` parameter, in bytes, " +"to a value that your cloud can accept." msgstr "" -#: ../durability.rst:319 +#: ../durability.rst:408 msgid "" "You should now be fairly confident working with Object Storage. You can find " -"more about the Object Storage SDK calls at:" +"more information about the Object Storage SDK calls at:" msgstr "" -#: ../durability.rst:324 +#: ../durability.rst:413 +msgid "" +"https://github.com/fog/fog/blob/master/lib/fog/openstack/docs/storage.md" +msgstr "" + +#: ../durability.rst:417 msgid "https://libcloud.readthedocs.org/en/latest/storage/api.html" msgstr "" -#: ../durability.rst:326 -msgid "Or try a different step in the tutorial, including:" +#: ../durability.rst:419 +msgid "Or, try one of these tutorial steps:" msgstr "" -#: ../durability.rst:328 +#: ../durability.rst:421 ../getting_started.rst:1366 ../introduction.rst:804 +#: ../scaling_out.rst:449 msgid "" -":doc:`/block_storage`: to migrate the database to block storage, or use the " -"database-as-as-service component" +":doc:`/block_storage`: Migrate the database to block storage, or use the " +"database-as-a-service component." +msgstr "" + +#: ../durability.rst:426 ../getting_started.rst:1371 ../introduction.rst:809 +#: ../networking.rst:803 ../orchestration.rst:490 ../scaling_out.rst:454 +msgid "" +":doc:`/craziness`: Learn some crazy things that you might not think to do ;)" msgstr "" #: ../getting_started.rst:3 @@ -856,27 +864,22 @@ msgstr "" #: ../getting_started.rst:8 msgid "" -"This guide is for software developers who want to deploy applications to " -"OpenStack clouds." +"This guide is for experienced software developers who want to deploy " +"applications to OpenStack clouds." msgstr "" #: ../getting_started.rst:11 msgid "" -"We assume that you're an experienced programmer who has not created a cloud " -"application in general or an OpenStack application in particular." +"If you are familiar with OpenStack but have not created a cloud application " +"in general or an OpenStack application in particular, this section teaches " +"you how to program with OpenStack components." msgstr "" -#: ../getting_started.rst:14 -msgid "" -"If you're familiar with OpenStack, this section teaches you how to program " -"with its components." -msgstr "" - -#: ../getting_started.rst:18 +#: ../getting_started.rst:16 msgid "What you will learn" msgstr "" -#: ../getting_started.rst:20 +#: ../getting_started.rst:18 msgid "" "Deploying applications in a cloud environment can be very different from " "deploying them in a traditional IT environment. This guide teaches you how " @@ -884,11 +887,11 @@ msgid "" "application development." msgstr "" -#: ../getting_started.rst:26 +#: ../getting_started.rst:24 msgid "A general overview" msgstr "" -#: ../getting_started.rst:28 +#: ../getting_started.rst:26 msgid "" "This tutorial shows two applications. The first application is a simple " "fractal generator that uses mathematical equations to generate beautiful " @@ -897,220 +900,220 @@ msgid "" "robust, application." msgstr "" -#: ../getting_started.rst:34 +#: ../getting_started.rst:32 msgid "The second application is an OpenStack application that enables you to:" msgstr "" -#: ../getting_started.rst:36 +#: ../getting_started.rst:34 msgid "" -"Create and destroy compute resources. These resources are virtual machine " +"Create and delete compute resources. These resources are virtual machine " "instances where the Fractals application runs." msgstr "" -#: ../getting_started.rst:38 +#: ../getting_started.rst:36 msgid "" "Make cloud-related architecture decisions such as turning functions into " "micro-services and modularizing them." msgstr "" -#: ../getting_started.rst:40 +#: ../getting_started.rst:38 msgid "Scale available resources up and down." msgstr "" -#: ../getting_started.rst:41 +#: ../getting_started.rst:39 msgid "Use Object and Block storage for file and database persistence." msgstr "" -#: ../getting_started.rst:42 +#: ../getting_started.rst:40 msgid "Use Orchestration services to automatically adjust to the environment." msgstr "" -#: ../getting_started.rst:43 +#: ../getting_started.rst:41 msgid "Customize networking for better performance and segregation." msgstr "" -#: ../getting_started.rst:44 +#: ../getting_started.rst:42 msgid "Explore and apply advanced OpenStack cloud features." msgstr "" -#: ../getting_started.rst:47 +#: ../getting_started.rst:45 msgid "Choose your OpenStack SDK" msgstr "" -#: ../getting_started.rst:49 +#: ../getting_started.rst:47 msgid "" "Anyone with a programming background can easily read the code in this guide. " "Although this guide focuses on a particular SDK, you can use other languages " "and toolkits with the OpenStack cloud:" msgstr "" -#: ../getting_started.rst:54 ../introduction.rst:455 ../introduction.rst:508 +#: ../getting_started.rst:52 ../introduction.rst:579 ../introduction.rst:655 msgid "Description" msgstr "" -#: ../getting_started.rst:54 +#: ../getting_started.rst:52 msgid "Language" msgstr "" -#: ../getting_started.rst:54 +#: ../getting_started.rst:52 msgid "Name" msgstr "" -#: ../getting_started.rst:54 +#: ../getting_started.rst:52 msgid "URL" msgstr "" -#: ../getting_started.rst:56 +#: ../getting_started.rst:54 msgid "" "A Python-based library managed by the Apache Foundation. This library " "enables you to work with multiple types of clouds." msgstr "" -#: ../getting_started.rst:56 +#: ../getting_started.rst:54 msgid "Libcloud" msgstr "" -#: ../getting_started.rst:56 ../getting_started.rst:58 -#: ../getting_started.rst:59 +#: ../getting_started.rst:54 ../getting_started.rst:56 +#: ../getting_started.rst:57 msgid "Python" msgstr "" -#: ../getting_started.rst:57 +#: ../getting_started.rst:55 msgid "https://libcloud.apache.org" msgstr "" -#: ../getting_started.rst:58 +#: ../getting_started.rst:56 msgid "A Python-based library specifically developed for OpenStack." msgstr "" -#: ../getting_started.rst:58 +#: ../getting_started.rst:56 msgid "OpenStack SDK" msgstr "" -#: ../getting_started.rst:58 +#: ../getting_started.rst:56 msgid "http://git.openstack.org/cgit/openstack/python-openstacksdk" msgstr "" -#: ../getting_started.rst:59 +#: ../getting_started.rst:57 msgid "" "A Python-based library developed by OpenStack Infra team to operate multiple " "OpenStack clouds." msgstr "" -#: ../getting_started.rst:59 +#: ../getting_started.rst:57 msgid "Shade" msgstr "" -#: ../getting_started.rst:59 +#: ../getting_started.rst:57 msgid "http://git.openstack.org/cgit/openstack-infra/shade" msgstr "" -#: ../getting_started.rst:61 +#: ../getting_started.rst:59 msgid "" -"A Java-based library. Like Libcloud, it's also managed by the Apache " +"A Java-based library. Like Libcloud, it is also managed by the Apache " "Foundation and works with multiple types of clouds." msgstr "" -#: ../getting_started.rst:61 +#: ../getting_started.rst:59 msgid "Java" msgstr "" -#: ../getting_started.rst:61 +#: ../getting_started.rst:59 msgid "https://jclouds.apache.org" msgstr "" -#: ../getting_started.rst:61 +#: ../getting_started.rst:59 msgid "jClouds" msgstr "" -#: ../getting_started.rst:63 +#: ../getting_started.rst:61 msgid "A Ruby-based SDK for multiple clouds." msgstr "" -#: ../getting_started.rst:63 +#: ../getting_started.rst:61 msgid "Ruby" msgstr "" -#: ../getting_started.rst:63 +#: ../getting_started.rst:61 msgid "fog" msgstr "" -#: ../getting_started.rst:63 +#: ../getting_started.rst:61 msgid "" "https://github.com/fog/fog/blob/master/lib/fog/openstack/docs/" "getting_started.md" msgstr "" -#: ../getting_started.rst:64 +#: ../getting_started.rst:62 msgid "A Node.js-based SDK for multiple clouds." msgstr "" -#: ../getting_started.rst:64 +#: ../getting_started.rst:62 msgid "https://github.com/pkgcloud/pkgcloud" msgstr "" -#: ../getting_started.rst:64 +#: ../getting_started.rst:62 msgid "node.js" msgstr "" -#: ../getting_started.rst:64 +#: ../getting_started.rst:62 msgid "pkgcloud" msgstr "" -#: ../getting_started.rst:65 +#: ../getting_started.rst:63 msgid "A library for developers using PHP to work with OpenStack clouds." msgstr "" -#: ../getting_started.rst:65 +#: ../getting_started.rst:63 msgid "PHP" msgstr "" -#: ../getting_started.rst:65 +#: ../getting_started.rst:63 msgid "http://php-opencloud.com/" msgstr "" -#: ../getting_started.rst:65 +#: ../getting_started.rst:63 msgid "php-opencloud" msgstr "" -#: ../getting_started.rst:66 +#: ../getting_started.rst:64 msgid ".NET Framework" msgstr "" -#: ../getting_started.rst:66 +#: ../getting_started.rst:64 msgid "" "A .NET-based library enables you to write C++ or C# code for Microsoft " "applications." msgstr "" -#: ../getting_started.rst:66 +#: ../getting_started.rst:64 msgid "OpenStack SDK for Microsoft .NET" msgstr "" -#: ../getting_started.rst:66 +#: ../getting_started.rst:64 msgid "https://www.nuget.org/packages/openstack.net" msgstr "" -#: ../getting_started.rst:71 +#: ../getting_started.rst:69 msgid "" "For a list of available SDKs, see `Software Development Kits `_." msgstr "" -#: ../getting_started.rst:73 +#: ../getting_started.rst:71 msgid "" "Other versions of this guide show you how to use the other SDKs and " -"languages to complete these tasks. If you're a developer for another toolkit " -"that you would like this guide to include, feel free to submit code " +"languages to complete these tasks. If you are a developer for another " +"toolkit that you would like this guide to include, feel free to submit code " "snippets. You can contact `OpenStack Documentation team `_ members for more information." msgstr "" -#: ../getting_started.rst:80 +#: ../getting_started.rst:78 msgid "What you need" msgstr "" -#: ../getting_started.rst:82 +#: ../getting_started.rst:80 msgid "" "We assume that you can already access an OpenStack cloud. You must have a " "project, also known as a tenant, with a minimum quota of six instances. " @@ -1119,17 +1122,17 @@ msgid "" "these operating systems." msgstr "" -#: ../getting_started.rst:88 +#: ../getting_started.rst:86 msgid "To interact with the cloud, you must also have" msgstr "" -#: ../getting_started.rst:92 +#: ../getting_started.rst:90 msgid "" "`OpenStack Cloud SDK for Microsoft .NET 1.4.0.1 or later installed `_." msgstr "" -#: ../getting_started.rst:97 +#: ../getting_started.rst:95 msgid "" "To install the OpenStack .NET SDK, use the NeGet Package Manager that is " "included with Visual Studio and Xamarin Studio. You simply add a package " @@ -1137,67 +1140,73 @@ msgid "" "the necessary dependencies." msgstr "" -#: ../getting_started.rst:104 +#: ../getting_started.rst:102 msgid "This document has not yet been completed for the .NET SDK." msgstr "" -#: ../getting_started.rst:108 +#: ../getting_started.rst:106 msgid "" "`fog 1.19 or higher installed `_ and working with ruby gems 1.9." msgstr "" -#: ../getting_started.rst:114 +#: ../getting_started.rst:112 msgid "This document has not yet been completed for the fog SDK." msgstr "" -#: ../getting_started.rst:126 +#: ../getting_started.rst:124 msgid "" "`libcloud 0.15.1 or higher installed `_." msgstr "" -#: ../getting_started.rst:131 +#: ../getting_started.rst:129 msgid "" "`pkgcloud 1.2 or higher installed `_." msgstr "" -#: ../getting_started.rst:154 +#: ../getting_started.rst:136 +msgid "" +"a recent version of `openstacksdk `_ installed." +msgstr "" + +#: ../getting_started.rst:149 msgid "" "`a recent version of shade library installed `_." msgstr "" -#: ../getting_started.rst:156 +#: ../getting_started.rst:151 msgid "Before proceeding, install the latest version of shade." msgstr "" -#: ../getting_started.rst:158 +#: ../getting_started.rst:153 msgid "Obtain the following information from your cloud provider:" msgstr "" -#: ../getting_started.rst:160 +#: ../getting_started.rst:155 msgid "auth URL" msgstr "" -#: ../getting_started.rst:161 +#: ../getting_started.rst:156 msgid "user name" msgstr "" -#: ../getting_started.rst:162 +#: ../getting_started.rst:157 msgid "password" msgstr "" -#: ../getting_started.rst:163 +#: ../getting_started.rst:158 msgid "project ID or name (projects are also known as tenants)" msgstr "" -#: ../getting_started.rst:164 +#: ../getting_started.rst:159 msgid "cloud region" msgstr "" -#: ../getting_started.rst:166 +#: ../getting_started.rst:161 msgid "" "You can also download the OpenStack RC file from the OpenStack Horizon " "dashboard. Log in to the dashboard and click :guilabel:`Project->Access & " @@ -1206,73 +1215,79 @@ msgid "" "your :file:`openrc.sh` file shows:" msgstr "" -#: ../getting_started.rst:176 +#: ../getting_started.rst:171 msgid "The actual auth URL is:" msgstr "" -#: ../getting_started.rst:183 -msgid "How you'll interact with OpenStack" +#: ../getting_started.rst:178 +msgid "How you interact with OpenStack" msgstr "" -#: ../getting_started.rst:185 +#: ../getting_started.rst:180 msgid "" "In this tutorial, you interact with your OpenStack cloud through the SDK " "that you chose in \"Choose your OpenStack SDK.\" This guide assumes that you " "know how to run code snippets in your language of choice." msgstr "" -#: ../getting_started.rst:198 +#: ../getting_started.rst:193 msgid "" "To try it, add the following code to a Python script (or use an interactive " "Python shell) by calling :code:`python -i`." msgstr "" -#: ../getting_started.rst:216 +#: ../getting_started.rst:202 msgid "" -"To try it, add the following code to a script (or use an interactive nodejs " -"shell) by calling :code:`node`." +"To try it out, add the following code to a Python script (or use an " +"interactive Python shell) by calling :code:`python -i`." msgstr "" -#: ../getting_started.rst:225 +#: ../getting_started.rst:211 +msgid "" +"To try it, use an interactive Node.js shell by calling :code:`node` or add " +"the following code to a script." +msgstr "" + +#: ../getting_started.rst:220 msgid "" "To use the OpenStack .NET SDK, add the following code in the required " "namespace section." msgstr "" -#: ../getting_started.rst:234 +#: ../getting_started.rst:229 msgid "" "Because all service endpoints use the Identity Service for authentication " "and authorization, place the following code in the 'void Main()' entry-point " "function." msgstr "" -#: ../getting_started.rst:245 +#: ../getting_started.rst:240 msgid "" "Because the tutorial reuses the :code:`conn` object, make sure that you " "always have one handy." msgstr "" -#: ../getting_started.rst:250 +#: ../getting_started.rst:245 msgid "" "If you receive the :code:`libcloud.common.types.InvalidCredsError: 'Invalid " "credentials with the provider'` exception when you run one of these API " "calls, double-check your credentials." msgstr "" -#: ../getting_started.rst:255 +#: ../getting_started.rst:250 msgid "" "If your provider does not support regions, try a blank string ('') for the " "`region_name`." msgstr "" -#: ../getting_started.rst:260 +#: ../getting_started.rst:255 msgid "" "Use your credentials above to specify the cloud provider name, user name, " "password, project_name and region_name in the file :file:`~/.config/" "openstack/clouds.yml`." msgstr "" -#: ../getting_started.rst:267 +#: ../getting_started.rst:262 msgid "" "If you do use a public cloud `known by shade `_, you can avoid " @@ -1280,17 +1295,24 @@ msgid "" "$PROVIDER_NAME` in the clouds.yml file." msgstr "" -#: ../getting_started.rst:277 +#: ../getting_started.rst:273 +msgid "" +"If you receive the exception :code:`openstack.exceptions.HttpException: " +"HttpException: 401 Client Error: Unauthorized,` while trying to run one of " +"the following API calls please double-check your credentials." +msgstr "" + +#: ../getting_started.rst:280 msgid "Flavors and images" msgstr "" -#: ../getting_started.rst:279 +#: ../getting_started.rst:282 msgid "" "To run your application, you must launch an instance. This instance serves " "as a virtual machine." msgstr "" -#: ../getting_started.rst:282 +#: ../getting_started.rst:285 msgid "" "To launch an instance, you choose a flavor and an image. The flavor " "represents the size of the instance, including the number of CPUs and amount " @@ -1300,33 +1322,38 @@ msgid "" "monetary cost." msgstr "" -#: ../getting_started.rst:288 +#: ../getting_started.rst:291 msgid "" "To list the images that are available in your cloud, run some API calls:" msgstr "" -#: ../getting_started.rst:303 ../getting_started.rst:316 -#: ../getting_started.rst:341 ../getting_started.rst:357 -#: ../getting_started.rst:397 ../getting_started.rst:413 -#: ../getting_started.rst:438 ../getting_started.rst:457 -#: ../getting_started.rst:515 ../getting_started.rst:527 -#: ../getting_started.rst:545 ../getting_started.rst:557 -#: ../getting_started.rst:597 ../getting_started.rst:609 -#: ../getting_started.rst:628 ../getting_started.rst:643 -#: ../getting_started.rst:700 ../getting_started.rst:723 -#: ../getting_started.rst:737 +#: ../getting_started.rst:306 ../getting_started.rst:319 +#: ../getting_started.rst:344 ../getting_started.rst:360 +#: ../getting_started.rst:413 ../getting_started.rst:429 +#: ../getting_started.rst:454 ../getting_started.rst:473 +#: ../getting_started.rst:550 ../getting_started.rst:562 +#: ../getting_started.rst:580 ../getting_started.rst:592 +#: ../getting_started.rst:643 ../getting_started.rst:655 +#: ../getting_started.rst:674 ../getting_started.rst:689 +#: ../getting_started.rst:758 ../getting_started.rst:782 +#: ../getting_started.rst:796 msgid "This code returns output like this:" msgstr "" -#: ../getting_started.rst:382 +#: ../getting_started.rst:390 ../getting_started.rst:505 +#: ../getting_started.rst:622 ../getting_started.rst:721 +msgid "You should see output something like this:" +msgstr "" + +#: ../getting_started.rst:398 msgid "You can also get information about available flavors:" msgstr "" -#: ../getting_started.rst:483 +#: ../getting_started.rst:518 msgid "Your images and flavors will be different, of course." msgstr "" -#: ../getting_started.rst:485 +#: ../getting_started.rst:520 msgid "" "Choose an image and flavor for your instance. You need about 1GB RAM, 1 CPU, " "and a 1GB disk. This example uses the Ubuntu image with a small flavor, " @@ -1335,49 +1362,49 @@ msgid "" "that you choose." msgstr "" -#: ../getting_started.rst:491 +#: ../getting_started.rst:526 msgid "" "If the image that you want is not available in your cloud, you can usually " -"upload one depending on your cloud's policy settings. For information about " -"how to upload images, see `obtaining images `_." +"upload one depending on the policy settings of your cloud. For information " +"about how to upload images, see `obtaining images `_." msgstr "" -#: ../getting_started.rst:496 +#: ../getting_started.rst:531 msgid "" -"Set the image and size variables to appropriate values for your cloud. We'll " -"use these variables in later sections." +"Set the image and size variables to appropriate values for your cloud. We " +"will use these variables in later sections." msgstr "" -#: ../getting_started.rst:499 +#: ../getting_started.rst:534 msgid "" "First, tell the connection to get a specified image by using the ID of the " "image that you picked in the previous section:" msgstr "" -#: ../getting_started.rst:582 -msgid "Next, choose which flavor you want to use:" +#: ../getting_started.rst:628 +msgid "Next, tell the script which flavor you want to use:" msgstr "" -#: ../getting_started.rst:636 +#: ../getting_started.rst:682 msgid "" "Because shade accepts either the ID or name in most API calls, specify the " "name for the flavor:" msgstr "" -#: ../getting_started.rst:669 -msgid "Now, you're ready to launch the instance." +#: ../getting_started.rst:727 +msgid "Now, you can launch the instance." msgstr "" -#: ../getting_started.rst:672 +#: ../getting_started.rst:730 msgid "Launch an instance" msgstr "" -#: ../getting_started.rst:674 +#: ../getting_started.rst:732 msgid "Use your selected image and flavor to create an instance." msgstr "" -#: ../getting_started.rst:676 +#: ../getting_started.rst:734 msgid "" "The following instance creation example assumes that you have a single-" "tenant network. If you receive the 'Exception: 400 Bad Request Multiple " @@ -1386,246 +1413,270 @@ msgid "" "call that creates the server. See :doc:`/appendix` for details." msgstr "" -#: ../getting_started.rst:683 +#: ../getting_started.rst:741 msgid "Create the instance." msgstr "" -#: ../getting_started.rst:685 +#: ../getting_started.rst:743 msgid "Your SDK might call an instance a 'node' or 'server'." msgstr "" -#: ../getting_started.rst:749 +#: ../getting_started.rst:770 +msgid "You should see output something like:" +msgstr "" + +#: ../getting_started.rst:808 msgid "If you list existing instances:" msgstr "" -#: ../getting_started.rst:785 +#: ../getting_started.rst:850 msgid "The new instance appears." msgstr "" -#: ../getting_started.rst:891 +#: ../getting_started.rst:954 msgid "Before you continue, you must do one more thing." msgstr "" -#: ../getting_started.rst:894 +#: ../getting_started.rst:957 msgid "Destroy an instance" msgstr "" -#: ../getting_started.rst:896 +#: ../getting_started.rst:959 msgid "" -"Cloud resources such as running instances that you no longer use can cost " -"money. Destroy cloud resources to avoid unexpected expenses." +"Cloud resources, such as running instances that you no longer use, can cost " +"money. To avoid unexpected expenses, destroy cloud resources." msgstr "" -#: ../getting_started.rst:932 +#: ../getting_started.rst:1001 msgid "If you list the instances again, the instance disappears." msgstr "" -#: ../getting_started.rst:934 +#: ../getting_started.rst:1003 msgid "" "Leave your shell open to use it for another instance deployment in this " "section." msgstr "" -#: ../getting_started.rst:938 +#: ../getting_started.rst:1007 msgid "Deploy the application to a new instance" msgstr "" -#: ../getting_started.rst:940 +#: ../getting_started.rst:1009 msgid "" -"Now that you know how to create and destroy instances, you can deploy the " +"Now that you know how to create and delete instances, you can deploy the " "sample application. The instance that you create for the application is " -"similar to the first instance that you created, but this time, we'll briefly " -"introduce a few extra concepts." +"similar to the first instance that you created, but this time, we will " +"briefly introduce a few extra concepts." msgstr "" -#: ../getting_started.rst:945 +#: ../getting_started.rst:1014 msgid "" "Internet connectivity from your cloud instance is required to download the " "application." msgstr "" -#: ../getting_started.rst:948 +#: ../getting_started.rst:1017 msgid "" -"When you create an instance for the application, you'll want to give it a " -"bit more information than you supplied to the bare instance that you just " -"created and destroyed. We'll go into more detail in later sections, but for " +"When you create an instance for the application, you want to give it a bit " +"more information than you supplied to the bare instance that you just " +"created and deleted. We will go into more detail in later sections, but for " "now, simply create the following resources so that you can feed them to the " "instance:" msgstr "" -#: ../getting_started.rst:954 +#: ../getting_started.rst:1023 msgid "" "A key pair. To access your instance, you must import an SSH public key into " "OpenStack to create a key pair. OpenStack installs this key pair on the new " "instance. Typically, your public key is written to :code:`.ssh/id_rsa.pub`. " "If you do not have an SSH public key file, follow `these instructions " -"`_ first. We'll " +"`_ first. We will " "cover these instructions in depth in :doc:`/introduction`." msgstr "" -#: ../getting_started.rst:963 ../getting_started.rst:974 -#: ../getting_started.rst:987 ../getting_started.rst:996 +#: ../getting_started.rst:1030 msgid "" -"In the following example, :code:`pub_key_file` should be set to the location " -"of your public SSH key file." +"In the following example, set :code:`pub_key_file` to the location of your " +"public SSH key file." msgstr "" -#: ../getting_started.rst:1004 +#: ../getting_started.rst:1073 msgid "" "Network access. By default, OpenStack filters all traffic. You must create a " "security group and apply it to your instance. The security group allows HTTP " -"and SSH access. We'll go into more detail in :doc:`/introduction`." +"and SSH access. We will go into more detail in :doc:`/introduction`." msgstr "" -#: ../getting_started.rst:1033 +#: ../getting_started.rst:1108 msgid "" -"User data. During instance creation, you can provide user data to OpenStack " -"to configure instances after they boot. The cloud-init service applies the " -"user data to an instance. You must pre-install the cloud-init service on " -"your chosen image. We'll go into more detail in :doc:`/introduction`." +"Userdata. During instance creation, you can provide userdata to OpenStack to " +"configure instances after they boot. The cloud-init service applies the user " +"data to an instance. You must pre-install the cloud-init service on your " +"chosen image. We will go into more detail in :doc:`/introduction`." msgstr "" -#: ../getting_started.rst:1063 +#: ../getting_started.rst:1140 +msgid "User data in openstacksdk must be encoded to Base64" +msgstr "" + +#: ../getting_started.rst:1146 msgid "Now, you can boot and configure the instance." msgstr "" -#: ../getting_started.rst:1066 +#: ../getting_started.rst:1149 msgid "Boot and configure an instance" msgstr "" -#: ../getting_started.rst:1068 +#: ../getting_started.rst:1151 msgid "" "Use the image, flavor, key pair, and userdata to create an instance. After " "you request the instance, wait for it to build." msgstr "" -#: ../getting_started.rst:1092 +#: ../getting_started.rst:1175 msgid "The shade framework can select and assign a free floating IP quickly" msgstr "" -#: ../getting_started.rst:1098 +#: ../getting_started.rst:1187 msgid "" "When the instance boots, the `ex_userdata` variable value instructs the " "instance to deploy the Fractals application." msgstr "" -#: ../getting_started.rst:1102 +#: ../getting_started.rst:1191 msgid "Associate a floating IP for external connectivity" msgstr "" -#: ../getting_started.rst:1104 -msgid "We'll cover networking in detail in :doc:`/networking`." +#: ../getting_started.rst:1193 +msgid "We cover networking in detail in :doc:`/networking`." msgstr "" -#: ../getting_started.rst:1106 +#: ../getting_started.rst:1195 msgid "" "To see the application running, you must know where to look for it. By " "default, your instance has outbound network access. To make your instance " "reachable from the Internet, you need an IP address. By default in some " "cases, your instance is provisioned with a publicly rout-able IP address. In " -"this case, you'll see an IP address listed under `public_ips` or " -"`private_ips` when you list the instances. If not, you must create and " -"attach a floating IP address to your instance." +"this case, you see an IP address listed under `public_ips` or `private_ips` " +"when you list the instances. If not, you must create and attach a floating " +"IP address to your instance." msgstr "" -#: ../getting_started.rst:1121 -msgid "This will get an ip address that you can assign to your instance with:" +#: ../getting_started.rst:1211 +msgid "This gets an IP address that you can assign to your instance:" msgstr "" -#: ../getting_started.rst:1131 +#: ../getting_started.rst:1220 +msgid "To see whether a private IP address is assigned to your instance:" +msgstr "" + +#: ../getting_started.rst:1226 +msgid "" +"If one is assigned, users can use this address to access the instance on " +"some OpenStack clouds." +msgstr "" + +#: ../getting_started.rst:1229 +msgid "To determine whether a public IP address is assigned to your instance:" +msgstr "" + +#: ../getting_started.rst:1235 +msgid "If one is assigned, users can use this address to access the instance." +msgstr "" + +#: ../getting_started.rst:1237 +msgid "To create a floating IP address to use with your instance:" +msgstr "" + +#: ../getting_started.rst:1239 msgid "" "Use :code:`ex_list_floating_ip_pools()` and select the first floating IP " -"address pool. Allocate this pool to your project and attach it to your " -"instance." +"address pool. Allocate this pool to your project and use it to get a " +"floating IP address." msgstr "" -#: ../getting_started.rst:1139 ../getting_started.rst:1162 +#: ../getting_started.rst:1247 ../getting_started.rst:1269 +#: ../getting_started.rst:1299 msgid "This code returns the floating IP address:" msgstr "" -#: ../getting_started.rst:1145 ../getting_started.rst:1168 +#: ../getting_started.rst:1261 +msgid "" +"Use :code:`getFloatingIps` to check for unused addresses. Select the first " +"available address. Otherwise, use :code:`allocateNewFloatingIp` to allocate " +"a floating IP to your project from the default address pool." +msgstr "" + +#: ../getting_started.rst:1275 +msgid "Attach the floating IP address to the instance:" +msgstr "" + +#: ../getting_started.rst:1289 +msgid "" +"For this example, we take a floating IP pool from the 'public' network, " +"which is your external network." +msgstr "" + +#: ../getting_started.rst:1292 +msgid "" +"List all available floating IPs for this project and select the first free " +"one. Allocate a new floating IP if none is available." +msgstr "" + +#: ../getting_started.rst:1305 msgid "You can then attach it to the instance:" msgstr "" -#: ../getting_started.rst:1154 -msgid "" -"Use :code:`getFloatingIps` to check for unused addresses, selecting the " -"first one if available, otherwise use :code:`allocateNewFloatingIp` to " -"allocate a new Floating IP to your project from the default address pool." -msgstr "" - -#: ../getting_started.rst:1181 +#: ../getting_started.rst:1312 msgid "Run the script to start the deployment." msgstr "" -#: ../getting_started.rst:1184 +#: ../getting_started.rst:1315 msgid "Access the application" msgstr "" -#: ../getting_started.rst:1186 +#: ../getting_started.rst:1317 msgid "" "Deploying application data and configuration to the instance can take some " "time. Consider enjoying a cup of coffee while you wait. After the " -"application deploys, you can visit the awesome graphic interface at the " -"following link by using your preferred browser." +"application deploys, you can use your preferred browser to visit the awesome " +"graphic interface at the following link." msgstr "" -#: ../getting_started.rst:1212 +#: ../getting_started.rst:1348 msgid "" -"If you do not use floating IPs, substitute another IP address as appropriate" +"If you do not use floating IP addresses, substitute another IP address, as " +"appropriate." msgstr "" -#: ../getting_started.rst:1224 +#: ../getting_started.rst:1361 msgid "" -"Don't worry if these concepts are not yet completely clear. In :doc:`/" +"Do not worry if these concepts are not yet completely clear. In :doc:`/" "introduction`, we explore these concepts in more detail." msgstr "" -#: ../getting_started.rst:1227 -msgid ":doc:`/scaling_out`: Learn how to scale your application" +#: ../getting_started.rst:1364 +msgid ":doc:`/scaling_out`: Learn how to scale your application." msgstr "" -#: ../getting_started.rst:1228 +#: ../getting_started.rst:1365 msgid "" ":doc:`/durability`: Learn how to use Object Storage to make your application " -"durable" +"durable." msgstr "" -#: ../getting_started.rst:1229 ../introduction.rst:646 ../scaling_out.rst:425 -msgid "" -":doc:`/block_storage`: Migrate the database to block storage, or use the " -"database-as-a-service component" -msgstr "" - -#: ../getting_started.rst:1231 ../scaling_out.rst:427 -msgid ":doc:`/orchestration`: Automatically orchestrate your application" -msgstr "" - -#: ../getting_started.rst:1232 ../scaling_out.rst:428 -msgid ":doc:`/networking`: Learn about complex networking" -msgstr "" - -#: ../getting_started.rst:1233 ../introduction.rst:650 ../scaling_out.rst:429 -msgid ":doc:`/advice`: Get advice about operations" -msgstr "" - -#: ../getting_started.rst:1234 ../introduction.rst:651 ../scaling_out.rst:430 -msgid "" -":doc:`/craziness`: Learn some crazy things that you might not think to do ;)" -msgstr "" - -#: ../getting_started.rst:1239 ../introduction.rst:655 ../scaling_out.rst:434 +#: ../getting_started.rst:1376 ../introduction.rst:812 ../scaling_out.rst:457 msgid "Complete code sample" msgstr "" -#: ../getting_started.rst:1241 ../introduction.rst:657 ../scaling_out.rst:436 +#: ../getting_started.rst:1378 ../introduction.rst:814 msgid "" "The following file contains all of the code from this section of the " "tutorial. This comprehensive code sample lets you view and run the code as a " "single script." msgstr "" -#: ../getting_started.rst:1245 ../introduction.rst:660 ../scaling_out.rst:440 +#: ../getting_started.rst:1382 ../introduction.rst:818 ../scaling_out.rst:463 msgid "" "Before you run this script, confirm that you have set your authentication " "information, the flavor ID, and image ID." @@ -1658,21 +1709,21 @@ msgid "" "particular. It also describes some commands in the previous section." msgstr "" -#: ../introduction.rst:38 +#: ../introduction.rst:35 msgid "Cloud application architecture principles" msgstr "" -#: ../introduction.rst:40 +#: ../introduction.rst:37 msgid "" "Cloud applications typically share several design principles. These " "principles influenced the design of the Fractals application." msgstr "" -#: ../introduction.rst:48 +#: ../introduction.rst:45 msgid "Modularity and micro-services" msgstr "" -#: ../introduction.rst:50 +#: ../introduction.rst:47 msgid "" "`Micro-services `_ are an " "important design pattern that helps achieve application modularity. " @@ -1683,42 +1734,41 @@ msgid "" "well and are fault tolerant." msgstr "" -#: ../introduction.rst:58 +#: ../introduction.rst:55 msgid "Scalability" msgstr "" -#: ../introduction.rst:60 +#: ../introduction.rst:57 msgid "" "Cloud applications often use many small instances rather than a few large " "instances. Provided that an application is sufficiently modular, you can " "easily distribute micro-services across as many instances as required. This " "architecture enables an application to grow past the limit imposed by the " -"maximum size of an instance. It's like trying to move a large number of " -"people from one place to another; there's only so many people you can put on " -"the largest bus, but you can use an unlimited number of buses or small cars, " -"which provide just the capacity you need - and no more." +"maximum size of an instance. It is like trying to move a large number of " +"people from one place to another; there is only so many people you can put " +"on the largest bus, but you can use an unlimited number of buses or small " +"cars, which provide just the capacity you need - and no more." msgstr "" -#: ../introduction.rst:70 +#: ../introduction.rst:67 msgid "Fault tolerance" msgstr "" +#: ../introduction.rst:69 +msgid "" +"In cloud programming, there is a well-known analogy known as \"cattle vs pets" +"\". If you have not heard it before, it goes like this:" +msgstr "" + #: ../introduction.rst:72 msgid "" -"In cloud programming, there's a well-known analogy known as \"cattle vs pets" -"\". If you haven't heard it before, it goes like this:" +"When you deal with pets, you name and care for them. If they get sick, you " +"nurse them back to health, which can be difficult and very time consuming. " +"When you deal with cattle, you attach a numbered tag to their ear. If they " +"get sick, you put them down and move on." msgstr "" -#: ../introduction.rst:75 -msgid "" -"When you're dealing with pets, you name them and care for them and if they " -"get sick, you nurse them back to health. Nursing pets back to health can be " -"difficult and very time consuming. When you're dealing with cattle, you " -"attach a numbered tag to their ear and if they get sick you put them down " -"and move on." -msgstr "" - -#: ../introduction.rst:81 +#: ../introduction.rst:77 msgid "" "That, as it happens, is the new reality of programming. Applications and " "systems used to be created on large, expensive servers, cared for by " @@ -1727,42 +1777,42 @@ msgid "" "make it right again and save the server and the application." msgstr "" -#: ../introduction.rst:88 +#: ../introduction.rst:84 msgid "" -"In cloud programming, it's very different. Rather than large, expensive " -"servers, you're dealing with virtual machines that are literally disposable; " -"if something goes wrong, you shut it down and spin up a new one. There's " -"still operations staff, but rather than nursing individual servers back to " -"health, their job is to monitor the health of the overall system." +"In cloud programming, it is very different. Rather than large, expensive " +"servers, you have virtual machines that are disposable; if something goes " +"wrong, you shut the server down and spin up a new one. There is still " +"operations staff, but rather than nursing individual servers back to health, " +"their job is to monitor the health of the overall system." msgstr "" -#: ../introduction.rst:95 +#: ../introduction.rst:91 msgid "" -"There are definite advantages to this architecture. It's easy to get a \"new" +"There are definite advantages to this architecture. It is easy to get a \"new" "\" server, without any of the issues that inevitably arise when a server has " "been up and running for months, or even years." msgstr "" -#: ../introduction.rst:99 +#: ../introduction.rst:95 msgid "" "As with classical infrastructure, failures of the underpinning cloud " -"infrastructure (hardware, networks, and software) are unavoidable. When " -"you're designing for the cloud, it's crucial that your application is " -"designed for an environment where failures can happen at any moment. This " -"may sound like a liability, but it's not; by designing your application with " -"a high degree of fault tolerance, you're also making it resilient in the " -"face of change, and therefore more adaptable." +"infrastructure (hardware, networks, and software) are unavoidable. When you " +"design for the cloud, it is crucial that your application is designed for an " +"environment where failures can happen at any moment. This may sound like a " +"liability, but it is not; by designing your application with a high degree " +"of fault tolerance, you also make it resilient, and more adaptable, in the " +"face of change." msgstr "" -#: ../introduction.rst:108 +#: ../introduction.rst:103 msgid "Fault tolerance is essential to the cloud-based application." msgstr "" -#: ../introduction.rst:111 +#: ../introduction.rst:106 msgid "Automation" msgstr "" -#: ../introduction.rst:113 +#: ../introduction.rst:108 msgid "" "If an application is meant to automatically scale up and down to meet " "demand, it is not feasible have any manual steps in the process of deploying " @@ -1771,11 +1821,11 @@ msgid "" "fault tolerance and resilience." msgstr "" -#: ../introduction.rst:120 +#: ../introduction.rst:115 msgid "Programmatic interfaces (APIs)" msgstr "" -#: ../introduction.rst:122 +#: ../introduction.rst:117 msgid "" "Like many cloud applications, the Fractals application has a `RESTful API " "`_. You can " @@ -1785,20 +1835,21 @@ msgid "" "software quality." msgstr "" -#: ../introduction.rst:130 +#: ../introduction.rst:125 msgid "Fractals application architecture" msgstr "" -#: ../introduction.rst:132 +#: ../introduction.rst:127 msgid "" "The Fractals application was designed with the principles of the previous " -"subsection in mind. You'll note that in :doc:`getting_started`, we deployed " -"the application in an all-in-one style, on a single virtual machine. This " -"isn't good practice, but because the application uses micro-services to " -"decouple logical application functions, we can change this easily." +"subsection in mind. You will note that in :doc:`getting_started`, we " +"deployed the application in an all-in-one style, on a single virtual " +"machine. This is not a good practice, but because the application uses micro-" +"services to decouple logical application functions, we can change this " +"easily." msgstr "" -#: ../introduction.rst:140 +#: ../introduction.rst:135 msgid "" "Message queues are used to facilitate communication between the Fractal " "application services. The Fractal application uses a `work queue `_ for many cloud applications that have long lists of requests coming " @@ -1823,61 +1874,67 @@ msgid "" "a worker may crash and the tasks will be processed by other workers." msgstr "" -#: ../introduction.rst:156 +#: ../introduction.rst:151 msgid "" "The `RabbitMQ getting started tutorial `_ provides a great introduction to message queues." msgstr "" -#: ../introduction.rst:162 +#: ../introduction.rst:157 msgid "" "The worker service consumes messages from the work queue and then processes " "them to create the corresponding fractal image file." msgstr "" -#: ../introduction.rst:165 +#: ../introduction.rst:160 msgid "" -"Of course there's also a web interface which offers a more human friendly " +"Of course there is also a web interface which offers a more human friendly " "way of accessing the API to view the created fractal images, and a simple " "command line interface." msgstr "" -#: ../introduction.rst:177 +#: ../introduction.rst:172 msgid "" "There are also multiple storage back ends (to store the generated fractal " -"images) and a database component (to store the state of tasks), but we'll " +"images) and a database component (to store the state of tasks), but we will " "talk about those in :doc:`/durability` and :doc:`/block_storage` " "respectively." msgstr "" -#: ../introduction.rst:183 +#: ../introduction.rst:178 msgid "How the Fractals application interacts with OpenStack" msgstr "" -#: ../introduction.rst:196 +#: ../introduction.rst:191 msgid "The magic revisited" msgstr "" -#: ../introduction.rst:198 +#: ../introduction.rst:193 msgid "" -"So what exactly was that request doing at the end of the previous section? " -"Let's look at it again. (Note that in this subsection, we're just explaining " -"what you've already done in the previous section; you don't need to execute " -"these commands again.)" +"So what exactly was that request doing at the end of the previous section? " +"Let us look at it again. In this subsection, we are just explaining what you " +"have already done in the previous section; you do not need to run these " +"commands again." msgstr "" -#: ../introduction.rst:216 +#: ../introduction.rst:223 msgid "" "We explained image and flavor in :doc:`getting_started`, so in the following " "sections, we will explain the other parameters in detail, including :code:" "`ex_userdata` (cloud-init) and :code:`ex_keyname` (key pairs)." msgstr "" -#: ../introduction.rst:222 +#: ../introduction.rst:229 +msgid "" +"In openstacksdk parameter :code:`ex_userdata` is called :code:`user_data` " +"and parameter :code:`ex_keyname` is called :code:`key_name`." +msgstr "" + +#: ../introduction.rst:234 msgid "Introduction to cloud-init" msgstr "" -#: ../introduction.rst:224 +#: ../introduction.rst:236 msgid "" "`cloud-init `_ is a tool that " "performs instance configuration tasks during the boot of a cloud instance, " @@ -1886,7 +1943,7 @@ msgid "" "init." msgstr "" -#: ../introduction.rst:230 +#: ../introduction.rst:242 msgid "" "In this case, we are presenting a shell script as the `userdata `_. " @@ -1894,17 +1951,21 @@ msgid "" "the shell script in the :code:`userdata` variable." msgstr "" -#: ../introduction.rst:235 +#: ../introduction.rst:247 msgid "" "When an SSH public key is provided during instance creation, cloud-init " "installs this key on a user account. (The user name varies between cloud " "images.) See the `Obtaining Images `_ section of the image guide for guidance " -"about which user name you should use when SSHing. If you still have problems " -"logging in, ask your cloud provider to confirm the user name." +"obtain-images.html>`_ section of the image guide for guidance about which " +"user name you should use when SSHing. If you still have problems logging in, " +"ask your cloud provider to confirm the user name." msgstr "" -#: ../introduction.rst:256 +#: ../introduction.rst:279 +msgid "User data in openstacksdk must be encoded to Base64." +msgstr "" + +#: ../introduction.rst:281 msgid "" "After the instance is created, cloud-init downloads and runs a script " "called :code:`install.sh`. This script installs the Fractals application. " @@ -1914,30 +1975,30 @@ msgid "" "readthedocs.org/en/latest/>`_." msgstr "" -#: ../introduction.rst:263 +#: ../introduction.rst:288 msgid "Introduction to key pairs" msgstr "" -#: ../introduction.rst:265 +#: ../introduction.rst:290 msgid "" -"Security is important when it comes to your instances; you can't have just " +"Security is important when it comes to your instances; you can not have just " "anyone accessing them. To enable logging into an instance, you must provide " "the public key of an SSH key pair during instance creation. In section one, " "you created and uploaded a key pair to OpenStack, and cloud-init installed " "it for the user account." msgstr "" -#: ../introduction.rst:271 +#: ../introduction.rst:296 msgid "" "Even with a key in place, however, you must have the appropriate security " "group rules in place to access your instance." msgstr "" -#: ../introduction.rst:275 +#: ../introduction.rst:300 msgid "Introduction to security groups" msgstr "" -#: ../introduction.rst:277 +#: ../introduction.rst:302 msgid "" "Security groups are sets of network access rules that are applied to an " "instance's networking. By default, only egress (outbound) traffic is " @@ -1945,47 +2006,47 @@ msgid "" "creating a security group rule." msgstr "" -#: ../introduction.rst:282 +#: ../introduction.rst:307 msgid "" "Removing the egress rule created by OpenStack will cause your instance " "networking to break." msgstr "" -#: ../introduction.rst:285 +#: ../introduction.rst:310 msgid "" "Start by creating a security group for the all-in-one instance and adding " "the appropriate rules, such as HTTP (TCP port 80) and SSH (TCP port 22):" msgstr "" -#: ../introduction.rst:302 +#: ../introduction.rst:333 msgid "" ":code:`ex_create_security_group_rule()` takes ranges of ports as input. This " "is why ports 80 and 22 are passed twice." msgstr "" -#: ../introduction.rst:306 +#: ../introduction.rst:343 msgid "You can list available security groups with:" msgstr "" -#: ../introduction.rst:322 -msgid "Once you've created a rule or group, you can also delete it:" +#: ../introduction.rst:370 +msgid "Once you have created a rule or group, you can also delete it:" msgstr "" -#: ../introduction.rst:338 +#: ../introduction.rst:397 msgid "To see which security groups apply to an instance, you can:" msgstr "" -#: ../introduction.rst:356 +#: ../introduction.rst:426 msgid "" -"Once you've configured permissions, you'll need to know where to access the " +"Once you have configured permissions, you must know where to access the " "application." msgstr "" -#: ../introduction.rst:360 +#: ../introduction.rst:430 msgid "Introduction to Floating IPs" msgstr "" -#: ../introduction.rst:362 +#: ../introduction.rst:432 msgid "" "As in traditional IT, cloud instances are accessed through IP addresses that " "OpenStack assigns. How this is actually done depends on the networking setup " @@ -1993,7 +2054,7 @@ msgid "" "address assigned directly to your instance." msgstr "" -#: ../introduction.rst:367 +#: ../introduction.rst:437 msgid "" "The most common way for OpenStack clouds to allocate Internet rout-able IP " "addresses to instances, however, is through the use of floating IPs. A " @@ -2005,20 +2066,20 @@ msgid "" "floating IPs for your use." msgstr "" -#: ../introduction.rst:377 +#: ../introduction.rst:447 msgid "" "To use a floating IP, you must first allocate an IP to your project, then " "associate it to your instance's network interface." msgstr "" -#: ../introduction.rst:382 +#: ../introduction.rst:452 msgid "" "Allocating a floating IP address to an instance does not change the IP " "address of the instance, it causes OpenStack to establish the network " "translation rules to allow an *additional* IP address." msgstr "" -#: ../introduction.rst:393 +#: ../introduction.rst:462 ../introduction.rst:484 msgid "" "If you have no free floating IPs that have been previously allocated for " "your project, first select a floating IP pool offered by your provider. In " @@ -2026,254 +2087,266 @@ msgid "" "available IP addresses." msgstr "" -#: ../introduction.rst:402 +#: ../introduction.rst:471 ../introduction.rst:493 msgid "" "Now request that an address from this pool be allocated to your project." msgstr "" -#: ../introduction.rst:415 +#: ../introduction.rst:512 +msgid "" +"If you have no free floating IPs that have been allocated for your project, " +"first select a network which offer allocation of floating IPs. In this " +"example we use network which is called :code:`public`." +msgstr "" + +#: ../introduction.rst:521 +msgid "" +"Now request an address from this network to be allocated to your project." +msgstr "" + +#: ../introduction.rst:527 msgid "" "Now that you have an unused floating IP address allocated to your project, " "attach it to an instance." msgstr "" -#: ../introduction.rst:431 +#: ../introduction.rst:555 msgid "" "That brings us to where we ended up at the end of :doc:`/getting_started`. " "But where do we go from here?" msgstr "" -#: ../introduction.rst:435 +#: ../introduction.rst:559 msgid "Splitting services across multiple instances" msgstr "" -#: ../introduction.rst:437 +#: ../introduction.rst:561 msgid "" -"We've talked about separating functions into different micro-services, and " -"how that enables us to make use of the cloud architecture. Now let's see " +"We have talked about separating functions into different micro-services, and " +"how that enables us to make use of the cloud architecture. Now let us see " "that in action." msgstr "" -#: ../introduction.rst:441 +#: ../introduction.rst:565 msgid "" -"The rest of this tutorial won't reference the all-in-one instance you " +"The rest of this tutorial will not reference the all-in-one instance you " "created in section one. Take a moment to delete this instance." msgstr "" -#: ../introduction.rst:444 +#: ../introduction.rst:568 msgid "" -"It's easy to split out services into multiple instances. We will create a " +"It is easy to split out services into multiple instances. We will create a " "controller instance called :code:`app-controller`, which hosts the API, " -"database, and messaging services. We'll also create a worker instance " +"database, and messaging services. We will also create a worker instance " "called :code:`app-worker-1`, which just generates fractals." msgstr "" -#: ../introduction.rst:450 +#: ../introduction.rst:574 msgid "" "The first step is to start the controller instance. The instance has the API " "service, the database, and the messaging service, as you can see from the " "parameters passed to the installation script." msgstr "" -#: ../introduction.rst:455 ../introduction.rst:508 +#: ../introduction.rst:579 ../introduction.rst:655 msgid "Parameter" msgstr "" -#: ../introduction.rst:455 +#: ../introduction.rst:579 msgid "Values" msgstr "" -#: ../introduction.rst:457 +#: ../introduction.rst:581 msgid ":code:`-i`" msgstr "" -#: ../introduction.rst:457 +#: ../introduction.rst:581 msgid "" ":code:`messaging` (install RabbitMQ) and :code:`faafo` (install the Faafo " "app)." msgstr "" -#: ../introduction.rst:457 +#: ../introduction.rst:581 msgid "Install a service" msgstr "" -#: ../introduction.rst:458 +#: ../introduction.rst:582 msgid ":code:`-r`" msgstr "" -#: ../introduction.rst:458 +#: ../introduction.rst:582 msgid "" ":code:`api` (enable and start the API service), :code:`worker` (enable and " "start the worker service), and :code:`demo` (run the demo mode to request " "random fractals)." msgstr "" -#: ../introduction.rst:458 +#: ../introduction.rst:582 msgid "Enable/start something" msgstr "" -#: ../introduction.rst:477 +#: ../introduction.rst:613 msgid "" -"Note that this time, when you create a security group, you're including a " -"rule that only applies for instances that are part of the worker_group." +"Note that this time, when you create a security group, you include a rule " +"that applies to only instances that are part of the worker group." msgstr "" -#: ../introduction.rst:481 +#: ../introduction.rst:616 msgid "Next, start a second instance, which will be the worker instance:" msgstr "" -#: ../introduction.rst:498 +#: ../introduction.rst:645 msgid "" -"Notice that you've added this instance to the worker_group, so it can access " -"the controller." +"Notice that you have added this instance to the worker_group, so it can " +"access the controller." msgstr "" -#: ../introduction.rst:501 +#: ../introduction.rst:648 msgid "" "As you can see from the parameters passed to the installation script, you " -"are specifying that this is the worker instance, but you're also passing the " -"address of the API instance and the message queue so the worker can pick up " -"requests. The Fractals application installation script can take several " +"define this instance as the worker instance. But, you also pass the address " +"of the API instance and the message queue so the worker can pick up " +"requests. The Fractals application installation script accepts several " "parameters." msgstr "" -#: ../introduction.rst:508 +#: ../introduction.rst:655 msgid "Example" msgstr "" -#: ../introduction.rst:510 +#: ../introduction.rst:657 msgid ":code:`-e`" msgstr "" -#: ../introduction.rst:510 +#: ../introduction.rst:657 msgid "The endpoint URL of the API service." msgstr "" -#: ../introduction.rst:510 +#: ../introduction.rst:657 msgid "http://localhost/" msgstr "" -#: ../introduction.rst:511 +#: ../introduction.rst:658 msgid ":code:`-m`" msgstr "" -#: ../introduction.rst:511 +#: ../introduction.rst:658 msgid "The transport URL of the messaging service." msgstr "" -#: ../introduction.rst:511 +#: ../introduction.rst:658 msgid "amqp://guest:guest@localhost:5672/" msgstr "" -#: ../introduction.rst:512 +#: ../introduction.rst:659 msgid ":code:`-d`" msgstr "" -#: ../introduction.rst:512 +#: ../introduction.rst:659 msgid "The connection URL for the database (not used here)." msgstr "" -#: ../introduction.rst:512 +#: ../introduction.rst:659 msgid "sqlite:////tmp/sqlite.db" msgstr "" -#: ../introduction.rst:515 +#: ../introduction.rst:662 msgid "" "Now if you make a request for a new fractal, you connect to the controller " "instance, :code:`app-controller`, but the work will actually be performed by " "a separate worker instance - :code:`app-worker-1`." msgstr "" -#: ../introduction.rst:521 +#: ../introduction.rst:668 msgid "Login with SSH and use the Fractal app" msgstr "" -#: ../introduction.rst:523 +#: ../introduction.rst:670 msgid "" "Login to the worker instance, :code:`app-worker-1`, with SSH, using the " "previous added SSH key pair \"demokey\". Start by getting the IP address of " "the worker:" msgstr "" -#: ../introduction.rst:540 +#: ../introduction.rst:699 msgid "Now you can SSH into the instance:" msgstr "" -#: ../introduction.rst:546 +#: ../introduction.rst:705 msgid "" "Replace :code:`IP_WORKER_1` with the IP address of the worker instance and " "USERNAME to the appropriate user name." msgstr "" -#: ../introduction.rst:549 +#: ../introduction.rst:708 msgid "" -"Once you've logged in, check to see whether the worker service process is " -"running as expected. You can find the logs of the worker service in the " +"Once you have logged in, check to see whether the worker service process is " +"running as expected. You can find the logs of the worker service in the " "directory :code:`/var/log/supervisor/`." msgstr "" -#: ../introduction.rst:558 +#: ../introduction.rst:717 msgid "" "Open :code:`top` to monitor the CPU usage of the :code:`faafo-worker` " "process." msgstr "" -#: ../introduction.rst:560 +#: ../introduction.rst:719 msgid "" "Now log into the controller instance, :code:`app-controller`, also with SSH, " "using the previously added SSH key pair \"demokey\"." msgstr "" -#: ../introduction.rst:567 +#: ../introduction.rst:726 msgid "" "Replace :code:`IP_CONTROLLER` with the IP address of the controller instance " "and USERNAME to the appropriate user name." msgstr "" -#: ../introduction.rst:570 +#: ../introduction.rst:729 msgid "" "Check to see whether the API service process is running like expected. You " "can find the logs for the API service in the directory :file:`/var/log/" "supervisor/`." msgstr "" -#: ../introduction.rst:579 +#: ../introduction.rst:738 msgid "" "Now call the Fractal application's command line interface (:code:`faafo`) to " "request a few new fractals. The following command requests a few fractals " "with random parameters:" msgstr "" -#: ../introduction.rst:588 +#: ../introduction.rst:747 msgid "" "Watch :code:`top` on the worker instance. Right after calling :code:`faafo` " "the :code:`faafo-worker` process should start consuming a lot of CPU cycles." msgstr "" -#: ../introduction.rst:597 +#: ../introduction.rst:756 msgid "" "To show the details of a specific fractal use the subcommand :code:`show` of " "the Faafo CLI." msgstr "" -#: ../introduction.rst:618 +#: ../introduction.rst:777 msgid "" "There are more commands available; find out more details about them with :" "code:`faafo get --help`, :code:`faafo list --help`, and :code:`faafo delete " "--help`." msgstr "" -#: ../introduction.rst:622 +#: ../introduction.rst:781 msgid "" "The application stores the generated fractal images directly in the database " -"used by the API service instance. Storing image files in a database is not " -"good practice. We're doing it here as an example only as an easy way to " -"allow multiple instances to have access to the data. For best practice, we " +"used by the API service instance. Storing image files in a database is not " +"good practice. We are doing it here as an example only as an easy way to " +"enable multiple instances to have access to the data. For best practice, we " "recommend storing objects in Object Storage, which is covered in :doc:" "`durability`." msgstr "" -#: ../introduction.rst:633 +#: ../introduction.rst:792 msgid "" "You should now have a basic understanding of the architecture of cloud-based " "applications. In addition, you have had practice starting new instances, " @@ -2283,24 +2356,16 @@ msgid "" "on an OpenStack cloud." msgstr "" -#: ../introduction.rst:641 +#: ../introduction.rst:800 msgid "" -"From here, you should go to :doc:`/scaling_out` to learn how to scale your " -"application further. Alternatively, you may jump to any of these sections:" +"From here, go to :doc:`/scaling_out` to learn how to further scale your " +"application. Or, try one of these steps in the tutorial:" msgstr "" -#: ../introduction.rst:645 +#: ../introduction.rst:803 msgid "" ":doc:`/durability`: Learn how to use Object Storage to make your application " -"more durable" -msgstr "" - -#: ../introduction.rst:648 -msgid ":doc:`/orchestration`: Automatically orchestrate the application" -msgstr "" - -#: ../introduction.rst:649 -msgid ":doc:`/networking`: Learn about more complex networking" +"more durable." msgstr "" #: ../networking.rst:3 @@ -2309,23 +2374,23 @@ msgstr "" #: ../networking.rst:8 msgid "" -"Prior to this chapter, all of the nodes that comprise the fractal " -"application were attached to the same network." +"In previous chapters, all nodes that comprise the fractal application were " +"attached to the same network." msgstr "" #: ../networking.rst:11 msgid "" -"In this section of the tutorial, we introduce the Networking API. This will " -"enable us to build networking topologies that separate public traffic " -"accessing the application from traffic between the API and the worker " -"components. We also introduce load balancing for resilience, and create a " -"secure back-end network for communication between the database, webserver, " -"file storage, and worker components." +"This chapter introduces the Networking API. This will enable us to build " +"networking topologies that separate public traffic accessing the application " +"from traffic between the API and the worker components. We also introduce " +"load balancing for resilience, and create a secure back-end network for " +"communication between the database, web server, file storage, and worker " +"components." msgstr "" #: ../networking.rst:18 msgid "" -"This section assumes your cloud provider has implemented the OpenStack " +"This section assumes that your cloud provider has implemented the OpenStack " "Networking API (neutron). Users of clouds which have implemented legacy " "networking (nova-network) will have access to networking via the Compute " "API. Log in to the Horizon dashboard and navigate to :guilabel:`Project-" @@ -2356,62 +2421,63 @@ msgid "" msgstr "" #: ../networking.rst:64 -msgid "Working with the CLI" +msgid "Work with the CLI" msgstr "" #: ../networking.rst:66 msgid "" -"As SDKs don't currently fully support the OpenStack Networking API, this " +"Because the SDKs do not fully support the OpenStack Networking API, this " "section uses the command-line clients." msgstr "" #: ../networking.rst:69 msgid "" -"Install the 'neutron' command-line client by following this guide: http://" -"docs.openstack.org/cli-reference/content/install_clients.html" +"Use this guide to install the 'neutron' command-line client: http://docs." +"openstack.org/cli-reference/content/install_clients.html" msgstr "" -#: ../networking.rst:72 +#: ../networking.rst:72 ../orchestration.rst:51 msgid "" -"Then set up the necessary variables for your cloud in an 'openrc' file using " -"this guide: http://docs.openstack.org/cli-reference/content/cli_openrc.html" +"Use this guide to set up the necessary variables for your cloud in an " +"'openrc' file: http://docs.openstack.org/cli-reference/content/cli_openrc." +"html" msgstr "" -#: ../networking.rst:76 +#: ../networking.rst:75 msgid "" -"Ensure you have an openrc.sh file, source it and then check your neutron " -"client works: ::" +"Ensure you have an openrc.sh file, source it, and then check that your " +"neutron client works: ::" msgstr "" -#: ../networking.rst:92 +#: ../networking.rst:91 msgid "Networking segmentation" msgstr "" -#: ../networking.rst:94 +#: ../networking.rst:93 msgid "" -"In traditional datacenters, network segments are dedicated to specific types " -"of network traffic." +"In traditional data centers, network segments are dedicated to specific " +"types of network traffic." msgstr "" -#: ../networking.rst:97 +#: ../networking.rst:96 msgid "" -"The fractal application we are building contains three types of network " +"The fractal application we are building contains these types of network " "traffic:" msgstr "" -#: ../networking.rst:100 +#: ../networking.rst:99 msgid "public-facing web traffic" msgstr "" -#: ../networking.rst:101 +#: ../networking.rst:100 msgid "API traffic" msgstr "" -#: ../networking.rst:102 +#: ../networking.rst:101 msgid "internal worker traffic" msgstr "" -#: ../networking.rst:104 +#: ../networking.rst:103 msgid "" "For performance reasons, it makes sense to have a network for each tier, so " "that traffic from one tier does not \"crowd out\" other types of traffic and " @@ -2420,21 +2486,21 @@ msgid "" "the overall security of the application." msgstr "" -#: ../networking.rst:110 +#: ../networking.rst:109 msgid "" "Prior to this section, the network layout for the Fractal application would " "be similar to the following diagram:" msgstr "" -#: ../networking.rst:133 +#: ../networking.rst:132 msgid "" -"In this network layout, we are assuming that the OpenStack cloud in which " -"you have been building your application has a public network and tenant " -"router that was previously created by your cloud provider or by yourself, " -"following the instructions in the appendix." +"In this network layout, we assume that the OpenStack cloud in which you have " +"been building your application has a public network and tenant router that " +"was previously created by your cloud provider or by yourself, following the " +"instructions in the appendix." msgstr "" -#: ../networking.rst:138 +#: ../networking.rst:137 msgid "" "Many of the network concepts that are discussed in this section are already " "present in the diagram above. A tenant router provides routing and external " @@ -2442,65 +2508,64 @@ msgid "" "each node in the Fractal application cluster to facilitate external access." msgstr "" -#: ../networking.rst:144 +#: ../networking.rst:143 msgid "" -"At the end of this section, we will be making some slight changes to the " -"networking topology by using the OpenStack Networking API to create a " -"network to which the worker nodes will attach (10.0.1.0/24). We will use the " -"API network (10.0.3.0/24) to attach the Fractal API servers. Webserver " -"instances have their own network (10.0.2.0/24) and will be accessible by " -"fractal aficionados worldwide, by allocating floating IPs from the public " -"network." +"At the end of this section, you make some slight changes to the networking " +"topology by using the OpenStack Networking API to create the 10.0.1.0/24 " +"network to which the worker nodes attach. You use the 10.0.3.0/24 API " +"network to attach the Fractal API servers. Web server instances have their " +"own 10.0.2.0/24 network, which is accessible by fractal aficionados " +"worldwide, by allocating floating IPs from the public network." msgstr "" -#: ../networking.rst:183 +#: ../networking.rst:182 msgid "Introduction to tenant networking" msgstr "" -#: ../networking.rst:185 +#: ../networking.rst:184 msgid "" "With the OpenStack Networking API, the workflow for creating a network " "topology that separates the public-facing Fractals app API from the worker " "back end is as follows:" msgstr "" -#: ../networking.rst:189 +#: ../networking.rst:188 msgid "Create a network and subnet for the web server nodes." msgstr "" -#: ../networking.rst:191 +#: ../networking.rst:190 msgid "" "Create a network and subnet for the worker nodes. This is the private data " "network." msgstr "" -#: ../networking.rst:193 +#: ../networking.rst:192 msgid "Create a router for the private data network." msgstr "" -#: ../networking.rst:195 +#: ../networking.rst:194 msgid "Allocate floating ips and assign them to the web server nodes." msgstr "" -#: ../networking.rst:198 -msgid "Creating networks" +#: ../networking.rst:197 +msgid "Create networks" msgstr "" -#: ../networking.rst:200 +#: ../networking.rst:199 msgid "" -"Most cloud providers will make a public network accessible to you. We will " -"attach a router to this public network to grant Internet access to our " -"instances. After also attaching this router to our internal networks, we " -"will allocate floating IPs from the public network for instances which need " -"to be accessed from the Internet." +"Most cloud providers make a public network accessible to you. We will attach " +"a router to this public network to grant Internet access to our instances. " +"After also attaching this router to our internal networks, we will allocate " +"floating IPs from the public network for instances which need to be accessed " +"from the Internet." msgstr "" -#: ../networking.rst:206 +#: ../networking.rst:205 msgid "" -"Let's just confirm that we have a public network by listing the networks our " -"tenant has access to. The public network doesn't have to be named public - " -"it could be 'external', 'net04_ext' or something else - the important thing " -"is it exists and can be used to reach the internet." +"Confirm that we have a public network by listing the networks our tenant has " +"access to. The public network does not have to be named public - it could be " +"'external', 'net04_ext' or something else - the important thing is it exists " +"and can be used to reach the Internet." msgstr "" #: ../networking.rst:220 @@ -2508,7 +2573,7 @@ msgid "Next, create a network and subnet for the workers." msgstr "" #: ../networking.rst:259 -msgid "Now, create a network and subnet for the webservers." +msgid "Now, create a network and subnet for the web servers." msgstr "" #: ../networking.rst:299 @@ -2517,74 +2582,74 @@ msgstr "" #: ../networking.rst:339 msgid "" -"Now that you've got the networks created, go ahead and create two Floating " +"Now that you have got the networks created, go ahead and create two Floating " "IPs, for web servers. Ensure that you replace 'public' with the name of the " "public/external network offered by your cloud provider." msgstr "" #: ../networking.rst:375 msgid "" -"The world is running out of IPv4 addresses. If you get an error like \"No " -"more IP addresses available on network\", contact your cloud administrator. " +"The world is running out of IPv4 addresses. If you get the \"No more IP " +"addresses available on network\" error, contact your cloud administrator. " "You may also want to ask about IPv6 :)" msgstr "" -#: ../networking.rst:381 +#: ../networking.rst:382 msgid "Connecting to the Internet" msgstr "" -#: ../networking.rst:383 +#: ../networking.rst:384 msgid "" -"Most instances will need access to the Internet. The instances in our " -"Fractals App are no exception! We'll add routers to pass traffic between the " -"various networks we are using." +"Most instances require access to the Internet. The instances in your " +"Fractals app are no exception! Add routers to pass traffic between the " +"various networks that you use." msgstr "" -#: ../networking.rst:403 +#: ../networking.rst:404 msgid "" -"We tell OpenStack which network should be used for Internet access by " -"specifying an external gateway for our router." +"Specify an external gateway for your router to tell OpenStack which network " +"to use for Internet access." msgstr "" -#: ../networking.rst:426 -msgid "Now, attach our router to the worker, api, and webserver subnets." +#: ../networking.rst:427 +msgid "Now, attach your router to the worker, API, and web server subnets." msgstr "" -#: ../networking.rst:440 +#: ../networking.rst:441 msgid "Booting a worker" msgstr "" -#: ../networking.rst:442 +#: ../networking.rst:443 msgid "" -"Now that you've prepared the networking infrastructure, you can go ahead and " -"boot an instance on it. Ensure you use appropriate flavor and image values " -"for your cloud - see :doc:`getting_started` if you've not already." +"Now that you have prepared the networking infrastructure, you can go ahead " +"and boot an instance on it. Ensure you use appropriate flavor and image " +"values for your cloud - see :doc:`getting_started` if you have not already." msgstr "" -#: ../networking.rst:485 +#: ../networking.rst:486 msgid "Load balancing" msgstr "" -#: ../networking.rst:487 +#: ../networking.rst:488 msgid "" -"After separating the Fractal worker nodes into their own network, the next " -"logical step is to move the Fractal API service onto a load balancer, so " -"that multiple API workers can handle requests. By using a load balancer, the " -"API service can be scaled out in a similar fashion to the worker nodes." +"After separating the Fractal worker nodes into their own networks, the next " +"logical step is to move the Fractal API service to a load balancer, so that " +"multiple API workers can handle requests. By using a load balancer, the API " +"service can be scaled out in a similar fashion to the worker nodes." msgstr "" -#: ../networking.rst:494 +#: ../networking.rst:495 msgid "Neutron LbaaS API" msgstr "" -#: ../networking.rst:496 +#: ../networking.rst:497 msgid "" "This section is based on the Neutron LBaaS API version 1.0 http://docs." "openstack.org/admin-guide-cloud/networking_adv-features.html#basic-load-" "balancer-as-a-service-operations" msgstr "" -#: ../networking.rst:503 +#: ../networking.rst:504 msgid "" "The OpenStack Networking API provides support for creating loadbalancers, " "which can be used to scale the Fractal app web service. In the following " @@ -2594,200 +2659,166 @@ msgid "" "following network topology:" msgstr "" -#: ../networking.rst:528 +#: ../networking.rst:529 msgid "" "libcloud support added 0.14: https://developer.rackspace.com/blog/libcloud-0-" "dot-14-released/" msgstr "" -#: ../networking.rst:531 -msgid "Let's start by looking at what's already in place." +#: ../networking.rst:532 +msgid "Start by looking at what is already in place." msgstr "" -#: ../networking.rst:543 -msgid "Now let's go ahead and create 2 instances." +#: ../networking.rst:544 +msgid "Go ahead and create two instances." msgstr "" -#: ../networking.rst:579 +#: ../networking.rst:580 msgid "Confirm that they were added:" msgstr "" -#: ../networking.rst:591 -msgid "Now let's look at what ports are available:" +#: ../networking.rst:592 +msgid "Look at which ports are available:" msgstr "" -#: ../networking.rst:605 +#: ../networking.rst:606 msgid "" -"Next create additional floating IPs by specifying the fixed IP addresses " -"they should point to and the ports they should use:" +"Next, create additional floating IPs. Specify the fixed IP addresses they " +"should point to and the ports that they should use:" msgstr "" -#: ../networking.rst:639 +#: ../networking.rst:640 msgid "" -"All right, now you're ready to go ahead and create members for the load " -"balancer pool, referencing the floating IPs:" +"You are ready to create members for the load balancer pool, which reference " +"the floating IPs:" msgstr "" -#: ../networking.rst:676 +#: ../networking.rst:677 msgid "You should be able to see them in the member list:" msgstr "" -#: ../networking.rst:688 +#: ../networking.rst:689 msgid "" -"Now let's create a health monitor that will ensure that members of the load " +"Now, create a health monitor that will ensure that members of the load " "balancer pool are active and able to respond to requests. If a member in the " "pool dies or is unresponsive, the member is removed from the pool so that " "client requests are routed to another active member." msgstr "" -#: ../networking.rst:715 +#: ../networking.rst:716 msgid "" "Now create a virtual IP that will be used to direct traffic between the " "various members of the pool:" msgstr "" -#: ../networking.rst:742 -msgid "And confirm it's in place:" +#: ../networking.rst:743 +msgid "And confirm it is in place:" msgstr "" -#: ../networking.rst:753 -msgid "Now let's look at the big picture." +#: ../networking.rst:754 +msgid "Now, look at the big picture." msgstr "" -#: ../networking.rst:756 +#: ../networking.rst:757 msgid "Final result" msgstr "" -#: ../networking.rst:758 +#: ../networking.rst:759 msgid "" "With the addition of the load balancer, the Fractal app's networking " "topology now reflects the modular nature of the application itself." msgstr "" -#: ../networking.rst:797 +#: ../networking.rst:798 msgid "" -"You should now be fairly confident working with the Network API. There are " -"several calls we did not cover. To see these and more, refer to the volume " -"documentation of your SDK, or try a different step in the tutorial, " -"including:" -msgstr "" - -#: ../networking.rst:803 -msgid "" -":doc:`/craziness`: to see all the crazy things we think ordinary folks won't " -"want to do ;)" +"You should now be fairly confident working with the Network API. To see " +"calls that we did not cover, see the volume documentation of your SDK, or " +"try one of these tutorial steps:" msgstr "" #: ../orchestration.rst:3 msgid "Orchestration" msgstr "" -#: ../orchestration.rst:7 +#: ../orchestration.rst:5 msgid "" -"Sorry! We're not quite happy with this chapter. It will give you an " -"introduction to heat, but it's a little dry at the moment. We'd like to " -"write a template for the Fractals app instead of using the \"hello world\" " -"style ones, so stay tuned!" +"This chapter explains the importance of durability and scalability for your " +"cloud-based applications. In most cases, really achieving these qualities " +"means automating tasks such as scaling and other operational tasks." msgstr "" -#: ../orchestration.rst:11 -msgid "" -"Throughout this guide, we've talked about the importance of durability and " -"scalability for your cloud-based applications. In most cases, really " -"achieving these qualities means automating tasks such as scaling and other " -"operational tasks." -msgstr "" - -#: ../orchestration.rst:15 +#: ../orchestration.rst:10 msgid "" "The Orchestration module provides a template-based way to describe a cloud " "application, then coordinates running the needed OpenStack API calls to run " -"cloud applications. The templates allow you to create most OpenStack " +"cloud applications. The templates enable you to create most OpenStack " "resource types, such as instances, networking information, volumes, security " -"groups and even users. It also provides more advanced functionality, such as " -"instance high availability, instance auto-scaling, and nested stacks." +"groups, and even users. It also provides more advanced functionality, such " +"as instance high availability, instance auto-scaling, and nested stacks." msgstr "" -#: ../orchestration.rst:22 -msgid "The OpenStack Orchestration API contains the following constructs:" +#: ../orchestration.rst:18 +msgid "" +"The OpenStack Orchestration API uses the stacks, resources, and templates " +"constructs." msgstr "" -#: ../orchestration.rst:24 -msgid "Stacks" -msgstr "" - -#: ../orchestration.rst:25 -msgid "Resources" +#: ../orchestration.rst:21 +msgid "" +"You create stacks from templates, which contain resources. Resources are an " +"abstraction in the HOT (Heat Orchestration Template) template language, " +"which enables you to define different cloud resources by setting the :code:" +"`type` attribute." msgstr "" #: ../orchestration.rst:26 -msgid "Templates" -msgstr "" - -#: ../orchestration.rst:28 -msgid "" -"Stacks are created from Templates, which contain Resources. Resources are an " -"abstraction in the HOT (Heat Orchestration Template) template language, " -"which enables you to define different cloud resources by setting the `type` " -"attribute." -msgstr "" - -#: ../orchestration.rst:32 msgid "" "For example, you might use the Orchestration API to create two compute " -"instances by creating a Stack and by passing a Template to the Orchestration " -"API. That Template would contain two Resources with the `type` attribute set " -"to `OS::Nova::Server`." +"instances by creating a stack and by passing a template to the Orchestration " +"API. That template contains two resources with the :code:`type` attribute " +"set to :code:`OS::Nova::Server`." msgstr "" -#: ../orchestration.rst:36 +#: ../orchestration.rst:31 msgid "" -"That's a simplistic example, of course, but the flexibility of the Resource " -"object enables the creation of Templates that contain all the required cloud " +"That example is simplistic, of course, but the flexibility of the resource " +"object enables the creation of templates that contain all the required cloud " "infrastructure to run an application, such as load balancers, block storage " "volumes, compute instances, networking topology, and security policies." msgstr "" -#: ../orchestration.rst:41 +#: ../orchestration.rst:36 msgid "" -"The Orchestration module isn't deployed by default in every cloud. If these " -"commands don't work, it means the Orchestration API isn't available; ask " +"The Orchestration module is not deployed by default in every cloud. If these " +"commands do not work, it means the Orchestration API is not available; ask " "your support team for assistance." msgstr "" -#: ../orchestration.rst:43 +#: ../orchestration.rst:40 msgid "" "This section introduces the `HOT templating language `_, and takes you through " -"some of the common calls you will make when working with OpenStack " -"Orchestration." +"some common OpenStack Orchestration calls." msgstr "" -#: ../orchestration.rst:46 +#: ../orchestration.rst:44 msgid "" -"Unlike previous sections of this guide, in which you used your SDK to " -"programmatically interact with OpenStack, in this section you'll be using " -"the Orchestration API directly through Template files, so we'll work from " -"the command line." +"In previous sections, you used your SDK to programatically interact with " +"OpenStack. In this section, you use the 'heat' command-line client to access " +"the Orchestration API directly through template files." msgstr "" -#: ../orchestration.rst:50 +#: ../orchestration.rst:48 msgid "" -"Install the 'heat' commandline client by following this guide: http://docs." +"Install the 'heat' command-line client by following this guide: http://docs." "openstack.org/cli-reference/content/install_clients.html" msgstr "" -#: ../orchestration.rst:53 -msgid "" -"then set up the necessary variables for your cloud in an 'openrc' file using " -"this guide: http://docs.openstack.org/cli-reference/content/cli_openrc.html" +#: ../orchestration.rst:56 +msgid "the .NET SDK does not currently support OpenStack Orchestration." msgstr "" -#: ../orchestration.rst:58 -msgid "the .NET SDK does not currently support OpenStack Orchestration" -msgstr "" - -#: ../orchestration.rst:62 +#: ../orchestration.rst:60 msgid "" "fog `does support OpenStack Orchestration `_." @@ -2804,497 +2835,791 @@ msgid "" "openstack/orchestration.md>`_" msgstr "" -#: ../orchestration.rst:85 -msgid "HOT Templating Language" +#: ../orchestration.rst:79 +msgid "The OpenStack SDK does not currently support OpenStack Orchestration." msgstr "" -#: ../orchestration.rst:87 +#: ../orchestration.rst:86 +msgid "HOT templating language" +msgstr "" + +#: ../orchestration.rst:88 msgid "" -"The best place to learn about the template syntax for OpenStack " -"Orchestration is the `Heat Orchestration Template (HOT) Guide `_ You should " -"read the HOT Guide first to learn how to create basic templates, their " -"inputs and outputs." +"To learn about the template syntax for OpenStack Orchestration, how to " +"create basic templates, and their inputs and outputs, see `Heat " +"Orchestration Template (HOT) Guide `_." msgstr "" -#: ../orchestration.rst:92 -msgid "Working with Stacks: Basics" +#: ../orchestration.rst:93 +msgid "Work with stacks: Basics" +msgstr "" + +#: ../orchestration.rst:95 +msgid "**Stack create**" +msgstr "" + +#: ../orchestration.rst:97 +msgid "" +"The `hello_faafo `_ Hot template demonstrates how to " +"create a compute instance that builds and runs the Fractal application as an " +"all-in-one installation." msgstr "" #: ../orchestration.rst:102 -msgid "Stack create" +msgid "You pass in these configuration settings as parameters:" msgstr "" #: ../orchestration.rst:104 -msgid "" -"In the following example, we use the `hello_world `_ Hot template to " -"demonstrate creating a Nova compute instance, with a few configuration " -"settings passed in, such as an administrative password and the unique " -"identifier (UUID) of an image:" +msgid "The flavor" +msgstr "" + +#: ../orchestration.rst:105 +msgid "Your ssh key name" +msgstr "" + +#: ../orchestration.rst:106 +msgid "The unique identifier (UUID) of the image" msgstr "" #: ../orchestration.rst:119 -msgid "" -"The resulting stack creates a Nova instance automatically, which you can see " -"here:" +msgid "The stack automatically creates a Nova instance, as follows:" msgstr "" #: ../orchestration.rst:130 -msgid "" -"Verify that the stack was successfully created using the following command:" +msgid "Verify that the stack was successfully created:" msgstr "" #: ../orchestration.rst:141 -msgid "Remove the stack:" -msgstr "" - -#: ../orchestration.rst:152 -msgid "Verify that the removal of the stack has deleted the nova instance:" -msgstr "" - -#: ../orchestration.rst:162 msgid "" -"While this stack is not very interesting - it just starts a single instance " -"- it is possible to make very complicated templates that involve dozens of " -"instances or adds and removes instances based on demand. Continue to the " -"next section to learn more." +"The stack reports an initial :code:`CREATE_IN_PROGRESS` status. When all " +"software is installed, the status changes to :code:`CREATE_COMPLETE`." msgstr "" -#: ../orchestration.rst:168 -msgid "Working with Stacks: Advanced" -msgstr "" - -#: ../orchestration.rst:174 +#: ../orchestration.rst:144 msgid "" -"With the use of the Orchestration API, the Fractal app can create an " -"autoscaling group for all parts of the application, in order to dynamically " -"provision more compute resources during periods of heavy utilization, and " -"also terminate compute instances to scale down, as demand decreases." +"You might have to run the :code:`stack-list` command a few times before the " +"stack creation is complete." +msgstr "" + +#: ../orchestration.rst:147 +msgid "**Show information about the stack**" +msgstr "" + +#: ../orchestration.rst:149 +msgid "Get more information about the stack:" +msgstr "" + +#: ../orchestration.rst:155 +msgid "" +"The `outputs` property shows the URL through which you can access the " +"Fractal application. You can SSH into the instance." +msgstr "" + +#: ../orchestration.rst:158 +msgid "**Remove the stack**" +msgstr "" + +#: ../orchestration.rst:169 +msgid "Verify the nova instance was deleted when the stack was removed:" msgstr "" #: ../orchestration.rst:179 msgid "" -"There are two helpful articles available to learn about autoscaling with the " -"Orchestration API:" +"While this stack starts a single instance that builds and runs the Fractal " +"application as an all-in-one installation, you can make very complicated " +"templates that impact dozens of instances or that add and remove instances " +"on demand. Continue to the next section to learn more." msgstr "" -#: ../orchestration.rst:182 +#: ../orchestration.rst:184 +msgid "Work with stacks: Advanced" +msgstr "" + +#: ../orchestration.rst:186 +msgid "" +"With the Orchestration API, the Fractal application can create an auto-" +"scaling group for all parts of the application, to dynamically provision " +"more compute resources during periods of heavy utilization, and also " +"terminate compute instances to scale down, as demand decreases." +msgstr "" + +#: ../orchestration.rst:191 +msgid "" +"To learn about auto-scaling with the Orchestration API, read these articles:" +msgstr "" + +#: ../orchestration.rst:193 msgid "" "http://superuser.openstack.org/articles/simple-auto-scaling-environment-with-" "heat" msgstr "" -#: ../orchestration.rst:183 +#: ../orchestration.rst:194 msgid "" "http://superuser.openstack.org/articles/understanding-openstack-heat-auto-" "scaling" msgstr "" -#: ../orchestration.rst:185 +#: ../orchestration.rst:196 msgid "" -"An example template that creates an auto-scaling wordpress instance can be " -"found in `the heat template repository `_" +"Initially, the focus is on scaling the workers because they consume the most " +"resources." msgstr "" -#: ../orchestration.rst:190 -msgid "Next Steps" +#: ../orchestration.rst:199 +msgid "" +"The example template depends on the ceilometer project, which is part of the " +"`Telemetry service `_." msgstr "" -#: ../orchestration.rst:192 +#: ../orchestration.rst:202 +msgid "" +"The Telemetry service is not deployed by default in every cloud. If the " +"ceilometer commands do not work, this example does not work; ask your " +"support team for assistance." +msgstr "" + +#: ../orchestration.rst:206 +msgid "" +"To better understand how the template works, use this guide to install the " +"'ceilometer' command-line client:" +msgstr "" + +#: ../orchestration.rst:209 +msgid "http://docs.openstack.org/cli-reference/content/install_clients.html" +msgstr "" + +#: ../orchestration.rst:211 +msgid "" +"To set up the necessary variables for your cloud in an 'openrc' file, use " +"this guide:" +msgstr "" + +#: ../orchestration.rst:214 +msgid "http://docs.openstack.org/cli-reference/content/cli_openrc.html" +msgstr "" + +#: ../orchestration.rst:216 +msgid "" +"The Telemetry service uses meters to measure a given aspect of a resources " +"usage. The meter that we are interested in is the :code:`cpu_util` meter." +msgstr "" + +#: ../orchestration.rst:219 +msgid "The value of a meter is regularly sampled and saved with a timestamp." +msgstr "" + +#: ../orchestration.rst:221 +msgid "" +"These saved samples are aggregated to produce a statistic. The statistic " +"that we are interested in is **avg**: the average of the samples over a " +"given period." +msgstr "" + +#: ../orchestration.rst:224 +msgid "" +"We are interested because the Telemetry service supports alarms: an alarm is " +"fired when our average statistic breaches a configured threshold. When the " +"alarm fires, an associated action is performed." +msgstr "" + +#: ../orchestration.rst:228 +msgid "" +"The stack we will be building uses the firing of alarms to control the " +"addition or removal of worker instances." +msgstr "" + +#: ../orchestration.rst:231 +msgid "To verify that ceilometer is installed, list the known meters:" +msgstr "" + +#: ../orchestration.rst:237 +msgid "" +"This command returns a very long list of meters. Once a meter is created, it " +"is never thrown away!" +msgstr "" + +#: ../orchestration.rst:240 +msgid "Launch the stack with auto-scaling workers:" +msgstr "" + +#: ../orchestration.rst:255 +msgid "As before, pass in configuration settings as parameters." +msgstr "" + +#: ../orchestration.rst:257 +msgid "And as before, the stack takes a few minutes to build!" +msgstr "" + +#: ../orchestration.rst:259 +msgid "Wait for it to reach the :code:`CREATE_COMPLETE` status:" +msgstr "" + +#: ../orchestration.rst:270 +msgid "" +"Run the :code:`nova list` command. This template created three instances:" +msgstr "" + +#: ../orchestration.rst:283 +msgid "" +"Note that the worker instance is part of an :code:`OS::Heat::" +"AutoScalingGroup`." +msgstr "" + +#: ../orchestration.rst:285 +msgid "Confirm that the stack created two alarms:" +msgstr "" + +#: ../orchestration.rst:297 +msgid "" +"If either alarm reports the :code:`insufficient data` state, the default " +"sampling period of the stack is probably too low for your cloud; ask your " +"support team for assistance. You can set the period through the :code:" +"`period` parameter of the stack to match your clouds requirements." +msgstr "" + +#: ../orchestration.rst:303 +msgid "Use the stack ID to get more information about the stack:" +msgstr "" + +#: ../orchestration.rst:309 +msgid "" +"The outputs section of the stack contains two ceilometer command-line " +"queries:" +msgstr "" + +#: ../orchestration.rst:311 +msgid "" +":code:`ceilometer_sample_query`: shows the samples used to build the " +"statistics." +msgstr "" + +#: ../orchestration.rst:312 +msgid "" +":code:`ceilometer_statistics_query`: shows the statistics used to trigger " +"the alarms." +msgstr "" + +#: ../orchestration.rst:314 +msgid "These queries provide a view into the behavior of the stack." +msgstr "" + +#: ../orchestration.rst:316 +msgid "" +"In a new Terminal window, SSH into the 'api' API instance. Use the key pair " +"name that you passed in as a parameter." +msgstr "" + +#: ../orchestration.rst:324 +msgid "In your SSH session, confirm that no fractals were generated:" +msgstr "" + +#: ../orchestration.rst:335 +msgid "Then, create a pair of large fractals:" +msgstr "" + +#: ../orchestration.rst:341 +msgid "" +"In the Terminal window where you run ceilometer, run :code:" +"`ceilometer_sample_query` to see the samples." +msgstr "" + +#: ../orchestration.rst:356 +msgid "" +"The CPU utilization across workers increases as workers start to create the " +"fractals." +msgstr "" + +#: ../orchestration.rst:358 +msgid "" +"Run the :code:`ceilometer_statistics_query`: command to see the derived " +"statistics." +msgstr "" + +#: ../orchestration.rst:372 +msgid "The samples and the statistics are listed in opposite time order!" +msgstr "" + +#: ../orchestration.rst:374 +msgid "See the state of the alarms set up by the template:" +msgstr "" + +#: ../orchestration.rst:386 +msgid "" +"Run the :code:`nova list` command to confirm that the :code:`OS::Heat::" +"AutoScalingGroup` has created more instances:" +msgstr "" + +#: ../orchestration.rst:402 +msgid "" +"Now, wait until all the fractals are generated and the instances have idled " +"for some time." +msgstr "" + +#: ../orchestration.rst:405 +msgid "" +"Run the :code:`nova list` command to confirm that the :code:`OS::Heat::" +"AutoScalingGroup` removed the unneeded instances:" +msgstr "" + +#: ../orchestration.rst:419 +msgid "" +"The :code:`OS::Heat::AutoScalingGroup` removes instances in creation order. " +"So the worker instance that was created first is the first instance to be " +"removed." +msgstr "" + +#: ../orchestration.rst:423 +msgid "In the outputs section of the stack, you can run these web API calls:" +msgstr "" + +#: ../orchestration.rst:425 +msgid "" +":code:`scale__workers_up_url`: A post to this url will add worker instances." +msgstr "" + +#: ../orchestration.rst:426 +msgid "" +":code:`scale_workers_down_url`: A post to this url will remove worker " +"instances." +msgstr "" + +#: ../orchestration.rst:428 +msgid "" +"These demonstrate how the Ceilometer alarms add and remove instances. To use " +"them:" +msgstr "" + +#: ../orchestration.rst:435 +msgid "To recap:" +msgstr "" + +#: ../orchestration.rst:437 +msgid "" +"The auto-scaling stack sets up an API instance, a services instance, and an " +"auto-scaling group with a single worker instance. It also sets up ceilometer " +"alarms that add worker instances to the auto-scaling group when it is under " +"load, and removes instances when the group is idling. To do this, the alarms " +"post to URLs." +msgstr "" + +#: ../orchestration.rst:443 +msgid "" +"In this template, the alarms use metadata that is attached to each worker " +"instance. The metadata is in the :code:`metering.stack=stack_id` format." +msgstr "" + +#: ../orchestration.rst:446 +msgid "The prefix is `metering.` For example, `metering.some_name`." +msgstr "" + +#: ../orchestration.rst:455 +msgid "" +"You can aggregate samples and calculate statistics across all instances with " +"the `metering.some_name` metadata that has `some_value` by using a query of " +"the form:" +msgstr "" + +#: ../orchestration.rst:463 +msgid "For example:" +msgstr "" + +#: ../orchestration.rst:470 +msgid "The alarms have the form:" +msgstr "" + +#: ../orchestration.rst:476 +msgid "" +"Spend some time playing with the stack and the Fractal app to see how it " +"works." +msgstr "" + +#: ../orchestration.rst:478 +msgid "" +"The message queue can take a while to notice that worker instances have died." +msgstr "" + +#: ../orchestration.rst:483 msgid "" "You should now be fairly confident working with the Orchestration service. " -"There are several calls we did not cover. To see these and more, refer to " -"the volume documentation of your SDK, or try a different step in the " -"tutorial, including:" +"To see the calls that we did not cover and more, see the volume " +"documentation of your SDK. Or, try one of these steps in the tutorial:" msgstr "" -#: ../orchestration.rst:196 -msgid ":doc:`/networking` - to learn about more complex networking" -msgstr "" - -#: ../orchestration.rst:197 -msgid ":doc:`/advice` - for advice for developers new to operations" -msgstr "" - -#: ../orchestration.rst:198 -msgid "" -":doc:`/craziness` - to see all the crazy things we think ordinary folks " -"won't want to do ;)" -msgstr "" - -#: ../scaling_out.rst:3 ../scaling_out.rst:149 +#: ../scaling_out.rst:3 ../scaling_out.rst:143 msgid "Scaling out" msgstr "" #: ../scaling_out.rst:11 msgid "" -"One of the most-often cited reasons for designing applications using cloud " -"patterns is the ability to **scale out**. That is: to add additional " -"resources as required. This is in contrast to the previous strategy of " -"increasing capacity by scaling up the size of existing resources. In order " -"for scale out to be feasible, you'll need to do two things:" +"An often-cited reason for designing applications by using cloud patterns is " +"the ability to **scale out**. That is: to add additional resources, as " +"required. Contrast this strategy to the previous one of increasing capacity " +"by scaling up the size of existing resources. To scale out, you must:" msgstr "" -#: ../scaling_out.rst:18 +#: ../scaling_out.rst:17 msgid "Architect your application to make use of additional resources." msgstr "" -#: ../scaling_out.rst:19 +#: ../scaling_out.rst:18 msgid "Make it possible to add new resources to your application." msgstr "" -#: ../scaling_out.rst:23 +#: ../scaling_out.rst:22 msgid "" -"In section :doc:`/introduction`, we talked about various aspects of the " -"application architecture, such as building in a modular fashion, creating an " -"API, and so on. Now you'll see why those are so important. By creating a " -"modular application with decoupled services, it is possible to identify " -"components that cause application performance bottlenecks and scale them out." -msgstr "" - -#: ../scaling_out.rst:30 -msgid "" -"Just as importantly, you can also remove resources when they are no longer " +"The :doc:`/introduction` section describes how to build in a modular " +"fashion, create an API, and other aspects of the application architecture. " +"Now you will see why those strategies are so important. By creating a " +"modular application with decoupled services, you can identify components " +"that cause application performance bottlenecks and scale them out. Just as " +"importantly, you can also remove resources when they are no longer " "necessary. It is very difficult to overstate the cost savings that this " "feature can bring, as compared to traditional infrastructure." msgstr "" -#: ../scaling_out.rst:35 +#: ../scaling_out.rst:32 msgid "" -"Of course, just having access to additional resources is only part of the " -"battle; while it's certainly possible to manually add or destroy resources, " -"you'll get more value -- and more responsiveness -- if the application " -"simply requests new resources automatically when it needs them." +"Of course, having access to additional resources is only part of the game " +"plan; while you can manually add or delete resources, you get more value and " +"more responsiveness if the application automatically requests additional " +"resources when it needs them." +msgstr "" + +#: ../scaling_out.rst:37 +msgid "" +"This section continues to illustrate the separation of services onto " +"multiple instances and highlights some of the choices that we have made that " +"facilitate scalability in the application architecture." msgstr "" #: ../scaling_out.rst:41 msgid "" -"This section continues to illustrate the separation of services onto " -"multiple instances and highlights some of the choices we've made that " -"facilitate scalability in the app's architecture." +"You will progressively ramp up to use up six instances, so make sure that " +"your cloud account has the appropriate quota." msgstr "" -#: ../scaling_out.rst:45 +#: ../scaling_out.rst:44 msgid "" -"We'll progressively ramp up to use up to about six instances, so ensure that " -"your cloud account has appropriate quota to handle that many." +"The previous section uses two virtual machines - one 'control' service and " +"one 'worker'. The speed at which your application can generate fractals " +"depends on the number of workers. With just one worker, you can produce only " +"one fractal at a time. Before long, you will need more resources." msgstr "" -#: ../scaling_out.rst:48 +#: ../scaling_out.rst:50 msgid "" -"In the previous section, we used two virtual machines - one 'control' " -"service and one 'worker'. In our application, the speed at which fractals " -"can be generated depends on the number of workers. With just one worker, we " -"can only produce one fractal at a time. Before long, it will be clear that " -"we need more resources." -msgstr "" - -#: ../scaling_out.rst:54 -msgid "" -"If you don't have a working application, follow the steps in :doc:" +"If you do not have a working application, follow the steps in :doc:" "`introduction` to create one." msgstr "" -#: ../scaling_out.rst:61 +#: ../scaling_out.rst:57 msgid "Generate load" msgstr "" -#: ../scaling_out.rst:63 +#: ../scaling_out.rst:59 msgid "" -"You can test for yourself what happens when the Fractals application is " -"under load by:" +"To test what happens when the Fractals application is under load, you can:" msgstr "" -#: ../scaling_out.rst:66 +#: ../scaling_out.rst:62 msgid "" -"maxing out the CPU of the existing worker instances (loading the worker)" +"Load the worker: Create a lot of tasks to max out the CPU of existing worker " +"instances" +msgstr "" + +#: ../scaling_out.rst:64 +msgid "Load the API: Create a lot of API service requests" msgstr "" #: ../scaling_out.rst:67 -msgid "generating a lot of API requests (load up the API)" +msgid "Create more tasks" msgstr "" -#: ../scaling_out.rst:71 -msgid "Create a greater number of tasks" -msgstr "" - -#: ../scaling_out.rst:73 ../scaling_out.rst:110 +#: ../scaling_out.rst:69 ../scaling_out.rst:106 msgid "" -"Use SSH to login to the controller instance, :code:`app-controller`, using " -"the previous added SSH keypair." +"Use SSH with the existing SSH keypair to log in to the :code:`app-" +"controller` controller instance." msgstr "" -#: ../scaling_out.rst:80 ../scaling_out.rst:117 +#: ../scaling_out.rst:76 ../scaling_out.rst:113 msgid "" "Replace :code:`IP_CONTROLLER` with the IP address of the controller instance " -"and USERNAME to the appropriate username." +"and USERNAME with the appropriate user name." msgstr "" -#: ../scaling_out.rst:84 +#: ../scaling_out.rst:80 msgid "" -"Call the Fractal application's command line interface (:code:`faafo`) to " -"request the generation of 5 large fractals." +"Call the :code:`faafo` command-line interface to request the generation of " +"five large fractals." msgstr "" -#: ../scaling_out.rst:91 +#: ../scaling_out.rst:87 msgid "" -"Now if you check the load on the worker, you can see that the instance is " -"not doing well. On our single CPU flavor instance, a load average of more " -"than 1 means we are at capacity." +"If you check the load on the worker, you can see that the instance is not " +"doing well. On the single CPU flavor instance, a load average greater than 1 " +"means that the server is at capacity." msgstr "" -#: ../scaling_out.rst:100 +#: ../scaling_out.rst:96 msgid "" "Replace :code:`IP_WORKER` with the IP address of the worker instance and " -"USERNAME to the appropriate username." +"USERNAME with the appropriate user name." msgstr "" -#: ../scaling_out.rst:105 -msgid "Create a greater number of API service requests" +#: ../scaling_out.rst:101 +msgid "Create more API service requests" msgstr "" -#: ../scaling_out.rst:107 +#: ../scaling_out.rst:103 msgid "" -"API load is a slightly different problem to the previous one regarding " -"capacity to work. We can simulate many requests to the API as follows:" +"API load is a slightly different problem than the previous one regarding " +"capacity to work. We can simulate many requests to the API, as follows:" msgstr "" -#: ../scaling_out.rst:121 +#: ../scaling_out.rst:117 msgid "" -"Call the Fractal application's command line interface (:code:`faafo`) in a " -"for loop to send many requests to the API. The following command will " -"request a random set of fractals, 500 times:" +"Use a for loop to call the :code:`faafo` command-line interface to request a " +"random set of fractals 500 times:" msgstr "" -#: ../scaling_out.rst:129 +#: ../scaling_out.rst:124 msgid "" "Replace :code:`IP_CONTROLLER` with the IP address of the controller instance." msgstr "" -#: ../scaling_out.rst:132 +#: ../scaling_out.rst:127 msgid "" -"Now if you check the load on the API service instance, :code:`app-" -"controller`, you can see that the instance is not doing well. On our single " -"CPU flavor instance, a load average of more than 1 means we are at capacity." +"If you check the load on the :code:`app-controller` API service instance, " +"you see that the instance is not doing well. On your single CPU flavor " +"instance, a load average greater than 1 means that the server is at capacity." msgstr "" -#: ../scaling_out.rst:142 +#: ../scaling_out.rst:137 msgid "" -"The number of requests coming in means that some requests for fractals may " -"not even get onto the message queue to be processed. To ensure we can cope " -"with demand, we need to scale out our API services as well." +"The sheer number of requests means that some requests for fractals might not " +"make it to the message queue for processing. To ensure that you can cope " +"with demand, you must also scale out the API capability of the Fractals " +"application." msgstr "" #: ../scaling_out.rst:146 +msgid "Remove the existing app" +msgstr "" + +#: ../scaling_out.rst:148 msgid "" -"As you can see, we need to scale out the Fractals application's API " -"capability." +"Go ahead and delete the existing instances and security groups that you " +"created in previous sections. Remember, when instances in the cloud are no " +"longer working, remove them and re-create something new." msgstr "" -#: ../scaling_out.rst:152 -msgid "Remove the old app" -msgstr "" - -#: ../scaling_out.rst:154 -msgid "" -"Go ahead and delete the existing instances and security groups you created " -"in previous sections. Remember, when instances in the cloud are no longer " -"working, remove them and re-create something new." -msgstr "" - -#: ../scaling_out.rst:173 +#: ../scaling_out.rst:172 msgid "Extra security groups" msgstr "" -#: ../scaling_out.rst:175 +#: ../scaling_out.rst:174 msgid "" -"As you change the topology of your applications, you will need to update or " -"create new security groups. Here, we will re-create the required security " -"groups." +"As you change the topology of your applications, you must update or create " +"security groups. Here, you re-create the required security groups." msgstr "" -#: ../scaling_out.rst:193 -msgid "A Floating IP helper function" +#: ../scaling_out.rst:197 +msgid "A floating IP helper function" msgstr "" -#: ../scaling_out.rst:195 +#: ../scaling_out.rst:199 msgid "" -"Define a short function to locate unused IPs or allocate a new floating IP. " -"This saves a few lines of code and prevents you from reaching your Floating " -"IP quota too quickly." +"Define a short function to locate unused or allocate floating IPs. This " +"saves a few lines of code and prevents you from reaching your floating IP " +"quota too quickly." msgstr "" -#: ../scaling_out.rst:213 -msgid "Splitting off the database and message queue" +#: ../scaling_out.rst:222 +msgid "Split the database and message queue" msgstr "" -#: ../scaling_out.rst:215 +#: ../scaling_out.rst:224 msgid "" -"Prior to scaling out our application services, like the API service or the " -"workers, we have to add a central database and messaging instance, called :" -"code:`app-services`. The database and messaging queue will be used to track " -"the state of the fractals and to coordinate the communication between the " +"Before you scale out your application services, like the API service or the " +"workers, you must add a central database and an :code:`app-services` " +"messaging instance. The database and messaging queue will be used to track " +"the state of fractals and to coordinate the communication between the " "services." msgstr "" -#: ../scaling_out.rst:235 -msgid "Scaling the API service" +#: ../scaling_out.rst:248 +msgid "Scale the API service" msgstr "" -#: ../scaling_out.rst:237 +#: ../scaling_out.rst:250 msgid "" -"With multiple workers producing fractals as fast as they can, we also need " -"to make sure we can receive the requests for fractals as quickly as " -"possible. If our application becomes popular, we may have many thousands of " -"users trying to connect to our API to generate fractals." +"With multiple workers producing fractals as fast as they can, the system " +"must be able to receive the requests for fractals as quickly as possible. If " +"our application becomes popular, many thousands of users might connect to " +"our API to generate fractals." msgstr "" -#: ../scaling_out.rst:242 +#: ../scaling_out.rst:255 msgid "" -"Armed with our security group, image and flavor size we can now add multiple " +"Armed with a security group, image, and flavor size, you can add multiple " "API services:" msgstr "" -#: ../scaling_out.rst:258 -msgid "" -"These are client-facing services, so unlike the workers they do not use a " -"message queue to distribute tasks. Instead, we'll need to introduce some " -"kind of load balancing mechanism to share incoming requests between the " -"different API services." -msgstr "" - -#: ../scaling_out.rst:263 -msgid "" -"One simple way might be to give half of our friends one address and half the " -"other, but that's certainly not a sustainable solution. Instead, we can do " -"that automatically using a `DNS round robin `_. However, OpenStack networking can provide Load Balancing " -"as a Service, which we'll explain in :doc:`/networking`." -msgstr "" - #: ../scaling_out.rst:276 -msgid "Scaling the workers" +msgid "" +"These services are client-facing, so unlike the workers they do not use a " +"message queue to distribute tasks. Instead, you must introduce some kind of " +"load balancing mechanism to share incoming requests between the different " +"API services." msgstr "" -#: ../scaling_out.rst:278 -msgid "To increase the overall capacity, we will now add 3 workers:" +#: ../scaling_out.rst:281 +msgid "" +"A simple solution is to give half of your friends one address and half the " +"other, but that solution is not sustainable. Instead, you can use a `DNS " +"round robin `_ to do that " +"automatically. However, OpenStack networking can provide Load Balancing as a " +"Service, which :doc:`/networking` explains." msgstr "" #: ../scaling_out.rst:294 +msgid "Scale the workers" +msgstr "" + +#: ../scaling_out.rst:296 +msgid "To increase the overall capacity, add three workers:" +msgstr "" + +#: ../scaling_out.rst:316 msgid "" "Adding this capacity enables you to deal with a higher number of requests " -"for fractals. As soon as these worker instances come up, they'll start " -"checking the message queue looking for requests, reducing the overall " -"backlog like a new register opening in the supermarket." +"for fractals. As soon as these worker instances start, they begin checking " +"the message queue for requests, reducing the overall backlog like a new " +"register opening in the supermarket." msgstr "" -#: ../scaling_out.rst:300 +#: ../scaling_out.rst:321 msgid "" -"This was obviously a very manual process - figuring out we needed more " -"workers and then starting new ones required some effort. Ideally the system " -"would do this itself. If your application has been built to detect these " -"situations, you can have it automatically request and remove resources, but " -"you don't actually need to do this work yourself. Instead, the OpenStack " -"Orchestration service can monitor load and start instances as appropriate. " -"See :doc:`orchestration` to find out how to set that up." +"This process was obviously a very manual one. Figuring out that we needed " +"more workers and then starting new ones required some effort. Ideally the " +"system would do this itself. If you build your application to detect these " +"situations, you can have it automatically request and remove resources, " +"which saves you the effort of doing this work yourself. Instead, the " +"OpenStack Orchestration service can monitor load and start instances, as " +"appropriate. To find out how to set that up, see :doc:`orchestration`." msgstr "" -#: ../scaling_out.rst:310 -msgid "Verifying we've had an impact" +#: ../scaling_out.rst:331 +msgid "Verify that we have had an impact" msgstr "" -#: ../scaling_out.rst:312 +#: ../scaling_out.rst:333 msgid "" -"In the steps above, we've split out several services and expanded capacity. " -"SSH to one of the app instances and create a few fractals. You will see that " -"the Fractals app has a few new features." +"In the previous steps, you split out several services and expanded capacity. " +"To see the new features of the Fractals application, SSH to one of the app " +"instances and create a few fractals." msgstr "" -#: ../scaling_out.rst:320 +#: ../scaling_out.rst:341 msgid "" "Replace :code:`IP_API_1` with the IP address of the first API instance and " -"USERNAME to the appropriate username." +"USERNAME with the appropriate user name." msgstr "" -#: ../scaling_out.rst:323 -msgid "" -"Use the Fractal application's command line interface to generate fractals :" -"code:`faafo create`. Watch the progress of fractal generation with the :code:" -"`faafo list`. Use :code:`faafo UUID` to examine some of the fractals. The " -"generated_by field will show which worker created the fractal. The fact that " -"multiple worker instances are sharing the work means that fractals will be " -"generated more quickly and the death of a worker probably won't even be " -"noticed." +#: ../scaling_out.rst:344 +msgid "Use the :code:`faafo create` command to generate fractals." msgstr "" -#: ../scaling_out.rst:376 +#: ../scaling_out.rst:346 msgid "" -"The fractals are now available from any of the app-api hosts. Visit http://" -"IP_API_1/fractal/FRACTAL_UUID and http://IP_API_2/fractal/FRACTAL_UUID to " -"verify. Now you have multiple redundant web services. If one dies, the " -"others can be used." +"Use the :code:`faafo list` command to watch the progress of fractal " +"generation." msgstr "" -#: ../scaling_out.rst:381 -msgid "" -"Replace :code:`IP_API_1` and :code:`IP_API_2` with the corresponding " -"Floating IPs. Replace FRACTAL_UUID the UUID of an existing fractal." +#: ../scaling_out.rst:349 +msgid "Use the :code:`faafo UUID` command to examine some of the fractals." msgstr "" -#: ../scaling_out.rst:385 +#: ../scaling_out.rst:351 msgid "" -"Go ahead and test the fault tolerance. Start destroying workers and API " -"instances. As long as you have one of each, your application should be fine. " -"There is one weak point though. The database contains the fractals and " -"fractal metadata. If you lose that instance, the application will stop. " -"Future sections will work to address this weak point." -msgstr "" - -#: ../scaling_out.rst:392 -msgid "" -"If we had a load balancer, we could distribute this load between the two " -"different API services. As mentioned previously, there are several options. " -"We will show one in :doc:`networking`." -msgstr "" - -#: ../scaling_out.rst:396 -msgid "" -"You could in theory use a simple script to monitor the load on your workers " -"and API services and trigger the creation of new instances, which you " -"already know how to do. If you can see how to do that - congratulations, " -"you're ready to create scalable cloud applications." +"The `generated_by` field shows the worker that created the fractal. Because " +"multiple worker instances share the work, fractals are generated more " +"quickly and users might not even notice when a worker fails." msgstr "" #: ../scaling_out.rst:401 msgid "" -"Of course, creating a monitoring system just for one application may not " -"always be the best way. We recommend you look at :doc:`orchestration` to " -"find out about how you can use OpenStack Orchestration's monitoring and " -"autoscaling capabilities to do steps like this automatically." +"The fractals are now available from any of the app-api hosts. To verify, " +"visit http://IP_API_1/fractal/FRACTAL_UUID and http://IP_API_2/fractal/" +"FRACTAL_UUID. You now have multiple redundant web services. If one fails, " +"you can use the others." +msgstr "" + +#: ../scaling_out.rst:406 +msgid "" +"Replace :code:`IP_API_1` and :code:`IP_API_2` with the corresponding " +"floating IPs. Replace FRACTAL_UUID with the UUID of an existing fractal." msgstr "" #: ../scaling_out.rst:410 msgid "" -"You should be fairly confident now about starting new instances, and " -"distributing services from an application amongst the instances." +"Go ahead and test the fault tolerance. Start deleting workers and API " +"instances. As long as you have one of each, your application is fine. " +"However, be aware of one weak point. The database contains the fractals and " +"fractal metadata. If you lose that instance, the application stops. Future " +"sections will explain how to address this weak point." msgstr "" -#: ../scaling_out.rst:413 +#: ../scaling_out.rst:417 msgid "" -"As mentioned in :doc:`/introduction` the generated fractal images will be " -"saved on the local filesystem of the API service instances. Because we now " -"have multiple API instances up and running, the fractal images will be " -"spread across multiple API services. This results in a number of :code:" -"`IOError: [Errno 2] No such file or directory` exceptions when trying to " -"download a fractal image from an API service instance not holding the " -"fractal image on its local filesystem." +"If you had a load balancer, you could distribute this load between the two " +"different API services. You have several options. The :doc:`networking` " +"section shows you one option." msgstr "" #: ../scaling_out.rst:421 msgid "" -"From here, you should go to :doc:`/durability` to learn how to use Object " -"Storage to solve this problem in a elegant way. Alternatively, you may jump " -"to any of these sections:" +"In theory, you could use a simple script to monitor the load on your workers " +"and API services and trigger the creation of instances, which you already " +"know how to do. Congratulations! You are ready to create scalable cloud " +"applications." +msgstr "" + +#: ../scaling_out.rst:426 +msgid "" +"Of course, creating a monitoring system for a single application might not " +"make sense. To learn how to use the OpenStack Orchestration monitoring and " +"auto-scaling capabilities to automate these steps, see :doc:`orchestration`." +msgstr "" + +#: ../scaling_out.rst:434 +msgid "" +"You should be fairly confident about starting instances and distributing " +"services from an application among these instances." +msgstr "" + +#: ../scaling_out.rst:437 +msgid "" +"As mentioned in :doc:`/introduction`, the generated fractal images are saved " +"on the local file system of the API service instances. Because you have " +"multiple API instances up and running, the fractal images are spread across " +"multiple API services, which causes a number of :code:`IOError: [Errno 2] No " +"such file or directory` exceptions when trying to download a fractal image " +"from an API service instance that does not have the fractal image on its " +"local file system." +msgstr "" + +#: ../scaling_out.rst:445 +msgid "" +"Go to :doc:`/durability` to learn how to use Object Storage to solve this " +"problem in a elegant way. Or, you can proceed to one of these sections:" +msgstr "" + +#: ../scaling_out.rst:459 +msgid "" +"This file contains all the code from this tutorial section. This " +"comprehensive code sample lets you view and run the code as a single script." msgstr ""