diff --git a/elb/api-ref/CreateCertificate.rst b/elb/api-ref/CreateCertificate.rst deleted file mode 100644 index d4e18d86..00000000 --- a/elb/api-ref/CreateCertificate.rst +++ /dev/null @@ -1,365 +0,0 @@ -Creating a Certificate -====================== - -Function -^^^^^^^^ - -This API is used to create an SSL certificate. - -URI -^^^ - -POST /v3/{project_id}/elb/certificates - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ============================================ - Parameter Mandatory Type Description - ========== ========= ====== ============================================ - project_id Yes String Specifies the project ID of the certificate. - ========== ========= ====== ============================================ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-------------+-----------+--------------------------------------------+----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============+===========+============================================+============================+ - | certificate | Yes | `CreateCertificateOption <#CreateCertif | Specifies the certificate. | - | | | icate__request_CreateCertificateOption>`__ | | - | | | object | | - +-------------+-----------+--------------------------------------------+----------------------------+ - -.. table:: **Table 4** CreateCertificateOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the certificate. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificate | Yes | String | Specifies the private key | - | | | | of the certificate. The | - | | | | value must be PEM encoded. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | certificate. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain | No | String | Specifies the domain names | - | | | | used by the server | - | | | | certificate. | - | | | | | - | | | | - This parameter will take | - | | | | effect only when | - | | | | **type** is set to | - | | | | **server**, and its | - | | | | default value is **""**. | - | | | | | - | | | | - This parameter will not | - | | | | take effect even if it | - | | | | is passed and **type** | - | | | | is set to **client**. | - | | | | However, domain names | - | | | | will still be verified. | - | | | | | - | | | | Note: | - | | | | | - | | | | - The value can contain 0 | - | | | | to 1024 characters and | - | | | | consists of multiple | - | | | | common domain names or | - | | | | wildcard domain names | - | | | | separated by commas. A | - | | | | maximum of 30 domain | - | | | | names are allowed. | - | | | | | - | | | | - A common domain name | - | | | | consists of several | - | | | | labels separated by | - | | | | periods (.). Each label | - | | | | can contain a maximum of | - | | | | 63 characters, including | - | | | | letters, digits, and | - | | | | hyphens (-), and must | - | | | | start and end with a | - | | | | letter or digit. | - | | | | Example: www.test.com | - | | | | | - | | | | - A wildcard domain name | - | | | | is a domain name starts | - | | | | with an asterisk (*). | - | | | | Example: \*.test.com | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the certificate | - | | | | name. Only letters, digits, | - | | | | underscores, and hyphens | - | | | | are allowed. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | private_key | No | String | Specifies the private key | - | | | | of the server certificate. | - | | | | The value must be PEM | - | | | | encoded. | - | | | | | - | | | | - This parameter will be | - | | | | ignored if **type** is | - | | | | set to **client**. A CA | - | | | | server can still be | - | | | | created and used | - | | | | normally. This parameter | - | | | | will be left blank even | - | | | | if you enter a private | - | | | | key that is not PEM | - | | | | encoded. | - | | | | | - | | | | - This parameter is valid | - | | | | and mandatory only when | - | | | | **type** is set to | - | | | | **server**. If you enter | - | | | | an invalid private key, | - | | | | an error is returned. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | project_id | No | String | Specifies the ID of the | - | | | | project where the | - | | | | certificate is used. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **32** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | String | Specifies the certificate | - | | | | type. | - | | | | | - | | | | The value can be **server** | - | | | | or **client**. **server** | - | | | | indicates server | - | | | | certificates, and | - | | | | **client** indicates CA | - | | | | certificates. The default | - | | | | value is **server**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | String | Specifies the enterprise | - | | | | project ID. The value | - | | | | cannot be **""**, **"0"**, | - | | | | or the ID of an enterprise | - | | | | project that does not | - | | | | exist. | - | | | | | - | | | | If this parameter is not | - | | | | passed during resource | - | | | | creation, the resource | - | | | | belongs to the default | - | | | | enterprise project. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -.. table:: **Table 5** Response body parameters - - +-------------+--------------------------------------------------+--------------------------------------------------+ - | Parameter | Type | Description | - +=============+==================================================+==================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +-------------+--------------------------------------------------+--------------------------------------------------+ - | certificate | `CertificateInfo < | Specifies the certificate. | - | | #CreateCertificate__response_CertificateInfo>`__ | | - | | object | | - +-------------+--------------------------------------------------+--------------------------------------------------+ - -.. table:: **Table 6** CertificateInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the certificate. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate | String | Specifies the private key of the | - | | | certificate. The value must be PEM | - | | | encoded. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the certificate. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain | String | Specifies the domain names used by | - | | | the server certificate. | - | | | | - | | | - This parameter will take effect | - | | | only when **type** is set to | - | | | **server**, and its default value | - | | | is **""**. | - | | | | - | | | - This parameter will not take | - | | | effect even if it is passed and | - | | | **type** is set to **client**. | - | | | However, domain names will still | - | | | be verified. | - | | | | - | | | Note: | - | | | | - | | | - The value can contain 0 to 1024 | - | | | characters and consists of | - | | | multiple common domain names or | - | | | wildcard domain names separated by | - | | | commas. A maximum of 30 domain | - | | | names are allowed. | - | | | | - | | | - A common domain name consists of | - | | | several labels separated by | - | | | periods (.). Each label can | - | | | contain a maximum of 63 | - | | | characters, including letters, | - | | | digits, and hyphens (-), and must | - | | | start and end with a letter or | - | | | digit. Example: www.test.com | - | | | | - | | | - A wildcard domain name is a domain | - | | | name starts with an asterisk (*). | - | | | Example: \*.test.com | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies a certificate ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the certificate name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | private_key | String | Specifies the private key of the | - | | | server certificate. The value must be | - | | | PEM encoded. | - | | | | - | | | - This parameter will be ignored if | - | | | **type** is set to **client**. A | - | | | CA server can still be created and | - | | | used normally. This parameter will | - | | | be left blank even if you enter a | - | | | private key that is not PEM | - | | | encoded. | - | | | | - | | | - This parameter is valid and | - | | | mandatory only when **type** is | - | | | set to **server**. If you enter an | - | | | invalid private key, an error is | - | | | returned. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the certificate type. The | - | | | value can be **server** or | - | | | **client**. **server** indicates | - | | | server certificates, and **client** | - | | | indicates CA certificates. The | - | | | default value is **server**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the | - | | | certificate was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the | - | | | certificate was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expire_time | String | Specifies the time when the | - | | | certificate expires. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - POST https://{elb_endponit}/v3/{project_id}/elb/certificates - - { - "certificate" : { - "name" : "My Certificate", - "type" : "server", - "private_key" : "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "certificate" : "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----" - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -Successful request. - -.. code:: screen - - { - "certificate" : { - "id" : "233a325e5e3e4ce8beeb320aa714cc12", - "name" : "My Certificate", - "description" : "", - "admin_state_up" : true, - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "updated_at" : "2019-03-31T23:26:49Z", - "type" : "server", - "created_at" : "2019-03-31T22:23:51Z", - "expire_time" : "2045-11-17T13:25:47Z", - "private_key" : "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "certificate" : "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----" - }, - "request_id" : "98414965-856c-4be3-8a33-3e08432a222e" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -201 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/CreateHealthMonitor.rst b/elb/api-ref/CreateHealthMonitor.rst deleted file mode 100644 index 3b135b45..00000000 --- a/elb/api-ref/CreateHealthMonitor.rst +++ /dev/null @@ -1,468 +0,0 @@ -Configuring a Health Check -========================== - -Function -^^^^^^^^ - -This API is used to configure a health check. - -Constraints -^^^^^^^^^^^ - -The security groups must have rules that allow access from 100.125.0.0/16. If you want to use UDP for health checks, ensure that the protocol of the backend server group is UDP. - -URI -^^^ - -POST /v3/{project_id}/elb/healthmonitors - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +---------------+-----------+-------------------------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +===============+===========+===========================================+=============================+ - | healthmonitor | Yes | `Crea | Specifies the health check. | - | | | teHealthMonitorOption <#CreateHealthMonit | | - | | | or__request_CreateHealthMonitorOption>`__ | | - | | | object | | - +---------------+-----------+-------------------------------------------+-----------------------------+ - -.. table:: **Table 4** CreateHealthMonitorOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the health check. Two value | - | | | | options are available. | - | | | | **true** indicates that the | - | | | | health check is enabled, | - | | | | and **false** indicates | - | | | | that the health check is | - | | | | disabled. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | delay | Yes | Integer | Specifies the interval | - | | | | between health checks, in | - | | | | seconds. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **50** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain_name | No | String | Specifies the domain name | - | | | | that HTTP requests are sent | - | | | | to during the health check. | - | | | | | - | | | | This parameter is available | - | | | | only when **type** is set | - | | | | to **HTTP**. | - | | | | | - | | | | The value is left blank by | - | | | | default, indicating that | - | | | | the virtual IP address of | - | | | | the load balancer is used | - | | | | as the destination address | - | | | | of HTTP requests. | - | | | | | - | | | | The value can contain only | - | | | | digits, letters, hyphens | - | | | | (-), and periods (.) and | - | | | | must start with a digit or | - | | | | letter. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **100** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | expected_codes | No | String | Specifies the expected HTTP | - | | | | status code. This parameter | - | | | | will take effect only when | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | The value options are as | - | | | | follows: | - | | | | | - | | | | - A specific value, for | - | | | | example, 200 | - | | | | | - | | | | - A list of values that | - | | | | are separated with | - | | | | commas (,), for example, | - | | | | 200, 202 | - | | | | | - | | | | - A value range, for | - | | | | example, 200-204 | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **200** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **64** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http_method | No | String | Specifies the HTTP method. | - | | | | | - | | | | The value can be **GET**, | - | | | | **HEAD**, **POST**, | - | | | | **PUT**, **DELETE**, | - | | | | **TRACE**, **OPTIONS**, | - | | | | **CONNECT**, or **PATCH**. | - | | | | | - | | | | This parameter will take | - | | | | effect only when **type** | - | | | | is set to **HTTP**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **GET** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **16** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries | Yes | Integer | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **OFFLINE** to | - | | | | **ONLINE**. The value | - | | | | ranges from **1** to | - | | | | **10**. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **10** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries_down | No | Integer | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **ONLINE** to | - | | | | **OFFLINE**. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **10** | - | | | | | - | | | | Default: **3** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | monitor_port | No | Integer | Specifies the port used for | - | | | | the health check. If this | - | | | | parameter is left blank, | - | | | | the port of the backend | - | | | | server group will be used | - | | | | by default. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **65535** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the health check | - | | | | name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | pool_id | Yes | String | Specifies the ID of the | - | | | | backend server group for | - | | | | which the health check is | - | | | | configured. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | project_id | No | String | Specifies the project ID. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **32** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | timeout | Yes | Integer | Specifies the maximum time | - | | | | required for waiting for a | - | | | | response from the health | - | | | | check, in seconds. It is | - | | | | recommended that you set | - | | | | the value less than that of | - | | | | parameter **delay**. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **50** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the health check | - | | | | protocol. | - | | | | | - | | | | The value can be **TCP**, | - | | | | **UDP_CONNECT**, **HTTP**, | - | | | | **HTTPS**, or **PING**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | url_path | No | String | Specifies the HTTP request | - | | | | path for the health check. | - | | | | The value must start with a | - | | | | slash (/), and the default | - | | | | value is /. This parameter | - | | | | is available only when | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | Default: **/** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -.. table:: **Table 5** Response body parameters - - +---------------+-------------------------------------------------+-------------------------------------------------+ - | Parameter | Type | Description | - +===============+=================================================+=================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +---------------+-------------------------------------------------+-------------------------------------------------+ - | healthmonitor | `HealthMonitor <# | Specifies the health check. | - | | CreateHealthMonitor__response_HealthMonitor>`__ | | - | | object | | - +---------------+-------------------------------------------------+-------------------------------------------------+ - -.. table:: **Table 6** HealthMonitor - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the health check. Two value | - | | | options are available. **true** | - | | | indicates that the health check is | - | | | enabled, and **false** indicates that | - | | | the health check is disabled. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | delay | Integer | Specifies the interval between health | - | | | checks, in seconds. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **50** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain_name | String | Specifies the domain name that HTTP | - | | | requests are sent to during the | - | | | health check. | - | | | | - | | | This parameter is available only when | - | | | **type** is set to **HTTP**. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the virtual IP | - | | | address of the load balancer is used | - | | | as the destination address of HTTP | - | | | requests. | - | | | | - | | | The value can contain only digits, | - | | | letters, hyphens (-), and periods (.) | - | | | and must start with a digit or | - | | | letter. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expected_codes | String | Specifies the expected HTTP status | - | | | code. This parameter will take effect | - | | | only when **type** is set to | - | | | **HTTP**. | - | | | | - | | | The value options are as follows: | - | | | | - | | | - A specific value, for example, 200 | - | | | | - | | | - A list of values that are | - | | | separated with commas (,), for | - | | | example, 200, 202 | - | | | | - | | | - A value range, for example, | - | | | 200-204 | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **200** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http_method | String | Specifies the HTTP method. This | - | | | parameter will take effect only when | - | | | **type** is set to **HTTP**. | - | | | | - | | | The value can be **GET**, **HEAD**, | - | | | **POST**, **PUT**, **DELETE**, | - | | | **TRACE**, **OPTIONS**, **CONNECT**, | - | | | or **PATCH**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **GET** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **OFFLINE** to **ONLINE**. The | - | | | value ranges from **1** to **10**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **10** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries_down | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **ONLINE** to **OFFLINE**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **10** | - | | | | - | | | Default: **3** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | monitor_port | Integer | Specifies the port used for the | - | | | health check. If this parameter is | - | | | left blank, the port of the backend | - | | | server group will be used by default. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Lists the IDs of backend server | - | | `PoolRef <#Crea | groups for which the health check is | - | | teHealthMonitor__response_PoolRef>`__ | configured. | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | timeout | Integer | Specifies the maximum time required | - | | | for waiting for a response from the | - | | | health check, in seconds. It is | - | | | recommended that you set the value | - | | | less than that of parameter | - | | | **delay**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **50** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the health check protocol. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | url_path | String | Specifies the HTTP request path for | - | | | the health check. The value must | - | | | start with a slash (/), and the | - | | | default value is /. This parameter is | - | | | available only when **type** is set | - | | | to **HTTP**. | - | | | | - | | | Default: **/** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** PoolRef - - ========= ====== ============================================= - Parameter Type Description - ========= ====== ============================================= - id String Specifies the ID of the backend server group. - ========= ====== ============================================= - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - POST - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/healthmonitors - - { - "healthmonitor" : { - "name" : "My Healthmonitor", - "max_retries" : 3, - "pool_id" : "488acc50-6bcf-423d-8f0a-0f4184f5b8a0", - "type" : "HTTP", - "timeout" : 30, - "delay" : 1 - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -Successful request. - -.. code:: screen - - { - "request_id" : "0e837340-f1bd-4037-8f61-9923d0f0b19e", - "healthmonitor" : { - "id" : "c2b210b2-60c4-449d-91e2-9e9ea1dd7441", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "name" : "My Healthmonitor", - "delay" : 1, - "max_retries" : 3, - "pools" : [ { - "id" : "488acc50-6bcf-423d-8f0a-0f4184f5b8a0" - } ], - "admin_state_up" : true, - "timeout" : 30, - "type" : "HTTP", - "expected_codes" : "200", - "url_path" : "/", - "http_method" : "GET" - } - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -201 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/CreateL7Policy.rst b/elb/api-ref/CreateL7Policy.rst deleted file mode 100644 index 9aec8817..00000000 --- a/elb/api-ref/CreateL7Policy.rst +++ /dev/null @@ -1,1237 +0,0 @@ -Adding a Forwarding Policy -========================== - -Function -^^^^^^^^ - -This API is used to add a forwarding policy. - -Constraints -^^^^^^^^^^^ - -The protocol of the listener to which requests are redirected can only be HTTPS. - -The listener associated with the forwarding policy cannot be any listener added to other load balancers. - -URI -^^^ - -POST /v3/{project_id}/elb/l7policies - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------+----------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=============================================+==================================+ - | l7policy | Yes | `CreateL7PolicyOption <#Creat | Specifies the forwarding policy. | - | | | eL7Policy__request_CreateL7PolicyOption>`__ | | - | | | object | | - +-----------+-----------+---------------------------------------------+----------------------------------+ - -.. table:: **Table 4** CreateL7PolicyOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | action | Yes | String | Specifies where requests | - | | | | will be forwarded. The | - | | | | value can be one of the | - | | | | following: | - | | | | | - | | | | - **REDIRECT_TO_POOL**: | - | | | | Requests will be | - | | | | forwarded to another | - | | | | backend server group. | - | | | | | - | | | | - | - | | | | **REDIRECT_TO_LISTENER**: | - | | | | Requests will be | - | | | | redirected to an HTTPS | - | | | | listener. | - | | | | | - | | | | **REDIRECT_TO_LISTENER** | - | | | | has the highest priority. | - | | | | If requests are to be | - | | | | redirected to an HTTPS | - | | | | listener, other forwarding | - | | | | policies of the listener | - | | | | will become invalid. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding policy. The | - | | | | default value is **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | forwarding policy. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | Yes | String | Specifies the ID of the | - | | | | listener to which the | - | | | | forwarding policy is added. | - | | | | | - | | | | - If **action** is set to | - | | | | **REDIRECT_TO_POOL**, | - | | | | the forwarding policy | - | | | | can be added to an HTTP | - | | | | or HTTPS listener. | - | | | | | - | | | | - If **action** is set to | - | | | | | - | | | | **REDIRECT_TO_LISTENER**, | - | | | | the forwarding policy | - | | | | can be added to an HTTP | - | | | | listener. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the forwarding | - | | | | policy name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | position | No | Integer | Specifies the forwarding | - | | | | policy priority. The value | - | | | | cannot be updated. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **100** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | project_id | No | String | Specifies the ID of the | - | | | | project where the | - | | | | forwarding policy is used. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **32** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_listener_id | No | String | Specifies the ID of the | - | | | | listener to which requests | - | | | | are redirected. This | - | | | | parameter is mandatory when | - | | | | **action** is set to | - | | | | **REDIRECT_TO_LISTENER**. | - | | | | | - | | | | For shared load balancers, | - | | | | this parameter is not | - | | | | supported. If it is passed, | - | | | | an error will be returned. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_pool_id | No | String | Specifies the ID of the | - | | | | backend server group that | - | | | | requests are forwarded to. | - | | | | | - | | | | This parameter is valid and | - | | | | mandatory only when | - | | | | **action** is set to | - | | | | **REDIRECT_TO_POOL**. The | - | | | | specified backend server | - | | | | group cannot be the default | - | | | | one associated with the | - | | | | listener, or any backend | - | | | | server group associated | - | | | | with the forwarding | - | | | | policies of other | - | | | | listeners. | - | | | | | - | | | | This parameter cannot be | - | | | | specified when **action** | - | | | | is set to | - | | | | **REDIRECT_TO_LISTENER**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_url | No | String | Specifies the URL to which | - | | | | requests are forwarded. | - | | | | | - | | | | Format: | - | | | | *proto | - | | | | col://host:port/path?query* | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | rules | No | Array of | Lists the forwarding rules | - | | | `CreateL7PolicyRuleOption | in the forwarding policy. | - | | | <#CreateL7Policy__request_C | | - | | | reateL7PolicyRuleOption>`__ | The list can contain a | - | | | objects | maximum of 10 forwarding | - | | | | rules (if **conditions** is | - | | | | specified, a condition is | - | | | | considered as a rule). | - | | | | | - | | | | If **type** is set to | - | | | | **HOST_NAME**, **PATH**, | - | | | | **METHOD**, or | - | | | | **SOURCE_IP**, only one | - | | | | forwarding rule can be | - | | | | created for each type. | - | | | | | - | | | | The entire list will be | - | | | | replaced if you update it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | priority | No | Integer | Specifies the forwarding | - | | | | policy priority. This | - | | | | parameter is available only | - | | | | for dedicated load | - | | | | balancers and will take | - | | | | effect when | - | | | | **enhance_l7policy_enable** | - | | | | is set to **true**. If this | - | | | | parameter is passed and | - | | | | **enhance_l7policy_enable** | - | | | | is set to **false**, an | - | | | | error will be returned. For | - | | | | shared load balancers, this | - | | | | parameter is not supported. | - | | | | If it is passed, an error | - | | | | will be returned. | - | | | | | - | | | | A smaller value indicates a | - | | | | higher priority. The value | - | | | | must be unique for each | - | | | | forwarding policy of the | - | | | | same listener. | - | | | | | - | | | | If **action** is set to | - | | | | **REDIRECT_TO_LISTENER**, | - | | | | the value can only be | - | | | | **0**, indicating that | - | | | | **REDIRECT_TO_LISTENER** | - | | | | has the highest priority. | - | | | | | - | | | | - If | - | | | | | - | | | | **enhance_l7policy_enable** | - | | | | is set to **false**, | - | | | | forwarding policies are | - | | | | automatically | - | | | | prioritized based on the | - | | | | original sorting logic. | - | | | | Forwarding policy | - | | | | priorities are | - | | | | independent of each | - | | | | other regardless of | - | | | | domain names. If | - | | | | forwarding policies use | - | | | | the same domain name, | - | | | | their priorities follow | - | | | | the order of exact match | - | | | | (**EQUAL_TO**), prefix | - | | | | match (**STARTS_WITH**), | - | | | | and regular expression | - | | | | match (**REGEX**). If | - | | | | prefix match is used for | - | | | | matching, the longer the | - | | | | path, the higher the | - | | | | priority. If a | - | | | | forwarding policy | - | | | | contains only a domain | - | | | | name without a path | - | | | | specified, the path is | - | | | | **/**, and prefix match | - | | | | is used by default. | - | | | | | - | | | | - If | - | | | | | - | | | | **enhance_l7policy_enable** | - | | | | is set to **true** and | - | | | | this parameter is not | - | | | | passed, the priority | - | | | | will set to a sum of 1 | - | | | | and the highest priority | - | | | | of existing forwarding | - | | | | policy in the same | - | | | | listener by default. | - | | | | There will be two cases: | - | | | | a) If the highest | - | | | | priority of existing | - | | | | forwarding policies is | - | | | | the maximum (10,000), | - | | | | the forwarding policy | - | | | | will fail to create | - | | | | because the final | - | | | | priority for creating | - | | | | the forwarding policy is | - | | | | the sum of 1 and 10,000, | - | | | | which exceeds the | - | | | | maximum. In this case, | - | | | | please specify a value | - | | | | or adjust the priorities | - | | | | of existing forwarding | - | | | | policies. b) If no | - | | | | forwarding policies | - | | | | exist, the highest | - | | | | priority of existing | - | | | | forwarding policies will | - | | | | set to 1 by default. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **10000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_url_config | No | `CreateRedirectUrlConfig | Specifies the URL to which | - | | | <#CreateL7Policy__request_ | requests are forwarded. | - | | | CreateRedirectUrlConfig>`__ | | - | | | object | For shared load balancers, | - | | | | this parameter is not | - | | | | supported. If it is passed, | - | | | | an error will be returned. | - | | | | | - | | | | For dedicated load | - | | | | balancers, this parameter | - | | | | will take effect only when | - | | | | advanced forwarding is | - | | | | enabled | - | | | | ( | - | | | | **enhance_l7policy_enable** | - | | | | is set to **true**). If it | - | | | | is passed when | - | | | | **enhance_l7policy_enable** | - | | | | is set to **false**, an | - | | | | error will be returned. | - | | | | | - | | | | Format: | - | | | | *proto | - | | | | col://host:port/path?query* | - | | | | | - | | | | At least one of the four | - | | | | parameters (**protocol**, | - | | | | **host**, **port**, and | - | | | | **path**) must be passed, | - | | | | or their values cannot be | - | | | | set to **${xxx}** at the | - | | | | same time. (**${xxx}** | - | | | | indicates that the value in | - | | | | the request will be | - | | | | inherited. For example, | - | | | | **${host}** indicates the | - | | | | host in the URL to be | - | | | | redirected.) | - | | | | | - | | | | The values of **protocol** | - | | | | and **port** cannot be the | - | | | | same as those of the | - | | | | associated listener, and | - | | | | either **host** or **path** | - | | | | must be passed or their | - | | | | values cannot be **${xxx}** | - | | | | at the same time. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | fixed_response_config | No | `Cr | Specifies the configuration | - | | | eateFixtedResponseConfig <# | of the page that will be | - | | | CreateL7Policy__request_Cre | returned. This parameter | - | | | ateFixtedResponseConfig>`__ | will take effect when | - | | | object | **enhance_l7policy_enable** | - | | | | is set to **true**. If this | - | | | | parameter is passed and | - | | | | **enhance_l7policy_enable** | - | | | | is set to **false**, an | - | | | | error will be returned. For | - | | | | shared load balancers, this | - | | | | parameter is not supported. | - | | | | If it is passed, an error | - | | | | will be returned. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** CreateL7PolicyRuleOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. The | - | | | | value can be **true** or | - | | | | **false**, and the default | - | | | | value is **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the match | - | | | | content. The value can be | - | | | | one of the following: | - | | | | | - | | | | - **HOST_NAME**: A domain | - | | | | name will be used for | - | | | | matching. | - | | | | | - | | | | - **PATH**: A URL will be | - | | | | used for matching. | - | | | | | - | | | | If **type** is set to | - | | | | **HOST_NAME**, **PATH**, | - | | | | **METHOD**, or | - | | | | **SOURCE_IP**, only one | - | | | | forwarding rule can be | - | | | | created for each type. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | compare_type | Yes | String | Specifies how requests are | - | | | | matched with the domain | - | | | | name or URL. | - | | | | | - | | | | If **type** is set to | - | | | | **HOST_NAME**, this | - | | | | parameter can only be set | - | | | | to **EQUAL_TO** (exact | - | | | | match). | - | | | | | - | | | | If **type** is set to | - | | | | **PATH**, this parameter | - | | | | can be set to **REGEX** | - | | | | (regular expression match), | - | | | | **STARTS_WITH** (prefix | - | | | | match), or **EQUAL_TO** | - | | | | (exact match). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. The | - | | | | value can be **true** or | - | | | | **false**, and the default | - | | | | value is **false**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | String | Specifies the key of the | - | | | | match item. For example, if | - | | | | an HTTP header is used for | - | | | | matching, **key** is the | - | | | | name of the HTTP header | - | | | | parameter. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the value of the | - | | | | match item. For example, if | - | | | | a domain name is used for | - | | | | matching, **value** is the | - | | | | domain name. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, the value | - | | | | can contain letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.) and must | - | | | | start with a letter or | - | | | | digit. If you want to | - | | | | use a wildcard domain | - | | | | name, enter an asterisk | - | | | | (*) as the leftmost | - | | | | label of the domain | - | | | | name. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH** and | - | | | | **compare_type** to | - | | | | **STARTS_WITH** or | - | | | | **EQUAL_TO**, the value | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | \ | - | | | | _~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | conditions | No | Array of | Specifies the conditions | - | | | `CreateRuleCondi | contained in a forwarding | - | | | tion <#CreateL7Policy__requ | rule. This parameter will | - | | | est_CreateRuleCondition>`__ | take effect when | - | | | objects | **enhance_l7policy_enable** | - | | | | is set to **true**. | - | | | | | - | | | | If **conditions** is | - | | | | specified, **key** and | - | | | | **value** will not take | - | | | | effect, and the value of | - | | | | this parameter will contain | - | | | | all conditions configured | - | | | | for the forwarding rule. | - | | | | The keys in the list must | - | | | | be the same, whereas each | - | | | | value must be unique. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 6** CreateRuleCondition - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | key | No | String | Specifies the key of match | - | | | | item. This parameter is | - | | | | left blank. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the value of the | - | | | | match item. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, **key** | - | | | | is left blank, and | - | | | | **value** indicates the | - | | | | domain name, which can | - | | | | contain 1 to 128 | - | | | | characters, including | - | | | | letters, digits, hyphens | - | | | | (-), periods (.), and | - | | | | asterisks (*), and must | - | | | | start with a letter, | - | | | | digit, or asterisk (*). | - | | | | If you want to use a | - | | | | wildcard domain name, | - | | | | enter an asterisk (*) as | - | | | | the leftmost label of | - | | | | the domain name. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH**, **key** is | - | | | | left blank, and | - | | | | **value** indicates the | - | | | | request path, which can | - | | | | contain 1 to 128 | - | | | | characters. If | - | | | | **compare_type** is set | - | | | | to **STARTS_WITH** or | - | | | | **EQUAL_TO** for the | - | | | | forwarding rule, the | - | | | | value must start with a | - | | | | slash (/) and can | - | | | | contain only letters, | - | | | | digits, and special | - | | | | characters | - | | | | \ | - | | | | _~';@^-%#&$.*+?,=!:|/()[]{} | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 7** CreateRedirectUrlConfig - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | protocol | No | String | Specifies the protocol for | - | | | | redirection. The default | - | | | | value is **${protocol}**, | - | | | | indicating that the | - | | | | protocol of the request | - | | | | will be used. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **HTTP** | - | | | | | - | | | | - **HTTPS** | - | | | | | - | | | | - **${protocol}** | - | | | | | - | | | | Default: **${protocol}** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | host | No | String | Specifies the host name | - | | | | that requests are | - | | | | redirected to. The value | - | | | | can contain only letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.) and must start | - | | | | with a letter or digit. The | - | | | | default value is | - | | | | **${host}**, indicating | - | | | | that the host of the | - | | | | request will be used. | - | | | | | - | | | | Default: **${host}** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | port | No | String | Specifies the port that | - | | | | requests are redirected to. | - | | | | The default value is | - | | | | **${port}**, indicating | - | | | | that the port of the | - | | | | request will be used. | - | | | | | - | | | | Default: **${port}** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **16** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | path | No | String | Specifies the path that | - | | | | requests are redirected to. | - | | | | The default value is | - | | | | **${path}**, indicating | - | | | | that the path of the | - | | | | request will be used. | - | | | | | - | | | | The value can contain only | - | | | | letters, digits, and | - | | | | special characters \_-';@^- | - | | | | %#&$.*+?,=!:|/()[]{} and | - | | | | must start with a slash | - | | | | (/). | - | | | | | - | | | | Default: **${path}** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | query | No | String | Specifies the query string | - | | | | set in the URL for | - | | | | redirection. The default | - | | | | value is **${query}**, | - | | | | indicating that the query | - | | | | string of the request will | - | | | | be used. | - | | | | | - | | | | For example, in the URL | - | | | | **https://www.xxx.com:80 | - | | | | 80/elb?type=loadbalancer**, | - | | | | **${query}** indicates | - | | | | **type=loadbalancer**. If | - | | | | this parameter is set to | - | | | | **${query}&name=my_name**, | - | | | | the URL will be redirected | - | | | | to | - | | | | **https:// | - | | | | www.xxx.com:8080/elb?type=l | - | | | | oadbalancer&name=my_name**. | - | | | | | - | | | | The value is case-sensitive | - | | | | and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | !$&'()*+,-./:;=?@^_\` | - | | | | | - | | | | Default: **${query}** | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | status_code | Yes | String | Specifies the status code | - | | | | returned after the requests | - | | | | are redirected. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **301** | - | | | | | - | | | | - **302** | - | | | | | - | | | | - **303** | - | | | | | - | | | | - **307** | - | | | | | - | | | | - **308** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **16** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 8** CreateFixtedResponseConfig - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | status_code | Yes | String | Specifies the fixed HTTP | - | | | | status code configured in | - | | | | the forwarding rule. The | - | | | | value can be any integer in | - | | | | the range of 200–299, | - | | | | 400–499, or 500–599. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **16** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | content_type | No | String | Specifies the format of the | - | | | | response body. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **text/plain** | - | | | | | - | | | | - **text/css** | - | | | | | - | | | | - **text/html** | - | | | | | - | | | | - | - | | | | **application/javascript** | - | | | | | - | | | | - **application/json** | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **32** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | message_body | No | String | Specifies the content of | - | | | | the response body. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **1024** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -.. table:: **Table 9** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | l7policy | `L7Policy <#CreateL7Policy__response_L7Policy>`__ | Specifies the forwarding policy. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 10** L7Policy - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | action | String | Specifies where requests will be | - | | | forwarded. The value can be one of | - | | | the following: | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests | - | | | will be forwarded to another | - | | | backend server group. | - | | | | - | | | - **REDIRECT_TO_LISTENER**: Requests | - | | | will be redirected to an HTTPS | - | | | listener. | - | | | | - | | | **REDIRECT_TO_LISTENER** has the | - | | | highest priority. If requests are to | - | | | be redirected to an HTTPS listener, | - | | | other forwarding policies of the | - | | | listener will become invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding policy. The default | - | | | value is **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the forwarding policy is added. | - | | | | - | | | - If **action** is set to | - | | | **REDIRECT_TO_POOL**, the | - | | | forwarding policy can be added to | - | | | an HTTP or HTTPS listener. | - | | | | - | | | - If **action** is set to | - | | | **REDIRECT_TO_LISTENER**, the | - | | | forwarding policy can be added to | - | | | an HTTP listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | position | Integer | Specifies the forwarding policy | - | | | priority. This parameter cannot be | - | | | updated. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **100** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID of the | - | | | forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding policy. | - | | | | - | | | The value can only be **ACTIVE**. | - | | | | - | | | Default: **ACTIVE** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_listener_id | String | Specifies the ID of the listener that | - | | | requests are redirected to. | - | | | | - | | | This parameter is valid and mandatory | - | | | only when **action** is set to | - | | | **REDIRECT_TO_LISTENER**. | - | | | | - | | | Only HTTPS listeners are supported, | - | | | and the listener cannot be any | - | | | listener added to other load | - | | | balancers. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_pool_id | String | Specifies the ID of the backend | - | | | server group that requests are | - | | | forwarded to. | - | | | | - | | | This parameter is valid and mandatory | - | | | only when **action** is set to | - | | | **REDIRECT_TO_POOL**. | - | | | | - | | | The specified backend server group | - | | | cannot be the default one associated | - | | | with the listener, or any backend | - | | | server group associated with the | - | | | forwarding policies of other | - | | | listeners. | - | | | | - | | | This parameter cannot be specified | - | | | when **action** is set to | - | | | **REDIRECT_TO_LISTENER**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url | String | Specifies the URL to which requests | - | | | are forwarded. | - | | | | - | | | Format: | - | | | *protocol://host:port/path?query* | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array of | Lists the forwarding rules in the | - | | `RuleRef < | forwarding policy. | - | | #CreateL7Policy__response_RuleRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url_config | `RedirectUrlConfig <#CreateL7P | Specifies the URL to which requests | - | | olicy__response_RedirectUrlConfig>`__ | are forwarded. | - | | object | | - | | | For shared load balancers, this | - | | | parameter is not supported. If it is | - | | | passed, an error will be returned. | - | | | | - | | | For dedicated load balancers, this | - | | | parameter will take effect only when | - | | | advanced forwarding is enabled | - | | | (**enhance_l7policy_enable** is set | - | | | to **true**). If it is passed when | - | | | **enhance_l7policy_enable** is set to | - | | | **false**, an error will be returned. | - | | | | - | | | Format: | - | | | *protocol://host:port/path?query* | - | | | | - | | | At least one of the four parameters | - | | | (**protocol**, **host**, **port**, | - | | | and **path**) must be passed, or | - | | | their values cannot be set to | - | | | **${xxx}** at the same time. | - | | | (**${xxx}** indicates that the value | - | | | in the request will be inherited. For | - | | | example, **${host}** indicates the | - | | | host in the URL to be redirected.) | - | | | | - | | | The values of **protocol** and | - | | | **port** cannot be the same as those | - | | | of the associated listener, and | - | | | either **host** or **path** must be | - | | | passed or their values cannot be | - | | | **${xxx}** at the same time. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | fixed_response_config | `FixtedResponseConfig <#CreateL7Poli | Specifies the configuration of the | - | | cy__response_FixtedResponseConfig>`__ | page that will be returned. This | - | | object | parameter will take effect when | - | | | **enhance_l7policy_enable** is set to | - | | | **true**. If this parameter is passed | - | | | and **enhance_l7policy_enable** is | - | | | set to **false**, an error will be | - | | | returned. For shared load balancers, | - | | | this parameter is not supported. If | - | | | it is passed, an error will be | - | | | returned. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | priority | Integer | Specifies the forwarding policy | - | | | priority. This parameter is available | - | | | only for dedicated load balancers and | - | | | will take effect when | - | | | **enhance_l7policy_enable** is set to | - | | | **true**. | - | | | | - | | | A smaller value indicates a higher | - | | | priority. The value must be unique | - | | | for each forwarding policy of the | - | | | same listener. | - | | | | - | | | If **action** is set to | - | | | **REDIRECT_TO_LISTENER**, the value | - | | | can only be **0**, indicating that | - | | | **REDIRECT_TO_LISTENER** has the | - | | | highest priority. | - | | | | - | | | - If **enhance_l7policy_enable** is | - | | | set to **false**, forwarding | - | | | policies are automatically | - | | | prioritized based on the original | - | | | sorting logic. Forwarding policy | - | | | priorities are independent of each | - | | | other regardless of domain names. | - | | | If forwarding policies use the | - | | | same domain name, their priorities | - | | | follow the order of exact match | - | | | (**EQUAL_TO**), prefix match | - | | | (**STARTS_WITH**), and regular | - | | | expression match (**REGEX**). If | - | | | prefix match is used for matching, | - | | | the longer the path, the higher | - | | | the priority. If a forwarding | - | | | policy contains only a domain name | - | | | without a path specified, the path | - | | | is **/**, and prefix match is used | - | | | by default. | - | | | | - | | | - If **enhance_l7policy_enable** is | - | | | set to **true** and this parameter | - | | | is not passed, the priority will | - | | | set to a sum of 1 and the highest | - | | | priority of existing forwarding | - | | | policy in the same listener by | - | | | default. There will be two cases: | - | | | a) If the highest priority of | - | | | existing forwarding policies is | - | | | the maximum (10,000), the | - | | | forwarding policy will fail to | - | | | create because the final priority | - | | | for creating the forwarding policy | - | | | is the sum of 1 and 10,000, which | - | | | exceeds the maximum. In this case, | - | | | please specify a value or adjust | - | | | the priorities of existing | - | | | forwarding policies. b) If no | - | | | forwarding policies exist, the | - | | | highest priority of existing | - | | | forwarding policies will set to 1 | - | | | by default. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **10000** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 11** RuleRef - - ========= ====== ================================= - Parameter Type Description - ========= ====== ================================= - id String Specifies the forwarding rule ID. - ========= ====== ================================= - -.. table:: **Table 12** RedirectUrlConfig - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | protocol | String | Specifies the protocol for | - | | | redirection. The default value is | - | | | **${protocol}**, indicating that the | - | | | protocol of the request will be used. | - | | | | - | | | Value options: | - | | | | - | | | - **HTTP** | - | | | | - | | | - **HTTPS** | - | | | | - | | | - **${protocol}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **36** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | host | String | Specifies the host name that requests | - | | | are redirected to. The value can | - | | | contain only letters, digits, hyphens | - | | | (-), and periods (.) and must start | - | | | with a letter or digit. The default | - | | | value is **${host}**, indicating that | - | | | the host of the request will be used. | - | | | | - | | | Default: **${host}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | port | String | Specifies the port that requests are | - | | | redirected to. The default value is | - | | | **${port}**, indicating that the port | - | | | of the request will be used. | - | | | | - | | | Default: **${port}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | path | String | Specifies the path that requests are | - | | | redirected to. The default value is | - | | | **${path}**, indicating that the path | - | | | of the request will be used. The | - | | | value can contain only letters, | - | | | digits, and special characters | - | | | \_-';@^- %#&$.*+?,=!:|/()[]{} and | - | | | must start with a slash (/). | - | | | | - | | | Default: **${path}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | query | String | Specifies the query string set in the | - | | | URL for redirection. The default | - | | | value is **${query}**, indicating | - | | | that the query string of the request | - | | | will be used. | - | | | | - | | | For example, in the URL | - | | | **https://www. | - | | | xxx.com:8080/elb?type=loadbalancer**, | - | | | **${query}** indicates | - | | | **type=loadbalancer**. If this | - | | | parameter is set to | - | | | **${query}&name=my_name**, the URL | - | | | will be redirected to | - | | | **https://www.xxx.com:8080/ | - | | | elb?type=loadbalancer&name=my_name**. | - | | | | - | | | The value is case-sensitive and can | - | | | contain only letters, digits, and | - | | | special characters | - | | | !$&'()*+,-./:;=?@^_\` | - | | | | - | | | Default: **${query}** | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status_code | String | Specifies the status code returned | - | | | after the requests are redirected. | - | | | | - | | | Value options: | - | | | | - | | | - **301** | - | | | | - | | | - **302** | - | | | | - | | | - **303** | - | | | | - | | | - **307** | - | | | | - | | | - **308** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 13** FixtedResponseConfig - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | status_code | String | Specifies the HTTP status code | - | | | configured in the forwarding policy. | - | | | The value can be any integer in the | - | | | range of 200–299, 400–499, or | - | | | 500–599. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | content_type | String | Specifies the format of the response | - | | | body. | - | | | | - | | | Value options: | - | | | | - | | | - **text/plain** | - | | | | - | | | - **text/css** | - | | | | - | | | - **text/html** | - | | | | - | | | - **application/javascript** | - | | | | - | | | - **application/json** | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | message_body | String | Specifies the content of the response | - | | | body. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -Creating a redirection for a listener - -.. code:: screen - - POST - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies - - { - "l7policy" : { - "action" : "REDIRECT_TO_LISTENER", - "listener_id" : "e2220d2a-3faf-44f3-8cd6-0c42952bd0ab", - "redirect_listener_id" : "48a97732-449e-4aab-b561-828d29e45050" - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -Successful request. - -.. code:: screen - - { - "request_id" : "b60d1d9a-5263-45b0-b1d6-2810ac7c52a1", - "l7policy" : { - "description" : "", - "admin_state_up" : true, - "rules" : [ ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "listener_id" : "e2220d2a-3faf-44f3-8cd6-0c42952bd0ab", - "redirect_listener_id" : "48a97732-449e-4aab-b561-828d29e45050", - "action" : "REDIRECT_TO_LISTENER", - "position" : 100, - "provisioning_status" : "ACTIVE", - "id" : "cf4360fd-8631-41ff-a6f5-b72c35da74be", - "name" : "" - } - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -201 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/CreateL7Rule.rst b/elb/api-ref/CreateL7Rule.rst deleted file mode 100644 index ef1e6524..00000000 --- a/elb/api-ref/CreateL7Rule.rst +++ /dev/null @@ -1,467 +0,0 @@ -Adding a Forwarding Rule -======================== - -Function -^^^^^^^^ - -This API is used to add a forwarding rule. - -URI -^^^ - -POST /v3/{project_id}/elb/l7policies/{l7policy_id}/rules - -.. table:: **Table 1** Path parameters - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes String Specifies the forwarding policy ID. - project_id Yes String Specifies the project ID. - =========== ========= ====== =================================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------+--------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=============================================+================================+ - | rule | Yes | `CreateL7RuleOption <#C | Specifies the forwarding rule. | - | | | reateL7Rule__request_CreateL7RuleOption>`__ | | - | | | object | | - +-----------+-----------+---------------------------------------------+--------------------------------+ - -.. table:: **Table 4** CreateL7RuleOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. The | - | | | | default value is **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | compare_type | Yes | String | Specifies how requests are | - | | | | matched and forwarded. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, this | - | | | | parameter can only be | - | | | | set to **EQUAL_TO**. | - | | | | Asterisks (*) can be | - | | | | used as wildcard | - | | | | characters. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH**, this parameter | - | | | | can be set to **REGEX**, | - | | | | **STARTS_WITH**, or | - | | | | **EQUAL_TO**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | String | Specifies the key of the | - | | | | match item. For example, if | - | | | | an HTTP header is used for | - | | | | matching, **key** is the | - | | | | name of the HTTP header | - | | | | parameter. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the value of the | - | | | | match item. For example, if | - | | | | a domain name is used for | - | | | | matching, **value** is the | - | | | | domain name. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, the value | - | | | | can contain letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.) and must | - | | | | start with a letter or | - | | | | digit. If you want to | - | | | | use a wildcard domain | - | | | | name, enter an asterisk | - | | | | (*) as the leftmost | - | | | | label of the domain | - | | | | name. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH** and | - | | | | **compare_type** to | - | | | | **STARTS_WITH** or | - | | | | **EQUAL_TO**, the value | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | \ | - | | | | _~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | project_id | No | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the match | - | | | | content. The value can be | - | | | | one of the following: | - | | | | | - | | | | - **HOST_NAME**: A domain | - | | | | name will be used for | - | | | | matching. | - | | | | | - | | | | - **PATH**: A URL will be | - | | | | used for matching. | - | | | | | - | | | | If **type** is set to | - | | | | **HOST_NAME**, **PATH**, | - | | | | **METHOD**, or | - | | | | **SOURCE_IP**, only one | - | | | | forwarding rule can be | - | | | | created for each type. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. The | - | | | | value can be **true** or | - | | | | **false**, and the default | - | | | | value is **false**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | conditions | No | Array of | Specifies the matching | - | | | `CreateRuleCon | conditions of the | - | | | dition <#CreateL7Rule__requ | forwarding rule. This | - | | | est_CreateRuleCondition>`__ | parameter will take effect | - | | | objects | when | - | | | | **enhance_l7policy_enable** | - | | | | is set to **true**. | - | | | | | - | | | | If **conditions** is | - | | | | specified, **key** and | - | | | | **value** will not take | - | | | | effect, and the value of | - | | | | this parameter will contain | - | | | | all conditions configured | - | | | | for the forwarding rule. | - | | | | The keys in the list must | - | | | | be the same, whereas each | - | | | | value must be unique. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** CreateRuleCondition - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | key | No | String | Specifies the key of match | - | | | | item. This parameter is | - | | | | left blank. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the value of the | - | | | | match item. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, **key** | - | | | | is left blank, and | - | | | | **value** indicates the | - | | | | domain name, which can | - | | | | contain 1 to 128 | - | | | | characters, including | - | | | | letters, digits, hyphens | - | | | | (-), periods (.), and | - | | | | asterisks (*), and must | - | | | | start with a letter, | - | | | | digit, or asterisk (*). | - | | | | If you want to use a | - | | | | wildcard domain name, | - | | | | enter an asterisk (*) as | - | | | | the leftmost label of | - | | | | the domain name. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH**, **key** is | - | | | | left blank, and | - | | | | **value** indicates the | - | | | | request path, which can | - | | | | contain 1 to 128 | - | | | | characters. If | - | | | | **compare_type** is set | - | | | | to **STARTS_WITH** or | - | | | | **EQUAL_TO** for the | - | | | | forwarding rule, the | - | | | | value must start with a | - | | | | slash (/) and can | - | | | | contain only letters, | - | | | | digits, and special | - | | | | characters | - | | | | \ | - | | | | _~';@^-%#&$.*+?,=!:|/()[]{} | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -.. table:: **Table 6** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | rule | `L7Rule <#CreateL7Rule__response_L7Rule>`__ | Specifies the forwarding rule. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 7** L7Rule - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding rule. The default | - | | | value is **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | compare_type | String | Specifies how requests are matched | - | | | with the domain name or URL. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, this parameter can | - | | | only be set to **EQUAL_TO**. | - | | | | - | | | - If **type** is set to **PATH**, | - | | | this parameter can be set to | - | | | **REGEX**, **STARTS_WITH**, or | - | | | **EQUAL_TO**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | key | String | Specifies the key of the match | - | | | content. This parameter will not take | - | | | effect when **type** is set to | - | | | **HOST_NAME** or **PATH**. It can be | - | | | updated but will not take effect. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the match content. The | - | | | value can be one of the following: | - | | | | - | | | - **HOST_NAME**: A domain name will | - | | | be used for matching. | - | | | | - | | | - **PATH**: A URL will be used for | - | | | matching. | - | | | | - | | | If **type** is set to **HOST_NAME**, | - | | | **PATH**, **METHOD**, or | - | | | **SOURCE_IP**, only one forwarding | - | | | rule can be created for each type. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | item. For example, if a domain name | - | | | is used for matching, **value** is | - | | | the domain name. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, the value can | - | | | contain letters, digits, hyphens | - | | | (-), and periods (.) and must | - | | | start with a letter or digit. If | - | | | you want to use a wildcard domain | - | | | name, enter an asterisk (*) as the | - | | | leftmost label of the domain name. | - | | | | - | | | - If **type** is set to **PATH** and | - | | | **compare_type** to | - | | | **STARTS_WITH** or **EQUAL_TO**, | - | | | the value must start with a slash | - | | | (/) and can contain only letters, | - | | | digits, and special characters | - | | | \_~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding rule. | - | | | | - | | | The value can only be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | invert | Boolean | Specifies whether reverse matching is | - | | | supported. The value is fixed at | - | | | **false**. This parameter can be | - | | | updated but remains invalid. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | conditions | Array of | Specifies the matching conditions of | - | | `RuleCondition <#Cre | the forwarding rule. | - | | ateL7Rule__response_RuleCondition>`__ | | - | | objects | - If **conditions** is specified, | - | | | **key** and **value** will not | - | | | take effect, and the value of this | - | | | parameter will contain all | - | | | conditions configured for the | - | | | forwarding rule. The keys in the | - | | | list must be the same, whereas | - | | | each value must be unique. | - | | | | - | | | - If **conditions** is not | - | | | specified, the values of **key** | - | | | and **value** are displayed. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 8** RuleCondition - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | key | String | Specifies the key of match item. This | - | | | parameter is left blank. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | item. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, **key** is left | - | | | blank, and **value** indicates the | - | | | domain name, which can contain 1 | - | | | to 128 characters, including | - | | | letters, digits, hyphens (-), | - | | | periods (.), and asterisks (*), | - | | | and must start with a letter, | - | | | digit, or asterisk (*). If you | - | | | want to use a wildcard domain | - | | | name, enter an asterisk (*) as the | - | | | leftmost label of the domain name. | - | | | | - | | | - If **type** is set to **PATH**, | - | | | **key** is left blank, and | - | | | **value** indicates the request | - | | | path, which can contain 1 to 128 | - | | | characters. If **compare_type** is | - | | | set to **STARTS_WITH** or | - | | | **EQUAL_TO** for the forwarding | - | | | rule, the value must start with a | - | | | slash (/) and can contain only | - | | | letters, digits, and special | - | | | characters | - | | | \_~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - POST - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies/cf4360fd-8631-41ff-a6f5-b72c35da74be/rules - - { - "rule" : { - "compare_type" : "EQUAL_TO", - "type" : "PATH", - "value" : "/bbb.html" - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -Successful request. - -.. code:: screen - - { - "rule" : { - "compare_type" : "EQUAL_TO", - "provisioning_status" : "ACTIVE", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "invert" : false, - "admin_state_up" : true, - "value" : "/bbb.html", - "type" : "PATH", - "id" : "84f4fcae-9c15-4e19-a99f-72c0b08fd3d7" - }, - "request_id" : "3639f1b7-f04b-496e-9218-ec5a9e493f69" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -201 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/CreateListener.rst b/elb/api-ref/CreateListener.rst deleted file mode 100644 index c049e7e4..00000000 --- a/elb/api-ref/CreateListener.rst +++ /dev/null @@ -1,929 +0,0 @@ -Adding a Listener -================= - -Function -^^^^^^^^ - -This API is used to add a listener to a load balancer. - -Constraints -^^^^^^^^^^^ - -Only the administrator can specify **connection_limit**. - -- The listener protocol can be TCP, HTTP, UDP, or HTTPS. - -- For load balancing at Layer 4, the listener protocol can only be TCP or UDP. - -- For load balancing at Layer 7, the listener protocol can only be HTTP or HTTPS. - -- For load balancing both at Layer 4 and Layer 7, TCP, UDP, HTTP, and HTTPS are supported. - -URI -^^^ - -POST /v3/{project_id}/elb/listeners - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------------------------------------------+-------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=================================================================================+=========================+ - | listener | Yes | `CreateListenerOption <#CreateListener__request_CreateListenerOption>`__ object | Specifies the listener. | - +-----------+-----------+---------------------------------------------------------------------------------+-------------------------+ - -.. table:: **Table 4** CreateListenerOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the listener. The value can | - | | | | only be **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | client_ca_tls_container_ref | No | String | Specifies the ID of the CA | - | | | | certificate used by the | - | | | | listener. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_pool_id | No | String | Specifies the ID of the | - | | | | default backend server | - | | | | group. If there is no | - | | | | matched forwarding policy, | - | | | | requests are forwarded to | - | | | | the default backend server | - | | | | for processing. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_tls_container_ref | No | String | Specifies the ID of the | - | | | | server certificate used by | - | | | | the listener. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | listener. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http2_enable | No | Boolean | Specifies whether to use | - | | | | HTTP/2. This parameter is | - | | | | available only for HTTPS | - | | | | listeners. If you configure | - | | | | this parameter for other | - | | | | types of listeners, it will | - | | | | not take effect. | - | | | | | - | | | | Enable HTTP/2 if you want | - | | | | the clients to use HTTP/2 | - | | | | to communicate with the | - | | | | load balancer. However, | - | | | | connections between the | - | | | | load balancer and backend | - | | | | servers use HTTP/1.x by | - | | | | default. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | insert_headers | No | `ListenerInsertHeade | Specifies the HTTP header | - | | | rs <#CreateListener__reques | fields. | - | | | t_ListenerInsertHeaders>`__ | | - | | | object | | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | Yes | String | Specifies the ID of the | - | | | | load balancer that the | - | | | | listener is added to. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the listener | - | | | | name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | project_id | No | String | Specifies the project ID. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **32** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | Yes | String | Specifies the protocol used | - | | | | by the listener. The | - | | | | protocol can be TCP, HTTP, | - | | | | UDP, or HTTPS. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | Yes | Integer | Specifies the port used by | - | | | | the listener. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **65535** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | sni_container_refs | No | Array of strings | Lists the IDs of SNI | - | | | | certificates (server | - | | | | certificates with domain | - | | | | names) used by the | - | | | | listener. | - | | | | | - | | | | Each SNI certificate can | - | | | | have up to 30 domain names, | - | | | | and each domain name in the | - | | | | SNI certificate must be | - | | | | unique. | - | | | | | - | | | | This parameter will be | - | | | | ignored and an empty array | - | | | | will be returned if the | - | | | | listener's protocol is not | - | | | | HTTPS. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tags | No | Array of | Lists the tags. | - | | | `Tag <#Crea | | - | | | teListener__request_Tag>`__ | | - | | | objects | | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tls_ciphers_policy | No | String | Specifies the security | - | | | | policy that will be used by | - | | | | the listener. | - | | | | | - | | | | This parameter is available | - | | | | only for HTTPS listeners. | - | | | | The default value is | - | | | | **tls-1-0**. | - | | | | | - | | | | An error will be returned | - | | | | if the protocol of the | - | | | | listener is not HTTPS. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **tls-1-0** | - | | | | | - | | | | - **tls-1-1** | - | | | | | - | | | | - **tls-1-2** | - | | | | | - | | | | - **tls-1-2-strict** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enable_member_retry | No | Boolean | Specifies whether to enable | - | | | | health check retries for | - | | | | backend servers. | - | | | | | - | | | | This parameter is available | - | | | | only for HTTP and HTTPS | - | | | | listeners. | - | | | | | - | | | | An error will be returned | - | | | | if you configure this | - | | | | parameter for TCP and UDP | - | | | | listeners. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | keepalive_timeout | No | Integer | Specifies the idle timeout | - | | | | duration, in seconds. | - | | | | | - | | | | - For TCP listeners, the | - | | | | value ranges from **10** | - | | | | to **4000**, and the | - | | | | default value is | - | | | | **300**. | - | | | | | - | | | | - For HTTP and HTTPS | - | | | | listeners, the value | - | | | | ranges from **0** to | - | | | | **4000**, and the | - | | | | default value is **60**. | - | | | | | - | | | | - For UDP listeners, this | - | | | | parameter is not | - | | | | available. An error will | - | | | | be returned if you | - | | | | configure this parameter | - | | | | for UDP listeners. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | client_timeout | No | Integer | Specifies the timeout | - | | | | duration for waiting for a | - | | | | request from a client, in | - | | | | seconds. | - | | | | | - | | | | This parameter is available | - | | | | only for HTTP and HTTPS | - | | | | listeners. The value ranges | - | | | | from **1** to **300**, and | - | | | | the default value is | - | | | | **60**. | - | | | | | - | | | | An error will be returned | - | | | | if you configure this | - | | | | parameter for TCP and UDP | - | | | | listeners. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **300** | - | | | | | - | | | | Default: **60** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_timeout | No | Integer | Specifies the timeout | - | | | | duration for waiting for a | - | | | | request from a backend | - | | | | server, in seconds. | - | | | | | - | | | | This parameter is available | - | | | | only for HTTP and HTTPS | - | | | | listeners. The value ranges | - | | | | from **1** to **300**, and | - | | | | the default value is | - | | | | **60**. | - | | | | | - | | | | An error will be returned | - | | | | if you configure this | - | | | | parameter for TCP and UDP | - | | | | listeners. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ipgroup | No | `Crea | Specifies the IP address | - | | | teListenerIpGroupOption <#C | group associated with the | - | | | reateListener__request_Crea | listener. | - | | | teListenerIpGroupOption>`__ | | - | | | object | The value can be **null** | - | | | | or an empty JSON structure, | - | | | | indicating that no IP | - | | | | address group is associated | - | | | | with the listener. | - | | | | | - | | | | **ipgroup_id** is also | - | | | | required if you want to | - | | | | associate an IP address | - | | | | group with the listener. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | t | No | Boolean | Specifies whether to pass | - | ransparent_client_ip_enable | | | source IP addresses of the | - | | | | clients to backend servers. | - | | | | | - | | | | Shared load balancers: The | - | | | | value can be **true** or | - | | | | **false**, and the default | - | | | | value is **false** for TCP | - | | | | and UDP listeners. The | - | | | | value can only be **true** | - | | | | for HTTP and HTTPS | - | | | | listeners. If this | - | | | | parameter is not passed, | - | | | | the default value is | - | | | | **true**. | - | | | | | - | | | | Dedicated load balancers: | - | | | | The value can only be | - | | | | **true** for all types of | - | | | | listeners. If this | - | | | | parameter is not passed, | - | | | | the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enhance_l7policy_enable | No | Boolean | Specifies whether to enable | - | | | | advanced forwarding. The | - | | | | value can be **true** or | - | | | | **false** (default). | - | | | | | - | | | | - **true** indicates that | - | | | | advanced forwarding will | - | | | | be enabled. | - | | | | | - | | | | - **false** indicates that | - | | | | advanced forwarding will | - | | | | not be enabled. | - | | | | | - | | | | The following parameters | - | | | | will be available only when | - | | | | advanced forwarding is | - | | | | enabled: | - | | | | | - | | | | - **redirect_url_config** | - | | | | | - | | | | - | - | | | | **fixed_response_config** | - | | | | | - | | | | - **priority** | - | | | | | - | | | | - **conditions** | - | | | | | - | | | | For details, see the | - | | | | descriptions in the APIs of | - | | | | forwarding policies and | - | | | | forwarding rules. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** ListenerInsertHeaders - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | X-Forwarded-ELB-IP | No | Boolean | Specifies whether to | - | | | | transparently transmit the | - | | | | load balancer EIP to | - | | | | backend servers. If | - | | | | **X-Forwarded-ELB-IP** is | - | | | | set to **true**, the load | - | | | | balancer EIP will be stored | - | | | | in the HTTP header and | - | | | | passed to backend servers. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | X-Forwarded-Port | No | Boolean | Specifies whether to | - | | | | transparently transmit the | - | | | | listening port of the load | - | | | | balancer to backend | - | | | | servers. If | - | | | | **X-Forwarded-Port** is set | - | | | | to **true**, the listening | - | | | | port of the load balancer | - | | | | will be stored in the HTTP | - | | | | header and passed to | - | | | | backend servers. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | X-Forwarded-For-Port | No | Boolean | Specifies whether to | - | | | | transparently transmit the | - | | | | source port of the client | - | | | | to backend servers. If | - | | | | **X-Forwarded-For-Port** is | - | | | | set to **true**, the source | - | | | | port of the client will be | - | | | | stored in the HTTP header | - | | | | and passed to backend | - | | | | servers. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | X-Forwarded-Host | Yes | Boolean | Specifies whether to | - | | | | rewrite the | - | | | | **X-Forwarded-Host** | - | | | | header. If | - | | | | **X-Forwarded-Host** is set | - | | | | to **true**, | - | | | | **X-Forwarded-Host** in the | - | | | | request header from the | - | | | | clients can be set to | - | | | | **Host** in the request | - | | | | header sent from the load | - | | | | balancer to backend | - | | | | servers. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 6** Tag - - ========= ========= ====== ======================== - Parameter Mandatory Type Description - ========= ========= ====== ======================== - key No String Specifies the tag key. - value No String Specifies the tag value. - ========= ========= ====== ======================== - -.. table:: **Table 7** CreateListenerIpGroupOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | ipgroup_id | Yes | String | Specifies the ID of the IP | - | | | | address group associated | - | | | | with the listener. | - | | | | | - | | | | - If **ip_list** is set to | - | | | | **[]** and **type** to | - | | | | **whitelist**, no IP | - | | | | addresses are allowed to | - | | | | access the listener. | - | | | | | - | | | | - If **ip_list** is set to | - | | | | **[]** and **type** to | - | | | | **blacklist**, any IP | - | | | | address is allowed to | - | | | | access the listener. | - | | | | | - | | | | - The specified IP address | - | | | | group must exist and | - | | | | this parameter cannot be | - | | | | set to **null**. | - | | | | | - | | | | IP address groups are not | - | | | | supported for now. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enable_ipgroup | No | Boolean | Specifies whether to enable | - | | | | access control. | - | | | | | - | | | | - **true** (default): | - | | | | Access control will be | - | | | | enabled. | - | | | | | - | | | | - **false**: Access | - | | | | control will be | - | | | | disabled. | - | | | | | - | | | | A listener with access | - | | | | control enabled can be | - | | | | directly deleted. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | String | Specifies how access to the | - | | | | listener is controlled. | - | | | | | - | | | | - **white** (default): A | - | | | | whitelist will be | - | | | | configured. Only IP | - | | | | addresses in the | - | | | | whitelist can access the | - | | | | listener. | - | | | | | - | | | | - **black**: A blacklist | - | | | | will be configured. IP | - | | | | addresses in the | - | | | | blacklist are not | - | | | | allowed to access the | - | | | | listener. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -.. table:: **Table 8** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | listener | `Listener <#CreateListener__response_Listener>`__ | Specifies the listener. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 9** Listener - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the listener. And the value can | - | | | only be **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_ca_tls_container_ref | String | Specifies the ID of the CA | - | | | certificate used by the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | connection_limit | Integer | Specifies the maximum number of | - | | | connections. The default value is | - | | | **-1**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the listener | - | | | was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_pool_id | String | Specifies the ID of the default | - | | | backend server group. If there is no | - | | | matched forwarding policy, requests | - | | | are forwarded to the default backend | - | | | server. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_tls_container_ref | String | Specifies the ID of the server | - | | | certificate used by the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http2_enable | Boolean | Specifies whether to use HTTP/2. This | - | | | parameter is available only for HTTPS | - | | | listeners. If you configure this | - | | | parameter for other types of | - | | | listeners, it will not take effect. | - | | | | - | | | Enable HTTP/2 if you want the clients | - | | | to use HTTP/2 to communicate with the | - | | | load balancer. However, connections | - | | | between the load balancer and backend | - | | | servers use HTTP/1.x by default. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | insert_headers | ` | Specifies the HTTP header fields. | - | | ListenerInsertHeaders <#CreateListene | | - | | r__response_ListenerInsertHeaders>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array of | Specifies the ID of the load balancer | - | | `LoadBalancerRef <#CreateL | that the listener is added to. | - | | istener__response_LoadBalancerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the ID of the project where | - | | | the listener is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | listener. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sni_container_refs | Array of strings | Lists the IDs of SNI certificates | - | | | (server certificates with domain | - | | | names) used by the listener. | - | | | | - | | | Each SNI certificate can have up to | - | | | 30 domain names, and each domain name | - | | | in the SNI certificate must be | - | | | unique. | - | | | | - | | | This parameter will be ignored and an | - | | | empty array will be returned if the | - | | | listener's protocol is not HTTPS. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array of | Lists the tags. | - | | `T | | - | | ag <#CreateListener__response_Tag>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the listener | - | | | was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tls_ciphers_policy | String | Specifies the security policy used by | - | | | the listener. This parameter is | - | | | available only for HTTPS listeners. | - | | | | - | | | The value can be **tls-1-0**, | - | | | **tls-1-1**, **tls-1-2**, or | - | | | **tls-1-2-strict**, and the default | - | | | value is **tls-1-0**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_member_retry | Boolean | Specifies whether to enable health | - | | | check retries for backend servers. | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | keepalive_timeout | Integer | Specifies the idle timeout duration, | - | | | in seconds. | - | | | | - | | | - For TCP listeners, the value | - | | | ranges from **10** to **4000**, | - | | | and the default value is **300**. | - | | | | - | | | - For HTTP and HTTPS listeners, the | - | | | value ranges from **0** to | - | | | **4000**, and the default value is | - | | | **60**. | - | | | | - | | | - For UDP listeners, this parameter | - | | | does not take effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_timeout | Integer | Specifies the timeout duration for | - | | | waiting for a request from a client, | - | | | in seconds. | - | | | | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. The value | - | | | ranges from **1** to **300**, and the | - | | | default value is **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | member_timeout | Integer | Specifies the timeout duration for | - | | | waiting for a request from a backend | - | | | server, in seconds. | - | | | | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. The value | - | | | ranges from **1** to **300**, and the | - | | | default value is **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipgroup | `ListenerIpGroup <#CreateL | Specifies the IP address group | - | | istener__response_ListenerIpGroup>`__ | associated with the listener. | - | | object | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | transparent_client_ip_enable | Boolean | Specifies whether to pass source IP | - | | | addresses of the clients to backend | - | | | servers. | - | | | | - | | | Shared load balancers: The value can | - | | | be **true** or **false**, and the | - | | | default value is **false** for TCP | - | | | and UDP listeners. The value can only | - | | | be **true** for HTTP and HTTPS | - | | | listeners. If this parameter is not | - | | | passed, the default value is | - | | | **true**. | - | | | | - | | | Dedicated load balancers: The value | - | | | can only be **true** for all types of | - | | | listeners. If this parameter is not | - | | | passed, the default value is | - | | | **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enhance_l7policy_enable | Boolean | Specifies whether to enable advanced | - | | | forwarding. The value can be **true** | - | | | or **false** (default). | - | | | | - | | | - **true** indicates that advanced | - | | | forwarding will be enabled. | - | | | | - | | | - **false** indicates that advanced | - | | | forwarding will not be enabled. | - | | | | - | | | The following parameters will be | - | | | available only when advanced | - | | | forwarding is enabled: | - | | | | - | | | - **redirect_url_config** | - | | | | - | | | - **fixed_response_config** | - | | | | - | | | - **priority** | - | | | | - | | | - **conditions** | - | | | | - | | | For details, see the descriptions in | - | | | the APIs of forwarding policies and | - | | | forwarding rules. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 10** ListenerInsertHeaders - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | X-Forwarded-ELB-IP | Boolean | Specifies whether to transparently | - | | | transmit the load balancer EIP to | - | | | backend servers. If | - | | | **X-Forwarded-ELB-IP** is set to | - | | | **true**, the load balancer EIP will | - | | | be stored in the HTTP header and | - | | | passed to backend servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-Port | Boolean | Specifies whether to transparently | - | | | transmit the listening port of the | - | | | load balancer to backend servers. If | - | | | **X-Forwarded-Port** is set to | - | | | **true**, the listening port of the | - | | | load balancer will be stored in the | - | | | HTTP header and passed to backend | - | | | servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-For-Port | Boolean | Specifies whether to transparently | - | | | transmit the source port of the | - | | | client to backend servers. If | - | | | **X-Forwarded-For-Port** is set to | - | | | **true**, the source port of the | - | | | client will be stored in the HTTP | - | | | header and passed to backend servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-Host | Boolean | Specifies whether to rewrite the | - | | | **X-Forwarded-Host** header. If | - | | | **X-Forwarded-Host** is set to | - | | | **true**, **X-Forwarded-Host** in the | - | | | request header from the clients can | - | | | be set to **Host** in the request | - | | | header sent from the load balancer to | - | | | backend servers. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 11** LoadBalancerRef - - ========= ====== =============================== - Parameter Type Description - ========= ====== =============================== - id String Specifies the load balancer ID. - ========= ====== =============================== - -.. table:: **Table 12** Tag - - ========= ====== ======================== - Parameter Type Description - ========= ====== ======================== - key String Specifies the tag key. - value String Specifies the tag value. - ========= ====== ======================== - -.. table:: **Table 13** ListenerIpGroup - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | ipgroup_id | String | Specifies the ID of the IP address | - | | | group associated with the listener. | - | | | | - | | | - If **ip_list** is set to **[]** | - | | | and **type** to **whitelist**, no | - | | | IP addresses are allowed to access | - | | | the listener. | - | | | | - | | | - If **ip_list** is set to **[]** | - | | | and **type** to **blacklist**, any | - | | | IP address is allowed to access | - | | | the listener. | - | | | | - | | | - The specified IP address group | - | | | must exist and this parameter | - | | | cannot be set to **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_ipgroup | Boolean | Specifies whether to enable access | - | | | control. | - | | | | - | | | - **true**: Access control is | - | | | enabled. | - | | | | - | | | - **false**: Access control is | - | | | disabled. | - | | | | - | | | A listener with access control | - | | | enabled can be directly deleted. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies how access to the listener | - | | | is controlled. | - | | | | - | | | - **white**: A whitelist is | - | | | configured. Only IP addresses in | - | | | the whitelist can access the | - | | | listener. | - | | | | - | | | - **black**: A blacklist is | - | | | configured. IP addresses in the | - | | | blacklist are not allowed to | - | | | access the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -- Example 1: Adding an HTTPS listener - - .. code:: screen - - POST - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/listeners - - { - "listener" : { - "protocol_port" : 90, - "protocol" : "HTTPS", - "loadbalancer_id" : "ac82ca77-8be3-4d65-9c4d-155771b463df", - "name" : "My listener", - "admin_state_up" : true, - "default_tls_container_ref" : "4e7761d7c7d141c389479f2641c8bff8" - } - } - -- Example 2: Adding a TCP listener - - .. code:: screen - - POST - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/listeners - - { - "listener" : { - "protocol_port" : 80, - "protocol" : "TCP", - "loadbalancer_id" : "098b2f68-af1c-41a9-8efd-69958722af62", - "name" : "My listener", - "admin_state_up" : true, - "insert_headers" : { - "X-Forwarded-ELB-IP" : true - } - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -Successful request. - -.. code:: screen - - { - "listener" : { - "id" : "683cf917-3e51-4c41-830c-bc3a57e090f0", - "name" : "My listener", - "protocol_port" : 90, - "protocol" : "HTTPS", - "description" : "", - "default_tls_container_ref" : "4e7761d7c7d141c389479f2641c8bff8", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "ac82ca77-8be3-4d65-9c4d-155771b463df" - } ], - "project_id" : "060576782980d5762f9ec014dd2f1148", - "sni_container_refs" : [ ], - "connection_limit" : -1, - "tls_ciphers_policy" : "tls-1-0", - "tags" : [ ], - "created_at" : "2021-04-02T07:48:38Z", - "updated_at" : "2021-04-02T07:48:38Z", - "http2_enable" : false, - "insert_headers" : { - "X-Forwarded-ELB-IP" : false, - "X-Forwarded-Host" : true, - "X-Forwarded-For-Port" : false, - "X-Forwarded-Port" : false - }, - "member_timeout" : 60, - "client_timeout" : 60, - "keepalive_timeout" : 60, - "enable_member_retry" : true, - "transparent_client_ip_enable" : true, - "enhance_l7policy_enable" : false - }, - "request_id" : "830de7c7c38232d925db168bfb3cb0e8" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -201 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/CreateLoadBalancer.rst b/elb/api-ref/CreateLoadBalancer.rst deleted file mode 100644 index e564ad7d..00000000 --- a/elb/api-ref/CreateLoadBalancer.rst +++ /dev/null @@ -1,967 +0,0 @@ -Creating a Load Balancer -======================== - -Function -^^^^^^^^ - -This API is used to create a dedicated load balancer. When you create the load balancer, note the following: - -- Specify both **vip_subnet_cidr_id** and **vip_address** if you want to bind a private IPv4 address to the load balancer. -- Specify **publicip** and either **vpc_id** or **vip_subnet_cidr_id** if you want to bind a new IPv4 EIP to the load balancer. -- Specify **publicip_ids** and either **vpc_id** or **vip_subnet_cidr_id** if you want to bind an existing IPv4 EIP to the load balancer. -- Specify **ipv6_vip_virsubnet_id** you want to bind a private IPv6 address to the load balancer. -- Specify **ipv6_vip_virsubnet_id** and **ipv6_bandwidth** if you want to bind a public IPv6 address to the load balancer. -- You cannot bind an occupied private IPv4 address, an occupied private IPv6 address, or an occupied public IPv6 address to the load balancer. -- Dedicated load balancers with IPv6 addresses are not supported. - -Constraints -^^^^^^^^^^^ - -There are some constraints when you create a dedicated load balancer: - -- **vpc_id**, **vip_subnet_cidr_id**, and **ipv6_vip_virsubnet_id** cannot be left blank at the same time. -- **ip_target_enable** specifies whether to enable cross-VPC backend. If you have a load balancer with this function enabled, you can add servers in a VPC connected through a VPC peering connection, in a VPC connected through a cloud connection, or in an on-premises data center at the other end of a Direct Connect or VPN connection, by using server IP addresses. -- **admin_state_up** must be set to **true**. -- **provider** must be set to **vlb**. -- **elb_virsubnet_ids** indicates the subnets that support IPv4/IPv6 dual stack or only IPv4 subnets. If only IPv4 subnets are supported, **ipv6_vip_virsubnet_id** must be left blank. -- If you bind an EIP to the load balancer during creation, you cannot unbind it from the load balancer by calling the API after the load balancer is created. Instead, you can unbind the EIP only on the ELB console. Locate the dedicated load balancer in the load balancer list and click **More** > **Unbind EIP** in the **Operation** column. -- **publicip_ids** and **publicip** cannot be specified at the same time. Set either **publicip_ids** to bind an existing EIP to the load balancer, or **publicip** to bind a new EIP to the load balancer, or neither of them. -- If you want to add the load balancer to a shared bandwidth, you must specify the ID of the shared bandwidth. If you want the load balancer to use a new dedicated bandwidth, **charge_mode**, **share_type**, and **size** are required. -- Dedicated load balancers are supported only in the **eu-nl** region. - -URI -^^^ - -POST /v3/{project_id}/elb/loadbalancers - -.. table:: **Table 1** Path parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | project_id | Yes | String | Specifies the project ID. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================= - Parameter Mandatory Type Description - ============ ========= ====== ================================= - X-Auth-Token No String Shows authentication information. - ============ ========= ====== ================================= - -.. table:: **Table 3** Request body parameters - - +--------------+-----------+-------------------------------------------+------------------------------+ - | Parameter | Mandatory | Type | Description | - +==============+===========+===========================================+==============================+ - | loadbalancer | Yes | `C | Specifies the load balancer. | - | | | reateLoadBalancerOption <#CreateLoadBalan | | - | | | cer__request_CreateLoadBalancerOption>`__ | | - | | | object | | - +--------------+-----------+-------------------------------------------+------------------------------+ - -.. table:: **Table 4** CreateLoadBalancerOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the load balancer | - | | | | name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the load | - | | | | balancer. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_address | No | String | Specifies the virtual IP | - | | | | address bound to the load | - | | | | balancer. The IP address | - | | | | must be from the IPv4 | - | | | | subnet of the VPC where the | - | | | | load balancer works and IP | - | | | | address should not be | - | | | | occupied by other services. | - | | | | | - | | | | Note: | - | | | | | - | | | | - If both | - | | | | **vip_subnet_cidr_id** | - | | | | and **vip_address** are | - | | | | specified, a dedicated | - | | | | load balancer with a | - | | | | private IPv4 address | - | | | | will be created, and the | - | | | | virtual IP address | - | | | | specified by | - | | | | **vip_address** is the | - | | | | private IP address of | - | | | | the load balancer. | - | | | | - If only | - | | | | **vip_subnet_cidr_id** | - | | | | is specified, a | - | | | | dedicated load balancer | - | | | | with a private IPv4 | - | | | | address will be created, | - | | | | and the system will | - | | | | automatically assign a | - | | | | virtual IP address to | - | | | | the load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_subnet_cidr_id | No | String | Specifies the ID of the | - | | | | IPv4 subnet where the load | - | | | | balancer works. You can | - | | | | query **neutron_subnet_id** | - | | | | in the response by calling | - | | | | the API (GET | - | | | | https://{VPC_Endpoint | - | | | | }/v1/{project_id}/subnets). | - | | | | | - | | | | - Both | - | | | | **vip_subnet_cidr_id** | - | | | | and **vip_address** are | - | | | | required if you want to | - | | | | create a dedicated load | - | | | | balancer with a private | - | | | | IPv4 address. | - | | | | - **publicip** and either | - | | | | **vpc_id** or | - | | | | **vip_subnet_cidr_id** | - | | | | are required if you want | - | | | | to create a dedicated | - | | | | load balancer with a new | - | | | | IPv4 EIP. | - | | | | - **publicip_ids** and | - | | | | either **vpc_id** or | - | | | | **vip_subnet_cidr_id** | - | | | | are required if you want | - | | | | to with a dedicated load | - | | | | balancer with an | - | | | | existing IPv4 EIP. | - | | | | - The subnet specified by | - | | | | **vip_subnet_cidr_id** | - | | | | must be in the VPC | - | | | | specified by **vpc_id** | - | | | | if you specify both | - | | | | **vpc_id** and | - | | | | **vip_subnet_cidr_id**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ipv6_vip_virsubnet_id | No | String | Specifies the ID of the | - | | | | IPv6 subnet where the load | - | | | | balancer works. You can | - | | | | query **id** in the | - | | | | response by calling the API | - | | | | (GET | - | | | | https://{VPC_Endpoint | - | | | | }/v1/{project_id}/subnets). | - | | | | | - | | | | Note: | - | | | | | - | | | | - | - | | | | **ipv6_vip_virsubnet_id** | - | | | | is required if you want | - | | | | to create a load | - | | | | balancer with a private | - | | | | IPv6 address. | - | | | | - Both | - | | | | | - | | | | **ipv6_vip_virsubnet_id** | - | | | | and **ipv6_bandwidth** | - | | | | are required if you want | - | | | | to create a load | - | | | | balancer with a public | - | | | | IPv6 address. | - | | | | - The subnet specified by | - | | | | | - | | | | **ipv6_vip_virsubnet_id** | - | | | | must be in the VPC | - | | | | specified by **vpc_id** | - | | | | if you specify both | - | | | | | - | | | | **ipv6_vip_virsubnet_id** | - | | | | and **vpc_id**. | - | | | | - IPv6 must be enabled for | - | | | | the subnet where the | - | | | | load balancer works. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | provider | No | String | Specifies the provider of | - | | | | the load balancer. The | - | | | | value can only be **vlb**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | l4_flavor_id | No | String | Specifies the ID of the | - | | | | Layer-4 flavor. | - | | | | | - | | | | Specify either | - | | | | **l4_flavor_id** or | - | | | | **l7_flavor_id** or both | - | | | | **l4_flavor_id** and | - | | | | **l7_flavor_id** when you | - | | | | create a load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | project_id | No | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | guaranteed | No | Boolean | Specifies whether the load | - | | | | balancer is a dedicated | - | | | | load balancer. The value | - | | | | can only be **true**. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vpc_id | No | String | Specifies the ID of the VPC | - | | | | where the load balancer | - | | | | works. You can query **id** | - | | | | in the response by calling | - | | | | the API (GET | - | | | | https://{VPC_Endpo | - | | | | int}/v1/{project_id}/vpcs). | - | | | | | - | | | | - The subnet specified by | - | | | | **vip_subnet_cidr_id** | - | | | | must be in the VPC | - | | | | specified by **vpc_id** | - | | | | if you specify both | - | | | | **vip_subnet_cidr_id** | - | | | | and **vpc_id**. | - | | | | - The subnet specified by | - | | | | | - | | | | **ipv6_vip_virsubnet_id** | - | | | | must be in the VPC | - | | | | specified by **vpc_id** | - | | | | if you specify both | - | | | | | - | | | | **ipv6_vip_virsubnet_id** | - | | | | and **vpc_id**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | availability_zone_list | Yes | Array of strings | Specifies the list of AZs | - | | | | where the load balancer can | - | | | | be created. You can query | - | | | | the AZs by calling the API | - | | | | (GET | - | | | | https://{ | - | | | | ELB_Endpoint}/v3/{project_i | - | | | | d}/elb/availability-zones). | - | | | | Select one or more AZs in | - | | | | the same set. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | String | Specifies the enterprise | - | | | | project ID. The value | - | | | | cannot be **""**, **"0"**, | - | | | | or the ID of an enterprise | - | | | | project that does not | - | | | | exist. If this parameter is | - | | | | not passed during resource | - | | | | creation, the resource | - | | | | belongs to the default | - | | | | enterprise project. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tags | No | Array of | Lists the tags added to the | - | | | `Tag <#CreateLo | load balancer. Example: | - | | | adBalancer__request_Tag>`__ | "tags":[{"key":"my_ta | - | | | objects | g","value":"my_tag_value"}] | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the load balancer. The | - | | | | value can only be **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | l7_flavor_id | No | String | Specifies the ID of the | - | | | | Layer-7 flavor. | - | | | | | - | | | | Specify either | - | | | | **l4_flavor_id** or | - | | | | **l7_flavor_id** or both | - | | | | **l4_flavor_id** and | - | | | | **l7_flavor_id** when you | - | | | | create a load balancer. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ipv6_bandwidth | No | `Bandw | Specifies the ID of the | - | | | idthRef <#CreateLoadBalance | bandwidth. This parameter | - | | | r__request_BandwidthRef>`__ | is available only when you | - | | | object | create or update a | - | | | | dedicated load balancer | - | | | | that has an IPv6 address | - | | | | bound. | - | | | | | - | | | | If you use a new IPv6 | - | | | | address and specify a | - | | | | shared bandwidth, the IPv6 | - | | | | address will be added to | - | | | | the shared bandwidth. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | publicip_ids | No | Array of strings | Specifies the ID of the EIP | - | | | | the system will | - | | | | automatically assign and | - | | | | bind to the load balancer | - | | | | during load balancer | - | | | | creation. Currently, only | - | | | | the first EIP will be bound | - | | | | to the load balancer | - | | | | although multiple EIP IDs | - | | | | can be set. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | publicip | No | `CreateLoadBalancer | Provides information about | - | | | PublicIpOption <#CreateLoad | the new IPv4 EIP that will | - | | | Balancer__request_CreateLoa | be bound to the dedicated | - | | | dBalancerPublicIpOption>`__ | load balancer during load | - | | | object | balancer creation. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | elb_virsubnet_ids | Yes | Array of strings | Lists the IDs of subnets on | - | | | | the downstream plane. You | - | | | | can query parameter **id** | - | | | | in the response by calling | - | | | | the API (GET | - | | | | https://{VPC_Endpoint | - | | | | }/v1/{project_id}/subnets). | - | | | | | - | | | | If there is more than one | - | | | | subnet, the first subnet in | - | | | | the list will be used. | - | | | | | - | | | | The subnets must be in the | - | | | | VPC where the load balancer | - | | | | works. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ip_target_enable | No | Boolean | Specifies whether to enable | - | | | | cross-VPC backend. The | - | | | | value can be **true** | - | | | | (enabled) or **false** | - | | | | (disabled). This function | - | | | | is supported only by | - | | | | dedicated load balancers. | - | | | | | - | | | | If you enable this | - | | | | function, you can add | - | | | | servers in a VPC connected | - | | | | through a VPC peering | - | | | | connection, in a VPC | - | | | | connected through a cloud | - | | | | connection, or in an | - | | | | on-premises data center at | - | | | | the other end of a Direct | - | | | | Connect or VPN connection, | - | | | | by using their IP | - | | | | addresses. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** Tag - - ========= ========= ====== ======================== - Parameter Mandatory Type Description - ========= ========= ====== ======================== - key No String Specifies the tag key. - value No String Specifies the tag value. - ========= ========= ====== ======================== - -.. table:: **Table 6** BandwidthRef - - ========= ========= ====== ================================== - Parameter Mandatory Type Description - ========= ========= ====== ================================== - id Yes String Specifies the shared bandwidth ID. - ========= ========= ====== ================================== - -.. table:: **Table 7** CreateLoadBalancerPublicIpOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | ip_version | No | Integer | Specifies the IP address | - | | | | version. The value can be | - | | | | **4** (IPv4) or **6** | - | | | | (IPv6). | - | | | | | - | | | | IPv6 is unsupported. The | - | | | | value cannot be **6**. | - | | | | | - | | | | Default: **4** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | network_type | Yes | String | Specifies the EIP type. The | - | | | | value can be **5_bgp** | - | | | | (default) and | - | | | | **5_mailbgp**. | - | | | | | - | | | | NOTE: | - | | | | In **eu-de**, the value of | - | | | | this parameter can only be | - | | | | **5_gray**. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the IPv4 | - | | | | EIP. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | bandwidth | Yes | `CreateLoadBalancerBa | Provides supplementary | - | | | ndwidthOption <#CreateLoadB | information about the | - | | | alancer__request_CreateLoad | bandwidth. | - | | | BalancerBandwidthOption>`__ | | - | | | object | | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 8** CreateLoadBalancerBandwidthOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the bandwidth | - | | | | name. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **64** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | size | No | Integer | Specifies the bandwidth | - | | | | range. | - | | | | | - | | | | The default range is 1 | - | | | | Mbit/s to 2,000 Mbit/s. | - | | | | (The specific range may | - | | | | vary depending on the | - | | | | configuration in each | - | | | | region. You can see the | - | | | | available bandwidth range | - | | | | on the management console.) | - | | | | | - | | | | Note: | - | | | | | - | | | | The minimum increment for | - | | | | bandwidth adjustment varies | - | | | | depending on the bandwidth | - | | | | range. The following are | - | | | | the details: | - | | | | | - | | | | - The minimum increment is | - | | | | 1 Mbit/s if the | - | | | | bandwidth range is from | - | | | | 0 Mbit/s to 300 Mbit/s. | - | | | | - The minimum increment is | - | | | | 50 Mbit/s if the | - | | | | bandwidth range is from | - | | | | 300 Mbit/s to 1,000 | - | | | | Mbit/s. | - | | | | - The minimum increment is | - | | | | 500 Mbit/s if the | - | | | | bandwidth is greater | - | | | | than 1,000 Mbit/s. | - | | | | | - | | | | This parameter is mandatory | - | | | | if **id** is set to | - | | | | **null**. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **99999** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | charge_mode | No | String | Specifies how the bandwidth | - | | | | used by the EIP is billed. | - | | | | | - | | | | Currently, the bandwidth | - | | | | can be billed only by | - | | | | **traffic**. | - | | | | | - | | | | This parameter is mandatory | - | | | | if **id** is set to | - | | | | **null**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | share_type | No | String | Specifies the bandwidth | - | | | | type. | - | | | | | - | | | | The value options are as | - | | | | follows: | - | | | | | - | | | | - **PER**: indicates | - | | | | dedicated bandwidth. | - | | | | - **WHOLE**: indicates | - | | | | shared bandwidth. | - | | | | | - | | | | This parameter is mandatory | - | | | | when **id** is set to | - | | | | **null**. It will be | - | | | | ignored if the value of | - | | | | **id** is not **null**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the ID of the | - | | | | shared bandwidth. You can | - | | | | add a load balancer to a | - | | | | shared bandwidth by | - | | | | specifying its ID. | - | | | | | - | | | | If you have specified an | - | | | | ID, you do not need to pass | - | | | | other parameters. Even if | - | | | | you pass other parameters, | - | | | | the system will | - | | | | automatically ignore these | - | | | | parameters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -.. table:: **Table 9** Response body parameters - - +--------------+--------------------------------------------------+--------------------------------------------------+ - | Parameter | Type | Description | - +==============+==================================================+==================================================+ - | loadbalancer | `LoadBalancer | Specifies the load balancer. | - | | <#CreateLoadBalancer__response_LoadBalancer>`__ | | - | | object | | - +--------------+--------------------------------------------------+--------------------------------------------------+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +--------------+--------------------------------------------------+--------------------------------------------------+ - -.. table:: **Table 10** LoadBalancer - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the load balancer ID. | - | | | | - | | | Default: **Automatically generated** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the load balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the load balancer. The value can only | - | | | be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the load balancer. The value can | - | | | only be **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provider | String | Specifies the provider of the load | - | | | balancer. The value can only be | - | | | **vlb**. | - | | | | - | | | Default: **vlb** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Lists the IDs of backend server | - | | `PoolRef <#Cre | groups associated with the load | - | | ateLoadBalancer__response_PoolRef>`__ | balancer. | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the IDs of listeners added to | - | | `ListenerRef <#CreateL | the load balancer. | - | | oadBalancer__response_ListenerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | load balancer. The value can only be | - | | | **ONLINE**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_address | String | Specifies the private IPv4 address | - | | | bound to the load balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **64** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_cidr_id | String | Specifies the ID of the IPv4 subnet | - | | | where the load balancer works. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **36** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the name of the load | - | | | balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID of the load | - | | | balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_port_id | String | Specifies the ID of the port bound to | - | | | the virtual IP address (the value of | - | | | **vip_address**) of the load | - | | | balancer. | - | | | | - | | | When you create a dedicated load | - | | | balancer, the system automatically | - | | | creates a port for the load balancer | - | | | and associates the port with a | - | | | default security group. However, | - | | | security group rules containing the | - | | | port will not affect traffic to and | - | | | from the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array of | Lists the tags added to the load | - | | `Tag < | balancer. | - | | #CreateLoadBalancer__response_Tag>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the load | - | | | balancer was created. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **20** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the load | - | | | balancer was updated. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **20** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | guaranteed | Boolean | Specifies whether the load balancer | - | | | is a dedicated load balancer. | - | | | | - | | | The value can be **true** or | - | | | **false**. **true** indicates a | - | | | dedicated load balancer, and | - | | | **false** indicates a shared load | - | | | balancer. When dedicated load | - | | | balancers are launched in the | - | | | **eu-de** region, either **true** or | - | | | **false** will be returned when you | - | | | use the API to query or update a load | - | | | balancer. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vpc_id | String | Specifies the ID of the VPC where the | - | | | load balancer works. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | eips | Array of | Specifies the EIP bound to the load | - | | `EipInfo <#Cre | balancer. | - | | ateLoadBalancer__response_EipInfo>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_address | String | Specifies the IPv6 address bound to | - | | | the load balancer. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **None** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **64** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_virsubnet_id | String | Specifies the ID of the IPv6 subnet | - | | | where the load balancer works. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_port_id | String | Specifies the ID of the port bound to | - | | | the IPv6 address. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | availability_zone_list | Array of strings | Specifies the list of AZs where the | - | | | load balancer is created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enterprise_project_id | String | Specifies the enterprise project ID. | - | | | | - | | | If this parameter is not passed | - | | | during resource creation, the | - | | | resource belongs to the default | - | | | enterprise project. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **0** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l4_flavor_id | String | Specifies the Layer-4 flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l4_scale_flavor_id | String | Specifies the reserved Layer 4 | - | | | flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7_flavor_id | String | Specifies the Layer-7 flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7_scale_flavor_id | String | Specifies the reserved Layer 7 | - | | | flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | publicips | Array of | Specifies the EIP bound to the load | - | | `PublicIpInfo <#CreateLo | balancer. | - | | adBalancer__response_PublicIpInfo>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | elb_virsubnet_ids | Array of strings | Specifies the ID of the subnet on the | - | | | downstream plane. The ports used by | - | | | the load balancer dynamically occupy | - | | | IP addresses in the subnet. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_target_enable | Boolean | Specifies whether to enable cross-VPC | - | | | backend. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | frozen_scene | String | Specifies the scenario where the load | - | | | balancer is frozen. Use commas to | - | | | separate multiple scenarios. | - | | | | - | | | If the value is **ARREAR**, the load | - | | | balancer is frozen because your | - | | | account is in arrears. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_bandwidth | `BandwidthRef <#CreateLo | Specifies the ID of the bandwidth. | - | | adBalancer__response_BandwidthRef>`__ | This parameter is available only when | - | | object | you create or update a dedicated load | - | | | balancer that has an IPv6 address | - | | | bound. | - | | | | - | | | If you use a new IPv6 address and | - | | | specify a shared bandwidth, the IPv6 | - | | | address will be added to the shared | - | | | bandwidth. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 11** PoolRef - - ========= ====== ============================================= - Parameter Type Description - ========= ====== ============================================= - id String Specifies the ID of the backend server group. - ========= ====== ============================================= - -.. table:: **Table 12** ListenerRef - - ========= ====== ========================== - Parameter Type Description - ========= ====== ========================== - id String Specifies the listener ID. - ========= ====== ========================== - -.. table:: **Table 13** Tag - - ========= ====== ======================== - Parameter Type Description - ========= ====== ======================== - key String Specifies the tag key. - value String Specifies the tag value. - ========= ====== ======================== - -.. table:: **Table 14** EipInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | eip_id | String | Specifies the EIP ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | eip_address | String | Specifies the specific IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | Integer | Specifies the IP version. **4** | - | | | indicates IPv4, and **6** indicates | - | | | IPv6. | - | | | | - | | | IPv6 is unsupported. The value cannot | - | | | be **6**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 15** PublicIpInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | publicip_id | String | Specifies the EIP ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | publicip_address | String | Specifies the IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | Integer | Specifies the IP version. The value | - | | | can be **4** (IPv4) or **6** (IPv6). | - | | | | - | | | IPv6 is unsupported. The value cannot | - | | | be **6**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 16** BandwidthRef - - ========= ====== ================================== - Parameter Type Description - ========= ====== ================================== - id String Specifies the shared bandwidth ID. - ========= ====== ================================== - -Example Requests -^^^^^^^^^^^^^^^^ - -Example 1: Creating a load balancer with an IPv4 EIP - -.. code:: screen - - POST - - https://{ELB_Endponit}/v3/060576782980d5762f9ec014dd2f1148/elb/loadbalancers - - { - "loadbalancer" : { - "vpc_id" : "e5a892ff-3c33-44ef-ada5-b713eb1f7a8b", - "availability_zone_list" : [ "br-iaas-odin1a" ], - "admin_state_up" : true, - "vip_subnet_cidr_id" : "1800b6b8-a69f-4719-813d-24d62aaf32bd", - "elb_virsubnet_ids" : [ "1fe8c0a8-d648-4294-8ea5-4d7f0c700e69" ], - "name" : "elb-ipv4-public", - "publicip" : { - "network_type" : "5_bgp", - "bandwidth" : { - "size" : 2, - "share_type" : "PER", - "charge_mode" : "traffic", - "name" : "elb_eip_traffic" - } - } - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -Successful request. - -.. code:: screen - - { - "request_id" : "86bb342be098113734389bffcf593607", - "loadbalancer" : { - "id" : "badd5a4b-14cf-4319-ac91-4182a80dee9a", - "project_id" : "060576782980d5762f9ec014dd2f1148", - "name" : "elb-ipv4-public", - "description" : "", - "vip_port_id" : "265c13fb-49a9-4f51-b848-7f0cced0aef0", - "vip_address" : "192.168.0.151", - "admin_state_up" : true, - "provisioning_status" : "ACTIVE", - "operating_status" : "ONLINE", - "listeners" : [ ], - "pools" : [ ], - "tags" : [ ], - "provider" : "vlb", - "created_at" : "2021-03-29T02:44:47Z", - "updated_at" : "2021-03-29T02:44:47Z", - "vpc_id" : "e5a892ff-3c33-44ef-ada5-b713eb1f7a8b", - "enterprise_project_id" : "0", - "availability_zone_list" : [ "br-iaas-odin1a" ], - "publicips" : [ { - "publicip_id" : "448d497a-8f65-4c17-b2b2-f21279446e00", - "publicip_address" : "10.246.170.154", - "ip_version" : 4 - } ], - "elb_virsubnet_ids" : [ "4df3e391-5ebf-4300-b614-cf5a4e793666" ], - "elb_virsubnet_type" : "dualstack", - "ip_target_enable" : false, - "eips" : [ { - "eip_id" : "448d497a-8f65-4c17-b2b2-f21279446e00", - "eip_address" : "10.246.170.154", - "ip_version" : 4 - } ], - "guaranteed" : true, - "l4_flavor_id" : "e5acacda-f861-404e-9871-df480c49d185", - "l7_flavor_id" : "2f124f60-980a-42f3-b201-35461df1b936", - "vip_subnet_cidr_id" : "1800b6b8-a69f-4719-813d-24d62aaf32bd" - } - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -201 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/CreateMember.rst b/elb/api-ref/CreateMember.rst deleted file mode 100644 index c57db2ee..00000000 --- a/elb/api-ref/CreateMember.rst +++ /dev/null @@ -1,345 +0,0 @@ -Adding a Backend Server -======================= - -Function -^^^^^^^^ - -This API is used to add a backend server. - -Constraints -^^^^^^^^^^^ - -When you add backend servers, note the following: - -- Two backend servers in the same backend server group must have different IP addresses and ports. - -- If no subnets are specified during cloud server creation, cross-VPC backend servers can be added. In this case, **address** must be set to an IPv4 address, the protocol of the backend server group must be TCP, HTTP, or HTTPS, and cross-VPC backend must have been enabled for the load balancer. - -- If a subnet is specified during cloud server creation, the subnet must be in the same VPC as the subnet from which the virtual IP address bound to the load balancer is assigned. - -- If the backend server group supports IPv4/IPv6 dual stack, **address** can be an IPv4 or IPv6 address. The value of **address** depends on the IP address version of the backend server group. - -URI -^^^ - -POST /v3/{project_id}/elb/pools/{pool_id}/members - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ============================================= - Parameter Mandatory Type Description - ========== ========= ====== ============================================= - pool_id Yes String Specifies the ID of the backend server group. - project_id Yes String Specifies the project ID. - ========== ========= ====== ============================================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------+---------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=============================================+=============================================+ - | member | Yes | `CreateMemberOption <#C | Specifies request parameters for creating a | - | | | reateMember__request_CreateMemberOption>`__ | backend server. | - | | | object | | - +-----------+-----------+---------------------------------------------+---------------------------------------------+ - -.. table:: **Table 4** CreateMemberOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | address | Yes | String | Specifies the IP address of | - | | | | the backend server. | - | | | | | - | | | | - The IP address must be | - | | | | in the subnet specified | - | | | | by **subnet_cidr_id**, | - | | | | for example, | - | | | | 192.168.3.11. | - | | | | | - | | | | - The IP address can only | - | | | | be the IP address of the | - | | | | primary NIC. | - | | | | | - | | | | - If **subnet_cidr_id** is | - | | | | left blank, cross-VPC | - | | | | backend is enabled. In | - | | | | this case, these servers | - | | | | must use IPv4 addresses. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **64** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server. | - | | | | | - | | | | Although this parameter can | - | | | | be used in the APIs for | - | | | | creating and updating | - | | | | backend servers, its actual | - | | | | value depends on whether | - | | | | cloud servers exist. If | - | | | | cloud servers exist, the | - | | | | value is **true**. | - | | | | Otherwise, the value is | - | | | | **false**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the backend | - | | | | server name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | project_id | No | String | Specifies the project ID. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **32** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | Yes | Integer | Specifies the port used by | - | | | | the backend server to | - | | | | receive requests. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **65535** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | subnet_cidr_id | No | String | Specifies the ID of the | - | | | | subnet where the backend | - | | | | server works. | - | | | | | - | | | | This subnet must be in the | - | | | | same VPC as the subnet of | - | | | | the load balancer with | - | | | | which the backend server is | - | | | | associated. Only IPv4 | - | | | | subnets are supported. | - | | | | | - | | | | This parameter can be left | - | | | | blank, indicating that | - | | | | cross-VPC backend servers | - | | | | can be added. In this case, | - | | | | IP addresses of these | - | | | | servers must be IPv4 | - | | | | addresses, the protocol of | - | | | | the backend server group | - | | | | must be TCP, HTTP, or | - | | | | HTTPS, and cross-VPC | - | | | | backend must have been | - | | | | enabled for the load | - | | | | balancer. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | weight | No | Integer | Specifies the weight of the | - | | | | backend server. | - | | | | | - | | | | Requests are routed to | - | | | | backend servers in the same | - | | | | backend server group based | - | | | | on their weights. | - | | | | | - | | | | If the weight is 0, the | - | | | | backend server will not | - | | | | accept new requests. | - | | | | | - | | | | This parameter is invalid | - | | | | when **lb_algorithm** is | - | | | | set to **SOURCE_IP** for | - | | | | the backend server group | - | | | | that contains the backend | - | | | | server. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **100** | - | | | | | - | | | | Default: **1** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -.. table:: **Table 5** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | member | `Member <#CreateMember__response_Member>`__ | Specifies the backend server. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 6** Member - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | address | String | Specifies the IP address of the | - | | | backend server. | - | | | | - | | | The IP address must be in the subnet | - | | | specified by **subnet_cidr_id**, for | - | | | example, 192.168.3.11. The IP address | - | | | can only be the IP address of the | - | | | primary NIC. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server. | - | | | | - | | | Although this parameter can be used | - | | | in the APIs for creating and updating | - | | | backend servers, its actual value | - | | | depends on whether cloud servers | - | | | exist. If cloud servers exist, the | - | | | value is **true**. Otherwise, the | - | | | value is **false**. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | backend server. The value can be one | - | | | of the following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | | - | | | - **NO_MONITOR**: No health check is | - | | | configured for the backend server | - | | | group to which the backend server | - | | | belongs. | - | | | | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server to receive requests. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | subnet_cidr_id | String | Specifies the ID of the subnet where | - | | | the backend server works. This subnet | - | | | must be in the VPC as the subnet of | - | | | the load balancer associated with the | - | | | backend server. Only IPv4 subnets are | - | | | supported. If the value is left | - | | | blank, the backend server is not in | - | | | the load balancer's VPC. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | weight | Integer | Specifies the weight of the backend | - | | | server. | - | | | | - | | | Requests are routed to backend | - | | | servers in the same backend server | - | | | group based on their weights. | - | | | | - | | | If the weight is 0, the backend | - | | | server will not accept new requests. | - | | | | - | | | This parameter is invalid when | - | | | **lb_algorithm** is set to | - | | | **SOURCE_IP** for the backend server | - | | | group that contains the backend | - | | | server. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **100** | - | | | | - | | | Default: **1** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | String | This is a read-only attribute, which | - | | | is automatically generated based on | - | | | the **address** parameter. The value | - | | | can be **v4** or **v6**. | - | | | | - | | | Default: **v4** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - POST - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75/members - - { - "member" : { - "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74", - "protocol_port" : 89, - "name" : "My member", - "address" : "120.10.10.16" - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -Successful request. - -.. code:: screen - - { - "member" : { - "name" : "My member", - "weight" : 1, - "admin_state_up" : false, - "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "address" : "120.10.10.16", - "protocol_port" : 89, - "id" : "1923923e-fe8a-484f-bdbc-e11559b1f48f", - "operating_status" : "NO_MONITOR", - "ip_version" : "v4" - }, - "request_id" : "f354090d-41db-41e0-89c6-7a943ec50792" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -201 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/CreatePool.rst b/elb/api-ref/CreatePool.rst deleted file mode 100644 index 549cc54a..00000000 --- a/elb/api-ref/CreatePool.rst +++ /dev/null @@ -1,603 +0,0 @@ -Creating a Backend Server Group -=============================== - -Function -^^^^^^^^ - -This API is used to create a backend server group. - -Constraints -^^^^^^^^^^^ - -If **session-persistence** is specified, **cookie_name** is available only when **type** is set to **APP_COOKIE**. - -If **listener_id** is specified, the listener must have no backend server group associated. - -URI -^^^ - -POST /v3/{project_id}/elb/pools - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------------------------------+-------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=====================================================================+=====================================+ - | pool | Yes | `CreatePoolOption <#CreatePool__request_CreatePoolOption>`__ object | Specifies the backend server group. | - +-----------+-----------+---------------------------------------------------------------------+-------------------------------------+ - -.. table:: **Table 4** CreatePoolOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server group. | - | | | | The value can only be | - | | | | updated to **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | backend server group. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | lb_algorithm | Yes | String | Specifies the load | - | | | | balancing algorithm used by | - | | | | the load balancer to route | - | | | | requests to backend | - | | | | servers. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **ROUND_ROBIN**: | - | | | | weighted round robin | - | | | | | - | | | | - **LEAST_CONNECTIONS**: | - | | | | weighted least | - | | | | connections | - | | | | | - | | | | - **SOURCE_IP**: source IP | - | | | | hash | - | | | | | - | | | | When the value is | - | | | | **SOURCE_IP**, the weights | - | | | | of backend servers are | - | | | | invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | No | String | Specifies the ID of the | - | | | | listener associated with | - | | | | the backend server group. | - | | | | Specify either | - | | | | **listener_id** or | - | | | | **loadbalancer_id**, or | - | | | | both of them. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | No | String | Specifies the ID of the | - | | | | associated load balancer. | - | | | | Specify either | - | | | | **listener_id** or | - | | | | **loadbalancer_id**, or | - | | | | both of them. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the backend | - | | | | server group name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | project_id | No | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | Yes | String | Specifies the protocol used | - | | | | by the backend server group | - | | | | to receive requests. TCP, | - | | | | UDP, and HTTP are | - | | | | supported. | - | | | | | - | | | | - For UDP listeners, the | - | | | | protocol of the backend | - | | | | server group must be | - | | | | UDP. | - | | | | | - | | | | - For TCP listeners, the | - | | | | protocol of the backend | - | | | | server group must be | - | | | | TCP. | - | | | | | - | | | | - For HTTP or HTTPS | - | | | | listeners, the protocol | - | | | | of the backend server | - | | | | group must be HTTP. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | session_persistence | No | `CreatePoolSess | Specifies whether to enable | - | | | ionPersistenceOption <#Crea | sticky sessions. | - | | | tePool__request_CreatePoolS | | - | | | essionPersistenceOption>`__ | | - | | | object | | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | slow_start | No | `CreatePoolSlowStartOpti | Specifies whether to enable | - | | | on <#CreatePool__request_Cr | slow start. After you | - | | | eatePoolSlowStartOption>`__ | enable slow start, new | - | | | object | backend servers added to | - | | | | the backend server group | - | | | | are warmed up, and the | - | | | | number of requests they can | - | | | | receive increases linearly | - | | | | during the configured slow | - | | | | start duration. | - | | | | | - | | | | This parameter can be used | - | | | | when the protocol of the | - | | | | backend server group is | - | | | | HTTP or HTTPS. An error | - | | | | will be returned if the | - | | | | protocol is not HTTP or | - | | | | HTTPS. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** CreatePoolSessionPersistenceOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | cookie_name | No | String | Specifies the cookie name. | - | | | | This parameter will take | - | | | | effect only when **type** | - | | | | is set to **APP_COOKIE**. | - | | | | Otherwise, an error will be | - | | | | returned. | - | | | | | - | | | | The value can contain only | - | | | | letters, digits, hyphens | - | | | | (-), underscores (_), and | - | | | | periods (.). | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **1024** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the sticky | - | | | | session type. The value can | - | | | | be **SOURCE_IP**, | - | | | | **HTTP_COOKIE**, or | - | | | | **APP_COOKIE**. | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | TCP or UDP, only | - | | | | **SOURCE_IP** takes | - | | | | effect. | - | | | | | - | | | | - For dedicated load | - | | | | balancers, if the | - | | | | protocol of the backend | - | | | | server group is HTTP or | - | | | | HTTPS, the value can | - | | | | only be **HTTP_COOKIE**. | - | | | | | - | | | | - For shared load | - | | | | balancers, if the | - | | | | protocol of the backend | - | | | | server group is HTTP or | - | | | | HTTPS, the value can be | - | | | | **HTTP_COOKIE** or | - | | | | **APP_COOKIE**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | persistence_timeout | No | Integer | Specifies the stickiness | - | | | | duration, in minutes. This | - | | | | parameter will not take | - | | | | effect when **type** is set | - | | | | to **APP_COOKIE**. | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | TCP or UDP, the value | - | | | | ranges from **1** to | - | | | | **60**, and the default | - | | | | value is **1**. | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | HTTP or HTTPS, the value | - | | | | ranges from **1** to | - | | | | **1440**, and the | - | | | | default value is | - | | | | **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 6** CreatePoolSlowStartOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | enable | Yes | Boolean | Specifies whether to enable | - | | | | slow start. | - | | | | | - | | | | **true** indicates that | - | | | | this function is enabled, | - | | | | and **false** indicates | - | | | | this function is disabled. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | duration | Yes | Integer | Specifies the slow start | - | | | | duration, in seconds. | - | | | | | - | | | | The value ranges from | - | | | | **30** to **1200**, and the | - | | | | default value is **30**. | - | | | | | - | | | | Minimum: **30** | - | | | | | - | | | | Maximum: **1200** | - | | | | | - | | | | Default: **30** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -.. table:: **Table 7** Response body parameters - - ========== ============================================ =============================================================== - Parameter Type Description - ========== ============================================ =============================================================== - request_id String Specifies the request ID. The value is automatically generated. - pool `Pool <#CreatePool__response_Pool>`__ object Specifies the backend server group. - ========== ============================================ =============================================================== - -.. table:: **Table 8** Pool - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server group. The | - | | | value can only be updated to | - | | | **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor_id | String | Specifies the ID of the health check | - | | | configured for the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server group | - | | | ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm used by the load balancer | - | | | to route requests to backend servers | - | | | in the backend server group. | - | | | | - | | | The value can be **ROUND_ROBIN** | - | | | (weighted round robin), | - | | | **LEAST_CONNECTIONS** (weighted least | - | | | connections), or **SOURCE_IP** | - | | | (source IP hash). | - | | | | - | | | When the value is **SOURCE_IP**, the | - | | | **weight** parameter is invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the listeners associated with | - | | `ListenerRef < | the backend server group. | - | | #CreatePool__response_ListenerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array of | Lists the IDs of load balancers | - | | `LoadBalancerRef <#Cre | associated with the backend server | - | | atePool__response_LoadBalancerRef>`__ | group. | - | | objects | | - | | | If only **listener_id** is specified | - | | | during the creation of the backend | - | | | server group, the ID of the | - | | | **loadbalancers** parameter in the | - | | | response is the ID of the load | - | | | balancer to which the listener is | - | | | added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array of | Lists the backend servers in the | - | | `MemberRef | backend server group. | - | | <#CreatePool__response_MemberRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server group | - | | | name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | backend server group to receive | - | | | requests. The protocol can be TCP, | - | | | UDP, or HTTP. | - | | | | - | | | - For UDP listeners, the protocol of | - | | | the backend server group must be | - | | | UDP. | - | | | | - | | | - For TCP listeners, the protocol of | - | | | the backend server group must be | - | | | TCP. | - | | | | - | | | - For HTTP or HTTPS listeners, the | - | | | protocol of the backend server | - | | | group must be HTTP. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_persistence | `SessionPersistence <#Create | Specifies the sticky session. | - | | Pool__response_SessionPersistence>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | String | Specifies the IP version supported by | - | | | the backend server group. | - | | | | - | | | - Shared load balancers: The default | - | | | value is **v4**. | - | | | | - | | | - Dedicated load balancers: The | - | | | value can be **dualstack**, | - | | | **v4**, or **v6**. | - | | | | - | | | When the protocol of the backend | - | | | server group is TCP or UDP, | - | | | **ip_version** is set to | - | | | **dualstack**, indicating that both | - | | | IPv4 and IPv6 are supported. | - | | | | - | | | When the protocol of the backend | - | | | server group is HTTP, **ip_version** | - | | | is set to **v4**. | - | | | | - | | | IPv6 is unsupported. Only **v4** is | - | | | returned. | - | | | | - | | | Default: **dualstack** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | slow_start | `SlowStart | Specifies whether to enable slow | - | | <#CreatePool__response_SlowStart>`__ | start. After you enable slow start, | - | | object | new backend servers added to the | - | | | backend server group are warmed up, | - | | | and the number of requests they can | - | | | receive increases linearly during the | - | | | configured slow start duration. | - | | | | - | | | This parameter can be used when the | - | | | protocol of the backend server group | - | | | is HTTP or HTTPS. An error will be | - | | | returned if the protocol is not HTTP | - | | | or HTTPS. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 9** ListenerRef - - ========= ====== ========================== - Parameter Type Description - ========= ====== ========================== - id String Specifies the listener ID. - ========= ====== ========================== - -.. table:: **Table 10** LoadBalancerRef - - ========= ====== =============================== - Parameter Type Description - ========= ====== =============================== - id String Specifies the load balancer ID. - ========= ====== =============================== - -.. table:: **Table 11** MemberRef - - ========= ====== ================================ - Parameter Type Description - ========= ====== ================================ - id String Specifies the backend server ID. - ========= ====== ================================ - -.. table:: **Table 12** SessionPersistence - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | cookie_name | String | Specifies the cookie name. | - | | | | - | | | This parameter will take effect only | - | | | when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | The value can contain only letters, | - | | | digits, hyphens (-), underscores (_), | - | | | and periods (.). | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the sticky session type. | - | | | The value can be **SOURCE_IP**, | - | | | **HTTP_COOKIE**, or **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, only | - | | | **SOURCE_IP** takes effect. | - | | | | - | | | - For dedicated load balancers, if | - | | | the protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can only be **HTTP_COOKIE**. | - | | | | - | | | - For shared load balancers, if the | - | | | protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can be **HTTP_COOKIE** or | - | | | **APP_COOKIE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | persistence_timeout | Integer | Specifies the stickiness duration, in | - | | | minutes. This parameter will not take | - | | | effect when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, the | - | | | value ranges from **1** to **60**, | - | | | and the default value is **1**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is HTTP or HTTPS, the | - | | | value ranges from **1** to | - | | | **1440**, and the default value is | - | | | **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 13** SlowStart - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | enable | Boolean | Specifies whether to enable slow | - | | | start. | - | | | | - | | | **true** indicates that this function | - | | | is enabled, and **false** indicates | - | | | this function is disabled. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | duration | Integer | Specifies the slow start duration, in | - | | | seconds. | - | | | | - | | | The value ranges from **30** to | - | | | **1200**, and the default value is | - | | | **30**. | - | | | | - | | | Minimum: **30** | - | | | | - | | | Maximum: **1200** | - | | | | - | | | Default: **30** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -Adding an HTTP backend server group - -.. code:: screen - - POST - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools - - { - "pool" : { - "name" : "My pool", - "lb_algorithm" : "LEAST_CONNECTIONS", - "listener_id" : "0b11747a-b139-492f-9692-2df0b1c87193", - "protocol" : "HTTP", - "slow_start" : { - "enable" : true, - "duration" : 50 - } - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -Successful request. - -.. code:: screen - - { - "pool" : { - "lb_algorithm" : "LEAST_CONNECTIONS", - "protocol" : "HTTP", - "description" : "", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "098b2f68-af1c-41a9-8efd-69958722af62" - } ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "listeners" : [ { - "id" : "0b11747a-b139-492f-9692-2df0b1c87193" - } ], - "members" : [ ], - "id" : "36ce7086-a496-4666-9064-5ba0e6840c75", - "name" : "My pool", - "ip_version" : "v4", - "slow_start" : { - "enable" : true, - "duration" : 50 - } - }, - "request_id" : "2d974978-0733-404d-a21a-b29204f4803a" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -201 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/CreatePool1.rst b/elb/api-ref/CreatePool1.rst deleted file mode 100644 index 549cc54a..00000000 --- a/elb/api-ref/CreatePool1.rst +++ /dev/null @@ -1,603 +0,0 @@ -Creating a Backend Server Group -=============================== - -Function -^^^^^^^^ - -This API is used to create a backend server group. - -Constraints -^^^^^^^^^^^ - -If **session-persistence** is specified, **cookie_name** is available only when **type** is set to **APP_COOKIE**. - -If **listener_id** is specified, the listener must have no backend server group associated. - -URI -^^^ - -POST /v3/{project_id}/elb/pools - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------------------------------+-------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=====================================================================+=====================================+ - | pool | Yes | `CreatePoolOption <#CreatePool__request_CreatePoolOption>`__ object | Specifies the backend server group. | - +-----------+-----------+---------------------------------------------------------------------+-------------------------------------+ - -.. table:: **Table 4** CreatePoolOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server group. | - | | | | The value can only be | - | | | | updated to **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | backend server group. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | lb_algorithm | Yes | String | Specifies the load | - | | | | balancing algorithm used by | - | | | | the load balancer to route | - | | | | requests to backend | - | | | | servers. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **ROUND_ROBIN**: | - | | | | weighted round robin | - | | | | | - | | | | - **LEAST_CONNECTIONS**: | - | | | | weighted least | - | | | | connections | - | | | | | - | | | | - **SOURCE_IP**: source IP | - | | | | hash | - | | | | | - | | | | When the value is | - | | | | **SOURCE_IP**, the weights | - | | | | of backend servers are | - | | | | invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | No | String | Specifies the ID of the | - | | | | listener associated with | - | | | | the backend server group. | - | | | | Specify either | - | | | | **listener_id** or | - | | | | **loadbalancer_id**, or | - | | | | both of them. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | No | String | Specifies the ID of the | - | | | | associated load balancer. | - | | | | Specify either | - | | | | **listener_id** or | - | | | | **loadbalancer_id**, or | - | | | | both of them. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the backend | - | | | | server group name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | project_id | No | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | Yes | String | Specifies the protocol used | - | | | | by the backend server group | - | | | | to receive requests. TCP, | - | | | | UDP, and HTTP are | - | | | | supported. | - | | | | | - | | | | - For UDP listeners, the | - | | | | protocol of the backend | - | | | | server group must be | - | | | | UDP. | - | | | | | - | | | | - For TCP listeners, the | - | | | | protocol of the backend | - | | | | server group must be | - | | | | TCP. | - | | | | | - | | | | - For HTTP or HTTPS | - | | | | listeners, the protocol | - | | | | of the backend server | - | | | | group must be HTTP. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | session_persistence | No | `CreatePoolSess | Specifies whether to enable | - | | | ionPersistenceOption <#Crea | sticky sessions. | - | | | tePool__request_CreatePoolS | | - | | | essionPersistenceOption>`__ | | - | | | object | | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | slow_start | No | `CreatePoolSlowStartOpti | Specifies whether to enable | - | | | on <#CreatePool__request_Cr | slow start. After you | - | | | eatePoolSlowStartOption>`__ | enable slow start, new | - | | | object | backend servers added to | - | | | | the backend server group | - | | | | are warmed up, and the | - | | | | number of requests they can | - | | | | receive increases linearly | - | | | | during the configured slow | - | | | | start duration. | - | | | | | - | | | | This parameter can be used | - | | | | when the protocol of the | - | | | | backend server group is | - | | | | HTTP or HTTPS. An error | - | | | | will be returned if the | - | | | | protocol is not HTTP or | - | | | | HTTPS. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** CreatePoolSessionPersistenceOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | cookie_name | No | String | Specifies the cookie name. | - | | | | This parameter will take | - | | | | effect only when **type** | - | | | | is set to **APP_COOKIE**. | - | | | | Otherwise, an error will be | - | | | | returned. | - | | | | | - | | | | The value can contain only | - | | | | letters, digits, hyphens | - | | | | (-), underscores (_), and | - | | | | periods (.). | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **1024** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the sticky | - | | | | session type. The value can | - | | | | be **SOURCE_IP**, | - | | | | **HTTP_COOKIE**, or | - | | | | **APP_COOKIE**. | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | TCP or UDP, only | - | | | | **SOURCE_IP** takes | - | | | | effect. | - | | | | | - | | | | - For dedicated load | - | | | | balancers, if the | - | | | | protocol of the backend | - | | | | server group is HTTP or | - | | | | HTTPS, the value can | - | | | | only be **HTTP_COOKIE**. | - | | | | | - | | | | - For shared load | - | | | | balancers, if the | - | | | | protocol of the backend | - | | | | server group is HTTP or | - | | | | HTTPS, the value can be | - | | | | **HTTP_COOKIE** or | - | | | | **APP_COOKIE**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | persistence_timeout | No | Integer | Specifies the stickiness | - | | | | duration, in minutes. This | - | | | | parameter will not take | - | | | | effect when **type** is set | - | | | | to **APP_COOKIE**. | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | TCP or UDP, the value | - | | | | ranges from **1** to | - | | | | **60**, and the default | - | | | | value is **1**. | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | HTTP or HTTPS, the value | - | | | | ranges from **1** to | - | | | | **1440**, and the | - | | | | default value is | - | | | | **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 6** CreatePoolSlowStartOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | enable | Yes | Boolean | Specifies whether to enable | - | | | | slow start. | - | | | | | - | | | | **true** indicates that | - | | | | this function is enabled, | - | | | | and **false** indicates | - | | | | this function is disabled. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | duration | Yes | Integer | Specifies the slow start | - | | | | duration, in seconds. | - | | | | | - | | | | The value ranges from | - | | | | **30** to **1200**, and the | - | | | | default value is **30**. | - | | | | | - | | | | Minimum: **30** | - | | | | | - | | | | Maximum: **1200** | - | | | | | - | | | | Default: **30** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -.. table:: **Table 7** Response body parameters - - ========== ============================================ =============================================================== - Parameter Type Description - ========== ============================================ =============================================================== - request_id String Specifies the request ID. The value is automatically generated. - pool `Pool <#CreatePool__response_Pool>`__ object Specifies the backend server group. - ========== ============================================ =============================================================== - -.. table:: **Table 8** Pool - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server group. The | - | | | value can only be updated to | - | | | **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor_id | String | Specifies the ID of the health check | - | | | configured for the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server group | - | | | ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm used by the load balancer | - | | | to route requests to backend servers | - | | | in the backend server group. | - | | | | - | | | The value can be **ROUND_ROBIN** | - | | | (weighted round robin), | - | | | **LEAST_CONNECTIONS** (weighted least | - | | | connections), or **SOURCE_IP** | - | | | (source IP hash). | - | | | | - | | | When the value is **SOURCE_IP**, the | - | | | **weight** parameter is invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the listeners associated with | - | | `ListenerRef < | the backend server group. | - | | #CreatePool__response_ListenerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array of | Lists the IDs of load balancers | - | | `LoadBalancerRef <#Cre | associated with the backend server | - | | atePool__response_LoadBalancerRef>`__ | group. | - | | objects | | - | | | If only **listener_id** is specified | - | | | during the creation of the backend | - | | | server group, the ID of the | - | | | **loadbalancers** parameter in the | - | | | response is the ID of the load | - | | | balancer to which the listener is | - | | | added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array of | Lists the backend servers in the | - | | `MemberRef | backend server group. | - | | <#CreatePool__response_MemberRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server group | - | | | name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | backend server group to receive | - | | | requests. The protocol can be TCP, | - | | | UDP, or HTTP. | - | | | | - | | | - For UDP listeners, the protocol of | - | | | the backend server group must be | - | | | UDP. | - | | | | - | | | - For TCP listeners, the protocol of | - | | | the backend server group must be | - | | | TCP. | - | | | | - | | | - For HTTP or HTTPS listeners, the | - | | | protocol of the backend server | - | | | group must be HTTP. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_persistence | `SessionPersistence <#Create | Specifies the sticky session. | - | | Pool__response_SessionPersistence>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | String | Specifies the IP version supported by | - | | | the backend server group. | - | | | | - | | | - Shared load balancers: The default | - | | | value is **v4**. | - | | | | - | | | - Dedicated load balancers: The | - | | | value can be **dualstack**, | - | | | **v4**, or **v6**. | - | | | | - | | | When the protocol of the backend | - | | | server group is TCP or UDP, | - | | | **ip_version** is set to | - | | | **dualstack**, indicating that both | - | | | IPv4 and IPv6 are supported. | - | | | | - | | | When the protocol of the backend | - | | | server group is HTTP, **ip_version** | - | | | is set to **v4**. | - | | | | - | | | IPv6 is unsupported. Only **v4** is | - | | | returned. | - | | | | - | | | Default: **dualstack** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | slow_start | `SlowStart | Specifies whether to enable slow | - | | <#CreatePool__response_SlowStart>`__ | start. After you enable slow start, | - | | object | new backend servers added to the | - | | | backend server group are warmed up, | - | | | and the number of requests they can | - | | | receive increases linearly during the | - | | | configured slow start duration. | - | | | | - | | | This parameter can be used when the | - | | | protocol of the backend server group | - | | | is HTTP or HTTPS. An error will be | - | | | returned if the protocol is not HTTP | - | | | or HTTPS. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 9** ListenerRef - - ========= ====== ========================== - Parameter Type Description - ========= ====== ========================== - id String Specifies the listener ID. - ========= ====== ========================== - -.. table:: **Table 10** LoadBalancerRef - - ========= ====== =============================== - Parameter Type Description - ========= ====== =============================== - id String Specifies the load balancer ID. - ========= ====== =============================== - -.. table:: **Table 11** MemberRef - - ========= ====== ================================ - Parameter Type Description - ========= ====== ================================ - id String Specifies the backend server ID. - ========= ====== ================================ - -.. table:: **Table 12** SessionPersistence - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | cookie_name | String | Specifies the cookie name. | - | | | | - | | | This parameter will take effect only | - | | | when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | The value can contain only letters, | - | | | digits, hyphens (-), underscores (_), | - | | | and periods (.). | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the sticky session type. | - | | | The value can be **SOURCE_IP**, | - | | | **HTTP_COOKIE**, or **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, only | - | | | **SOURCE_IP** takes effect. | - | | | | - | | | - For dedicated load balancers, if | - | | | the protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can only be **HTTP_COOKIE**. | - | | | | - | | | - For shared load balancers, if the | - | | | protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can be **HTTP_COOKIE** or | - | | | **APP_COOKIE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | persistence_timeout | Integer | Specifies the stickiness duration, in | - | | | minutes. This parameter will not take | - | | | effect when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, the | - | | | value ranges from **1** to **60**, | - | | | and the default value is **1**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is HTTP or HTTPS, the | - | | | value ranges from **1** to | - | | | **1440**, and the default value is | - | | | **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 13** SlowStart - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | enable | Boolean | Specifies whether to enable slow | - | | | start. | - | | | | - | | | **true** indicates that this function | - | | | is enabled, and **false** indicates | - | | | this function is disabled. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | duration | Integer | Specifies the slow start duration, in | - | | | seconds. | - | | | | - | | | The value ranges from **30** to | - | | | **1200**, and the default value is | - | | | **30**. | - | | | | - | | | Minimum: **30** | - | | | | - | | | Maximum: **1200** | - | | | | - | | | Default: **30** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -Adding an HTTP backend server group - -.. code:: screen - - POST - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools - - { - "pool" : { - "name" : "My pool", - "lb_algorithm" : "LEAST_CONNECTIONS", - "listener_id" : "0b11747a-b139-492f-9692-2df0b1c87193", - "protocol" : "HTTP", - "slow_start" : { - "enable" : true, - "duration" : 50 - } - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 201** - -Successful request. - -.. code:: screen - - { - "pool" : { - "lb_algorithm" : "LEAST_CONNECTIONS", - "protocol" : "HTTP", - "description" : "", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "098b2f68-af1c-41a9-8efd-69958722af62" - } ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "listeners" : [ { - "id" : "0b11747a-b139-492f-9692-2df0b1c87193" - } ], - "members" : [ ], - "id" : "36ce7086-a496-4666-9064-5ba0e6840c75", - "name" : "My pool", - "ip_version" : "v4", - "slow_start" : { - "enable" : true, - "duration" : 50 - } - }, - "request_id" : "2d974978-0733-404d-a21a-b29204f4803a" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -201 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/DeleteCertificate.rst b/elb/api-ref/DeleteCertificate.rst deleted file mode 100644 index e8d6a5bc..00000000 --- a/elb/api-ref/DeleteCertificate.rst +++ /dev/null @@ -1,71 +0,0 @@ -Deleting a Certificate -====================== - -Function -^^^^^^^^ - -This API is used to delete an SSL certificate. - -Constraints -^^^^^^^^^^^ - -If the certificate is used by a listener, the certificate cannot be deleted, and the 409 Conflict error code will be displayed. - -URI -^^^ - -DELETE /v3/{project_id}/elb/certificates/{certificate_id} - -.. table:: **Table 1** Path parameters - - ============== ========= ====== =========================== - Parameter Mandatory Type Description - ============== ========= ====== =========================== - project_id Yes String Specifies the project ID. - certificate_id Yes String Specifies a certificate ID. - ============== ========= ====== =========================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -None - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - DELETE - https://{elb_endpoint}/v3/{project_id}/elb/certificates/{certificate_id} - -Example Responses -^^^^^^^^^^^^^^^^^ - -None - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -204 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/DeleteHealthMonitor.rst b/elb/api-ref/DeleteHealthMonitor.rst deleted file mode 100644 index 132babf2..00000000 --- a/elb/api-ref/DeleteHealthMonitor.rst +++ /dev/null @@ -1,72 +0,0 @@ -Deleting a Health Check -======================= - -Function -^^^^^^^^ - -This API is used to delete a health check. - -Constraints -^^^^^^^^^^^ - -The health check can be deleted only when the provisioning status of the associated load balancer is **ACTIVE**. - -URI -^^^ - -DELETE /v3/{project_id}/elb/healthmonitors/{healthmonitor_id} - -.. table:: **Table 1** Path parameters - - ================ ========= ====== ============================== - Parameter Mandatory Type Description - ================ ========= ====== ============================== - project_id Yes String Specifies the project ID. - healthmonitor_id Yes String Specifies the health check ID. - ================ ========= ====== ============================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -None - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - DELETE - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/healthmonitors/c2b210b2-60c4-449d-91e2-9e9ea1dd7441 - -Example Responses -^^^^^^^^^^^^^^^^^ - -None - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -204 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/DeleteL7Policy.rst b/elb/api-ref/DeleteL7Policy.rst deleted file mode 100644 index ff86ad9e..00000000 --- a/elb/api-ref/DeleteL7Policy.rst +++ /dev/null @@ -1,67 +0,0 @@ -Deleting a Forwarding Policy -============================ - -Function -^^^^^^^^ - -This API is used to delete a forwarding policy. - -URI -^^^ - -DELETE /v3/{project_id}/elb/l7policies/{l7policy_id} - -.. table:: **Table 1** Path parameters - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - project_id Yes String Specifies the project ID. - l7policy_id Yes String Specifies the forwarding policy ID. - =========== ========= ====== =================================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -None - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - DELETE - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies/cf4360fd-8631-41ff-a6f5-b72c35da74be - -Example Responses -^^^^^^^^^^^^^^^^^ - -None - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -204 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/DeleteL7Rule.rst b/elb/api-ref/DeleteL7Rule.rst deleted file mode 100644 index 0bdcf130..00000000 --- a/elb/api-ref/DeleteL7Rule.rst +++ /dev/null @@ -1,68 +0,0 @@ -Deleting a Forwarding Rule -========================== - -Function -^^^^^^^^ - -This API is used to delete a forwarding rule. - -URI -^^^ - -DELETE /v3/{project_id}/elb/l7policies/{l7policy_id}/rules/{l7rule_id} - -.. table:: **Table 1** Path parameters - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - project_id Yes String Specifies the project ID. - l7policy_id Yes String Specifies the forwarding policy ID. - l7rule_id Yes String Specifies the forwarding rule ID. - =========== ========= ====== =================================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -None - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - DELETE - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies/cf4360fd-8631-41ff-a6f5-b72c35da74be/rules/84f4fcae-9c15-4e19-a99f-72c0b08fd3d7 - -Example Responses -^^^^^^^^^^^^^^^^^ - -None - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -204 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/DeleteListener.rst b/elb/api-ref/DeleteListener.rst deleted file mode 100644 index a1cfa358..00000000 --- a/elb/api-ref/DeleteListener.rst +++ /dev/null @@ -1,71 +0,0 @@ -Deleting a Listener -=================== - -Function -^^^^^^^^ - -This API is used to delete a listener. - -Constraints -^^^^^^^^^^^ - -Before you delete a listener, delete the associated backend server group or disassociate the backend server group from the listener, and then delete all forwarding policies. - -URI -^^^ - -DELETE /v3/{project_id}/elb/listeners/{listener_id} - -.. table:: **Table 1** Path parameters - - =========== ========= ====== ========================== - Parameter Mandatory Type Description - =========== ========= ====== ========================== - project_id Yes String Specifies the project ID. - listener_id Yes String Specifies the listener ID. - =========== ========= ====== ========================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -None - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - DELETE - https://{elb_endpoint}/v3/{project_id}/elb/listeners/{listener_id} - -Example Responses -^^^^^^^^^^^^^^^^^ - -None - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -204 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/DeleteLoadBalancer.rst b/elb/api-ref/DeleteLoadBalancer.rst deleted file mode 100644 index 66cf5675..00000000 --- a/elb/api-ref/DeleteLoadBalancer.rst +++ /dev/null @@ -1,72 +0,0 @@ -Deleting a Load Balancer -======================== - -Function -^^^^^^^^ - -This API is used to delete a load balancer. - -Constraints -^^^^^^^^^^^ - -All listeners added to the load balancer must be deleted before the load balancer is deleted. - -URI -^^^ - -DELETE /v3/{project_id}/elb/loadbalancers/{loadbalancer_id} - -.. table:: **Table 1** Path parameters - - =============== ========= ====== =============================== - Parameter Mandatory Type Description - =============== ========= ====== =============================== - project_id Yes String Specifies the project ID. - loadbalancer_id Yes String Specifies the load balancer ID. - =============== ========= ====== =============================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -None - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - DELETE - - https://{elb_endpoint}/v3/{project_id}/elb/loadbalancers/{loadbalancer_id} - -Example Responses -^^^^^^^^^^^^^^^^^ - -None - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -204 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/DeleteMember.rst b/elb/api-ref/DeleteMember.rst deleted file mode 100644 index 0a9e2d4a..00000000 --- a/elb/api-ref/DeleteMember.rst +++ /dev/null @@ -1,77 +0,0 @@ -Removing a Backend Server -========================= - -Function -^^^^^^^^ - -This API is used to remove a backend server. - -Constraints -^^^^^^^^^^^ - -When you remove backend servers, note the following: - -- After you remove a backend server, new connections to this server will not be established. However, persistent connections that have been established will be maintained. - -- The last backend server cannot be removed. If it is removed, 403 will be returned. - -URI -^^^ - -DELETE /v3/{project_id}/elb/pools/{pool_id}/members/{member_id} - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ============================================= - Parameter Mandatory Type Description - ========== ========= ====== ============================================= - project_id Yes String Specifies the project ID. - pool_id Yes String Specifies the ID of the backend server group. - member_id Yes String Specifies the backend server ID. - ========== ========= ====== ============================================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -None - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - DELETE - - https://{elb_endpoint}/v3/9a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75/members/1923923e-fe8a-484f-bdbc-e11559b1f48f - -Example Responses -^^^^^^^^^^^^^^^^^ - -None - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -204 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/DeletePool.rst b/elb/api-ref/DeletePool.rst deleted file mode 100644 index 5030f676..00000000 --- a/elb/api-ref/DeletePool.rst +++ /dev/null @@ -1,72 +0,0 @@ -Deleting a Backend Server Group -=============================== - -Function -^^^^^^^^ - -This API is used to delete a backend server group. - -Constraints -^^^^^^^^^^^ - -A backend server group can be deleted only after all servers are removed from the group, the health check configured for the group is deleted, and the group has no forwarding policies associated. - -URI -^^^ - -DELETE /v3/{project_id}/elb/pools/{pool_id} - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ============================================= - Parameter Mandatory Type Description - ========== ========= ====== ============================================= - project_id Yes String Specifies the project ID. - pool_id Yes String Specifies the ID of the backend server group. - ========== ========= ====== ============================================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -None - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - DELETE - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75 - -Example Responses -^^^^^^^^^^^^^^^^^ - -None - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -204 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/ListAvailabilityZones.rst b/elb/api-ref/ListAvailabilityZones.rst deleted file mode 100644 index f6517d55..00000000 --- a/elb/api-ref/ListAvailabilityZones.rst +++ /dev/null @@ -1,107 +0,0 @@ -Querying AZs -============ - -Function -^^^^^^^^ - -This API is used to query all available AZs when you create a dedicated load balancer. - -One set of AZs is returned. When you create a dedicated load balancer, you can select one or more AZs only in the set. - -URI -^^^ - -GET /v3/{project_id}/elb/availability-zones - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +--------------------+-----------------------------------------------+-----------------------------------------------+ - | Parameter | Type | Description | - +====================+===============================================+===============================================+ - | availability_zones | Array`__>> | load balancer creation. | - +--------------------+-----------------------------------------------+-----------------------------------------------+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +--------------------+-----------------------------------------------+-----------------------------------------------+ - -.. table:: **Table 4** AvailabilityZone - - ========= ====== ========================================================== - Parameter Type Description - ========= ====== ========================================================== - state String Specifies the AZ status. The value can only be **ACTIVE**. - code String Specifies the AZ code. - ========= ====== ========================================================== - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{ELB_Endpoint}/v3/060576782980d5762f9ec014dd2f1148/elb/availability-zones - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "availability_zones" : [ [ { - "state" : "ACTIVE", - "code" : "az1" - }, { - "state" : "ACTIVE", - "code" : "az2" - }, { - "state" : "ACTIVE", - "code" : "az3" - } ] ], - "request_id" : "0d799435-259e-459f-b2bc-0beee06f6a77" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `AZ `__ diff --git a/elb/api-ref/ListCertificates.rst b/elb/api-ref/ListCertificates.rst deleted file mode 100644 index b1d7d7cd..00000000 --- a/elb/api-ref/ListCertificates.rst +++ /dev/null @@ -1,364 +0,0 @@ -Querying Certificates -===================== - -Function -^^^^^^^^ - -This API is used to query all SSL certificates. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. - -Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v3/{project_id}/elb/certificates - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -.. table:: **Table 2** Query parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | last record on the previous | - | | | | page. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter must be | - | | | | used together with | - | | | | **limit**. | - | | | | | - | | | | - If this parameter is not | - | | | | specified, the first | - | | | | page will be queried. | - | | | | | - | | | | - This parameter cannot be | - | | | | left blank or set to an | - | | | | invalid ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | records on each page. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **2000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. This | - | | | | parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | Array | Specifies a certificate ID. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *id=xxx&id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | Array | Specifies the certificate | - | | | | name. | - | | | | | - | | | | Multiple names can be | - | | | | queried in the format of | - | | | | *name=xxx&name=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | Array | Provides supplementary | - | | | | information about the | - | | | | certificate. | - | | | | | - | | | | Multiple descriptions can | - | | | | be queried in the format of | - | | | | *descri | - | | | | ption=xxx&description=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the certificate. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain | No | Array | Specifies the domain names | - | | | | used by the server | - | | | | certificate. This parameter | - | | | | is available only when | - | | | | **type** is set to | - | | | | **server**. | - | | | | | - | | | | Multiple domain names can | - | | | | be queried in the format of | - | | | | *domain=xxx&domain=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | Array | Specifies the certificate | - | | | | type. | - | | | | | - | | | | The value can be **server** | - | | | | or **client**. **server** | - | | | | indicates server | - | | | | certificates, and | - | | | | **client** indicates CA | - | | | | certificates. | - | | | | | - | | | | Multiple types can be | - | | | | queried in the format of | - | | | | *type=xxx&type=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 3** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 4** Response body parameters - - +--------------+--------------------------------------------------+--------------------------------------------------+ - | Parameter | Type | Description | - +==============+==================================================+==================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +--------------+--------------------------------------------------+--------------------------------------------------+ - | page_info | `Pa | Certificate pagination information | - | | geInfo <#ListCertificates__response_PageInfo>`__ | | - | | object | | - +--------------+--------------------------------------------------+--------------------------------------------------+ - | certificates | Array of | Lists the certificates. | - | | `CertificateInfo | | - | | <#ListCertificates__response_CertificateInfo>`__ | | - | | objects | | - +--------------+--------------------------------------------------+--------------------------------------------------+ - -.. table:: **Table 5** PageInfo - - +-----------------+---------+----------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=========+========================================================================================+ - | previous_marker | String | Specifies the ID of the first record in the pagination query result. This parameter | - | | | will not be returned if no query result is returned. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | next_marker | String | Marks the start record on the next page in the pagination query result. This parameter | - | | | will not be returned if there is no next page. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | current_count | Integer | Specifies the number of records. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - -.. table:: **Table 6** CertificateInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the certificate. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate | String | Specifies the private key of the | - | | | certificate. The value must be PEM | - | | | encoded. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the certificate. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain | String | Specifies the domain names used by | - | | | the server certificate. | - | | | | - | | | - This parameter will take effect | - | | | only when **type** is set to | - | | | **server**, and its default value | - | | | is **""**. | - | | | | - | | | - This parameter will not take | - | | | effect even if it is passed and | - | | | **type** is set to **client**. | - | | | However, domain names will still | - | | | be verified. | - | | | | - | | | Note: | - | | | | - | | | - The value can contain 0 to 1024 | - | | | characters and consists of | - | | | multiple common domain names or | - | | | wildcard domain names separated by | - | | | commas. A maximum of 30 domain | - | | | names are allowed. | - | | | | - | | | - A common domain name consists of | - | | | several labels separated by | - | | | periods (.). Each label can | - | | | contain a maximum of 63 | - | | | characters, including letters, | - | | | digits, and hyphens (-), and must | - | | | start and end with a letter or | - | | | digit. Example: www.test.com | - | | | | - | | | - A wildcard domain name is a domain | - | | | name starts with an asterisk (*). | - | | | Example: \*.test.com | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies a certificate ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the certificate name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | private_key | String | Specifies the private key of the | - | | | server certificate. The value must be | - | | | PEM encoded. | - | | | | - | | | - This parameter will be ignored if | - | | | **type** is set to **client**. A | - | | | CA server can still be created and | - | | | used normally. This parameter will | - | | | be left blank even if you enter a | - | | | private key that is not PEM | - | | | encoded. | - | | | | - | | | - This parameter is valid and | - | | | mandatory only when **type** is | - | | | set to **server**. If you enter an | - | | | invalid private key, an error is | - | | | returned. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the certificate type. The | - | | | value can be **server** or | - | | | **client**. **server** indicates | - | | | server certificates, and **client** | - | | | indicates CA certificates. The | - | | | default value is **server**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the | - | | | certificate was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the | - | | | certificate was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expire_time | String | Specifies the time when the | - | | | certificate expires. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET https://{elb_endpoint}/v3/{project_id}/elb/certificates - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "certificates" : [ { - "id" : "5494a835d88f40ff940554992f2f04d4", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "name" : "https_certificatekkkk", - "type" : "server", - "description" : "description for certificatehhhh", - "private_key" : "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "certificate" : "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----", - "admin_state_up" : true, - "created_at" : "2019-04-21T18:59:43Z", - "updated_at" : "2019-04-21T18:59:43Z", - "expire_time" : "2045-11-17T13:25:47Z" - }, { - "id" : "7875ccb4c6b44cdb90ab2ab89892ab71", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "name" : "https_certificatekkkk", - "type" : "client", - "domain" : "sda.com", - "description" : "description for certificatehhhh", - "private_key" : "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "certificate" : "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----", - "admin_state_up" : true, - "created_at" : "2018-10-29T20:16:17Z", - "updated_at" : "2019-04-06T21:33:24Z", - "expire_time" : "2045-11-17T13:25:47Z" - }, { - "id" : "7f41c96223d34ebaa3c8e836b6625ec0", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "name" : "asdf", - "type" : "server", - "domain" : "sda.com", - "description" : "", - "private_key" : "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "certificate" : "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----", - "admin_state_up" : true, - "created_at" : "2019-03-31T22:23:51Z", - "updated_at" : "2019-03-31T23:26:49Z", - "expire_time" : "2045-11-17T13:25:47Z" - } ], - "page_info" : { - "previous_marker" : "5494a835d88f40ff940554992f2f04d4", - "current_count" : 3 - }, - "request_id" : "a27e7ae6-d901-4ec2-8e66-b8a1413819ad" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/ListFlavors.rst b/elb/api-ref/ListFlavors.rst deleted file mode 100644 index dca163f2..00000000 --- a/elb/api-ref/ListFlavors.rst +++ /dev/null @@ -1,279 +0,0 @@ -Querying Flavors -================ - -Function -^^^^^^^^ - -This API is used to query all load balancer flavors that are available to a specific user in a specific region. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. - -Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v3/{project_id}/elb/flavors - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -.. table:: **Table 2** Query parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | last record on the previous | - | | | | page. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter must be | - | | | | used together with | - | | | | **limit**. | - | | | | | - | | | | - If this parameter is not | - | | | | specified, the first | - | | | | page will be queried. | - | | | | | - | | | | - This parameter cannot be | - | | | | left blank or set to an | - | | | | invalid ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | records on each page. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **2000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**, and the | - | | | | default value is **false**. | - | | | | | - | | | | The last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | Array | Specifies the flavor ID. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *id=xxx&id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | Array | Specifies the flavor name. | - | | | | | - | | | | Multiple names can be | - | | | | queried in the format of | - | | | | *name=xxx&name=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | Array | Specifies the flavor type. | - | | | | Flavors can be filtered by | - | | | | type. | - | | | | | - | | | | Multiple types can be | - | | | | queried in the format of | - | | | | *type=xxx&type=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | shared | No | Boolean | Specifies whether the | - | | | | flavor is available to all | - | | | | users. | - | | | | | - | | | | - **true** indicates that | - | | | | the flavor is available | - | | | | to all users. | - | | | | | - | | | | - **false** indicates that | - | | | | the flavor is available | - | | | | only to a specific user. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 3** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 4** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | flavors | Array of | Lists the flavors. | - | | `Flavor <#ListFlavors__response_Flavor>`__ | | - | | objects | | - +------------+---------------------------------------------------+---------------------------------------------------+ - | page_info | `PageInfo <#ListFlavors__response_PageInfo>`__ | Shows pagination information about the load | - | | object | balancer flavors. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 5** Flavor - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the flavor ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | info | `FlavorInfo < | Specifies the flavor details. | - | | #ListFlavors__response_FlavorInfo>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the flavor name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | shared | Boolean | Specifies whether the flavor is | - | | | available to all users. | - | | | | - | | | - **true** indicates that the flavor | - | | | is available to all users. | - | | | | - | | | - **false** indicates that the | - | | | flavor is available only to a | - | | | specific user. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the flavor type. Flavors | - | | | can be filtered by type. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** FlavorInfo - - ========== ======= =================================================================== - Parameter Type Description - ========== ======= =================================================================== - connection Integer Specifies the maximum concurrent connections. - cps Integer Specifies the number of new connections per second. - qps Integer Specifies the number of requests per second at Layer 7. - bandwidth Integer Specifies the inbound and outbound bandwidth in the unit of Kbit/s. - ========== ======= =================================================================== - -.. table:: **Table 7** PageInfo - - +-----------------+---------+----------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=========+========================================================================================+ - | previous_marker | String | Specifies the ID of the first record in the pagination query result. This parameter | - | | | will not be returned if no query result is returned. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | next_marker | String | Marks the start record on the next page in the pagination query result. This parameter | - | | | will not be returned if there is no next page. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | current_count | Integer | Specifies the number of records. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{ELB_Endpoint}/v3/{060576782980d5762f9ec014dd2f1148}/elb/flavors?limit=2&marker=179568ef-5ba4-4ca0-8c5e-5d581db779b1 - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "flavors" : [ { - "shared" : true, - "project_id" : "573d73c9f90e48d0bddfa0eb202b25c2", - "info" : { - "connection" : 1000000, - "cps" : 80000, - "qps" : 50000 - }, - "id" : "b2c5d750-5ea8-42f8-a6a8-8b0a1441168a", - "name" : "L7_flavor.elb.s2.medium", - "type" : "L7" - }, { - "shared" : true, - "project_id" : "573d73c9f90e48d0bddfa0eb202b25c2", - "info" : { - "connection" : 6000, - "cps" : 3000 - }, - "id" : "becf3beb-7653-45ab-a025-961597a901bc", - "name" : "L4_flavor.elb.s2.small", - "type" : "L4" - }, { - "shared" : true, - "project_id" : "3fb9975312cc43808cb274e2ac25d30c", - "info" : { - "connection" : 6000, - "cps" : 3000, - "qps" : 1000 - }, - "id" : "fb9394ab-d63d-4b4d-8ea0-b6dc974accc6", - "name" : "L7_flavor.elb.s1.small", - "type" : "L7" - } ], - "page_info" : { - "next_marker" : "fb9394ab-d63d-4b4d-8ea0-b6dc974accc6", - "previous_marker" : "b2c5d750-5ea8-42f8-a6a8-8b0a1441168a", - "current_count" : 3 - }, - "request_id" : "07b7cabe-bfb5-4809-8c28-5a90a961a707" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Load Balancer Flavor `__ diff --git a/elb/api-ref/ListHealthMonitors.rst b/elb/api-ref/ListHealthMonitors.rst deleted file mode 100644 index 88726a1f..00000000 --- a/elb/api-ref/ListHealthMonitors.rst +++ /dev/null @@ -1,549 +0,0 @@ -Querying Health Checks -====================== - -Function -^^^^^^^^ - -This API is used to query all health checks. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. - -Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v3/{project_id}/elb/healthmonitors - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -.. table:: **Table 2** Query parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | last record on the previous | - | | | | page. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter must be | - | | | | used together with | - | | | | **limit**. | - | | | | | - | | | | - If this parameter is not | - | | | | specified, the first | - | | | | page will be queried. | - | | | | | - | | | | - This parameter cannot be | - | | | | left blank or set to an | - | | | | invalid ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | records on each page. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **2000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**, and the | - | | | | default value is **false**. | - | | | | | - | | | | The last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | Array | Specifies the health check | - | | | | ID. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *id=xxx&id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | monitor_port | No | Array | Specifies the port used for | - | | | | the health check. | - | | | | | - | | | | Multiple ports can be | - | | | | queried in the format of | - | | | | *monitor_ | - | | | | port=xxx&monitor_port=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain_name | No | Array | Specifies the domain name | - | | | | to which HTTP requests are | - | | | | sent during the health | - | | | | check. | - | | | | | - | | | | This parameter will take | - | | | | effect only when **type** | - | | | | is set to **HTTP**. | - | | | | | - | | | | The value is left blank by | - | | | | default, indicating that | - | | | | the virtual IP address | - | | | | bound to the load balancer | - | | | | is used as the destination | - | | | | of HTTP requests. | - | | | | | - | | | | The value can contain only | - | | | | digits, letters, hyphens | - | | | | (-), and periods (.) and | - | | | | must start with a digit or | - | | | | letter. | - | | | | | - | | | | Multiple domain names can | - | | | | be queried in the format of | - | | | | *domain | - | | | | _name=xxx&domain_name=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | Array | Specifies the health check | - | | | | name. | - | | | | | - | | | | Multiple names can be | - | | | | queried in the format of | - | | | | *name=xxx&name=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | delay | No | Array | Specifies the interval | - | | | | between health checks, in | - | | | | seconds. | - | | | | | - | | | | Multiple intervals can be | - | | | | queried in the format of | - | | | | *delay=xxx&delay=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries | No | Array | Specifies the maximum | - | | | | number of retries. | - | | | | | - | | | | Multiple values can be | - | | | | queried in the format of | - | | | | *max_re | - | | | | tries=xxx&max_retries=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the health check. | - | | | | | - | | | | Although this parameter can | - | | | | be used in the APIs for | - | | | | creating and updating | - | | | | health checks, its actual | - | | | | value depends on whether | - | | | | cloud servers that serve as | - | | | | the backend servers exist. | - | | | | If cloud servers exist, the | - | | | | value is **true**. | - | | | | Otherwise, the value is | - | | | | **false**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries_down | No | Array | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **ONLINE** to | - | | | | **OFFLINE**. The value | - | | | | ranges from **1** to | - | | | | **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | timeout | No | Integer | Specifies the maximum time | - | | | | required for waiting for a | - | | | | response from the health | - | | | | check, in seconds. It is | - | | | | recommended that you set | - | | | | the value less than that of | - | | | | parameter **delay**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | Array | Specifies the health check | - | | | | protocol. | - | | | | | - | | | | Multiple protocols can be | - | | | | queried in the format of | - | | | | *type=xxx&type=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | expected_codes | No | Array | Specifies the expected HTTP | - | | | | status code. This parameter | - | | | | will take effect only when | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | The value options are as | - | | | | follows: | - | | | | | - | | | | - A specific value, for | - | | | | example, 200 | - | | | | | - | | | | - A list of values that | - | | | | are separated with | - | | | | commas (,), for example, | - | | | | 200, 202 | - | | | | | - | | | | - A value range, for | - | | | | example, 200-204 | - | | | | | - | | | | Multiple status codes can | - | | | | be queried in the format of | - | | | | *expected_cod | - | | | | es=xxx&expected_codes=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | url_path | No | Array | Specifies the HTTP request | - | | | | path for the health check. | - | | | | The value must start with a | - | | | | slash (/), and the default | - | | | | value is /. This parameter | - | | | | is available only when | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | Multiple paths can be | - | | | | queried in the format of | - | | | | * | - | | | | url_path=xxx&url_path=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http_method | No | Array | Specifies the HTTP method. | - | | | | This parameter will take | - | | | | effect only when **type** | - | | | | is set to **HTTP**. | - | | | | | - | | | | The value can be **GET**, | - | | | | **HEAD**, **POST**, | - | | | | **PUT**, **DELETE**, | - | | | | **TRACE**, **OPTIONS**, | - | | | | **CONNECT**, or **PATCH**. | - | | | | | - | | | | Multiple methods can be | - | | | | queried in the format of | - | | | | *http_m | - | | | | ethod=xxx&http_method=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | Array | Specifies the enterprise | - | | | | project ID. | - | | | | | - | | | | - If this parameter is not | - | | | | passed, resources in the | - | | | | default enterprise | - | | | | project are queried, and | - | | | | authentication is | - | | | | performed based on the | - | | | | default enterprise | - | | | | project. | - | | | | | - | | | | - If this parameter is | - | | | | passed, its value can be | - | | | | the ID of an existing | - | | | | enterprise project or | - | | | | **all_granted_eps**. | - | | | | | - | | | | If the value is a specific | - | | | | ID, resources in the | - | | | | specific enterprise project | - | | | | are required. If the value | - | | | | is **all_granted_eps**, | - | | | | resources in all enterprise | - | | | | projects are queried. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *enterprise_project_id=xxx& | - | | | | enterprise_project_id=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 3** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 4** Response body parameters - - +----------------+-------------------------------------------------+-------------------------------------------------+ - | Parameter | Type | Description | - +================+=================================================+=================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +----------------+-------------------------------------------------+-------------------------------------------------+ - | page_info | `PageI | Shows pagination information. | - | | nfo <#ListHealthMonitors__response_PageInfo>`__ | | - | | object | | - +----------------+-------------------------------------------------+-------------------------------------------------+ - | healthmonitors | Array of | Specifies the health check. | - | | `HealthMonitor < | | - | | #ListHealthMonitors__response_HealthMonitor>`__ | | - | | objects | | - +----------------+-------------------------------------------------+-------------------------------------------------+ - -.. table:: **Table 5** PageInfo - - +-----------------+---------+----------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=========+========================================================================================+ - | previous_marker | String | Specifies the ID of the first record in the pagination query result. This parameter | - | | | will not be returned if no query result is returned. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | next_marker | String | Marks the start record on the next page in the pagination query result. This parameter | - | | | will not be returned if there is no next page. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | current_count | Integer | Specifies the number of records. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - -.. table:: **Table 6** HealthMonitor - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the health check. Two value | - | | | options are available. **true** | - | | | indicates that the health check is | - | | | enabled, and **false** indicates that | - | | | the health check is disabled. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | delay | Integer | Specifies the interval between health | - | | | checks, in seconds. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **50** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain_name | String | Specifies the domain name that HTTP | - | | | requests are sent to during the | - | | | health check. | - | | | | - | | | This parameter is available only when | - | | | **type** is set to **HTTP**. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the virtual IP | - | | | address of the load balancer is used | - | | | as the destination address of HTTP | - | | | requests. | - | | | | - | | | The value can contain only digits, | - | | | letters, hyphens (-), and periods (.) | - | | | and must start with a digit or | - | | | letter. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expected_codes | String | Specifies the expected HTTP status | - | | | code. This parameter will take effect | - | | | only when **type** is set to | - | | | **HTTP**. | - | | | | - | | | The value options are as follows: | - | | | | - | | | - A specific value, for example, 200 | - | | | | - | | | - A list of values that are | - | | | separated with commas (,), for | - | | | example, 200, 202 | - | | | | - | | | - A value range, for example, | - | | | 200-204 | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **200** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http_method | String | Specifies the HTTP method. This | - | | | parameter will take effect only when | - | | | **type** is set to **HTTP**. | - | | | | - | | | The value can be **GET**, **HEAD**, | - | | | **POST**, **PUT**, **DELETE**, | - | | | **TRACE**, **OPTIONS**, **CONNECT**, | - | | | or **PATCH**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **GET** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **OFFLINE** to **ONLINE**. The | - | | | value ranges from **1** to **10**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **10** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries_down | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **ONLINE** to **OFFLINE**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **10** | - | | | | - | | | Default: **3** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | monitor_port | Integer | Specifies the port used for the | - | | | health check. If this parameter is | - | | | left blank, the port of the backend | - | | | server group will be used by default. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Lists the IDs of backend server | - | | `PoolRef <#Lis | groups for which the health check is | - | | tHealthMonitors__response_PoolRef>`__ | configured. | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | timeout | Integer | Specifies the maximum time required | - | | | for waiting for a response from the | - | | | health check, in seconds. It is | - | | | recommended that you set the value | - | | | less than that of parameter | - | | | **delay**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **50** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the health check protocol. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | url_path | String | Specifies the HTTP request path for | - | | | the health check. The value must | - | | | start with a slash (/), and the | - | | | default value is /. This parameter is | - | | | available only when **type** is set | - | | | to **HTTP**. | - | | | | - | | | Default: **/** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** PoolRef - - ========= ====== ============================================= - Parameter Type Description - ========= ====== ============================================= - id String Specifies the ID of the backend server group. - ========= ====== ============================================= - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/healthmonitors - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "healthmonitors" : [ { - "id" : "c2b210b2-60c4-449d-91e2-9e9ea1dd7441", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "name" : "My Healthmonitor update", - "delay" : 10, - "max_retries" : 10, - "pools" : [ { - "id" : "488acc50-6bcf-423d-8f0a-0f4184f5b8a0" - } ], - "admin_state_up" : true, - "timeout" : 30, - "type" : "HTTP", - "expected_codes" : "200", - "url_path" : "/", - "http_method" : "GET" - }, { - "id" : "cda1af03-0660-4fd2-8edf-e38c79846e08", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "domain_name" : "akik..un.com", - "name" : "lijunqiu", - "delay" : 50, - "max_retries" : 1, - "pools" : [ { - "id" : "ae6e45ba-be84-4074-8ac6-bc4a56484809" - } ], - "admin_state_up" : false, - "timeout" : 3, - "type" : "UDP_CONNECT", - "url_path" : "/world" - } ], - "page_info" : { - "next_marker" : "cda1af03-0660-4fd2-8edf-e38c79846e08", - "previous_marker" : "c2b210b2-60c4-449d-91e2-9e9ea1dd7441", - "current_count" : 2 - }, - "request_id" : "814bc40e-8b0a-4ced-b8e5-f136c3e1df6a" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/ListL7Policies.rst b/elb/api-ref/ListL7Policies.rst deleted file mode 100644 index 11f98ebc..00000000 --- a/elb/api-ref/ListL7Policies.rst +++ /dev/null @@ -1,806 +0,0 @@ -Querying Forwarding Policies -============================ - -Function -^^^^^^^^ - -This API is used to query all forwarding policies. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. - -Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v3/{project_id}/elb/l7policies - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -.. table:: **Table 2** Query parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | last record on the previous | - | | | | page. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter must be | - | | | | used together with | - | | | | **limit**. | - | | | | | - | | | | - If this parameter is not | - | | | | specified, the first | - | | | | page will be queried. | - | | | | | - | | | | - This parameter cannot be | - | | | | left blank or set to an | - | | | | invalid ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | records on each page. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **2000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**, and the | - | | | | default value is **false**. | - | | | | | - | | | | The last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | Array | Specifies the enterprise | - | | | | project ID. | - | | | | | - | | | | - If this parameter is not | - | | | | passed, resources in the | - | | | | default enterprise | - | | | | project are queried, and | - | | | | authentication is | - | | | | performed based on the | - | | | | default enterprise | - | | | | project. | - | | | | | - | | | | - If this parameter is | - | | | | passed, its value can be | - | | | | the ID of an existing | - | | | | enterprise project or | - | | | | **all_granted_eps**. | - | | | | | - | | | | If the value is a specific | - | | | | ID, resources in the | - | | | | specific enterprise project | - | | | | are required. If the value | - | | | | is **all_granted_eps**, | - | | | | resources in all enterprise | - | | | | projects are queried. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *enterprise_project_id=xxx& | - | | | | enterprise_project_id=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | Array | Specifies the forwarding | - | | | | policy ID. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *id=xxx&id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | Array | Specifies the forwarding | - | | | | policy name. | - | | | | | - | | | | Multiple names can be | - | | | | queried in the format of | - | | | | *name=xxx&name=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | Array | Provides supplementary | - | | | | information about the | - | | | | forwarding policy. | - | | | | | - | | | | Multiple descriptions can | - | | | | be queried in the format of | - | | | | *descri | - | | | | ption=xxx&description=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding policy. The | - | | | | default value is **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | No | Array | Specifies the ID of the | - | | | | listener to which the | - | | | | forwarding policy is added. | - | | | | | - | | | | - If **action** is set to | - | | | | **REDIRECT_TO_POOL**, | - | | | | the forwarding policy | - | | | | can be added to an HTTP | - | | | | or HTTPS listener. | - | | | | | - | | | | - If **action** is set to | - | | | | | - | | | | **REDIRECT_TO_LISTENER**, | - | | | | the forwarding policy | - | | | | can be added to an HTTP | - | | | | listener. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *listen | - | | | | er_id=xxx&listener_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | position | No | Array | Specifies the forwarding | - | | | | policy priority. | - | | | | | - | | | | Multiple priorities can be | - | | | | queried in the format of | - | | | | * | - | | | | position=xxx&position=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | action | No | Array | Specifies where requests | - | | | | will be forwarded. The | - | | | | value can be one of the | - | | | | following: | - | | | | | - | | | | - **REDIRECT_TO_POOL**: | - | | | | Requests will be | - | | | | forwarded to another | - | | | | backend server group. | - | | | | | - | | | | - | - | | | | **REDIRECT_TO_LISTENER**: | - | | | | Requests will be | - | | | | redirected to an HTTPS | - | | | | listener. | - | | | | | - | | | | Multiple values can be | - | | | | queried in the format of | - | | | | *action=xxx&action=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_url | No | Array | Specifies the URL to which | - | | | | requests are forwarded. | - | | | | | - | | | | Multiple URLs can be | - | | | | queried in the format of | - | | | | *redirect | - | | | | _url=xxx&redirect_url=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_pool_id | No | Array | Specifies the ID of the | - | | | | backend server group to | - | | | | which requests are | - | | | | forwarded. This parameter | - | | | | will take effect and is | - | | | | mandatory when **action** | - | | | | is set to | - | | | | **REDIRECT_TO_POOL**. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *redirect_pool_id | - | | | | =xxx&redirect_pool_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_listener_id | No | Array | Specifies the ID of the | - | | | | listener to which requests | - | | | | are redirected. This | - | | | | parameter will take effect | - | | | | and is mandatory when | - | | | | **action** is set to | - | | | | **REDIRECT_TO_LISTENER**. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *redirect_listener_id=xxx | - | | | | &redirect_listener_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | provisioning_status | No | Array | Specifies the provisioning | - | | | | status of the forwarding | - | | | | policy. The value can only | - | | | | be **ACTIVE**, indicating | - | | | | that the forwarding policy | - | | | | is provisioned | - | | | | successfully. | - | | | | | - | | | | Multiple provisioning | - | | | | statuses can be queried in | - | | | | the format of | - | | | | *provisioning_status=xx | - | | | | x&provisioning_status=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | display_all_rules | No | Boolean | Specifies whether to | - | | | | display all information | - | | | | about the forwarding rule | - | | | | in the forwarding policy. | - | | | | The value can be **true** | - | | | | or **false**. | - | | | | | - | | | | - **true** indicates all | - | | | | information about the | - | | | | forwarding rule is | - | | | | displayed. | - | | | | | - | | | | - **false** indicates that | - | | | | only the rule ID is | - | | | | displayed. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | priority | No | Array | Specifies the forwarding | - | | | | policy priority. A smaller | - | | | | value indicates a higher | - | | | | priority. | - | | | | | - | | | | Multiple priorities can be | - | | | | queried in the format of | - | | | | * | - | | | | position=xxx&position=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 3** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 4** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | page_info | `PageInfo <#ListL7Policies__response_PageInfo>`__ | Shows pagination information. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - | l7policies | Array of | Lists the forwarding policies. | - | | `L7Policy <#ListL7Policies__response_L7Policy>`__ | | - | | objects | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 5** PageInfo - - +-----------------+---------+----------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=========+========================================================================================+ - | previous_marker | String | Specifies the ID of the first record in the pagination query result. This parameter | - | | | will not be returned if no query result is returned. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | next_marker | String | Marks the start record on the next page in the pagination query result. This parameter | - | | | will not be returned if there is no next page. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | current_count | Integer | Specifies the number of records. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - -.. table:: **Table 6** L7Policy - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | action | String | Specifies where requests will be | - | | | forwarded. The value can be one of | - | | | the following: | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests | - | | | will be forwarded to another | - | | | backend server group. | - | | | | - | | | - **REDIRECT_TO_LISTENER**: Requests | - | | | will be redirected to an HTTPS | - | | | listener. | - | | | | - | | | **REDIRECT_TO_LISTENER** has the | - | | | highest priority. If requests are to | - | | | be redirected to an HTTPS listener, | - | | | other forwarding policies of the | - | | | listener will become invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding policy. The default | - | | | value is **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the forwarding policy is added. | - | | | | - | | | - If **action** is set to | - | | | **REDIRECT_TO_POOL**, the | - | | | forwarding policy can be added to | - | | | an HTTP or HTTPS listener. | - | | | | - | | | - If **action** is set to | - | | | **REDIRECT_TO_LISTENER**, the | - | | | forwarding policy can be added to | - | | | an HTTP listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | position | Integer | Specifies the forwarding policy | - | | | priority. This parameter cannot be | - | | | updated. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **100** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID of the | - | | | forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding policy. | - | | | | - | | | The value can only be **ACTIVE**. | - | | | | - | | | Default: **ACTIVE** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_listener_id | String | Specifies the ID of the listener that | - | | | requests are redirected to. | - | | | | - | | | This parameter is valid and mandatory | - | | | only when **action** is set to | - | | | **REDIRECT_TO_LISTENER**. | - | | | | - | | | Only HTTPS listeners are supported, | - | | | and the listener cannot be any | - | | | listener added to other load | - | | | balancers. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_pool_id | String | Specifies the ID of the backend | - | | | server group that requests are | - | | | forwarded to. | - | | | | - | | | This parameter is valid and mandatory | - | | | only when **action** is set to | - | | | **REDIRECT_TO_POOL**. | - | | | | - | | | The specified backend server group | - | | | cannot be the default one associated | - | | | with the listener, or any backend | - | | | server group associated with the | - | | | forwarding policies of other | - | | | listeners. | - | | | | - | | | This parameter cannot be specified | - | | | when **action** is set to | - | | | **REDIRECT_TO_LISTENER**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url | String | Specifies the URL to which requests | - | | | are forwarded. | - | | | | - | | | Format: | - | | | *protocol://host:port/path?query* | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array of | Lists the forwarding rules in the | - | | `RuleRef < | forwarding policy. | - | | #ListL7Policies__response_RuleRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url_config | `RedirectUrlConfig <#ListL7Pol | Specifies the URL to which requests | - | | icies__response_RedirectUrlConfig>`__ | are forwarded. | - | | object | | - | | | For shared load balancers, this | - | | | parameter is not supported. If it is | - | | | passed, an error will be returned. | - | | | | - | | | For dedicated load balancers, this | - | | | parameter will take effect only when | - | | | advanced forwarding is enabled | - | | | (**enhance_l7policy_enable** is set | - | | | to **true**). If it is passed when | - | | | **enhance_l7policy_enable** is set to | - | | | **false**, an error will be returned. | - | | | | - | | | Format: | - | | | *protocol://host:port/path?query* | - | | | | - | | | At least one of the four parameters | - | | | (**protocol**, **host**, **port**, | - | | | and **path**) must be passed, or | - | | | their values cannot be set to | - | | | **${xxx}** at the same time. | - | | | (**${xxx}** indicates that the value | - | | | in the request will be inherited. For | - | | | example, **${host}** indicates the | - | | | host in the URL to be redirected.) | - | | | | - | | | The values of **protocol** and | - | | | **port** cannot be the same as those | - | | | of the associated listener, and | - | | | either **host** or **path** must be | - | | | passed or their values cannot be | - | | | **${xxx}** at the same time. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | fixed_response_config | `FixtedResponseConfig <#ListL7Polici | Specifies the configuration of the | - | | es__response_FixtedResponseConfig>`__ | page that will be returned. This | - | | object | parameter will take effect when | - | | | **enhance_l7policy_enable** is set to | - | | | **true**. If this parameter is passed | - | | | and **enhance_l7policy_enable** is | - | | | set to **false**, an error will be | - | | | returned. For shared load balancers, | - | | | this parameter is not supported. If | - | | | it is passed, an error will be | - | | | returned. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | priority | Integer | Specifies the forwarding policy | - | | | priority. This parameter is available | - | | | only for dedicated load balancers and | - | | | will take effect when | - | | | **enhance_l7policy_enable** is set to | - | | | **true**. | - | | | | - | | | A smaller value indicates a higher | - | | | priority. The value must be unique | - | | | for each forwarding policy of the | - | | | same listener. | - | | | | - | | | If **action** is set to | - | | | **REDIRECT_TO_LISTENER**, the value | - | | | can only be **0**, indicating that | - | | | **REDIRECT_TO_LISTENER** has the | - | | | highest priority. | - | | | | - | | | - If **enhance_l7policy_enable** is | - | | | set to **false**, forwarding | - | | | policies are automatically | - | | | prioritized based on the original | - | | | sorting logic. Forwarding policy | - | | | priorities are independent of each | - | | | other regardless of domain names. | - | | | If forwarding policies use the | - | | | same domain name, their priorities | - | | | follow the order of exact match | - | | | (**EQUAL_TO**), prefix match | - | | | (**STARTS_WITH**), and regular | - | | | expression match (**REGEX**). If | - | | | prefix match is used for matching, | - | | | the longer the path, the higher | - | | | the priority. If a forwarding | - | | | policy contains only a domain name | - | | | without a path specified, the path | - | | | is **/**, and prefix match is used | - | | | by default. | - | | | | - | | | - If **enhance_l7policy_enable** is | - | | | set to **true** and this parameter | - | | | is not passed, the priority will | - | | | set to a sum of 1 and the highest | - | | | priority of existing forwarding | - | | | policy in the same listener by | - | | | default. There will be two cases: | - | | | a) If the highest priority of | - | | | existing forwarding policies is | - | | | the maximum (10,000), the | - | | | forwarding policy will fail to | - | | | create because the final priority | - | | | for creating the forwarding policy | - | | | is the sum of 1 and 10,000, which | - | | | exceeds the maximum. In this case, | - | | | please specify a value or adjust | - | | | the priorities of existing | - | | | forwarding policies. b) If no | - | | | forwarding policies exist, the | - | | | highest priority of existing | - | | | forwarding policies will set to 1 | - | | | by default. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **10000** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** RuleRef - - ========= ====== ================================= - Parameter Type Description - ========= ====== ================================= - id String Specifies the forwarding rule ID. - ========= ====== ================================= - -.. table:: **Table 8** RedirectUrlConfig - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | protocol | String | Specifies the protocol for | - | | | redirection. The default value is | - | | | **${protocol}**, indicating that the | - | | | protocol of the request will be used. | - | | | | - | | | Value options: | - | | | | - | | | - **HTTP** | - | | | | - | | | - **HTTPS** | - | | | | - | | | - **${protocol}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **36** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | host | String | Specifies the host name that requests | - | | | are redirected to. The value can | - | | | contain only letters, digits, hyphens | - | | | (-), and periods (.) and must start | - | | | with a letter or digit. The default | - | | | value is **${host}**, indicating that | - | | | the host of the request will be used. | - | | | | - | | | Default: **${host}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | port | String | Specifies the port that requests are | - | | | redirected to. The default value is | - | | | **${port}**, indicating that the port | - | | | of the request will be used. | - | | | | - | | | Default: **${port}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | path | String | Specifies the path that requests are | - | | | redirected to. The default value is | - | | | **${path}**, indicating that the path | - | | | of the request will be used. The | - | | | value can contain only letters, | - | | | digits, and special characters | - | | | \_-';@^- %#&$.*+?,=!:|/()[]{} and | - | | | must start with a slash (/). | - | | | | - | | | Default: **${path}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | query | String | Specifies the query string set in the | - | | | URL for redirection. The default | - | | | value is **${query}**, indicating | - | | | that the query string of the request | - | | | will be used. | - | | | | - | | | For example, in the URL | - | | | **https://www. | - | | | xxx.com:8080/elb?type=loadbalancer**, | - | | | **${query}** indicates | - | | | **type=loadbalancer**. If this | - | | | parameter is set to | - | | | **${query}&name=my_name**, the URL | - | | | will be redirected to | - | | | **https://www.xxx.com:8080/ | - | | | elb?type=loadbalancer&name=my_name**. | - | | | | - | | | The value is case-sensitive and can | - | | | contain only letters, digits, and | - | | | special characters | - | | | !$&'()*+,-./:;=?@^_\` | - | | | | - | | | Default: **${query}** | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status_code | String | Specifies the status code returned | - | | | after the requests are redirected. | - | | | | - | | | Value options: | - | | | | - | | | - **301** | - | | | | - | | | - **302** | - | | | | - | | | - **303** | - | | | | - | | | - **307** | - | | | | - | | | - **308** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 9** FixtedResponseConfig - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | status_code | String | Specifies the HTTP status code | - | | | configured in the forwarding policy. | - | | | The value can be any integer in the | - | | | range of 200–299, 400–499, or | - | | | 500–599. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | content_type | String | Specifies the format of the response | - | | | body. | - | | | | - | | | Value options: | - | | | | - | | | - **text/plain** | - | | | | - | | | - **text/css** | - | | | | - | | | - **text/html** | - | | | | - | | | - **application/javascript** | - | | | | - | | | - **application/json** | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | message_body | String | Specifies the content of the response | - | | | body. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies?display_all_rules=true - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "request_id" : "d3c67339-be91-4813-bb24-85728a5d326a", - "l7policies" : [ { - "redirect_pool_id" : "3b34340d-59e8-4c70-9ef5-b41b12023dc9", - "description" : "", - "admin_state_up" : true, - "rules" : [ { - "id" : "1e5f17df-feec-427e-a162-8e4e05e91085" - } ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "listener_id" : "e2220d2a-3faf-44f3-8cd6-0c42952bd0ab", - "action" : "REDIRECT_TO_POOL", - "position" : 100, - "provisioning_status" : "ACTIVE", - "id" : "0d7bf316-2e03-411f-bf29-c403c04e52bf", - "name" : "elbv3" - }, { - "redirect_pool_id" : "3b34340d-59e8-4c70-9ef5-b41b12023dc9", - "description" : "", - "admin_state_up" : true, - "rules" : [ { - "id" : "0f5e8c34-09d1-4588-8459-f9b9add0be05" - } ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "listener_id" : "e2220d2a-3faf-44f3-8cd6-0c42952bd0ab", - "action" : "REDIRECT_TO_POOL", - "position" : 100, - "provisioning_status" : "ERROR", - "id" : "2587d8b1-9e8d-459c-9081-7bccaa075d2b", - "name" : "elbv3" - } ], - "page_info" : { - "next_marker" : "2587d8b1-9e8d-459c-9081-7bccaa075d2b", - "previous_marker" : "0d7bf316-2e03-411f-bf29-c403c04e52bf", - "current_count" : 2 - } - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/ListL7Rules.rst b/elb/api-ref/ListL7Rules.rst deleted file mode 100644 index 532cfcd5..00000000 --- a/elb/api-ref/ListL7Rules.rst +++ /dev/null @@ -1,468 +0,0 @@ -Querying Forwarding Rules -========================= - -Function -^^^^^^^^ - -This API is used to query all forwarding rules. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. - -Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v3/{project_id}/elb/l7policies/{l7policy_id}/rules - -.. table:: **Table 1** Path parameters - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - project_id Yes String Specifies the project ID. - l7policy_id Yes String Specifies the forwarding policy ID. - =========== ========= ====== =================================== - -.. table:: **Table 2** Query parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | limit | No | Integer | Specifies the number of | - | | | | records on each page. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **2000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | marker | No | String | Specifies the ID of the | - | | | | last record on the previous | - | | | | page. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter must be | - | | | | used together with | - | | | | **limit**. | - | | | | | - | | | | - If this parameter is not | - | | | | specified, the first | - | | | | page will be queried. | - | | | | | - | | | | - This parameter cannot be | - | | | | left blank or set to an | - | | | | invalid ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**, and the | - | | | | default value is **false**. | - | | | | | - | | | | The last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | Array | Specifies the forwarding | - | | | | rule ID. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *id=xxx&id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | compare_type | No | Array | Specifies how requests are | - | | | | matched with the domain | - | | | | name or URL. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, this | - | | | | parameter can only be | - | | | | set to **EQUAL_TO**. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH**, this parameter | - | | | | can be set to **REGEX**, | - | | | | **STARTS_WITH**, or | - | | | | **EQUAL_TO**. | - | | | | | - | | | | Multiple values can be | - | | | | queried in the format of | - | | | | *compare_ | - | | | | type=xxx&compare_type=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | provisioning_status | No | Array | Specifies the provisioning | - | | | | status of the forwarding | - | | | | rule. The value can only be | - | | | | **ACTIVE**, indicating that | - | | | | the forwarding rule is | - | | | | provisioned successfully. | - | | | | | - | | | | Multiple provisioning | - | | | | statuses can be queried in | - | | | | the format of | - | | | | *provisioning_status=xx | - | | | | x&provisioning_status=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. The | - | | | | value is fixed at | - | | | | **false**. This parameter | - | | | | can be updated but remains | - | | | | invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. The | - | | | | default value is **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | No | Array | Specifies the value of the | - | | | | match content. | - | | | | | - | | | | Multiple values can be | - | | | | queried in the format of | - | | | | *value=xxx&value=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | Array | Specifies the key of the | - | | | | match content that is used | - | | | | to identify the forwarding | - | | | | rule. | - | | | | | - | | | | Multiple keys can be | - | | | | queried in the format of | - | | | | *key=xxx&key=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | Array | Specifies the match | - | | | | content. The value can be | - | | | | **HOST_NAME** or **PATH**. | - | | | | | - | | | | **HOST_NAME** indicates | - | | | | that the domain name will | - | | | | be used for matching, and | - | | | | **PATH** indicates that the | - | | | | URL will be used for | - | | | | matching. | - | | | | | - | | | | The **type** value must be | - | | | | unique for each forwarding | - | | | | rule in a forwarding | - | | | | policy. | - | | | | | - | | | | Multiple values can be | - | | | | queried in the format of | - | | | | *type=xxx&type=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | Array | Specifies the enterprise | - | | | | project ID. | - | | | | | - | | | | - If this parameter is not | - | | | | passed, resources in the | - | | | | default enterprise | - | | | | project are queried, and | - | | | | authentication is | - | | | | performed based on the | - | | | | default enterprise | - | | | | project. | - | | | | | - | | | | - If this parameter is | - | | | | passed, its value can be | - | | | | the ID of an existing | - | | | | enterprise project or | - | | | | **all_granted_eps**. | - | | | | | - | | | | If the value is a specific | - | | | | ID, resources in the | - | | | | specific enterprise project | - | | | | are required. If the value | - | | | | is **all_granted_eps**, | - | | | | resources in all enterprise | - | | | | projects are queried. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *enterprise_project_id=xxx& | - | | | | enterprise_project_id=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 3** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 4** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | page_info | `PageInfo <#ListL7Rules__response_PageInfo>`__ | Shows pagination information. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - | rules | Array of | Lists the forwarding rules. | - | | `L7Rule <#ListL7Rules__response_L7Rule>`__ | | - | | objects | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 5** PageInfo - - +-----------------+---------+----------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=========+========================================================================================+ - | previous_marker | String | Specifies the ID of the first record in the pagination query result. This parameter | - | | | will not be returned if no query result is returned. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | next_marker | String | Marks the start record on the next page in the pagination query result. This parameter | - | | | will not be returned if there is no next page. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | current_count | Integer | Specifies the number of records. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - -.. table:: **Table 6** L7Rule - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding rule. The default | - | | | value is **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | compare_type | String | Specifies how requests are matched | - | | | with the domain name or URL. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, this parameter can | - | | | only be set to **EQUAL_TO**. | - | | | | - | | | - If **type** is set to **PATH**, | - | | | this parameter can be set to | - | | | **REGEX**, **STARTS_WITH**, or | - | | | **EQUAL_TO**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | key | String | Specifies the key of the match | - | | | content. This parameter will not take | - | | | effect when **type** is set to | - | | | **HOST_NAME** or **PATH**. It can be | - | | | updated but will not take effect. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the match content. The | - | | | value can be one of the following: | - | | | | - | | | - **HOST_NAME**: A domain name will | - | | | be used for matching. | - | | | | - | | | - **PATH**: A URL will be used for | - | | | matching. | - | | | | - | | | If **type** is set to **HOST_NAME**, | - | | | **PATH**, **METHOD**, or | - | | | **SOURCE_IP**, only one forwarding | - | | | rule can be created for each type. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | item. For example, if a domain name | - | | | is used for matching, **value** is | - | | | the domain name. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, the value can | - | | | contain letters, digits, hyphens | - | | | (-), and periods (.) and must | - | | | start with a letter or digit. If | - | | | you want to use a wildcard domain | - | | | name, enter an asterisk (*) as the | - | | | leftmost label of the domain name. | - | | | | - | | | - If **type** is set to **PATH** and | - | | | **compare_type** to | - | | | **STARTS_WITH** or **EQUAL_TO**, | - | | | the value must start with a slash | - | | | (/) and can contain only letters, | - | | | digits, and special characters | - | | | \_~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding rule. | - | | | | - | | | The value can only be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | invert | Boolean | Specifies whether reverse matching is | - | | | supported. The value is fixed at | - | | | **false**. This parameter can be | - | | | updated but remains invalid. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | conditions | Array of | Specifies the matching conditions of | - | | `RuleCondition <#Li | the forwarding rule. | - | | stL7Rules__response_RuleCondition>`__ | | - | | objects | - If **conditions** is specified, | - | | | **key** and **value** will not | - | | | take effect, and the value of this | - | | | parameter will contain all | - | | | conditions configured for the | - | | | forwarding rule. The keys in the | - | | | list must be the same, whereas | - | | | each value must be unique. | - | | | | - | | | - If **conditions** is not | - | | | specified, the values of **key** | - | | | and **value** are displayed. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** RuleCondition - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | key | String | Specifies the key of match item. This | - | | | parameter is left blank. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | item. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, **key** is left | - | | | blank, and **value** indicates the | - | | | domain name, which can contain 1 | - | | | to 128 characters, including | - | | | letters, digits, hyphens (-), | - | | | periods (.), and asterisks (*), | - | | | and must start with a letter, | - | | | digit, or asterisk (*). If you | - | | | want to use a wildcard domain | - | | | name, enter an asterisk (*) as the | - | | | leftmost label of the domain name. | - | | | | - | | | - If **type** is set to **PATH**, | - | | | **key** is left blank, and | - | | | **value** indicates the request | - | | | path, which can contain 1 to 128 | - | | | characters. If **compare_type** is | - | | | set to **STARTS_WITH** or | - | | | **EQUAL_TO** for the forwarding | - | | | rule, the value must start with a | - | | | slash (/) and can contain only | - | | | letters, digits, and special | - | | | characters | - | | | \_~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies/cf4360fd-8631-41ff-a6f5-b72c35da74be/rules - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "rules" : [ { - "compare_type" : "STARTS_WITH", - "provisioning_status" : "ACTIVE", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "invert" : false, - "admin_state_up" : true, - "value" : "/ccc.html", - "type" : "PATH", - "id" : "84f4fcae-9c15-4e19-a99f-72c0b08fd3d7" - } ], - "page_info" : { - "previous_marker" : "84f4fcae-9c15-4e19-a99f-72c0b08fd3d7", - "current_count" : 1 - }, - "request_id" : "ae4dbd7d-9271-4040-98b6-3bfe45bb15ee" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/ListListeners.rst b/elb/api-ref/ListListeners.rst deleted file mode 100644 index 6ba38bfa..00000000 --- a/elb/api-ref/ListListeners.rst +++ /dev/null @@ -1,826 +0,0 @@ -Querying Listeners -================== - -Function -^^^^^^^^ - -This API is used to query listeners. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. - -Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v3/{project_id}/elb/listeners - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -.. table:: **Table 2** Query parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | limit | No | Integer | Specifies the number of | - | | | | records on each page. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **2000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | marker | No | String | Specifies the ID of the | - | | | | last record on the previous | - | | | | page. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter must be | - | | | | used together with | - | | | | **limit**. | - | | | | | - | | | | - If this parameter is not | - | | | | specified, the first | - | | | | page will be queried. | - | | | | | - | | | | - This parameter cannot be | - | | | | left blank or set to an | - | | | | invalid ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**, and the | - | | | | default value is **false**. | - | | | | | - | | | | The last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | No | Array | Specifies the port used by | - | | | | the listener. | - | | | | | - | | | | Multiple ports can be | - | | | | queried in the format of | - | | | | *protocol_p | - | | | | ort=xxx&protocol_port=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | No | Array | Specifies the protocol used | - | | | | by the listener. The | - | | | | protocol can be UDP, TCP, | - | | | | HTTP, or HTTPS. | - | | | | | - | | | | Multiple protocols can be | - | | | | queried in the format of | - | | | | * | - | | | | protocol=xxx&protocol=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | Array | Provides supplementary | - | | | | information about the | - | | | | listener. | - | | | | | - | | | | Multiple descriptions can | - | | | | be queried in the format of | - | | | | *descri | - | | | | ption=xxx&description=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_tls_container_ref | No | Array | Specifies the ID of the | - | | | | server certificate used by | - | | | | the listener. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *default | - | | | | _tls_container_ref=xxx&defa | - | | | | ult_tls_container_ref=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | client_ca_tls_container_ref | No | Array | Specifies the ID of the CA | - | | | | certificate used by the | - | | | | listener. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *client_ca_t | - | | | | ls_container_ref=xxx&client | - | | | | _ca_tls_container_ref=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the listener. The value can | - | | | | only be **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | connection_limit | No | Array | Specifies the maximum | - | | | | number of connections that | - | | | | the load balancer can | - | | | | handle. The default value | - | | | | is **-1**. | - | | | | | - | | | | Multiple values can be | - | | | | queried in the format of | - | | | | *connection_limit | - | | | | =xxx&connection_limit=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_pool_id | No | Array | Specifies the ID of the | - | | | | default backend server | - | | | | group. If there is no | - | | | | matched forwarding policy, | - | | | | requests will be routed to | - | | | | the default backend server. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *default_pool_i | - | | | | d=xxx&default_pool_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | Array | Specifies the listener ID. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *id=xxx&id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | Array | Specifies the name of the | - | | | | listener added to the load | - | | | | balancer. | - | | | | | - | | | | Multiple names can be | - | | | | queried in the format of | - | | | | *name=xxx&name=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http2_enable | No | Boolean | Specifies whether to use | - | | | | HTTP/2. This parameter is | - | | | | available only for HTTPS | - | | | | listeners. If you configure | - | | | | this parameter for other | - | | | | types of listeners, it will | - | | | | not take effect. | - | | | | | - | | | | Enable HTTP/2 if you want | - | | | | the clients to use HTTP/2 | - | | | | to communicate with the | - | | | | load balancer. However, | - | | | | connections between the | - | | | | load balancer and backend | - | | | | servers use HTTP/1.x by | - | | | | default. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | No | Array | Specifies the ID of the | - | | | | load balancer that the | - | | | | listener is added to. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *loadbalancer_i | - | | | | d=xxx&loadbalancer_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tls_ciphers_policy | No | Array | Specifies the security | - | | | | policy used by the | - | | | | listener. This parameter is | - | | | | available only for HTTPS | - | | | | listeners. | - | | | | | - | | | | The value can be | - | | | | **tls-1-0**, **tls-1-1**, | - | | | | **tls-1-2**, or | - | | | | **tls-1-2-strict**, and the | - | | | | default value is | - | | | | **tls-1-0**. | - | | | | | - | | | | Multiple security policies | - | | | | can be queried in the | - | | | | format of | - | | | | *tls_ciphers_policy=x | - | | | | xx&tls_ciphers_policy=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_address | No | Array | Specifies the private IP | - | | | | address bound to the | - | | | | backend server. This | - | | | | parameter is used only as a | - | | | | query condition and is not | - | | | | included in the response. | - | | | | | - | | | | Multiple IP addresses can | - | | | | be queried in the format of | - | | | | *member_addre | - | | | | ss=xxx&member_address=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_device_id | No | Array | Specifies the ID of the | - | | | | cloud server that serves as | - | | | | a backend server. This | - | | | | parameter is used only as a | - | | | | query condition and is not | - | | | | included in the response. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *member_device_id | - | | | | =xxx&member_device_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | Array | Specifies the enterprise | - | | | | project ID. | - | | | | | - | | | | - If this parameter is not | - | | | | passed, resources in the | - | | | | default enterprise | - | | | | project are queried, and | - | | | | authentication is | - | | | | performed based on the | - | | | | default enterprise | - | | | | project. | - | | | | | - | | | | - If this parameter is | - | | | | passed, its value can be | - | | | | the ID of an existing | - | | | | enterprise project or | - | | | | **all_granted_eps**. | - | | | | | - | | | | If the value is a specific | - | | | | ID, resources in the | - | | | | specific enterprise project | - | | | | are required. If the value | - | | | | is **all_granted_eps**, | - | | | | resources in all enterprise | - | | | | projects are queried. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *enterprise_project_id=xxx& | - | | | | enterprise_project_id=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enable_member_retry | No | Boolean | Specifies whether to enable | - | | | | health check retries for | - | | | | backend servers. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_timeout | No | Array | Specifies the timeout | - | | | | duration for waiting for a | - | | | | request from a backend | - | | | | server, in seconds. | - | | | | | - | | | | This parameter is available | - | | | | only for HTTP and HTTPS | - | | | | listeners. The value ranges | - | | | | from **1** to **300**. | - | | | | | - | | | | Multiple durations can be | - | | | | queried in the format of | - | | | | *member_timeo | - | | | | ut=xxx&member_timeout=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | client_timeout | No | Array | Specifies the timeout | - | | | | duration for waiting for a | - | | | | request from a client, in | - | | | | seconds. | - | | | | | - | | | | This parameter is available | - | | | | only for HTTP and HTTPS | - | | | | listeners. The value ranges | - | | | | from **1** to **300**. | - | | | | | - | | | | Multiple durations can be | - | | | | queried in the format of | - | | | | *client_timeo | - | | | | ut=xxx&client_timeout=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | keepalive_timeout | No | Array | Specifies the idle timeout | - | | | | duration, in seconds. | - | | | | | - | | | | - For TCP listeners, the | - | | | | value ranges from **10** | - | | | | to **4000**, and the | - | | | | default value is | - | | | | **300**. | - | | | | | - | | | | - For HTTP and HTTPS | - | | | | listeners, the value | - | | | | ranges from **0** to | - | | | | **4000**, and the | - | | | | default value is **60**. | - | | | | | - | | | | - For UDP listeners, this | - | | | | parameter does not take | - | | | | effect. | - | | | | | - | | | | Multiple durations can be | - | | | | queried in the format of | - | | | | *keepalive_timeout= | - | | | | xxx&keepalive_timeout=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | t | No | Boolean | Specifies whether to pass | - | ransparent_client_ip_enable | | | source IP addresses of the | - | | | | clients to backend servers. | - | | | | | - | | | | Shared load balancers: The | - | | | | value can be **true** or | - | | | | **false**, and the default | - | | | | value is **false** for TCP | - | | | | and UDP listeners. The | - | | | | value can only be **true** | - | | | | for HTTP and HTTPS | - | | | | listeners. If this | - | | | | parameter is not passed, | - | | | | the default value is | - | | | | **true**. | - | | | | | - | | | | Dedicated load balancers: | - | | | | The value can only be | - | | | | **true** for all types of | - | | | | listeners. If this | - | | | | parameter is not passed, | - | | | | the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 3** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 4** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | page_info | `PageInfo <#ListListeners__response_PageInfo>`__ | Listener pagination information | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - | listeners | Array of | Lists the listeners. | - | | `Listener <#ListListeners__response_Listener>`__ | | - | | objects | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 5** PageInfo - - +-----------------+---------+----------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=========+========================================================================================+ - | previous_marker | String | Specifies the ID of the first record in the pagination query result. This parameter | - | | | will not be returned if no query result is returned. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | next_marker | String | Marks the start record on the next page in the pagination query result. This parameter | - | | | will not be returned if there is no next page. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | current_count | Integer | Specifies the number of records. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - -.. table:: **Table 6** Listener - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the listener. And the value can | - | | | only be **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_ca_tls_container_ref | String | Specifies the ID of the CA | - | | | certificate used by the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | connection_limit | Integer | Specifies the maximum number of | - | | | connections. The default value is | - | | | **-1**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the listener | - | | | was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_pool_id | String | Specifies the ID of the default | - | | | backend server group. If there is no | - | | | matched forwarding policy, requests | - | | | are forwarded to the default backend | - | | | server. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_tls_container_ref | String | Specifies the ID of the server | - | | | certificate used by the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http2_enable | Boolean | Specifies whether to use HTTP/2. This | - | | | parameter is available only for HTTPS | - | | | listeners. If you configure this | - | | | parameter for other types of | - | | | listeners, it will not take effect. | - | | | | - | | | Enable HTTP/2 if you want the clients | - | | | to use HTTP/2 to communicate with the | - | | | load balancer. However, connections | - | | | between the load balancer and backend | - | | | servers use HTTP/1.x by default. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | insert_headers | `ListenerInsertHeaders <#ListListener | Specifies the HTTP header fields. | - | | s__response_ListenerInsertHeaders>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array of | Specifies the ID of the load balancer | - | | `LoadBalancerRef <#ListLi | that the listener is added to. | - | | steners__response_LoadBalancerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the ID of the project where | - | | | the listener is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | listener. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sni_container_refs | Array of strings | Lists the IDs of SNI certificates | - | | | (server certificates with domain | - | | | names) used by the listener. | - | | | | - | | | Each SNI certificate can have up to | - | | | 30 domain names, and each domain name | - | | | in the SNI certificate must be | - | | | unique. | - | | | | - | | | This parameter will be ignored and an | - | | | empty array will be returned if the | - | | | listener's protocol is not HTTPS. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array of | Lists the tags. | - | | ` | | - | | Tag <#ListListeners__response_Tag>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the listener | - | | | was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tls_ciphers_policy | String | Specifies the security policy used by | - | | | the listener. This parameter is | - | | | available only for HTTPS listeners. | - | | | | - | | | The value can be **tls-1-0**, | - | | | **tls-1-1**, **tls-1-2**, or | - | | | **tls-1-2-strict**, and the default | - | | | value is **tls-1-0**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_member_retry | Boolean | Specifies whether to enable health | - | | | check retries for backend servers. | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | keepalive_timeout | Integer | Specifies the idle timeout duration, | - | | | in seconds. | - | | | | - | | | - For TCP listeners, the value | - | | | ranges from **10** to **4000**, | - | | | and the default value is **300**. | - | | | | - | | | - For HTTP and HTTPS listeners, the | - | | | value ranges from **0** to | - | | | **4000**, and the default value is | - | | | **60**. | - | | | | - | | | - For UDP listeners, this parameter | - | | | does not take effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_timeout | Integer | Specifies the timeout duration for | - | | | waiting for a request from a client, | - | | | in seconds. | - | | | | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. The value | - | | | ranges from **1** to **300**, and the | - | | | default value is **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | member_timeout | Integer | Specifies the timeout duration for | - | | | waiting for a request from a backend | - | | | server, in seconds. | - | | | | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. The value | - | | | ranges from **1** to **300**, and the | - | | | default value is **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipgroup | `ListenerIpGroup <#ListLi | Specifies the IP address group | - | | steners__response_ListenerIpGroup>`__ | associated with the listener. | - | | object | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | transparent_client_ip_enable | Boolean | Specifies whether to pass source IP | - | | | addresses of the clients to backend | - | | | servers. | - | | | | - | | | Shared load balancers: The value can | - | | | be **true** or **false**, and the | - | | | default value is **false** for TCP | - | | | and UDP listeners. The value can only | - | | | be **true** for HTTP and HTTPS | - | | | listeners. If this parameter is not | - | | | passed, the default value is | - | | | **true**. | - | | | | - | | | Dedicated load balancers: The value | - | | | can only be **true** for all types of | - | | | listeners. If this parameter is not | - | | | passed, the default value is | - | | | **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enhance_l7policy_enable | Boolean | Specifies whether to enable advanced | - | | | forwarding. The value can be **true** | - | | | or **false** (default). | - | | | | - | | | - **true** indicates that advanced | - | | | forwarding will be enabled. | - | | | | - | | | - **false** indicates that advanced | - | | | forwarding will not be enabled. | - | | | | - | | | The following parameters will be | - | | | available only when advanced | - | | | forwarding is enabled: | - | | | | - | | | - **redirect_url_config** | - | | | | - | | | - **fixed_response_config** | - | | | | - | | | - **priority** | - | | | | - | | | - **conditions** | - | | | | - | | | For details, see the descriptions in | - | | | the APIs of forwarding policies and | - | | | forwarding rules. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** ListenerInsertHeaders - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | X-Forwarded-ELB-IP | Boolean | Specifies whether to transparently | - | | | transmit the load balancer EIP to | - | | | backend servers. If | - | | | **X-Forwarded-ELB-IP** is set to | - | | | **true**, the load balancer EIP will | - | | | be stored in the HTTP header and | - | | | passed to backend servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-Port | Boolean | Specifies whether to transparently | - | | | transmit the listening port of the | - | | | load balancer to backend servers. If | - | | | **X-Forwarded-Port** is set to | - | | | **true**, the listening port of the | - | | | load balancer will be stored in the | - | | | HTTP header and passed to backend | - | | | servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-For-Port | Boolean | Specifies whether to transparently | - | | | transmit the source port of the | - | | | client to backend servers. If | - | | | **X-Forwarded-For-Port** is set to | - | | | **true**, the source port of the | - | | | client will be stored in the HTTP | - | | | header and passed to backend servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-Host | Boolean | Specifies whether to rewrite the | - | | | **X-Forwarded-Host** header. If | - | | | **X-Forwarded-Host** is set to | - | | | **true**, **X-Forwarded-Host** in the | - | | | request header from the clients can | - | | | be set to **Host** in the request | - | | | header sent from the load balancer to | - | | | backend servers. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 8** LoadBalancerRef - - ========= ====== =============================== - Parameter Type Description - ========= ====== =============================== - id String Specifies the load balancer ID. - ========= ====== =============================== - -.. table:: **Table 9** Tag - - ========= ====== ======================== - Parameter Type Description - ========= ====== ======================== - key String Specifies the tag key. - value String Specifies the tag value. - ========= ====== ======================== - -.. table:: **Table 10** ListenerIpGroup - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | ipgroup_id | String | Specifies the ID of the IP address | - | | | group associated with the listener. | - | | | | - | | | - If **ip_list** is set to **[]** | - | | | and **type** to **whitelist**, no | - | | | IP addresses are allowed to access | - | | | the listener. | - | | | | - | | | - If **ip_list** is set to **[]** | - | | | and **type** to **blacklist**, any | - | | | IP address is allowed to access | - | | | the listener. | - | | | | - | | | - The specified IP address group | - | | | must exist and this parameter | - | | | cannot be set to **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_ipgroup | Boolean | Specifies whether to enable access | - | | | control. | - | | | | - | | | - **true**: Access control is | - | | | enabled. | - | | | | - | | | - **false**: Access control is | - | | | disabled. | - | | | | - | | | A listener with access control | - | | | enabled can be directly deleted. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies how access to the listener | - | | | is controlled. | - | | | | - | | | - **white**: A whitelist is | - | | | configured. Only IP addresses in | - | | | the whitelist can access the | - | | | listener. | - | | | | - | | | - **black**: A blacklist is | - | | | configured. IP addresses in the | - | | | blacklist are not allowed to | - | | | access the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{ELB_Endpoint}/v3/060576782980d5762f9ec014dd2f1148/elb/listeners?limit=2&marker=22e221c4-37c7-45d6-a76a-6e5a3bf485ba - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "request_id" : "e77338298c98d52202fd60bdacec0d75", - "listeners" : [ { - "id" : "683cf917-3e51-4c41-830c-bc3a57e090f0", - "name" : "My listener", - "protocol_port" : 90, - "protocol" : "HTTPS", - "description" : "", - "default_tls_container_ref" : "4e7761d7c7d141c389479f2641c8bff8", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "ac82ca77-8be3-4d65-9c4d-155771b463df" - } ], - "project_id" : "060576782980d5762f9ec014dd2f1148", - "sni_container_refs" : [ ], - "connection_limit" : -1, - "tls_ciphers_policy" : "tls-1-0", - "tags" : [ ], - "created_at" : "2021-04-02T07:48:38Z", - "updated_at" : "2021-04-02T07:48:38Z", - "http2_enable" : false, - "insert_headers" : { - "X-Forwarded-ELB-IP" : false, - "X-Forwarded-Host" : true, - "X-Forwarded-For-Port" : false, - "X-Forwarded-Port" : false - }, - "member_timeout" : 60, - "client_timeout" : 60, - "keepalive_timeout" : 60, - "enable_member_retry" : true, - "transparent_client_ip_enable" : true, - "enhance_l7policy_enable" : false - }, { - "id" : "1173360b-5911-4aa9-a1ec-05e9f714370c", - "name" : "listener-sshd", - "protocol_port" : 22, - "protocol" : "TCP", - "description" : "", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "4d196846-d63c-4e7b-9875-2c4f04a48661" - } ], - "project_id" : "060576782980d5762f9ec014dd2f1148", - "sni_container_refs" : [ ], - "connection_limit" : -1, - "default_pool_id" : "6350052f-e060-4f80-b92f-f21255dba4c4", - "tags" : [ ], - "created_at" : "2021-04-01T08:21:15Z", - "updated_at" : "2021-04-01T08:21:15Z", - "http2_enable" : false, - "insert_headers" : { - "X-Forwarded-ELB-IP" : false, - "X-Forwarded-Host" : true, - "X-Forwarded-For-Port" : false, - "X-Forwarded-Port" : false - }, - "keepalive_timeout" : 4000, - "enable_member_retry" : true, - "transparent_client_ip_enable" : true, - "enhance_l7policy_enable" : false - } ], - "page_info" : { - "next_marker" : "1173360b-5911-4aa9-a1ec-05e9f714370c", - "previous_marker" : "683cf917-3e51-4c41-830c-bc3a57e090f0", - "current_count" : 2 - } - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/ListLoadBalancers.rst b/elb/api-ref/ListLoadBalancers.rst deleted file mode 100644 index a30a9c3d..00000000 --- a/elb/api-ref/ListLoadBalancers.rst +++ /dev/null @@ -1,822 +0,0 @@ -Querying Load Balancers -======================= - -Function -^^^^^^^^ - -This API is used to query all load balancers. Both filtered query and pagination query are supported. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. - -Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v3/{project_id}/elb/loadbalancers - -.. table:: **Table 1** Path parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | project_id | Yes | String | Specifies the project ID. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 2** Query parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | last record on the previous | - | | | | page. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter must be | - | | | | used together with | - | | | | **limit**. | - | | | | - If this parameter is not | - | | | | specified, the first | - | | | | page will be queried. | - | | | | - This parameter cannot be | - | | | | left blank or set to an | - | | | | invalid ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | records on each page. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **2000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**, and the | - | | | | default value is **false**. | - | | | | | - | | | | The last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | Array | Specifies the load balancer | - | | | | ID. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *id=xxx&id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | Array | Specifies the load balancer | - | | | | name. | - | | | | | - | | | | Multiple names can be | - | | | | queried in the format of | - | | | | *name=xxx&name=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | Array | Provides supplementary | - | | | | information about the load | - | | | | balancer. | - | | | | | - | | | | Multiple descriptions can | - | | | | be queried in the format of | - | | | | *descri | - | | | | ption=xxx&description=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the load balancer. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | provisioning_status | No | Array | Specifies the provisioning | - | | | | status of the load | - | | | | balancer. The value can | - | | | | only be **ACTIVE**, | - | | | | indicating that the load | - | | | | balancer is provisioned | - | | | | successfully. | - | | | | | - | | | | Multiple provisioning | - | | | | statuses can be queried in | - | | | | the format of | - | | | | *provisioning_status=xx | - | | | | x&provisioning_status=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | operating_status | No | Array | Specifies the operating | - | | | | status of the load | - | | | | balancer. The value can | - | | | | only be **ONLINE**, | - | | | | indicating that the load | - | | | | balancer is working | - | | | | normally. | - | | | | | - | | | | Multiple operating statuses | - | | | | can be queried in the | - | | | | format of | - | | | | *operating_status | - | | | | =xxx&operating_status=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | guaranteed | No | Boolean | Specifies whether the load | - | | | | balancer is a dedicated | - | | | | load balancer. The value | - | | | | can only be **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vpc_id | No | Array | Specifies the ID of the VPC | - | | | | where the load balancer | - | | | | works. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *vpc_id=xxx&vpc_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_port_id | No | Array | Specifies the ID of the | - | | | | port bound to the virtual | - | | | | IP address of the load | - | | | | balancer. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *vip_po | - | | | | rt_id=xxx&vip_port_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_address | No | Array | Specifies the virtual IP | - | | | | address bound to the load | - | | | | balancer. | - | | | | | - | | | | Multiple virtual IP | - | | | | addresses can be queried in | - | | | | the format of | - | | | | *vip_ad | - | | | | dress=xxx&vip_address=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_subnet_cidr_id | No | Array | Specifies the ID of the | - | | | | subnet where the load | - | | | | balancer works. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *vip_subnet_cidr_id=x | - | | | | xx&vip_subnet_cidr_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | l4_flavor_id | No | Array | Specifies the ID of the | - | | | | flavor at Layer 4. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *l4_flavo | - | | | | r_id=xxx&l4_flavor_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | l4_scale_flavor_id | No | Array | Specifies the elastic | - | | | | flavor that is reserved for | - | | | | now. | - | | | | | - | | | | Multiple flavors can be | - | | | | queried in the format of | - | | | | *l4_scale_flavor_id=x | - | | | | xx&l4_scale_flavor_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ipv6_vip_address | No | Array | Specifies the IPv6 address | - | | | | bound to the load balancer. | - | | | | | - | | | | Multiple IPv6 addresses can | - | | | | be queried in the format of | - | | | | *ipv6_vip_address | - | | | | =xxx&ipv6_vip_address=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ipv6_vip_virsubnet_id | No | Array | Specifies the ID of the | - | | | | IPv6 subnet where the load | - | | | | balancer works. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *ipv6_vip_virsubnet_id=xxx& | - | | | | ipv6_vip_virsubnet_id=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ipv6_vip_port_id | No | Array | Specifies the ID of the | - | | | | port bound to the IPv6 | - | | | | address of the load | - | | | | balancer. | - | | | | | - | | | | Multiple ports can be | - | | | | queried in the format of | - | | | | *ipv6_vip_port_id | - | | | | =xxx&ipv6_vip_port_id=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | availability_zone_list | No | Array | Specifies the list of AZs | - | | | | where the load balancer is | - | | | | created. You can query the | - | | | | AZs by calling the API | - | | | | (/v3/{project_i | - | | | | d}/elb/availability-zones). | - | | | | | - | | | | Multiple AZs can be queried | - | | | | in the format of | - | | | | *a | - | | | | vailability_zone_list=xxx&a | - | | | | vailability_zone_list=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | eips | No | Array | Specifies the EIP bound to | - | | | | the load balancer. | - | | | | | - | | | | The following is an | - | | | | example: | - | | | | | - | | | | "eips": [ { "eip_id": | - | | | | "e9b72a9d-42 | - | | | | 75-455e-a724-853504e4d9c6", | - | | | | "eip_address": | - | | | | "88.88.14.122", | - | | | | "ip_version": 4 } ] | - | | | | | - | | | | Multiple EIPs can be | - | | | | queried in the format of | - | | | | *eips=e | - | | | | ip_id=xxx&eips=eip_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | l7_flavor_id | No | Array | Specifies the ID of the | - | | | | flavor at Layer 7. | - | | | | | - | | | | Multiple flavors can be | - | | | | queried in the format of | - | | | | *l7_flavo | - | | | | r_id=xxx&l7_flavor_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | l7_scale_flavor_id | No | Array | Specifies the elastic | - | | | | flavor that is reserved for | - | | | | now. | - | | | | | - | | | | Multiple flavors can be | - | | | | queried in the format of | - | | | | *l7_scale_flavor_id=x | - | | | | xx&l7_scale_flavor_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_device_id | No | Array | Specifies the ID of the | - | | | | cloud server that serves as | - | | | | a backend server. This | - | | | | parameter is used only as a | - | | | | query condition and is not | - | | | | included in the response. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *member_device_id | - | | | | =xxx&member_device_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_address | No | Array | Specifies the private IP | - | | | | address of the backend | - | | | | server. This parameter is | - | | | | used only as a query | - | | | | condition and is not | - | | | | included in the response. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | Array | Specifies the enterprise | - | | | | project ID. | - | | | | | - | | | | - If this parameter is not | - | | | | passed, resources in the | - | | | | default enterprise | - | | | | project are queried, and | - | | | | authentication is | - | | | | performed based on the | - | | | | default enterprise | - | | | | project. | - | | | | - If this parameter is | - | | | | passed, its value can be | - | | | | the ID of an existing | - | | | | enterprise project or | - | | | | **all_granted_eps**. | - | | | | | - | | | | If the value is a specific | - | | | | ID, resources in the | - | | | | specific enterprise project | - | | | | are required. If the value | - | | | | is **all_granted_eps**, | - | | | | resources in all enterprise | - | | | | projects are queried. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *enterprise_project_id=xxx& | - | | | | enterprise_project_id=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | publicips | No | Array | Specifies the public IP | - | | | | address bound to the load | - | | | | balancer. | - | | | | | - | | | | The following is an | - | | | | example: | - | | | | | - | | | | "publicips": [ { | - | | | | "publicip_id": | - | | | | "e9b72a9d-42 | - | | | | 75-455e-a724-853504e4d9c6", | - | | | | "publicip_address": | - | | | | "88.88.14.122", | - | | | | "publicip_ip_version": 4 } | - | | | | ] | - | | | | | - | | | | Multiple EIPs can be | - | | | | queried in the format of | - | | | | *publicips=publicip_id=xxx& | - | | | | publicips=publicip_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ip_version | No | Array | Specifies the IP version. | - | | | | The value can be **4** | - | | | | (IPv4) or **6** (IPv6). | - | | | | | - | | | | Multiple versions can be | - | | | | queried in the format of | - | | | | *ip_v | - | | | | ersion=xxx&ip_version=xxx*. | - | | | | | - | | | | IPv6 is unsupported. The | - | | | | value cannot be **6**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 3** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token No String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 4** Response body parameters - - +---------------+-------------------------------------------------+-------------------------------------------------+ - | Parameter | Type | Description | - +===============+=================================================+=================================================+ - | loadbalancers | Array of | Lists the load balancers. | - | | `LoadBalancer | | - | | <#ListLoadBalancers__response_LoadBalancer>`__ | | - | | objects | | - +---------------+-------------------------------------------------+-------------------------------------------------+ - | page_info | `Page | Provides load balancer pagination information. | - | | Info <#ListLoadBalancers__response_PageInfo>`__ | | - | | object | | - +---------------+-------------------------------------------------+-------------------------------------------------+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +---------------+-------------------------------------------------+-------------------------------------------------+ - -.. table:: **Table 5** LoadBalancer - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the load balancer ID. | - | | | | - | | | Default: **Automatically generated** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the load balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the load balancer. The value can only | - | | | be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the load balancer. The value can | - | | | only be **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provider | String | Specifies the provider of the load | - | | | balancer. The value can only be | - | | | **vlb**. | - | | | | - | | | Default: **vlb** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Lists the IDs of backend server | - | | `PoolRef <#Li | groups associated with the load | - | | stLoadBalancers__response_PoolRef>`__ | balancer. | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the IDs of listeners added to | - | | `ListenerRef <#ListLo | the load balancer. | - | | adBalancers__response_ListenerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | load balancer. The value can only be | - | | | **ONLINE**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_address | String | Specifies the private IPv4 address | - | | | bound to the load balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **64** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_cidr_id | String | Specifies the ID of the IPv4 subnet | - | | | where the load balancer works. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **36** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the name of the load | - | | | balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID of the load | - | | | balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_port_id | String | Specifies the ID of the port bound to | - | | | the virtual IP address (the value of | - | | | **vip_address**) of the load | - | | | balancer. | - | | | | - | | | When you create a dedicated load | - | | | balancer, the system automatically | - | | | creates a port for the load balancer | - | | | and associates the port with a | - | | | default security group. However, | - | | | security group rules containing the | - | | | port will not affect traffic to and | - | | | from the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array of | Lists the tags added to the load | - | | `Tag | balancer. | - | | <#ListLoadBalancers__response_Tag>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the load | - | | | balancer was created. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **20** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the load | - | | | balancer was updated. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **20** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | guaranteed | Boolean | Specifies whether the load balancer | - | | | is a dedicated load balancer. | - | | | | - | | | The value can be **true** or | - | | | **false**. **true** indicates a | - | | | dedicated load balancer, and | - | | | **false** indicates a shared load | - | | | balancer. When dedicated load | - | | | balancers are launched in the | - | | | **eu-de** region, either **true** or | - | | | **false** will be returned when you | - | | | use the API to query or update a load | - | | | balancer. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vpc_id | String | Specifies the ID of the VPC where the | - | | | load balancer works. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | eips | Array of | Specifies the EIP bound to the load | - | | `EipInfo <#Li | balancer. | - | | stLoadBalancers__response_EipInfo>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_address | String | Specifies the IPv6 address bound to | - | | | the load balancer. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **None** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **64** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_virsubnet_id | String | Specifies the ID of the IPv6 subnet | - | | | where the load balancer works. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_port_id | String | Specifies the ID of the port bound to | - | | | the IPv6 address. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | availability_zone_list | Array of strings | Specifies the list of AZs where the | - | | | load balancer is created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enterprise_project_id | String | Specifies the enterprise project ID. | - | | | | - | | | If this parameter is not passed | - | | | during resource creation, the | - | | | resource belongs to the default | - | | | enterprise project. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **0** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l4_flavor_id | String | Specifies the Layer-4 flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l4_scale_flavor_id | String | Specifies the reserved Layer 4 | - | | | flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7_flavor_id | String | Specifies the Layer-7 flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7_scale_flavor_id | String | Specifies the reserved Layer 7 | - | | | flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | publicips | Array of | Specifies the EIP bound to the load | - | | `PublicIpInfo <#ListLoa | balancer. | - | | dBalancers__response_PublicIpInfo>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | elb_virsubnet_ids | Array of strings | Specifies the ID of the subnet on the | - | | | downstream plane. The ports used by | - | | | the load balancer dynamically occupy | - | | | IP addresses in the subnet. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_target_enable | Boolean | Specifies whether to enable cross-VPC | - | | | backend. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | frozen_scene | String | Specifies the scenario where the load | - | | | balancer is frozen. Use commas to | - | | | separate multiple scenarios. | - | | | | - | | | If the value is **ARREAR**, the load | - | | | balancer is frozen because your | - | | | account is in arrears. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_bandwidth | `BandwidthRef <#ListLoa | Specifies the ID of the bandwidth. | - | | dBalancers__response_BandwidthRef>`__ | This parameter is available only when | - | | object | you create or update a dedicated load | - | | | balancer that has an IPv6 address | - | | | bound. | - | | | | - | | | If you use a new IPv6 address and | - | | | specify a shared bandwidth, the IPv6 | - | | | address will be added to the shared | - | | | bandwidth. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** PoolRef - - ========= ====== ============================================= - Parameter Type Description - ========= ====== ============================================= - id String Specifies the ID of the backend server group. - ========= ====== ============================================= - -.. table:: **Table 7** ListenerRef - - ========= ====== ========================== - Parameter Type Description - ========= ====== ========================== - id String Specifies the listener ID. - ========= ====== ========================== - -.. table:: **Table 8** Tag - - ========= ====== ======================== - Parameter Type Description - ========= ====== ======================== - key String Specifies the tag key. - value String Specifies the tag value. - ========= ====== ======================== - -.. table:: **Table 9** EipInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | eip_id | String | Specifies the EIP ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | eip_address | String | Specifies the specific IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | Integer | Specifies the IP version. **4** | - | | | indicates IPv4, and **6** indicates | - | | | IPv6. | - | | | | - | | | IPv6 is unsupported. The value cannot | - | | | be **6**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 10** PublicIpInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | publicip_id | String | Specifies the EIP ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | publicip_address | String | Specifies the IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | Integer | Specifies the IP version. The value | - | | | can be **4** (IPv4) or **6** (IPv6). | - | | | | - | | | IPv6 is unsupported. The value cannot | - | | | be **6**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 11** BandwidthRef - - ========= ====== ================================== - Parameter Type Description - ========= ====== ================================== - id String Specifies the shared bandwidth ID. - ========= ====== ================================== - -.. table:: **Table 12** PageInfo - - +-----------------+---------+----------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=========+========================================================================================+ - | previous_marker | String | Specifies the ID of the first record in the pagination query result. This parameter | - | | | will not be returned if no query result is returned. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | next_marker | String | Marks the start record on the next page in the pagination query result. This parameter | - | | | will not be returned if there is no next page. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | current_count | Integer | Specifies the number of records. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/{project_id}/elb/loadbalancers?limit={num}&marker={loadbalancer_id} - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "loadbalancers" : [ { - "id" : "87627cb6-9ff1-4580-984f-cc564fa9fc34", - "project_id" : "b2782e6708b8475c993e6064bc456bf8", - "name" : "loadbalancer-cyf", - "description" : "simple lb-cyf", - "vip_port_id" : "0381c10b-4927-4fa5-a7b5-fa529c162a06", - "vip_address" : "192.168.0.26", - "admin_state_up" : true, - "provisioning_status" : "ACTIVE", - "operating_status" : "ONLINE", - "listeners" : [ ], - "pools" : [ ], - "tags" : [ ], - "provider" : "vlb", - "created_at" : "2019-05-24T02:09:39Z", - "updated_at" : "2019-05-24T02:09:39Z", - "vpc_id" : "2037c5bb-e04b-4de2-9300-9051af18e417", - "enterprise_project_id" : "0", - "availability_zone_list" : [ "AZ1" ], - "elb_virsubnet_ids" : [ "ad5d63bf-3b50-4e88-b4d9-e94a59aade48" ], - "eips" : [ ], - "guaranteed" : true, - "l4_flavor_id" : "22365281-de68-45e4-ada4-b0920b6da3c2", - "l7_flavor_id" : "0942eb8f-51fa-4354-87b1-bf4cfeca4823", - "vip_subnet_cidr_id" : "1992ec06-f364-4ae3-b936-6a8cc24633b7" - }, { - "id" : "09e86f09-03fc-440e-8132-03f3e149e979", - "project_id" : "b2782e6708b8475c993e6064bc456bf8", - "name" : "loadbalancer-cyf", - "description" : "simple lb-cyf", - "vip_port_id" : "e0bb984a-d094-4559-9b3b-bd61b5eb3a8f", - "vip_address" : "192.168.0.47", - "admin_state_up" : true, - "provisioning_status" : "ACTIVE", - "operating_status" : "ONLINE", - "listeners" : [ ], - "pools" : [ ], - "tags" : [ ], - "provider" : "vlb", - "created_at" : "2019-05-24T02:02:01Z", - "updated_at" : "2019-05-24T02:02:01Z", - "vpc_id" : "2037c5bb-e04b-4de2-9300-9051af18e417", - "enterprise_project_id" : "0", - "availability_zone_list" : [ "AZ1" ], - "elb_virsubnet_ids" : [ "ad5d63bf-3b50-4e88-b4d9-e94a59aade48" ], - "eips" : [ ], - "guaranteed" : true, - "vip_subnet_cidr_id" : "1992ec06-f364-4ae3-b936-6a8cc24633b7" - } ], - "page_info" : { - "next_marker" : "09e86f09-03fc-440e-8132-03f3e149e979", - "previous_marker" : "87627cb6-9ff1-4580-984f-cc564fa9fc34", - "current_count" : 2 - }, - "request_id" : "8709f187-c879-446c-a198-8f93ede2c178" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/ListMembers.rst b/elb/api-ref/ListMembers.rst deleted file mode 100644 index 55035532..00000000 --- a/elb/api-ref/ListMembers.rst +++ /dev/null @@ -1,459 +0,0 @@ -Querying Backend Servers -======================== - -Function -^^^^^^^^ - -This API is used to query all backend servers. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. - -Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v3/{project_id}/elb/pools/{pool_id}/members - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ============================================= - Parameter Mandatory Type Description - ========== ========= ====== ============================================= - project_id Yes String Specifies the project ID. - pool_id Yes String Specifies the ID of the backend server group. - ========== ========= ====== ============================================= - -.. table:: **Table 2** Query parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | last record on the previous | - | | | | page. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter must be | - | | | | used together with | - | | | | **limit**. | - | | | | | - | | | | - If this parameter is not | - | | | | specified, the first | - | | | | page will be queried. | - | | | | | - | | | | - This parameter cannot be | - | | | | left blank or set to an | - | | | | invalid ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | records on each page. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **2000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**, and the | - | | | | default value is **false**. | - | | | | | - | | | | The last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | Array | Specifies the backend | - | | | | server name. | - | | | | | - | | | | Multiple names can be | - | | | | queried in the format of | - | | | | *name=xxx&name=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | weight | No | Array | Specifies the weight of the | - | | | | backend server. | - | | | | | - | | | | Requests are routed to | - | | | | backend servers in the same | - | | | | backend server group based | - | | | | on their weights. If the | - | | | | weight is 0, the backend | - | | | | server will not accept new | - | | | | requests. | - | | | | | - | | | | This parameter will not | - | | | | take effect when | - | | | | **lb_algorithm** is set to | - | | | | **SOURCE_IP** for the | - | | | | backend server group that | - | | | | contains the backend | - | | | | server. | - | | | | | - | | | | Multiple weights can be | - | | | | queried in the format of | - | | | | *weight=xxx&weight=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server. | - | | | | | - | | | | Although this parameter can | - | | | | be used in the APIs for | - | | | | creating and updating | - | | | | backend servers, its actual | - | | | | value depends on whether | - | | | | cloud servers that serve as | - | | | | the backend servers exist. | - | | | | If cloud servers exist, the | - | | | | value is **true**. | - | | | | Otherwise, the value is | - | | | | **false**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | subnet_cidr_id | No | Array | Specifies the ID of the | - | | | | subnet where the backend | - | | | | server works. | - | | | | | - | | | | This subnet must be in the | - | | | | same VPC as the subnet of | - | | | | the load balancer with | - | | | | which the backend server is | - | | | | associated. Only IPv4 | - | | | | subnets are supported. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *subnet_cidr_ | - | | | | id=xxx&subnet_cidr_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | address | No | Array | Specifies the IP address | - | | | | bound to the backend | - | | | | server. | - | | | | | - | | | | - The IP address must be | - | | | | in the subnet specified | - | | | | by **subnet_cidr_id**, | - | | | | for example, | - | | | | 192.168.3.11. | - | | | | | - | | | | - The IP address can be | - | | | | used only by the primary | - | | | | NIC. | - | | | | | - | | | | Multiple IP addresses can | - | | | | be queried in the format of | - | | | | *address=xxx&address=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | No | Array | Specifies the port used by | - | | | | the backend server. | - | | | | | - | | | | Multiple ports can be | - | | | | queried in the format of | - | | | | *protocol_p | - | | | | ort=xxx&protocol_port=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | Array | Specifies the backend | - | | | | server ID. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *id=xxx&id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | operating_status | No | Array | Specifies the operating | - | | | | status of the backend | - | | | | server. The value can be | - | | | | one of the following: | - | | | | | - | | | | - **ONLINE**: The backend | - | | | | server is running | - | | | | normally. | - | | | | | - | | | | - **NO_MONITOR**: No | - | | | | health check is | - | | | | configured for the | - | | | | backend server group to | - | | | | which the backend server | - | | | | belongs. | - | | | | | - | | | | - **OFFLINE**: The cloud | - | | | | server used as the | - | | | | backend server is | - | | | | stopped or does not | - | | | | exist. | - | | | | | - | | | | Multiple operating statuses | - | | | | can be queried in the | - | | | | format of | - | | | | *operating_status | - | | | | =xxx&operating_status=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | Array | Specifies the enterprise | - | | | | project ID. | - | | | | | - | | | | - If this parameter is not | - | | | | passed, resources in the | - | | | | default enterprise | - | | | | project are queried, and | - | | | | authentication is | - | | | | performed based on the | - | | | | default enterprise | - | | | | project. | - | | | | | - | | | | - If this parameter is | - | | | | passed, its value can be | - | | | | the ID of an existing | - | | | | enterprise project or | - | | | | **all_granted_eps**. | - | | | | | - | | | | If the value is a specific | - | | | | ID, resources in the | - | | | | specific enterprise project | - | | | | are required. If the value | - | | | | is **all_granted_eps**, | - | | | | resources in all enterprise | - | | | | projects are queried. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *enterprise_project_id=xxx& | - | | | | enterprise_project_id=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ip_version | No | String | Specifies the IP version. | - | | | | The value can be **4** | - | | | | (IPv4) or **6** (IPv6). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 3** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 4** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | page_info | `PageInfo <#ListMembers__response_PageInfo>`__ | Shows pagination information. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - | members | Array of | Lists the backend servers. | - | | `Member <#ListMembers__response_Member>`__ | | - | | objects | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 5** PageInfo - - +-----------------+---------+----------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=========+========================================================================================+ - | previous_marker | String | Specifies the ID of the first record in the pagination query result. This parameter | - | | | will not be returned if no query result is returned. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | next_marker | String | Marks the start record on the next page in the pagination query result. This parameter | - | | | will not be returned if there is no next page. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | current_count | Integer | Specifies the number of records. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - -.. table:: **Table 6** Member - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | address | String | Specifies the IP address of the | - | | | backend server. | - | | | | - | | | The IP address must be in the subnet | - | | | specified by **subnet_cidr_id**, for | - | | | example, 192.168.3.11. The IP address | - | | | can only be the IP address of the | - | | | primary NIC. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server. | - | | | | - | | | Although this parameter can be used | - | | | in the APIs for creating and updating | - | | | backend servers, its actual value | - | | | depends on whether cloud servers | - | | | exist. If cloud servers exist, the | - | | | value is **true**. Otherwise, the | - | | | value is **false**. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | backend server. The value can be one | - | | | of the following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | | - | | | - **NO_MONITOR**: No health check is | - | | | configured for the backend server | - | | | group to which the backend server | - | | | belongs. | - | | | | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server to receive requests. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | subnet_cidr_id | String | Specifies the ID of the subnet where | - | | | the backend server works. This subnet | - | | | must be in the VPC as the subnet of | - | | | the load balancer associated with the | - | | | backend server. Only IPv4 subnets are | - | | | supported. If the value is left | - | | | blank, the backend server is not in | - | | | the load balancer's VPC. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | weight | Integer | Specifies the weight of the backend | - | | | server. | - | | | | - | | | Requests are routed to backend | - | | | servers in the same backend server | - | | | group based on their weights. | - | | | | - | | | If the weight is 0, the backend | - | | | server will not accept new requests. | - | | | | - | | | This parameter is invalid when | - | | | **lb_algorithm** is set to | - | | | **SOURCE_IP** for the backend server | - | | | group that contains the backend | - | | | server. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **100** | - | | | | - | | | Default: **1** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | String | This is a read-only attribute, which | - | | | is automatically generated based on | - | | | the **address** parameter. The value | - | | | can be **v4** or **v6**. | - | | | | - | | | Default: **v4** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/{project_id}/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75/members - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "members" : [ { - "name" : "quark-neutron", - "weight" : 100, - "admin_state_up" : false, - "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "address" : "120.10.10.2", - "protocol_port" : 2100, - "id" : "0aa23a52-1ac2-4a2d-8dfa-1e11cb26079d", - "operating_status" : "NO_MONITOR", - "ip_version" : "v4" - }, { - "name" : "quark-neutron", - "weight" : 100, - "admin_state_up" : false, - "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "address" : "120.10.10.2", - "protocol_port" : 2101, - "id" : "315b928b-39e4-4d5f-8e48-39e9108c1035", - "operating_status" : "NO_MONITOR", - "ip_version" : "v4" - }, { - "name" : "quark-neutron", - "weight" : 100, - "admin_state_up" : false, - "subnet_cidr_id" : "27e4ab69-a5ed-46c6-921a-5212be19ce87", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "address" : "2001:db8:a583:6a::4", - "protocol_port" : 2101, - "id" : "53976f72-d2aa-47f5-baf4-4906ed6b42d6", - "operating_status" : "NO_MONITOR", - "ip_version" : "v6" - } ], - "page_info" : { - "previous_marker" : "0aa23a52-1ac2-4a2d-8dfa-1e11cb26079d", - "current_count" : 3 - }, - "request_id" : "87e29592-7ab8-401a-9bf4-66cf6747eab9" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/ListPools.rst b/elb/api-ref/ListPools.rst deleted file mode 100644 index b85492a1..00000000 --- a/elb/api-ref/ListPools.rst +++ /dev/null @@ -1,595 +0,0 @@ -Querying Backend Server Groups -============================== - -Function -^^^^^^^^ - -This API is used to query all backend server groups. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. - -Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v3/{project_id}/elb/pools - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -.. table:: **Table 2** Query parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | last record on the previous | - | | | | page. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter must be | - | | | | used together with | - | | | | **limit**. | - | | | | | - | | | | - If this parameter is not | - | | | | specified, the first | - | | | | page will be queried. | - | | | | | - | | | | - This parameter cannot be | - | | | | left blank or set to an | - | | | | invalid ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | records on each page. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **2000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. This | - | | | | parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | Array | Provides supplementary | - | | | | information about the | - | | | | backend server group. | - | | | | | - | | | | Multiple descriptions can | - | | | | be queried in the format of | - | | | | *descri | - | | | | ption=xxx&description=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server group. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthmonitor_id | No | Array | Specifies the ID of the | - | | | | health check configured for | - | | | | the backend server group. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *healthmonitor_id | - | | | | =xxx&healthmonitor_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | Array | Specifies the ID of the | - | | | | backend server group. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *id=xxx&id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | Array | Specifies the backend | - | | | | server group name. | - | | | | | - | | | | Multiple names can be | - | | | | queried in the format of | - | | | | *name=xxx&name=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | No | Array | Specifies the ID of the | - | | | | load balancer associated | - | | | | with the backend server | - | | | | group. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *loadbalancer_i | - | | | | d=xxx&loadbalancer_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | No | Array | Specifies the protocol used | - | | | | by the backend server group | - | | | | to receive requests. | - | | | | | - | | | | Multiple protocols can be | - | | | | queried in the format of | - | | | | * | - | | | | protocol=xxx&protocol=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | lb_algorithm | No | Array | Specifies the load | - | | | | balancing algorithm used by | - | | | | the load balancer to route | - | | | | requests to backend servers | - | | | | in the backend server | - | | | | group. | - | | | | | - | | | | The value can be | - | | | | **ROUND_ROBIN** (weighted | - | | | | round robin), | - | | | | **LEAST_CONNECTIONS** | - | | | | (weighted least | - | | | | connections), or | - | | | | **SOURCE_IP** (source IP | - | | | | hash). | - | | | | | - | | | | If the value is | - | | | | **SOURCE_IP**, **weight** | - | | | | will not take effect. | - | | | | | - | | | | Multiple algorithms can be | - | | | | queried in the format of | - | | | | *lb_algor | - | | | | ithm=xxx&lb_algorithm=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | Array | Specifies the enterprise | - | | | | project ID. | - | | | | | - | | | | - If this parameter is not | - | | | | passed, resources in the | - | | | | default enterprise | - | | | | project are queried, and | - | | | | authentication is | - | | | | performed based on the | - | | | | default enterprise | - | | | | project. | - | | | | | - | | | | - If this parameter is | - | | | | passed, its value can be | - | | | | the ID of an existing | - | | | | enterprise project or | - | | | | **all_granted_eps**. | - | | | | | - | | | | If the value is a specific | - | | | | ID, resources in the | - | | | | specific enterprise project | - | | | | are required. If the value | - | | | | is **all_granted_eps**, | - | | | | resources in all enterprise | - | | | | projects are queried. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *enterprise_project_id=xxx& | - | | | | enterprise_project_id=xxx*. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ip_version | No | Array | Specifies the IP address | - | | | | version of the backend | - | | | | server group. The value can | - | | | | be **dualstack**, **v4**, | - | | | | or **v6**. | - | | | | | - | | | | Multiple versions can be | - | | | | queried in the format of | - | | | | *ip_v | - | | | | ersion=xxx&ip_version=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_address | No | Array | Specifies the private IP | - | | | | address bound to the | - | | | | backend server. This | - | | | | parameter is used only as a | - | | | | query condition and is not | - | | | | included in the response. | - | | | | | - | | | | Multiple IP addresses can | - | | | | be queried in the format of | - | | | | *member_addre | - | | | | ss=xxx&member_address=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_device_id | No | Array | Specifies the ID of the | - | | | | cloud server that serves as | - | | | | a backend server. This | - | | | | parameter is used only as a | - | | | | query condition and is not | - | | | | included in the response. | - | | | | | - | | | | Multiple IDs can be queried | - | | | | in the format of | - | | | | *member_device_id | - | | | | =xxx&member_device_id=xxx*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 3** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 4** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | page_info | `PageInfo <#ListPools__response_PageInfo>`__ | Shows pagination information. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - | pools | Array of `Pool <#ListPools__response_Pool>`__ | Lists the backend server groups. | - | | objects | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 5** PageInfo - - +-----------------+---------+----------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=========+========================================================================================+ - | previous_marker | String | Specifies the ID of the first record in the pagination query result. This parameter | - | | | will not be returned if no query result is returned. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | next_marker | String | Marks the start record on the next page in the pagination query result. This parameter | - | | | will not be returned if there is no next page. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - | current_count | Integer | Specifies the number of records. | - +-----------------+---------+----------------------------------------------------------------------------------------+ - -.. table:: **Table 6** Pool - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server group. The | - | | | value can only be updated to | - | | | **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor_id | String | Specifies the ID of the health check | - | | | configured for the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server group | - | | | ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm used by the load balancer | - | | | to route requests to backend servers | - | | | in the backend server group. | - | | | | - | | | The value can be **ROUND_ROBIN** | - | | | (weighted round robin), | - | | | **LEAST_CONNECTIONS** (weighted least | - | | | connections), or **SOURCE_IP** | - | | | (source IP hash). | - | | | | - | | | When the value is **SOURCE_IP**, the | - | | | **weight** parameter is invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the listeners associated with | - | | `ListenerRef | the backend server group. | - | | <#ListPools__response_ListenerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array of | Lists the IDs of load balancers | - | | `LoadBalancerRef <#Li | associated with the backend server | - | | stPools__response_LoadBalancerRef>`__ | group. | - | | objects | | - | | | If only **listener_id** is specified | - | | | during the creation of the backend | - | | | server group, the ID of the | - | | | **loadbalancers** parameter in the | - | | | response is the ID of the load | - | | | balancer to which the listener is | - | | | added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array of | Lists the backend servers in the | - | | `MemberRe | backend server group. | - | | f <#ListPools__response_MemberRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server group | - | | | name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | backend server group to receive | - | | | requests. The protocol can be TCP, | - | | | UDP, or HTTP. | - | | | | - | | | - For UDP listeners, the protocol of | - | | | the backend server group must be | - | | | UDP. | - | | | | - | | | - For TCP listeners, the protocol of | - | | | the backend server group must be | - | | | TCP. | - | | | | - | | | - For HTTP or HTTPS listeners, the | - | | | protocol of the backend server | - | | | group must be HTTP. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_persistence | `SessionPersistence <#ListP | Specifies the sticky session. | - | | ools__response_SessionPersistence>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | String | Specifies the IP version supported by | - | | | the backend server group. | - | | | | - | | | - Shared load balancers: The default | - | | | value is **v4**. | - | | | | - | | | - Dedicated load balancers: The | - | | | value can be **dualstack**, | - | | | **v4**, or **v6**. | - | | | | - | | | When the protocol of the backend | - | | | server group is TCP or UDP, | - | | | **ip_version** is set to | - | | | **dualstack**, indicating that both | - | | | IPv4 and IPv6 are supported. | - | | | | - | | | When the protocol of the backend | - | | | server group is HTTP, **ip_version** | - | | | is set to **v4**. | - | | | | - | | | IPv6 is unsupported. Only **v4** is | - | | | returned. | - | | | | - | | | Default: **dualstack** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | slow_start | `SlowStar | Specifies whether to enable slow | - | | t <#ListPools__response_SlowStart>`__ | start. After you enable slow start, | - | | object | new backend servers added to the | - | | | backend server group are warmed up, | - | | | and the number of requests they can | - | | | receive increases linearly during the | - | | | configured slow start duration. | - | | | | - | | | This parameter can be used when the | - | | | protocol of the backend server group | - | | | is HTTP or HTTPS. An error will be | - | | | returned if the protocol is not HTTP | - | | | or HTTPS. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** ListenerRef - - ========= ====== ========================== - Parameter Type Description - ========= ====== ========================== - id String Specifies the listener ID. - ========= ====== ========================== - -.. table:: **Table 8** LoadBalancerRef - - ========= ====== =============================== - Parameter Type Description - ========= ====== =============================== - id String Specifies the load balancer ID. - ========= ====== =============================== - -.. table:: **Table 9** MemberRef - - ========= ====== ================================ - Parameter Type Description - ========= ====== ================================ - id String Specifies the backend server ID. - ========= ====== ================================ - -.. table:: **Table 10** SessionPersistence - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | cookie_name | String | Specifies the cookie name. | - | | | | - | | | This parameter will take effect only | - | | | when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | The value can contain only letters, | - | | | digits, hyphens (-), underscores (_), | - | | | and periods (.). | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the sticky session type. | - | | | The value can be **SOURCE_IP**, | - | | | **HTTP_COOKIE**, or **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, only | - | | | **SOURCE_IP** takes effect. | - | | | | - | | | - For dedicated load balancers, if | - | | | the protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can only be **HTTP_COOKIE**. | - | | | | - | | | - For shared load balancers, if the | - | | | protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can be **HTTP_COOKIE** or | - | | | **APP_COOKIE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | persistence_timeout | Integer | Specifies the stickiness duration, in | - | | | minutes. This parameter will not take | - | | | effect when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, the | - | | | value ranges from **1** to **60**, | - | | | and the default value is **1**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is HTTP or HTTPS, the | - | | | value ranges from **1** to | - | | | **1440**, and the default value is | - | | | **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 11** SlowStart - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | enable | Boolean | Specifies whether to enable slow | - | | | start. | - | | | | - | | | **true** indicates that this function | - | | | is enabled, and **false** indicates | - | | | this function is disabled. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | duration | Integer | Specifies the slow start duration, in | - | | | seconds. | - | | | | - | | | The value ranges from **30** to | - | | | **1200**, and the default value is | - | | | **30**. | - | | | | - | | | Minimum: **30** | - | | | | - | | | Maximum: **1200** | - | | | | - | | | Default: **30** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET https://{elb_endpoint}/v3/{project_id}/elb/pools?limit=2 - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "pools" : [ { - "lb_algorithm" : "ROUND_ROBIN", - "protocol" : "HTTP", - "description" : "", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "309a0f61-0b62-45f2-97d1-742f3434338e" - } ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "session_persistence" : { - "cookie_name" : "my_cookie", - "type" : "APP_COOKIE", - "persistence_timeout" : 1 - }, - "healthmonitor_id" : "", - "listeners" : [ ], - "members" : [ ], - "id" : "73bd4fe0-ffbb-4b56-aab4-4f26ddf7a103", - "name" : "", - "ip_version" : "v4" - }, { - "lb_algorithm" : "SOURCE_IP", - "protocol" : "TCP", - "description" : "", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "d9763e59-64b7-4e93-aec7-0ff7881ef9bc" - } ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "session_persistence" : { - "cookie_name" : "", - "type" : "SOURCE_IP", - "persistence_timeout" : 1 - }, - "healthmonitor_id" : "", - "listeners" : [ { - "id" : "8d21db6f-b475-429e-a9cb-90439b0413b2" - } ], - "members" : [ ], - "id" : "74db02d1-5711-4c77-b383-a450e2b93142", - "name" : "pool_tcp_001", - "ip_version" : "dualstack" - } ], - "page_info" : { - "next_marker" : "74db02d1-5711-4c77-b383-a450e2b93142", - "previous_marker" : "73bd4fe0-ffbb-4b56-aab4-4f26ddf7a103", - "current_count" : 2 - }, - "request_id" : "a1a7e852-1928-48f7-bbc9-ca8469898713" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/ShowCertificate.rst b/elb/api-ref/ShowCertificate.rst deleted file mode 100644 index 7f3d3a3b..00000000 --- a/elb/api-ref/ShowCertificate.rst +++ /dev/null @@ -1,207 +0,0 @@ -Viewing Details of a Certificate -================================ - -Function -^^^^^^^^ - -This API is used to view details of an SSL certificate. - -URI -^^^ - -GET /v3/{project_id}/elb/certificates/{certificate_id} - -.. table:: **Table 1** Path parameters - - ============== ========= ====== =========================== - Parameter Mandatory Type Description - ============== ========= ====== =========================== - project_id Yes String Specifies the project ID. - certificate_id Yes String Specifies a certificate ID. - ============== ========= ====== =========================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +-------------+--------------------------------------------------+--------------------------------------------------+ - | Parameter | Type | Description | - +=============+==================================================+==================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +-------------+--------------------------------------------------+--------------------------------------------------+ - | certificate | `CertificateInfo | Specifies the certificate. | - | | <#ShowCertificate__response_CertificateInfo>`__ | | - | | object | | - +-------------+--------------------------------------------------+--------------------------------------------------+ - -.. table:: **Table 4** CertificateInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the certificate. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate | String | Specifies the private key of the | - | | | certificate. The value must be PEM | - | | | encoded. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the certificate. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain | String | Specifies the domain names used by | - | | | the server certificate. | - | | | | - | | | - This parameter will take effect | - | | | only when **type** is set to | - | | | **server**, and its default value | - | | | is **""**. | - | | | | - | | | - This parameter will not take | - | | | effect even if it is passed and | - | | | **type** is set to **client**. | - | | | However, domain names will still | - | | | be verified. | - | | | | - | | | Note: | - | | | | - | | | - The value can contain 0 to 1024 | - | | | characters and consists of | - | | | multiple common domain names or | - | | | wildcard domain names separated by | - | | | commas. A maximum of 30 domain | - | | | names are allowed. | - | | | | - | | | - A common domain name consists of | - | | | several labels separated by | - | | | periods (.). Each label can | - | | | contain a maximum of 63 | - | | | characters, including letters, | - | | | digits, and hyphens (-), and must | - | | | start and end with a letter or | - | | | digit. Example: www.test.com | - | | | | - | | | - A wildcard domain name is a domain | - | | | name starts with an asterisk (*). | - | | | Example: \*.test.com | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies a certificate ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the certificate name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | private_key | String | Specifies the private key of the | - | | | server certificate. The value must be | - | | | PEM encoded. | - | | | | - | | | - This parameter will be ignored if | - | | | **type** is set to **client**. A | - | | | CA server can still be created and | - | | | used normally. This parameter will | - | | | be left blank even if you enter a | - | | | private key that is not PEM | - | | | encoded. | - | | | | - | | | - This parameter is valid and | - | | | mandatory only when **type** is | - | | | set to **server**. If you enter an | - | | | invalid private key, an error is | - | | | returned. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the certificate type. The | - | | | value can be **server** or | - | | | **client**. **server** indicates | - | | | server certificates, and **client** | - | | | indicates CA certificates. The | - | | | default value is **server**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the | - | | | certificate was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the | - | | | certificate was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expire_time | String | Specifies the time when the | - | | | certificate expires. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - https://{elb_endpoint}/v3/{project_id}/elb/certificates/{certificate_id} - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "certificate" : { - "id" : "5494a835d88f40ff940554992f2f04d4", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "name" : "https_certificatekkkk", - "type" : "server", - "description" : "description for certificatehhhh", - "private_key" : "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "certificate" : "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----", - "admin_state_up" : true, - "created_at" : "2019-03-31T22:23:51Z", - "updated_at" : "2019-03-31T23:26:49Z", - "expire_time" : "2045-11-17T13:25:47Z" - }, - "request_id" : "a94af450-5ac0-4185-946c-27a59a16c1d3" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/ShowFlavor.rst b/elb/api-ref/ShowFlavor.rst deleted file mode 100644 index f9658fa2..00000000 --- a/elb/api-ref/ShowFlavor.rst +++ /dev/null @@ -1,147 +0,0 @@ -Viewing Details of a Flavor -=========================== - -Function -^^^^^^^^ - -This API is used to view details of a flavor. - -Constraints -^^^^^^^^^^^ - -This API can only be used to view the details of a flavor. - -URI -^^^ - -GET /v3/{project_id}/elb/flavors/{flavor_id} - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - flavor_id Yes String Specifies the flavor ID. - ========== ========= ====== ========================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +------------+--------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+==================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+--------------------------------------------------+---------------------------------------------------+ - | flavor | `Flavor <#ShowFlavor__response_Flavor>`__ object | Specifies the flavor. | - +------------+--------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 4** Flavor - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the flavor ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | info | `FlavorInfo | Specifies the flavor details. | - | | <#ShowFlavor__response_FlavorInfo>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the flavor name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | shared | Boolean | Specifies whether the flavor is | - | | | available to all users. | - | | | | - | | | - **true** indicates that the flavor | - | | | is available to all users. | - | | | | - | | | - **false** indicates that the | - | | | flavor is available only to a | - | | | specific user. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the flavor type. Flavors | - | | | can be filtered by type. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** FlavorInfo - - ========== ======= =================================================================== - Parameter Type Description - ========== ======= =================================================================== - connection Integer Specifies the maximum concurrent connections. - cps Integer Specifies the number of new connections per second. - qps Integer Specifies the number of requests per second at Layer 7. - bandwidth Integer Specifies the inbound and outbound bandwidth in the unit of Kbit/s. - ========== ======= =================================================================== - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET https://{elb_endpoint}/v3/{project_id}/elb/flavors/{flavor_id} - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "flavor" : { - "shared" : true, - "project_id" : "573d73c9f90e48d0bddfa0eb202b25c2", - "info" : { - "connection" : 6000, - "cps" : 3000, - "qps" : 1000 - }, - "id" : "becf3beb-7653-45ab-a025-961597a901bc", - "name" : "L7_flavor.elb.s1.small", - "type" : "L7" - }, - "request_id" : "3b9fb516-b7bb-4760-9128-4a23dd36ae10" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Load Balancer Flavor `__ diff --git a/elb/api-ref/ShowHealthMonitor.rst b/elb/api-ref/ShowHealthMonitor.rst deleted file mode 100644 index 7c5f0ebe..00000000 --- a/elb/api-ref/ShowHealthMonitor.rst +++ /dev/null @@ -1,250 +0,0 @@ -Viewing Details of a Health Check -================================= - -Function -^^^^^^^^ - -This API is used to view details of a health check. - -URI -^^^ - -GET /v3/{project_id}/elb/healthmonitors/{healthmonitor_id} - -.. table:: **Table 1** Path parameters - - ================ ========= ====== ============================== - Parameter Mandatory Type Description - ================ ========= ====== ============================== - project_id Yes String Specifies the project ID. - healthmonitor_id Yes String Specifies the health check ID. - ================ ========= ====== ============================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +---------------+-------------------------------------------------+-------------------------------------------------+ - | Parameter | Type | Description | - +===============+=================================================+=================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +---------------+-------------------------------------------------+-------------------------------------------------+ - | healthmonitor | `HealthMonitor | Specifies the health check. | - | | <#ShowHealthMonitor__response_HealthMonitor>`__ | | - | | object | | - +---------------+-------------------------------------------------+-------------------------------------------------+ - -.. table:: **Table 4** HealthMonitor - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the health check. Two value | - | | | options are available. **true** | - | | | indicates that the health check is | - | | | enabled, and **false** indicates that | - | | | the health check is disabled. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | delay | Integer | Specifies the interval between health | - | | | checks, in seconds. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **50** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain_name | String | Specifies the domain name that HTTP | - | | | requests are sent to during the | - | | | health check. | - | | | | - | | | This parameter is available only when | - | | | **type** is set to **HTTP**. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the virtual IP | - | | | address of the load balancer is used | - | | | as the destination address of HTTP | - | | | requests. | - | | | | - | | | The value can contain only digits, | - | | | letters, hyphens (-), and periods (.) | - | | | and must start with a digit or | - | | | letter. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expected_codes | String | Specifies the expected HTTP status | - | | | code. This parameter will take effect | - | | | only when **type** is set to | - | | | **HTTP**. | - | | | | - | | | The value options are as follows: | - | | | | - | | | - A specific value, for example, 200 | - | | | | - | | | - A list of values that are | - | | | separated with commas (,), for | - | | | example, 200, 202 | - | | | | - | | | - A value range, for example, | - | | | 200-204 | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **200** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http_method | String | Specifies the HTTP method. This | - | | | parameter will take effect only when | - | | | **type** is set to **HTTP**. | - | | | | - | | | The value can be **GET**, **HEAD**, | - | | | **POST**, **PUT**, **DELETE**, | - | | | **TRACE**, **OPTIONS**, **CONNECT**, | - | | | or **PATCH**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **GET** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **OFFLINE** to **ONLINE**. The | - | | | value ranges from **1** to **10**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **10** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries_down | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **ONLINE** to **OFFLINE**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **10** | - | | | | - | | | Default: **3** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | monitor_port | Integer | Specifies the port used for the | - | | | health check. If this parameter is | - | | | left blank, the port of the backend | - | | | server group will be used by default. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Lists the IDs of backend server | - | | `PoolRef <#Sh | groups for which the health check is | - | | owHealthMonitor__response_PoolRef>`__ | configured. | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | timeout | Integer | Specifies the maximum time required | - | | | for waiting for a response from the | - | | | health check, in seconds. It is | - | | | recommended that you set the value | - | | | less than that of parameter | - | | | **delay**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **50** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the health check protocol. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | url_path | String | Specifies the HTTP request path for | - | | | the health check. The value must | - | | | start with a slash (/), and the | - | | | default value is /. This parameter is | - | | | available only when **type** is set | - | | | to **HTTP**. | - | | | | - | | | Default: **/** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** PoolRef - - ========= ====== ============================================= - Parameter Type Description - ========= ====== ============================================= - id String Specifies the ID of the backend server group. - ========= ====== ============================================= - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/healthmonitors/c2b210b2-60c4-449d-91e2-9e9ea1dd7441 - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "healthmonitor" : { - "id" : "c2b210b2-60c4-449d-91e2-9e9ea1dd7441", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "name" : "My Healthmonitor update", - "delay" : 10, - "max_retries" : 10, - "pools" : [ { - "id" : "488acc50-6bcf-423d-8f0a-0f4184f5b8a0" - } ], - "admin_state_up" : true, - "timeout" : 30, - "type" : "HTTP", - "expected_codes" : "200", - "url_path" : "/", - "http_method" : "GET" - }, - "request_id" : "3702e8f0-f5f0-4d35-9097-fc7160005fae" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/ShowL7Policy.rst b/elb/api-ref/ShowL7Policy.rst deleted file mode 100644 index affff880..00000000 --- a/elb/api-ref/ShowL7Policy.rst +++ /dev/null @@ -1,505 +0,0 @@ -Viewing Details of a Forwarding Policy -====================================== - -Function -^^^^^^^^ - -This API is used to view details of a forwarding policy. - -URI -^^^ - -GET /v3/{project_id}/elb/l7policies/{l7policy_id} - -.. table:: **Table 1** Path parameters - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - project_id Yes String Specifies the project ID. - l7policy_id Yes String Specifies the forwarding policy ID. - =========== ========= ====== =================================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | l7policy | `L7Policy <#ShowL7Policy__response_L7Policy>`__ | Specifies the forwarding policy. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 4** L7Policy - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | action | String | Specifies where requests will be | - | | | forwarded. The value can be one of | - | | | the following: | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests | - | | | will be forwarded to another | - | | | backend server group. | - | | | | - | | | - **REDIRECT_TO_LISTENER**: Requests | - | | | will be redirected to an HTTPS | - | | | listener. | - | | | | - | | | **REDIRECT_TO_LISTENER** has the | - | | | highest priority. If requests are to | - | | | be redirected to an HTTPS listener, | - | | | other forwarding policies of the | - | | | listener will become invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding policy. The default | - | | | value is **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the forwarding policy is added. | - | | | | - | | | - If **action** is set to | - | | | **REDIRECT_TO_POOL**, the | - | | | forwarding policy can be added to | - | | | an HTTP or HTTPS listener. | - | | | | - | | | - If **action** is set to | - | | | **REDIRECT_TO_LISTENER**, the | - | | | forwarding policy can be added to | - | | | an HTTP listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | position | Integer | Specifies the forwarding policy | - | | | priority. This parameter cannot be | - | | | updated. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **100** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID of the | - | | | forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding policy. | - | | | | - | | | The value can only be **ACTIVE**. | - | | | | - | | | Default: **ACTIVE** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_listener_id | String | Specifies the ID of the listener that | - | | | requests are redirected to. | - | | | | - | | | This parameter is valid and mandatory | - | | | only when **action** is set to | - | | | **REDIRECT_TO_LISTENER**. | - | | | | - | | | Only HTTPS listeners are supported, | - | | | and the listener cannot be any | - | | | listener added to other load | - | | | balancers. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_pool_id | String | Specifies the ID of the backend | - | | | server group that requests are | - | | | forwarded to. | - | | | | - | | | This parameter is valid and mandatory | - | | | only when **action** is set to | - | | | **REDIRECT_TO_POOL**. | - | | | | - | | | The specified backend server group | - | | | cannot be the default one associated | - | | | with the listener, or any backend | - | | | server group associated with the | - | | | forwarding policies of other | - | | | listeners. | - | | | | - | | | This parameter cannot be specified | - | | | when **action** is set to | - | | | **REDIRECT_TO_LISTENER**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url | String | Specifies the URL to which requests | - | | | are forwarded. | - | | | | - | | | Format: | - | | | *protocol://host:port/path?query* | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array of | Lists the forwarding rules in the | - | | `RuleRef | forwarding policy. | - | | <#ShowL7Policy__response_RuleRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url_config | `RedirectUrlConfig <#ShowL7P | Specifies the URL to which requests | - | | olicy__response_RedirectUrlConfig>`__ | are forwarded. | - | | object | | - | | | For shared load balancers, this | - | | | parameter is not supported. If it is | - | | | passed, an error will be returned. | - | | | | - | | | For dedicated load balancers, this | - | | | parameter will take effect only when | - | | | advanced forwarding is enabled | - | | | (**enhance_l7policy_enable** is set | - | | | to **true**). If it is passed when | - | | | **enhance_l7policy_enable** is set to | - | | | **false**, an error will be returned. | - | | | | - | | | Format: | - | | | *protocol://host:port/path?query* | - | | | | - | | | At least one of the four parameters | - | | | (**protocol**, **host**, **port**, | - | | | and **path**) must be passed, or | - | | | their values cannot be set to | - | | | **${xxx}** at the same time. | - | | | (**${xxx}** indicates that the value | - | | | in the request will be inherited. For | - | | | example, **${host}** indicates the | - | | | host in the URL to be redirected.) | - | | | | - | | | The values of **protocol** and | - | | | **port** cannot be the same as those | - | | | of the associated listener, and | - | | | either **host** or **path** must be | - | | | passed or their values cannot be | - | | | **${xxx}** at the same time. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | fixed_response_config | `FixtedResponseConfig <#ShowL7Poli | Specifies the configuration of the | - | | cy__response_FixtedResponseConfig>`__ | page that will be returned. This | - | | object | parameter will take effect when | - | | | **enhance_l7policy_enable** is set to | - | | | **true**. If this parameter is passed | - | | | and **enhance_l7policy_enable** is | - | | | set to **false**, an error will be | - | | | returned. For shared load balancers, | - | | | this parameter is not supported. If | - | | | it is passed, an error will be | - | | | returned. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | priority | Integer | Specifies the forwarding policy | - | | | priority. This parameter is available | - | | | only for dedicated load balancers and | - | | | will take effect when | - | | | **enhance_l7policy_enable** is set to | - | | | **true**. | - | | | | - | | | A smaller value indicates a higher | - | | | priority. The value must be unique | - | | | for each forwarding policy of the | - | | | same listener. | - | | | | - | | | If **action** is set to | - | | | **REDIRECT_TO_LISTENER**, the value | - | | | can only be **0**, indicating that | - | | | **REDIRECT_TO_LISTENER** has the | - | | | highest priority. | - | | | | - | | | - If **enhance_l7policy_enable** is | - | | | set to **false**, forwarding | - | | | policies are automatically | - | | | prioritized based on the original | - | | | sorting logic. Forwarding policy | - | | | priorities are independent of each | - | | | other regardless of domain names. | - | | | If forwarding policies use the | - | | | same domain name, their priorities | - | | | follow the order of exact match | - | | | (**EQUAL_TO**), prefix match | - | | | (**STARTS_WITH**), and regular | - | | | expression match (**REGEX**). If | - | | | prefix match is used for matching, | - | | | the longer the path, the higher | - | | | the priority. If a forwarding | - | | | policy contains only a domain name | - | | | without a path specified, the path | - | | | is **/**, and prefix match is used | - | | | by default. | - | | | | - | | | - If **enhance_l7policy_enable** is | - | | | set to **true** and this parameter | - | | | is not passed, the priority will | - | | | set to a sum of 1 and the highest | - | | | priority of existing forwarding | - | | | policy in the same listener by | - | | | default. There will be two cases: | - | | | a) If the highest priority of | - | | | existing forwarding policies is | - | | | the maximum (10,000), the | - | | | forwarding policy will fail to | - | | | create because the final priority | - | | | for creating the forwarding policy | - | | | is the sum of 1 and 10,000, which | - | | | exceeds the maximum. In this case, | - | | | please specify a value or adjust | - | | | the priorities of existing | - | | | forwarding policies. b) If no | - | | | forwarding policies exist, the | - | | | highest priority of existing | - | | | forwarding policies will set to 1 | - | | | by default. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **10000** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** RuleRef - - ========= ====== ================================= - Parameter Type Description - ========= ====== ================================= - id String Specifies the forwarding rule ID. - ========= ====== ================================= - -.. table:: **Table 6** RedirectUrlConfig - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | protocol | String | Specifies the protocol for | - | | | redirection. The default value is | - | | | **${protocol}**, indicating that the | - | | | protocol of the request will be used. | - | | | | - | | | Value options: | - | | | | - | | | - **HTTP** | - | | | | - | | | - **HTTPS** | - | | | | - | | | - **${protocol}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **36** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | host | String | Specifies the host name that requests | - | | | are redirected to. The value can | - | | | contain only letters, digits, hyphens | - | | | (-), and periods (.) and must start | - | | | with a letter or digit. The default | - | | | value is **${host}**, indicating that | - | | | the host of the request will be used. | - | | | | - | | | Default: **${host}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | port | String | Specifies the port that requests are | - | | | redirected to. The default value is | - | | | **${port}**, indicating that the port | - | | | of the request will be used. | - | | | | - | | | Default: **${port}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | path | String | Specifies the path that requests are | - | | | redirected to. The default value is | - | | | **${path}**, indicating that the path | - | | | of the request will be used. The | - | | | value can contain only letters, | - | | | digits, and special characters | - | | | \_-';@^- %#&$.*+?,=!:|/()[]{} and | - | | | must start with a slash (/). | - | | | | - | | | Default: **${path}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | query | String | Specifies the query string set in the | - | | | URL for redirection. The default | - | | | value is **${query}**, indicating | - | | | that the query string of the request | - | | | will be used. | - | | | | - | | | For example, in the URL | - | | | **https://www. | - | | | xxx.com:8080/elb?type=loadbalancer**, | - | | | **${query}** indicates | - | | | **type=loadbalancer**. If this | - | | | parameter is set to | - | | | **${query}&name=my_name**, the URL | - | | | will be redirected to | - | | | **https://www.xxx.com:8080/ | - | | | elb?type=loadbalancer&name=my_name**. | - | | | | - | | | The value is case-sensitive and can | - | | | contain only letters, digits, and | - | | | special characters | - | | | !$&'()*+,-./:;=?@^_\` | - | | | | - | | | Default: **${query}** | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status_code | String | Specifies the status code returned | - | | | after the requests are redirected. | - | | | | - | | | Value options: | - | | | | - | | | - **301** | - | | | | - | | | - **302** | - | | | | - | | | - **303** | - | | | | - | | | - **307** | - | | | | - | | | - **308** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** FixtedResponseConfig - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | status_code | String | Specifies the HTTP status code | - | | | configured in the forwarding policy. | - | | | The value can be any integer in the | - | | | range of 200–299, 400–499, or | - | | | 500–599. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | content_type | String | Specifies the format of the response | - | | | body. | - | | | | - | | | Value options: | - | | | | - | | | - **text/plain** | - | | | | - | | | - **text/css** | - | | | | - | | | - **text/html** | - | | | | - | | | - **application/javascript** | - | | | | - | | | - **application/json** | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | message_body | String | Specifies the content of the response | - | | | body. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies/cf4360fd-8631-41ff-a6f5-b72c35da74be - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "l7policy" : { - "description" : "", - "admin_state_up" : true, - "rules" : [ ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "listener_id" : "e2220d2a-3faf-44f3-8cd6-0c42952bd0ab", - "redirect_listener_id" : "48a97732-449e-4aab-b561-828d29e45050", - "action" : "REDIRECT_TO_LISTENER", - "position" : 100, - "provisioning_status" : "ACTIVE", - "id" : "cf4360fd-8631-41ff-a6f5-b72c35da74be", - "name" : "" - }, - "request_id" : "6be83ec4-623e-4840-a417-2fcdf8ad5dfa" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/ShowL7Rule.rst b/elb/api-ref/ShowL7Rule.rst deleted file mode 100644 index 14adf18b..00000000 --- a/elb/api-ref/ShowL7Rule.rst +++ /dev/null @@ -1,256 +0,0 @@ -Viewing Details of a Forwarding Rule -==================================== - -Function -^^^^^^^^ - -This API is used to view details of a forwarding rule. - -URI -^^^ - -GET /v3/{project_id}/elb/l7policies/{l7policy_id}/rules/{l7rule_id} - -.. table:: **Table 1** Path parameters - - =========== ========= ====== ================================ - Parameter Mandatory Type Description - =========== ========= ====== ================================ - project_id Yes String Specifies the project ID. - l7policy_id Yes String Specifies the forwarding policy. - l7rule_id Yes String Specifies the forwarding rule. - =========== ========= ====== ================================ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +------------+--------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+==================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+--------------------------------------------------+---------------------------------------------------+ - | rule | `L7Rule <#ShowL7Rule__response_L7Rule>`__ object | Specifies the forwarding rule. | - +------------+--------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 4** L7Rule - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding rule. The default | - | | | value is **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | compare_type | String | Specifies how requests are matched | - | | | with the domain name or URL. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, this parameter can | - | | | only be set to **EQUAL_TO**. | - | | | | - | | | - If **type** is set to **PATH**, | - | | | this parameter can be set to | - | | | **REGEX**, **STARTS_WITH**, or | - | | | **EQUAL_TO**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | key | String | Specifies the key of the match | - | | | content. This parameter will not take | - | | | effect when **type** is set to | - | | | **HOST_NAME** or **PATH**. It can be | - | | | updated but will not take effect. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the match content. The | - | | | value can be one of the following: | - | | | | - | | | - **HOST_NAME**: A domain name will | - | | | be used for matching. | - | | | | - | | | - **PATH**: A URL will be used for | - | | | matching. | - | | | | - | | | If **type** is set to **HOST_NAME**, | - | | | **PATH**, **METHOD**, or | - | | | **SOURCE_IP**, only one forwarding | - | | | rule can be created for each type. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | item. For example, if a domain name | - | | | is used for matching, **value** is | - | | | the domain name. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, the value can | - | | | contain letters, digits, hyphens | - | | | (-), and periods (.) and must | - | | | start with a letter or digit. If | - | | | you want to use a wildcard domain | - | | | name, enter an asterisk (*) as the | - | | | leftmost label of the domain name. | - | | | | - | | | - If **type** is set to **PATH** and | - | | | **compare_type** to | - | | | **STARTS_WITH** or **EQUAL_TO**, | - | | | the value must start with a slash | - | | | (/) and can contain only letters, | - | | | digits, and special characters | - | | | \_~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding rule. | - | | | | - | | | The value can only be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | invert | Boolean | Specifies whether reverse matching is | - | | | supported. The value is fixed at | - | | | **false**. This parameter can be | - | | | updated but remains invalid. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | conditions | Array of | Specifies the matching conditions of | - | | `RuleCondition <#S | the forwarding rule. | - | | howL7Rule__response_RuleCondition>`__ | | - | | objects | - If **conditions** is specified, | - | | | **key** and **value** will not | - | | | take effect, and the value of this | - | | | parameter will contain all | - | | | conditions configured for the | - | | | forwarding rule. The keys in the | - | | | list must be the same, whereas | - | | | each value must be unique. | - | | | | - | | | - If **conditions** is not | - | | | specified, the values of **key** | - | | | and **value** are displayed. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** RuleCondition - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | key | String | Specifies the key of match item. This | - | | | parameter is left blank. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | item. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, **key** is left | - | | | blank, and **value** indicates the | - | | | domain name, which can contain 1 | - | | | to 128 characters, including | - | | | letters, digits, hyphens (-), | - | | | periods (.), and asterisks (*), | - | | | and must start with a letter, | - | | | digit, or asterisk (*). If you | - | | | want to use a wildcard domain | - | | | name, enter an asterisk (*) as the | - | | | leftmost label of the domain name. | - | | | | - | | | - If **type** is set to **PATH**, | - | | | **key** is left blank, and | - | | | **value** indicates the request | - | | | path, which can contain 1 to 128 | - | | | characters. If **compare_type** is | - | | | set to **STARTS_WITH** or | - | | | **EQUAL_TO** for the forwarding | - | | | rule, the value must start with a | - | | | slash (/) and can contain only | - | | | letters, digits, and special | - | | | characters | - | | | \_~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies/cf4360fd-8631-41ff-a6f5-b72c35da74be/rules/84f4fcae-9c15-4e19-a99f-72c0b08fd3d7 - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "rule" : { - "compare_type" : "STARTS_WITH", - "provisioning_status" : "ACTIVE", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "invert" : false, - "admin_state_up" : true, - "value" : "/ccc.html", - "type" : "PATH", - "id" : "84f4fcae-9c15-4e19-a99f-72c0b08fd3d7" - }, - "request_id" : "0d799435-259e-459f-b2bc-0beee06f6a77" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/ShowListener.rst b/elb/api-ref/ShowListener.rst deleted file mode 100644 index 88dc7398..00000000 --- a/elb/api-ref/ShowListener.rst +++ /dev/null @@ -1,433 +0,0 @@ -Viewing Details of a Listener -============================= - -Function -^^^^^^^^ - -This API is used to view details of a listener. - -URI -^^^ - -GET /v3/{project_id}/elb/listeners/{listener_id} - -.. table:: **Table 1** Path parameters - - =========== ========= ====== ========================== - Parameter Mandatory Type Description - =========== ========= ====== ========================== - project_id Yes String Specifies the project ID. - listener_id Yes String Specifies the listener ID. - =========== ========= ====== ========================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | listener | `Listener <#ShowListener__response_Listener>`__ | Specifies the listener. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 4** Listener - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the listener. And the value can | - | | | only be **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_ca_tls_container_ref | String | Specifies the ID of the CA | - | | | certificate used by the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | connection_limit | Integer | Specifies the maximum number of | - | | | connections. The default value is | - | | | **-1**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the listener | - | | | was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_pool_id | String | Specifies the ID of the default | - | | | backend server group. If there is no | - | | | matched forwarding policy, requests | - | | | are forwarded to the default backend | - | | | server. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_tls_container_ref | String | Specifies the ID of the server | - | | | certificate used by the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http2_enable | Boolean | Specifies whether to use HTTP/2. This | - | | | parameter is available only for HTTPS | - | | | listeners. If you configure this | - | | | parameter for other types of | - | | | listeners, it will not take effect. | - | | | | - | | | Enable HTTP/2 if you want the clients | - | | | to use HTTP/2 to communicate with the | - | | | load balancer. However, connections | - | | | between the load balancer and backend | - | | | servers use HTTP/1.x by default. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | insert_headers | `ListenerInsertHeaders <#ShowListene | Specifies the HTTP header fields. | - | | r__response_ListenerInsertHeaders>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array of | Specifies the ID of the load balancer | - | | `LoadBalancerRef <#ShowL | that the listener is added to. | - | | istener__response_LoadBalancerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the ID of the project where | - | | | the listener is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | listener. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sni_container_refs | Array of strings | Lists the IDs of SNI certificates | - | | | (server certificates with domain | - | | | names) used by the listener. | - | | | | - | | | Each SNI certificate can have up to | - | | | 30 domain names, and each domain name | - | | | in the SNI certificate must be | - | | | unique. | - | | | | - | | | This parameter will be ignored and an | - | | | empty array will be returned if the | - | | | listener's protocol is not HTTPS. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array of | Lists the tags. | - | | `Tag <#ShowListener__response_Tag>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the listener | - | | | was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tls_ciphers_policy | String | Specifies the security policy used by | - | | | the listener. This parameter is | - | | | available only for HTTPS listeners. | - | | | | - | | | The value can be **tls-1-0**, | - | | | **tls-1-1**, **tls-1-2**, or | - | | | **tls-1-2-strict**, and the default | - | | | value is **tls-1-0**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_member_retry | Boolean | Specifies whether to enable health | - | | | check retries for backend servers. | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | keepalive_timeout | Integer | Specifies the idle timeout duration, | - | | | in seconds. | - | | | | - | | | - For TCP listeners, the value | - | | | ranges from **10** to **4000**, | - | | | and the default value is **300**. | - | | | | - | | | - For HTTP and HTTPS listeners, the | - | | | value ranges from **0** to | - | | | **4000**, and the default value is | - | | | **60**. | - | | | | - | | | - For UDP listeners, this parameter | - | | | does not take effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_timeout | Integer | Specifies the timeout duration for | - | | | waiting for a request from a client, | - | | | in seconds. | - | | | | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. The value | - | | | ranges from **1** to **300**, and the | - | | | default value is **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | member_timeout | Integer | Specifies the timeout duration for | - | | | waiting for a request from a backend | - | | | server, in seconds. | - | | | | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. The value | - | | | ranges from **1** to **300**, and the | - | | | default value is **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipgroup | `ListenerIpGroup <#ShowL | Specifies the IP address group | - | | istener__response_ListenerIpGroup>`__ | associated with the listener. | - | | object | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | transparent_client_ip_enable | Boolean | Specifies whether to pass source IP | - | | | addresses of the clients to backend | - | | | servers. | - | | | | - | | | Shared load balancers: The value can | - | | | be **true** or **false**, and the | - | | | default value is **false** for TCP | - | | | and UDP listeners. The value can only | - | | | be **true** for HTTP and HTTPS | - | | | listeners. If this parameter is not | - | | | passed, the default value is | - | | | **true**. | - | | | | - | | | Dedicated load balancers: The value | - | | | can only be **true** for all types of | - | | | listeners. If this parameter is not | - | | | passed, the default value is | - | | | **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enhance_l7policy_enable | Boolean | Specifies whether to enable advanced | - | | | forwarding. The value can be **true** | - | | | or **false** (default). | - | | | | - | | | - **true** indicates that advanced | - | | | forwarding will be enabled. | - | | | | - | | | - **false** indicates that advanced | - | | | forwarding will not be enabled. | - | | | | - | | | The following parameters will be | - | | | available only when advanced | - | | | forwarding is enabled: | - | | | | - | | | - **redirect_url_config** | - | | | | - | | | - **fixed_response_config** | - | | | | - | | | - **priority** | - | | | | - | | | - **conditions** | - | | | | - | | | For details, see the descriptions in | - | | | the APIs of forwarding policies and | - | | | forwarding rules. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** ListenerInsertHeaders - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | X-Forwarded-ELB-IP | Boolean | Specifies whether to transparently | - | | | transmit the load balancer EIP to | - | | | backend servers. If | - | | | **X-Forwarded-ELB-IP** is set to | - | | | **true**, the load balancer EIP will | - | | | be stored in the HTTP header and | - | | | passed to backend servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-Port | Boolean | Specifies whether to transparently | - | | | transmit the listening port of the | - | | | load balancer to backend servers. If | - | | | **X-Forwarded-Port** is set to | - | | | **true**, the listening port of the | - | | | load balancer will be stored in the | - | | | HTTP header and passed to backend | - | | | servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-For-Port | Boolean | Specifies whether to transparently | - | | | transmit the source port of the | - | | | client to backend servers. If | - | | | **X-Forwarded-For-Port** is set to | - | | | **true**, the source port of the | - | | | client will be stored in the HTTP | - | | | header and passed to backend servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-Host | Boolean | Specifies whether to rewrite the | - | | | **X-Forwarded-Host** header. If | - | | | **X-Forwarded-Host** is set to | - | | | **true**, **X-Forwarded-Host** in the | - | | | request header from the clients can | - | | | be set to **Host** in the request | - | | | header sent from the load balancer to | - | | | backend servers. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** LoadBalancerRef - - ========= ====== =============================== - Parameter Type Description - ========= ====== =============================== - id String Specifies the load balancer ID. - ========= ====== =============================== - -.. table:: **Table 7** Tag - - ========= ====== ======================== - Parameter Type Description - ========= ====== ======================== - key String Specifies the tag key. - value String Specifies the tag value. - ========= ====== ======================== - -.. table:: **Table 8** ListenerIpGroup - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | ipgroup_id | String | Specifies the ID of the IP address | - | | | group associated with the listener. | - | | | | - | | | - If **ip_list** is set to **[]** | - | | | and **type** to **whitelist**, no | - | | | IP addresses are allowed to access | - | | | the listener. | - | | | | - | | | - If **ip_list** is set to **[]** | - | | | and **type** to **blacklist**, any | - | | | IP address is allowed to access | - | | | the listener. | - | | | | - | | | - The specified IP address group | - | | | must exist and this parameter | - | | | cannot be set to **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_ipgroup | Boolean | Specifies whether to enable access | - | | | control. | - | | | | - | | | - **true**: Access control is | - | | | enabled. | - | | | | - | | | - **false**: Access control is | - | | | disabled. | - | | | | - | | | A listener with access control | - | | | enabled can be directly deleted. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies how access to the listener | - | | | is controlled. | - | | | | - | | | - **white**: A whitelist is | - | | | configured. Only IP addresses in | - | | | the whitelist can access the | - | | | listener. | - | | | | - | | | - **black**: A blacklist is | - | | | configured. IP addresses in the | - | | | blacklist are not allowed to | - | | | access the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{ELB_Endpoint}/v3/060576782980d5762f9ec014dd2f1148/elb/listeners/683cf917-3e51-4c41-830c-bc3a57e090f0 - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "listener" : { - "id" : "683cf917-3e51-4c41-830c-bc3a57e090f0", - "name" : "My listener", - "protocol_port" : 90, - "protocol" : "HTTPS", - "description" : "", - "default_tls_container_ref" : "4e7761d7c7d141c389479f2641c8bff8", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "ac82ca77-8be3-4d65-9c4d-155771b463df" - } ], - "project_id" : "060576782980d5762f9ec014dd2f1148", - "sni_container_refs" : [ ], - "connection_limit" : -1, - "tls_ciphers_policy" : "tls-1-0", - "tags" : [ ], - "created_at" : "2021-04-02T07:48:38Z", - "updated_at" : "2021-04-02T07:48:38Z", - "http2_enable" : false, - "insert_headers" : { - "X-Forwarded-ELB-IP" : false, - "X-Forwarded-Host" : true, - "X-Forwarded-For-Port" : false, - "X-Forwarded-Port" : false - }, - "member_timeout" : 60, - "client_timeout" : 60, - "keepalive_timeout" : 60, - "enable_member_retry" : true, - "transparent_client_ip_enable" : true, - "enhance_l7policy_enable" : false - }, - "request_id" : "830de7c7c38232d925db168bfb3cb0e8" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/ShowLoadBalancer.rst b/elb/api-ref/ShowLoadBalancer.rst deleted file mode 100644 index 84309011..00000000 --- a/elb/api-ref/ShowLoadBalancer.rst +++ /dev/null @@ -1,433 +0,0 @@ -Viewing Details of a Load Balancer -================================== - -Function -^^^^^^^^ - -This API is used to view details of a load balancer. - -URI -^^^ - -GET /v3/{project_id}/elb/loadbalancers/{loadbalancer_id} - -.. table:: **Table 1** Path parameters - - =============== ========= ====== =============================== - Parameter Mandatory Type Description - =============== ========= ====== =============================== - project_id Yes String Specifies the project ID. - loadbalancer_id Yes String Specifies the load balancer ID. - =============== ========= ====== =============================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +--------------+--------------------------------------------------+--------------------------------------------------+ - | Parameter | Type | Description | - +==============+==================================================+==================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +--------------+--------------------------------------------------+--------------------------------------------------+ - | loadbalancer | `LoadBalanc | Specifies the load balancer. | - | | er <#ShowLoadBalancer__response_LoadBalancer>`__ | | - | | object | | - +--------------+--------------------------------------------------+--------------------------------------------------+ - -.. table:: **Table 4** LoadBalancer - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the load balancer ID. | - | | | | - | | | Default: **Automatically generated** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the load balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the load balancer. The value can only | - | | | be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the load balancer. The value can | - | | | only be **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provider | String | Specifies the provider of the load | - | | | balancer. The value can only be | - | | | **vlb**. | - | | | | - | | | Default: **vlb** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Lists the IDs of backend server | - | | `PoolRef <#S | groups associated with the load | - | | howLoadBalancer__response_PoolRef>`__ | balancer. | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the IDs of listeners added to | - | | `ListenerRef <#ShowL | the load balancer. | - | | oadBalancer__response_ListenerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | load balancer. The value can only be | - | | | **ONLINE**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_address | String | Specifies the private IPv4 address | - | | | bound to the load balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **64** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_cidr_id | String | Specifies the ID of the IPv4 subnet | - | | | where the load balancer works. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **36** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the name of the load | - | | | balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID of the load | - | | | balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_port_id | String | Specifies the ID of the port bound to | - | | | the virtual IP address (the value of | - | | | **vip_address**) of the load | - | | | balancer. | - | | | | - | | | When you create a dedicated load | - | | | balancer, the system automatically | - | | | creates a port for the load balancer | - | | | and associates the port with a | - | | | default security group. However, | - | | | security group rules containing the | - | | | port will not affect traffic to and | - | | | from the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array of | Lists the tags added to the load | - | | `Tag | balancer. | - | | <#ShowLoadBalancer__response_Tag>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the load | - | | | balancer was created. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **20** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the load | - | | | balancer was updated. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **20** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | guaranteed | Boolean | Specifies whether the load balancer | - | | | is a dedicated load balancer. | - | | | | - | | | The value can be **true** or | - | | | **false**. **true** indicates a | - | | | dedicated load balancer, and | - | | | **false** indicates a shared load | - | | | balancer. When dedicated load | - | | | balancers are launched in the | - | | | **eu-de** region, either **true** or | - | | | **false** will be returned when you | - | | | use the API to query or update a load | - | | | balancer. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vpc_id | String | Specifies the ID of the VPC where the | - | | | load balancer works. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | eips | Array of | Specifies the EIP bound to the load | - | | `EipInfo <#S | balancer. | - | | howLoadBalancer__response_EipInfo>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_address | String | Specifies the IPv6 address bound to | - | | | the load balancer. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **None** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **64** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_virsubnet_id | String | Specifies the ID of the IPv6 subnet | - | | | where the load balancer works. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_port_id | String | Specifies the ID of the port bound to | - | | | the IPv6 address. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | availability_zone_list | Array of strings | Specifies the list of AZs where the | - | | | load balancer is created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enterprise_project_id | String | Specifies the enterprise project ID. | - | | | | - | | | If this parameter is not passed | - | | | during resource creation, the | - | | | resource belongs to the default | - | | | enterprise project. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **0** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l4_flavor_id | String | Specifies the Layer-4 flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l4_scale_flavor_id | String | Specifies the reserved Layer 4 | - | | | flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7_flavor_id | String | Specifies the Layer-7 flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7_scale_flavor_id | String | Specifies the reserved Layer 7 | - | | | flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | publicips | Array of | Specifies the EIP bound to the load | - | | `PublicIpInfo <#ShowLo | balancer. | - | | adBalancer__response_PublicIpInfo>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | elb_virsubnet_ids | Array of strings | Specifies the ID of the subnet on the | - | | | downstream plane. The ports used by | - | | | the load balancer dynamically occupy | - | | | IP addresses in the subnet. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_target_enable | Boolean | Specifies whether to enable cross-VPC | - | | | backend. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | frozen_scene | String | Specifies the scenario where the load | - | | | balancer is frozen. Use commas to | - | | | separate multiple scenarios. | - | | | | - | | | If the value is **ARREAR**, the load | - | | | balancer is frozen because your | - | | | account is in arrears. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_bandwidth | `BandwidthRef <#ShowLo | Specifies the ID of the bandwidth. | - | | adBalancer__response_BandwidthRef>`__ | This parameter is available only when | - | | object | you create or update a dedicated load | - | | | balancer that has an IPv6 address | - | | | bound. | - | | | | - | | | If you use a new IPv6 address and | - | | | specify a shared bandwidth, the IPv6 | - | | | address will be added to the shared | - | | | bandwidth. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** PoolRef - - ========= ====== ============================================= - Parameter Type Description - ========= ====== ============================================= - id String Specifies the ID of the backend server group. - ========= ====== ============================================= - -.. table:: **Table 6** ListenerRef - - ========= ====== ========================== - Parameter Type Description - ========= ====== ========================== - id String Specifies the listener ID. - ========= ====== ========================== - -.. table:: **Table 7** Tag - - ========= ====== ======================== - Parameter Type Description - ========= ====== ======================== - key String Specifies the tag key. - value String Specifies the tag value. - ========= ====== ======================== - -.. table:: **Table 8** EipInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | eip_id | String | Specifies the EIP ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | eip_address | String | Specifies the specific IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | Integer | Specifies the IP version. **4** | - | | | indicates IPv4, and **6** indicates | - | | | IPv6. | - | | | | - | | | IPv6 is unsupported. The value cannot | - | | | be **6**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 9** PublicIpInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | publicip_id | String | Specifies the EIP ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | publicip_address | String | Specifies the IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | Integer | Specifies the IP version. The value | - | | | can be **4** (IPv4) or **6** (IPv6). | - | | | | - | | | IPv6 is unsupported. The value cannot | - | | | be **6**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 10** BandwidthRef - - ========= ====== ================================== - Parameter Type Description - ========= ====== ================================== - id String Specifies the shared bandwidth ID. - ========= ====== ================================== - -Example Requests -^^^^^^^^^^^^^^^^ - -Viewing details of a load balancer - -.. code:: screen - - GET /v3/{project_id}/elb/loadbalancers/{loadbalancer_id} - - GET - - https://{ELB_Endpoint}/v3/060576782980d5762f9ec014dd2f1148/elb/loadbalancers/3dbde7e5-c277-4ea3-a424-edd339357eff - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "loadbalancer" : { - "id" : "3dbde7e5-c277-4ea3-a424-edd339357eff", - "project_id" : "060576782980d5762f9ec014dd2f1148", - "name" : "elb-l4-no-delete", - "vip_port_id" : "f079c7ee-65a9-44ef-be86-53d8927e59be", - "vip_address" : "10.0.0.196", - "admin_state_up" : true, - "provisioning_status" : "ACTIVE", - "operating_status" : "ONLINE", - "listeners" : [ ], - "pools" : [ { - "id" : "1d864dc9-f6ef-4366-b59d-7034cde2328f" - }, { - "id" : "c0a2e4a1-c028-4a24-a62f-e721c52f5513" - }, { - "id" : "79308896-6169-4c28-acbc-e139eb661996" - } ], - "tags" : [ ], - "created_at" : "2019-12-02T09:55:11Z", - "updated_at" : "2019-12-02T09:55:11Z", - "vpc_id" : "70711260-9de9-4d96-9839-0ae698e00109", - "enterprise_project_id" : "0", - "availability_zone_list" : [ ], - "publicips" : [ ], - "elb_virsubnet_ids" : [ "ad5d63bf-3b50-4e88-b4d9-e94a59aade48" ], - "eips" : [ ], - "guaranteed" : true, - - "l4_flavor_id" : "e5acacda-f861-404e-9871-df480c49d185", - "vip_subnet_cidr_id" : "396d918a-756e-4163-8450-3bdc860109cf" - }, - "request_id" : "1a47cfbf-969f-4e40-8c0e-c2e60b14bcac" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/ShowLoadBalancerStatus.rst b/elb/api-ref/ShowLoadBalancerStatus.rst deleted file mode 100644 index 72834eb8..00000000 --- a/elb/api-ref/ShowLoadBalancerStatus.rst +++ /dev/null @@ -1,449 +0,0 @@ -Querying the Status Tree of a Load Balancer -=========================================== - -Function -^^^^^^^^ - -This API is used to query the status tree of a load balancer and show information about all resources associated with the load balancer. - -When **admin_state_up** is set to **false** and **operating_status** to **OFFLINE** for a backend server, **DISABLED** is returned for **operating_status** of the backend server in the response of this API. - -URI -^^^ - -GET /v3/{project_id}/elb/loadbalancers/{loadbalancer_id}/statuses - -.. table:: **Table 1** Path parameters - - =============== ========= ====== =============================== - Parameter Mandatory Type Description - =============== ========= ====== =============================== - project_id Yes String Specifies the project ID. - loadbalancer_id Yes String Specifies the load balancer ID. - =============== ========= ====== =============================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | statuses | `LoadBalancerStatusResult <#ShowLoadBala | Provides information about the load balancer | - | | ncerStatus__response_LoadBalancerStatusResult>`__ | status tree. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 4** LoadBalancerStatusResult - - +--------------+--------------------------------------------------+--------------------------------------------------+ - | Parameter | Type | Description | - +==============+==================================================+==================================================+ - | loadbalancer | `LoadBalancerStatus <#ShowLoa | Specifies the statuses of the load balancer and | - | | dBalancerStatus__response_LoadBalancerStatus>`__ | its associated resources. | - | | object | | - +--------------+--------------------------------------------------+--------------------------------------------------+ - -.. table:: **Table 5** LoadBalancerStatus - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | name | String | Specifies the load balancer name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the load balancer. | - | | | | - | | | The value can only be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the listeners added to the load | - | | `LoadBalancerStatus | balancer. | - | | Listener <#ShowLoadBalancerStatus__re | | - | | sponse_LoadBalancerStatusListener>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Lists the backend server groups | - | | `LoadBalanc | associated with the load balancer. | - | | erStatusPool <#ShowLoadBalancerStatus | | - | | __response_LoadBalancerStatusPool>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | load balancer. | - | | | | - | | | The value can only be one of the | - | | | following: | - | | | | - | | | - **ONLINE** (default): The load | - | | | balancer is running normally. | - | | | | - | | | - **DEGRADED**: This status is | - | | | displayed only when | - | | | **operating_status** is set to | - | | | **OFFLINE** for a backend server | - | | | associated with the load balancer | - | | | and the API for querying the load | - | | | balancer status tree is called. | - | | | | - | | | - **DISABLED**: This status is | - | | | displayed only when | - | | | **admin_state_up** of the load | - | | | balancer is set to **false** and | - | | | the API for querying the load | - | | | balancer status tree is called. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** LoadBalancerStatusListener - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | name | String | Specifies the name of the listener | - | | | added to the load balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the listener. The value can only be | - | | | **ACTIVE**. | - | | | | - | | | Default: **ACTIVE** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Specifies the operating status of the | - | | `LoadBalanc | backend server group associated with | - | | erStatusPool <#ShowLoadBalancerStatus | the listener. | - | | __response_LoadBalancerStatusPool>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7policies | Array of | Specifies the operating status of the | - | | `LoadBalancerSt | forwarding policy added to the | - | | atusPolicy <#ShowLoadBalancerStatus__ | listener. | - | | response_LoadBalancerStatusPolicy>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | listener. | - | | | | - | | | The value can only be one of the | - | | | following: | - | | | | - | | | - **ONLINE** (default): The listener | - | | | is running normally. | - | | | | - | | | - **DISABLED**: This status is | - | | | displayed only when | - | | | **admin_state_up** of the load | - | | | balancer or the listener is set to | - | | | **false** and the API for querying | - | | | the load balancer status tree is | - | | | called. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** LoadBalancerStatusPolicy - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | action | String | Specifies whether requests are | - | | | forwarded to another backend server | - | | | group or redirected to an HTTPS | - | | | listener. The value can be | - | | | **REDIRECT_TO_POOL** or | - | | | **REDIRECT_TO_LISTENER**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding policy. | - | | | | - | | | The value can only be **ACTIVE**. | - | | | | - | | | Default: **ACTIVE** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the policy name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array of | Specifies the forwarding rule. | - | | `LoadBalancerSt | | - | | atusL7Rule <#ShowLoadBalancerStatus__ | | - | | response_LoadBalancerStatusL7Rule>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 8** LoadBalancerStatusL7Rule - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the ID of the forwarding | - | | | rule. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding rule. | - | | | | - | | | The value can only be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the match content. The | - | | | value can be **HOST_NAME** or | - | | | **PATH**. | - | | | | - | | | **HOST_NAME** indicates that the | - | | | domain name will be used for | - | | | matching, and **PATH** indicates that | - | | | the URL will be used for matching. | - | | | | - | | | The **type** value must be unique for | - | | | each forwarding rule in a forwarding | - | | | policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 9** LoadBalancerStatusPool - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the backend server group. The value | - | | | can only be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the name of the backend | - | | | server group. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor | `LoadBalancerStatusHealthMoni | Specifies the health check results of | - | | tor <#ShowLoadBalancerStatus__respons | backend servers in the load balancer | - | | e_LoadBalancerStatusHealthMonitor>`__ | status tree. | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array of | Specifies the backend server. | - | | `LoadBalancerSt | | - | | atusMember <#ShowLoadBalancerStatus__ | | - | | response_LoadBalancerStatusMember>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the ID of the backend | - | | | server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | backend server group. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **ONLINE**: The backend server | - | | | group is running normally. | - | | | | - | | | - **DEGRADED**: This status is | - | | | displayed only when | - | | | **operating_status** of a backend | - | | | server in the group is set to | - | | | **OFFLINE** and the API for | - | | | querying the load balancer status | - | | | tree is called. | - | | | | - | | | - **DISABLED**: This status is | - | | | displayed only when | - | | | **admin_state_up** of the backend | - | | | server group or the associated | - | | | load balancer is set to **false** | - | | | and the API for querying the load | - | | | balancer status tree is called. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 10** LoadBalancerStatusHealthMonitor - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | type | String | Specifies the health check protocol. | - | | | The value can be **TCP**, | - | | | **UDP_CONNECT**, or **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the health check. The value can only | - | | | be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 11** LoadBalancerStatusMember - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the backend server. The value can | - | | | only be **ACTIVE**. | - | | | | - | | | Default: **ACTIVE** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | address | String | Specifies the IP address of the | - | | | backend server. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server to receive requests. | - | | | The port number ranges from 1 to | - | | | 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | backend server. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | | - | | | - **NO_MONITOR**: No health check is | - | | | configured for the backend server | - | | | group to which the backend server | - | | | belongs. | - | | | | - | | | - **DISABLED**: The backend server | - | | | is not available. This status is | - | | | displayed only when | - | | | **admin_state_up** of the backend | - | | | server, or the backend server | - | | | group to which it belongs, or the | - | | | associated load balancer is set to | - | | | **false** and the API for querying | - | | | the load balancer status tree is | - | | | called. | - | | | | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -Querying the status tree of a load balancer - -.. code:: screen - - GET - - https://{ELB_Endpoint}/v3/{project_id}/elb/loadbalancers/38278031-cfca-44be-81be-a412f618773b/statuses - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "statuses" : { - "loadbalancer" : { - "name" : "lb-jy", - "provisioning_status" : "ACTIVE", - "listeners" : [ { - "name" : "listener-jy-1", - "provisioning_status" : "ACTIVE", - "pools" : [ { - "name" : "pool-jy-1", - "provisioning_status" : "ACTIVE", - "healthmonitor" : { - "type" : "TCP", - "id" : "7422b51a-0ed2-4702-9429-4f88349276c6", - "name" : "", - "provisioning_status" : "ACTIVE" - }, - "members" : [ { - "protocol_port" : 80, - "address" : "192.168.44.11", - "id" : "7bbf7151-0dce-4087-b316-06c7fa17b894", - "operating_status" : "ONLINE", - "provisioning_status" : "ACTIVE" - } ], - "id" : "c54b3286-2349-4c5c-ade1-e6bb0b26ad18", - "operating_status" : "ONLINE" - } ], - "l7policies" : [ ], - "id" : "eb84c5b4-9bc5-4bee-939d-3900fb05dc7b", - "operating_status" : "ONLINE" - } ], - "pools" : [ { - "name" : "pool-jy-1", - "provisioning_status" : "ACTIVE", - "healthmonitor" : { - "type" : "TCP", - "id" : "7422b51a-0ed2-4702-9429-4f88349276c6", - "name" : "", - "provisioning_status" : "ACTIVE" - }, - "members" : [ { - "protocol_port" : 80, - "address" : "192.168.44.11", - "id" : "7bbf7151-0dce-4087-b316-06c7fa17b894", - "operating_status" : "ONLINE", - "provisioning_status" : "ACTIVE" - } ], - "id" : "c54b3286-2349-4c5c-ade1-e6bb0b26ad18", - "operating_status" : "ONLINE" - } ], - "id" : "38278031-cfca-44be-81be-a412f618773b", - "operating_status" : "ONLINE" - } - } - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/ShowMember.rst b/elb/api-ref/ShowMember.rst deleted file mode 100644 index cb16f3ca..00000000 --- a/elb/api-ref/ShowMember.rst +++ /dev/null @@ -1,194 +0,0 @@ -Viewing Details of a Backend Server -=================================== - -Function -^^^^^^^^ - -This API is used to view details of a backend server. - -URI -^^^ - -GET /v3/{project_id}/elb/pools/{pool_id}/members/{member_id} - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ============================================= - Parameter Mandatory Type Description - ========== ========= ====== ============================================= - project_id Yes String Specifies the project ID. - pool_id Yes String Specifies the ID of the backend server group. - member_id Yes String Specifies the backend server ID. - ========== ========= ====== ============================================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - +------------+--------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+==================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+--------------------------------------------------+---------------------------------------------------+ - | member | `Member <#ShowMember__response_Member>`__ object | Specifies the backend server. | - +------------+--------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 4** Member - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | address | String | Specifies the IP address of the | - | | | backend server. | - | | | | - | | | The IP address must be in the subnet | - | | | specified by **subnet_cidr_id**, for | - | | | example, 192.168.3.11. The IP address | - | | | can only be the IP address of the | - | | | primary NIC. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server. | - | | | | - | | | Although this parameter can be used | - | | | in the APIs for creating and updating | - | | | backend servers, its actual value | - | | | depends on whether cloud servers | - | | | exist. If cloud servers exist, the | - | | | value is **true**. Otherwise, the | - | | | value is **false**. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | backend server. The value can be one | - | | | of the following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | | - | | | - **NO_MONITOR**: No health check is | - | | | configured for the backend server | - | | | group to which the backend server | - | | | belongs. | - | | | | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server to receive requests. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | subnet_cidr_id | String | Specifies the ID of the subnet where | - | | | the backend server works. This subnet | - | | | must be in the VPC as the subnet of | - | | | the load balancer associated with the | - | | | backend server. Only IPv4 subnets are | - | | | supported. If the value is left | - | | | blank, the backend server is not in | - | | | the load balancer's VPC. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | weight | Integer | Specifies the weight of the backend | - | | | server. | - | | | | - | | | Requests are routed to backend | - | | | servers in the same backend server | - | | | group based on their weights. | - | | | | - | | | If the weight is 0, the backend | - | | | server will not accept new requests. | - | | | | - | | | This parameter is invalid when | - | | | **lb_algorithm** is set to | - | | | **SOURCE_IP** for the backend server | - | | | group that contains the backend | - | | | server. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **100** | - | | | | - | | | Default: **1** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | String | This is a read-only attribute, which | - | | | is automatically generated based on | - | | | the **address** parameter. The value | - | | | can be **v4** or **v6**. | - | | | | - | | | Default: **v4** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75/members/1923923e-fe8a-484f-bdbc-e11559b1f48f - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "member" : { - "name" : "My member", - "weight" : 10, - "admin_state_up" : false, - "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "address" : "120.10.10.16", - "protocol_port" : 89, - "id" : "1923923e-fe8a-484f-bdbc-e11559b1f48f", - "operating_status" : "NO_MONITOR", - "ip_version" : "v4" - }, - "request_id" : "45688823-45f1-40cd-9d24-e51a9574a45b" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/ShowPool.rst b/elb/api-ref/ShowPool.rst deleted file mode 100644 index 2d141024..00000000 --- a/elb/api-ref/ShowPool.rst +++ /dev/null @@ -1,344 +0,0 @@ -Viewing Details of a Backend Server Group -========================================= - -Function -^^^^^^^^ - -This API is used to view details of a backend server group. - -URI -^^^ - -GET /v3/{project_id}/elb/pools/{pool_id} - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ============================================= - Parameter Mandatory Type Description - ========== ========= ====== ============================================= - project_id Yes String Specifies the project ID. - pool_id Yes String Specifies the ID of the backend server group. - ========== ========= ====== ============================================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - ========== ========================================== =============================================================== - Parameter Type Description - ========== ========================================== =============================================================== - request_id String Specifies the request ID. The value is automatically generated. - pool `Pool <#ShowPool__response_Pool>`__ object Specifies the backend server group. - ========== ========================================== =============================================================== - -.. table:: **Table 4** Pool - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server group. The | - | | | value can only be updated to | - | | | **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor_id | String | Specifies the ID of the health check | - | | | configured for the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server group | - | | | ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm used by the load balancer | - | | | to route requests to backend servers | - | | | in the backend server group. | - | | | | - | | | The value can be **ROUND_ROBIN** | - | | | (weighted round robin), | - | | | **LEAST_CONNECTIONS** (weighted least | - | | | connections), or **SOURCE_IP** | - | | | (source IP hash). | - | | | | - | | | When the value is **SOURCE_IP**, the | - | | | **weight** parameter is invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the listeners associated with | - | | `ListenerRef | the backend server group. | - | | <#ShowPool__response_ListenerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array of | Lists the IDs of load balancers | - | | `LoadBalancerRef <#S | associated with the backend server | - | | howPool__response_LoadBalancerRef>`__ | group. | - | | objects | | - | | | If only **listener_id** is specified | - | | | during the creation of the backend | - | | | server group, the ID of the | - | | | **loadbalancers** parameter in the | - | | | response is the ID of the load | - | | | balancer to which the listener is | - | | | added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array of | Lists the backend servers in the | - | | `MemberR | backend server group. | - | | ef <#ShowPool__response_MemberRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server group | - | | | name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | backend server group to receive | - | | | requests. The protocol can be TCP, | - | | | UDP, or HTTP. | - | | | | - | | | - For UDP listeners, the protocol of | - | | | the backend server group must be | - | | | UDP. | - | | | | - | | | - For TCP listeners, the protocol of | - | | | the backend server group must be | - | | | TCP. | - | | | | - | | | - For HTTP or HTTPS listeners, the | - | | | protocol of the backend server | - | | | group must be HTTP. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_persistence | `SessionPersistence <#Show | Specifies the sticky session. | - | | Pool__response_SessionPersistence>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | String | Specifies the IP version supported by | - | | | the backend server group. | - | | | | - | | | - Shared load balancers: The default | - | | | value is **v4**. | - | | | | - | | | - Dedicated load balancers: The | - | | | value can be **dualstack**, | - | | | **v4**, or **v6**. | - | | | | - | | | When the protocol of the backend | - | | | server group is TCP or UDP, | - | | | **ip_version** is set to | - | | | **dualstack**, indicating that both | - | | | IPv4 and IPv6 are supported. | - | | | | - | | | When the protocol of the backend | - | | | server group is HTTP, **ip_version** | - | | | is set to **v4**. | - | | | | - | | | IPv6 is unsupported. Only **v4** is | - | | | returned. | - | | | | - | | | Default: **dualstack** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | slow_start | `SlowSta | Specifies whether to enable slow | - | | rt <#ShowPool__response_SlowStart>`__ | start. After you enable slow start, | - | | object | new backend servers added to the | - | | | backend server group are warmed up, | - | | | and the number of requests they can | - | | | receive increases linearly during the | - | | | configured slow start duration. | - | | | | - | | | This parameter can be used when the | - | | | protocol of the backend server group | - | | | is HTTP or HTTPS. An error will be | - | | | returned if the protocol is not HTTP | - | | | or HTTPS. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** ListenerRef - - ========= ====== ========================== - Parameter Type Description - ========= ====== ========================== - id String Specifies the listener ID. - ========= ====== ========================== - -.. table:: **Table 6** LoadBalancerRef - - ========= ====== =============================== - Parameter Type Description - ========= ====== =============================== - id String Specifies the load balancer ID. - ========= ====== =============================== - -.. table:: **Table 7** MemberRef - - ========= ====== ================================ - Parameter Type Description - ========= ====== ================================ - id String Specifies the backend server ID. - ========= ====== ================================ - -.. table:: **Table 8** SessionPersistence - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | cookie_name | String | Specifies the cookie name. | - | | | | - | | | This parameter will take effect only | - | | | when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | The value can contain only letters, | - | | | digits, hyphens (-), underscores (_), | - | | | and periods (.). | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the sticky session type. | - | | | The value can be **SOURCE_IP**, | - | | | **HTTP_COOKIE**, or **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, only | - | | | **SOURCE_IP** takes effect. | - | | | | - | | | - For dedicated load balancers, if | - | | | the protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can only be **HTTP_COOKIE**. | - | | | | - | | | - For shared load balancers, if the | - | | | protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can be **HTTP_COOKIE** or | - | | | **APP_COOKIE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | persistence_timeout | Integer | Specifies the stickiness duration, in | - | | | minutes. This parameter will not take | - | | | effect when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, the | - | | | value ranges from **1** to **60**, | - | | | and the default value is **1**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is HTTP or HTTPS, the | - | | | value ranges from **1** to | - | | | **1440**, and the default value is | - | | | **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 9** SlowStart - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | enable | Boolean | Specifies whether to enable slow | - | | | start. | - | | | | - | | | **true** indicates that this function | - | | | is enabled, and **false** indicates | - | | | this function is disabled. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | duration | Integer | Specifies the slow start duration, in | - | | | seconds. | - | | | | - | | | The value ranges from **30** to | - | | | **1200**, and the default value is | - | | | **30**. | - | | | | - | | | Minimum: **30** | - | | | | - | | | Maximum: **1200** | - | | | | - | | | Default: **30** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75 - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "pool" : { - "lb_algorithm" : "LEAST_CONNECTIONS", - "protocol" : "TCP", - "description" : "My pool", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "098b2f68-af1c-41a9-8efd-69958722af62" - } ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "session_persistence" : "", - "healthmonitor_id" : "", - "listeners" : [ { - "id" : "0b11747a-b139-492f-9692-2df0b1c87193" - }, { - "id" : "61942790-2367-482a-8b0e-93840ea2a1c6" - }, { - "id" : "fd8f954c-f0f8-4d39-bb1d-41637cd6b1be" - } ], - "members" : [ ], - "id" : "36ce7086-a496-4666-9064-5ba0e6840c75", - "name" : "My pool.", - "ip_version" : "dualstack" - }, - "request_id" : "c1a60da2-1ec7-4a1c-b4cc-73e1a57b368e" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/ShowQuota.rst b/elb/api-ref/ShowQuota.rst deleted file mode 100644 index 3bf56a03..00000000 --- a/elb/api-ref/ShowQuota.rst +++ /dev/null @@ -1,141 +0,0 @@ -Querying Quotas -=============== - -Function -^^^^^^^^ - -This API is used to query resource quotas of a specific user. - -URI -^^^ - -GET /v3/{project_id}/elb/quotas - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 3** Response body parameters - - ========== ============================================= =============================================================== - Parameter Type Description - ========== ============================================= =============================================================== - request_id String Specifies the request ID. The value is automatically generated. - quota `Quota <#ShowQuota__response_Quota>`__ object Specifies the quota details. - ========== ============================================= =============================================================== - -.. table:: **Table 4** Quota - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | certificate | Integer | Specifies the certificate quota. | - | | | **-1** indicates that the quota is | - | | | not limited. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor | Integer | Specifies the health check quota. | - | | | **-1** indicates that the quota is | - | | | not limited. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7policy | Integer | Specifies the forwarding policy | - | | | quota. **-1** indicates that the | - | | | quota is not limited. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener | Integer | Specifies the listener quota. **-1** | - | | | indicates that the quota is not | - | | | limited. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancer | Integer | Specifies the load balancer quota. | - | | | **-1** indicates that the quota is | - | | | not limited. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | member | Integer | Specifies the backend server quota. | - | | | **-1** indicates that the quota is | - | | | not limited. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members_per_pool | Integer | Specifies the quota of backend | - | | | servers in a backend server group. | - | | | **-1** indicates that the quota is | - | | | not limited. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pool | Integer | Specifies the backend server group | - | | | quota. **-1** indicates that the | - | | | quota is not limited. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipgroup | Integer | Specifies the IP address group quota. | - | | | **-1** indicates that the quota is | - | | | not limited. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - GET https://{elb_endpoint}/v3/{project_id}/elb/quotas - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "quota" : { - "member" : 500, - "members_per_pool" : 500, - "certificate" : 120, - "l7policy" : 500, - "listener" : 100, - "loadbalancer" : 50, - "healthmonitor" : -1, - "ipgroup" : 50, - "pool" : 500, - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24" - }, - "request_id" : "8d7eba6f-ec79-42d2-8d8c-16149645549d" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Quota `__ diff --git a/elb/api-ref/UpdateCertificate.rst b/elb/api-ref/UpdateCertificate.rst deleted file mode 100644 index e6ad6739..00000000 --- a/elb/api-ref/UpdateCertificate.rst +++ /dev/null @@ -1,321 +0,0 @@ -Updating a Certificate -====================== - -Function -^^^^^^^^ - -This API is used to update an SSL certificate. - -URI -^^^ - -PUT /v3/{project_id}/elb/certificates/{certificate_id} - -.. table:: **Table 1** Path parameters - - ============== ========= ====== ============================================ - Parameter Mandatory Type Description - ============== ========= ====== ============================================ - certificate_id Yes String Specifies a certificate ID. - project_id Yes String Specifies the project ID of the certificate. - ============== ========= ====== ============================================ - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-------------+-----------+--------------------------------------------+--------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +=============+===========+============================================+============================================+ - | certificate | Yes | `UpdateCertificateOption <#UpdateCertif | Specifies request parameters for updating | - | | | icate__request_UpdateCertificateOption>`__ | a certificate. | - | | | object | | - +-------------+-----------+--------------------------------------------+--------------------------------------------+ - -.. table:: **Table 4** UpdateCertificateOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | certificate | No | String | Specifies the private key | - | | | | of the certificate. The | - | | | | value must be PEM encoded. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | certificate. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the certificate | - | | | | name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | private_key | No | String | Specifies the private key | - | | | | of the server certificate. | - | | | | The value must be PEM | - | | | | encoded. | - | | | | | - | | | | - This parameter will be | - | | | | ignored if **type** is | - | | | | set to **client**. A CA | - | | | | server can still be | - | | | | created and used | - | | | | normally. This parameter | - | | | | will be left blank even | - | | | | if you enter a private | - | | | | key that is not PEM | - | | | | encoded. | - | | | | | - | | | | - This parameter is valid | - | | | | and mandatory only when | - | | | | **type** is set to | - | | | | **server**. If you enter | - | | | | an invalid private key, | - | | | | an error is returned. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain | No | String | Specifies the domain names | - | | | | used by the server | - | | | | certificate. | - | | | | | - | | | | - This parameter will take | - | | | | effect only when | - | | | | **type** is set to | - | | | | **server**, and its | - | | | | default value is **""**. | - | | | | | - | | | | - This parameter will not | - | | | | take effect even if it | - | | | | is passed and **type** | - | | | | is set to **client**. | - | | | | However, domain names | - | | | | will still be verified. | - | | | | | - | | | | Note: | - | | | | | - | | | | - The value can contain 0 | - | | | | to 1024 characters and | - | | | | consists of multiple | - | | | | common domain names or | - | | | | wildcard domain names | - | | | | separated by commas. A | - | | | | maximum of 30 domain | - | | | | names are allowed. | - | | | | | - | | | | - A common domain name | - | | | | consists of several | - | | | | labels separated by | - | | | | periods (.). Each label | - | | | | can contain a maximum of | - | | | | 63 characters, including | - | | | | letters, digits, and | - | | | | hyphens (-), and must | - | | | | start and end with a | - | | | | letter or digit. | - | | | | Example: www.test.com | - | | | | | - | | | | - A wildcard domain name | - | | | | is a domain name starts | - | | | | with an asterisk (*). | - | | | | Example: \*.test.com | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **1024** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 5** Response body parameters - - +-------------+--------------------------------------------------+--------------------------------------------------+ - | Parameter | Type | Description | - +=============+==================================================+==================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +-------------+--------------------------------------------------+--------------------------------------------------+ - | certificate | `CertificateInfo < | Specifies the certificate. | - | | #UpdateCertificate__response_CertificateInfo>`__ | | - | | object | | - +-------------+--------------------------------------------------+--------------------------------------------------+ - -.. table:: **Table 6** CertificateInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the certificate. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate | String | Specifies the private key of the | - | | | certificate. The value must be PEM | - | | | encoded. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the certificate. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain | String | Specifies the domain names used by | - | | | the server certificate. | - | | | | - | | | - This parameter will take effect | - | | | only when **type** is set to | - | | | **server**, and its default value | - | | | is **""**. | - | | | | - | | | - This parameter will not take | - | | | effect even if it is passed and | - | | | **type** is set to **client**. | - | | | However, domain names will still | - | | | be verified. | - | | | | - | | | Note: | - | | | | - | | | - The value can contain 0 to 1024 | - | | | characters and consists of | - | | | multiple common domain names or | - | | | wildcard domain names separated by | - | | | commas. A maximum of 30 domain | - | | | names are allowed. | - | | | | - | | | - A common domain name consists of | - | | | several labels separated by | - | | | periods (.). Each label can | - | | | contain a maximum of 63 | - | | | characters, including letters, | - | | | digits, and hyphens (-), and must | - | | | start and end with a letter or | - | | | digit. Example: www.test.com | - | | | | - | | | - A wildcard domain name is a domain | - | | | name starts with an asterisk (*). | - | | | Example: \*.test.com | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies a certificate ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the certificate name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | private_key | String | Specifies the private key of the | - | | | server certificate. The value must be | - | | | PEM encoded. | - | | | | - | | | - This parameter will be ignored if | - | | | **type** is set to **client**. A | - | | | CA server can still be created and | - | | | used normally. This parameter will | - | | | be left blank even if you enter a | - | | | private key that is not PEM | - | | | encoded. | - | | | | - | | | - This parameter is valid and | - | | | mandatory only when **type** is | - | | | set to **server**. If you enter an | - | | | invalid private key, an error is | - | | | returned. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the certificate type. The | - | | | value can be **server** or | - | | | **client**. **server** indicates | - | | | server certificates, and **client** | - | | | indicates CA certificates. The | - | | | default value is **server**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the | - | | | certificate was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the | - | | | certificate was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expire_time | String | Specifies the time when the | - | | | certificate expires. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - PUT - https://{elb_endponit}/v3/{project_id}/elb/certificates/{certificate_id} - - { - "certificate" : { - "name" : "My Certificate", - "description" : "Update my Certificate." - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "certificate" : { - "private_key" : "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "description" : "Update my Certificate.", - "created_at" : "2019-03-31T22:23:51Z", - "expire_time" : "2045-11-17T13:25:47Z", - "id" : "233a325e5e3e4ce8beeb320aa714cc12", - "name" : "My Certificate", - "certificate" : "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----", - "admin_state_up" : true, - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "updated_at" : "2019-03-31T23:26:49Z", - "type" : "server" - }, - "request_id" : "d9abea6b-98ee-4ad4-8c5d-185ded48742f" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/UpdateHealthMonitor.rst b/elb/api-ref/UpdateHealthMonitor.rst deleted file mode 100644 index 3faf583e..00000000 --- a/elb/api-ref/UpdateHealthMonitor.rst +++ /dev/null @@ -1,445 +0,0 @@ -Updating a Health Check -======================= - -Function -^^^^^^^^ - -This API is used to update a health check. - -Constraints -^^^^^^^^^^^ - -The health check can be updated only when the provisioning status of the associated load balancer is **ACTIVE**. - -URI -^^^ - -PUT /v3/{project_id}/elb/healthmonitors/{healthmonitor_id} - -.. table:: **Table 1** Path parameters - - ================ ========= ====== ============================== - Parameter Mandatory Type Description - ================ ========= ====== ============================== - healthmonitor_id Yes String Specifies the health check ID. - project_id Yes String Specifies the project ID. - ================ ========= ====== ============================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +---------------+-----------+-------------------------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +===============+===========+===========================================+=============================+ - | healthmonitor | Yes | `Upda | Specifies the health check. | - | | | teHealthMonitorOption <#UpdateHealthMonit | | - | | | or__request_UpdateHealthMonitorOption>`__ | | - | | | object | | - +---------------+-----------+-------------------------------------------+-----------------------------+ - -.. table:: **Table 4** UpdateHealthMonitorOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the health check. Two value | - | | | | options are available. | - | | | | **true** indicates that the | - | | | | health check is enabled, | - | | | | and **false** indicates | - | | | | that the health check is | - | | | | disabled. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | delay | No | Integer | Specifies the interval | - | | | | between health checks, in | - | | | | seconds. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **50** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain_name | No | String | Specifies the domain name | - | | | | that HTTP requests are sent | - | | | | to during the health check. | - | | | | | - | | | | This parameter is available | - | | | | only when **type** is set | - | | | | to **HTTP**. | - | | | | | - | | | | The value is left blank by | - | | | | default, indicating that | - | | | | the virtual IP address of | - | | | | the load balancer is used | - | | | | as the destination address | - | | | | of HTTP requests. | - | | | | | - | | | | The value can contain only | - | | | | digits, letters, hyphens | - | | | | (-), and periods (.) and | - | | | | must start with a digit or | - | | | | letter. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **100** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | expected_codes | No | String | Specifies the expected HTTP | - | | | | status code. This parameter | - | | | | will take effect only when | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | The value options are as | - | | | | follows: | - | | | | | - | | | | - A specific value, for | - | | | | example, 200 | - | | | | | - | | | | - A list of values that | - | | | | are separated with | - | | | | commas (,), for example, | - | | | | 200, 202 | - | | | | | - | | | | - A value range, for | - | | | | example, 200-204 | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **200** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **64** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http_method | No | String | Specifies the HTTP method. | - | | | | The value can be **GET**, | - | | | | **HEAD**, **POST**, | - | | | | **PUT**, **DELETE**, | - | | | | **TRACE**, **OPTIONS**, | - | | | | **CONNECT**, or **PATCH**. | - | | | | This parameter will take | - | | | | effect only when **type** | - | | | | is set to **HTTP**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **GET** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **16** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries | No | Integer | Specifies the maximum | - | | | | health check retries. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **10** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries_down | No | Integer | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **ONLINE** to | - | | | | **OFFLINE**. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **10** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | monitor_port | No | Integer | Specifies the port used for | - | | | | the health check. If this | - | | | | parameter is left blank, | - | | | | the port of the backend | - | | | | server group will be used | - | | | | by default. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **65535** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the health check | - | | | | name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | timeout | No | Integer | Specifies the maximum time | - | | | | required for waiting for a | - | | | | response from the health | - | | | | check, in seconds. It is | - | | | | recommended that you set | - | | | | the value less than that of | - | | | | parameter **delay**. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **50** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | url_path | No | String | Specifies the HTTP request | - | | | | path for the health check. | - | | | | The value must start with a | - | | | | slash (/), and the default | - | | | | value is /. This parameter | - | | | | is available only when | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | Default: **/** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | String | Specifies the protocol used | - | | | | for the health check. | - | | | | | - | | | | The value can be **TCP**, | - | | | | **UDP_CONNECT**, **HTTP**, | - | | | | **HTTPS**, or **PING**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 5** Response body parameters - - +---------------+-------------------------------------------------+-------------------------------------------------+ - | Parameter | Type | Description | - +===============+=================================================+=================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +---------------+-------------------------------------------------+-------------------------------------------------+ - | healthmonitor | `HealthMonitor <# | Specifies the health check. | - | | UpdateHealthMonitor__response_HealthMonitor>`__ | | - | | object | | - +---------------+-------------------------------------------------+-------------------------------------------------+ - -.. table:: **Table 6** HealthMonitor - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the health check. Two value | - | | | options are available. **true** | - | | | indicates that the health check is | - | | | enabled, and **false** indicates that | - | | | the health check is disabled. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | delay | Integer | Specifies the interval between health | - | | | checks, in seconds. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **50** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain_name | String | Specifies the domain name that HTTP | - | | | requests are sent to during the | - | | | health check. | - | | | | - | | | This parameter is available only when | - | | | **type** is set to **HTTP**. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the virtual IP | - | | | address of the load balancer is used | - | | | as the destination address of HTTP | - | | | requests. | - | | | | - | | | The value can contain only digits, | - | | | letters, hyphens (-), and periods (.) | - | | | and must start with a digit or | - | | | letter. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expected_codes | String | Specifies the expected HTTP status | - | | | code. This parameter will take effect | - | | | only when **type** is set to | - | | | **HTTP**. | - | | | | - | | | The value options are as follows: | - | | | | - | | | - A specific value, for example, 200 | - | | | | - | | | - A list of values that are | - | | | separated with commas (,), for | - | | | example, 200, 202 | - | | | | - | | | - A value range, for example, | - | | | 200-204 | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **200** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http_method | String | Specifies the HTTP method. This | - | | | parameter will take effect only when | - | | | **type** is set to **HTTP**. | - | | | | - | | | The value can be **GET**, **HEAD**, | - | | | **POST**, **PUT**, **DELETE**, | - | | | **TRACE**, **OPTIONS**, **CONNECT**, | - | | | or **PATCH**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **GET** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **OFFLINE** to **ONLINE**. The | - | | | value ranges from **1** to **10**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **10** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries_down | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **ONLINE** to **OFFLINE**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **10** | - | | | | - | | | Default: **3** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | monitor_port | Integer | Specifies the port used for the | - | | | health check. If this parameter is | - | | | left blank, the port of the backend | - | | | server group will be used by default. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Lists the IDs of backend server | - | | `PoolRef <#Upda | groups for which the health check is | - | | teHealthMonitor__response_PoolRef>`__ | configured. | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | timeout | Integer | Specifies the maximum time required | - | | | for waiting for a response from the | - | | | health check, in seconds. It is | - | | | recommended that you set the value | - | | | less than that of parameter | - | | | **delay**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **50** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the health check protocol. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | url_path | String | Specifies the HTTP request path for | - | | | the health check. The value must | - | | | start with a slash (/), and the | - | | | default value is /. This parameter is | - | | | available only when **type** is set | - | | | to **HTTP**. | - | | | | - | | | Default: **/** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** PoolRef - - ========= ====== ============================================= - Parameter Type Description - ========= ====== ============================================= - id String Specifies the ID of the backend server group. - ========= ====== ============================================= - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - PUT - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/healthmonitors/c2b210b2-60c4-449d-91e2-9e9ea1dd7441 - - { - "healthmonitor" : { - "name" : "My Healthmonitor update", - "max_retries" : 10, - "delay" : 10 - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "request_id" : "08d6ffea-d092-4cfa-860a-e364f3bef1be", - "healthmonitor" : { - "id" : "c2b210b2-60c4-449d-91e2-9e9ea1dd7441", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "name" : "My Healthmonitor update", - "delay" : 10, - "max_retries" : 10, - "pools" : [ { - "id" : "488acc50-6bcf-423d-8f0a-0f4184f5b8a0" - } ], - "admin_state_up" : true, - "timeout" : 30, - "type" : "HTTP", - "expected_codes" : "200", - "url_path" : "/", - "http_method" : "GET" - } - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/UpdateL7Policy.rst b/elb/api-ref/UpdateL7Policy.rst deleted file mode 100644 index 7f309f4f..00000000 --- a/elb/api-ref/UpdateL7Policy.rst +++ /dev/null @@ -1,1060 +0,0 @@ -Updating a Forwarding Policy -============================ - -Function -^^^^^^^^ - -This API is used to update a forwarding policy. - -URI -^^^ - -PUT /v3/{project_id}/elb/l7policies/{l7policy_id} - -.. table:: **Table 1** Path parameters - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes String Specifies the forwarding policy ID. - project_id Yes String Specifies the project ID. - =========== ========= ====== =================================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------+---------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=============================================+=============================================+ - | l7policy | Yes | `UpdateL7PolicyOption <#Updat | Specifies request parameters for updating a | - | | | eL7Policy__request_UpdateL7PolicyOption>`__ | forwarding policy. | - | | | object | | - +-----------+-----------+---------------------------------------------+---------------------------------------------+ - -.. table:: **Table 4** UpdateL7PolicyOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding policy. The | - | | | | default value is **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | forwarding policy. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the forwarding | - | | | | policy name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_listener_id | No | String | Specifies the ID of the | - | | | | listener that requests are | - | | | | redirected to. | - | | | | | - | | | | This parameter is valid and | - | | | | mandatory only when | - | | | | **action** is set to | - | | | | **REDIRECT_TO_LISTENER**. | - | | | | | - | | | | Only HTTPS listeners are | - | | | | supported, and the listener | - | | | | cannot be any listener | - | | | | added to other load | - | | | | balancers. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_pool_id | No | String | Specifies the ID of the | - | | | | backend server group that | - | | | | requests are forwarded to. | - | | | | | - | | | | This parameter is valid and | - | | | | mandatory only when | - | | | | **action** is set to | - | | | | **REDIRECT_TO_POOL**. | - | | | | | - | | | | The specified backend | - | | | | server group cannot be the | - | | | | default one associated with | - | | | | the listener, or any | - | | | | backend server group | - | | | | associated with the | - | | | | forwarding policies of | - | | | | other listeners. | - | | | | | - | | | | This parameter cannot be | - | | | | specified when **action** | - | | | | is set to | - | | | | **REDIRECT_TO_LISTENER**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_url_config | No | `UpdateRedirectUrlConfig | Specifies the URL to which | - | | | <#UpdateL7Policy__request_ | requests are forwarded. | - | | | UpdateRedirectUrlConfig>`__ | | - | | | object | For shared load balancers, | - | | | | this parameter is not | - | | | | supported. If it is passed, | - | | | | an error will be returned. | - | | | | | - | | | | For dedicated load | - | | | | balancers, this parameter | - | | | | will take effect only when | - | | | | advanced forwarding is | - | | | | enabled | - | | | | ( | - | | | | **enhance_l7policy_enable** | - | | | | is set to **true**). If it | - | | | | is passed when | - | | | | **enhance_l7policy_enable** | - | | | | is set to **false**, an | - | | | | error will be returned. | - | | | | | - | | | | Format: | - | | | | *proto | - | | | | col://host:port/path?query* | - | | | | | - | | | | At least one of the four | - | | | | parameters (**protocol**, | - | | | | **host**, **port**, and | - | | | | **path**) must be passed, | - | | | | or their values cannot be | - | | | | set to **${xxx}** at the | - | | | | same time. (**${xxx}** | - | | | | indicates that the value in | - | | | | the request will be | - | | | | inherited. For example, | - | | | | **${host}** indicates the | - | | | | host in the URL to be | - | | | | redirected.) | - | | | | | - | | | | The values of **protocol** | - | | | | and **port** cannot be the | - | | | | same as those of the | - | | | | associated listener, and | - | | | | either **host** or **path** | - | | | | must be passed or their | - | | | | values cannot be **${xxx}** | - | | | | at the same time. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | fixed_response_config | No | `Up | Specifies the configuration | - | | | dateFixtedResponseConfig <# | of the page that will be | - | | | UpdateL7Policy__request_Upd | returned. This parameter | - | | | ateFixtedResponseConfig>`__ | will take effect when | - | | | object | **enhance_l7policy_enable** | - | | | | is set to **true**. If this | - | | | | parameter is passed and | - | | | | **enhance_l7policy_enable** | - | | | | is set to **false**, an | - | | | | error will be returned. For | - | | | | shared load balancers, this | - | | | | parameter is not supported. | - | | | | If it is passed, an error | - | | | | will be returned. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | rules | No | Array of | Lists the forwarding rules | - | | | `UpdateL7RuleO | in the forwarding policy. | - | | | ption <#UpdateL7Policy__req | | - | | | uest_UpdateL7RuleOption>`__ | The list can contain a | - | | | objects | maximum of 10 forwarding | - | | | | rules (if **conditions** is | - | | | | specified, a condition is | - | | | | considered as a rule). | - | | | | | - | | | | If **type** is set to | - | | | | **HOST_NAME**, **PATH**, | - | | | | **METHOD**, or | - | | | | **SOURCE_IP**, only one | - | | | | forwarding rule can be | - | | | | created for each type. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | priority | No | Integer | Specifies the forwarding | - | | | | policy priority. This | - | | | | parameter is available only | - | | | | for dedicated load | - | | | | balancers and will take | - | | | | effect when | - | | | | **enhance_l7policy_enable** | - | | | | is set to **true**. If this | - | | | | parameter is passed and | - | | | | **enhance_l7policy_enable** | - | | | | is set to **false**, an | - | | | | error will be returned. For | - | | | | shared load balancers, this | - | | | | parameter is not supported. | - | | | | If it is passed, an error | - | | | | will be returned. | - | | | | | - | | | | A smaller value indicates a | - | | | | higher priority. The value | - | | | | must be unique for | - | | | | forwarding policies of the | - | | | | same listener. | - | | | | | - | | | | If **action** is set to | - | | | | **REDIRECT_TO_LISTENER**, | - | | | | the value can only be | - | | | | **0**, indicating that | - | | | | **REDIRECT_TO_LISTENER** | - | | | | has the highest priority. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **10000** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** UpdateRedirectUrlConfig - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | protocol | No | String | Specifies the protocol for | - | | | | redirection. The default | - | | | | value is **${protocol}**, | - | | | | indicating that the | - | | | | protocol of the request | - | | | | will be used. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **HTTP** | - | | | | | - | | | | - **HTTPS** | - | | | | | - | | | | - **${protocol}** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | host | No | String | Specifies the host name | - | | | | that requests are | - | | | | redirected to. The value | - | | | | can contain only letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.) and must start | - | | | | with a letter or digit. The | - | | | | default value is | - | | | | **${host}**, indicating | - | | | | that the host of the | - | | | | request will be used. | - | | | | | - | | | | Default: **${host}** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | port | No | String | Specifies the port that | - | | | | requests are redirected to. | - | | | | The default value is | - | | | | **${port}**, indicating | - | | | | that the port of the | - | | | | request will be used. | - | | | | | - | | | | Default: **${port}** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **16** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | path | No | String | Specifies the path that | - | | | | requests are redirected to. | - | | | | The default value is | - | | | | **${path}**, indicating | - | | | | that the path of the | - | | | | request will be used. | - | | | | | - | | | | The value can contain only | - | | | | letters, digits, and | - | | | | special characters \_-';@^- | - | | | | %#&$.*+?,=!:|/()[]{} and | - | | | | must start with a slash | - | | | | (/). | - | | | | | - | | | | Default: **${path}** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | query | No | String | Specifies the query string | - | | | | set in the URL for | - | | | | redirection. The default | - | | | | value is **${query}**, | - | | | | indicating that the query | - | | | | string of the request will | - | | | | be used. | - | | | | | - | | | | For example, in the URL | - | | | | **https://www.xxx.com:80 | - | | | | 80/elb?type=loadbalancer**, | - | | | | **${query}** indicates | - | | | | **type=loadbalancer**. If | - | | | | this parameter is set to | - | | | | **${query}&name=my_name**, | - | | | | the URL will be redirected | - | | | | to | - | | | | **https:// | - | | | | www.xxx.com:8080/elb?type=l | - | | | | oadbalancer&name=my_name**. | - | | | | | - | | | | The value is case-sensitive | - | | | | and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | !$&'()*+,-./:;=?@^_\` | - | | | | | - | | | | Default: **${query}** | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | status_code | No | String | Specifies the status code | - | | | | returned after the requests | - | | | | are redirected. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **301** | - | | | | | - | | | | - **302** | - | | | | | - | | | | - **303** | - | | | | | - | | | | - **307** | - | | | | | - | | | | - **308** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **16** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 6** UpdateFixtedResponseConfig - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | status_code | No | String | Specifies the HTTP status | - | | | | code configured in the | - | | | | forwarding rule. The value | - | | | | can be any integer in the | - | | | | range of 200–299, 400–499, | - | | | | or 500–599. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **16** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | content_type | No | String | Specifies the format of the | - | | | | response body. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **text/plain** | - | | | | | - | | | | - **text/css** | - | | | | | - | | | | - **text/html** | - | | | | | - | | | | - | - | | | | **application/javascript** | - | | | | | - | | | | - **application/json** | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **64** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | message_body | No | String | Specifies the content of | - | | | | the response body. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **1024** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 7** UpdateL7RuleOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. The | - | | | | default value is **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | compare_type | No | String | Specifies how requests are | - | | | | matched with the domain | - | | | | name or URL. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, this | - | | | | parameter can only be | - | | | | set to **EQUAL_TO**. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH**, this parameter | - | | | | can be set to **REGEX**, | - | | | | **STARTS_WITH**, or | - | | | | **EQUAL_TO**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. The | - | | | | value is fixed at | - | | | | **false**. This parameter | - | | | | can be updated but remains | - | | | | invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | String | Specifies the key of the | - | | | | match item. For example, if | - | | | | an HTTP header is used for | - | | | | matching, **key** is the | - | | | | name of the HTTP header | - | | | | parameter. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | No | String | Specifies the value of the | - | | | | match item. For example, if | - | | | | a domain name is used for | - | | | | matching, **value** is the | - | | | | domain name. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, the value | - | | | | can contain letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.) and must | - | | | | start with a letter or | - | | | | digit. If you want to | - | | | | use a wildcard domain | - | | | | name, enter an asterisk | - | | | | (*) as the leftmost | - | | | | label of the domain | - | | | | name. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH** and | - | | | | **compare_type** to | - | | | | **STARTS_WITH** or | - | | | | **EQUAL_TO**, the value | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | \ | - | | | | _~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | conditions | No | Array of | Specifies the matching | - | | | `UpdateRuleCondi | conditions of the | - | | | tion <#UpdateL7Policy__requ | forwarding rule. This | - | | | est_UpdateRuleCondition>`__ | parameter will take effect | - | | | objects | when | - | | | | **enhance_l7policy_enable** | - | | | | is set to **true**. | - | | | | | - | | | | If **conditions** is | - | | | | specified, the values of | - | | | | **key** and **value** are | - | | | | invalid, and its value | - | | | | contains all conditions | - | | | | configured for the | - | | | | forwarding rule. The keys | - | | | | in the list must be the | - | | | | same, whereas each value | - | | | | must be unique. Only full | - | | | | update is supported. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 8** UpdateRuleCondition - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | key | No | String | Specifies the key of match | - | | | | item. This parameter is | - | | | | left blank. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | No | String | Specifies the value of the | - | | | | match item. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, **key** | - | | | | is left blank, and | - | | | | **value** indicates the | - | | | | domain name, which can | - | | | | contain 1 to 128 | - | | | | characters, including | - | | | | letters, digits, hyphens | - | | | | (-), periods (.), and | - | | | | asterisks (*), and must | - | | | | start with a letter, | - | | | | digit, or asterisk (*). | - | | | | If you want to use a | - | | | | wildcard domain name, | - | | | | enter an asterisk (*) as | - | | | | the leftmost label of | - | | | | the domain name. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH**, **key** is | - | | | | left blank, and | - | | | | **value** indicates the | - | | | | request path, which can | - | | | | contain 1 to 128 | - | | | | characters. If | - | | | | **compare_type** is set | - | | | | to **STARTS_WITH** or | - | | | | **EQUAL_TO** for the | - | | | | forwarding rule, the | - | | | | value must start with a | - | | | | slash (/) and can | - | | | | contain only letters, | - | | | | digits, and special | - | | | | characters | - | | | | \ | - | | | | _~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 9** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | l7policy | `L7Policy <#UpdateL7Policy__response_L7Policy>`__ | Specifies the forwarding policy. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 10** L7Policy - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | action | String | Specifies where requests will be | - | | | forwarded. The value can be one of | - | | | the following: | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests | - | | | will be forwarded to another | - | | | backend server group. | - | | | | - | | | - **REDIRECT_TO_LISTENER**: Requests | - | | | will be redirected to an HTTPS | - | | | listener. | - | | | | - | | | **REDIRECT_TO_LISTENER** has the | - | | | highest priority. If requests are to | - | | | be redirected to an HTTPS listener, | - | | | other forwarding policies of the | - | | | listener will become invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding policy. The default | - | | | value is **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the forwarding policy is added. | - | | | | - | | | - If **action** is set to | - | | | **REDIRECT_TO_POOL**, the | - | | | forwarding policy can be added to | - | | | an HTTP or HTTPS listener. | - | | | | - | | | - If **action** is set to | - | | | **REDIRECT_TO_LISTENER**, the | - | | | forwarding policy can be added to | - | | | an HTTP listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | position | Integer | Specifies the forwarding policy | - | | | priority. This parameter cannot be | - | | | updated. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **100** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID of the | - | | | forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding policy. | - | | | | - | | | The value can only be **ACTIVE**. | - | | | | - | | | Default: **ACTIVE** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_listener_id | String | Specifies the ID of the listener that | - | | | requests are redirected to. | - | | | | - | | | This parameter is valid and mandatory | - | | | only when **action** is set to | - | | | **REDIRECT_TO_LISTENER**. | - | | | | - | | | Only HTTPS listeners are supported, | - | | | and the listener cannot be any | - | | | listener added to other load | - | | | balancers. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_pool_id | String | Specifies the ID of the backend | - | | | server group that requests are | - | | | forwarded to. | - | | | | - | | | This parameter is valid and mandatory | - | | | only when **action** is set to | - | | | **REDIRECT_TO_POOL**. | - | | | | - | | | The specified backend server group | - | | | cannot be the default one associated | - | | | with the listener, or any backend | - | | | server group associated with the | - | | | forwarding policies of other | - | | | listeners. | - | | | | - | | | This parameter cannot be specified | - | | | when **action** is set to | - | | | **REDIRECT_TO_LISTENER**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url | String | Specifies the URL to which requests | - | | | are forwarded. | - | | | | - | | | Format: | - | | | *protocol://host:port/path?query* | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array of | Lists the forwarding rules in the | - | | `RuleRef < | forwarding policy. | - | | #UpdateL7Policy__response_RuleRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url_config | `RedirectUrlConfig <#UpdateL7P | Specifies the URL to which requests | - | | olicy__response_RedirectUrlConfig>`__ | are forwarded. | - | | object | | - | | | For shared load balancers, this | - | | | parameter is not supported. If it is | - | | | passed, an error will be returned. | - | | | | - | | | For dedicated load balancers, this | - | | | parameter will take effect only when | - | | | advanced forwarding is enabled | - | | | (**enhance_l7policy_enable** is set | - | | | to **true**). If it is passed when | - | | | **enhance_l7policy_enable** is set to | - | | | **false**, an error will be returned. | - | | | | - | | | Format: | - | | | *protocol://host:port/path?query* | - | | | | - | | | At least one of the four parameters | - | | | (**protocol**, **host**, **port**, | - | | | and **path**) must be passed, or | - | | | their values cannot be set to | - | | | **${xxx}** at the same time. | - | | | (**${xxx}** indicates that the value | - | | | in the request will be inherited. For | - | | | example, **${host}** indicates the | - | | | host in the URL to be redirected.) | - | | | | - | | | The values of **protocol** and | - | | | **port** cannot be the same as those | - | | | of the associated listener, and | - | | | either **host** or **path** must be | - | | | passed or their values cannot be | - | | | **${xxx}** at the same time. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | fixed_response_config | `FixtedResponseConfig <#UpdateL7Poli | Specifies the configuration of the | - | | cy__response_FixtedResponseConfig>`__ | page that will be returned. This | - | | object | parameter will take effect when | - | | | **enhance_l7policy_enable** is set to | - | | | **true**. If this parameter is passed | - | | | and **enhance_l7policy_enable** is | - | | | set to **false**, an error will be | - | | | returned. For shared load balancers, | - | | | this parameter is not supported. If | - | | | it is passed, an error will be | - | | | returned. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | priority | Integer | Specifies the forwarding policy | - | | | priority. This parameter is available | - | | | only for dedicated load balancers and | - | | | will take effect when | - | | | **enhance_l7policy_enable** is set to | - | | | **true**. | - | | | | - | | | A smaller value indicates a higher | - | | | priority. The value must be unique | - | | | for each forwarding policy of the | - | | | same listener. | - | | | | - | | | If **action** is set to | - | | | **REDIRECT_TO_LISTENER**, the value | - | | | can only be **0**, indicating that | - | | | **REDIRECT_TO_LISTENER** has the | - | | | highest priority. | - | | | | - | | | - If **enhance_l7policy_enable** is | - | | | set to **false**, forwarding | - | | | policies are automatically | - | | | prioritized based on the original | - | | | sorting logic. Forwarding policy | - | | | priorities are independent of each | - | | | other regardless of domain names. | - | | | If forwarding policies use the | - | | | same domain name, their priorities | - | | | follow the order of exact match | - | | | (**EQUAL_TO**), prefix match | - | | | (**STARTS_WITH**), and regular | - | | | expression match (**REGEX**). If | - | | | prefix match is used for matching, | - | | | the longer the path, the higher | - | | | the priority. If a forwarding | - | | | policy contains only a domain name | - | | | without a path specified, the path | - | | | is **/**, and prefix match is used | - | | | by default. | - | | | | - | | | - If **enhance_l7policy_enable** is | - | | | set to **true** and this parameter | - | | | is not passed, the priority will | - | | | set to a sum of 1 and the highest | - | | | priority of existing forwarding | - | | | policy in the same listener by | - | | | default. There will be two cases: | - | | | a) If the highest priority of | - | | | existing forwarding policies is | - | | | the maximum (10,000), the | - | | | forwarding policy will fail to | - | | | create because the final priority | - | | | for creating the forwarding policy | - | | | is the sum of 1 and 10,000, which | - | | | exceeds the maximum. In this case, | - | | | please specify a value or adjust | - | | | the priorities of existing | - | | | forwarding policies. b) If no | - | | | forwarding policies exist, the | - | | | highest priority of existing | - | | | forwarding policies will set to 1 | - | | | by default. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **10000** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 11** RuleRef - - ========= ====== ================================= - Parameter Type Description - ========= ====== ================================= - id String Specifies the forwarding rule ID. - ========= ====== ================================= - -.. table:: **Table 12** RedirectUrlConfig - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | protocol | String | Specifies the protocol for | - | | | redirection. The default value is | - | | | **${protocol}**, indicating that the | - | | | protocol of the request will be used. | - | | | | - | | | Value options: | - | | | | - | | | - **HTTP** | - | | | | - | | | - **HTTPS** | - | | | | - | | | - **${protocol}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **36** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | host | String | Specifies the host name that requests | - | | | are redirected to. The value can | - | | | contain only letters, digits, hyphens | - | | | (-), and periods (.) and must start | - | | | with a letter or digit. The default | - | | | value is **${host}**, indicating that | - | | | the host of the request will be used. | - | | | | - | | | Default: **${host}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | port | String | Specifies the port that requests are | - | | | redirected to. The default value is | - | | | **${port}**, indicating that the port | - | | | of the request will be used. | - | | | | - | | | Default: **${port}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | path | String | Specifies the path that requests are | - | | | redirected to. The default value is | - | | | **${path}**, indicating that the path | - | | | of the request will be used. The | - | | | value can contain only letters, | - | | | digits, and special characters | - | | | \_-';@^- %#&$.*+?,=!:|/()[]{} and | - | | | must start with a slash (/). | - | | | | - | | | Default: **${path}** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | query | String | Specifies the query string set in the | - | | | URL for redirection. The default | - | | | value is **${query}**, indicating | - | | | that the query string of the request | - | | | will be used. | - | | | | - | | | For example, in the URL | - | | | **https://www. | - | | | xxx.com:8080/elb?type=loadbalancer**, | - | | | **${query}** indicates | - | | | **type=loadbalancer**. If this | - | | | parameter is set to | - | | | **${query}&name=my_name**, the URL | - | | | will be redirected to | - | | | **https://www.xxx.com:8080/ | - | | | elb?type=loadbalancer&name=my_name**. | - | | | | - | | | The value is case-sensitive and can | - | | | contain only letters, digits, and | - | | | special characters | - | | | !$&'()*+,-./:;=?@^_\` | - | | | | - | | | Default: **${query}** | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status_code | String | Specifies the status code returned | - | | | after the requests are redirected. | - | | | | - | | | Value options: | - | | | | - | | | - **301** | - | | | | - | | | - **302** | - | | | | - | | | - **303** | - | | | | - | | | - **307** | - | | | | - | | | - **308** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 13** FixtedResponseConfig - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | status_code | String | Specifies the HTTP status code | - | | | configured in the forwarding policy. | - | | | The value can be any integer in the | - | | | range of 200–299, 400–499, or | - | | | 500–599. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | content_type | String | Specifies the format of the response | - | | | body. | - | | | | - | | | Value options: | - | | | | - | | | - **text/plain** | - | | | | - | | | - **text/css** | - | | | | - | | | - **text/html** | - | | | | - | | | - **application/javascript** | - | | | | - | | | - **application/json** | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | message_body | String | Specifies the content of the response | - | | | body. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - PUT - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies/cf4360fd-8631-41ff-a6f5-b72c35da74be - - { - "l7policy" : { - "name" : "My policy.", - "description" : "Update policy.", - "redirect_listener_id" : "48a97732-449e-4aab-b561-828d29e45050" - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "request_id" : "e5c07525-1470-47b6-9b0c-567527a036aa", - "l7policy" : { - "description" : "Update policy.", - "admin_state_up" : true, - "rules" : [ ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "listener_id" : "e2220d2a-3faf-44f3-8cd6-0c42952bd0ab", - "redirect_listener_id" : "48a97732-449e-4aab-b561-828d29e45050", - "action" : "REDIRECT_TO_LISTENER", - "position" : 100, - "provisioning_status" : "ACTIVE", - "id" : "cf4360fd-8631-41ff-a6f5-b72c35da74be", - "name" : "My policy." - } - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/UpdateL7Rule.rst b/elb/api-ref/UpdateL7Rule.rst deleted file mode 100644 index effc0987..00000000 --- a/elb/api-ref/UpdateL7Rule.rst +++ /dev/null @@ -1,443 +0,0 @@ -Updating a Forwarding Rule -========================== - -Function -^^^^^^^^ - -This API is used to update a forwarding rule. - -URI -^^^ - -PUT /v3/{project_id}/elb/l7policies/{l7policy_id}/rules/{l7rule_id} - -.. table:: **Table 1** Path parameters - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes String Specifies the forwarding policy ID. - l7rule_id Yes String Specifies the forwarding rule ID. - project_id Yes String Specifies the project ID. - =========== ========= ====== =================================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------+---------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=============================================+=============================================+ - | rule | Yes | `UpdateL7RuleOption <#U | Specifies request parameters for updating a | - | | | pdateL7Rule__request_UpdateL7RuleOption>`__ | forwarding rule. | - | | | object | | - +-----------+-----------+---------------------------------------------+---------------------------------------------+ - -.. table:: **Table 4** UpdateL7RuleOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. The | - | | | | default value is **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | compare_type | No | String | Specifies how requests are | - | | | | matched with the domain | - | | | | name or URL. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, this | - | | | | parameter can only be | - | | | | set to **EQUAL_TO**. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH**, this parameter | - | | | | can be set to **REGEX**, | - | | | | **STARTS_WITH**, or | - | | | | **EQUAL_TO**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. The | - | | | | value is fixed at | - | | | | **false**. This parameter | - | | | | can be updated but remains | - | | | | invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | String | Specifies the key of the | - | | | | match item. For example, if | - | | | | an HTTP header is used for | - | | | | matching, **key** is the | - | | | | name of the HTTP header | - | | | | parameter. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | No | String | Specifies the value of the | - | | | | match item. For example, if | - | | | | a domain name is used for | - | | | | matching, **value** is the | - | | | | domain name. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, the value | - | | | | can contain letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.) and must | - | | | | start with a letter or | - | | | | digit. If you want to | - | | | | use a wildcard domain | - | | | | name, enter an asterisk | - | | | | (*) as the leftmost | - | | | | label of the domain | - | | | | name. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH** and | - | | | | **compare_type** to | - | | | | **STARTS_WITH** or | - | | | | **EQUAL_TO**, the value | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | \ | - | | | | _~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | conditions | No | Array of | Specifies the matching | - | | | `UpdateRuleCon | conditions of the | - | | | dition <#UpdateL7Rule__requ | forwarding rule. This | - | | | est_UpdateRuleCondition>`__ | parameter will take effect | - | | | objects | when | - | | | | **enhance_l7policy_enable** | - | | | | is set to **true**. | - | | | | | - | | | | If **conditions** is | - | | | | specified, the values of | - | | | | **key** and **value** are | - | | | | invalid, and its value | - | | | | contains all conditions | - | | | | configured for the | - | | | | forwarding rule. The keys | - | | | | in the list must be the | - | | | | same, whereas each value | - | | | | must be unique. Only full | - | | | | update is supported. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** UpdateRuleCondition - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | key | No | String | Specifies the key of match | - | | | | item. This parameter is | - | | | | left blank. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | No | String | Specifies the value of the | - | | | | match item. | - | | | | | - | | | | - If **type** is set to | - | | | | **HOST_NAME**, **key** | - | | | | is left blank, and | - | | | | **value** indicates the | - | | | | domain name, which can | - | | | | contain 1 to 128 | - | | | | characters, including | - | | | | letters, digits, hyphens | - | | | | (-), periods (.), and | - | | | | asterisks (*), and must | - | | | | start with a letter, | - | | | | digit, or asterisk (*). | - | | | | If you want to use a | - | | | | wildcard domain name, | - | | | | enter an asterisk (*) as | - | | | | the leftmost label of | - | | | | the domain name. | - | | | | | - | | | | - If **type** is set to | - | | | | **PATH**, **key** is | - | | | | left blank, and | - | | | | **value** indicates the | - | | | | request path, which can | - | | | | contain 1 to 128 | - | | | | characters. If | - | | | | **compare_type** is set | - | | | | to **STARTS_WITH** or | - | | | | **EQUAL_TO** for the | - | | | | forwarding rule, the | - | | | | value must start with a | - | | | | slash (/) and can | - | | | | contain only letters, | - | | | | digits, and special | - | | | | characters | - | | | | \ | - | | | | _~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **128** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 6** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | rule | `L7Rule <#UpdateL7Rule__response_L7Rule>`__ | Specifies the forwarding rule. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 7** L7Rule - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding rule. The default | - | | | value is **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | compare_type | String | Specifies how requests are matched | - | | | with the domain name or URL. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, this parameter can | - | | | only be set to **EQUAL_TO**. | - | | | | - | | | - If **type** is set to **PATH**, | - | | | this parameter can be set to | - | | | **REGEX**, **STARTS_WITH**, or | - | | | **EQUAL_TO**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | key | String | Specifies the key of the match | - | | | content. This parameter will not take | - | | | effect when **type** is set to | - | | | **HOST_NAME** or **PATH**. It can be | - | | | updated but will not take effect. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the match content. The | - | | | value can be one of the following: | - | | | | - | | | - **HOST_NAME**: A domain name will | - | | | be used for matching. | - | | | | - | | | - **PATH**: A URL will be used for | - | | | matching. | - | | | | - | | | If **type** is set to **HOST_NAME**, | - | | | **PATH**, **METHOD**, or | - | | | **SOURCE_IP**, only one forwarding | - | | | rule can be created for each type. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | item. For example, if a domain name | - | | | is used for matching, **value** is | - | | | the domain name. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, the value can | - | | | contain letters, digits, hyphens | - | | | (-), and periods (.) and must | - | | | start with a letter or digit. If | - | | | you want to use a wildcard domain | - | | | name, enter an asterisk (*) as the | - | | | leftmost label of the domain name. | - | | | | - | | | - If **type** is set to **PATH** and | - | | | **compare_type** to | - | | | **STARTS_WITH** or **EQUAL_TO**, | - | | | the value must start with a slash | - | | | (/) and can contain only letters, | - | | | digits, and special characters | - | | | \_~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the forwarding rule. | - | | | | - | | | The value can only be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | invert | Boolean | Specifies whether reverse matching is | - | | | supported. The value is fixed at | - | | | **false**. This parameter can be | - | | | updated but remains invalid. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | conditions | Array of | Specifies the matching conditions of | - | | `RuleCondition <#Upd | the forwarding rule. | - | | ateL7Rule__response_RuleCondition>`__ | | - | | objects | - If **conditions** is specified, | - | | | **key** and **value** will not | - | | | take effect, and the value of this | - | | | parameter will contain all | - | | | conditions configured for the | - | | | forwarding rule. The keys in the | - | | | list must be the same, whereas | - | | | each value must be unique. | - | | | | - | | | - If **conditions** is not | - | | | specified, the values of **key** | - | | | and **value** are displayed. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 8** RuleCondition - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | key | String | Specifies the key of match item. This | - | | | parameter is left blank. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | item. | - | | | | - | | | - If **type** is set to | - | | | **HOST_NAME**, **key** is left | - | | | blank, and **value** indicates the | - | | | domain name, which can contain 1 | - | | | to 128 characters, including | - | | | letters, digits, hyphens (-), | - | | | periods (.), and asterisks (*), | - | | | and must start with a letter, | - | | | digit, or asterisk (*). If you | - | | | want to use a wildcard domain | - | | | name, enter an asterisk (*) as the | - | | | leftmost label of the domain name. | - | | | | - | | | - If **type** is set to **PATH**, | - | | | **key** is left blank, and | - | | | **value** indicates the request | - | | | path, which can contain 1 to 128 | - | | | characters. If **compare_type** is | - | | | set to **STARTS_WITH** or | - | | | **EQUAL_TO** for the forwarding | - | | | rule, the value must start with a | - | | | slash (/) and can contain only | - | | | letters, digits, and special | - | | | characters | - | | | \_~';@^-%#&$.*+?,=!:|/()[]{} | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **128** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - PUT - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/l7policies/cf4360fd-8631-41ff-a6f5-b72c35da74be/rules/84f4fcae-9c15-4e19-a99f-72c0b08fd3d7 - - { - "rule" : { - "compare_type" : "STARTS_WITH", - "value" : "/ccc.html" - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "rule" : { - "compare_type" : "STARTS_WITH", - "provisioning_status" : "ACTIVE", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "invert" : false, - "admin_state_up" : true, - "value" : "/ccc.html", - "type" : "PATH", - "id" : "84f4fcae-9c15-4e19-a99f-72c0b08fd3d7" - }, - "request_id" : "133096f9-e754-430d-a2c2-e61fe1190aa8" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/UpdateListener.rst b/elb/api-ref/UpdateListener.rst deleted file mode 100644 index 16b9cf06..00000000 --- a/elb/api-ref/UpdateListener.rst +++ /dev/null @@ -1,823 +0,0 @@ -Updating a Listener -=================== - -Function -^^^^^^^^ - -This API is used to update a listener. - -Constraints -^^^^^^^^^^^ - -If the provisioning status of the load balancer that the listener is added to is not **ACTIVE**, the listener cannot be updated. Only the administrator can specify **connection_limit**. - -URI -^^^ - -PUT /v3/{project_id}/elb/listeners/{listener_id} - -.. table:: **Table 1** Path parameters - - =========== ========= ====== ========================== - Parameter Mandatory Type Description - =========== ========= ====== ========================== - listener_id Yes String Specifies the listener ID. - project_id Yes String Specifies the tenant ID. - =========== ========= ====== ========================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------------------------------------------+-------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=================================================================================+=========================+ - | listener | Yes | `UpdateListenerOption <#UpdateListener__request_UpdateListenerOption>`__ object | Specifies the listener. | - +-----------+-----------+---------------------------------------------------------------------------------+-------------------------+ - -.. table:: **Table 4** UpdateListenerOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the listener. And the value | - | | | | can only be **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | client_ca_tls_container_ref | No | String | Specifies the ID of the CA | - | | | | certificate used by the | - | | | | listener. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_pool_id | No | String | Specifies the ID of the | - | | | | default backend server | - | | | | group. If there is no | - | | | | matched forwarding policy, | - | | | | requests are forwarded to | - | | | | the default backend server. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_tls_container_ref | No | String | Specifies the ID of the | - | | | | server certificate used by | - | | | | the listener. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | listener. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http2_enable | No | Boolean | Specifies whether to use | - | | | | HTTP/2. This parameter is | - | | | | available only for HTTPS | - | | | | listeners. If you configure | - | | | | this parameter for other | - | | | | types of listeners, it will | - | | | | not take effect. | - | | | | | - | | | | Enable HTTP/2 if you want | - | | | | the clients to use HTTP/2 | - | | | | to communicate with the | - | | | | load balancer. However, | - | | | | connections between the | - | | | | load balancer and backend | - | | | | servers use HTTP/1.x by | - | | | | default. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | insert_headers | No | `ListenerInsertHeade | Specifies the HTTP header | - | | | rs <#UpdateListener__reques | fields. | - | | | t_ListenerInsertHeaders>`__ | | - | | | object | | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the listener | - | | | | name. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | sni_container_refs | No | Array of strings | Lists the IDs of SNI | - | | | | certificates (server | - | | | | certificates with domain | - | | | | names) used by the | - | | | | listener. | - | | | | | - | | | | Each SNI certificate can | - | | | | have up to 30 domain names, | - | | | | and each domain name in the | - | | | | SNI certificate must be | - | | | | unique. | - | | | | | - | | | | This parameter will be | - | | | | ignored and an empty array | - | | | | will be returned if the | - | | | | listener's protocol is not | - | | | | HTTPS. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tls_ciphers_policy | No | String | Specifies the security | - | | | | policy used by the | - | | | | listener. | - | | | | | - | | | | This parameter is available | - | | | | only for HTTPS listeners. | - | | | | The default value is | - | | | | **tls-1-0**. | - | | | | | - | | | | An error will be returned | - | | | | if the protocol of the | - | | | | listener is not HTTPS. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **tls-1-0** | - | | | | | - | | | | - **tls-1-1** | - | | | | | - | | | | - **tls-1-2** | - | | | | | - | | | | - **tls-1-2-strict** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enable_member_retry | No | Boolean | Specifies whether to enable | - | | | | health check retries for | - | | | | backend servers. This | - | | | | parameter is available only | - | | | | for HTTP and HTTPS | - | | | | listeners of Shared load | - | | | | balancers. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_timeout | No | Integer | Specifies the timeout | - | | | | duration for waiting for a | - | | | | request from a backend | - | | | | server, in seconds. | - | | | | | - | | | | This parameter is available | - | | | | only for HTTP and HTTPS | - | | | | listeners. The value ranges | - | | | | from **1** to **300**, and | - | | | | the default value is | - | | | | **60**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | client_timeout | No | Integer | Specifies the timeout | - | | | | duration for waiting for a | - | | | | request from a client, in | - | | | | seconds. | - | | | | | - | | | | This parameter is available | - | | | | only for HTTP and HTTPS | - | | | | listeners. The value ranges | - | | | | from **1** to **300**, and | - | | | | the default value is | - | | | | **60**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | keepalive_timeout | No | Integer | Specifies the idle timeout | - | | | | duration, in seconds. | - | | | | | - | | | | - For TCP listeners, the | - | | | | value ranges from **10** | - | | | | to **4000**, and the | - | | | | default value is | - | | | | **300**. | - | | | | | - | | | | - For HTTP and HTTPS | - | | | | listeners, the value | - | | | | ranges from **0** to | - | | | | **4000**, and the | - | | | | default value is **60**. | - | | | | | - | | | | - For UDP listeners, this | - | | | | parameter is invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ipgroup | No | `Upda | Specifies the IP address | - | | | teListenerIpGroupOption <#U | group associated with the | - | | | pdateListener__request_Upda | listener. | - | | | teListenerIpGroupOption>`__ | | - | | | object | The value can be **null** | - | | | | or an empty JSON structure, | - | | | | indicating that no IP | - | | | | address group is associated | - | | | | with the listener. | - | | | | | - | | | | **ipgroup_id** is also | - | | | | required if you want to | - | | | | associate an IP address | - | | | | group with the listener. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | t | No | Boolean | Specifies whether to pass | - | ransparent_client_ip_enable | | | source IP addresses of the | - | | | | clients to backend servers. | - | | | | | - | | | | Shared load balancers: The | - | | | | value can be **true** or | - | | | | **false**, and the default | - | | | | value is **false** for TCP | - | | | | and UDP listeners. The | - | | | | value can only be **true** | - | | | | for HTTP and HTTPS | - | | | | listeners. If this | - | | | | parameter is not passed, | - | | | | the default value is | - | | | | **true**. | - | | | | | - | | | | Dedicated load balancers: | - | | | | The value can only be | - | | | | **true** for all types of | - | | | | listeners. If this | - | | | | parameter is not passed, | - | | | | the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enhance_l7policy_enable | No | Boolean | Specifies whether to enable | - | | | | advanced forwarding. The | - | | | | value can be **true** or | - | | | | **false** (default). | - | | | | | - | | | | - **true** indicates that | - | | | | advanced forwarding will | - | | | | be enabled. Advanced | - | | | | forwarding cannot be | - | | | | disabled once it is | - | | | | enabled. | - | | | | | - | | | | - **false** indicates that | - | | | | advanced forwarding will | - | | | | not be enabled. | - | | | | | - | | | | The following parameters | - | | | | will be available only when | - | | | | advanced forwarding is | - | | | | enabled: | - | | | | | - | | | | - **redirect_url_config** | - | | | | | - | | | | - | - | | | | **fixed_response_config** | - | | | | | - | | | | - **priority** | - | | | | | - | | | | - **conditions** | - | | | | | - | | | | For details, see the | - | | | | descriptions in the APIs of | - | | | | forwarding policies and | - | | | | forwarding rules. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** ListenerInsertHeaders - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | X-Forwarded-ELB-IP | No | Boolean | Specifies whether to | - | | | | transparently transmit the | - | | | | load balancer EIP to | - | | | | backend servers. If | - | | | | **X-Forwarded-ELB-IP** is | - | | | | set to **true**, the load | - | | | | balancer EIP will be stored | - | | | | in the HTTP header and | - | | | | passed to backend servers. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | X-Forwarded-Port | No | Boolean | Specifies whether to | - | | | | transparently transmit the | - | | | | listening port of the load | - | | | | balancer to backend | - | | | | servers. If | - | | | | **X-Forwarded-Port** is set | - | | | | to **true**, the listening | - | | | | port of the load balancer | - | | | | will be stored in the HTTP | - | | | | header and passed to | - | | | | backend servers. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | X-Forwarded-For-Port | No | Boolean | Specifies whether to | - | | | | transparently transmit the | - | | | | source port of the client | - | | | | to backend servers. If | - | | | | **X-Forwarded-For-Port** is | - | | | | set to **true**, the source | - | | | | port of the client will be | - | | | | stored in the HTTP header | - | | | | and passed to backend | - | | | | servers. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | X-Forwarded-Host | Yes | Boolean | Specifies whether to | - | | | | rewrite the | - | | | | **X-Forwarded-Host** | - | | | | header. If | - | | | | **X-Forwarded-Host** is set | - | | | | to **true**, | - | | | | **X-Forwarded-Host** in the | - | | | | request header from the | - | | | | clients can be set to | - | | | | **Host** in the request | - | | | | header sent from the load | - | | | | balancer to backend | - | | | | servers. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 6** UpdateListenerIpGroupOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | ipgroup_id | No | String | Specifies the ID of the IP | - | | | | address group associated | - | | | | with the listener. | - | | | | | - | | | | - If **ip_list** is set to | - | | | | **[]** and **type** to | - | | | | **whitelist**, no IP | - | | | | addresses are allowed to | - | | | | access the listener. | - | | | | | - | | | | - If **ip_list** is set to | - | | | | **[]** and **type** to | - | | | | **blacklist**, any IP | - | | | | address is allowed to | - | | | | access the listener. | - | | | | | - | | | | - The specified IP address | - | | | | group must exist and | - | | | | this parameter cannot be | - | | | | set to **null**. | - | | | | | - | | | | IP address groups are not | - | | | | supported for now. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enable_ipgroup | No | Boolean | Specifies whether access | - | | | | control is enabled. | - | | | | | - | | | | - **true**: Access control | - | | | | is enabled. | - | | | | | - | | | | - **false**: Access | - | | | | control is disabled. | - | | | | | - | | | | A listener with access | - | | | | control enabled can be | - | | | | directly deleted. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | String | Specifies how access to the | - | | | | listener is controlled. | - | | | | | - | | | | - **white**: A whitelist | - | | | | is configured. Only IP | - | | | | addresses in the | - | | | | whitelist can access the | - | | | | listener. | - | | | | | - | | | | - **black**: A blacklist | - | | | | is configured. IP | - | | | | addresses in the | - | | | | blacklist are not | - | | | | allowed to access the | - | | | | listener. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 7** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | listener | `Listener <#UpdateListener__response_Listener>`__ | Specifies the listener. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 8** Listener - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the listener. And the value can | - | | | only be **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_ca_tls_container_ref | String | Specifies the ID of the CA | - | | | certificate used by the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | connection_limit | Integer | Specifies the maximum number of | - | | | connections. The default value is | - | | | **-1**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the listener | - | | | was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_pool_id | String | Specifies the ID of the default | - | | | backend server group. If there is no | - | | | matched forwarding policy, requests | - | | | are forwarded to the default backend | - | | | server. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_tls_container_ref | String | Specifies the ID of the server | - | | | certificate used by the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http2_enable | Boolean | Specifies whether to use HTTP/2. This | - | | | parameter is available only for HTTPS | - | | | listeners. If you configure this | - | | | parameter for other types of | - | | | listeners, it will not take effect. | - | | | | - | | | Enable HTTP/2 if you want the clients | - | | | to use HTTP/2 to communicate with the | - | | | load balancer. However, connections | - | | | between the load balancer and backend | - | | | servers use HTTP/1.x by default. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | insert_headers | ` | Specifies the HTTP header fields. | - | | ListenerInsertHeaders <#UpdateListene | | - | | r__response_ListenerInsertHeaders>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array of | Specifies the ID of the load balancer | - | | `LoadBalancerRef <#UpdateL | that the listener is added to. | - | | istener__response_LoadBalancerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the ID of the project where | - | | | the listener is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | listener. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sni_container_refs | Array of strings | Lists the IDs of SNI certificates | - | | | (server certificates with domain | - | | | names) used by the listener. | - | | | | - | | | Each SNI certificate can have up to | - | | | 30 domain names, and each domain name | - | | | in the SNI certificate must be | - | | | unique. | - | | | | - | | | This parameter will be ignored and an | - | | | empty array will be returned if the | - | | | listener's protocol is not HTTPS. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array of | Lists the tags. | - | | `T | | - | | ag <#UpdateListener__response_Tag>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the listener | - | | | was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tls_ciphers_policy | String | Specifies the security policy used by | - | | | the listener. This parameter is | - | | | available only for HTTPS listeners. | - | | | | - | | | The value can be **tls-1-0**, | - | | | **tls-1-1**, **tls-1-2**, or | - | | | **tls-1-2-strict**, and the default | - | | | value is **tls-1-0**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_member_retry | Boolean | Specifies whether to enable health | - | | | check retries for backend servers. | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | keepalive_timeout | Integer | Specifies the idle timeout duration, | - | | | in seconds. | - | | | | - | | | - For TCP listeners, the value | - | | | ranges from **10** to **4000**, | - | | | and the default value is **300**. | - | | | | - | | | - For HTTP and HTTPS listeners, the | - | | | value ranges from **0** to | - | | | **4000**, and the default value is | - | | | **60**. | - | | | | - | | | - For UDP listeners, this parameter | - | | | does not take effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_timeout | Integer | Specifies the timeout duration for | - | | | waiting for a request from a client, | - | | | in seconds. | - | | | | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. The value | - | | | ranges from **1** to **300**, and the | - | | | default value is **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | member_timeout | Integer | Specifies the timeout duration for | - | | | waiting for a request from a backend | - | | | server, in seconds. | - | | | | - | | | This parameter is available only for | - | | | HTTP and HTTPS listeners. The value | - | | | ranges from **1** to **300**, and the | - | | | default value is **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipgroup | `ListenerIpGroup <#UpdateL | Specifies the IP address group | - | | istener__response_ListenerIpGroup>`__ | associated with the listener. | - | | object | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | transparent_client_ip_enable | Boolean | Specifies whether to pass source IP | - | | | addresses of the clients to backend | - | | | servers. | - | | | | - | | | Shared load balancers: The value can | - | | | be **true** or **false**, and the | - | | | default value is **false** for TCP | - | | | and UDP listeners. The value can only | - | | | be **true** for HTTP and HTTPS | - | | | listeners. If this parameter is not | - | | | passed, the default value is | - | | | **true**. | - | | | | - | | | Dedicated load balancers: The value | - | | | can only be **true** for all types of | - | | | listeners. If this parameter is not | - | | | passed, the default value is | - | | | **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enhance_l7policy_enable | Boolean | Specifies whether to enable advanced | - | | | forwarding. The value can be **true** | - | | | or **false** (default). | - | | | | - | | | - **true** indicates that advanced | - | | | forwarding will be enabled. | - | | | | - | | | - **false** indicates that advanced | - | | | forwarding will not be enabled. | - | | | | - | | | The following parameters will be | - | | | available only when advanced | - | | | forwarding is enabled: | - | | | | - | | | - **redirect_url_config** | - | | | | - | | | - **fixed_response_config** | - | | | | - | | | - **priority** | - | | | | - | | | - **conditions** | - | | | | - | | | For details, see the descriptions in | - | | | the APIs of forwarding policies and | - | | | forwarding rules. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 9** ListenerInsertHeaders - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | X-Forwarded-ELB-IP | Boolean | Specifies whether to transparently | - | | | transmit the load balancer EIP to | - | | | backend servers. If | - | | | **X-Forwarded-ELB-IP** is set to | - | | | **true**, the load balancer EIP will | - | | | be stored in the HTTP header and | - | | | passed to backend servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-Port | Boolean | Specifies whether to transparently | - | | | transmit the listening port of the | - | | | load balancer to backend servers. If | - | | | **X-Forwarded-Port** is set to | - | | | **true**, the listening port of the | - | | | load balancer will be stored in the | - | | | HTTP header and passed to backend | - | | | servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-For-Port | Boolean | Specifies whether to transparently | - | | | transmit the source port of the | - | | | client to backend servers. If | - | | | **X-Forwarded-For-Port** is set to | - | | | **true**, the source port of the | - | | | client will be stored in the HTTP | - | | | header and passed to backend servers. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | X-Forwarded-Host | Boolean | Specifies whether to rewrite the | - | | | **X-Forwarded-Host** header. If | - | | | **X-Forwarded-Host** is set to | - | | | **true**, **X-Forwarded-Host** in the | - | | | request header from the clients can | - | | | be set to **Host** in the request | - | | | header sent from the load balancer to | - | | | backend servers. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 10** LoadBalancerRef - - ========= ====== =============================== - Parameter Type Description - ========= ====== =============================== - id String Specifies the load balancer ID. - ========= ====== =============================== - -.. table:: **Table 11** Tag - - ========= ====== ======================== - Parameter Type Description - ========= ====== ======================== - key String Specifies the tag key. - value String Specifies the tag value. - ========= ====== ======================== - -.. table:: **Table 12** ListenerIpGroup - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | ipgroup_id | String | Specifies the ID of the IP address | - | | | group associated with the listener. | - | | | | - | | | - If **ip_list** is set to **[]** | - | | | and **type** to **whitelist**, no | - | | | IP addresses are allowed to access | - | | | the listener. | - | | | | - | | | - If **ip_list** is set to **[]** | - | | | and **type** to **blacklist**, any | - | | | IP address is allowed to access | - | | | the listener. | - | | | | - | | | - The specified IP address group | - | | | must exist and this parameter | - | | | cannot be set to **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_ipgroup | Boolean | Specifies whether to enable access | - | | | control. | - | | | | - | | | - **true**: Access control is | - | | | enabled. | - | | | | - | | | - **false**: Access control is | - | | | disabled. | - | | | | - | | | A listener with access control | - | | | enabled can be directly deleted. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies how access to the listener | - | | | is controlled. | - | | | | - | | | - **white**: A whitelist is | - | | | configured. Only IP addresses in | - | | | the whitelist can access the | - | | | listener. | - | | | | - | | | - **black**: A blacklist is | - | | | configured. IP addresses in the | - | | | blacklist are not allowed to | - | | | access the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - PUT - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/listeners/0b11747a-b139-492f-9692-2df0b1c87193 - - { - "listener" : { - "description" : "My listener update.", - "name" : "listener-1", - "http2_enable" : true - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "listener" : { - "id" : "e2baad06-8095-4159-a14e-d1f0137bac06", - "name" : "listener-1", - "protocol_port" : 77, - "protocol" : "HTTP", - "description" : "My listener update.", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "c285bc7b-56d5-43bd-9589-075ee0a5c777" - } ], - "project_id" : "060576782980d5762f9ec014dd2f1148", - "sni_container_refs" : [ ], - "connection_limit" : -1, - "default_pool_id" : "61609d20-5230-4b72-8274-46212bbf317c", - "tags" : [ ], - "created_at" : "2020-07-28T11:35:21Z", - "updated_at" : "2020-07-28T11:35:21Z", - "http2_enable" : true, - "insert_headers" : { - "X-Forwarded-ELB-IP" : false, - "X-Forwarded-Host" : true, - "X-Forwarded-For-Port" : false, - "X-Forwarded-Port" : false - }, - "member_timeout" : 60, - "client_timeout" : 60, - "keepalive_timeout" : 60, - "enable_member_retry" : true, - "transparent_client_ip_enable" : true, - "enhance_l7policy_enable" : false - }, - "request_id" : "619dc40f7ec73c0f13b5b5127904b71e" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/UpdateLoadBalancer.rst b/elb/api-ref/UpdateLoadBalancer.rst deleted file mode 100644 index 3dd56f1c..00000000 --- a/elb/api-ref/UpdateLoadBalancer.rst +++ /dev/null @@ -1,659 +0,0 @@ -Updating a Load Balancer -======================== - -Function -^^^^^^^^ - -This API is used to update a load balancer. - -URI -^^^ - -PUT /v3/{project_id}/elb/loadbalancers/{loadbalancer_id} - -.. table:: **Table 1** Path parameters - - =============== ========= ====== =============================== - Parameter Mandatory Type Description - =============== ========= ====== =============================== - loadbalancer_id Yes String Specifies the load balancer ID. - project_id Yes String Specifies the project ID. - =============== ========= ====== =============================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +--------------+-----------+-------------------------------------------+------------------------------+ - | Parameter | Mandatory | Type | Description | - +==============+===========+===========================================+==============================+ - | loadbalancer | Yes | `U | Specifies the load balancer. | - | | | pdateLoadBalancerOption <#UpdateLoadBalan | | - | | | cer__request_UpdateLoadBalancerOption>`__ | | - | | | object | | - +--------------+-----------+-------------------------------------------+------------------------------+ - -.. table:: **Table 4** UpdateLoadBalancerOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the load balancer | - | | | | name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the load balancer. And the | - | | | | value can only be **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - | | | | | - | | | | Default: **true** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the load | - | | | | balancer. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ipv6_vip_virsubnet_id | No | String | Specifies the ID of the | - | | | | IPv6 subnet where the load | - | | | | balancer works. You can | - | | | | query **id** in the | - | | | | response by calling the API | - | | | | (GET | - | | | | https://{VPC_Endpoint | - | | | | }/v1/{project_id}/subnets). | - | | | | | - | | | | The IPv6 subnet can be | - | | | | updated using | - | | | | **ipv6_vip_virsubnet_id**, | - | | | | and the private IPv6 | - | | | | address of the load | - | | | | balancer will be changed | - | | | | accordingly. | - | | | | | - | | | | The IPv6 subnet must be in | - | | | | the VPC specified by | - | | | | **vpc_id**. | - | | | | | - | | | | Note: | - | | | | | - | | | | - | - | | | | **ipv6_vip_virsubnet_id** | - | | | | can be updated only when | - | | | | **guaranteed** is set to | - | | | | **true**. | - | | | | - Enter **null** if the | - | | | | IPv6 address is unbound | - | | | | from the load balancer. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_subnet_cidr_id | No | String | Specifies the ID of the | - | | | | IPv4 subnet where the load | - | | | | balancer works. You can | - | | | | query **neutron_subnet_id** | - | | | | in the response by calling | - | | | | the API (GET | - | | | | https://{VPC_Endpoint | - | | | | }/v1/{project_id}/subnets). | - | | | | | - | | | | - The IPv4 subnet can be | - | | | | updated using | - | | | | **vip_subnet_cidr_id**, | - | | | | and the private IPv4 | - | | | | address of the load | - | | | | balancer will be changed | - | | | | accordingly. | - | | | | - If **vip_address** is | - | | | | also specified, the IP | - | | | | address specified by it | - | | | | must be in the subnet | - | | | | specified by | - | | | | **vip_subnet_cidr_id** | - | | | | and will be used as the | - | | | | private IPv4 address of | - | | | | the load balancer. | - | | | | - The IPv4 subnet must be | - | | | | in the VPC specified by | - | | | | **vpc_id**. | - | | | | | - | | | | Note: | - | | | | | - | | | | - **vip_subnet_cidr_id** | - | | | | can be updated only when | - | | | | **guaranteed** is set to | - | | | | **true**. | - | | | | - Enter **null** if the | - | | | | private IPv4 address is | - | | | | unbound from the load | - | | | | balancer. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_address | No | String | Specifies the virtual IP | - | | | | address bound to the load | - | | | | balancer. The IP address | - | | | | must be from the IPv4 | - | | | | subnet of the VPC where the | - | | | | load balancer works and IP | - | | | | address should not be | - | | | | occupied by other services. | - | | | | | - | | | | The IP address specified by | - | | | | this parameter must be in | - | | | | the subnet specified by | - | | | | **vip_subnet_cidr_id** and | - | | | | will be used as the private | - | | | | IPv4 address of the load | - | | | | balancer. | - | | | | | - | | | | **vip_address** can be | - | | | | updated only when | - | | | | **guaranteed** is set to | - | | | | **true**. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **36** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | l4_flavor_id | No | String | Specifies the ID of the | - | | | | Layer-4 flavor. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter can be | - | | | | updated only when | - | | | | **guaranteed** is set to | - | | | | **true**. | - | | | | - The value cannot be | - | | | | changed from **null** to | - | | | | a specific value, or the | - | | | | other way around. If you | - | | | | need to change the | - | | | | flavor, you must select | - | | | | a larger one. | - | | | | | - | | | | Minimum: **1** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | l7_flavor_id | No | String | Specifies the ID of the | - | | | | Layer-7 flavor. | - | | | | | - | | | | Note: | - | | | | | - | | | | - This parameter can be | - | | | | updated only when | - | | | | **guaranteed** is set to | - | | | | **true**. | - | | | | - The value cannot be | - | | | | changed from **null** to | - | | | | a specific value, or the | - | | | | other way around. If you | - | | | | need to change the | - | | | | flavor, you must select | - | | | | a larger one. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ipv6_bandwidth | No | `Bandw | Specifies the ID of the | - | | | idthRef <#UpdateLoadBalance | bandwidth. This parameter | - | | | r__request_BandwidthRef>`__ | is available only when you | - | | | object | create or update a | - | | | | dedicated load balancer | - | | | | that has an IPv6 address | - | | | | bound. | - | | | | | - | | | | If you use a new IPv6 | - | | | | address and specify a | - | | | | shared bandwidth, the IPv6 | - | | | | address will be added to | - | | | | the shared bandwidth. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ip_target_enable | No | Boolean | Specifies whether to enable | - | | | | cross-VPC backend. The | - | | | | value can only be **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** BandwidthRef - - ========= ========= ====== ================================== - Parameter Mandatory Type Description - ========= ========= ====== ================================== - id Yes String Specifies the shared bandwidth ID. - ========= ========= ====== ================================== - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 6** Response body parameters - - +--------------+--------------------------------------------------+--------------------------------------------------+ - | Parameter | Type | Description | - +==============+==================================================+==================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +--------------+--------------------------------------------------+--------------------------------------------------+ - | loadbalancer | `LoadBalancer | Specifies the load balancer. | - | | <#UpdateLoadBalancer__response_LoadBalancer>`__ | | - | | object | | - +--------------+--------------------------------------------------+--------------------------------------------------+ - -.. table:: **Table 7** LoadBalancer - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the load balancer ID. | - | | | | - | | | Default: **Automatically generated** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the load balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the load balancer. The value can only | - | | | be **ACTIVE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the load balancer. The value can | - | | | only be **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provider | String | Specifies the provider of the load | - | | | balancer. The value can only be | - | | | **vlb**. | - | | | | - | | | Default: **vlb** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array of | Lists the IDs of backend server | - | | `PoolRef <#Upd | groups associated with the load | - | | ateLoadBalancer__response_PoolRef>`__ | balancer. | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the IDs of listeners added to | - | | `ListenerRef <#UpdateL | the load balancer. | - | | oadBalancer__response_ListenerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | load balancer. The value can only be | - | | | **ONLINE**. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **16** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_address | String | Specifies the private IPv4 address | - | | | bound to the load balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **64** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_cidr_id | String | Specifies the ID of the IPv4 subnet | - | | | where the load balancer works. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **36** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the name of the load | - | | | balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID of the load | - | | | balancer. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **32** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_port_id | String | Specifies the ID of the port bound to | - | | | the virtual IP address (the value of | - | | | **vip_address**) of the load | - | | | balancer. | - | | | | - | | | When you create a dedicated load | - | | | balancer, the system automatically | - | | | creates a port for the load balancer | - | | | and associates the port with a | - | | | default security group. However, | - | | | security group rules containing the | - | | | port will not affect traffic to and | - | | | from the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array of | Lists the tags added to the load | - | | `Tag < | balancer. | - | | #UpdateLoadBalancer__response_Tag>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the load | - | | | balancer was created. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **20** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the load | - | | | balancer was updated. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **20** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | guaranteed | Boolean | Specifies whether the load balancer | - | | | is a dedicated load balancer. | - | | | | - | | | The value can be **true** or | - | | | **false**. **true** indicates a | - | | | dedicated load balancer, and | - | | | **false** indicates a shared load | - | | | balancer. When dedicated load | - | | | balancers are launched in the | - | | | **eu-de** region, either **true** or | - | | | **false** will be returned when you | - | | | use the API to query or update a load | - | | | balancer. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vpc_id | String | Specifies the ID of the VPC where the | - | | | load balancer works. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | eips | Array of | Specifies the EIP bound to the load | - | | `EipInfo <#Upd | balancer. | - | | ateLoadBalancer__response_EipInfo>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_address | String | Specifies the IPv6 address bound to | - | | | the load balancer. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **None** | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **64** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_virsubnet_id | String | Specifies the ID of the IPv6 subnet | - | | | where the load balancer works. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_vip_port_id | String | Specifies the ID of the port bound to | - | | | the IPv6 address. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | availability_zone_list | Array of strings | Specifies the list of AZs where the | - | | | load balancer is created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enterprise_project_id | String | Specifies the enterprise project ID. | - | | | | - | | | If this parameter is not passed | - | | | during resource creation, the | - | | | resource belongs to the default | - | | | enterprise project. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **0** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l4_flavor_id | String | Specifies the Layer-4 flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l4_scale_flavor_id | String | Specifies the reserved Layer 4 | - | | | flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7_flavor_id | String | Specifies the Layer-7 flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7_scale_flavor_id | String | Specifies the reserved Layer 7 | - | | | flavor. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **255** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | publicips | Array of | Specifies the EIP bound to the load | - | | `PublicIpInfo <#UpdateLo | balancer. | - | | adBalancer__response_PublicIpInfo>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | elb_virsubnet_ids | Array of strings | Specifies the ID of the subnet on the | - | | | downstream plane. The ports used by | - | | | the load balancer dynamically occupy | - | | | IP addresses in the subnet. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_target_enable | Boolean | Specifies whether to enable cross-VPC | - | | | backend. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | frozen_scene | String | Specifies the scenario where the load | - | | | balancer is frozen. Use commas to | - | | | separate multiple scenarios. | - | | | | - | | | If the value is **ARREAR**, the load | - | | | balancer is frozen because your | - | | | account is in arrears. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ipv6_bandwidth | `BandwidthRef <#UpdateLo | Specifies the ID of the bandwidth. | - | | adBalancer__response_BandwidthRef>`__ | This parameter is available only when | - | | object | you create or update a dedicated load | - | | | balancer that has an IPv6 address | - | | | bound. | - | | | | - | | | If you use a new IPv6 address and | - | | | specify a shared bandwidth, the IPv6 | - | | | address will be added to the shared | - | | | bandwidth. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 8** PoolRef - - ========= ====== ============================================= - Parameter Type Description - ========= ====== ============================================= - id String Specifies the ID of the backend server group. - ========= ====== ============================================= - -.. table:: **Table 9** ListenerRef - - ========= ====== ========================== - Parameter Type Description - ========= ====== ========================== - id String Specifies the listener ID. - ========= ====== ========================== - -.. table:: **Table 10** Tag - - ========= ====== ======================== - Parameter Type Description - ========= ====== ======================== - key String Specifies the tag key. - value String Specifies the tag value. - ========= ====== ======================== - -.. table:: **Table 11** EipInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | eip_id | String | Specifies the EIP ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | eip_address | String | Specifies the specific IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | Integer | Specifies the IP version. **4** | - | | | indicates IPv4, and **6** indicates | - | | | IPv6. | - | | | | - | | | IPv6 is unsupported. The value cannot | - | | | be **6**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 12** PublicIpInfo - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | publicip_id | String | Specifies the EIP ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | publicip_address | String | Specifies the IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | Integer | Specifies the IP version. The value | - | | | can be **4** (IPv4) or **6** (IPv6). | - | | | | - | | | IPv6 is unsupported. The value cannot | - | | | be **6**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 13** BandwidthRef - - ========= ====== ================================== - Parameter Type Description - ========= ====== ================================== - id String Specifies the shared bandwidth ID. - ========= ====== ================================== - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - PUT - - https://{elb_endpoint}/v3/{project_id}/elb/loadbalancers/{loadbalancer_id} - - { - "loadbalancer" : { - "admin_state_up" : true, - "description" : "loadbalancer", - "name" : "loadbalancer-update" - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "request_id" : "010dad1e-32a3-4405-ab83-62a1fc5f8722", - "loadbalancer" : { - "id" : "2e073bf8-edfe-4e51-a699-d915b0b8af89", - "project_id" : "b2782e6708b8475c993e6064bc456bf8", - "name" : "loadbalancer-update", - "description" : "loadbalancer", - "admin_state_up" : true, - "provisioning_status" : "ACTIVE", - "operating_status" : "ONLINE", - "listeners" : [ { - "id" : "41937176-bf64-4b58-8e0d-9ff2d0d32c54" - }, { - "id" : "abc6ac93-ad0e-4765-bd5a-eec632efde56" - }, { - "id" : "b9d8ba97-6d60-467d-838d-f3550b54c22a" - }, { - "id" : "fd797ebd-263d-4b18-96e9-e9188d36c69e" - } ], - "pools" : [ { - "id" : "0aabcaa8-c35c-4ddc-a60c-9032d0ac0b80" - }, { - "id" : "165d9092-396e-4a8d-b398-067496a447d2" - } ], - "tags" : [ ], - "provider" : "vlb", - "created_at" : "2019-04-20T03:10:37Z", - "updated_at" : "2019-05-24T02:11:58Z", - "vpc_id" : "2037c5bb-e04b-4de2-9300-9051af18e417", - "enterprise_project_id" : "0", - "availability_zone_list" : [ "AZ1", "AZ2", "dc3" ], - "eips" : [ ], - "guaranteed" : true - } - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/UpdateMember.rst b/elb/api-ref/UpdateMember.rst deleted file mode 100644 index f4ec1025..00000000 --- a/elb/api-ref/UpdateMember.rst +++ /dev/null @@ -1,264 +0,0 @@ -Updating a Backend Server -========================= - -Function -^^^^^^^^ - -The backend server can be updated only when the provisioning status of the associated load balancer is **ACTIVE**. - -URI -^^^ - -PUT /v3/{project_id}/elb/pools/{pool_id}/members/{member_id} - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ============================================= - Parameter Mandatory Type Description - ========== ========= ====== ============================================= - member_id Yes String Specifies the backend server ID. - pool_id Yes String Specifies the ID of the backend server group. - project_id Yes String Specifies the project ID. - ========== ========= ====== ============================================= - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request header parameters - - ============ ========= ====== ================================================ - Parameter Mandatory Type Description - ============ ========= ====== ================================================ - X-Auth-Token Yes String Specifies the token used for IAM authentication. - ============ ========= ====== ================================================ - -.. table:: **Table 3** Request body parameters - - +-----------+-----------+---------------------------------------------+---------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=============================================+=============================================+ - | member | Yes | `UpdateMemberOption <#U | Specifies request parameters for updating a | - | | | pdateMember__request_UpdateMemberOption>`__ | backend server. | - | | | object | | - +-----------+-----------+---------------------------------------------+---------------------------------------------+ - -.. table:: **Table 4** UpdateMemberOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server. | - | | | | | - | | | | Although this parameter can | - | | | | be used in the APIs for | - | | | | creating and updating | - | | | | backend servers, its actual | - | | | | value depends on whether | - | | | | cloud servers exist. If | - | | | | cloud servers exist, the | - | | | | value is **true**. | - | | | | Otherwise, the value is | - | | | | **false**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the backend | - | | | | server name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | weight | No | Integer | Specifies the weight of the | - | | | | backend server. | - | | | | | - | | | | Requests are routed to | - | | | | backend servers in the same | - | | | | backend server group based | - | | | | on their weights. If the | - | | | | weight is 0, the backend | - | | | | server will not accept new | - | | | | requests. | - | | | | | - | | | | This parameter is invalid | - | | | | when **lb_algorithm** is | - | | | | set to **SOURCE_IP** for | - | | | | the backend server group | - | | | | that contains the backend | - | | | | server. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **100** | - | | | | | - | | | | Default: **1** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 5** Response body parameters - - +------------+---------------------------------------------------+---------------------------------------------------+ - | Parameter | Type | Description | - +============+===================================================+===================================================+ - | request_id | String | Specifies the request ID. The value is | - | | | automatically generated. | - +------------+---------------------------------------------------+---------------------------------------------------+ - | member | `Member <#UpdateMember__response_Member>`__ | Specifies the backend server. | - | | object | | - +------------+---------------------------------------------------+---------------------------------------------------+ - -.. table:: **Table 6** Member - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | address | String | Specifies the IP address of the | - | | | backend server. | - | | | | - | | | The IP address must be in the subnet | - | | | specified by **subnet_cidr_id**, for | - | | | example, 192.168.3.11. The IP address | - | | | can only be the IP address of the | - | | | primary NIC. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server. | - | | | | - | | | Although this parameter can be used | - | | | in the APIs for creating and updating | - | | | backend servers, its actual value | - | | | depends on whether cloud servers | - | | | exist. If cloud servers exist, the | - | | | value is **true**. Otherwise, the | - | | | value is **false**. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | backend server. The value can be one | - | | | of the following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | | - | | | - **NO_MONITOR**: No health check is | - | | | configured for the backend server | - | | | group to which the backend server | - | | | belongs. | - | | | | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server to receive requests. | - | | | | - | | | Minimum: **1** | - | | | | - | | | Maximum: **65535** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | subnet_cidr_id | String | Specifies the ID of the subnet where | - | | | the backend server works. This subnet | - | | | must be in the VPC as the subnet of | - | | | the load balancer associated with the | - | | | backend server. Only IPv4 subnets are | - | | | supported. If the value is left | - | | | blank, the backend server is not in | - | | | the load balancer's VPC. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | weight | Integer | Specifies the weight of the backend | - | | | server. | - | | | | - | | | Requests are routed to backend | - | | | servers in the same backend server | - | | | group based on their weights. | - | | | | - | | | If the weight is 0, the backend | - | | | server will not accept new requests. | - | | | | - | | | This parameter is invalid when | - | | | **lb_algorithm** is set to | - | | | **SOURCE_IP** for the backend server | - | | | group that contains the backend | - | | | server. | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **100** | - | | | | - | | | Default: **1** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | String | This is a read-only attribute, which | - | | | is automatically generated based on | - | | | the **address** parameter. The value | - | | | can be **v4** or **v6**. | - | | | | - | | | Default: **v4** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - PUT - - https://{elb_endpoint}/v3/9a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75/members/1923923e-fe8a-484f-bdbc-e11559b1f48f - - { - "member" : { - "name" : "My member", - "weight" : 10 - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "member" : { - "name" : "My member", - "weight" : 10, - "admin_state_up" : false, - "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74", - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "address" : "120.10.10.16", - "protocol_port" : 89, - "id" : "1923923e-fe8a-484f-bdbc-e11559b1f48f", - "operating_status" : "NO_MONITOR", - "ip_version" : "v4" - }, - "request_id" : "e7b569d4-15ad-494d-9dd9-8cd740eef8f6" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/UpdatePool.rst b/elb/api-ref/UpdatePool.rst deleted file mode 100644 index d41b1c98..00000000 --- a/elb/api-ref/UpdatePool.rst +++ /dev/null @@ -1,540 +0,0 @@ -Updating a Backend Server Group -=============================== - -Function -^^^^^^^^ - -This API is used to update a backend server group. - -Constraints -^^^^^^^^^^^ - -The backend server group can be updated only when the provisioning status of the associated load balancer is **ACTIVE**. - -URI -^^^ - -PUT /v3/{project_id}/elb/pools/{pool_id} - -.. table:: **Table 1** Path parameters - - ========== ========= ====== ====================================== - Parameter Mandatory Type Description - ========== ========= ====== ====================================== - pool_id Yes String Specifies the backend server group ID. - project_id Yes String Specifies the project ID. - ========== ========= ====== ====================================== - -Request Parameters -^^^^^^^^^^^^^^^^^^ - -.. table:: **Table 2** Request body parameters - - +-----------+-----------+---------------------------------------------------------------------+-------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+=====================================================================+=====================================+ - | pool | Yes | `UpdatePoolOption <#UpdatePool__request_UpdatePoolOption>`__ object | Specifies the backend server group. | - +-----------+-----------+---------------------------------------------------------------------+-------------------------------------+ - -.. table:: **Table 3** UpdatePoolOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server group. | - | | | | The value can only be | - | | | | updated to **true**. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | backend server group. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | lb_algorithm | No | String | Specifies the load | - | | | | balancing algorithm used by | - | | | | the load balancer to route | - | | | | requests to backend | - | | | | servers. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **ROUND_ROBIN**: | - | | | | weighted round robin | - | | | | | - | | | | - **LEAST_CONNECTIONS**: | - | | | | weighted least | - | | | | connections | - | | | | | - | | | | - **SOURCE_IP**: source IP | - | | | | hash | - | | | | | - | | | | When the value is | - | | | | **SOURCE_IP**, the weights | - | | | | of backend servers are | - | | | | invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the backend | - | | | | server group name. | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **255** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | session_persistence | No | `UpdatePoolSess | Specifies whether to enable | - | | | ionPersistenceOption <#Upda | sticky sessions. | - | | | tePool__request_UpdatePoolS | | - | | | essionPersistenceOption>`__ | | - | | | object | | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | slow_start | No | `UpdatePoolSlowStartOpti | Specifies whether to enable | - | | | on <#UpdatePool__request_Up | slow start. After you | - | | | datePoolSlowStartOption>`__ | enable slow start, new | - | | | object | backend servers added to | - | | | | the backend server group | - | | | | are warmed up, and the | - | | | | number of requests they can | - | | | | receive increases linearly | - | | | | during the configured slow | - | | | | start duration. | - | | | | | - | | | | This parameter can be used | - | | | | when the protocol of the | - | | | | backend server group is | - | | | | HTTP or HTTPS. An error | - | | | | will be returned if the | - | | | | protocol is not HTTP or | - | | | | HTTPS. | - | | | | | - | | | | This parameter is | - | | | | unsupported. Please do not | - | | | | use it. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 4** UpdatePoolSessionPersistenceOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | cookie_name | No | String | Specifies the cookie name. | - | | | | | - | | | | This parameter will take | - | | | | effect only when **type** | - | | | | is set to **APP_COOKIE**. | - | | | | Otherwise, an error will be | - | | | | returned. | - | | | | | - | | | | The value can contain only | - | | | | letters, digits, hyphens | - | | | | (-), underscores (_), and | - | | | | periods (.). | - | | | | | - | | | | Minimum: **0** | - | | | | | - | | | | Maximum: **1024** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the sticky | - | | | | session type. The value can | - | | | | be **SOURCE_IP**, | - | | | | **HTTP_COOKIE**, or | - | | | | **APP_COOKIE**. | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | TCP or UDP, only | - | | | | **SOURCE_IP** takes | - | | | | effect. | - | | | | | - | | | | - For dedicated load | - | | | | balancers, if the | - | | | | protocol of the backend | - | | | | server group is HTTP or | - | | | | HTTPS, the value can | - | | | | only be **HTTP_COOKIE**. | - | | | | | - | | | | - For shared load | - | | | | balancers, if the | - | | | | protocol of the backend | - | | | | server group is HTTP or | - | | | | HTTPS, the value can be | - | | | | **HTTP_COOKIE** or | - | | | | **APP_COOKIE**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | persistence_timeout | No | Integer | Specifies the stickiness | - | | | | duration, in minutes. | - | | | | | - | | | | This parameter will not | - | | | | take effect when **type** | - | | | | is set to **APP_COOKIE**. | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | TCP or UDP, the value | - | | | | ranges from **1** to | - | | | | **60**, and the default | - | | | | value is **1**. | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | HTTP or HTTPS, the value | - | | | | ranges from **1** to | - | | | | **1440**, and the | - | | | | default value is | - | | | | **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 5** UpdatePoolSlowStartOption - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | enable | Yes | Boolean | Specifies whether slow | - | | | | start is enabled. | - | | | | | - | | | | **true** indicates that | - | | | | slow start is enabled, and | - | | | | **false** indicates slow | - | | | | start is disabled. | - | | | | | - | | | | Default: **false** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | duration | Yes | Integer | Specifies the slow start | - | | | | duration, in seconds. | - | | | | | - | | | | The value ranges from | - | | | | **30** to **1200**, and the | - | | | | default value is **30**. | - | | | | | - | | | | Minimum: **30** | - | | | | | - | | | | Maximum: **1200** | - | | | | | - | | | | Default: **30** | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response Parameters -^^^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -.. table:: **Table 6** Response body parameters - - ========== ============================================ =============================================================== - Parameter Type Description - ========== ============================================ =============================================================== - request_id String Specifies the request ID. The value is automatically generated. - pool `Pool <#UpdatePool__response_Pool>`__ object Specifies the backend server group. - ========== ============================================ =============================================================== - -.. table:: **Table 7** Pool - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server group. The | - | | | value can only be updated to | - | | | **true**. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - | | | | - | | | Default: **true** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor_id | String | Specifies the ID of the health check | - | | | configured for the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the backend server group | - | | | ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm used by the load balancer | - | | | to route requests to backend servers | - | | | in the backend server group. | - | | | | - | | | The value can be **ROUND_ROBIN** | - | | | (weighted round robin), | - | | | **LEAST_CONNECTIONS** (weighted least | - | | | connections), or **SOURCE_IP** | - | | | (source IP hash). | - | | | | - | | | When the value is **SOURCE_IP**, the | - | | | **weight** parameter is invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array of | Lists the listeners associated with | - | | `ListenerRef < | the backend server group. | - | | #UpdatePool__response_ListenerRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array of | Lists the IDs of load balancers | - | | `LoadBalancerRef <#Upd | associated with the backend server | - | | atePool__response_LoadBalancerRef>`__ | group. | - | | objects | | - | | | If only **listener_id** is specified | - | | | during the creation of the backend | - | | | server group, the ID of the | - | | | **loadbalancers** parameter in the | - | | | response is the ID of the load | - | | | balancer to which the listener is | - | | | added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array of | Lists the backend servers in the | - | | `MemberRef | backend server group. | - | | <#UpdatePool__response_MemberRef>`__ | | - | | objects | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server group | - | | | name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | project_id | String | Specifies the project ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | backend server group to receive | - | | | requests. The protocol can be TCP, | - | | | UDP, or HTTP. | - | | | | - | | | - For UDP listeners, the protocol of | - | | | the backend server group must be | - | | | UDP. | - | | | | - | | | - For TCP listeners, the protocol of | - | | | the backend server group must be | - | | | TCP. | - | | | | - | | | - For HTTP or HTTPS listeners, the | - | | | protocol of the backend server | - | | | group must be HTTP. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_persistence | `SessionPersistence <#Update | Specifies the sticky session. | - | | Pool__response_SessionPersistence>`__ | | - | | object | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ip_version | String | Specifies the IP version supported by | - | | | the backend server group. | - | | | | - | | | - Shared load balancers: The default | - | | | value is **v4**. | - | | | | - | | | - Dedicated load balancers: The | - | | | value can be **dualstack**, | - | | | **v4**, or **v6**. | - | | | | - | | | When the protocol of the backend | - | | | server group is TCP or UDP, | - | | | **ip_version** is set to | - | | | **dualstack**, indicating that both | - | | | IPv4 and IPv6 are supported. | - | | | | - | | | When the protocol of the backend | - | | | server group is HTTP, **ip_version** | - | | | is set to **v4**. | - | | | | - | | | IPv6 is unsupported. Only **v4** is | - | | | returned. | - | | | | - | | | Default: **dualstack** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | slow_start | `SlowStart | Specifies whether to enable slow | - | | <#UpdatePool__response_SlowStart>`__ | start. After you enable slow start, | - | | object | new backend servers added to the | - | | | backend server group are warmed up, | - | | | and the number of requests they can | - | | | receive increases linearly during the | - | | | configured slow start duration. | - | | | | - | | | This parameter can be used when the | - | | | protocol of the backend server group | - | | | is HTTP or HTTPS. An error will be | - | | | returned if the protocol is not HTTP | - | | | or HTTPS. | - | | | | - | | | This parameter is unsupported. Please | - | | | do not use it. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 8** ListenerRef - - ========= ====== ========================== - Parameter Type Description - ========= ====== ========================== - id String Specifies the listener ID. - ========= ====== ========================== - -.. table:: **Table 9** LoadBalancerRef - - ========= ====== =============================== - Parameter Type Description - ========= ====== =============================== - id String Specifies the load balancer ID. - ========= ====== =============================== - -.. table:: **Table 10** MemberRef - - ========= ====== ================================ - Parameter Type Description - ========= ====== ================================ - id String Specifies the backend server ID. - ========= ====== ================================ - -.. table:: **Table 11** SessionPersistence - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | cookie_name | String | Specifies the cookie name. | - | | | | - | | | This parameter will take effect only | - | | | when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | The value can contain only letters, | - | | | digits, hyphens (-), underscores (_), | - | | | and periods (.). | - | | | | - | | | Minimum: **0** | - | | | | - | | | Maximum: **1024** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the sticky session type. | - | | | The value can be **SOURCE_IP**, | - | | | **HTTP_COOKIE**, or **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, only | - | | | **SOURCE_IP** takes effect. | - | | | | - | | | - For dedicated load balancers, if | - | | | the protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can only be **HTTP_COOKIE**. | - | | | | - | | | - For shared load balancers, if the | - | | | protocol of the backend server | - | | | group is HTTP or HTTPS, the value | - | | | can be **HTTP_COOKIE** or | - | | | **APP_COOKIE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | persistence_timeout | Integer | Specifies the stickiness duration, in | - | | | minutes. This parameter will not take | - | | | effect when **type** is set to | - | | | **APP_COOKIE**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is TCP or UDP, the | - | | | value ranges from **1** to **60**, | - | | | and the default value is **1**. | - | | | | - | | | - If the protocol of the backend | - | | | server group is HTTP or HTTPS, the | - | | | value ranges from **1** to | - | | | **1440**, and the default value is | - | | | **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 12** SlowStart - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | enable | Boolean | Specifies whether to enable slow | - | | | start. | - | | | | - | | | **true** indicates that this function | - | | | is enabled, and **false** indicates | - | | | this function is disabled. | - | | | | - | | | Default: **false** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | duration | Integer | Specifies the slow start duration, in | - | | | seconds. | - | | | | - | | | The value ranges from **30** to | - | | | **1200**, and the default value is | - | | | **30**. | - | | | | - | | | Minimum: **30** | - | | | | - | | | Maximum: **1200** | - | | | | - | | | Default: **30** | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Requests -^^^^^^^^^^^^^^^^ - -.. code:: screen - - PUT - - https://{elb_endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75 - - { - "pool" : { - "name" : "My pool.", - "description" : "My pool update", - "lb_algorithm" : "LEAST_CONNECTIONS" - } - } - -Example Responses -^^^^^^^^^^^^^^^^^ - -**Status code: 200** - -Successful request. - -.. code:: screen - - { - "pool" : { - "lb_algorithm" : "LEAST_CONNECTIONS", - "protocol" : "TCP", - "description" : "My pool update", - "admin_state_up" : true, - "loadbalancers" : [ { - "id" : "098b2f68-af1c-41a9-8efd-69958722af62" - } ], - "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", - "listeners" : [ { - "id" : "0b11747a-b139-492f-9692-2df0b1c87193" - }, { - "id" : "61942790-2367-482a-8b0e-93840ea2a1c6" - }, { - "id" : "fd8f954c-f0f8-4d39-bb1d-41637cd6b1be" - } ], - "members" : [ ], - "id" : "36ce7086-a496-4666-9064-5ba0e6840c75", - "name" : "My pool.", - "ip_version" : "dualstack" - }, - "request_id" : "8f40128b-c72b-4b64-986a-f7e2c633d75f" - } - -Status Codes -^^^^^^^^^^^^ - -=========== =================== -Status Code Description -=========== =================== -200 Successful request. -=========== =================== - -Error Codes -^^^^^^^^^^^ - -See `Error Codes `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/elb_dx_0000.rst b/elb/api-ref/elb_dx_0000.rst deleted file mode 100644 index 54f4801e..00000000 --- a/elb/api-ref/elb_dx_0000.rst +++ /dev/null @@ -1,15 +0,0 @@ -Dedicated Load Balancer APIs -============================ - -- `API Call Precaution `__ -- `Quota `__ -- `AZ `__ -- `Load Balancer Flavor `__ -- `Load Balancer `__ -- `Certificate `__ -- `Listener `__ -- `Backend Server Group `__ -- `Backend Server `__ -- `Health Check `__ -- `Forwarding Policy `__ -- `Forwarding Rule `__ diff --git a/elb/api-ref/elb_eg_v3_0000.rst b/elb/api-ref/elb_eg_v3_0000.rst deleted file mode 100644 index 037c9afc..00000000 --- a/elb/api-ref/elb_eg_v3_0000.rst +++ /dev/null @@ -1,6 +0,0 @@ -Examples -======== - -- `Creating a Dedicated Load Balancer and Binding a New EIP to It `__ -- `Adding a Listener to a Dedicated Load Balancer `__ -- `Deleting a Dedicated Load Balancer `__ diff --git a/elb/api-ref/elb_eg_v3_0002.rst b/elb/api-ref/elb_eg_v3_0002.rst deleted file mode 100644 index b2352d14..00000000 --- a/elb/api-ref/elb_eg_v3_0002.rst +++ /dev/null @@ -1,85 +0,0 @@ -Adding a Listener to a Dedicated Load Balancer -============================================== - -Scenarios -^^^^^^^^^ - -Call the API to add a listener to a dedicated load balancer. - -Prerequisites -^^^^^^^^^^^^^ - -- You have created a dedicated load balancer. -- You have obtained the ID of the dedicated load balancer. - -Procedure -^^^^^^^^^ - -#. Add a listener. - - a. Send **POST https://**\ *{elb_endpoint}*\ **/v3/**\ *{project_id}*\ **/elb/listeners**. *project_id* indicates the project ID. - - b. Add **X-Auth-Token** to the request header. - - c. Ensure that the following parameters are passed in the request body: - - .. code:: screen - - { - "listener": { - "protocol_port": 80, // Frontend port. The listener will use this port to receive requests. - "protocol": "HTTP", // Frontend protocol. The listener will use this protocol to receive requests. - "loadbalancer_id": "f77281cb-9f58-4347-8f82-2180d8bea789", // Load balancer that the listener is added to - "name": "my_listener" // Listener name - } - } - - d. Check the response. - - - The request is successful if the following response is displayed: - - .. code:: screen - - { - "listener": { - "id": "90ad2705-4ffd-43d3-8f75-af8086bde841", - "name": "my_listener", - "protocol_port": 80, - "protocol": "HTTP", - "description": "", - "default_tls_container_ref": null, - "admin_state_up": true, - "loadbalancers": [ - { - "id": "f77281cb-9f58-4347-8f82-2180d8bea789" - } - ], - "client_ca_tls_container_ref": null, - "project_id": "057ef081eb00d2732fd1c01a9be75e6f", - "sni_container_refs": [], - "connection_limit": -1, - "default_pool_id": null, - "tls_ciphers_policy": null, - "tags": [], - "created_at": "2020-11-21T03:09:13Z", - "updated_at": "2020-11-21T03:09:13Z", - "http2_enable": false, - "insert_headers": { - "X-Forwarded-ELB-IP": false, - "X-Forwarded-Host": true, - "X-Forwarded-For-Port": false, - "X-Forwarded-Port": false - }, - "member_timeout": 60, - "client_timeout": 60, - "keepalive_timeout": 60, - "ipgroup": null, - "enable_member_retry": true, - "transparent_client_ip_enable": true - }, - "request_id": "fcd61ee6a6a6c673c65fa0df0577fed9" - } - - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -**Parent topic:** `Examples `__ diff --git a/elb/api-ref/elb_eg_v3_0003.rst b/elb/api-ref/elb_eg_v3_0003.rst deleted file mode 100644 index ad1517ac..00000000 --- a/elb/api-ref/elb_eg_v3_0003.rst +++ /dev/null @@ -1,86 +0,0 @@ -Deleting a Dedicated Load Balancer -================================== - -Scenarios -^^^^^^^^^ - -Call APIs to delete a dedicated load balancer. - -Before you delete a dedicated load balancer, delete all resources associated with it. `Figure 1 <#elb_eg_v3_0003__fig14527132320389>`__ shows the associated resources. - -| **Figure 1** Resources associated with a dedicated load balancer -| |image1| - -Procedure -^^^^^^^^^ - -Perform the following steps to delete the associated resources and the load balancer. Skip the corresponding step if the associated resources do not exist. For example, you can skip `1 <#elb_eg_v3_0003__li693163653915>`__ if no health check is configured. - -#. Delete the health check configured for each associated backend server group. - - a. Send **DELETE https://**\ *{elb_endpoint}*\ **/v3/**\ *{project_id}*\ **/elb/healthmonitors/**\ *{healthmonitor_id}*. *project_id* indicates the project ID, and *healthmonitor_id* indicates the health check ID. - b. Add **X-Auth-Token** to the request header. - c. Check the response. - - - If the request is successful, 204 is returned, and the response body is empty. - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -#. Remove backend servers from each associated backend server group. - - a. Send **DELETE https://**\ *{elb_endpoint}*\ **/v3/**\ *{project_id}*\ **/elb/pools/**\ *{pool_id}*\ **/members/**\ *{member_id}*. *project_id* indicates the project ID, *pool_id* indicates the backend server group ID, and **member_id** indicates the backend server ID. - b. Add **X-Auth-Token** to the request header. - c. Check the response. - - - If the request is successful, 204 is returned, and the response body is empty. - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -#. Delete each associated backend server group. - - a. Send **DELETE https://**\ *{elb_endpoint}*\ **/v3/{project_id}/elb/pools/**\ *{pool_id}*. *project_id* indicates the project ID, and *pool_id* indicates the backend server group ID. - b. Add **X-Auth-Token** to the request header. - c. Check the response. - - - If the request is successful, 204 is returned, and the response body is empty. - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -#. Delete the forwarding rules added to each listener. - - a. Send **DELETE https://**\ *{elb_endpoint}*\ **/v3/**\ *{project_id}*\ **/elb/l7policies/**\ *{policy_id}*\ **/rules/**\ *{rule_id}*. *project_id* indicates the project ID, *policy_id* indicates the forwarding policy ID, and *rule_id* indicates the forwarding rule ID. - b. Add **X-Auth-Token** to the request header. - c. Check the response. - - - If the request is successful, 204 is returned, and the response body is empty. - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -#. Delete the forwarding policies added to each listener. - - a. Send **DELETE https://**\ *{elb_endpoint}*\ **/v3/**\ *{project_id}*\ **/elb/l7policies/**\ *{policy_id}*. *project_id* indicates the project ID, and *policy_id* indicates the forwarding policy ID. - b. Add **X-Auth-Token** to the request header. - c. Check the response. - - - If the request is successful, 204 is returned, and the response body is empty. - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -#. Delete each listener added to the load balancer. - - a. Send **DELETE https://**\ *{elb_endpoint}*\ **/v3/**\ *{project_id}*\ **/elb/listeners/**\ *{listener_id}*. *project_id* indicates the project ID, and *listener_id* indicates the listener ID. - b. Add **X-Auth-Token** to the request header. - c. Check the response. - - - If the request is successful, 204 is returned, and the response body is empty. - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -#. Delete the load balancer. - - a. Send **DELETE https://**\ *{elb_endpoint}*\ **/v3/**\ *{project_id}*\ **/elbloadbalancers/**\ *{loadbalancer_id}*. *project_id* indicates the project ID, and *loadbalancer_id* indicates the load balancer ID. - b. Add **X-Auth-Token** to the request header. - c. Check the response. - - - If the request is successful, 204 is returned, and the response body is empty. - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -**Parent topic:** `Examples `__ - -.. |image1| image:: en-us_image_0294158472.png - :class: eddx - :name: elb_eg_v3_0003__image9527192311384 diff --git a/elb/api-ref/elb_fl_0000.rst b/elb/api-ref/elb_fl_0000.rst deleted file mode 100644 index 6c94ae06..00000000 --- a/elb/api-ref/elb_fl_0000.rst +++ /dev/null @@ -1,6 +0,0 @@ -Appendix -======== - -- `Status Codes `__ -- `ELB Metrics `__ -- `General Information About Shared Load Balancers `__ diff --git a/elb/api-ref/elb_fl_0002.rst b/elb/api-ref/elb_fl_0002.rst deleted file mode 100644 index d63ea1c0..00000000 --- a/elb/api-ref/elb_fl_0002.rst +++ /dev/null @@ -1,103 +0,0 @@ -ELB Metrics -=========== - -Introduction -^^^^^^^^^^^^ - -This section describes the metrics that can be monitored by Cloud Eye as well as their namespaces and dimensions. You can use APIs provided by Cloud Eye to query the metrics of a monitored object and the generated alarms. - -Namespace -^^^^^^^^^ - -SYS.ELB - -Metrics -^^^^^^^ - -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| Metric | Metric Name | Description | Value Range | Remarks | -+=======================+=======================+=======================+=======================+=======================+ -| m1_cps | Concurrent | Total number of | ≥ 0 | Monitored object: an | -| | Connections | concurrent | | elastic load | -| | | connections processed | | balancer, elastic | -| | | by the monitored | | load balancer | -| | | object per second | | listener, or classic | -| | | | | load balancer | -| | | Unit: count | | | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| m2_act_conn | Active Connections | Total number of | ≥ 0 | Monitored object: an | -| | | active connections | | elastic load | -| | | processed by the | | balancer, elastic | -| | | monitored object per | | load balancer | -| | | second | | listener, or classic | -| | | | | load balancer | -| | | Unit: count | | | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| m3_inact_conn | Inactive Connections | Total number of | ≥ 0 | Monitored object: an | -| | | inactive connections | | elastic load | -| | | processed by the | | balancer, elastic | -| | | monitored object per | | load balancer | -| | | second | | listener, or classic | -| | | | | load balancer | -| | | Unit: count | | | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| m4_ncps | New Connections | Total number of new | ≥ 0 | Monitored object: an | -| | | connections processed | | elastic load | -| | | by the monitored | | balancer, elastic | -| | | object per second | | load balancer | -| | | | | listener, or classic | -| | | Unit: count | | load balancer | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| m5_in_pps | Incoming Packets | Incoming packets | ≥ 0 | Monitored object: an | -| | | received by the | | elastic load | -| | | monitored object per | | balancer, elastic | -| | | second | | load balancer | -| | | | | listener, or classic | -| | | Unit: count | | load balancer | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| m6_out_pps | Outgoing Packets | Outgoing packets sent | ≥ 0 | Monitored object: an | -| | | from the monitored | | elastic load | -| | | object per second | | balancer, elastic | -| | | | | load balancer | -| | | Unit: count | | listener, or classic | -| | | | | load balancer | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| m7_in_Bps | Inbound Rate | Incoming bytes | ≥ 0 | Monitored object: an | -| | | received by the | | elastic load | -| | | monitored object per | | balancer, elastic | -| | | second | | load balancer | -| | | | | listener, or classic | -| | | Unit: Byte/s | | load balancer | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| m8_out_Bps | Outbound Rate | Outgoing bytes sent | ≥ 0 | Monitored object: an | -| | | from the monitored | | elastic load | -| | | object per second | | balancer, elastic | -| | | | | load balancer | -| | | Unit: Byte/s | | listener, or classic | -| | | | | load balancer | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| m9_abnormal_servers | Unhealthy Servers | Number of backend | ≥ 0 | Monitored object: an | -| | | servers considered | | elastic load balancer | -| | | unhealthy | | or classic load | -| | | | | balancer | -| | | Unit: count | | | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| ma_normal_servers | Healthy Servers | Number of backend | ≥ 0 | Monitored object: an | -| | | servers considered | | elastic load balancer | -| | | healthy | | or classic load | -| | | | | balancer | -| | | Unit: count | | | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - -Dimensions -^^^^^^^^^^ - -================= ======================================= -Key Value -================= ======================================= -lb_instance_id ID of a classic load balancer -lbaas_instance_id ID of an elastic load balancer -lbaas_listener_id ID of an elastic load balancer listener -================= ======================================= - -**Parent topic:** `Appendix `__ diff --git a/elb/api-ref/elb_fl_0003.rst b/elb/api-ref/elb_fl_0003.rst deleted file mode 100644 index 71c5a4d9..00000000 --- a/elb/api-ref/elb_fl_0003.rst +++ /dev/null @@ -1,10 +0,0 @@ -General Information About Shared Load Balancers -=============================================== - -The following information applies only to shared load balancers. - -- `Querying Data in Pages `__ -- `Sequencing Query Results `__ -- `Basic Workflow `__ - -**Parent topic:** `Appendix `__ diff --git a/elb/api-ref/elb_fl_0004.rst b/elb/api-ref/elb_fl_0004.rst deleted file mode 100644 index 740e99f4..00000000 --- a/elb/api-ref/elb_fl_0004.rst +++ /dev/null @@ -1,76 +0,0 @@ -Querying Data in Pages -====================== - -APIs v2.0 allow users to query data in pages by adding the limit and marker parameters to the URL of the list request. The query results are displayed in the ascending order of IDs. - -- **next ref** in the response indicates the URL of the next page. -- **previous ref** in the response indicates the URL of the previous page. - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +---------------+----------+---------------+------------------------------------------------------------------------+ - | **Parameter** | **Type** | **Mandatory** | **Description** | - +===============+==========+===============+========================================================================+ - | limit | int | No | Specifies the number of records on each page. | - +---------------+----------+---------------+------------------------------------------------------------------------+ - | marker | String | No | Specifies the resource ID of pagination query. If the parameter is | - | | | | left blank, only resources on the first page are queried. | - +---------------+----------+---------------+------------------------------------------------------------------------+ - | page_reverse | Bool | No | Specifies the paging sequence. The value can be **true** or **false**. | - +---------------+----------+---------------+------------------------------------------------------------------------+ - -Response -^^^^^^^^ - -None - -Example -^^^^^^^ - -- Example request - - .. code:: screen - - GET /v2.0/networks?limit=2&marker=3d42a0d4-a980-4613-ae76-a2cddecff054&page_reverse=False - -- Example response - - .. code:: screen - - { - "networks": [ - { - "status": "ACTIVE", - "subnets": [], - "name": "liudongtest ", - "admin_state_up": false, - "tenant_id": "6fbe9263116a4b68818cf1edce16bc4f", - "id": "60c809cb-6731-45d0-ace8-3bf5626421a9" - }, - { - "status": "ACTIVE", - "subnets": [ - "132dc12d-c02a-4c90-9cd5-c31669aace04" - ], - "name": "publicnet", - "admin_state_up": true, - "tenant_id": "6fbe9263116a4b68818cf1edce16bc4f", - "id": "9daeac7c-a98f-430f-8e38-67f9c044e299" - } - ], - "networks_links": [ - { - "href": "http://192.168.82.231:9696/v2.0/networks?limit=2&marker=9daeac7c-a98f-430f-8e38-67f9c044e299", - "rel": "next" - }, - { - "href": "http://192.168.82.231:9696/v2.0/networks?limit=2&marker=60c809cb-6731-45d0-ace8-3bf5626421a9&page_reverse=True", - "rel": "previous" - } - ] - } - -**Parent topic:** `General Information About Shared Load Balancers `__ diff --git a/elb/api-ref/elb_fl_0005.rst b/elb/api-ref/elb_fl_0005.rst deleted file mode 100644 index 1c881453..00000000 --- a/elb/api-ref/elb_fl_0005.rst +++ /dev/null @@ -1,51 +0,0 @@ -Sequencing Query Results -======================== - -APIs v2.0 enable the system to sort queried results based on customized keys by adding the **sort_key** and **sort_dir** parameters to the URL of the list request. **sort_key** specifies the parameter used for sequencing results, and **sort_dir** specifies whether results are displayed in ascending or descending order. These APIs allow sorting query results by multiple criteria. The number of **sort_key** parameters must be equal to that of **sort_dir** parameters. Otherwise, 400 status code is returned. - -Example Request -^^^^^^^^^^^^^^^ - -.. code:: screen - - GET /v2.0/networks?sort_key=name&sort_dir=asc&sort_key=status&sort_dir=desc - -Example Response -^^^^^^^^^^^^^^^^ - -.. code:: screen - - { - "networks": [ - { - "status": "ACTIVE", - "subnets": [], - "name": "liudongtest ", - "admin_state_up": false, - "tenant_id": "6fbe9263116a4b68818cf1edce16bc4f", - "id": "60c809cb-6731-45d0-ace8-3bf5626421a9" - }, - { - "status": "ACTIVE", - "subnets": [ - "132dc12d-c02a-4c90-9cd5-c31669aace04" - ], - "name": "publicnet", - "admin_state_up": true, - "tenant_id": "6fbe9263116a4b68818cf1edce16bc4f", - "id": "9daeac7c-a98f-430f-8e38-67f9c044e299" - }, - { - "status": "ACTIVE", - "subnets": [ - "e25189a8-54df-4948-9396-d8291ffc92a0" - ], - "name": "testnet01", - "admin_state_up": true, - "tenant_id": "6fbe9263116a4b68818cf1edce16bc4f", - "id": "3d42a0d4-a980-4613-ae76-a2cddecff054" - } - ] - } - -**Parent topic:** `General Information About Shared Load Balancers `__ diff --git a/elb/api-ref/elb_fl_0006.rst b/elb/api-ref/elb_fl_0006.rst deleted file mode 100644 index 6093a69c..00000000 --- a/elb/api-ref/elb_fl_0006.rst +++ /dev/null @@ -1,52 +0,0 @@ -Querying Versions -================= - -Function -^^^^^^^^ - -Queries all available versions. - -If there is no version added to the URL, all available versions are returned. - -URI -^^^ - -GET / - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example -^^^^^^^ - -- Example request - - .. code:: screen - - GET / - -- Example response - - .. code:: screen - - { - "versions": [ - { - "status": "CURRENT", - "id": "v2.0", - "links": [ - { - "href": "http://192.168.82.231:9696/v2.0", - "rel": "self" - } - ] - } - ] - } diff --git a/elb/api-ref/elb_fl_0007.rst b/elb/api-ref/elb_fl_0007.rst deleted file mode 100644 index c119b740..00000000 --- a/elb/api-ref/elb_fl_0007.rst +++ /dev/null @@ -1,24 +0,0 @@ -Basic Workflow -============== - -The basic workflow of elastic load balancers contains the following: creating a load balancer, adding a listener to a specified load balancer, adding a backend server group to a specified listener, configuring a health check for a specified backend server group, and adding a backend server to a specified backend server group. Deletion operations include removing a backend server, deleting a health check, deleting a backend server group, deleting a listener, and deleting a load balancer. - -Provision Resources -^^^^^^^^^^^^^^^^^^^ - -- Creating a load balancer -- Adding a listener to a specified load balancer -- Adding a backend server group to a specified listener -- Configuring a health check for a specified backend server group -- Adding a backend server to a specified backend server group - -Reclaim Resources -^^^^^^^^^^^^^^^^^ - -- Removing a backend server -- Deleting a health check -- Deleting a backend server group -- Deleting a listener -- Deleting a load balancer - -**Parent topic:** `General Information About Shared Load Balancers `__ diff --git a/elb/api-ref/elb_gc_0000.rst b/elb/api-ref/elb_gc_0000.rst deleted file mode 100644 index c6efe965..00000000 --- a/elb/api-ref/elb_gc_0000.rst +++ /dev/null @@ -1,6 +0,0 @@ -Common Parameters -================= - -- `Error Codes `__ -- `HTTP Status Codes of Shared Load Balancers `__ -- `HTTP Status Codes for Dedicated Load Balancers `__ diff --git a/elb/api-ref/elb_gc_0001.rst b/elb/api-ref/elb_gc_0001.rst deleted file mode 100644 index 5feea7a0..00000000 --- a/elb/api-ref/elb_gc_0001.rst +++ /dev/null @@ -1,442 +0,0 @@ -Error Codes -=========== - -The following error code descriptions are only suitable for classic load balancers. - -Overview -^^^^^^^^ - -If an error occurs when using an API, an error response will be returned, which contains the error code and a piece of message, as shown in the following example. The following table lists error codes and their descriptions. - -Example of Returned Error Information -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -.. code:: screen - - { - "error": - { - "message": "listener exist, the port repeat", - "code": "ELB.6101" - } - } - -.. _error-codes-1: - -Error Codes -^^^^^^^^^^^ - -.. table:: **Table 1** Error codes - - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | Status Code | Error Code | Message | Description | Solution | - +=======================+=======================+=======================+=======================+=======================+ - | 400 | ELB.0002 | Api request is null. | The request is empty. | Change the parameter | - | | | | | settings. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.0004 | Api response is null | The response is | Ensure that the | - | | | or invaild. | empty. | backend server is | - | | | | | healthy. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.0230 | Tenant_id is empty. | The project ID is | Correct the project | - | | | | left blank. | ID. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1000 | The loadbalancer URL | The URL length | Correct the URL. | - | | | is too long. | exceeds the limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1010 | Query elb quota | Failed to query the | Contact customer | - | | | error. | quota. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1020 | Lb ID is not correct. | Incorrect load | Change the parameter | - | | | | balancer ID. | settings. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1001 | Request parameters | Parameter **type**, | Change the parameter | - | | | error, private_key or | **name**, or | settings. | - | | | certificate is nil or | **admin_status_up** | | - | | | empty. | is left blank. | | - | | | | | | - | | | Request parameters | | | - | | | error, lb type, name, | | | - | | | admin_state_up one of | | | - | | | them is empty. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1001 | Request parameter is | The length of the | Change the listener | - | | | not valid. | load balancer name | name. | - | | | | exceeds the limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1021 | Request parameters | Invalid load balancer | Change the parameter | - | | | error, name invalid. | name. | settings. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1031 | Request parameters | The length of the | Change the | - | | | error, lb len | load balancer | description. | - | | | description too long. | description exceeds | | - | | | | the limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1041 | Request parameters | Invalid load balancer | Change the parameter | - | | | error, lb type is not | type. | settings. | - | | | valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1051 | Request parameters | Invalid load balancer | Change the parameter | - | | | error, lb bandwidth | bandwidth. | settings. | - | | | is not valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 4000 | ELB.1061 | Request parameters | The floating IP | Change the parameter | - | | | error, lb vip_address | address or subnet ID | settings. | - | | | and vip_subnet_id are | is left blank. | | - | | | nil. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1071 | Request parameters | Invalid floating IP | Change the parameter | - | | | error, lb vip_address | address. | settings. | - | | | is not valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1081 | Request parameters | The VPC ID is left | Change the parameter | - | | | error, lb vpc_id is | blank. | settings. | - | | | empty. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 403 | ELB.1091 | Lb number larger than | The number of load | Request a higher | - | | | quota. | balancers exceeds the | quota or delete load | - | | | | quota. | balancers that are no | - | | | | | longer needed. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1101 | Vip address is exist. | The floating IP | Enter a valid | - | | | | address exists. | floating IP address. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 404 | ELB.1002 | Find lb failed. | The load balancer | Change the load | - | | | | does not exist. | balancer ID. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1008 | There is at least one | Failed to delete the | Change the parameter | - | | | member under the lb. | load balancer. | settings. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1018 | There is at least one | The load balancer has | Change the parameter | - | | | member under the lb. | backend ECSs added. | settings. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1005 | Update request | Failed to modify the | Check the parameters. | - | | | paramters error. | load balancer. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1015 | Lb can not be | The load balancer | Check the parameters. | - | | | updated. | cannot be modified. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1025 | Udpate request | The length of the | Change the load | - | | | parameters error, | load balancer name | balancer name. | - | | | name is too long. | exceeds the limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1035 | Update request | Invalid load balancer | Change the load | - | | | parameters error, | name. | balancer name. | - | | | name is not valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1045 | Update request | The length of the | Change the | - | | | parameters error, | load balancer | description. | - | | | description too long. | description exceeds | | - | | | | the limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1003 | Lb not exist. | The load balancer | Check the load | - | | | | does not exist. | balancer ID. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1004 | Query condition is | Invalid query | Change the query | - | | | not valid. | condition. | condition. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6000 | Listener ID length is | The length of the | Change the listener | - | | | not correct. | listener ID exceeds | ID. | - | | | | the limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6010 | Listener ID content | Invalid listener ID. | Change the listener | - | | | is not correct. | | ID. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6030 | Listener is not | The listener does not | Check the listener | - | | | associated with | belong to any load | ID. | - | | | loadbalancer id. | balancer. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6040 | The loadbalaner that | The load balancer to | Check the load | - | | | the listener belongs | which the listener is | balancer ID. | - | | | to is not exist. | added does not exist. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6020 | Listener url is not | Incorrect listener | Correct the URL. | - | | | correct. | URL. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6001 | Request parameters | A mandatory parameter | Specify the mandatory | - | | | error, "..nilKey.." | is left blank. | parameters. | - | | | is nil. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6011 | Request parameters | The length of the | Change the listener | - | | | error, listener name | listener name exceeds | name. | - | | | too long. | the limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6021 | Request parameters | Invalid listener | Change the listener | - | | | error, listener name | name. | name. | - | | | is not valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6031 | Request parameters | The length of the | Change the | - | | | error, listener len | listener description | description. | - | | | description too long. | exceeds the limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6041 | Request parameters | Invalid port number. | Change the port | - | | | error, listener port | | number. | - | | | is not in 1 ~ 65535. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6051 | Request parameters | Invalid load | Change the load | - | | | error, listener lb | balancing algorithm. | balancing algorithm. | - | | | algorithm is not | | | - | | | valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6061 | Request parameters | Invalid protocol used | Change the protocol. | - | | | error, listener | by the listener. | | - | | | protocol is not | | | - | | | valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6071 | Request parameters | Invalid backend ECS | Change the protocol. | - | | | error, listener | protocol. | | - | | | backend protocol is | | | - | | | not valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6081 | Request parameters | Invalid sticky | Check the load | - | | | error, listener | session type. | balancer ID. | - | | | sticky_session_type | | | - | | | is not valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 403 | ELB.6091 | Request lb has more | The number of | No more listeners can | - | | | than user listener | listeners reaches the | be added. | - | | | quota. | limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6101 | Listener port is | The port exists. | Use another port | - | | | repeated. | | number. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 503 | ELB.6002 | Delete listener | The listener does not | Check the listener | - | | | failed, listener does | exist. | ID. | - | | | not exist. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6015 | This listener | The property cannot | Select a property | - | | | property cannot be | be modified. | that can be modified. | - | | | updated | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6025 | Udpate request | The length of the | Change the listener | - | | | parameters error, | listener name exceeds | name. | - | | | listener len name too | the limit. | | - | | | long. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6035 | Udpate request | Invalid listener | Change the listener | - | | | parameters error, | name. | name. | - | | | listener name is not | | | - | | | valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6045 | Update request | The length of the | Change the | - | | | parameters error, | listener description | description. | - | | | listener len | exceeds the limit. | | - | | | description too long. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6003 | Listener query | Invalid query | Change the query | - | | | condition is not | condition. | condition. | - | | | valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.2000 | Member url is not | Incorrect backend ECS | Correct the URL. | - | | | correct. | URL. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.2003 | Query member failed. | Failed to query the | Contact customer | - | | | | backend ECS. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.2005 | Update member failed. | Failed to update the | Contact customer | - | | | | backend ECS. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.2010 | Member listener ID | The length of the | Change the listener | - | | | length is not | listener ID exceeds | ID. | - | | | correct. | the limit. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.2020 | Member listener ID | Incorrect listener | Change the listener | - | | | content is not | ID. | ID. | - | | | correct. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 403 | ELB.2001 | Create member failed, | Failed to add the ECS | Check the maximum | - | | | the total amount of | because the number of | number of backend | - | | | members exceeds the | backend ECSs reaches | servers that can be | - | | | system setting. | the limit. | added. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.2011 | Add member listener | The listener does not | Ensure that the | - | | | is not exist. | exist. | listener exists. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.2021 | Request parameters | Invalid address. | Check the IP address. | - | | | error, member address | | | - | | | is null. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.2002 | Delete member input | Incorrect parameters. | Change the parameter | - | | | param error. | | settings. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.2012 | This member is not | The backend ECS does | Ensure that the | - | | | exist. | not exist. | backend server | - | | | | | exists. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.7000 | Listener_id must not | The listener ID is | Change the listener | - | | | be null. | left blank. | ID and deliver the | - | | | | | request again. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.7010 | Healthcheck listener | The listener with | Change the listener | - | | | is not exist. | which the health | ID and deliver the | - | | | | check is associated | request again. | - | | | | does not exist. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.7020 | This healthcheck is | The health check does | Change the health | - | | | not exist. | not exist. | check ID and deliver | - | | | | | the request again. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.7001 | Healthcheck_interval | Invalid health check | Change the interval. | - | | | is illegal. | interval. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.7002 | Healthcheck delete | Invalid query | Change the query | - | | | condition is not | condition. | condition. | - | | | valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.7001 | Healthcheck update | Invalid query | Change the query | - | | | condition is not | condition. | condition. | - | | | valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.7004 | Healthcheck query | Invalid query | Change the query | - | | | condition is not | condition. | condition. | - | | | valid. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.7014 | Healthcheck | The health check does | Check the health | - | | | configuration not | not exist. | check ID. | - | | | exist. | | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.8001 | Create a SG error. | Failed to create the | Contact customer | - | | | | security group. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.8101 | Create VPC error. | Failed to create the | Contact customer | - | | | | VPC. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.8102 | Delete VPC error. | Failed to delete the | Contact customer | - | | | | VPC. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.8103 | Query VPC error. | Failed to query the | Contact customer | - | | | | VPC. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.8201 | Create subnet error. | Failed to create the | Contact customer | - | | | | subnet. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.8202 | Delete subnet error. | Failed to delete the | Contact customer | - | | | | subnet. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.8203 | Query subnet error. | Failed to query the | Contact customer | - | | | | subnet. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9001 | Interval ELB create | Failed to add the | Contact customer | - | | | VM error. | ECS. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9002 | Internal ELB delete | Failed to delete the | Contact customer | - | | | VM error. | ECS. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9003 | Internal ELB query VM | Failed to query ECS | Contact customer | - | | | error. | details. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9006 | Internal ELB update | Failed to update the | Contact customer | - | | | port fail. | port configured on | service. | - | | | | the ECS data plane. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9007 | Intenal ELB bind port | Failed to bind the | Contact customer | - | | | fail. | port configured on | service. | - | | | | the ECS data plane. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9061 | Internal ELB query | Failed to query the | Contact customer | - | | | topic fail. | SMN topic. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9062 | Internal ELB create | Failed to create the | Contact customer | - | | | topic fail. | SMN topic. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9063 | Internal ELB query | Failed to query the | Contact customer | - | | | subscription fail. | SMN subscription. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9064 | Internal ELB create | Failed to create the | Contact customer | - | | | subscription fail. | SMN subscription. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9023 | Internal ELB get | Failed to query the | Contact customer | - | | | image error. | image. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9033 | Internal ELB get | Failed to query ECS | Contact customer | - | | | flavour error. | specifications. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.9043 | Internal ELB get | Failed to query the | Contact customer | - | | | interface error. | API bound to the ECS. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1007 | Query internal ELB | Failed to query | Contact customer | - | | | error. | details of the | service. | - | | | | private network load | | - | | | | balancer. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1012 | Create tenant | Failed to create the | Contact customer | - | | | resource relation | relationship between | service. | - | | | error. | resources and the | | - | | | | user. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1013 | Update resource | Failed to modify the | Contact customer | - | | | tenant allocation | quota of a resource | service. | - | | | failed, cloud eye | because the quota set | | - | | | warning rule exceeds. | in the Cloud Eye | | - | | | | alarm rule is too | | - | | | | large. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1014 | Query resouce tenant | Failed to query the | Contact customer | - | | | relation failed. | relationship between | service. | - | | | | resources and the | | - | | | | user. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1102 | Token invalid | Invalid token. | Contact customer | - | | | | | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1103 | Token invalid | Invalid token. | Contact customer | - | | | | | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1104 | Token invalid | Invalid token. | Contact customer | - | | | | | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1105 | Token invalid | Invalid token. | Contact customer | - | | | | | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1109 | Authentication | Real-name | Contact customer | - | | | failed. | authentication | service. | - | | | | failed. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.1201 | Get Token failed | Failed to obtain the | Contact customer | - | | | | token. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.3001 | Create floating IP | Failed to assign the | Contact customer | - | | | failed. | floating IP address. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.3002 | Delete floating IP | Failed to release the | Contact customer | - | | | failed. | floating IP address. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.3003 | Query floating IP | Failed to query the | Contact customer | - | | | failed. | floating IP address. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.3004 | Query floating IP | Failed to query | Contact customer | - | | | list failed. | floating IP | service. | - | | | | addresses. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.3005 | Update floating IP | Failed to update the | Contact customer | - | | | failed. | floating IP address. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.4001 | Create elastic IP | Failed to assign the | Contact customer | - | | | failed. | EIP. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.4002 | Delete elastic IP | Failed to release the | Contact customer | - | | | failed. | EIP. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.4003 | Query elastic IP | Failed to query the | Contact customer | - | | | failed. | EIP. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.4004 | Query elastic IP list | Failed to query EIPs. | Contact customer | - | | | failed. | | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.4005 | Update elastic IP | Failed to update the | Contact customer | - | | | failed. | EIP. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.5003 | Query bandwidth | Failed to query the | Contact customer | - | | | failed. | bandwidth. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.5005 | Update bandwidth | Failed to update the | Contact customer | - | | | failed. | bandwidth. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6004 | Query listeners list | Failed to query | Contact customer | - | | | failed. | listeners. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | 400 | ELB.6006 | Query ECS failed. | Failed to query the | Contact customer | - | | | | ECS. | service. | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - -**Parent topic:** `Common Parameters `__ diff --git a/elb/api-ref/elb_gc_0002.rst b/elb/api-ref/elb_gc_0002.rst deleted file mode 100644 index f98bbc26..00000000 --- a/elb/api-ref/elb_gc_0002.rst +++ /dev/null @@ -1,571 +0,0 @@ -HTTP Status Codes of Shared Load Balancers -========================================== - -The following code descriptions are only suitable for shared load balancers. - -.. table:: **Table 1** Normal response codes - - =========== ========== ======================================== - Status Code Type Description - =========== ========== ======================================== - 200 OK Normal response to GET and PUT requests. - 201 Created Normal response to POST requests. - 204 No Content Normal response to DELETE requests. - =========== ========== ======================================== - -.. table:: **Table 2** Error codes - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Status Code | Type | Possible Cause | - +=======================================+=======================================+=======================================+ - | 400 | Bad request | Malformed request URI or body. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Invalid **admin \_state_up** value. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Invalid parameters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Batch operations are not allowed. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Failed to verify the parameters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Incorrect request method, for | - | | | example, updating attributes that can | - | | | be specified during creation only. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The network is not external (the | - | | | value of **router:external** is set | - | | | to **false**). | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The IaaS OpenStack network port has | - | | | no floating IP address bound. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The requested floating IP address is | - | | | not in the IP address range of the | - | | | external network. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Invalid fixed IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The router port does not have a fixed | - | | | IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The subnet for the router interface | - | | | must have a gateway IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 401 | Unauthorized | Authentication required. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 403 | Forbidden | The URI does not exist. | - | | | | - | | | The resource cannot be found. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 404 | Not Found | The URI does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The resource cannot be found. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Invalid port ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 409 | Conflict | The port is already in use. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The IP address is already in use. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The IP address pool cannot contain | - | | | gateway and broadcast addresses. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The requested floating IP address is | - | | | already in use. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The internal IaaS OpenStack network | - | | | port and fixed IP address are already | - | | | associated with another floating IP | - | | | addresses. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 500 | Internal server error. | Internal IaaS OpenStack network | - | | | error. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 503 | Service unavailable | Failed to assign the MAC address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 3** Error codes - - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Module | HTTP Status Code | Error Code | Error Message | Description | Handling Measure | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Load balancer | 400 | ELB.0002 | RequestBody is | The request body | Set the parameter | - | | | | null or | is empty. | by following the | - | | | | empty,request is | | instructions in | - | | | | invalid. | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 401 | ELB.1102 | Token is error, | Empty token. | Use a correct | - | | | | Authentication | | token that has | - | | | | required. | | not expired. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.0002 | RequestBody is | Failed to convert | Set the parameter | - | | | | null, request is | the request body. | by following the | - | | | | invalid. | | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **vip_subnet_id** | Set the parameter | - | | | | loadbalanc | in the request | by following the | - | | | | er[vip_subnet_id] | body is empty. | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.1202 | 1.decoded token | - The token is | Check the | - | | | | is null. | empty. | enterprise | - | | | | | - An error | project ID. | - | | | | 2.check | occurred | | - | | | | EnterpriseProject | during | | - | | | | is error. | verification | | - | | | | | of **ep_id**. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 403 | ELB.9802 | Policy doesn't | Authentication | Check whether you | - | | | | allow | failure | have the | - | | | | elb:l | | permission to | - | | | | oadbalancers:list | | perform this | - | | | | to be performed. | | operation. | - | | | | | | | - | | | | etc. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 403 | ELB.9803 | Policy doesn't | Authentication | Check whether you | - | | | | allow | failure | have the | - | | | | elb:l | | permission to | - | | | | oadbalancers:list | | perform this | - | | | | to be performed. | | operation. | - | | | | | | | - | | | | etc. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 403 | ELB.9804 | Policy doesn't | Authentication | Check whether you | - | | | | allow | failure | have the | - | | | | elb:l | | permission to | - | | | | oadbalancers:list | | perform this | - | | | | to be performed. | | operation. | - | | | | | | | - | | | | etc. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.0004 | Api response is | The response | Contact customer | - | | | | null or invaild. | returned by | service. | - | | | | | Neutron is | | - | | | | | **null**. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9899 | The | Combined API | Rectify the fault | - | | | | default_ | failed to send | based on the | - | | | | tls_container_ref | the request to | error | - | | | | field of the | Neutron. | information. | - | | | | TERMINATED_HTTPS | | | - | | | | listener does not | | | - | | | | allow updating to | | | - | | | | null | | | - | | | | | | | - | | | | etc. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9807 | Quota exceeded | The quota has | To expand the | - | | | | for | been used up. | quota, contact | - | | | | resources: | | customer service. | - | | | | ['loadbalancer']. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.1204 | Bind fail. | Failed to | Contact customer | - | | | | | associate the | service. | - | | | | | load balancer | | - | | | | | with the | | - | | | | | enterprise | | - | | | | | project. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | Ep_id is not | **ep_id** in the | Check the | - | | | | uuid. | URI is not a | enterprise | - | | | | | valid UUID. | project ID. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9806 | Loadbalancer_id | ** | Check whether the | - | | | | in url is null or | loadbalancer_id** | load balancer ID | - | | | | empty. | in the URI is | in the URL is | - | | | | | empty. | correct. | - | | | | etc. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 404 | ELB.9800 | Resource could | The specified | Check the load | - | | | | not be found. | load balancer | balancer ID. | - | | | | | does not exist | | - | | | | | when **ep_id** is | | - | | | | | queried. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9808 | Tenant_id in | The value of | Check whether | - | | | | token mismatches | **tenant_id** in | parameter | - | | | | with tenant_id in | the token is | **tenant_id** in | - | | | | url. | different from | the token and URL | - | | | | | that in the URL. | is correct. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 403 | ELB.9801 | Not be list | In the | Check whether the | - | | | | action, | fine-grained | parameters in the | - | | | | ente | authorization | request for | - | | | | rprise_project_id | scenario, the | querying the load | - | | | | must not be null. | enterprise ID is | balancers are | - | | | | | not transmitted | correct. | - | | | | | in the request | | - | | | | | for querying the | | - | | | | | load balancers. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Listener | 400 | ELB.0002 | Listener is null, | The request body | Set the parameter | - | | | | request is | is empty. | by following the | - | | | | invalid. | | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **protocol** in | Set the parameter | - | | | | l | the request body | by following the | - | | | | istener[protocol] | is empty. | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **protocol_port** | Set the parameter | - | | | | listen | is empty. | by following the | - | | | | er[protocol_port] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | ** | Set the parameter | - | | | | listener | loadbalancer_id** | by following the | - | | | | [loadbalancer_id] | is empty. | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.6200 | Load Balaner | The port number | Change the port | - | | | | \**\* already has | is in use. | number. | - | | | | a listener with | | | - | | | | protocol_port of | | | - | | | | \***. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9807 | Quota exceeded | The quota has | To expand the | - | | | | for | been used up. | quota, contact | - | | | | resour | | customer service. | - | | | | ces:['listener']. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Backend server | 400 | ELB.0002 | Pool is null, | The request body | Set the parameter | - | group | | | request is | is empty. | by following the | - | | | | invalid. | | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **protocol** is | Set the parameter | - | | | | pool[protocol] is | empty. | by following the | - | | | | null, this is a | | instructions in | - | | | | required | | this guide. | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **lb_algorithm** | Set the parameter | - | | | | p | is empty. | by following the | - | | | | ool[lb_algorithm] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9807 | Quota exceeded | The quota has | To expand the | - | | | | for | been used up. | quota, contact | - | | | | re | | customer service. | - | | | | sources:['pool']. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **listener_id** | Set the parameter | - | | | | pool | is empty. | by following the | - | | | | [loadbalancer_id] | | instructions in | - | | | | and | | this guide. | - | | | | pool[listener_id] | | | - | | | | both are null, | | | - | | | | this has at least | | | - | | | | one parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Backend server | 400 | ELB.9805 | RequestBody | **sess | Set the parameter | - | | | | pool[session_p | ion_persistence** | by following the | - | | | | ersistence][type] | is empty. | instructions in | - | | | | is null. when | | this guide. | - | | | | pool[ses | | | - | | | | sion_persistence] | | | - | | | | exists, this is a | | | - | | | | required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.0002 | Member is | The request body | Set the parameter | - | | | | null,request is | is empty. | by following the | - | | | | invalid. | | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **address** is | Set the parameter | - | | | | member[address] | empty. | by following the | - | | | | is null, this is | | instructions in | - | | | | a required | | this guide. | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9807 | Quota exceeded | The quota has | To expand the | - | | | | for | been used up. | quota, contact | - | | | | reso | | customer service. | - | | | | urces:['member']. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | The value of | Set the parameter | - | | | | member[address]'s | **address** | by following the | - | | | | length is %s, | contains more | instructions in | - | | | | greater than 64. | than 64 | this guide. | - | | | | | characters. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **protocol_port** | Set the parameter | - | | | | memb | is empty. | by following the | - | | | | er[protocol_port] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Health check | 400 | ELB.9805 | RequestBody | **subnet_id** is | Set the parameter | - | | | | member[subnet_id] | empty. | by following the | - | | | | is null, this is | | instructions in | - | | | | a required | | this guide. | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.0002 | healthmonitor is | The request body | Set the parameter | - | | | | null,request is | is empty. | by following the | - | | | | invalid. | | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **delay** is | Set the parameter | - | | | | hea | empty. | by following the | - | | | | lthmonitor[delay] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **max_retries** | Set the parameter | - | | | | healthmon | is empty. | by following the | - | | | | itor[max_retries] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **pool_id** is | Set the parameter | - | | | | healt | empty. | by following the | - | | | | hmonitor[pool_id] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9807 | Quota exceeded | The quota has | To expand the | - | | | | for | been used up. | quota, contact | - | | | | resources:[ | | customer service. | - | | | | 'healthmonitor']. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **timeout** is | Set the parameter | - | | | | healt | empty. | by following the | - | | | | hmonitor[timeout] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Forwarding policy | 400 | ELB.9805 | RequestBody | **type** is | Set the parameter | - | | | | he | empty. | by following the | - | | | | althmonitor[type] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.0002 | l7policy is | The request body | Set the parameter | - | | | | null,request is | is empty. | by following the | - | | | | invalid. | | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9807 | Quota exceeded | The quota has | To expand the | - | | | | for | been used up. | quota, contact | - | | | | resource | | customer service. | - | | | | s:['l7policiey']. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **listener_id** | Set the parameter | - | | | | l7po | is empty. | by following the | - | | | | licy[listener_id] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Forwarding rule | 400 | ELB.9805 | RequestBody | **action** is | Set the parameter | - | | | | l7policy[action] | empty. | by following the | - | | | | is null, this is | | instructions in | - | | | | a required | | this guide. | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.0002 | Rule is | The request body | Set the parameter | - | | | | null,request is | is empty. | by following the | - | | | | invalid. | | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **type** is | Set the parameter | - | | | | rule[type] is | empty. | by following the | - | | | | null, this is a | | instructions in | - | | | | required | | this guide. | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9807 | Quota exceeded | The quota has | To expand the | - | | | | for | been used up. | quota, contact | - | | | | resources:[' | | customer service. | - | | | | l7policieyrule']. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **compare_type** | Set the parameter | - | | | | r | is empty. | by following the | - | | | | ule[compare_type] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **value** is | Set the parameter | - | | | | rule[value] is | empty. | by following the | - | | | | null, this is a | | instructions in | - | | | | required | | this guide. | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | The parameter | Set the parameter | - | | | | rule[value]'s | value contains | by following the | - | | | | length is %s, | more than 128 | instructions in | - | | | | greater than 128. | characters. | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Whitelist | 400 | ELB.9807 | Quota exceeded | The quota has | To expand the | - | | | | for | been used up. | quota, contact | - | | | | resourc | | customer service. | - | | | | es:['whitelist']. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.0002 | whitelist is | The request body | Set the parameter | - | | | | null,request is | is empty. | by following the | - | | | | invalid. | | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | **listener_id** | Set the parameter | - | | | | white | is empty. | by following the | - | | | | list[listener_id] | | instructions in | - | | | | is null, this is | | this guide. | - | | | | a required | | | - | | | | parameter. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9805 | RequestBody | The value of | Set the parameter | - | | | | whiteli | **listener_id** | by following the | - | | | | st[listener_id]'s | contains more | instructions in | - | | | | length is %s, | than 255 | this guide. | - | | | | greater than 255. | characters. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Label Management | 400 | ELB.0002 | RequestBody is | Invalid request | Set the parameter | - | | | | null or empty. | body. | by following the | - | | | | | | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 401 | ELB.1102 | Token is error, | Invalid token. | Use a correct | - | | | | Authentication | | token that has | - | | | | required. | | not expired. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.0002 | L | Invalid request | Set the parameter | - | | | | ogTankRequestBody | body. | by following the | - | | | | is null, request | | instructions in | - | | | | is invalid. | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | | | LoadbalancerId in | ** | Set the parameter | - | | | | requestBody is | loadbalancer_id** | by following the | - | | | | null. | in the request | instructions in | - | | | | | body is empty. | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | | | LoggroupId in | **log_group_id** | Set the parameter | - | | | | requestBody is | in the request | by following the | - | | | | null. | body is empty. | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | | | LogtopicId in | **log_topic_id** | Set the parameter | - | | | | requestBody is | in the request | by following the | - | | | | null. | body is empty. | instructions in | - | | | | | | this guide. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 403 | ELB.9802 | Policy doesn't | Permission | Check whether you | - | | | | allow | verification | have the | - | | | | el | failed. | permission to | - | | | | b:logtanks:create | | perform this | - | | | | to be performed. | | operation. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 403 | ELB.9803 | Policy doesn't | Permission | Check whether you | - | | | | allow | verification | have the | - | | | | elb:l | failed. | permission to | - | | | | oadbalancers:list | | perform this | - | | | | to be performed. | | operation. | - | | | | | | | - | | | | etc. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 403 | ELB.9804 | Policy doesn't | Permission | Check whether you | - | | | | allow | verification | have the | - | | | | elb:l | failed. | permission to | - | | | | oadbalancers:list | | perform this | - | | | | to be performed. | | operation. | - | | | | | | | - | | | | etc. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.9899 | The | Parameter | Rectify the fault | - | | | | default_ | **default_tl | based on the | - | | | | tls_container_ref | s_container_ref** | error | - | | | | field of the | cannot be left | information. | - | | | | TERMINATED_HTTPS | blank. | | - | | | | listener does not | | | - | | | | allow updating to | | | - | | | | null. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | Certificate | 400 | ELB.1001 | Request | Invalid | Enter a valid | - | | | | parameters | parameter. | parameter. | - | | | | invalid. | | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5010 | The certificate | The certificate | Enter a valid | - | | | | URL contains more | URL contains more | certificate URL. | - | | | | than four parts. | than four parts. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5020 | The certificate | The certificate | Enter a valid | - | | | | ID must be 32 | ID is not a | certificate ID. | - | | | | characters. | 32-character | | - | | | | | string. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5030 | Incorrect | Incorrect | Enter a valid | - | | | | certificate URL. | certificate URL. | certificate URL. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 404 | ELB.5040 | The certificate | The certificate | Ensure that the | - | | | | does not exist. | does not exist. | certificate | - | | | | | | exists. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5131 | Failed to query | Failed to query | Contact customer | - | | | | the certificate | the certificate | service. | - | | | | quota. | quota. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5141 | Failed to query | Failed to query | Contact customer | - | | | | the user | the used | service. | - | | | | certificate | certificate | | - | | | | quota. | quota. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5151 | The certificate | The quota has | Ensure that the | - | | | | quantity exceeds | been used up. | quantity of | - | | | | the quota. | | certificates is | - | | | | | | less than the | - | | | | | | quota. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.1011 | Private_key or | Invalid public or | Enter a valid | - | | | | certificate | private key of | public or private | - | | | | content is not | the server | key. | - | | | | valid. | certificate. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5051 | CA certificate | Invalid CA | Enter valid | - | | | | content is not | certificate | certificate | - | | | | valid. | content. | content. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5002 | Failed to delete | Failed to delete | Contact customer | - | | | | the certificate. | the certificate. | service. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5033 | Failed to update | Failed to modify | Contact customer | - | | | | certificate. | the certificate. | service. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5013 | Private_key or | Invalid public or | Enter a valid | - | | | | certificate | private key of | public or private | - | | | | content is not | the server | key. | - | | | | valid. | certificate. | | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5053 | CA certificate | Invalid CA | Enter valid | - | | | | content is not | certificate | certificate | - | | | | valid. | content. | content. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | | 400 | ELB.5004 | Invalid search | Invalid query | Ensure that the | - | | | | criteria. | condition. | query condition | - | | | | | | is correct. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - | API version | 404 | ELB.1110 | version not | The API version | Contact customer | - | | | | found. | does not exist. | service. | - +-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+ - -**Parent topic:** `Common Parameters `__ diff --git a/elb/api-ref/elb_gc_1102.rst b/elb/api-ref/elb_gc_1102.rst deleted file mode 100644 index 22e8248c..00000000 --- a/elb/api-ref/elb_gc_1102.rst +++ /dev/null @@ -1,86 +0,0 @@ -Status Codes -============ - -.. table:: **Table 1** Normal status codes - - =========== ========== ======================================== - Status Code Message Description - =========== ========== ======================================== - 200 OK Normal response to GET and PUT requests. - 201 Created Normal response to POST requests. - 204 No Content Normal response to DELETE requests. - =========== ========== ======================================== - -.. table:: **Table 2** Error codes - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Status Code | Message | Description | - +=======================================+=======================================+=======================================+ - | 400 | Bad request | Malformed request URI or body. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Invalid **admin \_state_up** value. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Invalid parameters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Batch operations are not allowed. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Failed to verify the parameters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The method is not allowed for the | - | | | request body, for example, trying to | - | | | update attributes that be specified | - | | | only during creation. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The network is not external (the | - | | | value of **router:external** is set | - | | | to **false**). | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The IaaS OpenStack network port has | - | | | no floating IP address bound. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The requested floating IP address is | - | | | not in the IP address range of the | - | | | external network. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | Invalid fixed IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The router port does not have a fixed | - | | | IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The subnet for the router interface | - | | | must have a gateway IP address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 401 | Unauthorized | Authentication required. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 403 | Forbidden | The URI does not exist. | - | | | | - | | | The resource cannot be found. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 404 | Not found | The URI does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The resource cannot be found. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The port UUID is not valid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 409 | Conflict | The port is already in use. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The IP address is already in use. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The IP address pool cannot contain | - | | | gateway and broadcast addresses. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The requested floating IP address is | - | | | already in use. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | | | The internal IaaS OpenStack network | - | | | port and fixed IP address are already | - | | | associated with another floating IP | - | | | addresses. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 500 | Internal IaaS OpenStack network | Failed to assign the MAC address. | - | | error. | | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 503 | Service unavailable | Failed to assign the MAC address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -**Parent topic:** `Appendix `__ diff --git a/elb/api-ref/elb_jd_0000.rst b/elb/api-ref/elb_jd_0000.rst deleted file mode 100644 index 4f97aec2..00000000 --- a/elb/api-ref/elb_jd_0000.rst +++ /dev/null @@ -1,13 +0,0 @@ -Classic Load Balancer APIs -========================== - -- `API Call Precaution `__ -- `Load Balancer `__ -- `Listener `__ -- `Health Check `__ -- `Backend ECS `__ -- `Quota `__ -- `Certificate `__ -- `Querying the Job Status `__ -- `Querying Monitoring Metrics `__ -- `API Version `__ diff --git a/elb/api-ref/elb_jd_bg_0000.rst b/elb/api-ref/elb_jd_bg_0000.rst deleted file mode 100644 index 4bf5f348..00000000 --- a/elb/api-ref/elb_jd_bg_0000.rst +++ /dev/null @@ -1,7 +0,0 @@ -API Version -=========== - -- `Querying All API Versions `__ -- `Querying a Specific API Version `__ - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/elb_jd_bg_0001.rst b/elb/api-ref/elb_jd_bg_0001.rst deleted file mode 100644 index 44080887..00000000 --- a/elb/api-ref/elb_jd_bg_0001.rst +++ /dev/null @@ -1,125 +0,0 @@ -Querying All API Versions -========================= - -Function -^^^^^^^^ - -This API is used to query all API versions of ELB. - -URI -^^^ - -GET / - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 1** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | **Type** | Description | - +=======================================+=======================================+=======================================+ - | versions | Array | Lists all API versions. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the version ID, for | - | | | example, **v1**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | links | Array | Specifies the API URL. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | href | String | Specifies the reference address of | - | | | the current API version. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the relationship between | - | | | the current API version and the | - | | | referenced address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | version | String | Specifies the version. If minor | - | | | versions are supported, set this | - | | | parameter to the latest minor | - | | | version. If minor versions are not | - | | | supported, leave this parameter | - | | | blank. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status | String | Specifies the version status. Options | - | | | are as follows: | - | | | | - | | | - **CURRENT**: indicates the major | - | | | version. | - | | | - **SUPPORTED**: indicates that the | - | | | version is an old one, but it is | - | | | still supported. | - | | | - **DEPRECATED**: indicates a | - | | | deprecated version which may be | - | | | deleted later. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated | String | Specifies the version release time, | - | | | which must be the UTC time. For | - | | | example, the release time of v1 is | - | | | 2014-06-28T12:20:21Z. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | min_version | String | Specifies the minor version. If minor | - | | | versions are supported, set this | - | | | parameter to the earliest minor | - | | | version. If minor versions are not | - | | | supported, leave this parameter | - | | | blank. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -- Example response - - .. code:: screen - - { - "versions": [ - { - "id": "v1.0", - "links": [ - { - "href": "https://{elb_endpoint}/v1.0/", - "rel": "self" - } - ], - "min_version": "", - "status": "CURRENT", - "updated": "2018-09-30T00:00:00Z", - "version": "" - } - ] - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ===================== ==================================================================== - Status Code Message Description - =========== ===================== ==================================================================== - 400 Bad Request Request error. - 401 Unauthorized The authentication information is not provided or is incorrect. - 403 Forbidden The request was forbidden. - 404 Not Found The requested resource does not exist. - 408 Request Timeout The request timed out. - 429 Too Many Requests The number requests exceeded the upper limit. - 500 Internal Server Error Failed to complete the request because of an internal service error. - 503 Service Unavailable The service is currently unavailable. - =========== ===================== ==================================================================== - -**Parent topic:** `API Version `__ diff --git a/elb/api-ref/elb_jd_bg_0002.rst b/elb/api-ref/elb_jd_bg_0002.rst deleted file mode 100644 index 82bdcb6b..00000000 --- a/elb/api-ref/elb_jd_bg_0002.rst +++ /dev/null @@ -1,135 +0,0 @@ -Querying a Specific API Version -=============================== - -Function -^^^^^^^^ - -This API is used to query a specific ELB API version. - -URI -^^^ - -GET /{api_version} - -.. table:: **Table 1** Parameter description - - =========== ============= ========================== - Parameter **Mandatory** Description - =========== ============= ========================== - api_version Yes Specifies the API version. - =========== ============= ========================== - -- **Example** - - /v1.0 - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Response parameters - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | **Type** | Description | - +=======================================+=======================================+=======================================+ - | version | Object | Specifies the API version. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the version ID, for | - | | | example, **v1**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | links | Array | Specifies the API URL. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | href | String | Specifies the reference address of | - | | | the current API version. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the relationship between | - | | | the current API version and the | - | | | referenced address. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | version | String | Specifies the version. If minor | - | | | versions are supported, set this | - | | | parameter to the latest minor | - | | | version. If minor versions are not | - | | | supported, leave this parameter | - | | | blank. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status | String | Specifies the version status. Options | - | | | are as follows: | - | | | | - | | | - **CURRENT**: indicates the major | - | | | version. | - | | | - **SUPPORTED**: indicates that the | - | | | version is an old one, but it is | - | | | still supported. | - | | | - **DEPRECATED**: indicates a | - | | | deprecated version which may be | - | | | deleted later. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated | String | Specifies the version release time, | - | | | which must be the UTC time. For | - | | | example, the release time of v1 is | - | | | 2014-06-28T12:20:21Z. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | min_version | String | Specifies the minor version. If minor | - | | | versions are supported, set this | - | | | parameter to the earliest minor | - | | | version. If minor versions are not | - | | | supported, leave this parameter | - | | | blank. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -- Example response - - .. code:: screen - - { - "version": { - "id": "v1.0", - "links": [ - { - "href": "https://{elb_endpoint}/v1.0/", - "rel": "self" - } - ], - "min_version": "", - "status": "CURRENT", - "updated": "2018-09-30T00:00:00Z", - "version": "" - } - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ===================== ==================================================================== - Status Code Message Description - =========== ===================== ==================================================================== - 400 Bad Request Request error. - 401 Unauthorized The authentication information is not provided or is incorrect. - 403 Forbidden The request was forbidden. - 404 Not Found The requested resource does not exist. - 408 Request Timeout The request timed out. - 429 Too Many Requests The number requests exceeded the upper limit. - 500 Internal Server Error Failed to complete the request because of an internal service error. - 503 Service Unavailable The service is currently unavailable. - =========== ===================== ==================================================================== - -**Parent topic:** `API Version `__ diff --git a/elb/api-ref/elb_jd_cj_0000.rst b/elb/api-ref/elb_jd_cj_0000.rst deleted file mode 100644 index b6466c61..00000000 --- a/elb/api-ref/elb_jd_cj_0000.rst +++ /dev/null @@ -1,94 +0,0 @@ -Querying Monitoring Metrics -=========================== - -Function -^^^^^^^^ - -This API is used to query all metrics at Layer 4 and Layer 7. - -Only users can query these metrics. - -URI -^^^ - -GET /v1.0/{project_id}/elbaas/monitor - -.. table:: **Table 1** Parameter description - - ========== ============= ======== ========================= - Parameter **Mandatory** **Type** Description - ========== ============= ======== ========================= - project_id Yes String Specifies the project ID. - ========== ============= ======== ========================= - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Response parameters - - ================= ======== =============================================== - Parameter **Type** Description - ================= ======== =============================================== - act_conn Integer Specifies the number of active connections. - cps Integer Specifies the number of concurrent connections. - create_time String Specifies the report time. - in_Bps Integer Specifies the inbound rate (bytes/s). - in_pps Integer Specifies the number of incoming data packets. - inact_conn Integer Specifies the number of inactive connections. - loadbalancer_id String Specifies the load balancer ID. - loadbalancer_ip String Specifies the load balancer IP address. - loadbalancer_name String Specifies the load balancer name. - ncps Integer Specifies the number of new connections. - out_Bps Integer Specifies the outbound rate (bytes/s). - out_pps Integer Specifies the number of outgoing data packets. - ================= ======== =============================================== - -- Example response - - .. code:: screen - - [ - { - "act_conn": 0, - "cps": 0, - "create_time": "2016-05-20 16:46:49", - "in_Bps": 0, - "in_pps": 0, - "inact_conn": 0, - "loadbalancer_id": "34cf6520808d4766ae1455586ab94ba8", - "loadbalancer_ip": "10.10.1.233", - "loadbalancer_name": "lb0721", - "ncps": 0, - "out_Bps": 0, - "out_pps": 0 - }, - { - "act_conn": 0, - "cps": 0, - "create_time": "2016-05-20 16:46:49", - "in_Bps": 0, - "in_pps": 0, - "inact_conn": 0, - "loadbalancer_id": "b44533cce271437bb692365b0c450543", - "loadbalancer_ip": "10.10.1.253", - "loadbalancer_name": "lb0721", - "ncps": 0, - "out_Bps": 0, - "out_pps": 0 - } - ] - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/elb_jd_fz_0000.rst b/elb/api-ref/elb_jd_fz_0000.rst deleted file mode 100644 index 8857efe7..00000000 --- a/elb/api-ref/elb_jd_fz_0000.rst +++ /dev/null @@ -1,11 +0,0 @@ -Load Balancer -============= - -- `Creating a Load Balancer `__ -- `Deleting a Load Balancer `__ -- `Deleting a Public Network Load Balancer `__ -- `Modifying a Load Balancer `__ -- `Querying Details of a Load Balancer `__ -- `Querying Load Balancers `__ - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/elb_jd_fz_0001.rst b/elb/api-ref/elb_jd_fz_0001.rst deleted file mode 100644 index 2c03376c..00000000 --- a/elb/api-ref/elb_jd_fz_0001.rst +++ /dev/null @@ -1,256 +0,0 @@ -Creating a Load Balancer -======================== - -Function -^^^^^^^^ - -This API is used to create a load balancer. - -URI -^^^ - -POST /v1.0/{project_id}/elbaas/loadbalancers - -.. table:: **Table 1** Parameter description - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -Request -^^^^^^^ - -- Request parameters - - .. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | Yes | String | - Specifies the load | - | | | | balancer name. | - | | | | - The value can contain 1 | - | | | | to 64 characters that | - | | | | consist of letters, | - | | | | digits, underscores (_), | - | | | | and hyphens (-). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | - Provides supplementary | - | | | | information about the | - | | | | load balancer. | - | | | | - The value contains 0 to | - | | | | 128 characters and | - | | | | cannot contain angle | - | | | | brackets (< and >). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vpc_id | Yes | String | Specifies the VPC ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | bandwidth | No | Integer | - Specifies the bandwidth | - | | | | (Mbit/s). This parameter | - | | | | is mandatory when | - | | | | **type** is set to | - | | | | **External**. | - | | | | | - | | | | - The value ranges from | - | | | | **1** to **500**. | - | | | | | - | | | | (The specific range may | - | | | | vary depending on the | - | | | | configuration in each | - | | | | region. You can see the | - | | | | bandwidth range of each | - | | | | region on the management | - | | | | console.) | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | - Specifies the network | - | | | | type of the load | - | | | | balancer. | - | | | | - The value is | - | | | | **Internal** or | - | | | | **External**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | Yes | Integer/Boolean | - Specifies the | - | | | | administrative status of | - | | | | the load balancer. | - | | | | | - | | | | - Optional values: | - | | | | | - | | | | **0** or **false**: | - | | | | indicates that the load | - | | | | balancer is stopped. | - | | | | Only users are allowed | - | | | | to enter the two values. | - | | | | | - | | | | **1** or **true**: | - | | | | indicates that the load | - | | | | balancer is running | - | | | | properly. | - | | | | | - | | | | **2** or **false**: | - | | | | indicates that the load | - | | | | balancer is frozen. Only | - | | | | the administrator is | - | | | | allowed to enter the two | - | | | | values. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_subnet_id | No | String | Specifies the subnet ID of | - | | | | backend ECSs. This | - | | | | parameter is mandatory when | - | | | | **type** is set to | - | | | | **Internal**. Only IPv4 | - | | | | subnets can be specified. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | az | No | String | Specifies the AZ of the | - | | | | load balancer. This | - | | | | parameter is invalid when | - | | | | type is set to **External** | - | | | | and is optional when type | - | | | | is set to **Internal**. If | - | | | | **type** is set to | - | | | | **Internal** and an AZ is | - | | | | specified, the specified AZ | - | | | | must support private | - | | | | network load balancers. | - | | | | Otherwise, an error message | - | | | | is returned. For more | - | | | | details, see `Regions and | - | | | | Endpoints `__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | charge_mode | No | String | - Specifies how a new | - | | | | elastic IP address (EIP) | - | | | | is billed. This is a | - | | | | reserved parameter. If | - | | | | the system supports | - | | | | billing by traffic and | - | | | | this parameter is | - | | | | specified, the EIP will | - | | | | be billed by traffic. | - | | | | - Specifies whether the | - | | | | EIP is billed by traffic | - | | | | or fixed bandwidth. If | - | | | | this parameter is left | - | | | | blank or incorrectly | - | | | | set, the EIP is billed | - | | | | by traffic by default. | - | | | | - The value is | - | | | | **traffic**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | eip_type | No | String | - This parameter is | - | | | | reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | security_group_id | No | String | - Specifies the security | - | | | | group ID. | - | | | | - The value can contain 1 | - | | | | to 200 characters that | - | | | | consists of letters, | - | | | | digits, and hyphens (-). | - | | | | - This parameter is | - | | | | mandatory if the value | - | | | | of **type** is | - | | | | **Internal**, while it | - | | | | is ignored when the | - | | | | value of **type** is | - | | | | **External**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_address | No | String | - Specifies the private IP | - | | | | address of the load | - | | | | balancer. When **type** | - | | | | is set to **External**, | - | | | | the parameter value is | - | | | | the EIP. When **type** | - | | | | is set to **Internal**, | - | | | | the parameter value is | - | | | | the private network IP | - | | | | address. | - | | | | - You can select an | - | | | | existing EIP to create a | - | | | | public network load | - | | | | balancer. When this | - | | | | parameter is configured, | - | | | | parameters | - | | | | **bandwidth**, | - | | | | **charge_mode**, and | - | | | | **eip_type** are | - | | | | invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tenantId | No | String | - Specifies the project | - | | | | ID. | - | | | | - This parameter is | - | | | | mandatory when **type** | - | | | | is set to **Internal**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -- Example request 1 - - .. code:: screen - - { - "name": "loadbalancer1", - "description": "simple lb", - "vpc_id": "f54a3ffd-7a55-4568-9e3d-f0ff2d46a107", - "bandwidth": 200, - "type": "External", - "admin_state_up": true - } - -- Example request 2 - - .. code:: screen - - { - "name": "loadbalancer1", - "description": "simple lb", - "vpc_id": "f54a3ffd-7a55-4568-9e3d-f0ff2d46a107", - "vip_address": "192.144.164.74", - "type": "External", - "admin_state_up": true - } - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 3** Parameter description - - ========= ====== =================================================================================================== - Parameter Type Description - ========= ====== =================================================================================================== - uri String Specifies the URI returned by Combined API after the job for creating a load balancer is delivered. - job_id String Specifies the unique ID assigned to the job for creating a load balancer in Combined API. - ========= ====== =================================================================================================== - -- Example response - - .. code:: screen - - { - "uri": "/v1/73cd9140bec7427ab9952b4ed75924e0/jobs/4010b39b4fbb4645014fcfc8f2d178d1", - "job_id": "4010b39b4fbb4645014fcfc8f2d178d1" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/elb_jd_fz_0002.rst b/elb/api-ref/elb_jd_fz_0002.rst deleted file mode 100644 index 2275c481..00000000 --- a/elb/api-ref/elb_jd_fz_0002.rst +++ /dev/null @@ -1,82 +0,0 @@ -Deleting a Load Balancer -======================== - -Function -^^^^^^^^ - -This API is used to delete a load balancer. If the load balancer is a public network load balancer, this API deletes the EIP bound to the load balancer. - -Constraints -^^^^^^^^^^^ - -For a public network load balancer, you need to delete the backend ECSs added to all listeners of the load balancer before deleting it. - -URI -^^^ - -DELETE /v1.0/{project_id}/elbaas/loadbalancers/{loadbalancer_id} - -.. table:: **Table 1** Parameter description - - =============== ========= ====== =============================== - Parameter Mandatory Type Description - =============== ========= ====== =============================== - project_id Yes String Specifies the project ID. - loadbalancer_id Yes String Specifies the load balancer ID. - =============== ========= ====== =============================== - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - ========= ====== =================================================================================================== - Parameter Type Description - ========= ====== =================================================================================================== - uri String Specifies the URI returned by Combined API after the job for deleting a load balancer is delivered. - job_id String Specifies the unique ID assigned to the job for deleting a load balancer in Combined API. - ========= ====== =================================================================================================== - -- Example response - - .. code:: screen - - { - "uri": "/v1/73cd9140bec7427ab9952b4ed75924e0/jobs/4010b39c4fbb4649014fcfd2ab7903b0", - "job_id": "4010b39c4fbb4649014fcfd2ab7903b0" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/elb_jd_fz_0003.rst b/elb/api-ref/elb_jd_fz_0003.rst deleted file mode 100644 index 9db4e9e9..00000000 --- a/elb/api-ref/elb_jd_fz_0003.rst +++ /dev/null @@ -1,82 +0,0 @@ -Deleting a Public Network Load Balancer -======================================= - -Function -^^^^^^^^ - -This API is used to delete a public network load balancer. The EIP bound to the load balancer will not be deleted. If you need to delete this IP address, refer to `Deleting a Load Balancer `__. - -Constraints -^^^^^^^^^^^ - -Before deleting a public network load balancer, you must remove all backend ECSs from the listener. This API cannot be used to delete a private network load balancer. - -URI -^^^ - -DELETE /v1.0/{project_id}/elbaas/loadbalancers/{loadbalancer_id}/keep-eip - -.. table:: **Table 1** Parameter description - - =============== ============= ======== =============================== - Parameter **Mandatory** **Type** Description - =============== ============= ======== =============================== - project_id Yes String Specifies the project ID. - loadbalancer_id Yes String Specifies the load balancer ID. - =============== ============= ======== =============================== - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - ========= ======== =================================================================================================== - Parameter **Type** Description - ========= ======== =================================================================================================== - uri String Specifies the URI returned by Combined API after the job for deleting a load balancer is delivered. - job_id String Specifies the unique ID assigned to the job for deleting a load balancer in Combined API. - ========= ======== =================================================================================================== - -- Example response - - .. code:: screen - - { - "uri": "/v1/8263303061de4b5d95c9cb68c3a257f4/jobs/ff808082615b23aa01616b90efc65298", - "job_id": "ff808082615b23aa01616b90efc65298" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisable You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/elb_jd_fz_0004.rst b/elb/api-ref/elb_jd_fz_0004.rst deleted file mode 100644 index fba8cc12..00000000 --- a/elb/api-ref/elb_jd_fz_0004.rst +++ /dev/null @@ -1,143 +0,0 @@ -Modifying a Load Balancer -========================= - -Function -^^^^^^^^ - -This API is used to modify the name, description, bandwidth, and administrative status of a load balancer. - -URI -^^^ - -PUT /v1.0/{project_id}/elbaas/loadbalancers/{loadbalancer_id} - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | project_id | Yes | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | Yes | String | Specifies the load balancer | - | | | | ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | - Specifies the load | - | | | | balancer name. | - | | | | - The value can contain 1 | - | | | | to 64 characters that | - | | | | consist of letters, | - | | | | digits, underscores (_), | - | | | | and hyphens (-). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | - Provides supplementary | - | | | | information about the | - | | | | load balancer. | - | | | | - The value contains 0 to | - | | | | 128 characters and | - | | | | cannot contain angle | - | | | | brackets (< and >). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | bandwidth | No | Integer | - Specifies the bandwidth | - | | | | (Mbit/s). This parameter | - | | | | is mandatory when | - | | | | **type** is set to | - | | | | **External**. | - | | | | | - | | | | - The value ranges from 1 | - | | | | to 500. | - | | | | | - | | | | (The specific range may | - | | | | vary depending on the | - | | | | configuration in each | - | | | | region. You can see the | - | | | | bandwidth range of each | - | | | | region on the management | - | | | | console.) | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Integer/Boolean | - Specifies the | - | | | | administrative status of | - | | | | the load balancer. | - | | | | | - | | | | - Optional values: | - | | | | | - | | | | **0** or **false**: | - | | | | indicates that the load | - | | | | balancer is stopped. | - | | | | Only users are allowed | - | | | | to enter the two values. | - | | | | | - | | | | **1** or **true**: | - | | | | indicates that the load | - | | | | balancer is running | - | | | | properly. | - | | | | | - | | | | **2** or **false**: | - | | | | indicates that the load | - | | | | balancer is frozen. Only | - | | | | the administrator is | - | | | | allowed to enter the two | - | | | | values. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - .. code:: screen - - { - "description": "simple lb", - "name": "loadbalancer1", - "bandwidth": 200, - "admin_state_up": true - } - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - ========= ====== ==================================================================================================== - Parameter Type Description - ========= ====== ==================================================================================================== - uri String Specifies the URI returned by Combined API after the job for modifying a load balancer is delivered. - job_id String Specifies the unique ID assigned to the job for modifying a load balancer in Combined API. - ========= ====== ==================================================================================================== - -- Example response - - .. code:: screen - - { - "uri": "/v1/73cd9140bec7427ab9952b4ed75924e0/jobs/4010b39d4fbb4645014fcfddf4b32d15", - "job_id": "4010b39d4fbb4645014fcfddf4b32d15" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/elb_jd_fz_0005.rst b/elb/api-ref/elb_jd_fz_0005.rst deleted file mode 100644 index 7d48121e..00000000 --- a/elb/api-ref/elb_jd_fz_0005.rst +++ /dev/null @@ -1,136 +0,0 @@ -Querying Details of a Load Balancer -=================================== - -Function -^^^^^^^^ - -This API is used to query details about a load balancer. - -URI -^^^ - -GET /v1.0/{project_id}/elbaas/loadbalancers/{loadbalancer_id} - -.. table:: **Table 1** Parameter description - - =============== ============= ======== =============================== - Parameter **Mandatory** **Type** Description - =============== ============= ======== =============================== - project_id Yes String Specifies the project ID. - loadbalancer_id Yes String Specifies the load balancer ID. - =============== ============= ======== =============================== - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | vip_address | String | Specifies the private IP address of | - | | | the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | update_time | String | Specifies the time when the load | - | | | balancer was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the load | - | | | balancer was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status | String | - Specifies the load balancer | - | | | status. | - | | | - The value can be **ACTIVE**, | - | | | **PENDING_CREATE**, or **ERROR**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | bandwidth | Integer | Specifies the bandwidth (Mbit/s). | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vpc_id | String | Specifies the VPC ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Integer | - Specifies the administrative | - | | | status of the load balancer. | - | | | | - | | | - The following options are | - | | | available: | - | | | | - | | | **0**: The load balancer is | - | | | disabled. | - | | | | - | | | **1**: The load balancer is | - | | | running properly. | - | | | | - | | | **2**: The load balancer is | - | | | frozen. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_id | String | This parameter is unavailable now. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the network type of the | - | | | load balancer. The value is | - | | | **External**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the load balancer name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | security_group_id | String | - Specifies the security group ID. | - | | | - **null** is displayed for this | - | | | parameter when **type** is set to | - | | | **External**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -- Example response - - .. code:: screen - - { - "vip_address": "192.144.62.114", - "update_time": "2015-09-14 02:34:32", - "create_time": "2015-09-14 02:34:32", - "id": "0b07acf06d243925bc24a0ac7445267a", - "status": "ACTIVE", - "bandwidth": 1, - "security_group_id": null, - "vpc_id": "f54a3ffd-7a55-4568-9e3d-f0ff2d46a107", - "admin_state_up": 1, - "vip_subnet_id": null, - "type": "External", - "name": "MY_ELB", - "description": null - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/elb_jd_hd_0000.rst b/elb/api-ref/elb_jd_hd_0000.rst deleted file mode 100644 index 35ab8273..00000000 --- a/elb/api-ref/elb_jd_hd_0000.rst +++ /dev/null @@ -1,8 +0,0 @@ -Backend ECS -=========== - -- `Adding Backend ECSs `__ -- `Removing Backend ECSs `__ -- `Querying Backend ECSs `__ - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/elb_jd_hd_0001.rst b/elb/api-ref/elb_jd_hd_0001.rst deleted file mode 100644 index c30dfa13..00000000 --- a/elb/api-ref/elb_jd_hd_0001.rst +++ /dev/null @@ -1,88 +0,0 @@ -Adding Backend ECSs -=================== - -Function -^^^^^^^^ - -This API is used to add backend ECSs to a listener for monitoring. - -To add backend ECSs to a UDP listener, IP addresses can be pinged and UDP services must be enabled. - -URI -^^^ - -POST /v1.0/{project_id}/elbaas/listeners/{listener_id}/members - -.. table:: **Table 1** Parameter description - - =========== ========= ====== ==================================================== - Parameter Mandatory Type Description - =========== ========= ====== ==================================================== - project_id Yes String Specifies the project ID. - listener_id Yes String Specifies the listener ID. - server_id Yes String Specifies the backend ECS ID. - address Yes String Specifies the private IP address of the backend ECS. - =========== ========= ====== ==================================================== - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - .. code:: screen - - [ - { - "server_id": "dbecb618-2259-405f-ab17-9b68c4f541b0", - "address": "172.16.0.31" - } - ] - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - ========= ====== ====================================================================================== - Parameter Type Description - ========= ====== ====================================================================================== - uri String Specifies the URI of the job for adding a backend ECS. It is returned by Combined API. - job_id String Specifies the unique ID assigned to the job for adding a backend ECS in Combined API. - ========= ====== ====================================================================================== - -- Example response - - .. code:: screen - - { - "uri": "/v1/55300f3c8f764c06b1a32e2302edc305/jobs/4010b39b4fd3d5ff014fd3ec3ed8002d", - "job_id": "4010b39b4fd3d5ff014fd3ec3ed8002d" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Backend ECS `__ diff --git a/elb/api-ref/elb_jd_hd_0002.rst b/elb/api-ref/elb_jd_hd_0002.rst deleted file mode 100644 index a7115a72..00000000 --- a/elb/api-ref/elb_jd_hd_0002.rst +++ /dev/null @@ -1,94 +0,0 @@ -Removing Backend ECSs -===================== - -Function -^^^^^^^^ - -This API is used to remove backend ECSs from a listener. Multiple backend ECSs can be removed concurrently. - -URI -^^^ - -POST /v1.0/{project_id}/elbaas/listeners/{listener_id}/members/action - -.. table:: **Table 1** Parameter description - - ============ ========= ====== =============================== - Parameter Mandatory Type Description - ============ ========= ====== =============================== - project_id Yes String Specifies the project ID. - listener_id Yes String Specifies the listener ID. - removeMember Yes Array Lists the removed backend ECSs. - ============ ========= ====== =============================== - -.. table:: **Table 2** **removeMember** parameter description - - ========= ========= ====== ============================= - Parameter Mandatory Type Description - ========= ========= ====== ============================= - id Yes String Specifies the backend ECS ID. - ========= ========= ====== ============================= - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - .. code:: screen - - { - "removeMember": [ - { - "id": "34695d664b182fa69b98228032b0e239" - } - ] - } - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 3** Parameter description - - ========= ====== ================================================================================================= - Parameter Type Description - ========= ====== ================================================================================================= - uri String Specifies the URI returned by Combined API after the job for removing a backend ECS is delivered. - job_id String Specifies the unique ID assigned to the job for removing a backend ECS in Combined API. - ========= ====== ================================================================================================= - -- Example response - - .. code:: screen - - { - "uri": "/v1/55300f3c8f764c06b1a32e2302edc305/jobs/4010b39b4fd3d5ff014fd3f160fd006c", - "job_id": "4010b39b4fd3d5ff014fd3f160fd006c" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Backend ECS `__ diff --git a/elb/api-ref/elb_jd_hd_0003.rst b/elb/api-ref/elb_jd_hd_0003.rst deleted file mode 100644 index c6809503..00000000 --- a/elb/api-ref/elb_jd_hd_0003.rst +++ /dev/null @@ -1,141 +0,0 @@ -Querying Backend ECSs -===================== - -Function -^^^^^^^^ - -This API is used to query backend ECSs added to a listener. If you are the administrator, the backend ECS list will be empty. - -URI -^^^ - -GET /v1.0/{project_id}/elbaas/listeners/{listener_id}/members?limit=10&marker=0 - -|image1| - -Enter a question mark (?) and an ampersand (&) at the end of the URI to define multiple search criteria. This API allows filtering backend ECSs by each parameter in the response message except **listeners**, **server_name**, **update_time**, and **create_time**. - -.. table:: **Table 1** Parameter description - - +-------------+---------------+----------+--------------------------------------------------------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============+===============+==========+==========================================================================+ - | project_id | Yes | String | Specifies the project ID. | - +-------------+---------------+----------+--------------------------------------------------------------------------+ - | listener_id | Yes | String | Specifies the listener ID. | - +-------------+---------------+----------+--------------------------------------------------------------------------+ - | marker | No | String | Specifies the resource ID of pagination query. If the parameter is left | - | | | | blank, only resources on the first page are queried. | - +-------------+---------------+----------+--------------------------------------------------------------------------+ - | limit | No | Integer | Specifies the number of records on each page. | - +-------------+---------------+----------+--------------------------------------------------------------------------+ - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - ============== ======== ================================================================================================ - Parameter **Type** Description - ============== ======== ================================================================================================ - server_address String Specifies the private IP address of the backend ECS. - id String Specifies the backend ECS ID. - address String Specifies the floating IP address assigned to the backend ECS. - status String Specifies the status of the backend ECS. The value can be **ACTIVE**, **PENDING**, or **ERROR**. - health_status String Specifies the health check result. The value is **NORMAL**, **ABNORMAL**, or **UNAVAILABLE**. - update_time String Specifies the time when the backend ECS was updated. - create_time String Specifies the time when the backend ECS was added. - server_name String Specifies the backend ECS name. - server_id String Specifies the backend ECS ID. - listeners Array Specifies the listener with which the backend ECS is associated. - ============== ======== ================================================================================================ - - .. table:: **Table 3** **listeners** parameter description - - ========= ======== ================================================================ - Parameter **Type** Description - ========= ======== ================================================================ - id String Specifies the listener with which the backend ECS is associated. - ========= ======== ================================================================ - -- Example response - - .. code:: screen - - [ - { - "server_address": "172.16.0.16", - "id": "4ac8777333bc20777147ab160ea61baf", - "status": "ACTIVE", - "address": "100.64.27.96", - "listeners": [ - { - "id": "65093734fb966b3d70f6af26cc63e125" - }, - { - "id": "a659fe780a542e1adf204db767a021a3" - } - ], - "update_time": "2015-12-28 10:35:51", - "create_time": "2015-12-28 10:35:50", - "server_name": null, - "server_id": "97444148-7afb-47cc-b4a3-6e1c94d1ade4", - "health_status": "NORMAL" - }, - { - "server_address": "172.16.0.15", - "id": "d8a21f107a19d7bd1d05a1f764eb623a", - "status": "ACTIVE", - "address": "100.64.27.95", - "listeners": [ - { - "id": "65093734fb966b3d70f6af26cc63e125" - }, - { - "id": "a659fe780a542e1adf204db767a021a3" - } - ], - "update_time": "2015-12-28 10:35:51", - "create_time": "2015-12-28 10:35:50", - "server_name": null, - "server_id": "05b731db-d457-41dc-a824-862daba91a59", - "health_status": "ABNORMAL" - } - ] - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Backend ECS `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_jd_jk_0000.rst b/elb/api-ref/elb_jd_jk_0000.rst deleted file mode 100644 index de84a24f..00000000 --- a/elb/api-ref/elb_jd_jk_0000.rst +++ /dev/null @@ -1,9 +0,0 @@ -Health Check -============ - -- `Configuring a Health Check `__ -- `Deleting a Health Check `__ -- `Modifying a Health Check `__ -- `Querying Details of a Health Check `__ - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/elb_jd_jk_0001.rst b/elb/api-ref/elb_jd_jk_0001.rst deleted file mode 100644 index 398b1f47..00000000 --- a/elb/api-ref/elb_jd_jk_0001.rst +++ /dev/null @@ -1,217 +0,0 @@ -Configuring a Health Check -========================== - -Function -^^^^^^^^ - -This API is used to configure a health check for backend ECSs. - -URI -^^^ - -POST /v1.0/{project_id}/elbaas/healthcheck - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | project_id | Yes | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | Yes | String | Specifies the ID of the | - | | | | listener with which the | - | | | | health check is associated. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_protocol | No | String | - Specifies the health | - | | | | check protocol. A | - | | | | listener using UDP is | - | | | | not allowed for a | - | | | | private network load | - | | | | balancer. | - | | | | - The value can be | - | | | | **HTTP**, **TCP**, or | - | | | | **UDP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_uri | No | String | - Specifies the health | - | | | | check URI. This | - | | | | parameter is valid when | - | | | | **healthcheck_protocol** | - | | | | is **HTTP**. | - | | | | - The value can contain 1 | - | | | | to 80 characters that | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters such | - | | | | as -/.%?#&_= | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_connect_port | No | Integer | - Specifies the health | - | | | | check port. | - | | | | - The port number ranges | - | | | | from 1 to 65535. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthy_threshold | No | Integer | - Specifies the number of | - | | | | consecutive health | - | | | | checks when the health | - | | | | check result of a | - | | | | backend ECS changes from | - | | | | **fail** to **success**. | - | | | | - The value ranges from | - | | | | **1** to **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | unhealthy_threshold | No | Integer | - Specifies the number of | - | | | | consecutive health | - | | | | checks when the health | - | | | | check result of a | - | | | | backend ECS changes from | - | | | | **success** to **fail**. | - | | | | - The value ranges from | - | | | | **1** to **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_timeout | No | Integer | - Specifies the maximum | - | | | | time required for | - | | | | waiting for a response | - | | | | from the health check in | - | | | | the unit of second. | - | | | | - The value ranges from | - | | | | **1** to **50**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_interval | No | Integer | - Specifies the maximum | - | | | | time between health | - | | | | checks in the unit of | - | | | | second. | - | | | | - The value ranges from | - | | | | **1** to **50**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request 1: Configuring an HTTP health check - - .. code:: screen - - { - "healthcheck_connect_port": 80, - "healthcheck_interval": 5, - "healthcheck_protocol": "HTTP", - "healthcheck_timeout": 10, - "healthcheck_uri": "/", - "healthy_threshold": 3, - "listener_id": "3ce8c4429478a5eb6ef4930de2d75b28", - "unhealthy_threshold": 3 - } - -- Example request 2: Configuring a TCP health check - - .. code:: screen - - { - "healthcheck_connect_port": 80, - "healthcheck_interval": 5, - "healthcheck_protocol": "TCP", - "healthcheck_timeout": 10, - "healthcheck_uri": "", - "healthy_threshold": 3, - "listener_id": "3ce8c4429478a5eb6ef4930de2d75b28", - "unhealthy_threshold": 3 - } - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - +--------------------------+---------+-------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +==========================+=========+===============================================================================+ - | healthcheck_interval | Integer | Specifies the maximum time between health checks in the unit of second. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | listener_id | String | Specifies the ID of the listener with which the health check is associated. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | id | String | Specifies the health check ID. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | healthcheck_protocol | String | Specifies the health check protocol. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | unhealthy_threshold | Integer | Specifies the number of consecutive health checks when the health check | - | | | result of a backend ECS changes from **success** to **fail**. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | update_time | String | Specifies the time when the health check was updated. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | create_time | String | Specifies the time when the health check was configured. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | healthcheck_connect_port | Integer | Specifies the health check port. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | healthcheck_timeout | Integer | Specifies the maximum time required for waiting for a response from the | - | | | health check in the unit of second. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | healthcheck_uri | String | Specifies the health check URI. This parameter is valid when | - | | | **healthcheck_protocol** is **HTTP**. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - | healthy_threshold | Integer | Specifies the number of consecutive health checks when the health check | - | | | result of a backend ECS changes from **fail** to **success**. | - +--------------------------+---------+-------------------------------------------------------------------------------+ - -- Example response 1: Configuring an HTTP health check - - .. code:: screen - - { - "healthcheck_interval":5, - "listener_id":"3ce8c4429478a5eb6ef4930de2d75b28", - "id":"134e5ea962327c6a574b83e6e7f31f35", - "healthcheck_protocol":"HTTP", - "unhealthy_threshold":3, - "update_time":"2015-12-25 03:57:23", - "create_time":"2015-12-25 03:57:23", - "healthcheck_connect_port":80, - "healthcheck_timeout":10, - "healthcheck_uri":"\/", - "healthy_threshold":3 - } - -- Example response 2: Configuring a TCP health check - - .. code:: screen - - { - "healthcheck_interval":5, - "listener_id":"3ce8c4429478a5eb6ef4930de2d75b28", - "id":"134e5ea962327c6a574b83e6e7f31f35", - "healthcheck_protocol":"TCP", - "unhealthy_threshold":3, - "update_time":"2015-12-25 03:57:23", - "create_time":"2015-12-25 03:57:23", - "healthcheck_connect_port":80, - "healthcheck_timeout":10, - "healthcheck_uri":"", - "healthy_threshold":3 - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/elb_jd_jk_0002.rst b/elb/api-ref/elb_jd_jk_0002.rst deleted file mode 100644 index ac6e28de..00000000 --- a/elb/api-ref/elb_jd_jk_0002.rst +++ /dev/null @@ -1,65 +0,0 @@ -Deleting a Health Check -======================= - -Function -^^^^^^^^ - -This API is used to delete a health check. - -URI -^^^ - -DELETE /v1.0/{project_id}/elbaas/healthcheck/{healthcheck_id} - -.. table:: **Table 1** Parameter description - - ============== ============= ======== ============================== - Parameter **Mandatory** **Type** Description - ============== ============= ======== ============================== - project_id Yes String Specifies the project ID. - healthcheck_id Yes String Specifies the health check ID. - ============== ============= ======== ============================== - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - None - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -- Normal - - 204 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/elb_jd_jk_0003.rst b/elb/api-ref/elb_jd_jk_0003.rst deleted file mode 100644 index 5d676111..00000000 --- a/elb/api-ref/elb_jd_jk_0003.rst +++ /dev/null @@ -1,179 +0,0 @@ -Modifying a Health Check -======================== - -Function -^^^^^^^^ - -This API is used to modify information about a health check. - -URI -^^^ - -PUT /v1.0/{project_id}/elbaas/healthcheck/{healthcheck_id} - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | project_id | Yes | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_id | Yes | String | Specifies the health check | - | | | | ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_protocol | No | String | - Specifies the health | - | | | | check protocol. | - | | | | - The value can be | - | | | | **HTTP** or **TCP** | - | | | | (case-insensitive). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_uri | No | String | - Specifies the health | - | | | | check URI. This | - | | | | parameter is valid when | - | | | | **healthcheck_protocol** | - | | | | is **HTTP**. | - | | | | - The value can contain 1 | - | | | | to 80 characters that | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters such | - | | | | as -/.%?#&_= | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_connect_port | No | Integer | - Specifies the health | - | | | | check port. | - | | | | - The port number ranges | - | | | | from 1 to 65535. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthy_threshold | No | Integer | - Specifies the number of | - | | | | consecutive health | - | | | | checks when the health | - | | | | check result of a | - | | | | backend ECS changes from | - | | | | **fail** to **success**. | - | | | | - The value ranges from | - | | | | **1** to **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | unhealthy_threshold | No | Integer | - Specifies the number of | - | | | | consecutive health | - | | | | checks when the health | - | | | | check result of a | - | | | | backend ECS changes from | - | | | | **success** to **fail**. | - | | | | - The value ranges from | - | | | | **1** to **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_timeout | No | Integer | - Specifies the maximum | - | | | | time required for | - | | | | waiting for a response | - | | | | from the health check in | - | | | | the unit of second. | - | | | | - The value ranges from | - | | | | **1** to **50**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthcheck_interval | No | Integer | - Specifies the maximum | - | | | | time between health | - | | | | checks in the unit of | - | | | | second. | - | | | | - The value ranges from | - | | | | **1** to **50**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - .. code:: screen - - { - "healthcheck_connect_port": 88, - "healthcheck_interval": 5, - "healthcheck_protocol": "HTTP", - "healthcheck_timeout": 10, - "healthcheck_uri": "/", - "healthy_threshold": 3, - "unhealthy_threshold": 2 - } - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - +--------------------------+----------+------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +==========================+==========+==============================================================================+ - | healthcheck_interval | Integer | Specifies the maximum time between health checks in the unit of second. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | listener_id | String | Specifies the ID of the listener with which the health check is associated. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | id | String | Specifies the health check ID. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthcheck_protocol | String | Specifies the health check protocol. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | unhealthy_threshold | Integer | Specifies the number of consecutive health checks when the health check | - | | | result of a backend ECS changes from **success** to **fail**. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | update_time | String | Specifies the time when the certificate was updated. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | create_time | String | Specifies the time when the health check was created. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthcheck_connect_port | Integer | Specifies the health check port. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthcheck_timeout | Integer | Specifies the maximum time required for waiting for a response from the | - | | | health check in the unit of second. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthcheck_uri | String | Specifies the health check URI. This parameter is valid when | - | | | **healthcheck_protocol** is **HTTP**. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthy_threshold | Integer | Specifies the threshold at which the health check result is **success**, | - | | | that is, the number of consecutive successful health checks when the health | - | | | check result of a backend ECS changes from **fail** to **success**. | - +--------------------------+----------+------------------------------------------------------------------------------+ - -- Example response - - .. code:: screen - - { - "healthcheck_interval": 5, - "listener_id": "3ce8c4429478a5eb6ef4930de2d75b28", - "id": "134e5ea962327c6a574b83e6e7f31f35", - "healthcheck_protocol": "HTTP", - "unhealthy_threshold": 2, - "update_time": "2015-12-25 03:57:23", - "create_time": "2015-12-25 03:57:23", - "healthcheck_connect_port": 88, - "healthcheck_timeout": 10, - "healthcheck_uri": "/", - "healthy_threshold": 3 - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/elb_jd_jk_0004.rst b/elb/api-ref/elb_jd_jk_0004.rst deleted file mode 100644 index 7b23c976..00000000 --- a/elb/api-ref/elb_jd_jk_0004.rst +++ /dev/null @@ -1,110 +0,0 @@ -Querying Details of a Health Check -================================== - -Function -^^^^^^^^ - -This API is used to query details about a health check. - -URI -^^^ - -GET /v1.0/{project_id}/elbaas/healthcheck/{healthcheck_id} - -.. table:: **Table 1** Parameter description - - ============== ============= ======== ============================== - Parameter **Mandatory** **Type** Description - ============== ============= ======== ============================== - project_id Yes String Specifies the project ID. - healthcheck_id Yes String Specifies the health check ID. - ============== ============= ======== ============================== - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - +--------------------------+----------+------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +==========================+==========+==============================================================================+ - | healthcheck_interval | Integer | Specifies the maximum time between health checks in the unit of second. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | listener_id | String | Specifies the ID of the listener with which the health check is associated. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | id | String | Specifies the health check ID. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthcheck_protocol | String | Specifies the health check protocol. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | unhealthy_threshold | Integer | Specifies the number of consecutive health checks when the health check | - | | | result of a backend ECS changes from **success** to **fail**. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | update_time | String | Specifies the time when the health check was updated. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | create_time | String | Specifies the time when the health check was configured. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthcheck_connect_port | Integer | Specifies the health check port. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthcheck_timeout | Integer | Specifies the maximum time required for waiting for a response from the | - | | | health check in the unit of second. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthcheck_uri | String | Specifies the health check URI. This parameter is valid when | - | | | **healthcheck_protocol** is **HTTP**. | - +--------------------------+----------+------------------------------------------------------------------------------+ - | healthy_threshold | Integer | Specifies the threshold at which the health check result is **success**, | - | | | that is, the number of consecutive successful health checks when the health | - | | | check result of a backend ECS changes from **fail** to **success**. | - +--------------------------+----------+------------------------------------------------------------------------------+ - -- Example response - - .. code:: screen - - { - "healthcheck_interval": 5, - "listener_id": "3ce8c4429478a5eb6ef4930de2d75b28", - "id": "134e5ea962327c6a574b83e6e7f31f35", - "healthcheck_protocol": "HTTP", - "unhealthy_threshold": 2, - "update_time": "2015-12-25 03:57:23", - "create_time": "2015-12-25 03:57:23", - "healthcheck_connect_port": 88, - "healthcheck_timeout": 10, - "healthcheck_uri": "/", - "healthy_threshold": 3 - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/elb_jd_job_0000.rst b/elb/api-ref/elb_jd_job_0000.rst deleted file mode 100644 index 523dbd4e..00000000 --- a/elb/api-ref/elb_jd_job_0000.rst +++ /dev/null @@ -1,173 +0,0 @@ -Querying the Job Status -======================= - -Function -^^^^^^^^ - -This API is used to query the job status, such as the execution status of creating or deleting a load balancer. - -URI -^^^ - -GET /v1.0/{project_id}/jobs/{job_id} - -.. table:: **Table 1** Parameter description - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - job_id Yes String Specifies the job ID. - ========== ========= ====== ========================= - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | status | Yes | String | Specifies the job status. | - | | | | | - | | | | - **SUCCESS**: The job was | - | | | | successfully executed. | - | | | | - **RUNNING**: The job is | - | | | | in progress. | - | | | | - **FAIL**: The job | - | | | | failed. | - | | | | - **INIT**: The job is | - | | | | being initialized. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | entities | Yes | Object | Specifies the response to | - | | | | the job. Each type of job | - | | | | has different contents. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | job_id | Yes | String | Specifies the job ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | job_type | Yes | String | Specifies the job type. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | begin_time | Yes | String | Specifies the time when the | - | | | | job started. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | end_time | Yes | String | Specifies the time when the | - | | | | job ended. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | error_code | Yes | String | Specifies the error code | - | | | | returned after the job | - | | | | fails to execute. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | fail_reason | Yes | String | Indicates the cause of the | - | | | | execution failure. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | message | No | String | Specifies the message | - | | | | returned when an error | - | | | | occurs. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | code | No | String | Specifies the error code | - | | | | returned when an error | - | | | | occurs. | - | | | | | - | | | | For details of error code, | - | | | | see `Error | - | | | | Codes `__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | sub_jobs | No | String | Specifies the execution | - | | | | information of a subjob. | - | | | | When no subjob exists, the | - | | | | value of this parameter is | - | | | | left empty. The structure | - | | | | of each subjob is similar | - | | | | to that of the parent job. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -- Example response - - .. code:: screen - - { - "status": "SUCCESS", - "entities": - { - "elb": - { - "id": "ef265755daf84333baf4ddc1d91cbc2f", - "name": "1", - "type": "External", - "status": "ACTIVE", - "bandwidth": 1, - "vip_address": "10.154.53.4", - "tenant_id": "cbc08e2f8c354c7aa7abb88d0a7d11dc", - "admin_state_up": false, - "vpc_id": "21838be1-c1ce-4c09-9184-228cdb43038d" - } - }, - "job_id": "ff8080825ecc523f015ecd0a98f82f77", - "job_type": "createELB", - "begin_time": "2017-09-29T09:49:37.399Z", - "end_time": "2017-09-29T09:50:03.272Z", - "error_code": null, - "fail_reason": null - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - +-------------+-------------------------------+----------------------------------------------------------------------+ - | Status Code | Message | Description | - +=============+===============================+======================================================================+ - | 400 | Bad Request | The server failed to process the request. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 401 | Unauthorized | You must enter a username and the password to access the requested | - | | | page. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 403 | Forbidden | You are forbidden to access the requested page. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 404 | Not Found | The server could not find the requested page. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 405 | Method Not Allowed | You are not allowed to use the method specified in the request. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 406 | Not Acceptable | Response generated by the server is not acceptable to the client. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 407 | Proxy Authentication Required | You must use the proxy server for authentication so that the request | - | | | can be processed. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 408 | Request Timeout | The request timed out. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 409 | Conflict | The request could not be processed due to a conflict. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 500 | Internal Server Error | Failed to complete the request because of an internal service error. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 501 | Not Implemented | Failed to complete the request because the server does not support | - | | | the requested function. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 502 | Bad Gateway | Failed to complete the request because the server has received an | - | | | invalid response. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 503 | Service Unavailable | Failed to complete the request because the system is out of service | - | | | temporarily. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - | 504 | Gateway Timeout | A gateway timeout error occurred. | - +-------------+-------------------------------+----------------------------------------------------------------------+ - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/elb_jd_jt_0000.rst b/elb/api-ref/elb_jd_jt_0000.rst deleted file mode 100644 index 73f88304..00000000 --- a/elb/api-ref/elb_jd_jt_0000.rst +++ /dev/null @@ -1,10 +0,0 @@ -Listener -======== - -- `Adding a Listener `__ -- `Deleting a Listener `__ -- `Modifying a Listener `__ -- `Querying Details of a Listener `__ -- `Querying Listeners `__ - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/elb_jd_jt_0001.rst b/elb/api-ref/elb_jd_jt_0001.rst deleted file mode 100644 index de5ed2a0..00000000 --- a/elb/api-ref/elb_jd_jt_0001.rst +++ /dev/null @@ -1,471 +0,0 @@ -Adding a Listener -================= - -Function -^^^^^^^^ - -This API is used to add a listener to a load balancer. - -URI -^^^ - -POST /v1.0/{project_id}/elbaas/listeners - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | project_id | Yes | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | Yes | String | - Specifies the listener | - | | | | name. | - | | | | - The value can contain 1 | - | | | | to 64 characters that | - | | | | consist of letters, | - | | | | digits, underscores (_), | - | | | | and hyphens (-). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | - Provides supplementary | - | | | | information about the | - | | | | listener. | - | | | | - The value contains 0 to | - | | | | 128 characters and | - | | | | cannot contain angle | - | | | | brackets (< and >). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | Yes | String | Specifies the load balancer | - | | | | ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | Yes | String | - Specifies the protocol | - | | | | used by the listener. | - | | | | - The value can be | - | | | | **HTTP**, **TCP**, | - | | | | **HTTPS**, **SSL**, or | - | | | | **UDP**. | - | | | | - A UDP listener cannot be | - | | | | added to a private | - | | | | network load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | port | Yes | Integer | - Specifies the port used | - | | | | by the listener. | - | | | | - The port number ranges | - | | | | from 1 to 65535. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | backend_protocol | Yes | String | - Specifies the backend | - | | | | ECS protocol. | - | | | | | - | | | | If **protocol** is set | - | | | | to **UDP**, the value of | - | | | | this parameter can only | - | | | | be **UDP**. | - | | | | | - | | | | If **protocol** is set | - | | | | to **SSL**, the value of | - | | | | this parameter can only | - | | | | be **TCP**. | - | | | | | - | | | | - The value can be | - | | | | **HTTP**, **TCP**, or | - | | | | **UDP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | backend_port | Yes | Integer | - Specifies the port used | - | | | | by backend ECSs. | - | | | | - The port number ranges | - | | | | from 1 to 65535. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | lb_algorithm | Yes | String | - Specifies the load | - | | | | balancing algorithm. | - | | | | - The value can be | - | | | | **roundrobin**, | - | | | | **leastconn**, or | - | | | | **source**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | session_sticky | No | Boolean | - Specifies whether to | - | | | | enable the sticky | - | | | | session feature. | - | | | | - The value can be | - | | | | **true** or **false**. | - | | | | The feature is enabled | - | | | | when the value is | - | | | | **true**. | - | | | | - If **protocol** is set | - | | | | to **SSL**, the sticky | - | | | | session feature is not | - | | | | supported and the | - | | | | parameter is invalid. | - | | | | - If **protocol** is set | - | | | | to **HTTP**, **HTTPS**, | - | | | | or **TCP** and | - | | | | **lb_algorithm** is not | - | | | | **roundrobin**, the | - | | | | value of this parameter | - | | | | can only be **false**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | sticky_session_type | No | String | Specifies where the cookie | - | | | | is from. The only value is | - | | | | **insert**, indicating that | - | | | | the cookie is inserted by | - | | | | the load balancer. | - | | | | | - | | | | - This parameter is valid | - | | | | when **protocol** is set | - | | | | to **HTTP** and | - | | | | **session_sticky** to | - | | | | **true**. | - | | | | - This parameter is | - | | | | invalid when | - | | | | **protocol** is set to | - | | | | **TCP**, **SSL**, or | - | | | | **UDP**, which means | - | | | | that the parameter is | - | | | | unavailable or its value | - | | | | is set to **null**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | cookie_timeout | No | Integer | - Specifies the cookie | - | | | | timeout duration. This | - | | | | parameter is valid when | - | | | | **protocol** is set to | - | | | | **HTTP**, | - | | | | **session_sticky** to | - | | | | **true**, and | - | | | | **sticky_session_type** | - | | | | to **insert**. This | - | | | | parameter is invalid | - | | | | when **protocol** is set | - | | | | to **TCP**, **SSL**, or | - | | | | **UDP**. | - | | | | - The value ranges from | - | | | | **1** to **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tcp_timeout | No | Integer | - Specifies the TCP | - | | | | session timeout | - | | | | duration. This parameter | - | | | | is valid when | - | | | | **protocol** is set to | - | | | | **TCP**. | - | | | | - The value ranges from | - | | | | **1** to **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tcp_draining | No | Boolean | - Specifies whether to | - | | | | maintain TCP connections | - | | | | to a backend ECS that | - | | | | has been removed. This | - | | | | parameter is valid when | - | | | | **protocol** is set to | - | | | | **TCP**. | - | | | | - The value can be | - | | | | **true** or **false**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tcp_draining_timeout | No | Integer | - Specifies the timeout | - | | | | duration for maintaining | - | | | | TCP connections to a | - | | | | backend ECS that has | - | | | | been removed in the unit | - | | | | of minute. | - | | | | | - | | | | This parameter is valid | - | | | | when **protocol** is set | - | | | | to **TCP** and | - | | | | **tcp_draining** to | - | | | | **true**. | - | | | | | - | | | | - The value ranges from | - | | | | **0** to **60**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificate_id | No | String | - Specifies the | - | | | | certificate ID. This | - | | | | parameter is mandatory | - | | | | when **protocol** is set | - | | | | to **HTTPS** or **SSL**. | - | | | | - The ID can be obtained | - | | | | from the certificate | - | | | | list. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificates | No | String | - Lists the certificate | - | | | | IDs if **protocol** is | - | | | | set to **HTTPS**. | - | | | | - This parameter is | - | | | | mandatory in the SNI | - | | | | scenario and is valid | - | | | | only when the load | - | | | | balancer is a public | - | | | | network load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | udp_timeout | No | Integer | - Specifies the UDP | - | | | | session timeout | - | | | | duration. This parameter | - | | | | is valid when | - | | | | **protocol** is set to | - | | | | **UDP**. | - | | | | - The value ranges from | - | | | | **1** to **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ssl_protocols | No | String | - Specifies the supported | - | | | | SSL/TLS protocol | - | | | | version. This parameter | - | | | | is available only when | - | | | | **protocol** is set to | - | | | | **HTTPS** or **SSL**. | - | | | | - The value can be **TLS | - | | | | 1.2** or **TLS 1.2 TLS | - | | | | 1.1 TLS 1.0**, and the | - | | | | default value is **TLS | - | | | | 1.2**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ssl_ciphers | No | String | - Specifies the cipher | - | | | | suites supported by a | - | | | | specific SSL/TLS | - | | | | protocol version. This | - | | | | parameter is available | - | | | | only when **protocol** | - | | | | is set to **HTTPS** or | - | | | | **SSL**. | - | | | | | - | | | | - The value is | - | | | | **Default**, | - | | | | **Extended**, or | - | | | | **Strict**. | - | | | | | - | | | | The value of **Default** | - | | | | is | - | | | | | - | | | | **ECDHE-RSA-AES256-GCM-SHA3 | - | | | | 84:ECDHE-RSA-AES128-GCM-SHA | - | | | | 256:ECDHE-RSA-AES256-SHA384 | - | | | | :ECDHE-RSA-AES128-SHA256**. | - | | | | | - | | | | The value of | - | | | | **Extended** is | - | | | | **ECDHE-ECDSA- | - | | | | AES128-SHA256:ECDHE-RSA-AES | - | | | | 128-SHA256:AES128-SHA256:AE | - | | | | S256-SHA256:ECDHE-ECDSA-AES | - | | | | 256-SHA384:ECDHE-RSA-AES256 | - | | | | -SHA384:ECDHE-ECDSA-AES128- | - | | | | SHA:ECDHE-RSA-AES128-SHA:DH | - | | | | E-RSA-AES128-SHA:ECDHE-RSA- | - | | | | AES256-SHA:ECDHE-ECDSA-AES2 | - | | | | 56-SHA:AES128-SHA:AES256-SH | - | | | | A:DHE-DSS-AES128-SHA:CAMELL | - | | | | IA128-SHA:EDH-RSA-DES-CBC3- | - | | | | SHA:DES-CBC3-SHA:ECDHE-RSA- | - | | | | RC4-SHA:RC4-SHA:DHE-RSA-AES | - | | | | 256-SHA:DHE-DSS-AES256-SHA: | - | | | | DHE-RSA-CAMELLIA256-SHA:DHE | - | | | | -DSS-CAMELLIA256-SHA:CAMELL | - | | | | IA256-SHA:EDH-DSS-DES-CBC3- | - | | | | SHA:DHE-RSA-CAMELLIA128-SHA | - | | | | :DHE-DSS-CAMELLIA128-SHA**. | - | | | | | - | | | | The value of **Strict** | - | | | | is | - | | | | **ECDH | - | | | | E-RSA-AES256-GCM-SHA384:ECD | - | | | | HE-RSA-AES128-GCM-SHA256**. | - | | | | | - | | | | The default value is | - | | | | **Default**. When | - | | | | **ssl_protocols** is set | - | | | | to **TLS 1.2 TLS 1.1 TLS | - | | | | 1.0**, this parameter | - | | | | can only be set to | - | | | | **Extended**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - .. code:: screen - - { - "name": "listener1", - "description": "", - "loadbalancer_id": "0b07acf06d243925bc24a0ac7445267a", - "protocol": "HTTP", - "port": 88, - "backend_protocol": "HTTP", - "backend_port": 80, - "lb_algorithm": "roundrobin", - "session_sticky": true, - "sticky_session_type": "insert", - "cookie_timeout": 100, - "tcp_draining": true, - "tcp_draining_timeout": 5 - } - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | update_time | String | Specifies the time when the listener | - | | | was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | backend_port | Integer | Specifies the port used by backend | - | | | ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | backend_protocol | String | Specifies the protocol used by | - | | | backend ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sticky_session_type | String | Specifies where the cookie is from. | - | | | The only value is **insert**, | - | | | indicating that the cookie is | - | | | inserted by the load balancer. This | - | | | parameter is valid when **protocol** | - | | | is set to **HTTP** and | - | | | **session_sticky** to **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancer_id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the listener | - | | | was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status | String | Specifies the listener status. The | - | | | value can be **ACTIVE**, | - | | | **PENDING_CREATE**, or **ERROR**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used for load | - | | | balancing at Layer 4 or Layer 7. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | port | Integer | Specifies the port used by the | - | | | listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | cookie_timeout | Integer | - Specifies the cookie timeout | - | | | duration in the unit of minute. | - | | | This parameter is valid when | - | | | **session_sticky** is set to | - | | | **true** and | - | | | **sticky_session_type** to | - | | | **insert**. | - | | | - The value ranges from **1** to | - | | | **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | - Specifies the administrative | - | | | status of the load balancer. | - | | | | - | | | - Two options are available: | - | | | | - | | | **false**: The load balancer is | - | | | disabled. | - | | | | - | | | **true**: The load balancer is | - | | | running properly. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_sticky | Boolean | Specifies whether to enable the | - | | | sticky session feature. The feature | - | | | is enabled when the value is | - | | | **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tcp_draining | Boolean | - Specifies whether to maintain TCP | - | | | connections to a backend ECS that | - | | | has been removed. This parameter | - | | | is valid when **protocol** is set | - | | | to **TCP**. | - | | | - The value can be **true** or | - | | | **false**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tcp_draining_timeout | Integer | - Specifies the timeout duration for | - | | | maintaining TCP connections to a | - | | | backend ECS that has been removed | - | | | in the unit of minute. | - | | | | - | | | This parameter is valid when | - | | | **protocol** is set to **TCP** and | - | | | **tcp_draining** to **true**. | - | | | | - | | | - The value ranges from **0** to | - | | | **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ssl_protocols | String | - Specifies the supported SSL/TLS | - | | | protocol version. | - | | | - This parameter is available only | - | | | when **protocol** is set to | - | | | **HTTPS** or **SSL**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ssl_ciphers | String | - Specifies the cipher suite of an | - | | | encryption protocol. | - | | | - This parameter is available only | - | | | when **protocol** is set to | - | | | **HTTPS** or **SSL**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate_id | String | - Specifies the default certificate | - | | | ID. | - | | | - This parameter is available only | - | | | when **protocol** is set to | - | | | **HTTPS** or **SSL**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificates | String | - Lists the certificate IDs if | - | | | **protocol** is set to **HTTPS**. | - | | | - This parameter is mandatory in the | - | | | SNI scenario. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -- Example response - - .. code:: screen - - { - "update_time": "2015-09-15 07:41:17", - "backend_port": 80, - "tcp_draining": true, - "id": "248425d7b97dc26920eb23720115e068", - "backend_protocol": "HTTP", - "sticky_session_type": "insert", - "description": "", - "loadbalancer_id": "0b07acf06d243925bc24a0ac7445267a", - "create_time": "2015-09-15 07:41:17", - "status": "ACTIVE", - "protocol": "TCP", - "port": 88, - "cookie_timeout": 100, - "admin_state_up": true, - "session_sticky": true, - "lb_algorithm": "roundrobin", - "name": "listener1", - "tcp_draining": true, - "tcp_draining_timeout": 5 - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/elb_jd_jt_0002.rst b/elb/api-ref/elb_jd_jt_0002.rst deleted file mode 100644 index fd761dc8..00000000 --- a/elb/api-ref/elb_jd_jt_0002.rst +++ /dev/null @@ -1,65 +0,0 @@ -Deleting a Listener -=================== - -Function -^^^^^^^^ - -This API is used to delete a listener. - -URI -^^^ - -DELETE /v1.0/{project_id}/elbaas/listeners/{listener_id} - -.. table:: **Table 1** Parameter description - - =========== ============= ======== ========================== - Parameter **Mandatory** **Type** Description - =========== ============= ======== ========================== - project_id Yes String Specifies the project ID. - listener_id Yes String Specifies the listener ID. - =========== ============= ======== ========================== - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - None - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -- Normal - - 204 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/elb_jd_jt_0003.rst b/elb/api-ref/elb_jd_jt_0003.rst deleted file mode 100644 index 75aafc50..00000000 --- a/elb/api-ref/elb_jd_jt_0003.rst +++ /dev/null @@ -1,385 +0,0 @@ -Modifying a Listener -==================== - -Function -^^^^^^^^ - -This API is used to modify the listener information, including the listener name, description, and status. - -URI -^^^ - -PUT /v1.0/{project_id}/elbaas/listeners/{listener_id} - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | project_id | Yes | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | Yes | String | Specifies the listener ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | - Specifies the listener | - | | | | name. | - | | | | - The value can contain 1 | - | | | | to 64 characters that | - | | | | consist of letters, | - | | | | digits, underscores (_), | - | | | | and hyphens (-). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | - Provides supplementary | - | | | | information about the | - | | | | listener. | - | | | | - The value contains 0 to | - | | | | 128 characters and | - | | | | cannot contain angle | - | | | | brackets (< and >). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | port | No | Integer | - Specifies the port used | - | | | | by the listener. | - | | | | - The port number ranges | - | | | | from 1 to 65535. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | backend_port | No | Integer | - Specifies the port used | - | | | | by backend ECSs. | - | | | | - The port number ranges | - | | | | from 1 to 65535. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | lb_algorithm | No | String | - Specifies the load | - | | | | balancing algorithm. | - | | | | - The value can be | - | | | | **roundrobin**, | - | | | | **leastconn**, or | - | | | | **source**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tcp_timeout | No | Integer | - Specifies the TCP | - | | | | session timeout | - | | | | duration. This parameter | - | | | | is valid when | - | | | | **protocol** is set to | - | | | | **TCP**. | - | | | | - The value ranges from | - | | | | **1** to **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tcp_draining | No | Boolean | - Specifies whether to | - | | | | maintain TCP connections | - | | | | to a backend ECS that | - | | | | has been removed. This | - | | | | parameter is valid when | - | | | | **protocol** is set to | - | | | | **TCP**. | - | | | | - The value can be | - | | | | **true** or **false**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tcp_draining_timeout | No | Integer | - Specifies the timeout | - | | | | duration for maintaining | - | | | | TCP connections to a | - | | | | backend ECS that has | - | | | | been removed in the unit | - | | | | of minute. | - | | | | | - | | | | This parameter is valid | - | | | | when **protocol** is set | - | | | | to **TCP** and | - | | | | **tcp_draining** to | - | | | | **true**. | - | | | | | - | | | | - The value ranges from | - | | | | **0** to **60**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | udp_timeout | No | Integer | - Specifies the UDP | - | | | | session timeout | - | | | | duration. This parameter | - | | | | is valid when | - | | | | **protocol** is set to | - | | | | **UDP**. | - | | | | - The value ranges from | - | | | | **1** to **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ssl_protocols | No | String | - Specifies the supported | - | | | | SSL/TLS protocol | - | | | | version. This parameter | - | | | | is available only when | - | | | | **protocol** is set to | - | | | | **HTTPS** or **SSL**. | - | | | | - The value can be **TLS | - | | | | 1.2** or **TLS 1.2 TLS | - | | | | 1.1 TLS 1.0**, and the | - | | | | default value is **TLS | - | | | | 1.2**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ssl_ciphers | No | String | - Specifies the cipher | - | | | | suites supported by a | - | | | | specific SSL/TLS | - | | | | protocol version. This | - | | | | parameter is available | - | | | | only when **protocol** | - | | | | is set to **HTTPS** or | - | | | | **SSL**. | - | | | | | - | | | | - The value is | - | | | | **Default**, | - | | | | **Extended**, or | - | | | | **Strict**. | - | | | | | - | | | | The value of **Default** | - | | | | is | - | | | | | - | | | | **ECDHE-RSA-AES256-GCM-SHA3 | - | | | | 84:ECDHE-RSA-AES128-GCM-SHA | - | | | | 256:ECDHE-RSA-AES256-SHA384 | - | | | | :ECDHE-RSA-AES128-SHA256**. | - | | | | | - | | | | The value of | - | | | | **Extended** is | - | | | | **ECDHE-ECDSA- | - | | | | AES128-SHA256:ECDHE-RSA-AES | - | | | | 128-SHA256:AES128-SHA256:AE | - | | | | S256-SHA256:ECDHE-ECDSA-AES | - | | | | 256-SHA384:ECDHE-RSA-AES256 | - | | | | -SHA384:ECDHE-ECDSA-AES128- | - | | | | SHA:ECDHE-RSA-AES128-SHA:DH | - | | | | E-RSA-AES128-SHA:ECDHE-RSA- | - | | | | AES256-SHA:ECDHE-ECDSA-AES2 | - | | | | 56-SHA:AES128-SHA:AES256-SH | - | | | | A:DHE-DSS-AES128-SHA:CAMELL | - | | | | IA128-SHA:EDH-RSA-DES-CBC3- | - | | | | SHA:DES-CBC3-SHA:ECDHE-RSA- | - | | | | RC4-SHA:RC4-SHA:DHE-RSA-AES | - | | | | 256-SHA:DHE-DSS-AES256-SHA: | - | | | | DHE-RSA-CAMELLIA256-SHA:DHE | - | | | | -DSS-CAMELLIA256-SHA:CAMELL | - | | | | IA256-SHA:EDH-DSS-DES-CBC3- | - | | | | SHA:DHE-RSA-CAMELLIA128-SHA | - | | | | :DHE-DSS-CAMELLIA128-SHA**. | - | | | | | - | | | | The value of **Strict** | - | | | | is | - | | | | **ECDH | - | | | | E-RSA-AES256-GCM-SHA384:ECD | - | | | | HE-RSA-AES128-GCM-SHA256**. | - | | | | | - | | | | The default value is | - | | | | **Default**. When | - | | | | **ssl_protocols** is set | - | | | | to **TLS 1.2 TLS 1.1 TLS | - | | | | 1.0**, this parameter | - | | | | can only be set to | - | | | | **Extended**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificate_id | No | String | - Specifies the default | - | | | | certificate ID. This | - | | | | parameter is mandatory | - | | | | when **protocol** is set | - | | | | to **HTTPS** or **SSL**. | - | | | | - The ID can be obtained | - | | | | from the certificate | - | | | | list. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificates | No | String | - Lists the certificate | - | | | | IDs if **protocol** is | - | | | | set to **HTTPS**. | - | | | | - This parameter is | - | | | | mandatory in the SNI | - | | | | scenario. | - | | | | - This parameter is valid | - | | | | only when the load | - | | | | balancer is a public | - | | | | network load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - .. code:: screen - - { - "name": "lis", - "description": "", - "port": 9090, - "backend_port": 9090, - "lb_algorithm": "roundrobin" - } - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | update_time | String | Specifies the time when the listener | - | | | was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | backend_port | Integer | Specifies the port used by backend | - | | | ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the listener ID in UUID | - | | | format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | backend_protocol | String | Specifies the protocol used by | - | | | backend ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sticky_session_type | String | Specifies where the cookie is from. | - | | | The only value is **insert**, | - | | | indicating that the cookie is | - | | | inserted by the load balancer. | - | | | | - | | | - This parameter is valid when | - | | | **protocol** is set to **HTTP** | - | | | and **session_sticky** to | - | | | **true**. | - | | | - This parameter is invalid when | - | | | **protocol** is set to **TCP**, | - | | | **SSL**, or **UDP**, which means | - | | | that the parameter is unavailable | - | | | or its value is set to **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancer_id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the listener | - | | | was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status | String | Specifies the listener status. The | - | | | value can be **ACTIVE**, | - | | | **PENDING_CREATE**, or **ERROR**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used for load | - | | | balancing at Layer 4 or Layer 7. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | port | Integer | Specifies the port used by the | - | | | listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | cookie_timeout | Integer | - Specifies the cookie timeout | - | | | duration. This parameter is valid | - | | | when **session_sticky** is set to | - | | | **true** and | - | | | **sticky_session_type** to | - | | | **insert**. | - | | | - The value ranges from **1** to | - | | | **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | - Specifies the administrative | - | | | status of the load balancer. | - | | | | - | | | - Two options are available: | - | | | | - | | | **false**: The load balancer is | - | | | disabled. | - | | | | - | | | **true**: The load balancer is | - | | | running properly. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthcheck_id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_sticky | Boolean | Specifies whether to enable the | - | | | sticky session feature. The feature | - | | | is enabled when the value is | - | | | **true**. This parameter is valid | - | | | only when **protocol** is set to | - | | | **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tcp_draining | Boolean | - Specifies whether to maintain TCP | - | | | connections to a backend ECS that | - | | | has been removed. This parameter | - | | | is valid when **protocol** is set | - | | | to **TCP**. | - | | | - The value can be **true** or | - | | | **false**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tcp_draining_timeout | Integer | - Specifies the timeout duration for | - | | | maintaining TCP connections to a | - | | | backend ECS that has been removed. | - | | | The unit is minute. | - | | | | - | | | This parameter is valid when | - | | | **protocol** is set to **TCP** and | - | | | **tcp_draining** to **true**. | - | | | | - | | | - The value ranges from **0** to | - | | | **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate_id | String | Specifies the ID of the SSL | - | | | certificate for security | - | | | authentication. | - | | | | - | | | This parameter is mandatory when | - | | | **protocol** is set to **HTTPS** or | - | | | **SSL**. Otherwise, the parameter | - | | | value is **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificates | String | Lists the certificate IDs if | - | | | **protocol** is set to **HTTPS**. | - | | | | - | | | This parameter is mandatory in the | - | | | SNI scenario. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -- Example response - - .. code:: screen - - { - "update_time": "2016-12-01 07:12:59", - "backend_port": 9090, - "id": "a824584fb3ba4d39ba0cf372c7cbbb67", - "backend_protocol": "TCP", - "sticky_session_type": null, - "certificate_id": null, - "description": "", - "loadbalancer_id": "f54c65b1b5dd4a4f95b71b44796ac013", - "create_time": "2016-12-01 07:12:43", - "admin_state_up": false, - "status": "ACTIVE", - "protocol": "TCP", - "cookie_timeout": 100, - "port": 9092, - "tcp_draining": true, - "tcp_timeout": 1, - "lb_algorithm": "roundrobin", - "healthcheck_id": null, - "session_sticky": true, - "tcp_draining_timeout": 5, - "name": "lis" - - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/elb_jd_jt_0004.rst b/elb/api-ref/elb_jd_jt_0004.rst deleted file mode 100644 index 6709dbc3..00000000 --- a/elb/api-ref/elb_jd_jt_0004.rst +++ /dev/null @@ -1,235 +0,0 @@ -Querying Details of a Listener -============================== - -Function -^^^^^^^^ - -This API is used to query details about a listener. - -URI -^^^ - -GET /v1.0/{project_id}/elbaas/listeners/{listener_id} - -.. table:: **Table 1** Parameter description - - =========== ============= ======== ========================== - Parameter **Mandatory** **Type** Description - =========== ============= ======== ========================== - project_id Yes String Specifies the project ID. - listener_id Yes String Specifies the listener ID. - =========== ============= ======== ========================== - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | update_time | String | Specifies the time when the listener | - | | | was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | backend_port | Integer | Specifies the port used by backend | - | | | ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | backend_protocol | String | Specifies the protocol used by | - | | | backend ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sticky_session_type | String | Specifies where the cookie is from. | - | | | The only value is **insert**, | - | | | indicating that the cookie is | - | | | inserted by the load balancer. | - | | | | - | | | - This parameter is valid when | - | | | **protocol** is set to **HTTP** | - | | | and **session_sticky** to | - | | | **true**. The default value is | - | | | **insert**. | - | | | - This parameter is invalid when | - | | | **protocol** is set to **TCP**, | - | | | which means that the parameter is | - | | | unavailable or its value is set to | - | | | **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancer_id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the listener | - | | | was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status | String | Specifies the listener status. The | - | | | value can be **ACTIVE**, | - | | | **PENDING_CREATE**, or **ERROR**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used for load | - | | | balancing at Layer 4 or Layer 7. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | port | Integer | Specifies the port used by the | - | | | listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | cookie_timeout | Integer | - Specifies the cookie timeout | - | | | duration. This parameter is valid | - | | | when **session_sticky** is set to | - | | | **true** and | - | | | **sticky_session_type** to | - | | | **insert**. | - | | | - The value ranges from **1** to | - | | | **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | - Specifies the administrative | - | | | status of the load balancer. | - | | | | - | | | - Two options are available: | - | | | | - | | | **false**: The load balancer is | - | | | disabled. | - | | | | - | | | **true**: The load balancer is | - | | | running properly. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | member_number | Integer | Specifies the quantity of backend | - | | | ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthcheck_id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_sticky | Boolean | Specifies whether to enable the | - | | | sticky session feature. The feature | - | | | is enabled when the value is | - | | | **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate_id | String | Specifies the ID of the SSL | - | | | certificate for security | - | | | authentication. | - | | | | - | | | This parameter is mandatory when | - | | | **protocol** is set to **HTTPS** or | - | | | **SSL**. Otherwise, the parameter | - | | | value is **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificates | String | Lists the certificate IDs if | - | | | **protocol** is set to **HTTPS**. | - | | | | - | | | This parameter is mandatory in the | - | | | SNI scenario. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tcp_timeout | Integer | Specifies the TCP session timeout | - | | | duration. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | udp_timeout | Integer | Specifies the UDP session timeout | - | | | duration. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ssl_protocols | String | Specifies the supported SSL/TLS | - | | | protocol version. This parameter is | - | | | available only when **protocol** is | - | | | set to **HTTPS** or **SSL**. | - | | | | - | | | NOTE: | - | | | For HTTPS listeners in versions | - | | | earlier than 1.2.8, the parameter | - | | | value is **TLS 1.2**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ssl_ciphers | String | Specifies the cipher suite of an | - | | | encryption protocol. This parameter | - | | | is available only when **protocol** | - | | | is set to **HTTPS** or **SSL**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -- Example response - - .. code:: screen - - { - "update_time": "2015-09-15 07:41:17", - "backend_port": 80, - "id": "248425d7b97dc26920eb23720115e068", - "backend_protocol": "TCP", - "sticky_session_type": "insert", - "description": "", - "loadbalancer_id": "0b07acf06d243925bc24a0ac7445267a", - "create_time": "2015-09-15 07:41:17", - "status": "ACTIVE", - "protocol": "TCP", - "port": 88, - "cookie_timeout": 100, - "admin_state_up": true, - "member_number": 0, - "healthcheck_id": null, - "session_sticky": true, - "lb_algorithm": "roundrobin", - "name": "listener1", - "tcp_draining": true, - "tcp_draining_timeout": 5 - } - - .. code:: screen - - { - "update_time": "2016-12-01 07:12:59", - "backend_port": 9090, - "id": "a824584fb3ba4d39ba0cf372c7cbbb67", - "backend_protocol": "TCP", - "sticky_session_type": null, - "certificate_id": null, - "description": "", - "loadbalancer_id": "f54c65b1b5dd4a4f95b71b44796ac013", - "lb_algorithm": "roundrobin", - "create_time": "2016-12-01 07:12:43", - "admin_state_up": false, - "status": "ACTIVE", - "protocol": "TCP", - "cookie_timeout": 100, - "port": 9092, - "tcp_draining": 1, - "tcp_timeout": 1, - "member_number": 0, - "healthcheck_id": null, - "session_sticky": true, - "tcp_draining_timeout": 5, - "name": "lis" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/elb_jd_jt_0005.rst b/elb/api-ref/elb_jd_jt_0005.rst deleted file mode 100644 index a4750850..00000000 --- a/elb/api-ref/elb_jd_jt_0005.rst +++ /dev/null @@ -1,241 +0,0 @@ -Querying Listeners -================== - -Function -^^^^^^^^ - -This API is used to query listeners using search criteria and display them in a list. - -URI -^^^ - -GET /v1.0/{project_id}/elbaas/listeners?loadbalancer_id={loadbalancer_id} - -|image1| - -Enter a question mark (?) and an ampersand (&) at the end of the URI to define multiple search criteria. You can filter the listeners using the parameters in the response except **update_time**, **create_time**, **admin_state_up**, **session_sticky**, and **member_number**. - -.. table:: **Table 1** Parameter description - - =============== ============= ======== =============================== - Parameter **Mandatory** **Type** Description - =============== ============= ======== =============================== - project_id Yes String Specifies the project ID. - loadbalancer_id No String Specifies the load balancer ID. - =============== ============= ======== =============================== - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | update_time | String | Specifies the time when the listener | - | | | was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | backend_port | Integer | Specifies the port used by backend | - | | | ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | backend_protocol | String | Specifies the protocol used by | - | | | backend ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sticky_session_type | String | Specifies where the cookie is from. | - | | | The only value is **insert**, | - | | | indicating that the cookie is | - | | | inserted by the load balancer. | - | | | | - | | | - This parameter is valid when | - | | | **protocol** is set to **HTTP** | - | | | and **session_sticky** to | - | | | **true**. The default value is | - | | | **insert**. | - | | | - This parameter is invalid when | - | | | **protocol** is set to **TCP**, | - | | | which means that the parameter is | - | | | unavailable or its value is set to | - | | | **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancer_id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the listener | - | | | was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status | String | Specifies the listener status. The | - | | | value can be **ACTIVE**, | - | | | **PENDING_CREATE**, or **ERROR**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used for load | - | | | balancing at Layer 4 or Layer 7. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | - Specifies the administrative | - | | | status of the load balancer. | - | | | | - | | | - Two options are available: | - | | | | - | | | **false**: The load balancer is | - | | | disabled. | - | | | | - | | | **true**: The load balancer is | - | | | running properly. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | cookie_timeout | Integer | - Specifies the cookie timeout | - | | | duration. This parameter is valid | - | | | when **session_sticky** is set to | - | | | **true** and | - | | | **sticky_session_type** to | - | | | **insert**. | - | | | - The value ranges from **1** to | - | | | **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | member_number | Integer | Specifies the quantity of backend | - | | | ECSs. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthcheck_id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_sticky | Boolean | Specifies whether to enable the | - | | | sticky session feature. The feature | - | | | is enabled when the value is | - | | | **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | port | Integer | Specifies the port used by the | - | | | listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate_id | String | Specifies the ID of the SSL | - | | | certificate for security | - | | | authentication. This parameter is | - | | | mandatory when **protocol** is set to | - | | | **HTTPS** or **SSL**. Otherwise, the | - | | | parameter value is **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificates | String | Lists the certificate IDs if | - | | | **protocol** is set to **HTTPS**. | - | | | | - | | | This parameter is mandatory in the | - | | | SNI scenario. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tcp_timeout | Integer | Specifies the TCP session timeout | - | | | duration. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | udp_timeout | Integer | Specifies the UDP session timeout | - | | | duration. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ssl_protocols | String | Specifies the supported SSL/TLS | - | | | protocol version. This parameter is | - | | | available only when **protocol** is | - | | | set to **HTTPS** or **SSL**. | - | | | | - | | | NOTE: | - | | | For HTTPS listeners in versions | - | | | earlier than 1.2.8, the parameter | - | | | value is **TLS 1.2**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | ssl_ciphers | String | Specifies the cipher suite of an | - | | | encryption protocol. This parameter | - | | | is available only when **protocol** | - | | | is set to **HTTPS** or **SSL**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -- Example response - - .. code:: screen - - [ - { - "update_time": "2016-12-01 07:12:59", - "backend_port": 9090, - "id": "a824584fb3ba4d39ba0cf372c7cbbb67", - "backend_protocol": "TCP", - "sticky_session_type": null, - "certificate_id": null, - "description": "", - "loadbalancer_id": "f54c65b1b5dd4a4f95b71b44796ac013", - "lb_algorithm": "roundrobin", - "create_time": "2016-12-01 07:12:43", - "admin_state_up": false, - "status": "ACTIVE", - "protocol": "TCP", - "cookie_timeout": 100, - "port": 9092, - "tcp_draining": true, - "tcp_timeout": 1, - "member_number": 0, - "healthcheck_id": null, - "session_sticky": true, - "tcp_draining_timeout": 5, - "name": "lis" - }, - - { - "update_time": "2016-12-01 07:11:49", - "backend_port": 9090, - "id": "4818300858fc43e0a4d843ce74ee83a4", - "backend_protocol": "HTTP", - "sticky_session_type": "insert", - "certificate_id": null, - "description": "", - "loadbalancer_id": "f54c65b1b5dd4a4f95b71b44796ac013", - "lb_algorithm": "roundrobin", - "create_time": "2016-12-01 07:11:30", - "admin_state_up": false, - "status": "ACTIVE", - "protocol": "HTTP", - "cookie_timeout": 100, - "port": 9091, - "tcp_draining": true, - "tcp_timeout": null, - "member_number": 0, - "healthcheck_id": null, - "session_sticky": true, - "tcp_draining_timeout": 5, - "name": "lis" - } - ] - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Listener `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_jd_pe_0000.rst b/elb/api-ref/elb_jd_pe_0000.rst deleted file mode 100644 index 2f99882d..00000000 --- a/elb/api-ref/elb_jd_pe_0000.rst +++ /dev/null @@ -1,6 +0,0 @@ -Quota -===== - -- `Querying Load Balancer or Listener Quotas `__ - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/elb_jd_pe_0001.rst b/elb/api-ref/elb_jd_pe_0001.rst deleted file mode 100644 index c0b6dcfb..00000000 --- a/elb/api-ref/elb_jd_pe_0001.rst +++ /dev/null @@ -1,116 +0,0 @@ -Querying Load Balancer or Listener Quotas -========================================= - -Function -^^^^^^^^ - -This API is used to query the load balancer or listener quotas. - -URI -^^^ - -GET /v1.0/{project_id}/elbaas/quotas - -.. table:: **Table 1** Parameter description - - ========== ============= ======== ========================= - Parameter **Mandatory** **Type** Description - ========== ============= ======== ========================= - project_id Yes String Specifies the project ID. - ========== ============= ======== ========================= - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - ========= ======== ============================== - Parameter **Type** Description - ========= ======== ============================== - quotas Object Specifies the resource quotas. - ========= ======== ============================== - - .. table:: **Table 3** **quotas** parameter description - - ========= ======== ========================== - Parameter **Type** Description - ========= ======== ========================== - resources Array Lists the resource quotas. - ========= ======== ========================== - - .. table:: **Table 4** **resources** parameter description - - ========= ======== ====================================================================== - Parameter **Type** Description - ========= ======== ====================================================================== - type String Specifies the resource type. The value can be **elb** or **listener**. - used Integer Specifies the quantity of used resources. - quota Integer Specifies the total resource quotas. - max Integer Specifies the maximum number of resources. - min Integer Specifies the minimum number of resources. - ========= ======== ====================================================================== - -- Example response - - .. code:: screen - - { - "quotas": { - "resources": [ - { - "type": "elb", - "used": 2, - "quota": 5, - "max": 100, - "min": 1 - }, - { - "type": "listener", - "quota": 5, - "max": 200, - "min": 1 - } - ] - } - } - - |image1| - - The **used** parameter is unavailable for listeners, for which an empty character string is returned. - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Quota `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_jd_zs_0000.rst b/elb/api-ref/elb_jd_zs_0000.rst deleted file mode 100644 index 4ccca87f..00000000 --- a/elb/api-ref/elb_jd_zs_0000.rst +++ /dev/null @@ -1,9 +0,0 @@ -Certificate -=========== - -- `Creating a Certificate `__ -- `Deleting a Certificate `__ -- `Modifying a Certificate `__ -- `Querying Certificates `__ - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/elb_jd_zs_0001.rst b/elb/api-ref/elb_jd_zs_0001.rst deleted file mode 100644 index 5ccac070..00000000 --- a/elb/api-ref/elb_jd_zs_0001.rst +++ /dev/null @@ -1,135 +0,0 @@ -Creating a Certificate -====================== - -Function -^^^^^^^^ - -This API is used to create a certificate for an HTTPS listener. - -URI -^^^ - -POST /v1.0/{project_id}/elbaas/certificate - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | project_id | Yes | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | - Specifies the | - | | | | certificate name. | - | | | | - The value can contain 0 | - | | | | to 64 characters that | - | | | | consist of letters, | - | | | | digits, underscores (_), | - | | | | and hyphens (-). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | - Provides supplementary | - | | | | information about the | - | | | | certificate. | - | | | | - The value contains a | - | | | | maximum of 128 | - | | | | characters and cannot | - | | | | contain angle brackets | - | | | | (< and >). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain | No | String | - Specifies the domain | - | | | | name associated with the | - | | | | server certificate. | - | | | | - The value can contain a | - | | | | maximum of 254 | - | | | | characters that consist | - | | | | of letters, digits, | - | | | | hyphens (-), and periods | - | | | | (.), and must start with | - | | | | uppercase letters or | - | | | | digits. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificate | Yes | String | - Specifies the | - | | | | certificate content. | - | | | | - The value is in PEM | - | | | | coding format. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | private_key | Yes | String | - Specifies the private | - | | | | key of the certificate. | - | | | | - The value is in PEM | - | | | | coding format. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - .. code:: screen - - { - "name": "cert-bky", - "description": "certificate", - "certificate": "-----BEGIN CERTIFICATE-----\nMIIDXTCCAkWgAwIBAgIJANoPUy2NktS6MA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwNjIyMDMyOTU5WhcNMTkwNjIyMDMyOTU5WjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEArmUUhzm5sxxVr/ku4+6cKqnKgZvDl+e/6CNCAq8YMZXTpJP64DjDPny9\n+8s9MbFabEG3HqjHSKh3b/Ew3FXr8LFa9YuWuAi3W9ii29sZsOwmzIfQhIOIaP1Y\nNR50DDjbAGTaxzRhV40ZKSOCkaUTvl3do5d8ttD1VlF2r0w0DfclrVcsS5v3kw88\n9gJ3s3hNkatfQiSt4qLNMehZ8Xofx58DIAOk/f3Vusj3372PsJwKX39cHX/NpIHC\nHKE8qaGCpDqv0daH766eJ065dqO9DuorXPaPT/nxw4PAccb9fByLrTams0ThvSlZ\no6V3yvHR4KN7mmvbViEmWRy+9oiJEwIDAQABo1AwTjAdBgNVHQ4EFgQUlXhcABza\n2SdXPYpp8RkWvKblCNIwHwYDVR0jBBgwFoAUlXhcABza2SdXPYpp8RkWvKblCNIw\nDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAHmsFDOwbkD45PF4oYdX+\ncCoEGNjsLfi0spJ6b1CHQMEy2tPqYZJh8nGuUtB9Zd7+rbwm6NS38eGQVA5vbWZH\nMk+uq5un7YFwkM+fdjgCxbe/3PMkk/ZDYPHhpc1W8e/+aZVUBB2EpfzBC6tcP/DV\nSsjq+tG+JZIVADMxvEqVIF94JMpuY7o6U74SnUUrAi0h9GkWmeYh/Ucb3PLMe5sF\noZriRdAKc96KB0eUphfWZNtptOCqV6qtYqZZ/UCotp99xzrDkf8jGkm/iBljxb+v\n0NTg8JwfmykCj63YhTKpHf0+N/EK5yX1KUYtlkLaf8OPlsp/1lqAL6CdnydGEd/s\nAA==\n-----END CERTIFICATE-----", - "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEArmUUhzm5sxxVr/ku4+6cKqnKgZvDl+e/6CNCAq8YMZXTpJP6\n4DjDPny9+8s9MbFabEG3HqjHSKh3b/Ew3FXr8LFa9YuWuAi3W9ii29sZsOwmzIfQ\nhIOIaP1YNR50DDjbAGTaxzRhV40ZKSOCkaUTvl3do5d8ttD1VlF2r0w0DfclrVcs\nS5v3kw889gJ3s3hNkatfQiSt4qLNMehZ8Xofx58DIAOk/f3Vusj3372PsJwKX39c\nHX/NpIHCHKE8qaGCpDqv0daH766eJ065dqO9DuorXPaPT/nxw4PAccb9fByLrTam\ns0ThvSlZo6V3yvHR4KN7mmvbViEmWRy+9oiJEwIDAQABAoIBACV47rpHuxEza24O\nevbbFI9OQIcs8xA26dN1j/+HpAkzinB4o5V+XOWWZDQwbYu58hYE4NYjqf6AxHk3\nOCqAA9yKH2NXhSEyLkP7/rKDF7geZg/YtwNiR/NXTJbNXl4p8VTaVvAq3yey188x\nJCMrd1yWSsOWD2Qw7iaIBpqQIzdEovPE4CG6GmaIRSuqYuoCfbVTFa6YST7jmOTv\nEpG+x6yJZzJ4o0vvfKbKfvPmQizjL+3nAW9g+kgXJmA1xTujiky7bzm2sLK2Slrx\n5rY73mXMElseSlhkYzWwyRmC6M+rWALXqOhVDgIGbaBV4IOzuyH/CUt0wy3ZMIpv\nMOWMNoECgYEA1LHsepCmwjlDF3yf/OztCr/DYqM4HjAY6FTmH+xz1Zjd5R1XOq60\nYFRkhs/e2D6M/gSX6hMqS9sCkg25yRJk3CsPeoS9v5MoiZQA8XlQNovcpWUI2DCm\naZRIsdovFgIqMHYh/Y4CYouee7Nz7foICzO9svrYrbOIVmMwDVJ8vzMCgYEA0ebg\nm0lCuOunyxaSBqOv4Q4sk7Ix0702dIrW0tsUJyU+xuXYH1P/0m+t4/KUU2cNwsg3\njiNzQR9QKvF8yTB5TB4Ye/9dKlu+BEOskvCpuErxc6iVJ+TZOrQDDPNcq56qez5b\nvv9EDdgzpjkjO+hS1j3kYOuG11hrP4Pox4PijqECgYEAz6RTZORKqFoWsZss5VK3\np0LGkEkfw/jYmBgqAQhpnSD7n20hd1yPI2vAKAxPVXTbWDFLzWygYiWRQNy9fxrB\n9F7lYYqtY5VagdVHhnYUZOvtoFoeZFA6ZeAph9elGCtM3Lq3PD2i/mmncsQibTUn\nHSiKDWzuk8UtWIjEpHze5BkCgYEAifD9eG+bzqTnn1qU2pIl2nQTLXj0r97v84Tu\niqF4zAT5DYMtFeGBBI1qLJxVh7342CH2CI4ZhxmJ+L68sAcQH8rDcnGui1DBPlIv\nDl3kW3280bJfW1lUvPRh8NfZ9dsO1HF1n75nveVwg/OWyR7zmWIRPPRrqAeua45H\nox5z/CECgYBqwlEBjue8oOkVVu/lKi6fo6jr+0u25K9dp9azHYwE0KNHX0MwRALw\nWbPgcjge23sfhbeqVvHo0JYBdRsk/OBuW73/9Sb5E+6auDoubCjC0cAIvs23MPju\nsMvKak4mQkI19foRXBydB/DDkK26iei/l0xoygrw50v2HErsQ7JcHw==\n-----END RSA PRIVATE KEY-----" - } - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Response parameters - - =========== ======== ================================================================= - Parameter **Type** Description - =========== ======== ================================================================= - tenant_id String Specifies the project ID. - id String Specifies the certificate ID. - name String Specifies the certificate name. - description String Provides supplementary information about the certificate. - domain String Specifies the domain name associated with the server certificate. - certificate String Specifies the certificate content. - private_key String Specifies the private key of the certificate. - create_time String Specifies the time when the certificate was created. - update_time String Specifies the time when the certificate was updated. - =========== ======== ================================================================= - -- Example response - - .. code:: screen - - { - "name":"cert-bky", - "description":"certificate", - "certificate":"-----BEGIN CERTIFICATE-----\nMIIDXTCCAkWgAwIBAgIJANoPUy2NktS6MA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwNjIyMDMyOTU5WhcNMTkwNjIyMDMyOTU5WjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEArmUUhzm5sxxVr/ku4+6cKqnKgZvDl+e/6CNCAq8YMZXTpJP64DjDPny9\n+8s9MbFabEG3HqjHSKh3b/Ew3FXr8LFa9YuWuAi3W9ii29sZsOwmzIfQhIOIaP1Y\nNR50DDjbAGTaxzRhV40ZKSOCkaUTvl3do5d8ttD1VlF2r0w0DfclrVcsS5v3kw88\n9gJ3s3hNkatfQiSt4qLNMehZ8Xofx58DIAOk/f3Vusj3372PsJwKX39cHX/NpIHC\nHKE8qaGCpDqv0daH766eJ065dqO9DuorXPaPT/nxw4PAccb9fByLrTams0ThvSlZ\no6V3yvHR4KN7mmvbViEmWRy+9oiJEwIDAQABo1AwTjAdBgNVHQ4EFgQUlXhcABza\n2SdXPYpp8RkWvKblCNIwHwYDVR0jBBgwFoAUlXhcABza2SdXPYpp8RkWvKblCNIw\nDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAHmsFDOwbkD45PF4oYdX+\ncCoEGNjsLfi0spJ6b1CHQMEy2tPqYZJh8nGuUtB9Zd7+rbwm6NS38eGQVA5vbWZH\nMk+uq5un7YFwkM+fdjgCxbe/3PMkk/ZDYPHhpc1W8e/+aZVUBB2EpfzBC6tcP/DV\nSsjq+tG+JZIVADMxvEqVIF94JMpuY7o6U74SnUUrAi0h9GkWmeYh/Ucb3PLMe5sF\noZriRdAKc96KB0eUphfWZNtptOCqV6qtYqZZ/UCotp99xzrDkf8jGkm/iBljxb+v\n0NTg8JwfmykCj63YhTKpHf0+N/EK5yX1KUYtlkLaf8OPlsp/1lqAL6CdnydGEd/s\nAA==\n-----END CERTIFICATE-----", - "private_key":"-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEArmUUhzm5sxxVr/ku4+6cKqnKgZvDl+e/6CNCAq8YMZXTpJP6\n4DjDPny9+8s9MbFabEG3HqjHSKh3b/Ew3FXr8LFa9YuWuAi3W9ii29sZsOwmzIfQ\nhIOIaP1YNR50DDjbAGTaxzRhV40ZKSOCkaUTvl3do5d8ttD1VlF2r0w0DfclrVcs\nS5v3kw889gJ3s3hNkatfQiSt4qLNMehZ8Xofx58DIAOk/f3Vusj3372PsJwKX39c\nHX/NpIHCHKE8qaGCpDqv0daH766eJ065dqO9DuorXPaPT/nxw4PAccb9fByLrTam\ns0ThvSlZo6V3yvHR4KN7mmvbViEmWRy+9oiJEwIDAQABAoIBACV47rpHuxEza24O\nevbbFI9OQIcs8xA26dN1j/+HpAkzinB4o5V+XOWWZDQwbYu58hYE4NYjqf6AxHk3\nOCqAA9yKH2NXhSEyLkP7/rKDF7geZg/YtwNiR/NXTJbNXl4p8VTaVvAq3yey188x\nJCMrd1yWSsOWD2Qw7iaIBpqQIzdEovPE4CG6GmaIRSuqYuoCfbVTFa6YST7jmOTv\nEpG+x6yJZzJ4o0vvfKbKfvPmQizjL+3nAW9g+kgXJmA1xTujiky7bzm2sLK2Slrx\n5rY73mXMElseSlhkYzWwyRmC6M+rWALXqOhVDgIGbaBV4IOzuyH/CUt0wy3ZMIpv\nMOWMNoECgYEA1LHsepCmwjlDF3yf/OztCr/DYqM4HjAY6FTmH+xz1Zjd5R1XOq60\nYFRkhs/e2D6M/gSX6hMqS9sCkg25yRJk3CsPeoS9v5MoiZQA8XlQNovcpWUI2DCm\naZRIsdovFgIqMHYh/Y4CYouee7Nz7foICzO9svrYrbOIVmMwDVJ8vzMCgYEA0ebg\nm0lCuOunyxaSBqOv4Q4sk7Ix0702dIrW0tsUJyU+xuXYH1P/0m+t4/KUU2cNwsg3\njiNzQR9QKvF8yTB5TB4Ye/9dKlu+BEOskvCpuErxc6iVJ+TZOrQDDPNcq56qez5b\nvv9EDdgzpjkjO+hS1j3kYOuG11hrP4Pox4PijqECgYEAz6RTZORKqFoWsZss5VK3\np0LGkEkfw/jYmBgqAQhpnSD7n20hd1yPI2vAKAxPVXTbWDFLzWygYiWRQNy9fxrB\n9F7lYYqtY5VagdVHhnYUZOvtoFoeZFA6ZeAph9elGCtM3Lq3PD2i/mmncsQibTUn\nHSiKDWzuk8UtWIjEpHze5BkCgYEAifD9eG+bzqTnn1qU2pIl2nQTLXj0r97v84Tu\niqF4zAT5DYMtFeGBBI1qLJxVh7342CH2CI4ZhxmJ+L68sAcQH8rDcnGui1DBPlIv\nDl3kW3280bJfW1lUvPRh8NfZ9dsO1HF1n75nveVwg/OWyR7zmWIRPPRrqAeua45H\nox5z/CECgYBqwlEBjue8oOkVVu/lKi6fo6jr+0u25K9dp9azHYwE0KNHX0MwRALw\nWbPgcjge23sfhbeqVvHo0JYBdRsk/OBuW73/9Sb5E+6auDoubCjC0cAIvs23MPju\nsMvKak4mQkI19foRXBydB/DDkK26iei/l0xoygrw50v2HErsQ7JcHw==\n-----END RSA PRIVATE KEY-----", - "tenant_id":"ed9edbc66b8b47c09f5d2fcd89430b33", - "id":"5b8f908b5495452aa13beede0afc5d99", - "create_time":"2016-06-27 08:14:42", - "update_time":"2016-06-27 08:14:42" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/elb_jd_zs_0002.rst b/elb/api-ref/elb_jd_zs_0002.rst deleted file mode 100644 index 6badb1f6..00000000 --- a/elb/api-ref/elb_jd_zs_0002.rst +++ /dev/null @@ -1,65 +0,0 @@ -Deleting a Certificate -====================== - -Function -^^^^^^^^ - -This API is used to delete a certificate. - -URI -^^^ - -DELETE /v1.0/{project_id}/elbaas/certificate/{certificate_id} - -.. table:: **Table 1** Parameter description - - ============== ============= ======== ============================= - Parameter **Mandatory** **Type** Description - ============== ============= ======== ============================= - project_id Yes String Specifies the project ID. - certificate_id Yes String Specifies the certificate ID. - ============== ============= ======== ============================= - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - None - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -- Normal - - 204 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/elb_jd_zs_0003.rst b/elb/api-ref/elb_jd_zs_0003.rst deleted file mode 100644 index 67c5f078..00000000 --- a/elb/api-ref/elb_jd_zs_0003.rst +++ /dev/null @@ -1,113 +0,0 @@ -Modifying a Certificate -======================= - -Function -^^^^^^^^ - -This API is used to modify the name and description of a certificate. - -URI -^^^ - -PUT /v1.0/{project_id}/elbaas/certificate/{certificate_id} - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | project_id | Yes | String | Specifies the project ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificate_id | Yes | String | Specifies the certificate | - | | | | ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | - Specifies the | - | | | | certificate name. | - | | | | - The value can contain 0 | - | | | | to 64 characters that | - | | | | consist of letters, | - | | | | digits, underscores (_), | - | | | | and hyphens (-). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | - Provides supplementary | - | | | | information about the | - | | | | certificate. | - | | | | - The value contains a | - | | | | maximum of 128 | - | | | | characters and cannot | - | | | | contain angle brackets | - | | | | (< and >). | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - .. code:: screen - - { - "name": "cert-bky", - "description": "certificate" - } - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - =========== ======== ================================================================= - Parameter **Type** Description - =========== ======== ================================================================= - id String Specifies the certificate ID. - name String Specifies the certificate name. - description String Provides supplementary information about the certificate. - domain String Specifies the domain name associated with the server certificate. - certificate String Specifies the certificate content. - private_key String Specifies the private key of the certificate. - create_time String Specifies the time when the certificate was created. - update_time String Specifies the time when the certificate was updated. - =========== ======== ================================================================= - -- Example response - - .. code:: screen - - { - "name": "cert-bky", - "description": "certificate", - "domain": null, - "certificate": "-----BEGIN CERTIFICATE-----\nMIIDXTCCAkWgAwIBAgIJANoPUy2NktS6MA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwNjIyMDMyOTU5WhcNMTkwNjIyMDMyOTU5WjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEArmUUhzm5sxxVr/ku4+6cKqnKgZvDl+e/6CNCAq8YMZXTpJP64DjDPny9\n+8s9MbFabEG3HqjHSKh3b/Ew3FXr8LFa9YuWuAi3W9ii29sZsOwmzIfQhIOIaP1Y\nNR50DDjbAGTaxzRhV40ZKSOCkaUTvl3do5d8ttD1VlF2r0w0DfclrVcsS5v3kw88\n9gJ3s3hNkatfQiSt4qLNMehZ8Xofx58DIAOk/f3Vusj3372PsJwKX39cHX/NpIHC\nHKE8qaGCpDqv0daH766eJ065dqO9DuorXPaPT/nxw4PAccb9fByLrTams0ThvSlZ\no6V3yvHR4KN7mmvbViEmWRy+9oiJEwIDAQABo1AwTjAdBgNVHQ4EFgQUlXhcABza\n2SdXPYpp8RkWvKblCNIwHwYDVR0jBBgwFoAUlXhcABza2SdXPYpp8RkWvKblCNIw\nDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAHmsFDOwbkD45PF4oYdX+\ncCoEGNjsLfi0spJ6b1CHQMEy2tPqYZJh8nGuUtB9Zd7+rbwm6NS38eGQVA5vbWZH\nMk+uq5un7YFwkM+fdjgCxbe/3PMkk/ZDYPHhpc1W8e/+aZVUBB2EpfzBC6tcP/DV\nSsjq+tG+JZIVADMxvEqVIF94JMpuY7o6U74SnUUrAi0h9GkWmeYh/Ucb3PLMe5sF\noZriRdAKc96KB0eUphfWZNtptOCqV6qtYqZZ/UCotp99xzrDkf8jGkm/iBljxb+v\n0NTg8JwfmykCj63YhTKpHf0+N/EK5yX1KUYtlkLaf8OPlsp/1lqAL6CdnydGEd/s\nAA==\n-----END CERTIFICATE-----", - "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEArmUUhzm5sxxVr/ku4+6cKqnKgZvDl+e/6CNCAq8YMZXTpJP6\n4DjDPny9+8s9MbFabEG3HqjHSKh3b/Ew3FXr8LFa9YuWuAi3W9ii29sZsOwmzIfQ\nhIOIaP1YNR50DDjbAGTaxzRhV40ZKSOCkaUTvl3do5d8ttD1VlF2r0w0DfclrVcs\nS5v3kw889gJ3s3hNkatfQiSt4qLNMehZ8Xofx58DIAOk/f3Vusj3372PsJwKX39c\nHX/NpIHCHKE8qaGCpDqv0daH766eJ065dqO9DuorXPaPT/nxw4PAccb9fByLrTam\ns0ThvSlZo6V3yvHR4KN7mmvbViEmWRy+9oiJEwIDAQABAoIBACV47rpHuxEza24O\nevbbFI9OQIcs8xA26dN1j/+HpAkzinB4o5V+XOWWZDQwbYu58hYE4NYjqf6AxHk3\nOCqAA9yKH2NXhSEyLkP7/rKDF7geZg/YtwNiR/NXTJbNXl4p8VTaVvAq3yey188x\nJCMrd1yWSsOWD2Qw7iaIBpqQIzdEovPE4CG6GmaIRSuqYuoCfbVTFa6YST7jmOTv\nEpG+x6yJZzJ4o0vvfKbKfvPmQizjL+3nAW9g+kgXJmA1xTujiky7bzm2sLK2Slrx\n5rY73mXMElseSlhkYzWwyRmC6M+rWALXqOhVDgIGbaBV4IOzuyH/CUt0wy3ZMIpv\nMOWMNoECgYEA1LHsepCmwjlDF3yf/OztCr/DYqM4HjAY6FTmH+xz1Zjd5R1XOq60\nYFRkhs/e2D6M/gSX6hMqS9sCkg25yRJk3CsPeoS9v5MoiZQA8XlQNovcpWUI2DCm\naZRIsdovFgIqMHYh/Y4CYouee7Nz7foICzO9svrYrbOIVmMwDVJ8vzMCgYEA0ebg\nm0lCuOunyxaSBqOv4Q4sk7Ix0702dIrW0tsUJyU+xuXYH1P/0m+t4/KUU2cNwsg3\njiNzQR9QKvF8yTB5TB4Ye/9dKlu+BEOskvCpuErxc6iVJ+TZOrQDDPNcq56qez5b\nvv9EDdgzpjkjO+hS1j3kYOuG11hrP4Pox4PijqECgYEAz6RTZORKqFoWsZss5VK3\np0LGkEkfw/jYmBgqAQhpnSD7n20hd1yPI2vAKAxPVXTbWDFLzWygYiWRQNy9fxrB\n9F7lYYqtY5VagdVHhnYUZOvtoFoeZFA6ZeAph9elGCtM3Lq3PD2i/mmncsQibTUn\nHSiKDWzuk8UtWIjEpHze5BkCgYEAifD9eG+bzqTnn1qU2pIl2nQTLXj0r97v84Tu\niqF4zAT5DYMtFeGBBI1qLJxVh7342CH2CI4ZhxmJ+L68sAcQH8rDcnGui1DBPlIv\nDl3kW3280bJfW1lUvPRh8NfZ9dsO1HF1n75nveVwg/OWyR7zmWIRPPRrqAeua45H\nox5z/CECgYBqwlEBjue8oOkVVu/lKi6fo6jr+0u25K9dp9azHYwE0KNHX0MwRALw\nWbPgcjge23sfhbeqVvHo0JYBdRsk/OBuW73/9Sb5E+6auDoubCjC0cAIvs23MPju\nsMvKak4mQkI19foRXBydB/DDkK26iei/l0xoygrw50v2HErsQ7JcHw==\n-----END RSA PRIVATE KEY-----", - "id": "5b8f908b5495452aa13beede0afc5d99", - "create_time": "2016-06-27 08:14:42", - "update_time": "2016-06-27 08:14:42" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/elb_jd_zs_0004.rst b/elb/api-ref/elb_jd_zs_0004.rst deleted file mode 100644 index a55e27d1..00000000 --- a/elb/api-ref/elb_jd_zs_0004.rst +++ /dev/null @@ -1,102 +0,0 @@ -Querying Certificates -===================== - -Function -^^^^^^^^ - -This API is used to query all the certificates. - -URI -^^^ - -GET /v1.0/{project_id}/elbaas/certificate - -.. table:: **Table 1** Parameter description - - ========== ============= ======== ========================= - Parameter **Mandatory** **Type** Description - ========== ============= ======== ========================= - project_id Yes String Specifies the project ID. - ========== ============= ======== ========================= - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Response parameters - - ============ ======== ===================================== - Parameter **Type** Description - ============ ======== ===================================== - certificates Array Lists the certificates. - instance_num String Specifies the number of certificates. - ============ ======== ===================================== - - .. table:: **Table 3** **certificates** parameter description - - =========== ======== ================================================================= - Parameter **Type** Description - =========== ======== ================================================================= - id String Specifies the certificate ID. - name String Specifies the certificate name. - description String Provides supplementary information about the certificate. - domain String Specifies the domain name associated with the server certificate. - certificate String Specifies the certificate content. - private_key String Specifies the private key of the certificate. - create_time String Specifies the time when the certificate was created. - update_time String Specifies the time when the certificate was updated. - =========== ======== ================================================================= - -- Example response - - .. code:: screen - - { - "certificates": [ - { - "name": "cert-bky", - "description": "certificate", - "domain": null, - "certificate": "-----BEGIN CERTIFICATE-----\nMIIDXTCCAkWgAwIBAgIJANoPUy2NktS6MA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV\nBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX\naWRnaXRzIFB0eSBMdGQwHhcNMTYwNjIyMDMyOTU5WhcNMTkwNjIyMDMyOTU5WjBF\nMQswCQYDVQQGEwJBVTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50\nZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\nCgKCAQEArmUUhzm5sxxVr/ku4+6cKqnKgZvDl+e/6CNCAq8YMZXTpJP64DjDPny9\n+8s9MbFabEG3HqjHSKh3b/Ew3FXr8LFa9YuWuAi3W9ii29sZsOwmzIfQhIOIaP1Y\nNR50DDjbAGTaxzRhV40ZKSOCkaUTvl3do5d8ttD1VlF2r0w0DfclrVcsS5v3kw88\n9gJ3s3hNkatfQiSt4qLNMehZ8Xofx58DIAOk/f3Vusj3372PsJwKX39cHX/NpIHC\nHKE8qaGCpDqv0daH766eJ065dqO9DuorXPaPT/nxw4PAccb9fByLrTams0ThvSlZ\no6V3yvHR4KN7mmvbViEmWRy+9oiJEwIDAQABo1AwTjAdBgNVHQ4EFgQUlXhcABza\n2SdXPYpp8RkWvKblCNIwHwYDVR0jBBgwFoAUlXhcABza2SdXPYpp8RkWvKblCNIw\nDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAHmsFDOwbkD45PF4oYdX+\ncCoEGNjsLfi0spJ6b1CHQMEy2tPqYZJh8nGuUtB9Zd7+rbwm6NS38eGQVA5vbWZH\nMk+uq5un7YFwkM+fdjgCxbe/3PMkk/ZDYPHhpc1W8e/+aZVUBB2EpfzBC6tcP/DV\nSsjq+tG+JZIVADMxvEqVIF94JMpuY7o6U74SnUUrAi0h9GkWmeYh/Ucb3PLMe5sF\noZriRdAKc96KB0eUphfWZNtptOCqV6qtYqZZ/UCotp99xzrDkf8jGkm/iBljxb+v\n0NTg8JwfmykCj63YhTKpHf0+N/EK5yX1KUYtlkLaf8OPlsp/1lqAL6CdnydGEd/s\nAA==\n-----END CERTIFICATE-----", - "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEArmUUhzm5sxxVr/ku4+6cKqnKgZvDl+e/6CNCAq8YMZXTpJP6\n4DjDPny9+8s9MbFabEG3HqjHSKh3b/Ew3FXr8LFa9YuWuAi3W9ii29sZsOwmzIfQ\nhIOIaP1YNR50DDjbAGTaxzRhV40ZKSOCkaUTvl3do5d8ttD1VlF2r0w0DfclrVcs\nS5v3kw889gJ3s3hNkatfQiSt4qLNMehZ8Xofx58DIAOk/f3Vusj3372PsJwKX39c\nHX/NpIHCHKE8qaGCpDqv0daH766eJ065dqO9DuorXPaPT/nxw4PAccb9fByLrTam\ns0ThvSlZo6V3yvHR4KN7mmvbViEmWRy+9oiJEwIDAQABAoIBACV47rpHuxEza24O\nevbbFI9OQIcs8xA26dN1j/+HpAkzinB4o5V+XOWWZDQwbYu58hYE4NYjqf6AxHk3\nOCqAA9yKH2NXhSEyLkP7/rKDF7geZg/YtwNiR/NXTJbNXl4p8VTaVvAq3yey188x\nJCMrd1yWSsOWD2Qw7iaIBpqQIzdEovPE4CG6GmaIRSuqYuoCfbVTFa6YST7jmOTv\nEpG+x6yJZzJ4o0vvfKbKfvPmQizjL+3nAW9g+kgXJmA1xTujiky7bzm2sLK2Slrx\n5rY73mXMElseSlhkYzWwyRmC6M+rWALXqOhVDgIGbaBV4IOzuyH/CUt0wy3ZMIpv\nMOWMNoECgYEA1LHsepCmwjlDF3yf/OztCr/DYqM4HjAY6FTmH+xz1Zjd5R1XOq60\nYFRkhs/e2D6M/gSX6hMqS9sCkg25yRJk3CsPeoS9v5MoiZQA8XlQNovcpWUI2DCm\naZRIsdovFgIqMHYh/Y4CYouee7Nz7foICzO9svrYrbOIVmMwDVJ8vzMCgYEA0ebg\nm0lCuOunyxaSBqOv4Q4sk7Ix0702dIrW0tsUJyU+xuXYH1P/0m+t4/KUU2cNwsg3\njiNzQR9QKvF8yTB5TB4Ye/9dKlu+BEOskvCpuErxc6iVJ+TZOrQDDPNcq56qez5b\nvv9EDdgzpjkjO+hS1j3kYOuG11hrP4Pox4PijqECgYEAz6RTZORKqFoWsZss5VK3\np0LGkEkfw/jYmBgqAQhpnSD7n20hd1yPI2vAKAxPVXTbWDFLzWygYiWRQNy9fxrB\n9F7lYYqtY5VagdVHhnYUZOvtoFoeZFA6ZeAph9elGCtM3Lq3PD2i/mmncsQibTUn\nHSiKDWzuk8UtWIjEpHze5BkCgYEAifD9eG+bzqTnn1qU2pIl2nQTLXj0r97v84Tu\niqF4zAT5DYMtFeGBBI1qLJxVh7342CH2CI4ZhxmJ+L68sAcQH8rDcnGui1DBPlIv\nDl3kW3280bJfW1lUvPRh8NfZ9dsO1HF1n75nveVwg/OWyR7zmWIRPPRrqAeua45H\nox5z/CECgYBqwlEBjue8oOkVVu/lKi6fo6jr+0u25K9dp9azHYwE0KNHX0MwRALw\nWbPgcjge23sfhbeqVvHo0JYBdRsk/OBuW73/9Sb5E+6auDoubCjC0cAIvs23MPju\nsMvKak4mQkI19foRXBydB/DDkK26iei/l0xoygrw50v2HErsQ7JcHw==\n-----END RSA PRIVATE KEY-----", - "id": "5b8f908b5495452aa13beede0afc5d99", - "create_time": "2016-06-27 08:14:42", - "update_time": "2016-06-27 08:14:42" - } - ], - "instance_num": "1" - } - -Status Code -^^^^^^^^^^^ - -- Normal - - 200 - -- Error - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault System error. - 503 serviceUnavailable The service is unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/elb_xd_0000.rst b/elb/api-ref/elb_xd_0000.rst deleted file mode 100644 index 07f23df0..00000000 --- a/elb/api-ref/elb_xd_0000.rst +++ /dev/null @@ -1,86 +0,0 @@ -Change History -============== - -+-----------------------------------------------------------+-----------------------------------------------------------+ -| **Released On** | **Description** | -+===========================================================+===========================================================+ -| 2021-07-27 | Modified the following content: | -| | | -| | Added fields and descriptions about idle timeout | -| | duration. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2021-06-10 | Modified the following content: | -| | | -| | Added fields and descriptions about session stickiness | -| | duration. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2021-06-08 | This release incorporates the following changes: | -| | | -| | Added notes in `Tag `__ to state | -| | that the APIs can also be used to add tags to or remove | -| | tags from dedicated load balancers or their listeners. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2021-05-28 | This release incorporates the following changes: | -| | | -| | Changed enhanced load balancer to shared load balancer. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2021-02-05 | This release incorporates the following changes: | -| | | -| | Added `Dedicated Load Balancer | -| | APIs `__. | -| | | -| | Added `API Call | -| | Precaution `__. | -| | | -| | Added `API Call | -| | Precaution `__. | -| | | -| | Added `API Call | -| | Precaution `__. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2020-02-26 | This release incorporates the following changes: | -| | | -| | Added `Tag `__. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2019-06-11 | This release incorporates the following changes: | -| | | -| | Changed the value descriptions of the tag key and value | -| | in section "Tag". | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2019-05-16 | This release incorporates the following changes: | -| | | -| | Added parameter **project_id** in sections of enhanced | -| | load balancer APIs. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2019-03-20 | This release incorporates the following changes: | -| | | -| | Added parameters **created_at** and **updated_at** in | -| | sections related to enhanced load balancers and | -| | listeners. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2018-11-30 | This release incorporates the following changes: | -| | | -| | Added the **sni_container_refs** parameter for enhanced | -| | load balancer APIs. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2018-10-12 | Added `API Version `__. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2018-09-13 | This release incorporates the following changes: | -| | | -| | Added descriptions of parameters **loadbalancer_id** and | -| | **listener_id** in `Load | -| | Balancer `__ and | -| | `Listener `__. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2018-08-30 | This release incorporates the following changes: | -| | | -| | Changed the full name of the service to Elastic Load | -| | Balancing. | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2018-07-20 | This release incorporates the following changes: | -| | | -| | Modified the constraints for adding a listener using the | -| | IP protocol (or in DR mode). | -+-----------------------------------------------------------+-----------------------------------------------------------+ -| 2018-05-30 | This issue is the first official release. | -+-----------------------------------------------------------+-----------------------------------------------------------+ diff --git a/elb/api-ref/elb_zq_0000.rst b/elb/api-ref/elb_zq_0000.rst deleted file mode 100644 index b1c8b794..00000000 --- a/elb/api-ref/elb_zq_0000.rst +++ /dev/null @@ -1,14 +0,0 @@ -Shared Load Balancer APIs -========================= - -- `API Call Precaution `__ -- `Load Balancer `__ -- `Listener `__ -- `Backend Server Group `__ -- `Backend Server `__ -- `Health Check `__ -- `Forwarding Policy `__ -- `Forwarding Rule `__ -- `Whitelist `__ -- `Certificate `__ -- `Tag `__ diff --git a/elb/api-ref/elb_zq_bm_0000.rst b/elb/api-ref/elb_zq_bm_0000.rst deleted file mode 100644 index 07d19bda..00000000 --- a/elb/api-ref/elb_zq_bm_0000.rst +++ /dev/null @@ -1,10 +0,0 @@ -Whitelist -========= - -- `Adding a Whitelist `__ -- `Querying Whitelists `__ -- `Querying Details of a Whitelist `__ -- `Updating a Whitelist `__ -- `Deleting a Whitelist `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_bm_0001.rst b/elb/api-ref/elb_zq_bm_0001.rst deleted file mode 100644 index 2665e9a0..00000000 --- a/elb/api-ref/elb_zq_bm_0001.rst +++ /dev/null @@ -1,157 +0,0 @@ -Adding a Whitelist -================== - -Function -^^^^^^^^ - -This API is used to add a whitelist to control access to a specific listener. After a whitelist is added, only IP addresses in the whitelist can access the listener. - -URI -^^^ - -POST /v2.0/lbaas/whitelists - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | whitelist | Yes | Object | Specifies the whitelist. For details, see `Table | - | | | | 2 <#elb_zq_bm_0001__en-us_topic_0143878053_table7163025>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 2** **whitelist** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the whitelist | - | | | | is used. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **project_id** in the | - | | | | token. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | Yes | String | Specifies the listener ID. | - | | | | | - | | | | Only one whitelist can be | - | | | | created for a listener. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enable_whitelist | No | Boolean | Specifies whether to enable | - | | | | access control. | - | | | | | - | | | | **true**: Access control is | - | | | | enabled. | - | | | | | - | | | | **false**: Access control | - | | | | is disabled. | - | | | | | - | | | | The default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | whitelist | No | String | Specifies the IP addresses | - | | | | in the whitelist. Use | - | | | | commas (,) to separate | - | | | | multiple IP addresses. | - | | | | | - | | | | You can specify an IP | - | | | | address, for example, | - | | | | 192.168.11.1. | - | | | | | - | | | | You can also specify an IP | - | | | | address range, for example, | - | | | | 192.168.0.1/24. | - | | | | | - | | | | The default value is an | - | | | | empty string, that is, | - | | | | **""**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 3** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | whitelist | Object | Specifies the whitelist. For details, see `Table | - | | | 4 <#elb_zq_bm_0001__en-us_topic_0143878053_table24244005>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 4** **whitelist** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the whitelist ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the whitelist is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the whitelist is added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_whitelist | Boolean | Specifies whether to enable access | - | | | control. | - | | | | - | | | **true**: Access control is enabled. | - | | | | - | | | **false**: Access control is | - | | | disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | whitelist | String | Specifies the IP addresses in the | - | | | whitelist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Adding a whitelist - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/whitelists - - { - "whitelist": { - "listener_id": "eabfefa3fd1740a88a47ad98e132d238", - "enable_whitelist": true, - "whitelist": "192.168.11.1,192.168.0.1/24,192.168.201.18/8,100.164.0.1/24" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "whitelist": { - "id": "eabfefa3fd1740a88a47ad98e132d238", - "listener_id": "eabfefa3fd1740a88a47ad98e132d238", - "tenant_id": "eabfefa3fd1740a88a47ad98e132d238", - "enable_whitelist": true, - "whitelist": "192.168.11.1,192.168.0.1/24,192.168.201.18/8,100.164.0.1/24" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Whitelist `__ diff --git a/elb/api-ref/elb_zq_bm_0002.rst b/elb/api-ref/elb_zq_bm_0002.rst deleted file mode 100644 index 818b7801..00000000 --- a/elb/api-ref/elb_zq_bm_0002.rst +++ /dev/null @@ -1,229 +0,0 @@ -Querying Whitelists -=================== - -Function -^^^^^^^^ - -This API is used to query the whitelists. Filter query and pagination query are supported. Unless otherwise specified, exact match is applied. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v2.0/lbaas/whitelists - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | whitelist from which | - | | | | pagination query starts, | - | | | | that is, the ID of the last | - | | | | whitelist on the previous | - | | | | page. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | whitelists on each page. If | - | | | | this parameter is not set, | - | | | | all whitelists are queried | - | | | | by default. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the whitelist ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the whitelist | - | | | | is used. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | No | String | Specifies the ID of the | - | | | | listener to which the | - | | | | whitelist is added. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enable_whitelist | No | Boolean | Specifies whether to enable | - | | | | access control. | - | | | | | - | | | | **true**: Access control is | - | | | | enabled. | - | | | | | - | | | | **false**: Access control | - | | | | is disabled. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | whitelist | No | String | Specifies the IP addresses | - | | | | in the whitelist. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | whitelists | Array | Lists the whitelists. For details, | - | | | see `Table | - | | | 3 <#elb_zq_bm_0002__en-u | - | | | s_topic_0143878052_table10368864>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | whitelists_links | Array | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - | | | | - | | | This parameter exists only in the | - | | | response body of pagination query. | - | | | | - | | | For details, see `Table | - | | | 4 <#elb_zq_bm_0002__en-u | - | | | s_topic_0143878052_table24944072>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 3** **whitelist** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the whitelist ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the whitelist is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the whitelist is added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_whitelist | Bool | Specifies whether to enable access | - | | | control. | - | | | | - | | | **true**: Access control is enabled. | - | | | | - | | | **false**: Access control is | - | | | disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | whitelist | String | Specifies the IP addresses in the | - | | | whitelist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **whitelists_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. | - | | | | - | | | The value can be **next** or | - | | | **previous**. The value **next** | - | | | indicates the href containing the URL | - | | | of the next page, and **previous** | - | | | indicates the href containing the URL | - | | | of the previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Querying all whitelists - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/whitelists - -- Example request 2: Querying the whitelists added to listener eabfefa3fd1740a88a47ad98e132d230 - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/whitelists?listener_id=eabfefa3fd1740a88a47ad98e132d230 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "whitelists": [ - { - "id": "eabfefa3fd1740a88a47ad98e132d238", - "listener_id": "eabfefa3fd1740a88a47ad98e132d238", - "tenant_id": "eabfefa3fd1740a88a47ad98e132d238", - "enable_whitelist": true, - "whitelist": "192.168.11.1,192.168.0.1/24,192.168.201.18/8,100.164.0.1/24" - }, - { - "id": "eabfefa3fd1740a88a47ad98e132d326", - "listener_id": "eabfefa3fd1740a88a47ad98e132d327", - "tenant_id": "eabfefa3fd1740a88a47ad98e132d436", - "enable_whitelist": true, - "whiltelist": "192.168.12.1,192.168.1.1/24,192.168.203.18/8,100.164.5.1/24" - } - ] - } - -- Example response 2 - - .. code:: screen - - { - "whitelists": [ - { - "id": "eabfefa3fd1740a88a47ad98e132d238", - "listener_id": "eabfefa3fd1740a88a47ad98e132d230", - "tenant_id": "eabfefa3fd1740a88a47ad98e132d239", - "enable_whitelist": true, - "whitelist": "192.168.11.1,192.168.0.1/24,192.168.201.18/8,100.164.0.1/24" - }, - { - "id": "eabfefa3fd1740a88a47ad98e132d326", - "listener_id": "eabfefa3fd1740a88a47ad98e132d327", - "tenant_id": "eabfefa3fd1740a88a47ad98e132d439", - "enable_whitelist": true, - "whiltelist": "192.168.12.1,192.168.1.1/24,192.168.203.18/8,100.164.5.1/24" - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Whitelist `__ diff --git a/elb/api-ref/elb_zq_bm_0003.rst b/elb/api-ref/elb_zq_bm_0003.rst deleted file mode 100644 index 8bf0aaf0..00000000 --- a/elb/api-ref/elb_zq_bm_0003.rst +++ /dev/null @@ -1,98 +0,0 @@ -Querying Details of a Whitelist -=============================== - -Function -^^^^^^^^ - -This API is used to query details about a whitelist using its ID. - -URI -^^^ - -GET /v2.0/lbaas/whitelists/{whitelist_id} - -.. table:: **Table 1** Parameter description - - ============ ========= ====== =========================== - Parameter Mandatory Type Description - ============ ========= ====== =========================== - whitelist_id Yes String Specifies the whitelist ID. - ============ ========= ====== =========================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | whitelist | Object | Specifies the whitelist. For details, see `Table | - | | | 3 <#elb_zq_bm_0003__en-us_topic_0143878051_table21950591>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **whitelist** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the whitelist ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding rule is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the whitelist is added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_whitelist | Boolean | Specifies whether to enable access | - | | | control. | - | | | | - | | | **true**: Access control is enabled. | - | | | | - | | | **false**: Access control is | - | | | disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | whitelist | String | Specifies the IP addresses in the | - | | | whitelist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Querying details of a whitelist - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/whitelists/09e64049-2ab0-4763-a8c5-f4207875dc3e - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "whitelist": { - "id": "eabfefa3fd1740a88a47ad98e132d238", - "listener_id": "eabfefa3fd1740a88a47ad98e132d238", - "tenant_id": "eabfefa3fd1740a88a47ad98e132d238", - "enable_whitelist": true, - "whitelist": "192.168.11.1,192.168.0.1/24,192.168.201.18/8,100.164.0.1/24" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Whitelist `__ diff --git a/elb/api-ref/elb_zq_bm_0004.rst b/elb/api-ref/elb_zq_bm_0004.rst deleted file mode 100644 index 37e197c7..00000000 --- a/elb/api-ref/elb_zq_bm_0004.rst +++ /dev/null @@ -1,147 +0,0 @@ -Updating a Whitelist -==================== - -Function -^^^^^^^^ - -This API is used to update a whitelist. You can enable or disable the whitelist function or change IP addresses in the whitelist. If you change IP addresses in the whitelist, it will be deleted, and a new one is generated. - -URI -^^^ - -PUT /v2.0/lbaas/whitelists/{whitelist_id} - -.. table:: **Table 1** Parameter description - - ============ ========= ====== =========================== - Parameter Mandatory Type Description - ============ ========= ====== =========================== - whitelist_id Yes String Specifies the whitelist ID. - ============ ========= ====== =========================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | whitelist | Yes | Object | Specifies the whitelist. For details, see `Table | - | | | | 3 <#elb_zq_bm_0004__en-us_topic_0143878054_table8047771>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 3** **whitelist** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | enable_whitelist | No | Boolean | Specifies whether to enable | - | | | | access control. | - | | | | | - | | | | **true**: Access control is | - | | | | enabled. | - | | | | | - | | | | **false**: Access control | - | | | | is disabled. | - | | | | | - | | | | The default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | whitelist | No | String | Specifies the IP addresses | - | | | | in the whitelist. Use | - | | | | commas (,) to separate | - | | | | multiple IP addresses. | - | | | | | - | | | | You can specify an IP | - | | | | address, for example, | - | | | | 192.168.11.1. | - | | | | | - | | | | You can also specify an IP | - | | | | address range, for example, | - | | | | 192.168.0.1/24. | - | | | | | - | | | | The default value is an | - | | | | empty string, that is, | - | | | | **""**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Parameter description - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | whitelist | Object | Specifies the whitelist. For details, see `Table | - | | | 5 <#elb_zq_bm_0004__en-us_topic_0143878054_table5548368>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **whitelist** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the whitelist ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the whitelist is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the whitelist is added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | enable_whitelist | Boolean | Specifies whether to enable access | - | | | control. | - | | | | - | | | **true**: Access control is enabled. | - | | | | - | | | **false**: Access control is | - | | | disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | whitelist | String | Specifies the IP addresses in the | - | | | whitelist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Updating a whitelist - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/whitelists/dcaf46f1-037c-4f63-a31f-e0c4c18032c7 - - { - "whitelist": { - "enable_whitelist": true, - "whitelist": "192.168.11.1,192.168.0.1/24,192.168.201.18/8,100.164.0.1/24" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "whitelist": { - "id": "eabfefa3fd1740a88a47ad98e132d238", - "listener_id": "eabfefa3fd1740a88a47ad98e132d238", - "tenant_id": "eabfefa3fd1740a88a47ad98e132d238", - "enable_whitelist": true, - "whitelist": "192.168.11.1,192.168.0.1/24,192.168.201.18/8,100.164.0.1/24" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Whitelist `__ diff --git a/elb/api-ref/elb_zq_bm_0005.rst b/elb/api-ref/elb_zq_bm_0005.rst deleted file mode 100644 index 2041e1b0..00000000 --- a/elb/api-ref/elb_zq_bm_0005.rst +++ /dev/null @@ -1,53 +0,0 @@ -Deleting a Whitelist -==================== - -Function -^^^^^^^^ - -This API is used to delete a specific whitelist. - -URI -^^^ - -DELETE /v2.0/lbaas/whitelists/{whitelist_id} - -.. table:: **Table 1** Parameter description - - ============ ========= ====== =========================== - Parameter Mandatory Type Description - ============ ========= ====== =========================== - whitelist_id Yes String Specifies the whitelist ID. - ============ ========= ====== =========================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Deleting a whitelist - - .. code:: screen - - DELETE https://{Endpoint}/v2.0/lbaas/whitelists/35cb8516-1173-4035-8dae-0dae3453f37f - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - None - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Whitelist `__ diff --git a/elb/api-ref/elb_zq_bq_0000.rst b/elb/api-ref/elb_zq_bq_0000.rst deleted file mode 100644 index 49476001..00000000 --- a/elb/api-ref/elb_zq_bq_0000.rst +++ /dev/null @@ -1,18 +0,0 @@ -Tag -=== - -- `Adding a Tag to a Load Balancer `__ -- `Batch Adding or Deleting Load Balancer Tags `__ -- `Querying All Tags of a Load Balancer `__ -- `Querying the Tags of All Load Balancers `__ -- `Querying Load Balancers by Tag `__ -- `Deleting a Tag from a Load Balancer `__ -- `Adding a Tag to a Listener `__ -- `Batch Adding or Deleting Listener Tags `__ -- `Querying All Tags of a Listener `__ -- `Querying the Tags of All Listeners `__ -- `Querying Listeners by Tag `__ -- `Deleting a Tag from a Listener `__ -- `Status Codes `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_bq_0001.rst b/elb/api-ref/elb_zq_bq_0001.rst deleted file mode 100644 index 5fa541ec..00000000 --- a/elb/api-ref/elb_zq_bq_0001.rst +++ /dev/null @@ -1,125 +0,0 @@ -Adding a Tag to a Load Balancer -=============================== - -Function -^^^^^^^^ - -This API is used to add a tag to a specific load balancer for easier management. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -A maximum of 20 tags can be added to a load balancer. - -Note the following when you add tags: - -- If there are duplicate keys in the request body, an error is reported. -- If there are no duplicate keys in the request body but the key in the request body exists in the database, the key in the database is overwritten. - -URI -^^^ - -POST /v2.0/{project_id}/loadbalancers/{loadbalancer_id}/tags - -.. table:: **Table 1** Parameter description - - =============== ============= ======== ==================================================================== - Parameter **Mandatory** **Type** Description - =============== ============= ======== ==================================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - loadbalancer_id Yes String Specifies the ID of the load balancer to which a tag is to be added. - =============== ============= ======== ==================================================================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+---------------+----------+----------------------------------------------------------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +===========+===============+==========+============================================================================+ - | tag | Yes | Object | Specifies the tag. For details, see `Table | - | | | | 3 <#elb_zq_bq_0 | - | | | | 001__en-us_topic_0109852830_en-us_topic_0101985069_table3507237511564>`__. | - +-----------+---------------+----------+----------------------------------------------------------------------------+ - -.. table:: **Table 3** **tag** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | key | Yes | String | Specifies the tag key. | - | | | | | - | | | | - Cannot be left blank. | - | | | | - Can contain a maximum of | - | | | | 36 characters. | - | | | | - Can contain only the | - | | | | following character | - | | | | types: | - | | | | | - | | | | - Uppercase letters | - | | | | - Lowercase letters | - | | | | - Digits | - | | | | - Special characters, | - | | | | including hyphens (-) | - | | | | and underscores (_) | - | | | | | - | | | | - The tag key of a load | - | | | | balancer must be unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the tag value. | - | | | | | - | | | | - Can contain a maximum of | - | | | | 43 characters. | - | | | | - Can contain only the | - | | | | following character | - | | | | types: | - | | | | | - | | | | - Uppercase letters | - | | | | - Lowercase letters | - | | | | - Digits | - | | | | - Special characters, | - | | | | including hyphens (-) | - | | | | and underscores (_) | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/7add33ad-11dc-4ab9-a50f-419703f13163/tags - - { - "tag": { - "key": "key1", - "value": "value1" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0002.rst b/elb/api-ref/elb_zq_bq_0002.rst deleted file mode 100644 index 79970176..00000000 --- a/elb/api-ref/elb_zq_bq_0002.rst +++ /dev/null @@ -1,180 +0,0 @@ -Batch Adding or Deleting Load Balancer Tags -=========================================== - -Function -^^^^^^^^ - -This API is used to batch add tags to or delete tags from a load balancer. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -A maximum of 20 tags can be added to a load balancer. - -This API is idempotent. - -- Note the following when you add tags: - - - If there are duplicate keys in the request body, an error is reported. - - If there are no duplicate keys in the request body but the key in the request body exists in the database, the key in the database is overwritten. - -- Note the following when you delete the tags: - - - If the tag to be deleted does not exist, the deletion is considered successful by default. - - The value range of the tag character set is not verified. - - The tag structure body cannot be missing, and the key cannot be left blank or set to an empty string. - -URI -^^^ - -POST /v2.0/{project_id}/loadbalancers/{loadbalancer_id}/tags/action - -.. table:: **Table 1** Parameter description - - +-----------------+---------------+----------+----------------------------------------------------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=================+===============+==========+======================================================================+ - | project_id | Yes | String | Specifies the ID of the project where the tag is used. | - +-----------------+---------------+----------+----------------------------------------------------------------------+ - | loadbalancer_id | Yes | String | Specifies the ID of the load balancer to which tags are to be added | - | | | | or from which tags are to be deleted. | - +-----------------+---------------+----------+----------------------------------------------------------------------+ - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | tags | Yes | Array | Lists the tags. For | - | | | | details, see `Table | - | | | | 3 <#elb_z | - | | | | q_bq_0002__en-us_topic_0109 | - | | | | 852827_en-us_topic_00941159 | - | | | | 25_table16812991114447>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | action | Yes | String | Specifies the operation | - | | | | type. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **create**: adds tags to | - | | | | the load balancer. | - | | | | - **delete**: deletes tags | - | | | | from the load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 3** **tags** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | key | Yes | String | Specifies the tag key. | - | | | | | - | | | | - Cannot be left blank. | - | | | | - Can contain a maximum of | - | | | | 36 characters. | - | | | | - Can contain only the | - | | | | following character | - | | | | types: | - | | | | | - | | | | - Uppercase letters | - | | | | - Lowercase letters | - | | | | - Digits | - | | | | - Special characters, | - | | | | including hyphens (-) | - | | | | and underscores (_) | - | | | | | - | | | | - The tag key of a load | - | | | | balancer must be unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the tag value. | - | | | | | - | | | | - Can contain a maximum of | - | | | | 43 characters. | - | | | | - Can contain only the | - | | | | following character | - | | | | types: | - | | | | | - | | | | - Uppercase letters | - | | | | - Lowercase letters | - | | | | - Digits | - | | | | - Special characters, | - | | | | including hyphens (-) | - | | | | and underscores (_) | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1 - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/7add33ad-11dc-4ab9-a50f-419703f13163/tags/action - - { - "action": "create", - "tags": [ - { - "key": "key1", - "value": "value1" - }, - { - "key": "key2", - "value": "value2" - } - ] - } - -- Example request 2 - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/7add33ad-11dc-4ab9-a50f-419703f13163/tags/action - - { - "action": "delete", - "tags": [ - { - "key": "key1", - "value": "value1" - }, - { - "key": "key2", - "value": "value2" - } - ] - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - None - -- Example response 2 - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0003.rst b/elb/api-ref/elb_zq_bq_0003.rst deleted file mode 100644 index fb8ad72e..00000000 --- a/elb/api-ref/elb_zq_bq_0003.rst +++ /dev/null @@ -1,116 +0,0 @@ -Querying All Tags of a Load Balancer -==================================== - -Function -^^^^^^^^ - -This API is used to query all the tags of one load balancer. - -|image1| - -You can also use this API for dedicated load balancers. - -URI -^^^ - -GET /v2.0/{project_id}/loadbalancers/{loadbalancer_id}/tags - -.. table:: **Table 1** Parameter description - - =============== ============= ======== =================================================================== - Parameter **Mandatory** **Type** Description - =============== ============= ======== =================================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - loadbalancer_id Yes String Specifies the ID of the load balancer whose tags are to be queried. - =============== ============= ======== =================================================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +-----------+----------+---------------------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +===========+==========+=============================================================================================+ - | tags | Array | Lists the tags. For details, see `Table | - | | | 3 <#elb_zq_bq_0003__en-us_topic_0109852826_en-us_topic_0094115924_table57471170114349>`__. | - +-----------+----------+---------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **tags** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | **Type** | Description | - +=======================================+=======================================+=======================================+ - | key | String | Specifies the tag key. | - | | | | - | | | - Cannot be left blank. | - | | | - Can contain a maximum of 36 | - | | | characters. | - | | | - Can contain only the following | - | | | character types: | - | | | | - | | | - Uppercase letters | - | | | - Lowercase letters | - | | | - Digits | - | | | - Special characters, including | - | | | hyphens (-) and underscores (_) | - | | | | - | | | - The tag key of a load balancer | - | | | must be unique. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the tag value. | - | | | | - | | | - Can contain a maximum of 43 | - | | | characters. | - | | | - Can contain only the following | - | | | character types: | - | | | | - | | | - Uppercase letters | - | | | - Lowercase letters | - | | | - Digits | - | | | - Special characters, including | - | | | hyphens (-) and underscores (_) | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request - - .. code:: screen - - GET https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/7add33ad-11dc-4ab9-a50f-419703f13163/tags - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "tags": [ - { - "key": "key1", - "value": "value1" - }, - { - "key": "key2", - "value": "value2" - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0004.rst b/elb/api-ref/elb_zq_bq_0004.rst deleted file mode 100644 index 82ff89dc..00000000 --- a/elb/api-ref/elb_zq_bq_0004.rst +++ /dev/null @@ -1,121 +0,0 @@ -Querying the Tags of All Load Balancers -======================================= - -Function -^^^^^^^^ - -This API is used to query the tags of all the load balancers. - -|image1| - -You can also use this API for dedicated load balancers. - -URI -^^^ - -GET /v2.0/{project_id}/loadbalancers/tags - -.. table:: **Table 1** Parameter description - - ========== ============= ======== ====================================================== - Parameter **Mandatory** **Type** Description - ========== ============= ======== ====================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - ========== ============= ======== ====================================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +-----------+----------+---------------------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +===========+==========+=============================================================================================+ - | tags | Array | Lists the tags. For details, see `Table | - | | | 3 <#elb_zq_bq_0004__en-us_topic_0109852828_en-us_topic_0101983303_table1878907810595>`__. | - +-----------+----------+---------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **tags** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | **Type** | Description | - +=======================================+=======================================+=======================================+ - | key | String | Specifies the tag key. | - | | | | - | | | - Cannot be left blank. | - | | | - Can contain a maximum of 36 | - | | | characters. | - | | | - Can contain only the following | - | | | character types: | - | | | | - | | | - Uppercase letters | - | | | - Lowercase letters | - | | | - Digits | - | | | - Special characters, including | - | | | hyphens (-) and underscores (_) | - | | | | - | | | - The tag key of a load balancer | - | | | must be unique. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | values | Array | Lists the tag values. | - | | | | - | | | - Can contain a maximum of 43 | - | | | characters. | - | | | - Can contain only the following | - | | | character types: | - | | | | - | | | - Uppercase letters | - | | | - Lowercase letters | - | | | - Digits | - | | | - Special characters, including | - | | | hyphens (-) and underscores (_) | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request - - .. code:: screen - - GET https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/tags - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "tags": [ - { - "key": "key1", - "values": [ - "value1", - "value2" - ] - }, - { - "key": "key2", - "values": [ - "value1", - "value2" - ] - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0005.rst b/elb/api-ref/elb_zq_bq_0005.rst deleted file mode 100644 index 5373b39b..00000000 --- a/elb/api-ref/elb_zq_bq_0005.rst +++ /dev/null @@ -1,317 +0,0 @@ -Querying Load Balancers by Tag -============================== - -Function -^^^^^^^^ - -This API is used to query load balancers using tags. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -None - -URI -^^^ - -POST /v2.0/{project_id}/loadbalancers/resource_instances/action - -.. table:: **Table 1** Parameter description - - ========== ============= ======== ====================================================== - Parameter **Mandatory** **Type** Description - ========== ============= ======== ====================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - ========== ============= ======== ====================================================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | tags | No | Array | Specifies the included | - | | | | tags. A maximum of 20 keys | - | | | | are allowed for each query | - | | | | operation, and each key can | - | | | | have a maximum of 20 | - | | | | values. | - | | | | | - | | | | The tag key cannot be left | - | | | | blank or set to an empty | - | | | | string. | - | | | | | - | | | | Each tag key and each tag | - | | | | value of the same tag key | - | | | | must be unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Sets the page size. This | - | | | | parameter is available when | - | | | | **action** is set to | - | | | | **filter**. Both the | - | | | | default value and maximum | - | | | | value are **1000**, and the | - | | | | minimum value is **1**. The | - | | | | value cannot be a negative | - | | | | integer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | offset | No | Integer | Specifies the index | - | | | | position. The query starts | - | | | | from the next load balancer | - | | | | indexed by this parameter. | - | | | | This parameter is not | - | | | | required when you query | - | | | | load balancers on the first | - | | | | page. The value in the | - | | | | response returned for | - | | | | querying the load balancers | - | | | | on the previous page will | - | | | | be included in this | - | | | | parameter for querying the | - | | | | load balancers on | - | | | | subsequent pages. This | - | | | | parameter is not available | - | | | | when **action** is set to | - | | | | **count**. If **action** is | - | | | | set to **filter**, the | - | | | | value must be a positive | - | | | | integer, and the default | - | | | | value is **0**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | action | Yes | String | Identifies the operation. | - | | | | The value can be **filter** | - | | | | or **count**. | - | | | | | - | | | | **filter**: indicates | - | | | | pagination query. | - | | | | | - | | | | **count**: indicates that | - | | | | all load balancers meeting | - | | | | the search criteria will be | - | | | | returned. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | matches | No | Array | Specifies the search | - | | | | criteria. The tag key is | - | | | | the parameter to match, for | - | | | | example, **resource_name**. | - | | | | **value** indicates the | - | | | | value of the match content. | - | | | | The key is a fixed | - | | | | dictionary value. | - | | | | | - | | | | Currently, only | - | | | | **resource_name** can be | - | | | | used for search. For | - | | | | details, see `Table | - | | | | 4 <#elb_z | - | | | | q_bq_0005__en-us_topic_0109 | - | | | | 852829_en-us_topic_01019850 | - | | | | 68_table17701361113436>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 3** **tags** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | key | Yes | String | Specifies the tag key. It | - | | | | contains a maximum of 127 | - | | | | Unicode characters and | - | | | | cannot be left blank. (This | - | | | | parameter is not verified | - | | | | in the search process.) | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | values | Yes | Array | Lists the tag values. Each | - | | | | tag value can contain a | - | | | | maximum of 255 Unicode | - | | | | characters. The values are | - | | | | in the OR relationship. | - | | | | | - | | | | If no tag values in the | - | | | | list, the tag key is used | - | | | | for full search. If each | - | | | | value in the list starts | - | | | | with an asterisk (*), fuzzy | - | | | | match is performed based on | - | | | | the part after the | - | | | | asterisk. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 4** **matches** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | key | Yes | String | Specifies the tag key for | - | | | | match. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **resource_name**: | - | | | | indicates the resource | - | | | | name. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the tag value for | - | | | | match. Each tag value can | - | | | | contain a maximum of 255 | - | | | | Unicode characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 5** Response parameters - - +-------------+----------+-------------------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +=============+==========+===========================================================================================+ - | resources | Array | Lists the load balancers. For details, see `Table | - | | | 6 | - | | | <#elb_zq_bq_0005__en-us_topic_0109852829_en-us_topic_0101985068_table19523872114014>`__. | - +-------------+----------+-------------------------------------------------------------------------------------------+ - | total_count | Integer | Specifies the total number of queried records. | - +-------------+----------+-------------------------------------------------------------------------------------------+ - -.. table:: **Table 6** **resource** parameter description - - +-------------------+----------+-------------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +===================+==========+=====================================================================================+ - | resource_id | String | Specifies the resource ID. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - | resource_detail | Object | Specifies the resource details. The value is a resource object, used for extension. | - | | | The value is left blank by default. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - | tags | Array | Lists the tags. If there is no tag, an empty array is used by default. For details, | - | | | see `Table 7 <#elb_zq_bq_0005__en-us_topic_0109852829_table15683233145412>`__. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - | resource_name | String | Specifies the resource name. This parameter is an empty string by default if there | - | | | is no resource name. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - | super_resource_id | String | Specifies the parent resource ID. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - -.. table:: **Table 7** **tags** parameter description - - +-----------+----------+---------------------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +===========+==========+=============================================================================================+ - | key | String | Specifies the tag key. It contains a maximum of 127 Unicode characters and cannot be left | - | | | blank. (This parameter is not verified in the search process.) | - +-----------+----------+---------------------------------------------------------------------------------------------+ - | value | String | Specifies the tag value. Each tag value can contain a maximum of 255 Unicode characters. | - +-----------+----------+---------------------------------------------------------------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1 (when **action** is set to **filter**) - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/resource_instances/action - - { - "offset": "100", - "limit": "100", - "action": "filter", - "matches": [ - { - "key": "resource_name", - "value": "resource1" - } - ], - "tags": [ - { - "key": "key1", - "values": [ - "*value1", - "value2" - ] - } - ] - } - -- Example request 2 (when **action** is set to **count**) - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/resource_instances/action - - { - "action": "count", - "tags": [ - { - "key": "key1", - "values": [ - "value1", - "value2" - ] - }, - { - "key": "key2", - "values": [ - "value1", - "value2" - ] - } - ], - "matches": [ - { - "key": "resource_name", - "value": "resource1" - } - ] - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "resources": [ - { - "resource_detail": "", - "resource_id": "154d135b-3a89-4e89-8023-06efb9acdc05", - "resource_name": "resouece1", - "tags": [ - { - "key": "key1", - "value": "value1" - }, - { - "key": "key2", - "value": "value1" - } - ] - } - ], - "total_count": 1000 - } - -- Example response 2 - - .. code:: screen - - { - "total_count": 1000 - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0006.rst b/elb/api-ref/elb_zq_bq_0006.rst deleted file mode 100644 index 4bd537c1..00000000 --- a/elb/api-ref/elb_zq_bq_0006.rst +++ /dev/null @@ -1,65 +0,0 @@ -Deleting a Tag from a Load Balancer -=================================== - -Function -^^^^^^^^ - -This API is used to delete a tag with a specific key from a load balancer. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -None - -URI -^^^ - -DELETE /v2.0/{project_id}/loadbalancers/{loadbalancer_id}/tags/{key} - -.. table:: **Table 1** Parameter description - - =============== ============= ======== ======================================================================== - Parameter **Mandatory** **Type** Description - =============== ============= ======== ======================================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - loadbalancer_id Yes String Specifies the ID of the load balancer from which a tag is to be deleted. - =============== ============= ======== ======================================================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request - - .. code:: screen - - DELETE https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/7add33ad-11dc-4ab9-a50f-419703f13163/tags/key1 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0007.rst b/elb/api-ref/elb_zq_bq_0007.rst deleted file mode 100644 index eb421a02..00000000 --- a/elb/api-ref/elb_zq_bq_0007.rst +++ /dev/null @@ -1,123 +0,0 @@ -Adding a Tag to a Listener -========================== - -Function -^^^^^^^^ - -This API is used to add a tag to a specific listener. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -- A maximum of 20 tags can be added to a listener. -- Note the following when you add tags: - - - If there are duplicate keys in the request body, an error is reported. - - If there are no duplicate keys in the request body but the key in the request body exists in the database, the key in the database is overwritten. - -URI -^^^ - -POST /v2.0/{project_id}/listeners/{listener_id}/tags - -.. table:: **Table 1** Parameter description - - =========== ============= ======== =============================================================== - Parameter **Mandatory** **Type** Description - =========== ============= ======== =============================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - listener_id Yes String Specifies the ID of the listener to which a tag is to be added. - =========== ============= ======== =============================================================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+---------------+----------+----------------------------------------------------------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +===========+===============+==========+============================================================================+ - | tag | Yes | Object | Specifies the tag. For details, see `Table | - | | | | 3 <#elb_zq_bq_0007__en-us_topic_0112614719_table1537216133220>`__. | - +-----------+---------------+----------+----------------------------------------------------------------------------+ - -.. table:: **Table 3** **tag** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | key | Yes | String | Specifies the tag key. | - | | | | | - | | | | - Cannot be left blank. | - | | | | - Can contain a maximum of | - | | | | 36 characters. | - | | | | - Can contain only the | - | | | | following character | - | | | | types: | - | | | | | - | | | | - Uppercase letters | - | | | | - Lowercase letters | - | | | | - Digits | - | | | | - Special characters, | - | | | | including hyphens (-) | - | | | | and underscores (_) | - | | | | | - | | | | - The tag key of a | - | | | | listener must be unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the tag value. | - | | | | | - | | | | - Can contain a maximum of | - | | | | 43 characters. | - | | | | - Can contain only the | - | | | | following character | - | | | | types: | - | | | | | - | | | | - Uppercase letters | - | | | | - Lowercase letters | - | | | | - Digits | - | | | | - Special characters, | - | | | | including hyphens (-) | - | | | | and underscores (_) | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/listeners/7add33ad-11dc-4ab9-a50f-419703f13163/tags - - { - "tag": { - "key": "key1", - "value": "value1" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0008.rst b/elb/api-ref/elb_zq_bq_0008.rst deleted file mode 100644 index 03483d3c..00000000 --- a/elb/api-ref/elb_zq_bq_0008.rst +++ /dev/null @@ -1,178 +0,0 @@ -Batch Adding or Deleting Listener Tags -====================================== - -Function -^^^^^^^^ - -This API is used to batch add tags to or delete tags from a listener. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -- A maximum of 20 tags can be added to a listener. -- This API is idempotent. -- Note the following when you add tags: - - - If there are duplicate keys in the request body, an error is reported. - - If there are no duplicate keys in the request body but the key in the request body exists in the database, the key in the database is overwritten. - -- Note the following when you delete the tags: - - - If the tag to be deleted does not exist, the deletion is considered successful by default. - - The value range of the tag character set is not verified. - - The tag structure body cannot be missing, and the key cannot be left blank or set to an empty string. - -URI -^^^ - -POST /v2.0/{project_id}/listeners/{listener_id}/tags/action - -.. table:: **Table 1** Parameter description - - +-------------+---------------+----------+--------------------------------------------------------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============+===============+==========+==========================================================================+ - | project_id | Yes | String | Specifies the ID of the project where the tag is used. | - +-------------+---------------+----------+--------------------------------------------------------------------------+ - | listener_id | Yes | String | Specifies the ID of the listener to which tags are to be added or from | - | | | | which tags are to be deleted. | - +-------------+---------------+----------+--------------------------------------------------------------------------+ - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | tags | Yes | Array | Lists the tags. For | - | | | | details, see `Table | - | | | | 3 <#elb_z | - | | | | q_bq_0008__en-us_topic_0109 | - | | | | 852833_en-us_topic_00941159 | - | | | | 27_table27826557114623>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | action | Yes | String | Specifies the operation | - | | | | identifier. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **create**: adds tags to | - | | | | the listener. | - | | | | - **delete**: deletes tags | - | | | | from the listener. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 3** **resource_tag** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | key | Yes | String | Specifies the tag key. | - | | | | | - | | | | - Cannot be left blank. | - | | | | - Can contain a maximum of | - | | | | 36 characters. | - | | | | - Can contain only the | - | | | | following character | - | | | | types: | - | | | | | - | | | | - Uppercase letters | - | | | | - Lowercase letters | - | | | | - Digits | - | | | | - Special characters, | - | | | | including hyphens (-) | - | | | | and underscores (_) | - | | | | | - | | | | - The tag key of a | - | | | | listener must be unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the tag value. | - | | | | | - | | | | - Can contain a maximum of | - | | | | 43 characters. | - | | | | - Can contain only the | - | | | | following character | - | | | | types: | - | | | | | - | | | | - Uppercase letters | - | | | | - Lowercase letters | - | | | | - Digits | - | | | | - Special characters, | - | | | | including hyphens (-) | - | | | | and underscores (_) | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1 - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/listeners/7add33ad-11dc-4ab9-a50f-419703f13163/tags/action - - { - "action": "create", - "tags": [ - { - "key": "key1", - "value": "value1" - }, - { - "key": "key2", - "value": "value2" - } - ] - } - -- Example request 2 - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/listeners/7add33ad-11dc-4ab9-a50f-419703f13163/tags/action - - { - "action": "delete", - "tags": [ - { - "key": "key1", - "value": "value1" - }, - { - "key": "key2", - "value": "value2" - } - ] - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - None - -- Example response 2 - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0009.rst b/elb/api-ref/elb_zq_bq_0009.rst deleted file mode 100644 index a1d77a25..00000000 --- a/elb/api-ref/elb_zq_bq_0009.rst +++ /dev/null @@ -1,121 +0,0 @@ -Querying All Tags of a Listener -=============================== - -Function -^^^^^^^^ - -This API is used to query all tags of one listener. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -None - -URI -^^^ - -GET /v2.0/{project_id}/listeners/{listener_id}/tags - -.. table:: **Table 1** Parameter description - - =========== ============= ======== ============================================================== - Parameter **Mandatory** **Type** Description - =========== ============= ======== ============================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - listener_id Yes String Specifies the ID of the listener whose tags are to be queried. - =========== ============= ======== ============================================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +-----------+----------+---------------------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +===========+==========+=============================================================================================+ - | tags | Array | Lists the tags. For details, see `Table | - | | | 3 <#elb_zq_bq_0009__en-us_topic_0112614717_table9829182310517>`__. | - +-----------+----------+---------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **tags** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | **Type** | Description | - +=======================================+=======================================+=======================================+ - | key | String | Specifies the tag key. | - | | | | - | | | - Cannot be left blank. | - | | | - Can contain a maximum of 36 | - | | | characters. | - | | | - Can contain only the following | - | | | character types: | - | | | | - | | | - Uppercase letters | - | | | - Lowercase letters | - | | | - Digits | - | | | - Special characters, including | - | | | hyphens (-) and underscores (_) | - | | | | - | | | - The tag key of a listener must be | - | | | unique. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the tag value. | - | | | | - | | | - Can contain a maximum of 43 | - | | | characters. | - | | | - Can contain only the following | - | | | character types: | - | | | | - | | | - Uppercase letters | - | | | - Lowercase letters | - | | | - Digits | - | | | - Special characters, including | - | | | hyphens (-) and underscores (_) | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request - - .. code:: screen - - GET https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/listeners/7add33ad-11dc-4ab9-a50f-419703f13163/tags - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "tags": [ - { - "key": "key1", - "value": "value1" - }, - { - "key": "key2", - "value": "value2" - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0010.rst b/elb/api-ref/elb_zq_bq_0010.rst deleted file mode 100644 index fdfe475a..00000000 --- a/elb/api-ref/elb_zq_bq_0010.rst +++ /dev/null @@ -1,138 +0,0 @@ -Querying the Tags of All Listeners -================================== - -Function -^^^^^^^^ - -This API is used to query the tags of all listeners. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -None - -URI -^^^ - -GET /v2.0/{project_id}/listeners/tags - -.. table:: **Table 1** Parameter description - - ========== ============= ======== ====================================================== - Parameter **Mandatory** **Type** Description - ========== ============= ======== ====================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - ========== ============= ======== ====================================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | **Type** | Description | - +=======================================+=======================================+=======================================+ - | tags | Array | Lists the tags, which are aggregated | - | | | by the tag key. For details, see | - | | | `Table | - | | | 3 <#elb_zq_bq_0010__en-us_topi | - | | | c_0112614718_table13591257182417>`__. | - | | | | - | | | For example, if you have two | - | | | listeners, the tag key of both | - | | | listeners is "test", the tag value of | - | | | listener A is "value1", and the tag | - | | | value of listener B is "value2", two | - | | | tags are queried, the key of both | - | | | tags is "test", and the tag values | - | | | are ["value1","value2"]. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 3** **tags** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | **Type** | Description | - +=======================================+=======================================+=======================================+ - | key | String | Specifies the tag key. | - | | | | - | | | - Cannot be left blank. | - | | | - Can contain a maximum of 36 | - | | | characters. | - | | | - Can contain only the following | - | | | character types: | - | | | | - | | | - Uppercase letters | - | | | - Lowercase letters | - | | | - Digits | - | | | - Special characters, including | - | | | hyphens (-) and underscores (_) | - | | | | - | | | - The tag key of a listener must be | - | | | unique. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | values | Array | Lists the tag values. | - | | | | - | | | - Can contain a maximum of 43 | - | | | characters. | - | | | - Can contain only the following | - | | | character types: | - | | | | - | | | - Uppercase letters | - | | | - Lowercase letters | - | | | - Digits | - | | | - Special characters, including | - | | | hyphens (-) and underscores (_) | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request - - .. code:: screen - - GET https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/listeners/tags - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "tags": [ - { - "key": "key1", - "values": [ - "value1", - "value2" - ] - }, - { - "key": "key2", - "values": [ - "value1", - "value2" - ] - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0011.rst b/elb/api-ref/elb_zq_bq_0011.rst deleted file mode 100644 index aa535b9e..00000000 --- a/elb/api-ref/elb_zq_bq_0011.rst +++ /dev/null @@ -1,310 +0,0 @@ -Querying Listeners by Tag -========================= - -Function -^^^^^^^^ - -This API is used to query listeners by tag. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -None - -URI -^^^ - -POST /v2.0/{project_id}/listeners/resource_instances/action - -.. table:: **Table 1** Parameter description - - ========== ============= ======== ====================================================== - Parameter **Mandatory** **Type** Description - ========== ============= ======== ====================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - ========== ============= ======== ====================================================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | tags | No | Array | Specifies the included | - | | | | tags. A maximum of 20 tag | - | | | | keys are allowed for each | - | | | | query operation. Each tag | - | | | | key can have up to 20 tag | - | | | | values. The structure body | - | | | | must be included. The tag | - | | | | key cannot be left blank or | - | | | | set to an empty string. | - | | | | Each tag key and each tag | - | | | | value of the same tag key | - | | | | must be unique. For | - | | | | details, see `Table | - | | | | 3 <#elb_zq_ | - | | | | bq_0011__en-us_topic_010985 | - | | | | 2832_table202620276214>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Sets the page size. This | - | | | | parameter is available when | - | | | | **action** is set to | - | | | | **filter**. Both the | - | | | | default value and maximum | - | | | | value are **1000**, and the | - | | | | minimum value is **1**. The | - | | | | value cannot be a negative | - | | | | integer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | offset | No | Integer | Specifies the index | - | | | | position. The query starts | - | | | | from the next listener | - | | | | indexed by this parameter. | - | | | | This parameter is not | - | | | | required when you query | - | | | | listeners on the first | - | | | | page. The value in the | - | | | | response returned for | - | | | | querying the listeners on | - | | | | the previous page will be | - | | | | included in this parameter | - | | | | for querying the listeners | - | | | | on subsequent pages. This | - | | | | parameter is not available | - | | | | when **action** is set to | - | | | | **count**. If **action** is | - | | | | set to **filter**, the | - | | | | value must be a positive | - | | | | integer, and the default | - | | | | value is **0**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | action | Yes | String | Identifies the operation. | - | | | | The value can be **filter** | - | | | | or **count**. | - | | | | | - | | | | - **filter**: indicates | - | | | | pagination query. | - | | | | - **count**: indicates | - | | | | that all listeners | - | | | | meeting the search | - | | | | criteria will be | - | | | | returned. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | matches | No | Array | Specifies the search | - | | | | criteria. The tag key is | - | | | | the parameter to match, for | - | | | | example, **resource_name**. | - | | | | **value** indicates the | - | | | | value of the match content. | - | | | | The key is a fixed | - | | | | dictionary value. | - | | | | | - | | | | Determine whether fuzzy | - | | | | match is required based on | - | | | | different parameters. For | - | | | | example, if the **key** is | - | | | | **resource_name**, fuzzy | - | | | | search is used by default. | - | | | | If **value** is an empty | - | | | | string, exact match is | - | | | | used. If the key is | - | | | | **resource_id**, exact | - | | | | match is used. Currently, | - | | | | only **resource_name** can | - | | | | be used for search. For | - | | | | details, see `Table | - | | | | 4 <#elb_zq_b | - | | | | q_0011__en-us_topic_0109852 | - | | | | 832_table5401017132210>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 3** **tags** parameter description - - +-----------+---------------+----------+----------------------------------------------------------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +===========+===============+==========+============================================================================+ - | key | Yes | String | Specifies the tag key. It contains a maximum of 127 Unicode characters and | - | | | | cannot be left blank. (This parameter is not verified in the search | - | | | | process.) | - +-----------+---------------+----------+----------------------------------------------------------------------------+ - | values | Yes | Array | Lists the tag values. Each tag value can contain a maximum of 255 Unicode | - | | | | characters. The values are in the OR relationship. | - +-----------+---------------+----------+----------------------------------------------------------------------------+ - -.. table:: **Table 4** **matches** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | key | Yes | String | Specifies the tag key. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **resource_name**: | - | | | | indicates the resource | - | | | | name. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the tag value. | - | | | | Each tag value can contain | - | | | | a maximum of 255 Unicode | - | | | | characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 5** Response parameters - - +-------------+----------+-------------------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +=============+==========+===========================================================================================+ - | resources | Array | Lists the listeners. For details, see `Table | - | | | 6 <#elb_zq_bq_0011__en-us_topic_0109852832_table2019842119305>`__. | - +-------------+----------+-------------------------------------------------------------------------------------------+ - | total_count | Integer | Specifies the total number of queried records. | - +-------------+----------+-------------------------------------------------------------------------------------------+ - -.. table:: **Table 6** **resource** parameter description - - +-------------------+----------+-------------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +===================+==========+=====================================================================================+ - | resource_id | String | Specifies the resource ID. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - | resource_detail | Object | Specifies the resource details. The value is a resource object, used for extension. | - | | | The value is left blank by default. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - | tags | Array | Lists the tags. If there is no tag, an empty array is used by default. For details, | - | | | see `Table 7 <#elb_zq_bq_0011__en-us_topic_0109852832_table15683233145412>`__. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - | resource_name | String | Specifies the resource name. This parameter is an empty string by default if there | - | | | is no resource name. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - | super_resource_id | String | Specifies the parent resource ID. | - +-------------------+----------+-------------------------------------------------------------------------------------+ - -.. table:: **Table 7** **tags** parameter description - - +-----------+----------+---------------------------------------------------------------------------------------------+ - | Parameter | **Type** | Description | - +===========+==========+=============================================================================================+ - | key | String | Specifies the tag key. It contains a maximum of 127 Unicode characters and cannot be left | - | | | blank. (This parameter is not verified in the search process.) | - +-----------+----------+---------------------------------------------------------------------------------------------+ - | value | String | Specifies the tag value. Each tag value can contain a maximum of 255 Unicode characters. | - +-----------+----------+---------------------------------------------------------------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1 (when **action** is set to **filter**) - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/listeners/resource_instances/action - - { - "offset": "100", - "limit": "100", - "action": "filter", - "matches": [ - { - "key": "resource_name", - "value": "resource1" - } - ], - "tags": [ - { - "key": "key1", - "values": [ - "value1", - "value2" - ] - } - ] - } - -- Example request 2 (when **action** is set to **count**) - - .. code:: screen - - POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/listeners/resource_instances/action - - { - "action": "count", - "tags": [ - { - "key": "key1", - "values": [ - "value1", - "value2" - ] - }, - { - "key": "key2", - "values": [ - "value1", - "value2" - ] - } - ], - "matches": [ - { - "key": "resource_name", - "value": "resource1" - } - ] - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "resources": [ - { - "resource_detail":"", - "resource_id": "154d135b-3a89-4e89-8023-06efb9acdc05", - "resource_name": "resouece1", - "tags": [ - { - "key": "key1", - "value": "value1" - }, - { - "key": "key2", - "value": "value1" - } - ] - } - ], - "total_count": 1000 - } - -- Example response 2 - - .. code:: screen - - { - "total_count": 1000 - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0012.rst b/elb/api-ref/elb_zq_bq_0012.rst deleted file mode 100644 index 27de2f6f..00000000 --- a/elb/api-ref/elb_zq_bq_0012.rst +++ /dev/null @@ -1,65 +0,0 @@ -Deleting a Tag from a Listener -============================== - -Function -^^^^^^^^ - -This API is used to delete a tag with a specific key from a listener. - -|image1| - -You can also use this API for dedicated load balancers. - -Constraints -^^^^^^^^^^^ - -None - -URI -^^^ - -DELETE /v2.0/{project_id}/listeners/{listener_id}/tags/{key} - -.. table:: **Table 1** Parameter description - - =========== ============= ======== =================================================================== - Parameter **Mandatory** **Type** Description - =========== ============= ======== =================================================================== - project_id Yes String Specifies the ID of the project where the tag is used. - listener_id Yes String Specifies the ID of the listener from which a tag is to be deleted. - =========== ============= ======== =================================================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request - - .. code:: screen - - DELETE https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/listeners/7add33ad-11dc-4ab9-a50f-419703f13163/tags/key1 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Tag `__ - -.. |image1| image:: public_sys-resources/note_3.0-en-us.png diff --git a/elb/api-ref/elb_zq_bq_0013.rst b/elb/api-ref/elb_zq_bq_0013.rst deleted file mode 100644 index 1bab3fbd..00000000 --- a/elb/api-ref/elb_zq_bq_0013.rst +++ /dev/null @@ -1,102 +0,0 @@ -Status Codes -============ - -.. table:: **Table 1** Normal codes - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Status Code | Message | Description | - +=======================================+=======================================+=======================================+ - | 200 | OK | Specifies the normal response code | - | | | for the GET operation. | - | | | | - | | | This code is returned when a response | - | | | body is returned for the POST | - | | | operation. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | 204 | No Content | Specifies the normal response code | - | | | for the DELETE operation. | - | | | | - | | | This code is returned when no | - | | | response body is returned for the | - | | | POST operation. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 2** Error codes - - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | Status Code | Error Code | Description | Error Message | Measure | - +=============+============+============================+============================+============================+ - | 400 | VPC.1801 | The ID is incorrect. | resource id is | Use a correct resource ID. | - | | | | invalid/Getting id is | | - | | | | invalid. | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1801 | An action error occurs. | action is invalid. | Ensure that the value of | - | | | | | **action** is **create** | - | | | | | or **delete**. | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1801 | The key length is invalid. | Tag length is invalid. The | Input a valid key. | - | | | | key length must be in | | - | | | | range [1,36] and value in | | - | | | | range [0,43] | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.0007 | The project ID is | urlTenantId is not equal | Check the project ID. | - | | | incorrect. | token TenantId. | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 401 | VPC.0008 | The token in the request | Invalid token in the | Check whether the token is | - | | | is invalid or the request | header./Authorization | valid. | - | | | does not contain the | information is wrong. | | - | | | token. | | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1801 | The value length is | Tag length is invalid. The | Input a valid value. | - | | | invalid. | key length must be in | | - | | | | range [1,36] and value in | | - | | | | range [0,43] | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1801 | The key or value contains | InvalidInput/Tag value xxx | Check the validity of the | - | | | invalid characters. | is invalid. | key or value. | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1801 | The key or value is left | Tag xxx can not be null. | Check whether the key or | - | | | blank. | | value is left blank. | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1801 | The tag is null. | Tag can not be null. | Check whether the tag is | - | | | | | null. | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1801 | A resource type error | Resource xxx is invalid. | Ensure that the value of | - | | | occurs. | | **resource_type** is | - | | | | | **loadbalancers** or | - | | | | | **listeners**. | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1801 | The total number of tags | number of tags exceeds max | Reduce the number of tags. | - | | | added at a time exceeds | unm of 10. | | - | | | 10. | | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1814 | The total number of | Invalid input for | Reduce the number of tags. | - | | | existing tags and newly | operation: resource_id: | | - | | | added tags exceeds 10. | XXXX, number of tags | | - | | | | exceed max num of 10. | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1814 | The key values of newly | Invalid input for | Change the tag values. | - | | | added tags are duplicate. | operation: tags key is | | - | | | | duplicated. | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1814 | The resource ID does not | Resource XXX XXX could not | Check whether the resource | - | | | exist. | be found. | is available. | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1814 | The specified key to be | The resource could not be | Enter a correct key and | - | | | deleted does not exist, or | found. | send the request again. | - | | | the key is an empty | | | - | | | string. | | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1814 | More than 10 tags are | Invalid input for | Each resource supports up | - | | | added to a specified | operation:resource_id:xxx, | to 10 tags. | - | | | resource. | number of tags exceeds max | | - | | | | num of 10. | | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 400 | VPC.1801 | Tags are duplicate. | Tag key is repeated. | Delete duplicate tags and | - | | | | | resend the request. | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - | 500 | - | The request format is | Internal Server Error. | Use the correct request | - | | | incorrect. | | body format. | - +-------------+------------+----------------------------+----------------------------+----------------------------+ - -**Parent topic:** `Tag `__ diff --git a/elb/api-ref/elb_zq_fz_0000.rst b/elb/api-ref/elb_zq_fz_0000.rst deleted file mode 100644 index 2fcd8d24..00000000 --- a/elb/api-ref/elb_zq_fz_0000.rst +++ /dev/null @@ -1,11 +0,0 @@ -Load Balancer -============= - -- `Creating a Load Balancer `__ -- `Querying Load Balancers `__ -- `Querying Details of a Load Balancer `__ -- `Querying the Status Tree of a Load Balancer `__ -- `Updating a Load Balancer `__ -- `Deleting a Load Balancer `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_fz_0002.rst b/elb/api-ref/elb_zq_fz_0002.rst deleted file mode 100644 index b6c29133..00000000 --- a/elb/api-ref/elb_zq_fz_0002.rst +++ /dev/null @@ -1,437 +0,0 @@ -Querying Load Balancers -======================= - -Function -^^^^^^^^ - -This API is used to query load balancers and display them in a list. Filter query and pagination query are supported. Unless otherwise specified, exact match is applied. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v2.0/lbaas/loadbalancers - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | load balancer from which | - | | | | pagination query starts, | - | | | | that is, the ID of the last | - | | | | load balancer on the | - | | | | previous page. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | load balancers on each | - | | | | page. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the load | - | | | | balancer is used. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the load balancer | - | | | | ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the load | - | | | | balancer. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the load balancer | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | operating_status | No | String | This parameter is reserved, | - | | | | and its value can only be | - | | | | **ONLINE**. | - | | | | | - | | | | It specifies the operating | - | | | | status of the load | - | | | | balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | provisioning_status | No | String | This parameter is reserved, | - | | | | and its value can only be | - | | | | **ACTIVE**. | - | | | | | - | | | | It specifies the | - | | | | provisioning status of the | - | | | | load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | This parameter is reserved, | - | | | | and its value can only be | - | | | | **true**. | - | | | | | - | | | | It specifies the | - | | | | administrative status of | - | | | | the load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_address | No | String | Specifies the private IP | - | | | | address of the load | - | | | | balancer. | - | | | | | - | | | | The value contains a | - | | | | maximum of 64 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_port_id | No | String | Specifies the ID of the | - | | | | port bound to the private | - | | | | IP address of the load | - | | | | balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_subnet_id | No | String | Specifies the ID of the | - | | | | subnet where the load | - | | | | balancer works. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_address | No | String | Specifies the IP address of | - | | | | the backend server | - | | | | associated with the load | - | | | | balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_device_id | No | String | Specifies the ID of the | - | | | | cloud server used as the | - | | | | backend server associated | - | | | | with the load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vpc_id | No | String | Specifies the ID of the VPC | - | | | | where the load balancer | - | | | | works. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +---------------------+-------+--------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=====================+=======+======================================================================================+ - | loadbalancers | Array | Lists the load balancers. For details, see `Table | - | | | 3 <#el | - | | | b_zq_fz_0002__en-us_topic_0141008270_en-us_topic_0096561531_table10274202983318>`__. | - +---------------------+-------+--------------------------------------------------------------------------------------+ - | loadbalancers_links | Array | Provides links to the previous or next page during pagination query, respectively. | - | | | This parameter exists only in the response body of pagination query. For details, | - | | | see `Table | - | | | 6 <# | - | | | elb_zq_fz_0002__en-us_topic_0141008270_en-us_topic_0096561531_table661975283313>`__. | - +---------------------+-------+--------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **loadbalancer** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the load balancer is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the load balancer name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the load balancer. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_id | String | Specifies the ID of the subnet where | - | | | the load balancer works. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_port_id | String | Specifies the ID of the port bound to | - | | | the private IP address of the load | - | | | balancer. | - | | | | - | | | When you create a load balancer, the | - | | | system automatically creates a port | - | | | and associates it with a security | - | | | group. However, the security group | - | | | will not take effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provider | String | Specifies the provider of the load | - | | | balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_address | String | Specifies the private IP address of | - | | | the load balancer. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array | Lists the IDs of listeners added to | - | | | the load balancer. For details, see | - | | | `Table | - | | | 4 <#elb_zq_fz_0002__en-us_to | - | | | pic_0141008270_table107875111574>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Lists the IDs of backend server | - | | | groups associated with the load | - | | | balancer. For details, see `Table | - | | | 5 <#elb_zq_fz_0002__en-us_top | - | | | ic_0141008270_table1566642411246>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | This parameter is reserved, and its | - | | | value can only be **ONLINE**. | - | | | | - | | | It specifies the operating status of | - | | | the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the load balancer. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array | Lists load balancer tags. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the load | - | | | balancer was created. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the load | - | | | balancer was updated. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **listeners** parameter description - - ========= ====== ============================================ - Parameter Type Description - ========= ====== ============================================ - id String Specifies the ID of the associated listener. - ========= ====== ============================================ - -.. table:: **Table 5** **pools** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -.. table:: **Table 6** **loadbalancers_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. | - | | | | - | | | The value can be **next** or | - | | | **previous**. The value **next** | - | | | indicates the Hypertext Reference | - | | | (href) containing the URL of the next | - | | | page, and **previous** indicates the | - | | | href containing the URL of the | - | | | previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Querying all load balancers - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/loadbalancers - -- Example request 2: Querying load balancers by page (Each page contains one load balancer. The ID of the start load balancer is **165b6a38-5278-4569-b747-b2ee65ea84a4**. The load balancer after **165b6a38-5278-4569-b747-b2ee65ea84a4** is the queried load balancer.) - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/loadbalancers?limit=1&marker=165b6a38-5278-4569-b747-b2ee65ea84a4 - -- Example request 3: Querying the load balancer using the IP address of a backend server (192.168.0.191) - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/loadbalancers?member_address=192.168.0.181 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "loadbalancers": [ - { - "description": "simple lb", - "admin_state_up": true, - "tenant_id": "1a3e005cf9ce40308c900bcb08e5320c", - - "provisioning_status": "ACTIVE", - "vip_subnet_id": "5328f1e6-ce29-44f1-9493-b128a5653350", - "listeners": [ - { - "id": "45196943-2907-4369-87b1-c009b1d7ac35" - } - ], - "vip_address": "10.0.0.2", - "vip_port_id": "cbced4fe-6f6f-4fd6-9348-0c3d1219d6ca", - "provider": "vlb", - "pools": [ - { - "id": "21d49cf7-4fd3-4cb6-8c48-b7fc6c259aab" - } - ], - "id": "a9729389-6147-41a3-ab22-a24aed8692b2", - "operating_status": "ONLINE", - "tags": [], - "name": "loadbalancer1", - "created_at": "2018-07-25T01:54:13", - "updated_at": "2018-07-25T01:54:14" - } - ] - } - -- Example response 2 - - .. code:: screen - - { - "loadbalancers": [ - { - "description": "", - "provisioning_status": "ACTIVE", - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - - "admin_state_up": true, - "provider": "vlb", - "pools": [ - { - "id": "b13dba4c-a44c-4c40-8f6e-ce7a162b9f22" - }, - { - "id": "4b9e765f-82ee-4128-911b-0a2d9ebc74c7" - } - ], - "listeners": [ - { - "id": "21c41336-d0d3-4349-8641-6e82b4a4d097" - } - ], - "vip_port_id": "44ac5d9b-b0c0-4810-9a9d-c4dbf541e47e", - "operating_status": "ONLINE", - "vip_address": "192.168.0.234", - "vip_subnet_id": "9d60827e-0e5c-490a-8183-0b6ebf9084ca", - "id": "e79a7dd6-3a38-429a-95f9-c7f78b346cbe", - "tags": [], - "name": "elb-robot", - "created_at": "2018-07-25T01:54:13", - "updated_at": "2018-07-25T01:54:14" - } - ], - "loadbalancers_links": [ - { - "href": "https://network.Region.dc1.domainname.com/v2.0/lbaas/loadbalancers?limit=10&marker=e79a7dd6-3a38-429a-95f9-c7f78b346cbe&page_reverse=True", - "rel": "previous" - } - ] - } - -- Example response 3 - - .. code:: screen - - { - "loadbalancers": [ - { - "description": "", - "provisioning_status": "ACTIVE", - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - - "created_at": "2018-11-29T13:55:20", - "admin_state_up": true, - "update_at": "2018-11-29T13:55:21", - "id": "c1127125-64a9-4394-a08a-ef3be8f7ef9c", - "pools": [ - { - "id": "2f6895be-019b-4c82-9b53-c4a2ac009e20" - } - ], - "listeners": [ - { - "id": "5c63d176-444f-4c75-9cfe-bcb8a05a845c" - } - ], - "vip_port_id": "434ac600-b779-4428-b7a7-830e047511f1", - "operating_status": "ONLINE", - "vip_address": "192.168.0.181", - "vip_subnet_id": "9a303536-417c-45dc-a6db-1234b9e1c2b2", - "provider": "vlb", - "tags": [], - "name": "elb-ftci" - - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/elb_zq_fz_0004.rst b/elb/api-ref/elb_zq_fz_0004.rst deleted file mode 100644 index 2c4a1e0c..00000000 --- a/elb/api-ref/elb_zq_fz_0004.rst +++ /dev/null @@ -1,409 +0,0 @@ -Querying the Status Tree of a Load Balancer -=========================================== - -Function -^^^^^^^^ - -This API is used to query the status tree of a load balancer. You can use this API to query details about the associated listeners, backend server groups, backend servers, health checks, forwarding policies, and forwarding rules, helping you understand the topology of resources associated with the load balancer. - -URI -^^^ - -GET /v2.0/lbaas/loadbalancers/{loadbalancer_id}/statuses - -.. table:: **Table 1** Parameter description - - =============== ========= ====== =============================== - Parameter Mandatory Type Description - =============== ========= ====== =============================== - loadbalancer_id Yes String Specifies the load balancer ID. - =============== ========= ====== =============================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | statuses | Object | Specifies the status tree of a load balancer. For details, see `Table | - | | | 3 <#elb_zq_fz_0004__en-us_topic_0141008272_en-us_topic_0096561533_table1112044734716>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **statuses** parameter description - - +--------------+--------+--------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +==============+========+============================================================================================+ - | loadbalancer | Object | Specifies the load balancer. For details, see `Table | - | | | 4 <#elb_zq_fz_0004__en-us_topic_0141008272_en-us_topic_0096561533_table712410117487>`__. | - +--------------+--------+--------------------------------------------------------------------------------------------+ - -.. table:: **Table 4** **loadbalancer** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the load balancer name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array | Lists the listeners added to the load | - | | | balancer. For details of this | - | | | parameter, see `Table | - | | | 5 <#elb_zq_fz_0004 | - | | | __en-us_topic_0141008272_d0e1809>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Lists the backend server groups | - | | | associated with the load balancer. | - | | | For details of this parameter, see | - | | | `Table | - | | | 6 <#elb_zq_fz_0004__en-us_topi | - | | | c_0141008272_table99441432133413>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | This field is reserved. | - | | | | - | | | It specifies the operating status of | - | | | the load balancer. The value can be | - | | | one of the following: | - | | | | - | | | - **ONLINE** (default): The load | - | | | balancer is running normally. | - | | | - **DEGRADED**: This status is | - | | | displayed only when | - | | | **provisioning_status** of a | - | | | forwarding policy or forwarding | - | | | rule added to a listener of the | - | | | load balancer is set to **ERROR** | - | | | and the API for querying the load | - | | | balancer status tree is called. | - | | | - **DISABLED**: This status is | - | | | displayed only when | - | | | **admin_state_up** of the load | - | | | balancer is set to **false** and | - | | | the API for querying the load | - | | | balancer status tree is called. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** **listeners** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7policies | Array | Lists associated forwarding policies. | - | | | For details of this parameter, see | - | | | `Table | - | | | 9 <#elb_zq_fz_0004__en-us_topic | - | | | _0141008272_table129151528185512>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Lists the backend server groups | - | | | associated with the listener. For | - | | | details of this parameter, see `Table | - | | | 6 <#elb_zq_fz_0004__en-us_topi | - | | | c_0141008272_table99441432133413>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | This parameter is reserved, and its | - | | | value can only be **ONLINE**. | - | | | | - | | | It specifies the operating status of | - | | | the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** **pools** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the ID of the backend | - | | | server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the name of the backend | - | | | server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor | Object | Provides health check details of the | - | | | backend server group. For details of | - | | | this parameter, see `Table | - | | | 7 <#elb_zq_fz_0004__en-us_topi | - | | | c_0141008272_table10522133654610>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array | Lists the members contained in the | - | | | backend server group. For details of | - | | | this parameter, see `Table | - | | | 8 <#elb_zq_fz_0004__en-us_top | - | | | ic_0141008272_table1563417579480>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | This parameter is reserved, and its | - | | | value can only be **ONLINE**. | - | | | | - | | | It specifies the operating status of | - | | | the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** **healthmonitor** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | - Specifies the health check | - | | | protocol. | - | | | - The value can be **UDP_CONNECT**, | - | | | **TCP**, or **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the health check. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 8** **members** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the backend server ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | address | String | Specifies the private IP address of | - | | | the backend server, for example, | - | | | 192.168.3.11. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server. The port number | - | | | ranges from 0 to 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | This parameter is reserved. It | - | | | specifies the operating status of the | - | | | backend server. The value can be one | - | | | of the following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | - **NO_MONITOR**: No health check is | - | | | configured for the backend server | - | | | group that the backend server | - | | | belongs to. | - | | | - **DISABLED**: The backend server | - | | | is not available. This status is | - | | | displayed only when | - | | | **admin_state_up** of the backend | - | | | server, or the backend server | - | | | group to which it belongs, or the | - | | | associated load balancer is set to | - | | | **false** and the API for querying | - | | | the load balancer status tree is | - | | | called. | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - | | | | - | | | NOTE: | - | | | When **admin_state_up** is set to | - | | | **false** and **operating_status** is | - | | | set to **OFFLINE** for a backend | - | | | server, **DISABLED** is returned for | - | | | **operating_status** of the backend | - | | | server in the response of this API. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the backend server. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 9** **l7policies** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array | Lists the forwarding rules of the | - | | | forwarding policy. For details of | - | | | this parameter, see `Table | - | | | 10 <#elb_zq_fz_0004__en-us_to | - | | | pic_0141008272_table197162765814>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | action | String | - Specifies whether requests are | - | | | forwarded to another backend | - | | | server group or redirected to an | - | | | HTTPS listener. | - | | | - The value can be | - | | | **REDIRECT_TO_POOL** or | - | | | **REDIRECT_TO_LISTENER**. | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests | - | | | are forwarded to another | - | | | backend server group. | - | | | - **REDIRECT_TO_LISTENER**: | - | | | Requests are redirected to an | - | | | HTTPS listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding policy. Value | - | | | options: | - | | | | - | | | - **ACTIVE** (default): The | - | | | forwarding policy is normal. | - | | | - **ERROR**: Another forwarding | - | | | policy of the same listener has | - | | | the same forwarding rule. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 10** **rules** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding rule ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | - Specifies the match type of a | - | | | forwarding rule. | - | | | - The value can be **PATH** or | - | | | **HOST_NAME**. | - | | | | - | | | - **PATH**: matches the path in | - | | | the request. | - | | | - **HOST_NAME**: matches the | - | | | domain name in the request. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding rule. The value can | - | | | be one of the following: | - | | | | - | | | - **ACTIVE** (default): The | - | | | forwarding rule is normal. | - | | | - **ERROR**: Another forwarding | - | | | policy of the same listener has | - | | | the same forwarding rule. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/loadbalancers/38278031-cfca-44be-81be-a412f618773b/statuses - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "statuses": { - "loadbalancer": { - "name": "lb-jy", - "provisioning_status": "ACTIVE", - "listeners": [ - { - "name": "listener-jy-1", - "provisioning_status": "ACTIVE", - "pools": [ - { - "name": "pool-jy-1", - "provisioning_status": "ACTIVE", - "healthmonitor": { - "type": "TCP", - "id": "7422b51a-0ed2-4702-9429-4f88349276c6", - "name": "", - "provisioning_status": "ACTIVE" - }, - "members": [ - { - "protocol_port": 80, - "address": "192.168.44.11", - "id": "7bbf7151-0dce-4087-b316-06c7fa17b894", - "operating_status": "ONLINE", - "provisioning_status": "ACTIVE" - } - ], - "id": "c54b3286-2349-4c5c-ade1-e6bb0b26ad18", - "operating_status": "ONLINE" - } - ], - "l7policies": [], - "id": "eb84c5b4-9bc5-4bee-939d-3900fb05dc7b", - "operating_status": "ONLINE" - } - ], - "pools": [ - { - "name": "pool-jy-1", - "provisioning_status": "ACTIVE", - "healthmonitor": { - "type": "TCP", - "id": "7422b51a-0ed2-4702-9429-4f88349276c6", - "name": "", - "provisioning_status": "ACTIVE" - }, - "members": [ - { - "protocol_port": 80, - "address": "192.168.44.11", - "id": "7bbf7151-0dce-4087-b316-06c7fa17b894", - "operating_status": "ONLINE", - "provisioning_status": "ACTIVE" - } - ], - "id": "c54b3286-2349-4c5c-ade1-e6bb0b26ad18", - "operating_status": "ONLINE" - } - ], - "id": "38278031-cfca-44be-81be-a412f618773b", - "operating_status": "ONLINE" - } - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/elb_zq_fz_0005.rst b/elb/api-ref/elb_zq_fz_0005.rst deleted file mode 100644 index 5bd12989..00000000 --- a/elb/api-ref/elb_zq_fz_0005.rst +++ /dev/null @@ -1,248 +0,0 @@ -Updating a Load Balancer -======================== - -Function -^^^^^^^^ - -This API is used to update the name or description of a load balancer. - -URI -^^^ - -PUT /v2.0/lbaas/loadbalancers/{loadbalancer_id} - -.. table:: **Table 1** Parameter description - - =============== ========= ====== =============================== - Parameter Mandatory Type Description - =============== ========= ====== =============================== - loadbalancer_id Yes String Specifies the load balancer ID. - =============== ========= ====== =============================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +--------------+-----------+--------+-------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +==============+===========+========+===============================================================================+ - | loadbalancer | Yes | Object | Specifies the load balancer. For details, see `Table | - | | | | 3 <#elb_zq_fz_ | - | | | | 0005__en-us_topic_0141008274_en-us_topic_0096561536_table153641232163710>`__. | - +--------------+-----------+--------+-------------------------------------------------------------------------------+ - -.. table:: **Table 3** **loadbalancer** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the load balancer | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the load | - | | | | balancer. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the load balancer. | - | | | | | - | | | | This parameter is reserved. | - | | | | The default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +--------------+--------+--------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +==============+========+============================================================================================+ - | loadbalancer | Object | Specifies the load balancer. For details, see `Table | - | | | 5 <#elb_zq_fz_0005__en-us_topic_0141008274_en-us_topic_0096561536_table555616231383>`__. | - +--------------+--------+--------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **loadbalancer** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the load balancer is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the load balancer name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the load balancer. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_id | String | Specifies the ID of the subnet where | - | | | the load balancer works. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_port_id | String | Specifies the ID of the port bound to | - | | | the private IP address of the load | - | | | balancer. | - | | | | - | | | When you create a load balancer, the | - | | | system automatically creates a port | - | | | and associates it with a security | - | | | group. However, the security group | - | | | will not take effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provider | String | Specifies the provider of the load | - | | | balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_address | String | Specifies the private IP address of | - | | | the load balancer. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array | Lists the IDs of listeners added to | - | | | the load balancer. For details, see | - | | | `Table | - | | | 6 <#elb_zq_fz_0005__en-us_to | - | | | pic_0141008274_table107875111574>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Lists the IDs of backend server | - | | | groups associated with the load | - | | | balancer. For details, see `Table | - | | | 7 <#elb_zq_fz_0005__en-us_top | - | | | ic_0141008274_table1566642411246>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | This parameter is reserved, and its | - | | | value can only be **ONLINE**. | - | | | | - | | | It specifies the operating status of | - | | | the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the load balancer. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array | Lists load balancer tags. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the load | - | | | balancer was created. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the load | - | | | balancer was updated. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** **listeners** parameter description - - ========= ====== ============================================ - Parameter Type Description - ========= ====== ============================================ - id String Specifies the ID of the associated listener. - ========= ====== ============================================ - -.. table:: **Table 7** **pools** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Modifying the load balancer name and description - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/loadbalancers/1e11b74e-30b7-4b78-b09b-84aec4a04487 - - { - "loadbalancer": { - "name": "lb_update_test", - "description": "lb update test" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "loadbalancer": { - "description": "simple lb2", - "admin_state_up": true, - "tenant_id": "145483a5107745e9b3d80f956713e6a3", - - "provisioning_status": "ACTIVE", - "vip_subnet_id": "823d5866-6e30-45c2-9b1a-a1ebc3757fdb", - "listeners": [ - { - "id": "37ffe679-08ef-436e-b6bd-cf66fb4c3de2" - } - ], - "vip_address": "192.172.1.68", - "vip_port_id": "f42e3019-67f7-4d2a-8d1c-af49e7c22fa6", - "tags": [], - "provider": "vlb", - "pools": [ - { - "id": "75c4f2d4-a213-4408-9fa8-d64708e8d1df" - } - ], - "id": "c32a9f9a-0cc6-4f38-bb9c-cde79a533c19", - "operating_status": "ONLINE", - "name": "loadbalancer-test2", - "created_at": "2018-07-25T01:54:13", - "updated_at": "2018-07-25T01:54:14" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/elb_zq_fz_0006.rst b/elb/api-ref/elb_zq_fz_0006.rst deleted file mode 100644 index f11d8213..00000000 --- a/elb/api-ref/elb_zq_fz_0006.rst +++ /dev/null @@ -1,58 +0,0 @@ -Deleting a Load Balancer -======================== - -Function -^^^^^^^^ - -This API is used to delete a specific load balancer. - -Constraints -^^^^^^^^^^^ - -All listeners added to the load balancer must be deleted before the load balancer is deleted. - -URI -^^^ - -DELETE /v2.0/lbaas/loadbalancers/{loadbalancer_id} - -.. table:: **Table 1** Parameter description - - =============== ========= ====== =============================== - Parameter Mandatory Type Description - =============== ========= ====== =============================== - loadbalancer_id Yes String Specifies the load balancer ID. - =============== ========= ====== =============================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -Example request: Deleting a load balancer - -.. code:: screen - - DELETE https://{endpoint}/v2.0/lbaas/loadbalancers/90f7c765-0bc9-47c4-8513-4cc0c264c8f8 - -Example Response -^^^^^^^^^^^^^^^^ - -Example response - -None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/elb_zq_hd_0000.rst b/elb/api-ref/elb_zq_hd_0000.rst deleted file mode 100644 index 969e2556..00000000 --- a/elb/api-ref/elb_zq_hd_0000.rst +++ /dev/null @@ -1,12 +0,0 @@ -Backend Server -============== - -- `Adding a Backend Server `__ -- `Querying Backend Servers `__ -- `Querying Details of a Backend Server `__ -- `Updating a Backend Server `__ -- `Removing a Backend Server `__ -- `Querying All Backend Servers (Extension API) `__ -- `Batch Updating Backend Servers `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_hd_0001.rst b/elb/api-ref/elb_zq_hd_0001.rst deleted file mode 100644 index 9f40d348..00000000 --- a/elb/api-ref/elb_zq_hd_0001.rst +++ /dev/null @@ -1,299 +0,0 @@ -Adding a Backend Server -======================= - -Function -^^^^^^^^ - -This API is used to add a backend server to a specific backend server group. After a backend server group is added to a listener, traffic is distributed to backend servers in this server group using the specified load balancing algorithm. - -Constraints -^^^^^^^^^^^ - -Two backend servers in a backend server group cannot have the same private IP address or port number. - -The subnet specified during server creation must be in the same VPC as the subnet from which the private IP address of the load balancer is assigned. - -URI -^^^ - -POST /v2.0/lbaas/pools/{pool_id}/members - -.. table:: **Table 1** Parameter description - - ========= ========= ====== ============================================= - Parameter Mandatory Type Description - ========= ========= ====== ============================================= - pool_id Yes String Specifies the ID of the backend server group. - ========= ========= ====== ============================================= - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | member | Yes | Object | Specifies the backend server. For details, see `Table | - | | | | 3 <#elb_zq_hd_0001__en-us_topic_0096561556_table1686816641616>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 3** **member** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the backend | - | | | | server is used. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **project_id** in the | - | | | | token. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the backend | - | | | | server name. The value is | - | | | | an empty character string | - | | | | by default. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | address | Yes | String | Specifies the private IP | - | | | | address of the backend | - | | | | server. This IP address | - | | | | must be in the subnet | - | | | | specified by **subnet_id**. | - | | | | | - | | | | This parameter can be set | - | | | | only to the IP address of | - | | | | the primary NIC, for | - | | | | example, 192.168.3.11. | - | | | | | - | | | | The value contains a | - | | | | maximum of 64 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | Yes | Integer | Specifies the port used by | - | | | | the backend server. The | - | | | | port number ranges from 1 | - | | | | to 65535. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | subnet_id | Yes | String | Specifies the ID of the | - | | | | subnet where the backend | - | | | | server works. | - | | | | | - | | | | The private IP address of | - | | | | the backend server is in | - | | | | this subnet. | - | | | | | - | | | | Only IPv4 subnets are | - | | | | supported. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | weight | No | Integer | Specifies the backend | - | | | | server weight. The value | - | | | | ranges from **0** to | - | | | | **100**. | - | | | | | - | | | | If the value is **0**, the | - | | | | backend server will not | - | | | | accept new requests. The | - | | | | default value is **1**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | member | Object | Specifies the backend server. For details, see `Table | - | | | 5 <#elb_zq_hd_0001__en-us_topic_0096561556_table1096713051618>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **member** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the backend server ID. | - | | | | - | | | NOTE: | - | | | The value of this parameter is not | - | | | the ID of the server but an ID | - | | | automatically generated for the | - | | | backend server that has already | - | | | associated with the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the backend server is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | address | String | Specifies the private IP address of | - | | | the backend server. This IP address | - | | | must be in the subnet specified by | - | | | **subnet_id**. | - | | | | - | | | This parameter can be set only to the | - | | | IP address of the primary NIC, for | - | | | example, 192.168.3.11. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server. The port number | - | | | ranges from 1 to 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | subnet_id | String | Specifies the ID of the subnet where | - | | | the backend server works. The private | - | | | IP address of the backend server is | - | | | in this subnet. | - | | | | - | | | IPv6 subnets are not supported. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | weight | Integer | Specifies the backend server weight. | - | | | The value ranges from **0** to | - | | | **100**. | - | | | | - | | | If the value is **0**, the backend | - | | | server will not accept new requests. | - | | | The default value is **1**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the health check result of | - | | | the backend server. The value can be | - | | | one of the following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | - **NO_MONITOR**: No health check is | - | | | configured for the backend server | - | | | group that the backend server | - | | | belongs to. | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Step 1: Query the subnet ID and IP address using the server ID. **device_id** in the request indicates the server ID. Obtain the values of **subnet_id** and **ip_address** of the primary NIC (the port for which **primary_interface** is **true**) in the response body. - - .. code:: screen - - GET https://{VPCEndpoint}/v2.0/ports?device_id=f738c464-b5c2-45df-86c0-7f436620cd54 - - Example response - - .. code:: screen - - { - "ports": [ - { - "id": "94971c39-46f0-443a-85e8-31cb7497c78e", - "name": "", - "status": "ACTIVE", - "admin_state_up": true, - "fixed_ips": [ - { - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "ip_address": "192.168.44.11" - } - ], - "mac_address": "fa:16:3e:5c:d2:57", - "network_id": "1b76b9c2-9b7e-4ced-81bd-d13f7389d7c9", - "tenant_id": "04dd36f978800fe22f9bc00bea090736", - "project_id": "04dd36f978800fe22f9bc00bea090736", - "device_id": "f738c464-b5c2-45df-86c0-7f436620cd54", - "device_owner": "compute:xx-xxxx-4a", - "security_groups": [ - "a10dfc31-0055-4b84-b36e-1291b918125c", - "7a233393-5be2-4dff-8360-1558dd950f6e" - ], - "extra_dhcp_opts": [], - "allowed_address_pairs": [], - "binding:vnic_type": "normal", - "binding:vif_details": { - "primary_interface": true - }, - "binding:profile": {}, - "port_security_enabled": true, - "created_at": "2019-11-12T17:17:51", - "updated_at": "2019-11-12T17:17:51" - } - ] - } - -- Step 2: Use the subnet ID and IP address obtained in `â–ª Step 1 <#elb_zq_hd_0001__en-us_topic_0096561556_li1069222685516>`__ to add a backend server. - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members - - { - "member": { - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "protocol_port": 88, - "name": "member-jy-tt-1", - "address": "192.168.44.11" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "member": { - "name": "member-jy-tt-1", - "weight": 1, - "admin_state_up": true, - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "tenant_id": "145483a5107745e9b3d80f956713e6a3", - - "address": "192.168.44.11", - "protocol_port": 88, - "operating_status": "ONLINE", - "id": "c0042496-e220-44f6-914b-e6ca33bab503" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/elb_zq_hd_0002.rst b/elb/api-ref/elb_zq_hd_0002.rst deleted file mode 100644 index af088369..00000000 --- a/elb/api-ref/elb_zq_hd_0002.rst +++ /dev/null @@ -1,312 +0,0 @@ -Querying Backend Servers -======================== - -Function -^^^^^^^^ - -This API is used to query backend servers in a specific backend server group. Filter query and pagination query are supported. Unless otherwise specified, exact match is applied. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v2.0/lbaas/pools/{pool_id}/members - -.. table:: **Table 1** Parameter description - - ========= ========= ====== ============================================= - Parameter Mandatory Type Description - ========= ========= ====== ============================================= - pool_id Yes String Specifies the ID of the backend server group. - ========= ========= ====== ============================================= - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | backend server from which | - | | | | pagination query starts, | - | | | | that is, the ID of the last | - | | | | backend server on the | - | | | | previous page. If this | - | | | | parameter is not specified, | - | | | | the first page will be | - | | | | queried. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | backend servers on each | - | | | | page. If this parameter is | - | | | | not set, all backend | - | | | | servers are queried by | - | | | | default. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the backend | - | | | | server ID. | - | | | | | - | | | | NOTE: | - | | | | The value of this parameter | - | | | | is not the ID of the server | - | | | | but an ID automatically | - | | | | generated for the backend | - | | | | server that has already | - | | | | associated with the load | - | | | | balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the backend | - | | | | server is used. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the backend | - | | | | server name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - | | | | | - | | | | NOTE: | - | | | | The value of this parameter | - | | | | is not the name of server. | - | | | | It is the name | - | | | | automatically generated for | - | | | | the backend server | - | | | | associated with the load | - | | | | balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | address | No | String | Specifies the private IP | - | | | | address of the backend | - | | | | server. | - | | | | | - | | | | The value contains a | - | | | | maximum of 64 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | No | Integer | Specifies the port used by | - | | | | the backend server. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | subnet_id | No | String | Specifies the ID of the | - | | | | subnet where the backend | - | | | | server works. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | weight | No | Integer | Specifies the backend | - | | | | server weight. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 3** Response parameters - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | members | Array | Lists the backend servers in the | - | | | backend server group. For details, | - | | | see `Table | - | | | 4 <#elb_zq_hd_0002__en-us_top | - | | | ic_0096561554_table1877212199143>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members_links | Array | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - | | | | - | | | This parameter exists only in the | - | | | response body of pagination query. | - | | | For details, see `Table | - | | | 5 <#elb_zq_hd_0002__en-us_to | - | | | pic_0096561554_table109691887394>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **members** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the backend server ID. | - | | | | - | | | NOTE: | - | | | The value of this parameter is not | - | | | the ID of the server but an ID | - | | | automatically generated for the | - | | | backend server that has already | - | | | associated with the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the backend server is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | address | String | Specifies the private IP address of | - | | | the backend server. This IP address | - | | | must be in the subnet specified by | - | | | **subnet_id**. | - | | | | - | | | This parameter can be set only to the | - | | | IP address of the primary NIC, for | - | | | example, 192.168.3.11. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server. The port number | - | | | ranges from 1 to 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | subnet_id | String | Specifies the ID of the subnet where | - | | | the backend server works. The private | - | | | IP address of the backend server is | - | | | in this subnet. | - | | | | - | | | IPv6 subnets are not supported. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | weight | Integer | Specifies the backend server weight. | - | | | The value ranges from **0** to | - | | | **100**. | - | | | | - | | | If the value is **0**, the backend | - | | | server will not accept new requests. | - | | | The default value is **1**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | load balancer. This parameter is | - | | | reserved, and its value can only be | - | | | **ONLINE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** **members_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. The value can be | - | | | **next** or **previous**. | - | | | | - | | | - **next**: indicates the URL of the | - | | | next page. | - | | | - **previous**: indicates the URL of | - | | | the previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Querying all backend servers - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members - -- Example request 2: Querying the backend cloud server whose IP address is 10.0.0.8 and port number is 80 - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members?address=10.0.0.8&protocol_port=80 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "members": [ - { - "address": "10.0.0.8", - "admin_state_up": true, - "id": "9a7aff27-fd41-4ec1-ba4c-3eb92c629313", - "protocol_port": 80, - "subnet_id": "013d3059-87a4-45a5-91e9-d721068ae0b2", - "tenant_id": "1a3e005cf9ce40308c900bcb08e5320c", - "weight": 1, - "operating_status": "ONLINE", - "name": "member-name" - } - ] - } - -- Example response 2 - - .. code:: screen - - { - "members": [ - { - "address": "10.0.0.8", - "admin_state_up": true, - "id": "9a7aff27-fd41-4ec1-ba4c-3eb92c629313", - "protocol_port": 80, - "subnet_id": "013d3059-87a4-45a5-91e9-d721068ae0b2", - "tenant_id": "1a3e005cf9ce40308c900bcb08e5320c", - - "weight": 1, - "operating_status": "ONLINE", - "name": "member-name" - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/elb_zq_hd_0003.rst b/elb/api-ref/elb_zq_hd_0003.rst deleted file mode 100644 index 27f45d5f..00000000 --- a/elb/api-ref/elb_zq_hd_0003.rst +++ /dev/null @@ -1,176 +0,0 @@ -Querying Details of a Backend Server -==================================== - -Function -^^^^^^^^ - -This API is used to query details about a backend server. - -URI -^^^ - -GET /v2.0/lbaas/pools/{pool_id}/members/{member_id} - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | **Description** | - +=============================+=============================+=============================+=============================+ - | pool_id | Yes | String | Specifies the ID of the | - | | | | backend server group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_id | Yes | String | Specifies the backend | - | | | | server ID. | - | | | | | - | | | | NOTE: | - | | | | | - | | | | - The value of this | - | | | | parameter is not the ID | - | | | | of the server but an ID | - | | | | automatically generated | - | | | | for the backend server | - | | | | that has already | - | | | | associated with the load | - | | | | balancer. | - | | | | - You can obtain this | - | | | | value by calling the API | - | | | | described in `Querying | - | | | | Backend | - | | | | Servers `__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | member | Object | Lists the backend servers. For details, see `Table | - | | | 3 <#elb_zq_hd_0003__en-us_topic_0096561555_table1080991113150>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **member** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the backend server ID. | - | | | | - | | | NOTE: | - | | | The value of this parameter is not | - | | | the ID of the server but an ID | - | | | automatically generated for the | - | | | backend server that has already | - | | | associated with the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the backend server is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | address | String | Specifies the private IP address of | - | | | the backend server. This IP address | - | | | must be in the subnet specified by | - | | | **subnet_id**. | - | | | | - | | | This parameter can be set only to the | - | | | IP address of the primary NIC, for | - | | | example, 192.168.3.11. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server. The port number | - | | | ranges from 1 to 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | subnet_id | String | Specifies the ID of the subnet where | - | | | the backend server works. The private | - | | | IP address of the backend server is | - | | | in this subnet. | - | | | | - | | | IPv6 subnets are not supported. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | weight | Integer | Specifies the backend server weight. | - | | | The value ranges from **0** to | - | | | **100**. | - | | | | - | | | If the value is **0**, the backend | - | | | server will not accept new requests. | - | | | The default value is **1**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the health check result of | - | | | the backend server. The value can be | - | | | one of the following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | - **NO_MONITOR**: No health check is | - | | | configured for the backend server | - | | | group that the backend server | - | | | belongs to. | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Querying details of a backend server - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members/cf024846-7516-4e3a-b0fb-6590322c836f - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "member": { - "name": "", - "weight": 1, - "admin_state_up": true, - "subnet_id": "823d5866-6e30-45c2-9b1a-a1ebc3757fdb", - "tenant_id": "145483a5107745e9b3d80f956713e6a3", - - "address": "192.172.3.100", - "protocol_port": 8080, - "operating_status": "ONLINE", - "id": "e58f5bfa-0e46-4bc5-951c-8473d3e5f24a" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/elb_zq_hd_0004.rst b/elb/api-ref/elb_zq_hd_0004.rst deleted file mode 100644 index 0bc37f3c..00000000 --- a/elb/api-ref/elb_zq_hd_0004.rst +++ /dev/null @@ -1,224 +0,0 @@ -Updating a Backend Server -========================= - -Function -^^^^^^^^ - -This API is used to update a backend server. You can modify its name and weight. You can set a larger weight for backend servers that can receive more traffic. - -Constraints -^^^^^^^^^^^ - -If the provisioning status of the associated load balancer is not **ACTIVE**, the backend server cannot be updated. - -URI -^^^ - -PUT /v2.0/lbaas/pools/{pool_id}/members/{member_id} - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | pool_id | Yes | String | Specifies the ID of the | - | | | | backend server group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_id | Yes | String | Specifies the backend | - | | | | server ID. | - | | | | | - | | | | NOTE: | - | | | | | - | | | | - The value of this | - | | | | parameter is not the ID | - | | | | of the server but an ID | - | | | | automatically generated | - | | | | for the backend server | - | | | | that has already | - | | | | associated with the load | - | | | | balancer. | - | | | | - You can obtain this | - | | | | value by calling the API | - | | | | described in `Querying | - | | | | Backend | - | | | | Servers `__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | member | Yes | Object | Specifies the backend server. For details, see `Table | - | | | | 3 <#elb_zq_hd_0004__en-us_topic_0096561557_table86692915171>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 3** **member** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the backend | - | | | | server name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | weight | No | Integer | Specifies the backend | - | | | | server weight. The value | - | | | | ranges from **0** to | - | | | | **100**. | - | | | | | - | | | | If the value is **0**, the | - | | | | backend server will not | - | | | | accept new requests. The | - | | | | default value is **1**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | member | Object | Specifies the backend server. For details, see `Table | - | | | 5 <#elb_zq_hd_0004__en-us_topic_0096561557_table165363113183>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **member** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the backend server ID. | - | | | | - | | | NOTE: | - | | | The value of this parameter is not | - | | | the ID of the server but an ID | - | | | automatically generated for the | - | | | backend server that has already | - | | | associated with the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the backend server is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | address | String | Specifies the private IP address of | - | | | the backend server. This IP address | - | | | must be in the subnet specified by | - | | | **subnet_id**. | - | | | | - | | | This parameter can be set only to the | - | | | IP address of the primary NIC, for | - | | | example, 192.168.3.11. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server. The port number | - | | | ranges from 1 to 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | subnet_id | String | Specifies the ID of the subnet where | - | | | the backend server works. The private | - | | | IP address of the backend server is | - | | | in this subnet. | - | | | | - | | | IPv6 subnets are not supported. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | weight | Integer | Specifies the backend server weight. | - | | | The value ranges from **0** to | - | | | **100**. | - | | | | - | | | If the value is **0**, the backend | - | | | server will not accept new requests. | - | | | The default value is **1**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the health check result of | - | | | the backend server. The value can be | - | | | one of the following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | - **NO_MONITOR**: No health check is | - | | | configured for the backend server | - | | | group that the backend server | - | | | belongs to. | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Updating the name and weight of a backend server - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members/c0042496-e220-44f6-914b-e6ca33bab503 - - { - "member": { - "name": "member create test", - "weight": 10 - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "member": { - "name": "member-jy-tt-1", - "weight": 1, - "admin_state_up": true, - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "tenant_id": "145483a5107745e9b3d80f956713e6a3", - "address": "192.168.44.11", - "protocol_port": 88, - "operating_status": "ONLINE", - "id": "c0042496-e220-44f6-914b-e6ca33bab503" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/elb_zq_hd_0005.rst b/elb/api-ref/elb_zq_hd_0005.rst deleted file mode 100644 index 6afb1c2a..00000000 --- a/elb/api-ref/elb_zq_hd_0005.rst +++ /dev/null @@ -1,79 +0,0 @@ -Removing a Backend Server -========================= - -Function -^^^^^^^^ - -This API is used to remove a backend server by its ID. - -Constraints -^^^^^^^^^^^ - -After you remove a backend server, new connections to this server will not be established. However, long connections that have been established will be maintained. - -URI -^^^ - -DELETE /v2.0/lbaas/pools/{pool_id}/members/{member_id} - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | pool_id | Yes | String | Specifies the ID of the | - | | | | backend server group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_id | Yes | String | Specifies the backend | - | | | | server ID. | - | | | | | - | | | | NOTE: | - | | | | | - | | | | - The value of this | - | | | | parameter is not the ID | - | | | | of the server but an ID | - | | | | automatically generated | - | | | | for the backend server | - | | | | that has already | - | | | | associated with the load | - | | | | balancer. | - | | | | - You can obtain this | - | | | | value by calling the API | - | | | | described in `Querying | - | | | | Backend | - | | | | Servers `__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Removing a backend server - - .. code:: screen - - DELETE https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members/cf024846-7516-4e3a-b0fb-6590322c836f - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/elb_zq_hd_0006.rst b/elb/api-ref/elb_zq_hd_0006.rst deleted file mode 100644 index c9e09dfc..00000000 --- a/elb/api-ref/elb_zq_hd_0006.rst +++ /dev/null @@ -1,408 +0,0 @@ -Querying All Backend Servers (Extension API) -============================================ - -Function -^^^^^^^^ - -This API is used to query all backend servers. Filter query and pagination query are supported. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v2.0/lbaas/members - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | backend server from which | - | | | | pagination query starts, | - | | | | that is, the ID of the last | - | | | | backend server on the | - | | | | previous page. If this | - | | | | parameter is not specified, | - | | | | the first page will be | - | | | | queried. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | backend servers on each | - | | | | page. If this parameter is | - | | | | not set, all backend | - | | | | servers are queried by | - | | | | default. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the backend | - | | | | server ID. | - | | | | | - | | | | NOTE: | - | | | | The value of this parameter | - | | | | is not the ID of the server | - | | | | but an ID automatically | - | | | | generated for the backend | - | | | | server that has already | - | | | | associated with the load | - | | | | balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the backend | - | | | | server name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | address | No | String | Specifies the private IP | - | | | | address of the backend | - | | | | server. | - | | | | | - | | | | The value contains a | - | | | | maximum of 64 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | No | Integer | Specifies the port used by | - | | | | the backend server. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | subnet_id | No | String | Specifies the ID of the | - | | | | subnet where the backend | - | | | | server works. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | weight | No | Integer | Specifies the backend | - | | | | server weight. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | No | String | Specifies the backend | - | | | | server ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | operating_status | No | String | Specifies the health check | - | | | | result of the backend | - | | | | server. The value can be | - | | | | one of the following: | - | | | | | - | | | | - **ONLINE**: The backend | - | | | | server is running | - | | | | normally. | - | | | | - **NO_MONITOR**: No | - | | | | health check is | - | | | | performed on the backend | - | | | | server. | - | | | | - **OFFLINE**: The cloud | - | | | | server used as the | - | | | | backend server is | - | | | | stopped or does not | - | | | | exist. | - | | | | | - | | | | The default value is | - | | | | **ONLINE**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | members_links | No | Array | Provides links to the | - | | | | previous or next page | - | | | | during pagination query, | - | | | | respectively. | - | | | | | - | | | | This parameter exists only | - | | | | in the response body of | - | | | | pagination query. For | - | | | | details, see `Table | - | | | | 5 <#elb_zq_hd_000 | - | | | | 6__en-us_topic_000000112942 | - | | | | 1772_table168848562488>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 2** **members_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. The value can be | - | | | **next** or **previous**. | - | | | | - | | | - **next**: indicates the URL of the | - | | | next page. | - | | | - **previous**: indicates the URL of | - | | | the previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 3** Response parameters - - +-----------+-------+------------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+=======+================================================================================================+ - | members | Array | Lists the backend servers. For details, see `Table | - | | | 4 <#elb_zq_hd_0006__en-us_topic_0000001129421772_table19836165644814>`__. | - +-----------+-------+------------------------------------------------------------------------------------------------+ - -.. table:: **Table 4** **members** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the backend server ID. | - | | | | - | | | NOTE: | - | | | The value of this parameter is not | - | | | the ID of the server but an ID | - | | | automatically generated for the | - | | | backend server that has already | - | | | associated with the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the backend server is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | address | String | Specifies the private IP address of | - | | | the backend server. This IP address | - | | | must be in the subnet specified by | - | | | **subnet_id**. | - | | | | - | | | This parameter can be set only to the | - | | | IP address of the primary NIC, for | - | | | example, 192.168.3.11. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | backend server. The port number | - | | | ranges from 1 to 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | subnet_id | String | Specifies the ID of the subnet where | - | | | the backend server works. The private | - | | | IP address of the backend server is | - | | | in this subnet. | - | | | | - | | | IPv6 subnets are not supported. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | weight | Integer | Specifies the backend server weight. | - | | | The value ranges from **0** to | - | | | **100**. | - | | | | - | | | If the value is **0**, the backend | - | | | server will not accept new requests. | - | | | The default value is **1**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the health check result of | - | | | the backend server. The value can be | - | | | one of the following: | - | | | | - | | | - **ONLINE**: The backend server is | - | | | running normally. | - | | | - **NO_MONITOR**: No health check is | - | | | performed on the backend server. | - | | | - **OFFLINE**: The cloud server used | - | | | as the backend server is stopped | - | | | or does not exist. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | device_id | String | Specifies the ID of the cloud server | - | | | used as the backend server. If the | - | | | cloud server does not exist, this | - | | | parameter is an empty string. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | device_owner | String | Specifies the resource ID and AZ ID | - | | | of the cloud server used as the | - | | | backend server, for example, | - | | | **compute:az2.dc2**. | - | | | | - | | | If no corresponding ECS is available, | - | | | the value is an empty string. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancer_id | String | Specifies the backend server ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members_links | Array | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - | | | | - | | | This parameter exists only in the | - | | | response body of pagination query. | - | | | For details, see `Table | - | | | 5 <#elb_zq_hd_0006__en-us_topic_00 | - | | | 00001129421772_table168848562488>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pool_id | String | Specifies the backend server ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** **members_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. The value can be | - | | | **next** or **previous**. | - | | | | - | | | - **next**: indicates the URL of the | - | | | next page. | - | | | - **previous**: indicates the URL of | - | | | the previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Querying all backend servers - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/members - -- Example request 2: Displaying two backend servers on each page and filtering out backend servers whose health check result is **OFFLINE** - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/members?operating_status=OFFLINE&limit=2 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "members": [ - { - "name": "", - "weight": 1, - "admin_state_up": false, - "subnet_id": "03e1458a-fe0d-4e2f-bc4a-44f25a045287", - "tenant_id": "573d73c9f90e48d0bddfa0eb202b25c2", - "pool_id": "b299051c-a154-4bd6-b630-215151593306", - "loadbalancer_id": "77bfe95e-9f5b-4cff-afd9-900f8de5775b", - "device_owner": "", - "address": "192.168.77.11", - "protocol_port": 880, - "id": "50bd4ae0-fdf4-4540-b94a-04ce6241751e", - "operating_status": "OFFLINE", - "device_id": "" - }, - { - "name": "", - "weight": 1, - "admin_state_up": false, - "subnet_id": "03e1458a-fe0d-4e2f-bc4a-44f25a045287", - "tenant_id": "573d73c9f90e48d0bddfa0eb202b25c2", - "pool_id": "b299051c-a154-4bd6-b630-215151593306", - "loadbalancer_id": "77bfe95e-9f5b-4cff-afd9-900f8de5775b", - "device_owner": "", - "address": "192.168.77.12", - "protocol_port": 880, - "id": "fa2045e3-b296-406b-ad12-1611dce44be6", - "operating_status": "OFFLINE", - "device_id": "" - } - ] - } - -- Example response 2 - - .. code:: screen - - { - "members_links": [ - { - "href": "https://network.localdomain.com:8020/v2.0/lbaas/members?pool_id=b299051c-a154-4bd6-b630-215151593306&marker=50bd4ae0-fdf4-4540-b94a-04ce6241751e&page_reverse=True", - "rel": "previous" - } - ], - "members": [ - { - "name": "", - "weight": 1, - "admin_state_up": false, - "subnet_id": "03e1458a-fe0d-4e2f-bc4a-44f25a045287", - "tenant_id": "573d73c9f90e48d0bddfa0eb202b25c2", - "pool_id": "b299051c-a154-4bd6-b630-215151593306", - "loadbalancer_id": "77bfe95e-9f5b-4cff-afd9-900f8de5775b", - "device_owner": "", - "address": "192.168.77.11", - "protocol_port": 880, - "id": "50bd4ae0-fdf4-4540-b94a-04ce6241751e", - "operating_status": "OFFLINE", - "device_id": "" - }, - { - "name": "", - "weight": 1, - "admin_state_up": false, - "subnet_id": "03e1458a-fe0d-4e2f-bc4a-44f25a045287", - "tenant_id": "573d73c9f90e48d0bddfa0eb202b25c2", - "pool_id": "b299051c-a154-4bd6-b630-215151593306", - "loadbalancer_id": "77bfe95e-9f5b-4cff-afd9-900f8de5775b", - "device_owner": "", - "address": "192.168.77.12", - "protocol_port": 880, - "id": "fa2045e3-b296-406b-ad12-1611dce44be6", - "operating_status": "OFFLINE", - "device_id": "" - } - ] - } - -Return Codes -^^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/elb_zq_hd_0007.rst b/elb/api-ref/elb_zq_hd_0007.rst deleted file mode 100644 index 0c174e1c..00000000 --- a/elb/api-ref/elb_zq_hd_0007.rst +++ /dev/null @@ -1,273 +0,0 @@ -Batch Updating Backend Servers -============================== - -Function -^^^^^^^^ - -This API is used to update backend servers in batches. - -Constraints -^^^^^^^^^^^ - -- A maximum of 200 backend servers can be modified at a time. -- Two backend servers a backend server group cannot have the same private IP address or port number. -- The subnet specified during server creation must be in the same VPC as the subnet from which the private IP address of the load balancer is assigned. - -URI -^^^ - -PUT /v2.0/lbaas/pools/{pool_id}/members - -.. table:: **Table 1** Parameter description - - ========= ========= ====== ============================================= - Parameter Mandatory Type Description - ========= ========= ====== ============================================= - pool_id Yes String Specifies the ID of the backend server group. - ========= ========= ====== ============================================= - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | members | Yes | Array | Lists the backend servers | - | | | | in the backend server | - | | | | group. If **action** is set | - | | | | to **add** or **replace**, | - | | | | see `Table | - | | | | 3 <#elb_zq_hd_00 | - | | | | 07__en-us_topic_00000011294 | - | | | | 21786_table328016212049>`__ | - | | | | for details about the | - | | | | parameters. If **action** | - | | | | is set to **delete**, see | - | | | | `Table | - | | | | 4 <#elb_zq_hd_0007_ | - | | | | _en-us_topic_00000011294217 | - | | | | 86_table182591957155011>`__ | - | | | | for details about the | - | | | | parameters. | - | | | | | - | | | | An empty list is supported. | - | | | | If **action** is set to | - | | | | **add**, no backend server | - | | | | is added to the backend | - | | | | server group. If **action** | - | | | | is set to **replace**, all | - | | | | backend servers are removed | - | | | | from the backend cloud | - | | | | server group. If **action** | - | | | | is set to **delete**, no | - | | | | backend server is removed. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | action | No | String | Specifies the operation | - | | | | type. The value can be | - | | | | **add**, **delete**, or | - | | | | **replace**. The default | - | | | | value is **replace**. | - | | | | | - | | | | - **add**: All backend | - | | | | servers in the request | - | | | | body are added to the | - | | | | backend server group in | - | | | | batches. | - | | | | - **delete**: All backend | - | | | | servers in the request | - | | | | are removed from the | - | | | | backend server group in | - | | | | batches. | - | | | | - **replace**: All backend | - | | | | servers in the backend | - | | | | server group are | - | | | | replaced with those in | - | | | | the request body. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 3** **members** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the backend | - | | | | server name. The value is | - | | | | an empty character string | - | | | | by default. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | address | Yes | String | Specifies the private IP | - | | | | address of the backend | - | | | | server. This IP address | - | | | | must be in the subnet | - | | | | specified by **subnet_id**. | - | | | | | - | | | | This parameter can be set | - | | | | only to the IP address of | - | | | | the primary NIC, for | - | | | | example, 192.168.3.11. | - | | | | | - | | | | The value contains a | - | | | | maximum of 64 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | Yes | Integer | Specifies the port used by | - | | | | the backend server. The | - | | | | port number ranges from 1 | - | | | | to 65535. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | subnet_id | Yes | String | Specifies the ID of the | - | | | | subnet where the backend | - | | | | server works. The private | - | | | | IP address of the backend | - | | | | server is in this subnet. | - | | | | | - | | | | IPv6 subnets are not | - | | | | supported. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | weight | No | Integer | Specifies the backend | - | | | | server weight. The value | - | | | | ranges from **0** to | - | | | | **100**. | - | | | | | - | | | | If the value is **0**, the | - | | | | backend server will not | - | | | | accept new requests. The | - | | | | default value is **1**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 4** **members** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | id | Yes | String | Specifies the backend | - | | | | server ID. | - | | | | | - | | | | NOTE: | - | | | | | - | | | | - The value of this | - | | | | parameter is not the ID | - | | | | of the server but an ID | - | | | | automatically generated | - | | | | for the backend server | - | | | | that has already | - | | | | associated with the load | - | | | | balancer. | - | | | | - You can obtain this | - | | | | value by calling the API | - | | | | described in `Querying | - | | | | Backend | - | | | | Server | - | | | | s `__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Adding backend servers in batches - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members - - { - "members": [ - { - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "protocol_port": 88, - "name": "member-1", - "address": "192.168.44.11" - }, - { - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "protocol_port": 88, - "name": "member-2", - "address": "192.168.44.12" - }, - { - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "protocol_port": 88, - "name": "member-3", - "address": "192.168.44.13" - } - ], - "action": "add" - } - -- Example request 2: Updating backend servers in batches - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members - - { - "members": [ - { - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "protocol_port": 88, - "name": "member-1", - "address": "192.168.44.11" - }, - { - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "protocol_port": 88, - "name": "member-3", - "address": "192.168.44.12" - }, - { - "subnet_id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503", - "protocol_port": 88, - "name": "member-3", - "address": "192.168.44.13" - } - ] - } - -- Example request 3: Removing backend servers in batches - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332/members - - { - "members": [ - { - "id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503" - }, - { - "id": "33d8b01a-bbe6-41f4-bc45-78a1d284d503" - } - ], - "action": "delete" - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - None - -- Example response 2 - - None - -- Example response 3 - - None - -Status Code -^^^^^^^^^^^ - -If the operation succeeds, 202 Accepted is returned. For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Backend Server `__ diff --git a/elb/api-ref/elb_zq_hz_0000.rst b/elb/api-ref/elb_zq_hz_0000.rst deleted file mode 100644 index 6fafa3ee..00000000 --- a/elb/api-ref/elb_zq_hz_0000.rst +++ /dev/null @@ -1,10 +0,0 @@ -Backend Server Group -==================== - -- `Adding a Backend Server Group `__ -- `Querying Backend Server Groups `__ -- `Querying Details of a Backend Server Group `__ -- `Updating a Backend Server Group `__ -- `Deleting a Backend Server Group `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_hz_0001.rst b/elb/api-ref/elb_zq_hz_0001.rst deleted file mode 100644 index 3c5e995c..00000000 --- a/elb/api-ref/elb_zq_hz_0001.rst +++ /dev/null @@ -1,602 +0,0 @@ -Adding a Backend Server Group -============================= - -Function -^^^^^^^^ - -This API is used to add a backend server group. After multiple backend servers are added to a backend server group, requests are distributed among backend servers based on the load balancing algorithm configured for the backend server group and the weight set for each backend server. - -Constraints -^^^^^^^^^^^ - -- Backend server groups using different protocols cannot be added to the same listener. -- If parameter **session-persistence** is configured, parameter **cookie_name** is available only when the value of **type** is **APP_COOKIE**. - -URI -^^^ - -POST /v2.0/lbaas/pools - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | pool | Yes | Object | Specifies the backend server group. For details, see `Table | - | | | | 2 <#elb_zq_hz_0001__en-us_topic_0096561549_table1263319159>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 2** **pool** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the backend | - | | | | server group is used. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **project_id** in the | - | | | | token. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the name of the | - | | | | backend server group. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | backend server group. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | Yes | String | Specifies the protocol that | - | | | | the backend server group | - | | | | uses to receive requests. | - | | | | | - | | | | TCP, UDP, and HTTP are | - | | | | supported. | - | | | | | - | | | | When a backend server group | - | | | | is associated with a | - | | | | listener, the relationships | - | | | | between the protocol used | - | | | | by the listener and the | - | | | | protocol of the backend | - | | | | server group are as | - | | | | follows: | - | | | | | - | | | | - When the protocol used | - | | | | by the listener is | - | | | | **UDP**, the protocol of | - | | | | the backend server group | - | | | | must be **UDP**. | - | | | | - When the protocol used | - | | | | by the listener is | - | | | | **TCP**, the protocol of | - | | | | the backend server group | - | | | | must be **TCP**. | - | | | | - When the protocol used | - | | | | by the listener is | - | | | | **HTTP** or | - | | | | **TERMINATED_HTTPS**, | - | | | | the protocol of the | - | | | | backend server group | - | | | | must be **HTTP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | lb_algorithm | Yes | String | Specifies the load | - | | | | balancing algorithm of the | - | | | | backend server group. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **ROUND_ROBIN**: | - | | | | indicates the weighted | - | | | | round robin algorithm. | - | | | | - **LEAST_CONNECTIONS**: | - | | | | indicates the weighted | - | | | | least connections | - | | | | algorithm. | - | | | | - **SOURCE_IP**: indicates | - | | | | the source IP hash | - | | | | algorithm. | - | | | | | - | | | | When the value is | - | | | | **SOURCE_IP**, the weights | - | | | | of backend servers in the | - | | | | server group are invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server group. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | No | String | Specifies the ID of the | - | | | | listener associated with | - | | | | the backend server group. | - | | | | | - | | | | Specify either | - | | | | **listener_id** or | - | | | | **loadbalancer_id**, or | - | | | | both of them. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | No | String | Specifies the ID of the | - | | | | load balancer associated | - | | | | with the backend server | - | | | | group. | - | | | | | - | | | | Specify either | - | | | | **listener_id** or | - | | | | **loadbalancer_id**, or | - | | | | both of them. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | session_persistence | No | Object | Specifies the sticky | - | | | | session timeout duration in | - | | | | minutes. For details, see | - | | | | `Table | - | | | | 3 <#elb_zq_ | - | | | | hz_0001__en-us_topic_009656 | - | | | | 1549_table168044271458>`__. | - | | | | | - | | | | If the value is **null**, | - | | | | the sticky session feature | - | | | | is disabled. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 3** **session_persistence** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | type | Yes | String | Specifies the sticky | - | | | | session type. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **SOURCE_IP**: Requests | - | | | | are distributed based on | - | | | | the client's IP address. | - | | | | Requests from the same | - | | | | IP address are sent to | - | | | | the same backend server. | - | | | | - **HTTP_COOKIE**: When | - | | | | the client sends a | - | | | | request for the first | - | | | | time, the load balancer | - | | | | automatically generates | - | | | | a cookie and inserts the | - | | | | cookie into the response | - | | | | message. Subsequent | - | | | | requests are sent to the | - | | | | backend server that | - | | | | processes the first | - | | | | request. | - | | | | - **APP_COOKIE**: When the | - | | | | client sends a request | - | | | | for the first time, the | - | | | | backend server that | - | | | | receives the request | - | | | | generates a cookie and | - | | | | inserts the cookie into | - | | | | the response message. | - | | | | Subsequent requests are | - | | | | sent to this backend | - | | | | server. | - | | | | | - | | | | When the protocol of the | - | | | | backend server group is | - | | | | TCP, only **SOURCE_IP** | - | | | | takes effect. When the | - | | | | protocol of the backend | - | | | | server group is HTTP, only | - | | | | **HTTP_COOKIE** or | - | | | | **APP_COOKIE** takes | - | | | | effect. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | cookie_name | No | String | Specifies the cookie name. | - | | | | | - | | | | This parameter is mandatory | - | | | | when the sticky session | - | | | | type is **APP_COOKIE**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | persistence_timeout | No | Integer | Specifies the sticky | - | | | | session timeout duration in | - | | | | minutes. | - | | | | | - | | | | This parameter is invalid | - | | | | when **type** is set to | - | | | | **APP_COOKIE**. | - | | | | | - | | | | The value range varies | - | | | | depending on the protocol | - | | | | of the backend server | - | | | | group: | - | | | | | - | | | | - When the protocol of the | - | | | | backend server group is | - | | | | TCP or UDP, the value | - | | | | ranges from **1** to | - | | | | **60**. | - | | | | - When the protocol of the | - | | | | backend server group is | - | | | | HTTP or HTTPS, the value | - | | | | ranges from **1** to | - | | | | **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | pool | Object | Specifies the backend server group. For details, see `Table | - | | | 5 <#elb_zq_hz_0001__en-us_topic_0096561549_table549816561954>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **pools** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the ID of the backend | - | | | server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the backend server group is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the name of the backend | - | | | server group. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the backend server group. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol that the | - | | | backend server group uses to receive | - | | | requests. | - | | | | - | | | TCP, UDP, and HTTP are supported. | - | | | | - | | | When a backend server group is | - | | | associated with a listener, the | - | | | relationships between the protocol | - | | | used by the listener and the protocol | - | | | of the backend server group are as | - | | | follows: | - | | | | - | | | - When the protocol used by the | - | | | listener is **UDP**, the protocol | - | | | of the backend server group must | - | | | be **UDP**. | - | | | - When the protocol used by the | - | | | listener is **TCP**, the protocol | - | | | of the backend server group must | - | | | be **TCP**. | - | | | - When the protocol used by the | - | | | listener is **HTTP** or | - | | | **TERMINATED_HTTPS**, the protocol | - | | | of the backend server group must | - | | | be **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm of the backend server | - | | | group. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **ROUND_ROBIN**: indicates the | - | | | weighted round robin algorithm. | - | | | - **LEAST_CONNECTIONS**: indicates | - | | | the weighted least connections | - | | | algorithm. | - | | | - **SOURCE_IP**: indicates the | - | | | source IP hash algorithm. When the | - | | | value is **SOURCE_IP**, the | - | | | weights of backend servers in the | - | | | server group are invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array | Lists the IDs of backend servers in | - | | | the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor_id | String | Specifies the ID of the health check | - | | | configured for the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server group. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array | Lists the IDs of listeners associated | - | | | with the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array | Lists the IDs of load balancers | - | | | associated with the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_persistence | Object | Specifies whether to enable sticky | - | | | sessions. For details, see `Table | - | | | 9 <#elb_zq_hz_0001__en-us_top | - | | | ic_0096561549_table1659974218492>`__. | - | | | | - | | | Once sticky session are enabled, | - | | | requests from the same client are | - | | | sent to the same backend server | - | | | during the session. | - | | | | - | | | When sticky sessions are disabled, | - | | | the value is **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** **members** parameter description - - ========= ====== ================================================== - Parameter Type Description - ========= ====== ================================================== - id String Specifies the ID of the associated backend server. - ========= ====== ================================================== - -.. table:: **Table 7** **listeners** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -.. table:: **Table 8** **loadbalancers** parameter description - - ========= ====== ================================================= - Parameter Type Description - ========= ====== ================================================= - id String Specifies the ID of the associated load balancer. - ========= ====== ================================================= - -.. table:: **Table 9** **session_persistence** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | type | String | Specifies the sticky session type. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **SOURCE_IP**: Requests are | - | | | distributed based on the client's | - | | | IP address. Requests from the same | - | | | IP address are sent to the same | - | | | backend server. | - | | | - **HTTP_COOKIE**: When the client | - | | | sends a request for the first | - | | | time, the load balancer | - | | | automatically generates a cookie | - | | | and inserts the cookie into the | - | | | response message. Subsequent | - | | | requests are sent to the backend | - | | | server that processes the first | - | | | request. | - | | | - **APP_COOKIE**: When the client | - | | | sends a request for the first | - | | | time, the backend server that | - | | | receives the request generates a | - | | | cookie and inserts the cookie into | - | | | the response message. Subsequent | - | | | requests are sent to this backend | - | | | server. | - | | | | - | | | When the protocol of the backend | - | | | server group is TCP, only | - | | | **SOURCE_IP** takes effect. When the | - | | | protocol of the backend server group | - | | | is HTTP, only **HTTP_COOKIE** or | - | | | **APP_COOKIE** takes effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | cookie_name | String | Specifies the cookie name. | - | | | | - | | | This parameter is mandatory when the | - | | | sticky session type is | - | | | **APP_COOKIE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | persistence_timeout | Integer | Specifies the sticky session timeout | - | | | duration in minutes. | - | | | | - | | | This parameter is invalid when | - | | | **type** is set to **APP_COOKIE**. | - | | | | - | | | - Optional value ranges are as | - | | | follows: | - | | | | - | | | - When the protocol of the | - | | | backend server group is TCP or | - | | | UDP, the value ranges from | - | | | **1** to **60**. | - | | | - When the protocol of the | - | | | backend server group is HTTP or | - | | | HTTPS, the value ranges from | - | | | **1** to **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Adding a backend server group with the sticky session feature disabled - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/pools - - { - "pool": { - "lb_algorithm":"ROUND_ROBIN", - "loadbalancer_id": "63ad9dfe-4750-479f-9630-ada43ccc8117", - "protocol":"HTTP" - } - } - -- Example request 2: Adding an HTTP backend server group with the value of **type** set to **APP_COOKIE** - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/pools - - { - "pool": { - "lb_algorithm": "ROUND_ROBIN", - "listener_id": "370fb112-e920-486a-b051-1d0d30704dd3", - "protocol": "HTTP", - "session_persistence": { - "cookie_name": "my_cookie", - "type": "APP_COOKIE", - "persistence_timeout": 1 - }, - "admin_state_up": true - } - } - -- Example request 3: Adding an HTTP backend server group with the value of **type** set to **HTTP_COOKIE** - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/pools - - { - "pool": { - "lb_algorithm":"ROUND_ROBIN", - "loadbalancer_id": "63ad9dfe-4750-479f-9630-ada43ccc8117", - "protocol":"HTTP", - "session_persistence":{ - "type":"HTTP_COOKIE" - } - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "pool": { - "lb_algorithm": "ROUND_ROBIN", - "protocol": "HTTP", - "description": "", - "admin_state_up": true, - "loadbalancers": [ - { - "id": "63ad9dfe-4750-479f-9630-ada43ccc8117" - } - ], - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - "session_persistence": null, - "healthmonitor_id": null, - "listeners": [], - "members": [], - "id": "4e496951-befb-47bf-9573-c1cd11825c07", - "name": "" - } - } - -- Example response 2 - - .. code:: screen - - { - "pool": { - "lb_algorithm": "ROUND_ROBIN", - "protocol": "HTTP", - "description": "", - "admin_state_up": true, - "loadbalancers": [ - { - "id": "6b041b9e-976b-40ba-b075-375be6110b53" - } - ], - "tenant_id": "145483a5107745e9b3d80f956713e6a3", - - "session_persistence": { - "cookie_name": "my_cookie", - "type": "APP_COOKIE", - "persistence_timeout": 1 - }, - "healthmonitor_id": null, - "listeners": [ - { - "id": "370fb112-e920-486a-b051-1d0d30704dd3" - } - ], - "members": [ - - ], - "id": "307f8968-9474-4d0c-8434-66be09dabcc1", - "name": "" - } - } - -- Example response 3 - - .. code:: screen - - { - "pool": { - "lb_algorithm": "ROUND_ROBIN", - "protocol": "HTTP", - "description": "", - "admin_state_up": true, - "loadbalancers": [ - { - "id": "63ad9dfe-4750-479f-9630-ada43ccc8117" - } - ], - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - "session_persistence": { - "persistence_timeout": 1440, - "cookie_name": null, - "type": "HTTP_COOKIE" - }, - "healthmonitor_id": null, - "listeners": [], - "members": [], - "id": "d46eab56-d76b-4cd3-8952-3c3c4cf113aa", - "name": "" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/elb_zq_hz_0003.rst b/elb/api-ref/elb_zq_hz_0003.rst deleted file mode 100644 index 8d10c0cd..00000000 --- a/elb/api-ref/elb_zq_hz_0003.rst +++ /dev/null @@ -1,283 +0,0 @@ -Querying Details of a Backend Server Group -========================================== - -Function -^^^^^^^^ - -This API is used to query details about a backend server group using its ID. - -URI -^^^ - -GET /v2.0/lbaas/pools/{pool_id} - -.. table:: **Table 1** Parameter description - - ========= ========= ====== ============================================= - Parameter Mandatory Type Description - ========= ========= ====== ============================================= - pool_id Yes String Specifies the ID of the backend server group. - ========= ========= ====== ============================================= - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | pool | Object | Specifies the backend server group. For details, see `Table | - | | | 3 <#elb_zq_hz_0003__en-us_topic_0096561548_table374714321310>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **pools** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the ID of the backend | - | | | server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the backend server group is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the name of the backend | - | | | server group. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the backend server group. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol that the | - | | | backend server group uses to receive | - | | | requests. | - | | | | - | | | TCP, UDP, and HTTP are supported. | - | | | | - | | | When a backend server group is | - | | | associated with a listener, the | - | | | relationships between the protocol | - | | | used by the listener and the protocol | - | | | of the backend server group are as | - | | | follows: | - | | | | - | | | - When the protocol used by the | - | | | listener is **UDP**, the protocol | - | | | of the backend server group must | - | | | be **UDP**. | - | | | - When the protocol used by the | - | | | listener is **TCP**, the protocol | - | | | of the backend server group must | - | | | be **TCP**. | - | | | - When the protocol used by the | - | | | listener is **HTTP** or | - | | | **TERMINATED_HTTPS**, the protocol | - | | | of the backend server group must | - | | | be **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm of the backend server | - | | | group. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **ROUND_ROBIN**: indicates the | - | | | weighted round robin algorithm. | - | | | - **LEAST_CONNECTIONS**: indicates | - | | | the weighted least connections | - | | | algorithm. | - | | | - **SOURCE_IP**: indicates the | - | | | source IP hash algorithm. When the | - | | | value is **SOURCE_IP**, the | - | | | weights of backend servers in the | - | | | server group are invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array | Lists the IDs of backend servers in | - | | | the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor_id | String | Specifies the ID of the health check | - | | | configured for the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server group. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array | Lists the IDs of listeners associated | - | | | with the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array | Lists the IDs of load balancers | - | | | associated with the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_persistence | Object | Specifies whether to enable sticky | - | | | sessions. For details, see `Table | - | | | 9 `__. | - | | | | - | | | Once sticky session are enabled, | - | | | requests from the same client are | - | | | sent to the same backend server | - | | | during the session. | - | | | | - | | | When sticky sessions are disabled, | - | | | the value is **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **members** parameter description - - ========= ====== ================================================== - Parameter Type Description - ========= ====== ================================================== - id String Specifies the ID of the associated backend server. - ========= ====== ================================================== - -.. table:: **Table 5** **listeners** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -.. table:: **Table 6** **loadbalancers** parameter description - - ========= ====== ================================================= - Parameter Type Description - ========= ====== ================================================= - id String Specifies the ID of the associated load balancer. - ========= ====== ================================================= - -.. table:: **Table 7** **session_persistence** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | type | String | Specifies the sticky session type. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **SOURCE_IP**: Requests are | - | | | distributed based on the client's | - | | | IP address. Requests from the same | - | | | IP address are sent to the same | - | | | backend server. | - | | | - **HTTP_COOKIE**: When the client | - | | | sends a request for the first | - | | | time, the load balancer | - | | | automatically generates a cookie | - | | | and inserts the cookie into the | - | | | response message. Subsequent | - | | | requests are sent to the backend | - | | | server that processes the first | - | | | request. | - | | | - **APP_COOKIE**: When the client | - | | | sends a request for the first | - | | | time, the backend server that | - | | | receives the request generates a | - | | | cookie and inserts the cookie into | - | | | the response message. Subsequent | - | | | requests are sent to this backend | - | | | server. | - | | | | - | | | When the protocol of the backend | - | | | server group is TCP, only | - | | | **SOURCE_IP** takes effect. When the | - | | | protocol of the backend server group | - | | | is HTTP, only **HTTP_COOKIE** or | - | | | **APP_COOKIE** takes effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | cookie_name | String | Specifies the cookie name. | - | | | | - | | | This parameter is mandatory when the | - | | | sticky session type is | - | | | **APP_COOKIE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | persistence_timeout | Integer | Specifies the sticky session timeout | - | | | duration in minutes. | - | | | | - | | | This parameter is invalid when | - | | | **type** is set to **APP_COOKIE**. | - | | | | - | | | - Optional value ranges are as | - | | | follows: | - | | | | - | | | - When the protocol of the | - | | | backend server group is TCP or | - | | | UDP, the value ranges from | - | | | **1** to **60**. | - | | | - When the protocol of the | - | | | backend server group is HTTP or | - | | | HTTPS, the value ranges from | - | | | **1** to **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Querying details of a backend server group - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "pool": { - "lb_algorithm": "SOURCE_IP", - "protocol": "TCP", - "description": "", - "admin_state_up": true, - "loadbalancers": [ - { - "id": "6f52004c-3fe9-4c09-b8ce-ed9d9c74a3b1" - } - ], - "tenant_id": "1867112d054b427e808cc6096d8193a1", - "session_persistence": null, - "healthmonitor_id": null, - "listeners": [ - { - "id": "6e29b2cd-4e53-40f6-ae7b-29e918de67f2" - } - ], - "members": [], - "id": "5a9a3e9e-d1aa-448e-af37-a70171f2a332", - "name": "my-pool" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/elb_zq_hz_0004.rst b/elb/api-ref/elb_zq_hz_0004.rst deleted file mode 100644 index 1480ba76..00000000 --- a/elb/api-ref/elb_zq_hz_0004.rst +++ /dev/null @@ -1,490 +0,0 @@ -Updating a Backend Server Group -=============================== - -Function -^^^^^^^^ - -This API is used to update a backend server group. - -Constraints -^^^^^^^^^^^ - -If the provisioning status of the load balancer associated with a backend server group is not **ACTIVE**, the backend server group cannot be updated. - -URI -^^^ - -PUT /v2.0/lbaas/pools/{pool_id} - -.. table:: **Table 1** Parameter description - - ========= ========= ====== ============================================= - Parameter Mandatory Type Description - ========= ========= ====== ============================================= - pool_id Yes String Specifies the ID of the backend server group. - ========= ========= ====== ============================================= - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | pool | Yes | Object | Specifies the backend server group. For details, see `Table | - | | | | 3 <#elb_zq_hz_0004__en-us_topic_0096561550_table14485185810613>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 3** **pool** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the name of the | - | | | | backend server group. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | backend server group. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | lb_algorithm | No | String | Specifies the load | - | | | | balancing algorithm of the | - | | | | backend server group. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **ROUND_ROBIN**: | - | | | | indicates the weighted | - | | | | round robin algorithm. | - | | | | - **LEAST_CONNECTIONS**: | - | | | | indicates the weighted | - | | | | least connections | - | | | | algorithm. | - | | | | - **SOURCE_IP**: indicates | - | | | | the source IP hash | - | | | | algorithm. | - | | | | | - | | | | When the value is | - | | | | **SOURCE_IP**, the weights | - | | | | of backend servers in the | - | | | | server group are invalid. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the backend server group. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | session_persistence | No | Object | Specifies whether to enable | - | | | | the sticky session feature. | - | | | | For details, see `Table | - | | | | 10 <#elb_zq_hz_ | - | | | | 0004__en-us_topic_009656155 | - | | | | 0_table112431127175217>`__. | - | | | | | - | | | | Once sticky session are | - | | | | enabled, requests from the | - | | | | same client are sent to the | - | | | | same backend server during | - | | | | the session. | - | | | | | - | | | | When sticky sessions are | - | | | | disabled, the value is | - | | | | **null**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 4** **session_persistence** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | type | No | String | Specifies the sticky | - | | | | session type. | - | | | | | - | | | | Value options: | - | | | | | - | | | | - **SOURCE_IP**: Requests | - | | | | are distributed based on | - | | | | the client's IP address. | - | | | | Requests from the same | - | | | | IP address are sent to | - | | | | the same backend server. | - | | | | - **HTTP_COOKIE**: When | - | | | | the client sends a | - | | | | request for the first | - | | | | time, the load balancer | - | | | | automatically generates | - | | | | a cookie and inserts the | - | | | | cookie into the response | - | | | | message. Subsequent | - | | | | requests are sent to the | - | | | | backend server that | - | | | | processes the first | - | | | | request. | - | | | | - **APP_COOKIE**: When the | - | | | | client sends a request | - | | | | for the first time, the | - | | | | backend server that | - | | | | receives the request | - | | | | generates a cookie and | - | | | | inserts the cookie into | - | | | | the response message. | - | | | | Subsequent requests are | - | | | | sent to this backend | - | | | | server. | - | | | | | - | | | | - When the protocol of the | - | | | | backend server group is | - | | | | TCP, only **SOURCE_IP** | - | | | | takes effect. When the | - | | | | protocol of the backend | - | | | | server group is HTTP, | - | | | | only **HTTP_COOKIE** or | - | | | | **APP_COOKIE** takes | - | | | | effect. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | cookie_name | No | String | Specifies the cookie name. | - | | | | | - | | | | This parameter is mandatory | - | | | | and can be specified when | - | | | | the sticky session type is | - | | | | **APP_COOKIE**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | persistence_timeout | No | Integer | Specifies the sticky | - | | | | session timeout duration in | - | | | | minutes. | - | | | | | - | | | | This parameter is invalid | - | | | | when **type** is set to | - | | | | **APP_COOKIE**. | - | | | | | - | | | | Value range options are as | - | | | | follows: | - | | | | | - | | | | - When the protocol of the | - | | | | backend server group is | - | | | | TCP or UDP, the value | - | | | | ranges from **1** to | - | | | | **60**. | - | | | | - When the protocol of the | - | | | | backend server group is | - | | | | HTTP or HTTPS, the value | - | | | | ranges from **1** to | - | | | | **1440**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 5** Parameter description - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | pool | Object | Specifies the backend server group. For details, see `Table | - | | | 6 <#elb_zq_hz_0004__en-us_topic_0096561550_table186106238710>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 6** **pools** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the ID of the backend | - | | | server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the backend server group is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the name of the backend | - | | | server group. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the backend server group. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol that the | - | | | backend server group uses to receive | - | | | requests. | - | | | | - | | | TCP, UDP, and HTTP are supported. | - | | | | - | | | When a backend server group is | - | | | associated with a listener, the | - | | | relationships between the protocol | - | | | used by the listener and the protocol | - | | | of the backend server group are as | - | | | follows: | - | | | | - | | | - When the protocol used by the | - | | | listener is **UDP**, the protocol | - | | | of the backend server group must | - | | | be **UDP**. | - | | | - When the protocol used by the | - | | | listener is **TCP**, the protocol | - | | | of the backend server group must | - | | | be **TCP**. | - | | | - When the protocol used by the | - | | | listener is **HTTP** or | - | | | **TERMINATED_HTTPS**, the protocol | - | | | of the backend server group must | - | | | be **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm of the backend server | - | | | group. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **ROUND_ROBIN**: indicates the | - | | | weighted round robin algorithm. | - | | | - **LEAST_CONNECTIONS**: indicates | - | | | the weighted least connections | - | | | algorithm. | - | | | - **SOURCE_IP**: indicates the | - | | | source IP hash algorithm. When the | - | | | value is **SOURCE_IP**, the | - | | | weights of backend servers in the | - | | | server group are invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array | Lists the IDs of backend servers in | - | | | the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor_id | String | Specifies the ID of the health check | - | | | configured for the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server group. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array | Lists the IDs of listeners associated | - | | | with the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array | Lists the IDs of load balancers | - | | | associated with the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_persistence | Object | Specifies whether to enable sticky | - | | | sessions. For details, see `Table | - | | | 9 `__. | - | | | | - | | | Once sticky session are enabled, | - | | | requests from the same client are | - | | | sent to the same backend server | - | | | during the session. | - | | | | - | | | When sticky sessions are disabled, | - | | | the value is **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** **members** parameter description - - ========= ====== ================================================== - Parameter Type Description - ========= ====== ================================================== - id String Specifies the ID of the associated backend server. - ========= ====== ================================================== - -.. table:: **Table 8** **listeners** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -.. table:: **Table 9** **loadbalancers** parameter description - - ========= ====== ================================================= - Parameter Type Description - ========= ====== ================================================= - id String Specifies the ID of the associated load balancer. - ========= ====== ================================================= - -.. table:: **Table 10** **session_persistence** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | type | String | Specifies the sticky session type. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **SOURCE_IP**: Requests are | - | | | distributed based on the client's | - | | | IP address. Requests from the same | - | | | IP address are sent to the same | - | | | backend server. | - | | | - **HTTP_COOKIE**: When the client | - | | | sends a request for the first | - | | | time, the load balancer | - | | | automatically generates a cookie | - | | | and inserts the cookie into the | - | | | response message. Subsequent | - | | | requests are sent to the backend | - | | | server that processes the first | - | | | request. | - | | | - **APP_COOKIE**: When the client | - | | | sends a request for the first | - | | | time, the backend server that | - | | | receives the request generates a | - | | | cookie and inserts the cookie into | - | | | the response message. Subsequent | - | | | requests are sent to this backend | - | | | server. | - | | | | - | | | When the protocol of the backend | - | | | server group is TCP, only | - | | | **SOURCE_IP** takes effect. When the | - | | | protocol of the backend server group | - | | | is HTTP, only **HTTP_COOKIE** or | - | | | **APP_COOKIE** takes effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | cookie_name | String | Specifies the cookie name. | - | | | | - | | | This parameter is mandatory when the | - | | | sticky session type is | - | | | **APP_COOKIE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | persistence_timeout | Integer | Specifies the sticky session timeout | - | | | duration in minutes. | - | | | | - | | | This parameter is invalid when | - | | | **type** is set to **APP_COOKIE**. | - | | | | - | | | - Optional value ranges are as | - | | | follows: | - | | | | - | | | - When the protocol of the | - | | | backend server group is TCP or | - | | | UDP, the value ranges from | - | | | **1** to **60**. | - | | | - When the protocol of the | - | | | backend server group is HTTP or | - | | | HTTPS, the value ranges from | - | | | **1** to **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Updating a backend server group - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe - - { - "pool": { - "name": "pool2", - "description": "pool two", - "lb_algorithm": "LEAST_CONNECTIONS" - } - } - -- Example request 2: Disabling the sticky session feature of a backend server group - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/pools/d46eab56-d76b-4cd3-8952-3c3c4cf113aa - - { - "pool": { - "session_persistence":null - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "pool": { - "lb_algorithm": "LEAST_CONNECTIONS", - "protocol": "HTTP", - "description": "pool two", - "loadbalancers": [ - { - "id": "63ad9dfe-4750-479f-9630-ada43ccc8117" - } - ], - "admin_state_up": true, - "tenant_id": "1a3e005cf9ce40308c900bcb08e5320c", - "session_persistence": { - "cookie_name": null, - "type": "HTTP_COOKIE", - "persistence_timeout": 1 - }, - "healthmonitor_id": null, - "listeners": [ - { - "id": "39de4d56-d663-46e5-85a1-5b9d5fa17829" - } - ], - "members": [], - "id": "12ff63af-4127-4074-a251-bcb2ecc53ebe", - "name": "pool2" - } - } - -- Example response 2 - - .. code:: screen - - { - "pool": { - "lb_algorithm": "ROUND_ROBIN", - "protocol": "HTTP", - "description": "", - "admin_state_up": true, - "loadbalancers": [ - { - "id": "63ad9dfe-4750-479f-9630-ada43ccc8117" - } - ], - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - "session_persistence": null, - "healthmonitor_id": null, - "listeners": [], - "members": [], - "id": "d46eab56-d76b-4cd3-8952-3c3c4cf113aa", - "name": "" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/elb_zq_hz_0005.rst b/elb/api-ref/elb_zq_hz_0005.rst deleted file mode 100644 index 5062089b..00000000 --- a/elb/api-ref/elb_zq_hz_0005.rst +++ /dev/null @@ -1,58 +0,0 @@ -Deleting a Backend Server Group -=============================== - -Function -^^^^^^^^ - -This API is used to delete a backend server group. - -Constraints -^^^^^^^^^^^ - -Before deleting a backend server group, remove all backend servers, delete the health check, and disassociate forwarding policies from the backend server group by changing the value of **redirect_pool_id** to **null**. For details, see `Updating a Forwarding Policy `__. - -URI -^^^ - -DELETE /v2.0/lbaas/pools/{pool_id} - -.. table:: **Table 1** Parameter description - - ========= ========= ====== ============================================= - Parameter Mandatory Type Description - ========= ========= ====== ============================================= - pool_id Yes String Specifies the ID of the backend server group. - ========= ========= ====== ============================================= - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Deleting a backend server group - - .. code:: screen - - DELETE /v2.0/lbaas/pools/5a9a3e9e-d1aa-448e-af37-a70171f2a332 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/elb_zq_jk_0000.rst b/elb/api-ref/elb_zq_jk_0000.rst deleted file mode 100644 index 75cf06fd..00000000 --- a/elb/api-ref/elb_zq_jk_0000.rst +++ /dev/null @@ -1,10 +0,0 @@ -Health Check -============ - -- `Configuring a Health Check `__ -- `Querying Health Checks `__ -- `Querying Details of a Health Check `__ -- `Updating a Health Check `__ -- `Deleting a Health Check `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_jk_0001.rst b/elb/api-ref/elb_zq_jk_0001.rst deleted file mode 100644 index e0a6a163..00000000 --- a/elb/api-ref/elb_zq_jk_0001.rst +++ /dev/null @@ -1,447 +0,0 @@ -Configuring a Health Check -========================== - -Function -^^^^^^^^ - -This API is used to configure a health check for a backend server group to check the status of backend servers. If the health check result is **OFFLINE**, backend servers are considered unhealthy. You need to check the server configuration. - -Constraints -^^^^^^^^^^^ - -The security group must allow access from 100.125.0.0/16. Otherwise, the health check cannot be performed. - -URI -^^^ - -POST /v2.0/lbaas/healthmonitors - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +---------------+-----------+--------+------------------------------------------------------------------------------+ - | **Parameter** | Mandatory | Type | Description | - +===============+===========+========+==============================================================================+ - | healthmonitor | Yes | Object | Specifies the health check. For details, see `Table | - | | | | 2 <#elb_zq_jk_0001__en-us_topic_0096561563_table154092042172813>`__. | - +---------------+-----------+--------+------------------------------------------------------------------------------+ - -.. table:: **Table 2** **healthmonitor** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | **Type** | Description | - +=============================+=============================+=============================+=============================+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the health | - | | | | check is performed. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **project_id** in the | - | | | | token. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the health check | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | delay | Yes | Integer | Specifies the maximum time | - | | | | between health checks in | - | | | | the unit of second. The | - | | | | value ranges from **1** to | - | | | | **50**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries | Yes | Integer | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **OFFLINE** to | - | | | | **ONLINE**. The value | - | | | | ranges from **1** to | - | | | | **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries_down | No | Integer | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **ONLINE** to | - | | | | **OFFLINE**. The value | - | | | | ranges from **1** to | - | | | | **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | pool_id | Yes | String | Specifies the ID of the | - | | | | backend server group. | - | | | | | - | | | | Only one health check can | - | | | | be configured for each | - | | | | backend server group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the health check. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | timeout | Yes | Integer | Specifies the health check | - | | | | timeout duration in the | - | | | | unit of second. The value | - | | | | ranges from **1** to | - | | | | **50**. | - | | | | | - | | | | NOTE: | - | | | | You are advised to set the | - | | | | value less than that of | - | | | | parameter **delay**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the health check | - | | | | protocol. | - | | | | | - | | | | The value can be **TCP**, | - | | | | **UDP_CONNECT**, or | - | | | | **HTTP**. | - | | | | | - | | | | The relationships between | - | | | | the health check protocol | - | | | | and the protocol used by | - | | | | the backend server group | - | | | | are as follows: | - | | | | | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | UDP, the parameter value | - | | | | can only be | - | | | | **UDP_CONNECT**. | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | TCP, the parameter value | - | | | | can be **TCP** or | - | | | | **HTTP**. | - | | | | - If the protocol of the | - | | | | backend server group is | - | | | | HTTP, the parameter | - | | | | value can be **TCP** or | - | | | | **HTTP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | monitor_port | No | Integer | Specifies the health check | - | | | | port. The port number | - | | | | ranges from 1 to 65535. | - | | | | | - | | | | The value is left blank by | - | | | | default, indicating that | - | | | | the port of the backend | - | | | | server is used as the | - | | | | health check port. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain_name | No | String | Specifies the domain name | - | | | | of HTTP requests during the | - | | | | health check. | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | The value is left blank by | - | | | | default, indicating that | - | | | | the private IP address of | - | | | | the load balancer is used | - | | | | as the destination address | - | | | | of HTTP requests. | - | | | | | - | | | | The value can contain only | - | | | | digits, letters, hyphens | - | | | | (-), and periods (.) and | - | | | | must start with a digit or | - | | | | letter, for example, | - | | | | **www.test.com**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 100 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | url_path | No | String | Specifies the HTTP request | - | | | | path for the health check. | - | | | | The default value is **/**, | - | | | | and the value must start | - | | | | with a slash (/). | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | An example value is | - | | | | **/test**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | expected_codes | No | String | Specifies the expected HTTP | - | | | | status code. The following | - | | | | options are available: | - | | | | | - | | | | A single value, such as | - | | | | **200** | - | | | | | - | | | | A list of values, such as | - | | | | **200,202** | - | | | | | - | | | | A value range, such as | - | | | | **200-204** | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 64 characters. | - | | | | | - | | | | NOTE: | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http_method | No | String | Specifies the HTTP request | - | | | | method. The default value | - | | | | is **GET**. | - | | | | | - | | | | The value can be **GET**, | - | | | | **HEAD**, **POST**, | - | | | | **PUT**, **DELETE**, | - | | | | **TRACE**, **OPTIONS**, | - | | | | **CONNECT**, and **PATCH**. | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | NOTE: | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 3** Response parameters - - +---------------+--------+-------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===============+========+===========================================================================================+ - | healthmonitor | Object | Specifies the health check. For details, see `Table | - | | | 4 <#elb_zq_jk_0001__en-us_topic_0096561563_table186706722915>`__. | - +---------------+--------+-------------------------------------------------------------------------------------------+ - -.. table:: **Table 4** **healthmonitor** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the health check is performed. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | delay | Integer | Specifies the maximum time between | - | | | health checks in the unit of second. | - | | | The value ranges from **1** to | - | | | **50**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **OFFLINE** to **ONLINE**. The | - | | | value ranges from **1** to **10**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries_down | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **ONLINE** to **OFFLINE**. The | - | | | value ranges from **1** to **10**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Specifies the ID of the backend | - | | | server group associated with the | - | | | health check. For details, see `Table | - | | | 5 <#elb_zq_jk_0001__en-us_to | - | | | pic_0096561563_table567815515351>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the health check. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | timeout | Integer | Specifies the health check timeout | - | | | duration in the unit of second. The | - | | | value ranges from **1** to **50**. | - | | | | - | | | NOTE: | - | | | You are advised to set the value less | - | | | than that of parameter **delay**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the health check protocol. | - | | | | - | | | The value can be **TCP**, | - | | | **UDP_CONNECT**, or **HTTP**. | - | | | | - | | | The relationships between the value | - | | | of this parameter and the protocol of | - | | | the backend server group are as | - | | | follows: | - | | | | - | | | - If the protocol of the backend | - | | | server group is UDP, the parameter | - | | | value can only be **UDP_CONNECT**. | - | | | - If the protocol of the backend | - | | | server group is TCP, the parameter | - | | | value can be **TCP** or **HTTP**. | - | | | - If the protocol of the backend | - | | | server group is HTTP, the | - | | | parameter value can be **TCP** or | - | | | **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | monitor_port | Integer | Specifies the health check port. The | - | | | port number ranges from 1 to 65535. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the port of the | - | | | backend server is used as the health | - | | | check port. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expected_codes | String | Specifies the expected HTTP status | - | | | code. The following options are | - | | | available: | - | | | | - | | | A single value, such as **200** | - | | | | - | | | A list of values, such as **200,202** | - | | | | - | | | A value range, such as **200-204** | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | Currently, this parameter is not | - | | | supported and is fixed at **200**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain_name | String | Specifies the domain name of HTTP | - | | | requests during the health check. | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the private IP | - | | | address of the load balancer is used | - | | | as the destination address of HTTP | - | | | requests. | - | | | | - | | | The value can contain only digits, | - | | | letters, hyphens (-), and periods (.) | - | | | and must start with a digit or | - | | | letter, for example, | - | | | **www.test.com**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | url_path | String | Specifies the HTTP request path for | - | | | the health check. The default value | - | | | is **/**, and the value must start | - | | | with a slash (/). | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | An example value is **/test**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http_method | String | Specifies the HTTP request method. | - | | | The default value is **GET**. | - | | | | - | | | The value can be **GET**, **HEAD**, | - | | | **POST**, **PUT**, **DELETE**, | - | | | **TRACE**, **OPTIONS**, **CONNECT**, | - | | | and **PATCH**. | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | NOTE: | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** **pools** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Configuring a health check - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/healthmonitors - - { - "healthmonitor": { - "admin_state_up": true, - "pool_id": "bb44bffb-05d9-412c-9d9c-b189d9e14193", - "domain_name": "www.test.com", - "delay": 10, - "max_retries": 10, - "max_retries_down": 5, - "timeout": 10, - "type": "HTTP" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "healthmonitor": { - "name": "", - "admin_state_up": true, - "tenant_id": "145483a5107745e9b3d80f956713e6a3", - "domain_name": "www.test.com", - "delay": 10, - "max_retries": 10, - "expected_codes": "200", - "max_retries_down": 5, - "http_method": "GET", - "timeout": 10, - "pools": [ - { - "id": "bb44bffb-05d9-412c-9d9c-b189d9e14193" - } - ], - "url_path": "/", - "type": "HTTP", - "id": "2dca3867-98c5-4cde-8f2c-b89ae6bd7e36", - "monitor_port": 112 - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/elb_zq_jk_0002.rst b/elb/api-ref/elb_zq_jk_0002.rst deleted file mode 100644 index a087e124..00000000 --- a/elb/api-ref/elb_zq_jk_0002.rst +++ /dev/null @@ -1,494 +0,0 @@ -Querying Health Checks -====================== - -Function -^^^^^^^^ - -This API is used to query the health checks. Filter query and pagination query are supported. Unless otherwise specified, exact match is applied. - -URI -^^^ - -GET /v2.0/lbaas/healthmonitors - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | **Mandatory** | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | health check from which | - | | | | pagination query starts, | - | | | | that is, the ID of the last | - | | | | health check on the | - | | | | previous page. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | health checks on each page. | - | | | | If this parameter is not | - | | | | set, all health checks are | - | | | | queried by default. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the health check | - | | | | ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the health | - | | | | check is performed. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the health check | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | delay | No | Integer | Specifies the maximum time | - | | | | between health checks in | - | | | | the unit of second. The | - | | | | value ranges from **1** to | - | | | | **50**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries | No | Integer | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **OFFLINE** to | - | | | | **ONLINE**. The value | - | | | | ranges from **1** to | - | | | | **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries_down | No | Integer | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **ONLINE** to | - | | | | **OFFLINE**. The value | - | | | | ranges from **1** to | - | | | | **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the health check. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | timeout | No | Integer | Specifies the health check | - | | | | timeout duration in the | - | | | | unit of second. The value | - | | | | ranges from **1** to | - | | | | **50**. | - | | | | | - | | | | NOTE: | - | | | | You are advised to set the | - | | | | value less than that of | - | | | | parameter **delay**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | String | Specifies the health check | - | | | | protocol. | - | | | | | - | | | | The value can be **TCP**, | - | | | | **UDP_CONNECT**, or | - | | | | **HTTP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | monitor_port | No | Integer | Specifies the port used for | - | | | | the health check. | - | | | | | - | | | | The value is left blank by | - | | | | default, indicating that | - | | | | the port of the backend | - | | | | server is used as the | - | | | | health check port. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | expected_codes | No | String | Specifies the expected HTTP | - | | | | status code. The following | - | | | | options are available: | - | | | | | - | | | | A single value, such as | - | | | | **200** | - | | | | | - | | | | A list of values, such as | - | | | | **200,202** | - | | | | | - | | | | A value range, such as | - | | | | **200-204** | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 64 characters. | - | | | | | - | | | | NOTE: | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain_name | No | String | Specifies the domain name | - | | | | of HTTP requests during the | - | | | | health check. | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | The value is left blank by | - | | | | default, indicating that | - | | | | the private IP address of | - | | | | the load balancer is used | - | | | | as the destination address | - | | | | of HTTP requests. | - | | | | | - | | | | The value can contain only | - | | | | digits, letters, hyphens | - | | | | (-), and periods (.) and | - | | | | must start with a digit or | - | | | | letter, for example, | - | | | | **www.test.com**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 100 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | url_path | No | String | Specifies the HTTP request | - | | | | path for the health check. | - | | | | The default value is **/**, | - | | | | and the value must start | - | | | | with a slash (/). | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | An example value is | - | | | | **/test**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http_method | No | String | Specifies the HTTP request | - | | | | method. The default value | - | | | | is **GET**. | - | | | | | - | | | | The value can be **GET**, | - | | | | **HEAD**, **POST**, | - | | | | **PUT**, **DELETE**, | - | | | | **TRACE**, **OPTIONS**, | - | | | | **CONNECT**, and **PATCH**. | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | NOTE: | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | healthmonitors | Array | Lists the health checks. For details, | - | | | see `Table | - | | | 3 <#elb_zq_jk_0002__en-us_top | - | | | ic_0096561561_table6429512132610>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitors_links | Array | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - | | | | - | | | This parameter exists only in the | - | | | response body of pagination query. | - | | | | - | | | For details, see `Table | - | | | 5 <#elb_zq_jk_0002__en-us_t | - | | | opic_0096561561_table31726924112>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 3** **healthmonitors** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the health check is performed. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | delay | Integer | Specifies the maximum time between | - | | | health checks in the unit of second. | - | | | The value ranges from **1** to | - | | | **50**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **OFFLINE** to **ONLINE**. | - | | | | - | | | The value ranges from **1** to | - | | | **10**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries_down | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **ONLINE** to **OFFLINE**. | - | | | | - | | | The value ranges from **1** to | - | | | **10**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Lists the IDs of backend server | - | | | groups associated with the health | - | | | check. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the health check. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | timeout | Integer | Specifies the health check timeout | - | | | duration in the unit of second. The | - | | | value ranges from **1** to **50**. | - | | | | - | | | NOTE: | - | | | You are advised to set the value less | - | | | than that of parameter **delay**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the health check protocol. | - | | | | - | | | The value can be **TCP**, | - | | | **UDP_CONNECT**, or **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | monitor_port | Integer | Specifies the health check port. The | - | | | port number ranges from 1 to 65535. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the port of the | - | | | backend server is used as the health | - | | | check port. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expected_codes | String | Specifies the expected HTTP status | - | | | code. The following options are | - | | | available: | - | | | | - | | | A single value, such as **200** | - | | | | - | | | A list of values, such as **200,202** | - | | | | - | | | A value range, such as **200-204** | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain_name | String | Specifies the domain name of HTTP | - | | | requests during the health check. | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the private IP | - | | | address of the load balancer is used | - | | | as the destination address of HTTP | - | | | requests. | - | | | | - | | | The value can contain only digits, | - | | | letters, hyphens (-), and periods (.) | - | | | and must start with a digit or | - | | | letter, for example, | - | | | **www.test.com**. | - | | | | - | | | The value contains a maximum of 100 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | url_path | String | Specifies the HTTP request path for | - | | | the health check. The default value | - | | | is **/**, and the value must start | - | | | with a slash (/). | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | An example value is **/test**. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http_method | String | Specifies the HTTP request method. | - | | | The default value is **GET**. | - | | | | - | | | The value can be **GET**, **HEAD**, | - | | | **POST**, **PUT**, **DELETE**, | - | | | **TRACE**, **OPTIONS**, **CONNECT**, | - | | | and **PATCH**. | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | NOTE: | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **pools** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -.. table:: **Table 5** **healthmonitors_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. | - | | | | - | | | The value can be **next** or | - | | | **previous**. The value **next** | - | | | indicates the href containing the URL | - | | | of the next page, and **previous** | - | | | indicates the href containing the URL | - | | | of the previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Querying all health checks - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/healthmonitors - -- Example request 2: Querying HTTP health checks - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/healthmonitors?type=HTTP - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "healthmonitors": [ - { - "monitor_port": null, - "name": "", - "admin_state_up": true, - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - - "domain_name": null, - "delay": 5, - - "max_retries": 3, - "max_retries_down": 5, - "http_method": "GET", - "timeout": 10, - "pools": [ - { - "id": "caef8316-6b65-4676-8293-cf41fb63cc2a" - } - ], - "url_path": "/", - "type": "HTTP", - "id": "1b587819-d619-49c1-9101-fe72d8b361ef" - } - ] - } - -- Example response 2 - - .. code:: screen - - { - "healthmonitors": [ - { - "monitor_port": null, - "name": "", - "admin_state_up": true, - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - "domain_name": null, - "delay": 5, - "expected_codes": "200-204,300-302,401", - "max_retries": 3, - "max_retries_down": 5, - "http_method": "GET", - "timeout": 10, - "pools": [ - { - "id": "caef8316-6b65-4676-8293-cf41fb63cc2a" - } - ], - "url_path": "/", - "type": "HTTP", - "id": "1b587819-d619-49c1-9101-fe72d8b361ef" - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/elb_zq_jk_0003.rst b/elb/api-ref/elb_zq_jk_0003.rst deleted file mode 100644 index 71c47577..00000000 --- a/elb/api-ref/elb_zq_jk_0003.rst +++ /dev/null @@ -1,233 +0,0 @@ -Querying Details of a Health Check -================================== - -Function -^^^^^^^^ - -This API is used to query details about a health check using its iD. - -URI -^^^ - -GET /v2.0/lbaas/healthmonitors/{healthmonitor_id} - -.. table:: **Table 1** Parameter description - - ================ ========= ====== ============================== - Parameter Mandatory Type Description - ================ ========= ====== ============================== - healthmonitor_id Yes String Specifies the health check ID. - ================ ========= ====== ============================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +---------------+--------+-------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===============+========+===========================================================================================+ - | healthmonitor | Object | Specifies the health check. For details, see `Table | - | | | 3 <#elb_zq_jk_0003__en-us_topic_0096561562_table167973062820>`__. | - +---------------+--------+-------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **healthmonitor** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the health check is performed. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | delay | Integer | Specifies the maximum time between | - | | | health checks in the unit of second. | - | | | The value ranges from **1** to | - | | | **50**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **OFFLINE** to **ONLINE**. The | - | | | value ranges from **1** to **10**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries_down | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **ONLINE** to **OFFLINE**. The | - | | | value ranges from **1** to **10**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Specifies the ID of the backend | - | | | server group associated with the | - | | | health check. For details, see `Table | - | | | 5 `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the health check. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | timeout | Integer | Specifies the health check timeout | - | | | duration in the unit of second. The | - | | | value ranges from **1** to **50**. | - | | | | - | | | NOTE: | - | | | You are advised to set the value less | - | | | than that of parameter **delay**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the health check protocol. | - | | | | - | | | The value can be **TCP**, | - | | | **UDP_CONNECT**, or **HTTP**. | - | | | | - | | | The relationships between the value | - | | | of this parameter and the protocol of | - | | | the backend server group are as | - | | | follows: | - | | | | - | | | - If the protocol of the backend | - | | | server group is UDP, the parameter | - | | | value can only be **UDP_CONNECT**. | - | | | - If the protocol of the backend | - | | | server group is TCP, the parameter | - | | | value can be **TCP** or **HTTP**. | - | | | - If the protocol of the backend | - | | | server group is HTTP, the | - | | | parameter value can be **TCP** or | - | | | **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | monitor_port | Integer | Specifies the health check port. The | - | | | port number ranges from 1 to 65535. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the port of the | - | | | backend server is used as the health | - | | | check port. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expected_codes | String | Specifies the expected HTTP status | - | | | code. The following options are | - | | | available: | - | | | | - | | | A single value, such as **200** | - | | | | - | | | A list of values, such as **200,202** | - | | | | - | | | A value range, such as **200-204** | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | Currently, this parameter is not | - | | | supported and is fixed at **200**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain_name | String | Specifies the domain name of HTTP | - | | | requests during the health check. | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the private IP | - | | | address of the load balancer is used | - | | | as the destination address of HTTP | - | | | requests. | - | | | | - | | | The value can contain only digits, | - | | | letters, hyphens (-), and periods (.) | - | | | and must start with a digit or | - | | | letter, for example, | - | | | **www.test.com**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | url_path | String | Specifies the HTTP request path for | - | | | the health check. The default value | - | | | is **/**, and the value must start | - | | | with a slash (/). | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | An example value is **/test**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http_method | String | Specifies the HTTP request method. | - | | | The default value is **GET**. | - | | | | - | | | The value can be **GET**, **HEAD**, | - | | | **POST**, **PUT**, **DELETE**, | - | | | **TRACE**, **OPTIONS**, **CONNECT**, | - | | | and **PATCH**. | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | NOTE: | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **pools** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Querying details of a health check - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/healthmonitors/b7633ade-24dc-4d72-8475-06aa22be5412 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "healthmonitor": { - "name": "", - "admin_state_up": true, - "tenant_id": "145483a5107745e9b3d80f956713e6a3", - "domain_name": null, - "delay": 10, - "expected_codes": "200-204,300-302,401", - "max_retries": 10, - "max_retries_down": 5, - "http_method": "GET", - "timeout": 10, - "pools": [ - { - "id": "bb44bffb-05d9-412c-9d9c-b189d9e14193" - } - ], - "url_path": "/", - "type": "HTTP", - "id": "61c24cba-19bb-45c1-a013-7565e5f98872", - "monitor_port": 112 - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/elb_zq_jk_0004.rst b/elb/api-ref/elb_zq_jk_0004.rst deleted file mode 100644 index 13835958..00000000 --- a/elb/api-ref/elb_zq_jk_0004.rst +++ /dev/null @@ -1,404 +0,0 @@ -Updating a Health Check -======================= - -Function -^^^^^^^^ - -This API is used to update a health check. - -Constraints -^^^^^^^^^^^ - -If **provisioning_status** of the load balancer for which the health check is configured is not **ACTIVE**, the health check cannot be updated. - -URI -^^^ - -PUT /v2.0/lbaas/healthmonitors/{healthmonitor_id} - -.. table:: **Table 1** Parameter description - - ================ ========= ====== ============================== - Parameter Mandatory Type Description - ================ ========= ====== ============================== - healthmonitor_id Yes String Specifies the health check ID. - ================ ========= ====== ============================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +---------------+-----------+--------+------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===============+===========+========+==============================================================================+ - | healthmonitor | Yes | Object | Specifies the health check. For details, see `Table | - | | | | 3 <#elb_zq_jk_0004__en-us_topic_0096561564_table61361617301>`__. | - +---------------+-----------+--------+------------------------------------------------------------------------------+ - -.. table:: **Table 3** **healthmonitor** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the health check | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | delay | No | Integer | Specifies the maximum time | - | | | | between health checks in | - | | | | the unit of second. The | - | | | | value ranges from **1** to | - | | | | **50**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries | No | Integer | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **OFFLINE** to | - | | | | **ONLINE**. The value | - | | | | ranges from **1** to | - | | | | **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | max_retries_down | No | Integer | Specifies the number of | - | | | | consecutive health checks | - | | | | when the health check | - | | | | result of a backend server | - | | | | changes from **ONLINE** to | - | | | | **OFFLINE**. The value | - | | | | ranges from **1** to | - | | | | **10**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the health check. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | timeout | No | Integer | Specifies the health check | - | | | | timeout duration in the | - | | | | unit of second. The value | - | | | | ranges from **1** to | - | | | | **50**. | - | | | | | - | | | | NOTE: | - | | | | You are advised to set the | - | | | | value less than that of | - | | | | parameter **delay**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | String | Specifies the health check | - | | | | protocol. | - | | | | | - | | | | The value can be **TCP**, | - | | | | **UDP_CONNECT**, or | - | | | | **HTTP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | monitor_port | No | Integer | Specifies the health check | - | | | | port. The port number | - | | | | ranges from 1 to 65535. | - | | | | | - | | | | The value is left blank by | - | | | | default, indicating that | - | | | | the port of the backend | - | | | | server is used as the | - | | | | health check port. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | expected_codes | No | String | Specifies the expected HTTP | - | | | | status code. The following | - | | | | options are available: | - | | | | | - | | | | A single value, such as | - | | | | **200** | - | | | | | - | | | | A list of values, such as | - | | | | **200,202** | - | | | | | - | | | | A value range, such as | - | | | | **200-204** | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain_name | No | String | Specifies the domain name | - | | | | of HTTP requests during the | - | | | | health check. | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | The value is left blank by | - | | | | default, indicating that | - | | | | the private IP address of | - | | | | the load balancer is used | - | | | | as the destination address | - | | | | of HTTP requests. | - | | | | | - | | | | The value can contain only | - | | | | digits, letters, hyphens | - | | | | (-), and periods (.) and | - | | | | must start with a digit or | - | | | | letter, for example, | - | | | | **www.test.com**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 100 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | url_path | No | String | Specifies the HTTP request | - | | | | path for the health check. | - | | | | The default value is **/**, | - | | | | and the value must start | - | | | | with a slash (/). | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | An example value is | - | | | | **/test**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http_method | No | String | Specifies the HTTP request | - | | | | method. The default value | - | | | | is **GET**. | - | | | | | - | | | | The value can be **GET**, | - | | | | **HEAD**, **POST**, | - | | | | **PUT**, **DELETE**, | - | | | | **TRACE**, **OPTIONS**, | - | | | | **CONNECT**, and **PATCH**. | - | | | | | - | | | | This parameter is valid | - | | | | only when the value of | - | | | | **type** is set to | - | | | | **HTTP**. | - | | | | | - | | | | NOTE: | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +---------------+--------+-------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===============+========+===========================================================================================+ - | healthmonitor | Object | Specifies the health check. For details, see `Table | - | | | 5 <#elb_zq_jk_0004__en-us_topic_0096561564_table25969311303>`__. | - +---------------+--------+-------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **healthmonitor** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the health check ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the health check is performed. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the health check name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | delay | Integer | Specifies the maximum time between | - | | | health checks in the unit of second. | - | | | The value ranges from **1** to | - | | | **50**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **OFFLINE** to **ONLINE**. The | - | | | value ranges from **1** to **10**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | max_retries_down | Integer | Specifies the number of consecutive | - | | | health checks when the health check | - | | | result of a backend server changes | - | | | from **ONLINE** to **OFFLINE**. The | - | | | value ranges from **1** to **10**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Specifies the ID of the backend | - | | | server group associated with the | - | | | health check. For details, see `Table | - | | | 5 `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the health check. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | timeout | Integer | Specifies the health check timeout | - | | | duration in the unit of second. The | - | | | value ranges from **1** to **50**. | - | | | | - | | | NOTE: | - | | | You are advised to set the value less | - | | | than that of parameter **delay**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the health check protocol. | - | | | | - | | | The value can be **TCP**, | - | | | **UDP_CONNECT**, or **HTTP**. | - | | | | - | | | The relationships between the value | - | | | of this parameter and the protocol of | - | | | the backend server group are as | - | | | follows: | - | | | | - | | | - If the protocol of the backend | - | | | server group is UDP, the parameter | - | | | value can only be **UDP_CONNECT**. | - | | | - If the protocol of the backend | - | | | server group is TCP, the parameter | - | | | value can be **TCP** or **HTTP**. | - | | | - If the protocol of the backend | - | | | server group is HTTP, the | - | | | parameter value can be **TCP** or | - | | | **HTTP**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | monitor_port | Integer | Specifies the health check port. The | - | | | port number ranges from 1 to 65535. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the port of the | - | | | backend server is used as the health | - | | | check port. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expected_codes | String | Specifies the expected HTTP status | - | | | code. The following options are | - | | | available: | - | | | | - | | | A single value, such as **200** | - | | | | - | | | A list of values, such as **200,202** | - | | | | - | | | A value range, such as **200-204** | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | Currently, this parameter is not | - | | | supported and is fixed at **200**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain_name | String | Specifies the domain name of HTTP | - | | | requests during the health check. | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | The value is left blank by default, | - | | | indicating that the private IP | - | | | address of the load balancer is used | - | | | as the destination address of HTTP | - | | | requests. | - | | | | - | | | The value can contain only digits, | - | | | letters, hyphens (-), and periods (.) | - | | | and must start with a digit or | - | | | letter, for example, | - | | | **www.test.com**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | url_path | String | Specifies the HTTP request path for | - | | | the health check. The default value | - | | | is **/**, and the value must start | - | | | with a slash (/). | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | An example value is **/test**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http_method | String | Specifies the HTTP request method. | - | | | The default value is **GET**. | - | | | | - | | | The value can be **GET**, **HEAD**, | - | | | **POST**, **PUT**, **DELETE**, | - | | | **TRACE**, **OPTIONS**, **CONNECT**, | - | | | and **PATCH**. | - | | | | - | | | This parameter is valid only when the | - | | | value of **type** is set to **HTTP**. | - | | | | - | | | NOTE: | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** **pools** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Updating a health check - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/healthmonitors/b7633ade-24dc-4d72-8475-06aa22be5412 - - { - "healthmonitor": { - "delay": 15, - "name": "health-xx", - "timeout": 12 - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "healthmonitor": { - "name": "health-xx", - "admin_state_up": true, - "tenant_id": "145483a5107745e9b3d80f956713e6a3", - "domain_name": null, - "delay": 15, - "expected_codes": "200", - "max_retries": 10, - "max_retries_down": 5, - "http_method": "GET", - "timeout": 12, - "pools": [ - { - "id": "bb44bffb-05d9-412c-9d9c-b189d9e14193" - } - ], - "url_path": "/", - "type": "HTTP", - "id": "2dca3867-98c5-4cde-8f2c-b89ae6bd7e36", - "monitor_port": 112 - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/elb_zq_jk_0005.rst b/elb/api-ref/elb_zq_jk_0005.rst deleted file mode 100644 index 1b7f56c5..00000000 --- a/elb/api-ref/elb_zq_jk_0005.rst +++ /dev/null @@ -1,58 +0,0 @@ -Deleting a Health Check -======================= - -Function -^^^^^^^^ - -This API is used to delete a health check. - -Constraints -^^^^^^^^^^^ - -If **provisioning_status** of the load balancer for which the health check is configured is not **ACTIVE**, the health check cannot be deleted. - -URI -^^^ - -DELETE /v2.0/lbaas/healthmonitors/{healthmonitor_id} - -.. table:: **Table 1** Parameter description - - ================ ========= ====== ============================== - Parameter Mandatory Type Description - ================ ========= ====== ============================== - healthmonitor_id Yes String Specifies the health check ID. - ================ ========= ====== ============================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Deleting a health check - - .. code:: screen - - DELETE https://{Endpoint}/v2.0/lbaas/healthmonitors/b7633ade-24dc-4d72-8475-06aa22be5412 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Health Check `__ diff --git a/elb/api-ref/elb_zq_jt_0000.rst b/elb/api-ref/elb_zq_jt_0000.rst deleted file mode 100644 index 8c6a9db0..00000000 --- a/elb/api-ref/elb_zq_jt_0000.rst +++ /dev/null @@ -1,10 +0,0 @@ -Listener -======== - -- `Adding a Listener `__ -- `Querying Listeners `__ -- `Querying Details of a Listener `__ -- `Updating a Listener `__ -- `Deleting a Listener `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_jt_0001.rst b/elb/api-ref/elb_zq_jt_0001.rst deleted file mode 100644 index 108a5378..00000000 --- a/elb/api-ref/elb_zq_jt_0001.rst +++ /dev/null @@ -1,592 +0,0 @@ -Adding a Listener -================= - -Function -^^^^^^^^ - -This API is used to add a listener to a load balancer. - -Constraints -^^^^^^^^^^^ - -When **protocol** is set to **TCP** and **protocol_port** to **0**, the listener works in IP mode (DR mode). - -URI -^^^ - -POST /v2.0/lbaas/listeners - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | listener | Yes | Object | Specifies the listener. For details, see `Table | - | | | | 2 <#elb_zq_jt_0001__en-us_topic_0096561542_table3499100135410>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 2** **listener** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the listener | - | | | | is used. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **project_id** in the | - | | | | token. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the listener | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | listener. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | Yes | String | Specifies the protocol used | - | | | | by the listener. | - | | | | | - | | | | The value can be **TCP**, | - | | | | **HTTP**, **UDP**, or | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | Yes | Integer | Specifies the port used by | - | | | | the listener. | - | | | | | - | | | | The port number ranges from | - | | | | 1 to 65535. | - | | | | | - | | | | NOTE: | - | | | | If the protocol used by the | - | | | | listener is UDP, the port | - | | | | number cannot be 4789. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | Yes | String | Specifies the ID of the | - | | | | associated load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | connection_limit | No | Integer | Specifies the maximum | - | | | | number of connections. | - | | | | | - | | | | The value ranges from | - | | | | **-1** to **2147483647**. | - | | | | The default value is | - | | | | **-1**, indicating that | - | | | | there is no restriction on | - | | | | the maximum number of | - | | | | connections. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the listener. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http2_enable | No | Boolean | Specifies whether to use | - | | | | HTTP/2. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**. | - | | | | | - | | | | - **true**: HTTP/2 is | - | | | | used. | - | | | | - **false**: HTTP/2 is not | - | | | | used. | - | | | | | - | | | | The default value is | - | | | | **false**. | - | | | | | - | | | | This parameter is valid | - | | | | only when the protocol used | - | | | | by the listener is set to | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_pool_id | No | String | Specifies the ID of the | - | | | | associated backend server | - | | | | group. | - | | | | | - | | | | If a request does not match | - | | | | the forwarding policy, the | - | | | | request is forwarded to the | - | | | | default backend server | - | | | | group for processing. If | - | | | | the value is **null**, the | - | | | | listener has no default | - | | | | backend server group. | - | | | | | - | | | | This parameter has the | - | | | | following constraints: | - | | | | | - | | | | - Its value cannot be the | - | | | | ID of any backend server | - | | | | group of other | - | | | | listeners. | - | | | | - Its value cannot be the | - | | | | ID of any backend server | - | | | | group associated with | - | | | | the forwarding policies | - | | | | set for other listeners. | - | | | | | - | | | | The relationships between | - | | | | the protocol used by the | - | | | | listener and the protocol | - | | | | of the backend server group | - | | | | are as follows: | - | | | | | - | | | | - When the protocol used | - | | | | by the listener is | - | | | | **TCP**, the protocol of | - | | | | the backend server group | - | | | | must be **TCP**. | - | | | | - When the protocol used | - | | | | by the listener is | - | | | | **UDP**, the protocol of | - | | | | the backend server group | - | | | | must be **UDP**. | - | | | | - When the protocol used | - | | | | by the listener is | - | | | | **HTTP** or | - | | | | **TERMINATED_HTTPS**, | - | | | | the protocol of the | - | | | | backend server group | - | | | | must be **HTTP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_tls_container_ref | No | String | Specifies the ID of the | - | | | | server certificate used by | - | | | | the listener. | - | | | | | - | | | | This parameter is mandatory | - | | | | when **protocol** is set to | - | | | | **TERMINATED_HTTPS**. | - | | | | | - | | | | The default value is | - | | | | **null** when **protocol** | - | | | | is not set to | - | | | | **TERMINATED_HTTPS**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 128 characters. | - | | | | | - | | | | NOTE: | - | | | | This parameter is valid | - | | | | only when **protocol** is | - | | | | set to | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | client_ca_tls_container_ref | No | String | Specifies the ID of the CA | - | | | | certificate used by the | - | | | | listener. | - | | | | | - | | | | The default value is | - | | | | **null**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 128 characters. | - | | | | | - | | | | NOTE: | - | | | | This parameter is valid | - | | | | only when **protocol** is | - | | | | set to | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | sni_container_refs | No | Array | Lists the IDs of SNI | - | | | | certificates (server | - | | | | certificates with a domain | - | | | | name) used by the listener. | - | | | | | - | | | | If the parameter value is | - | | | | an empty list, the SNI | - | | | | feature is disabled. | - | | | | | - | | | | The default value is | - | | | | **[]**. | - | | | | | - | | | | NOTE: | - | | | | This parameter is valid | - | | | | only when **protocol** is | - | | | | set to | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tls_ciphers_policy | No | String | Specifies the security | - | | | | policy used by the | - | | | | listener. This parameter is | - | | | | valid only when the | - | | | | protocol used by the | - | | | | listener is set to | - | | | | **TERMINATED_HTTPS**. | - | | | | | - | | | | The value can be | - | | | | **tls-1-0-inherit**, | - | | | | **tls-1-0**, **tls-1-1**, | - | | | | **tls-1-2**, or | - | | | | **tls-1-2-strict**, and the | - | | | | default value is | - | | | | **tls-1-0**. For details of | - | | | | cipher suites for each | - | | | | security policy, see `Table | - | | | | 3 <#elb_zq_j | - | | | | t_0001__en-us_topic_0096561 | - | | | | 542_table1247813103533>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 3** **tls_ciphers_policy** parameter description - - +-----------------+-------------------------+------------------------------------------------------------------------+ - | Security Policy | TLS Version | Cipher Suite | - +=================+=========================+========================================================================+ - | tls-1-0-inherit | TLS 1.2 TLS 1.1 TLS 1.0 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128 | - | | | -GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA25 | - | | | 6:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE- | - | | | RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA38 | - | | | 4:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA: | - | | | DHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128- | - | | | SHA:AES256-SHA:DHE-DSS-AES128-SHA:CAMELLIA128-SHA:EDH-RSA-DES-CBC3-SHA | - | | | :DES-CBC3-SHA:ECDHE-RSA-RC4-SHA:RC4-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES | - | | | 256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-DSS-CAMELLIA256-SHA:CAMELLIA256-SH | - | | | A:EDH-DSS-DES-CBC3-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-DSS-CAMELLIA128-SHA | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-0 | TLS 1.2 TLS 1.1 TLS 1.0 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-A | - | | | ES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM- | - | | | SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:E | - | | | CDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256- | - | | | SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128 | - | | | -SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-1 | | TLS 1.2 TLS 1.1 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-2 | | TLS 1.2 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-2-strict | TLS 1.2 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-A | - | | | ES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES25 | - | | | 6-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128- | - | | | SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | listener | Object | Specifies the listener. For details, see `Table | - | | | 5 <#elb_zq_jt_0001__en-us_topic_0096561542_table5301132505414>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **listeners** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the listener is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | listener. | - | | | | - | | | The value can be **TCP**, **HTTP**, | - | | | **UDP**, or **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | listener. | - | | | | - | | | The port number ranges from 1 to | - | | | 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array | Specifies the ID of the associated | - | | | load balancer. For details, see | - | | | `Table | - | | | 6 <#elb_zq_jt_0001__en-us_topi | - | | | c_0096561542_table17641175071912>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | connection_limit | Integer | Specifies the maximum number of | - | | | connections. | - | | | | - | | | The value ranges from **-1** to | - | | | **2147483647**. The default value is | - | | | **-1**, indicating that there is no | - | | | restriction on the maximum number of | - | | | connections. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the listener. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: The load balancer is | - | | | enabled. | - | | | - **false**: The load balancer is | - | | | disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http2_enable | Boolean | Specifies whether to use HTTP/2. | - | | | | - | | | The value can be **true** or | - | | | **false**. | - | | | | - | | | - **true**: HTTP/2 is used. | - | | | - **false**: HTTP/2 is not used. | - | | | | - | | | This parameter is valid only when the | - | | | protocol used by the listener is set | - | | | to **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_pool_id | String | Specifies the ID of the associated | - | | | backend server group. | - | | | | - | | | If a request does not match the | - | | | forwarding policy, the request is | - | | | forwarded to the default backend | - | | | server group for processing. If the | - | | | value is **null**, the listener has | - | | | no default backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_tls_container_ref | String | Specifies the ID of the server | - | | | certificate used by the listener. For | - | | | details, see | - | | | `Certificate `__. | - | | | | - | | | This parameter is mandatory when | - | | | **protocol** is set to | - | | | **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_ca_tls_container_ref | String | Specifies the ID of the CA | - | | | certificate used by the listener. For | - | | | details, see | - | | | `Certificate `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sni_container_refs | Array | Lists the IDs of SNI certificates | - | | | (server certificates with a domain | - | | | name) used by the listener. | - | | | | - | | | If the parameter value is an empty | - | | | list, the SNI feature is disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array | Tags the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the listener | - | | | was created. The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the listener | - | | | was updated. The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tls_ciphers_policy | String | Specifies the security policy used by | - | | | the listener. This parameter is valid | - | | | only when the protocol used by the | - | | | listener is set to | - | | | **TERMINATED_HTTPS**. | - | | | | - | | | The value can be **tls-1-0-inherit**, | - | | | **tls-1-0**, **tls-1-1**, | - | | | **tls-1-2**, or **tls-1-2-strict**, | - | | | and the default value is **tls-1-0**. | - | | | For details of cipher suites for each | - | | | security policy, see `Table | - | | | 3 <#elb_zq_jt_0001__en-us_top | - | | | ic_0096561542_table1247813103533>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** **loadbalancers** parameter description - - ========= ====== ================================================= - Parameter Type Description - ========= ====== ================================================= - id String Specifies the ID of the associated load balancer. - ========= ====== ================================================= - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Adding a TCP listener - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/listeners - - { - "listener": { - "protocol_port": 80, - "protocol": "TCP", - "loadbalancer_id": "0416b6f1-877f-4a51-987e-978b3f084253", - "name": "listener-test", - "admin_state_up": true - } - } - -- Example request 2: Adding an HTTPS listener - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/listeners - - { - "listener": { - "protocol_port": 25, - "protocol": "TERMINATED_HTTPS", - "default_tls_container_ref": "02dcd56799e045bf8b131533cc911dd6", - "loadbalancer_id": "0416b6f1-877f-4a51-987e-978b3f084253", - "name": "listener-test", - "admin_state_up": true - - } - } - -- Example request 3: Adding a listener with the SNI feature enabled - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/listeners - - { - "listener": { - "protocol_port": 27, - "protocol": "TERMINATED_HTTPS", - "loadbalancer_id": "6bb85e33-4953-457a-85a9-336d76125b7b", - "name": "listener-test", - "admin_state_up": true, - "default_tls_container_ref":"02dcd56799e045bf8b131533cc911dd6", - "sni_container_refs": ["e15d1b5000474adca383c3cd9ddc06d4", - "5882325fd6dd4b95a88d33238d293a0f"] - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "listener": { - "protocol_port": 80, - "protocol": "TCP", - "description": "", - "client_ca_tls_container_ref": null, - "default_tls_container_ref": null, - "admin_state_up": true, - "http2_enable": false, - "loadbalancers": [ - { - "id": "0416b6f1-877f-4a51-987e-978b3f084253" - } - ], - "tenant_id": "145483a5107745e9b3d80f956713e6a3", - "sni_container_refs": [], - "connection_limit": -1, - "default_pool_id": null, - "tags": [], - "id": "b7f32b52-6f17-4b16-9ec8-063d71b653ce", - "name": "listener-test", - "tls_ciphers_policy": null, - "created_at": "2018-07-25T01:54:13", - "updated_at": "2018-07-25T01:54:14" - } - } - -- Example response 2 - - .. code:: screen - - { - "listener": { - "protocol_port": 25, - "protocol": "TERMINATED_HTTPS", - "description": "", - "default_tls_container_ref": "02dcd56799e045bf8b131533cc911dd6", - "sni_container_refs": [], - "loadbalancers": [ - { - "id": "0416b6f1-877f-4a51-987e-978b3f084253" - } - ], - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - - "created_at": "2019-01-21T12:38:31", - "client_ca_tls_container_ref": null, - "connection_limit": -1, - "updated_at": "2019-01-21T12:38:31", - "http2_enable": false, - "admin_state_up": true, - "default_pool_id": null, - "tls_ciphers_policy": "tls-1-0", - "id": "b56634cd-5ba8-460e-b5a2-6de5ba8eaf60", - "tags": [], - "name": "listener-test" - - } - } - -- Example response 3 - - .. code:: screen - - { - "listener": { - "protocol_port": 27, - "protocol": "TERMINATED_HTTPS", - "description": "", - "default_tls_container_ref": "02dcd56799e045bf8b131533cc911dd6", - "sni_container_refs": [ - "5882325fd6dd4b95a88d33238d293a0f", - "e15d1b5000474adca383c3cd9ddc06d4" - ], - "loadbalancers": [ - { - "id": "6bb85e33-4953-457a-85a9-336d76125b7b" - } - ], - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - "project_id": "601240b9c5c94059b63d484c92cfe308", - "created_at": "2019-01-21T12:43:55", - "client_ca_tls_container_ref": null, - "connection_limit": -1, - "updated_at": "2019-01-21T12:43:55", - "http2_enable": false, - "admin_state_up": true, - "default_pool_id": null, - "": "tls-1-0", - "id": "b2cfda5b-52fe-4320-8845-34e8d4dac2c7", - "tags": [], - "name": "listener-test" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/elb_zq_jt_0002.rst b/elb/api-ref/elb_zq_jt_0002.rst deleted file mode 100644 index e1d583d7..00000000 --- a/elb/api-ref/elb_zq_jt_0002.rst +++ /dev/null @@ -1,594 +0,0 @@ -Querying Listeners -================== - -Function -^^^^^^^^ - -This API is used to query the listeners and display them in a list. Filter query and pagination query are supported. Unless otherwise specified, exact match is applied. - -You can query listeners using information such as listener ID, protocol used by the listener, port used by the listener, or backend server private IP address. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v2.0/lbaas/listeners - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | listener from which | - | | | | pagination query starts, | - | | | | that is, the ID of the last | - | | | | listener on the previous | - | | | | page. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | listeners on each page. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the listener ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the listener | - | | | | is used. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the listener | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | listener. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | No | String | Specifies the ID of the | - | | | | associated load balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | connection_limit | No | Integer | Specifies the maximum | - | | | | number of connections. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the listener. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_pool_id | No | String | Specifies the ID of the | - | | | | associated backend server | - | | | | group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http2_enable | No | Boolean | Specifies whether to use | - | | | | HTTP/2. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**. | - | | | | | - | | | | - **true**: HTTP/2 is | - | | | | used. | - | | | | - **false**: HTTP/2 is not | - | | | | used. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_tls_container_ref | No | String | Specifies the ID of the | - | | | | server certificate used by | - | | | | the listener. | - | | | | | - | | | | The value contains a | - | | | | maximum of 128 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | client_ca_tls_container_ref | No | String | Specifies the ID of the CA | - | | | | certificate used by the | - | | | | listener. | - | | | | | - | | | | The value contains a | - | | | | maximum of 128 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | No | String | Specifies the protocol used | - | | | | by the listener. | - | | | | | - | | | | The value can be **TCP**, | - | | | | **HTTP**, **UDP**, or | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol_port | No | Integer | Specifies the port used by | - | | | | the listener. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tls_ciphers_policy | No | String | Specifies the security | - | | | | policy used by the | - | | | | listener. This parameter is | - | | | | valid only when the | - | | | | protocol used by the | - | | | | listener is set to | - | | | | **TERMINATED_HTTPS**. | - | | | | | - | | | | The value can be | - | | | | **tls-1-0**, **tls-1-1**, | - | | | | **tls-1-2**, or | - | | | | **tls-1-2-strict**. For | - | | | | details of cipher suites | - | | | | for each security policy, | - | | | | see `Table | - | | | | 2 <#elb_zq_ | - | | | | jt_0002__en-us_topic_009656 | - | | | | 1541_table210773231419>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tls_container_id | No | String | Queries the listener | - | | | | associated with the | - | | | | certificate. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | sni_container_refs | No | String | Queries the listener | - | | | | associated with the SNI | - | | | | certificate. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 2** **tls_ciphers_policy** parameter description - - +-----------------+-------------------------+------------------------------------------------------------------------+ - | Security Policy | TLS Version | Cipher Suite | - +=================+=========================+========================================================================+ - | tls-1-0-inherit | TLS 1.2 TLS 1.1 TLS 1.0 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128 | - | | | -GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA25 | - | | | 6:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE- | - | | | RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA38 | - | | | 4:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA: | - | | | DHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128- | - | | | SHA:AES256-SHA:DHE-DSS-AES128-SHA:CAMELLIA128-SHA:EDH-RSA-DES-CBC3-SHA | - | | | :DES-CBC3-SHA:ECDHE-RSA-RC4-SHA:RC4-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES | - | | | 256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-DSS-CAMELLIA256-SHA:CAMELLIA256-SH | - | | | A:EDH-DSS-DES-CBC3-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-DSS-CAMELLIA128-SHA | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-0 | TLS 1.2 TLS 1.1 TLS 1.0 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-A | - | | | ES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM- | - | | | SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:E | - | | | CDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256- | - | | | SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128 | - | | | -SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-1 | | TLS 1.2 TLS 1.1 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-2 | | TLS 1.2 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-2-strict | TLS 1.2 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-A | - | | | ES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES25 | - | | | 6-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128- | - | | | SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 3** Parameter description - - +-----------------+-------+------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +=================+=======+==========================================================================================+ - | listeners | Array | Lists the listeners. For details, see `Table | - | | | 4 <#elb_zq_jt_0002__en-us_topic_0096561541_table7513153305114>`__. | - +-----------------+-------+------------------------------------------------------------------------------------------+ - | listeners_links | Array | Provides links to the previous or next page during pagination query, respectively. This | - | | | parameter exists only in the response body of pagination query. For details, see `Table | - | | | 7 <#elb_zq_jt_0002__en-us_topic_0096561541_table13018211316>`__. | - +-----------------+-------+------------------------------------------------------------------------------------------+ - -.. table:: **Table 4** **listeners** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the listener is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | listener. | - | | | | - | | | The value can be **TCP**, **HTTP**, | - | | | **UDP**, or **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | listener. | - | | | | - | | | The port number ranges from 1 to | - | | | 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array | Specifies the ID of the associated | - | | | load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | connection_limit | Integer | Specifies the maximum number of | - | | | connections. | - | | | | - | | | The value ranges from **-1** to | - | | | **2147483647**. | - | | | | - | | | NOTE: | - | | | This parameter is reserved. The | - | | | default value is **-1**, indicating | - | | | that there is no restriction on the | - | | | maximum number of connections. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the listener. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http2_enable | Boolean | Specifies whether to use HTTP/2. | - | | | | - | | | The value can be **true** or | - | | | **false**. | - | | | | - | | | - **true**: HTTP/2 will be used. | - | | | - **false**: HTTP/2 will not be | - | | | used. | - | | | | - | | | NOTE: | - | | | This parameter is valid only when the | - | | | protocol used by the listener is set | - | | | to **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | keepalive_timeout | Integer | Specifies the idle timeout duration | - | | | in the unit of second. | - | | | | - | | | This parameter applies only to TCP, | - | | | HTTP, or HTTPS listeners. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - TCP listeners: The value ranges | - | | | from **10** to **4000**, and the | - | | | default value is **300**. | - | | | | - | | | - HTTP or HTTPS listeners: The value | - | | | ranges from **0** to **4000**, and | - | | | the default value is **60**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_timeout | Integer | Specifies the request timeout | - | | | duration in the unit of second. | - | | | | - | | | The value ranges from **1** to | - | | | **300**. The default value is **60**. | - | | | | - | | | This parameter is valid only when | - | | | **protocol** is set to **HTTP** or | - | | | **HTTPS**. In other cases, the | - | | | request body does not contain this | - | | | parameter. Otherwise, an error is | - | | | reported. When **protocol** is set to | - | | | **HTTP** or **HTTPS**, if the request | - | | | body does not contain this parameter | - | | | or the value of this parameter is | - | | | **null**, the default value is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | member_timeout | Integer | Specifies the response timeout | - | | | duration in the unit of second. | - | | | | - | | | The value ranges from **1** to | - | | | **300**. The default value is **60**. | - | | | | - | | | This parameter is valid only when | - | | | **protocol** is set to **HTTP** or | - | | | **HTTPS**. In other cases, the | - | | | request body does not contain this | - | | | parameter. Otherwise, an error is | - | | | reported. When **protocol** is set to | - | | | **HTTP** or **HTTPS**, if the request | - | | | body does not contain this parameter | - | | | or the value of this parameter is | - | | | **null**, the default value is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_pool_id | String | Specifies the ID of the associated | - | | | backend server group. | - | | | | - | | | NOTE: | - | | | If a request does not match the | - | | | forwarding policy, the request is | - | | | forwarded to the default backend | - | | | server group for processing. If the | - | | | value is **null**, the listener has | - | | | no default backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_tls_container_ref | String | Specifies the ID of the server | - | | | certificate used by the listener. | - | | | | - | | | This parameter is mandatory when | - | | | **protocol** is set to | - | | | **TERMINATED_HTTPS**. | - | | | | - | | | The value contains a maximum of 128 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_ca_tls_container_ref | String | Specifies the ID of the CA | - | | | certificate used by the listener. | - | | | | - | | | The value contains a maximum of 128 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sni_container_refs | Array | Lists the IDs of SNI certificates | - | | | (server certificates with a domain | - | | | name) used by the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array | Tags the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the listener | - | | | was created. The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the listener | - | | | was updated. The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners_links | Array | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. This parameter exists | - | | | only in the response body of | - | | | pagination query. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tls_ciphers_policy | String | Specifies the security policy used by | - | | | the listener. This parameter is valid | - | | | only when the protocol used by the | - | | | listener is set to | - | | | **TERMINATED_HTTPS**. | - | | | | - | | | The value can be **tls-1-0-inherit**, | - | | | **tls-1-0**, **tls-1-1**, | - | | | **tls-1-2**, or **tls-1-2-strict**, | - | | | and the default value is **tls-1-0**. | - | | | For details of cipher suites for each | - | | | security policy, see `Table | - | | | 6 <#elb_zq_jt_0002__en-us_topi | - | | | c_0096561541_table10264143363610>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** **loadbalancers** parameter description - - ========= ====== ================================================= - Parameter Type Description - ========= ====== ================================================= - id String Specifies the ID of the associated load balancer. - ========= ====== ================================================= - -.. table:: **Table 6** **tls_ciphers_policy** parameter description - - +-----------------+-------------------------+------------------------------------------------------------------------+ - | Security Policy | TLS Version | Cipher Suite | - +=================+=========================+========================================================================+ - | tls-1-0-inherit | TLS 1.2 TLS 1.1 TLS 1.0 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128 | - | | | -GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA25 | - | | | 6:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE- | - | | | RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA38 | - | | | 4:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA: | - | | | DHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128- | - | | | SHA:AES256-SHA:DHE-DSS-AES128-SHA:CAMELLIA128-SHA:EDH-RSA-DES-CBC3-SHA | - | | | :DES-CBC3-SHA:ECDHE-RSA-RC4-SHA:RC4-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES | - | | | 256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-DSS-CAMELLIA256-SHA:CAMELLIA256-SH | - | | | A:EDH-DSS-DES-CBC3-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-DSS-CAMELLIA128-SHA | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-0 | TLS 1.2 TLS 1.1 TLS 1.0 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-A | - | | | ES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM- | - | | | SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:E | - | | | CDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256- | - | | | SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128 | - | | | -SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-1 | | TLS 1.2 TLS 1.1 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-2 | | TLS 1.2 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-2-strict | TLS 1.2 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-A | - | | | ES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES25 | - | | | 6-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128- | - | | | SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - -.. table:: **Table 7** **listeners_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. | - | | | | - | | | The value can be **next** or | - | | | **previous**. The value **next** | - | | | indicates the href containing the URL | - | | | of the next page, and **previous** | - | | | indicates the href containing the URL | - | | | of the previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Querying all listeners - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/listeners?limit=2 - -- Request example 2: Querying UDP listeners - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/listeners?protocol=UDP - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "listeners": [ - { - "client_ca_tls_container_ref": null, - "protocol": "TCP", - "description": "", - "default_tls_container_ref": null, - "admin_state_up": true, - "http2_enable": false, - "loadbalancers": [ - { - "id": "bc7ba445-035a-4464-a1a3-a62cf4a14116" - } - ], - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - - "sni_container_refs": [], - "connection_limit": -1, - "protocol_port": 80, - "default_pool_id": "ed75f16e-fcc6-403e-a3fb-4eae82005eab", - "id": "75045172-70e9-480d-9443-b8b6459948f7", - "tags": [], - "name": "listener-cb2n", - "tls_ciphers_policy": null, - "created_at": "2018-07-25T01:54:13", - "updated_at": "2018-07-25T01:54:14" - }, - { - "client_ca_tls_container_ref": null, - "protocol": "TCP", - "description": "", - "default_tls_container_ref": null, - "admin_state_up": true, - "http2_enable": false, - "loadbalancers": [ - { - "id": "165b6a38-5278-4569-b747-b2ee65ea84a4" - } - ], - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - - "sni_container_refs": [], - "connection_limit": -1, - "protocol_port": 8080, - "default_pool_id": null, - "id": "dada0003-7b0e-4de8-a4e1-1e937be2ba14", - "tags": [], - "name": "lsnr_name_mod", - "tls_ciphers_policy": null, - "created_at": "2018-07-25T01:54:13", - "updated_at": "2018-07-25T01:54:14" - - , - - } - ], - "listeners_links": [ - { - "href": "https://{Endpoint}/v2.0/lbaas/listeners?limit=2&marker=042cc6a5-e385-4e39-83de-4dde1f801ccb", - "rel": "next" - }, - { - "href": "https://{Endpoint}/v2.0/lbaas/listeners?limit=2&marker=025fcaa9-0159-4a0d-8583-d97fa77d9972&page_reverse=True", - "rel": "previous" - } - ] - } - -- Example response 2 - - .. code:: screen - - { - "listeners": [ - { - "protocol_port": 64809, - "protocol": "UDP", - "description": "", - "default_tls_container_ref": null, - "sni_container_refs": [], - "loadbalancers": [ - { - "id": "c1127125-64a9-4394-a08a-ef3be8f7ef9c" - } - ], - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - - "created_at": "2018-11-29T13:56:21", - "client_ca_tls_container_ref": null, - "connection_limit": -1, - "updated_at": "2018-11-29T13:56:22", - "http2_enable": false, - - "tls_ciphers_policy": null, - "admin_state_up": true, - "default_pool_id": "2f6895be-019b-4c82-9b53-c4a2ac009e20", - "id": "5c63d176-444f-4c75-9cfe-bcb8a05a845c", - "tags": [], - "name": "listener-tvp8" - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/elb_zq_jt_0003.rst b/elb/api-ref/elb_zq_jt_0003.rst deleted file mode 100644 index bf2b50aa..00000000 --- a/elb/api-ref/elb_zq_jt_0003.rst +++ /dev/null @@ -1,223 +0,0 @@ -Querying Details of a Listener -============================== - -Function -^^^^^^^^ - -This API is used to query details about a listener using its ID. - -URI -^^^ - -GET /v2.0/lbaas/listeners/{listener_id} - -.. table:: **Table 1** Parameter description - - =========== ========= ====== ========================== - Parameter Mandatory Type Description - =========== ========= ====== ========================== - listener_id Yes String Specifies the listener ID. - =========== ========= ====== ========================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | listener | Object | Lists the listeners. For details, see `Table | - | | | 3 <#elb_zq_jt_0003__en-us_topic_0096561540_table7513153305114>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **listeners** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the listener is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | listener. | - | | | | - | | | The value can be **TCP**, **HTTP**, | - | | | **UDP**, or **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | listener. | - | | | | - | | | The port number ranges from 1 to | - | | | 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array | Specifies the ID of the associated | - | | | load balancer. For details, see | - | | | `Table | - | | | 6 `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | connection_limit | Integer | Specifies the maximum number of | - | | | connections. | - | | | | - | | | The value ranges from **-1** to | - | | | **2147483647**. The default value is | - | | | **-1**, indicating that there is no | - | | | restriction on the maximum number of | - | | | connections. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the listener. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: The load balancer is | - | | | enabled. | - | | | - **false**: The load balancer is | - | | | disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http2_enable | Boolean | Specifies whether to use HTTP/2. | - | | | | - | | | The value can be **true** or | - | | | **false**. | - | | | | - | | | - **true**: HTTP/2 is used. | - | | | - **false**: HTTP/2 is not used. | - | | | | - | | | This parameter is valid only when the | - | | | protocol used by the listener is set | - | | | to **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_pool_id | String | Specifies the ID of the associated | - | | | backend server group. | - | | | | - | | | If a request does not match the | - | | | forwarding policy, the request is | - | | | forwarded to the default backend | - | | | server group for processing. If the | - | | | value is **null**, the listener has | - | | | no default backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_tls_container_ref | String | Specifies the ID of the server | - | | | certificate used by the listener. For | - | | | details, see | - | | | `Certificate `__. | - | | | | - | | | This parameter is mandatory when | - | | | **protocol** is set to | - | | | **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_ca_tls_container_ref | String | Specifies the ID of the CA | - | | | certificate used by the listener. For | - | | | details, see | - | | | `Certificate `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sni_container_refs | Array | Lists the IDs of SNI certificates | - | | | (server certificates with a domain | - | | | name) used by the listener. | - | | | | - | | | If the parameter value is an empty | - | | | list, the SNI feature is disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array | Tags the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the listener | - | | | was created. The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the listener | - | | | was updated. The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tls_ciphers_policy | String | Specifies the security policy used by | - | | | the listener. This parameter is valid | - | | | only when the protocol used by the | - | | | listener is set to | - | | | **TERMINATED_HTTPS**. | - | | | | - | | | The value can be **tls-1-0-inherit**, | - | | | **tls-1-0**, **tls-1-1**, | - | | | **tls-1-2**, or **tls-1-2-strict**, | - | | | and the default value is **tls-1-0**. | - | | | For details of cipher suites for each | - | | | security policy, see `Table | - | | | 3 `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **loadbalancers** parameter description - - ========= ====== ================================================= - Parameter Type Description - ========= ====== ================================================= - id String Specifies the ID of the associated load balancer. - ========= ====== ================================================= - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Viewing details of a listener - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/listeners/09e64049-2ab0-4763-a8c5-f4207875dc3e - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "listener": { - "protocol_port": 8000, - "protocol": "TCP", - "description": "", - "client_ca_tls_container_ref": null, - "default_tls_container_ref": null, - "admin_state_up": true, - "http2_enable": false, - "loadbalancers": [ - { - "id": "3d77894d-2ffe-4411-ac0a-0d57689779b8" - } - ], - "tenant_id": "1867112d054b427e808cc6096d8193a1", - "sni_container_refs": [], - "connection_limit": -1, - "default_pool_id": "b7e53dbd-62ab-4505-a280-5c066078a5c9", - "id": "09e64049-2ab0-4763-a8c5-f4207875dc3e", - "tags": [], - "name": "listener-2", - "tls_ciphers_policy": null, - "created_at": "2018-07-25T01:54:13", - "updated_at": "2018-07-25T01:54:14" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/elb_zq_jt_0004.rst b/elb/api-ref/elb_zq_jt_0004.rst deleted file mode 100644 index 2b8f5205..00000000 --- a/elb/api-ref/elb_zq_jt_0004.rst +++ /dev/null @@ -1,457 +0,0 @@ -Updating a Listener -=================== - -Function -^^^^^^^^ - -This API is used to update a listener, such as listener name, description, associated backend server groups, and server certificates. - -Constraints -^^^^^^^^^^^ - -- If the provisioning status of the associated load balancer is not **ACTIVE**, the listener cannot be updated. -- Only the administrator can specify **connection_limit**. -- The **default_pool_id** parameter has the following constraints: - - - Its value cannot be the ID of any backend server group of other listeners. - - Its value cannot be the ID of any backend server group associated with the forwarding policies set for other listeners. - -- The relationships between the protocol used by the listener and the protocol of the backend server group are as follows: - - - When the protocol used by the listener is **TCP**, the protocol of the backend server group must be **TCP**. - - When the protocol used by the listener is **UDP**, the protocol of the backend server group must be **UDP**. - - When the protocol used by the listener is **HTTP** or **TERMINATED_HTTPS**, the protocol of the backend server group must be **HTTP**. - -URI -^^^ - -PUT /v2.0/lbaas/listeners/{listener_id} - -.. table:: **Table 1** Parameter description - - =========== ========= ====== ========================== - Parameter Mandatory Type Description - =========== ========= ====== ========================== - listener_id Yes String Specifies the listener ID. - =========== ========= ====== ========================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | listener | Yes | Object | Specifies the listener. For details, see `Table | - | | | | 3 <#elb_zq_jt_0004__en-us_topic_0096561544_table731744514565>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 3** **listener** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the listener | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | listener. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | connection_limit | No | Integer | Specifies the maximum | - | | | | number of connections. | - | | | | | - | | | | The value ranges from | - | | | | **-1** to **2147483647**. | - | | | | | - | | | | This parameter is reserved. | - | | | | Only the administrator can | - | | | | specify the maximum number | - | | | | of connections. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | http2_enable | No | Boolean | Specifies whether to use | - | | | | HTTP/2. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**. | - | | | | | - | | | | - **true**: HTTP/2 is | - | | | | used. | - | | | | - **false**: HTTP/2 is not | - | | | | used. | - | | | | | - | | | | This parameter is valid | - | | | | only when the protocol used | - | | | | by the listener is set to | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_pool_id | No | String | Specifies the ID of the | - | | | | associated backend server | - | | | | group. | - | | | | | - | | | | If a request does not match | - | | | | the forwarding policy, the | - | | | | request is forwarded to the | - | | | | default backend server | - | | | | group for processing. If | - | | | | the value is **null**, the | - | | | | listener has no default | - | | | | backend server group. | - | | | | | - | | | | This parameter has the | - | | | | following constraints: | - | | | | | - | | | | - Its value cannot be the | - | | | | ID of any backend server | - | | | | group of other | - | | | | listeners. | - | | | | - Its value cannot be the | - | | | | ID of any backend server | - | | | | group associated with | - | | | | the forwarding policies | - | | | | set for other listeners. | - | | | | | - | | | | The relationships between | - | | | | the protocol used by the | - | | | | listener and the protocol | - | | | | of the backend server group | - | | | | are as follows: | - | | | | | - | | | | - When the protocol used | - | | | | by the listener is | - | | | | **TCP**, the protocol of | - | | | | the backend server group | - | | | | must be **TCP**. | - | | | | - When the protocol used | - | | | | by the listener is | - | | | | **UDP**, the protocol of | - | | | | the backend server group | - | | | | must be **UDP**. | - | | | | - When the protocol used | - | | | | by the listener is | - | | | | **HTTP** or | - | | | | **TERMINATED_HTTPS**, | - | | | | the protocol of the | - | | | | backend server group | - | | | | must be **HTTP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the listener. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | default_tls_container_ref | No | String | Specifies the ID of the | - | | | | server certificate used by | - | | | | the listener. | - | | | | | - | | | | The value contains a | - | | | | maximum of 128 characters. | - | | | | | - | | | | NOTE: | - | | | | This parameter is valid | - | | | | only when **protocol** is | - | | | | set to | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | client_ca_tls_container_ref | No | String | Specifies the ID of the CA | - | | | | certificate used by the | - | | | | listener. | - | | | | | - | | | | The value contains a | - | | | | maximum of 128 characters. | - | | | | | - | | | | NOTE: | - | | | | This parameter is valid | - | | | | only when **protocol** is | - | | | | set to | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | sni_container_refs | No | Array | Lists the IDs of SNI | - | | | | certificates (server | - | | | | certificates with a domain | - | | | | name) used by the listener. | - | | | | | - | | | | If the parameter value is | - | | | | an empty list, the SNI | - | | | | feature is disabled. | - | | | | | - | | | | NOTE: | - | | | | This parameter is valid | - | | | | only when **protocol** is | - | | | | set to | - | | | | **TERMINATED_HTTPS**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tls_ciphers_policy | No | String | Specifies the security | - | | | | policy used by the | - | | | | listener. This parameter is | - | | | | valid only when the | - | | | | protocol used by the | - | | | | listener is set to | - | | | | **TERMINATED_HTTPS**. | - | | | | | - | | | | The value can be | - | | | | **tls-1-0-inherit**, | - | | | | **tls-1-0**, **tls-1-1**, | - | | | | **tls-1-2**, or | - | | | | **tls-1-2-strict**, and the | - | | | | default value is | - | | | | **tls-1-0**. For details of | - | | | | cipher suites for each | - | | | | security policy, see `Table | - | | | | 4 <#elb_zq_jt | - | | | | _0004__en-us_topic_00965615 | - | | | | 44_table15427162993713>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 4** **tls_ciphers_policy** parameter description - - +-----------------+-------------------------+------------------------------------------------------------------------+ - | Security Policy | TLS Version | Cipher Suite | - +=================+=========================+========================================================================+ - | tls-1-0-inherit | TLS 1.2 TLS 1.1 TLS 1.0 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128 | - | | | -GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA25 | - | | | 6:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE- | - | | | RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA38 | - | | | 4:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA: | - | | | DHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128- | - | | | SHA:AES256-SHA:DHE-DSS-AES128-SHA:CAMELLIA128-SHA:EDH-RSA-DES-CBC3-SHA | - | | | :DES-CBC3-SHA:ECDHE-RSA-RC4-SHA:RC4-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES | - | | | 256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-DSS-CAMELLIA256-SHA:CAMELLIA256-SH | - | | | A:EDH-DSS-DES-CBC3-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-DSS-CAMELLIA128-SHA | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-0 | TLS 1.2 TLS 1.1 TLS 1.0 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-A | - | | | ES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM- | - | | | SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:E | - | | | CDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256- | - | | | SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128 | - | | | -SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-1 | | TLS 1.2 TLS 1.1 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-2 | | TLS 1.2 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - | tls-1-2-strict | TLS 1.2 | ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-A | - | | | ES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES25 | - | | | 6-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128- | - | | | SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384 | - +-----------------+-------------------------+------------------------------------------------------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 5** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | listener | Object | Specifies the listener. For details, see `Table | - | | | 6 <#elb_zq_jt_0004__en-us_topic_0096561544_table99341410115717>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 6** **listeners** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the listener ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the listener is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the listener name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol used by the | - | | | listener. | - | | | | - | | | The value can be **TCP**, **HTTP**, | - | | | **UDP**, or **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol_port | Integer | Specifies the port used by the | - | | | listener. | - | | | | - | | | The port number ranges from 1 to | - | | | 65535. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | Array | Specifies the ID of the associated | - | | | load balancer. For details, see | - | | | `Table | - | | | 6 `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | connection_limit | Integer | Specifies the maximum number of | - | | | connections. | - | | | | - | | | The value ranges from **-1** to | - | | | **2147483647**. The default value is | - | | | **-1**, indicating that there is no | - | | | restriction on the maximum number of | - | | | connections. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the listener. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: The load balancer is | - | | | enabled. | - | | | - **false**: The load balancer is | - | | | disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | http2_enable | Boolean | Specifies whether to use HTTP/2. | - | | | | - | | | The value can be **true** or | - | | | **false**. | - | | | | - | | | - **true**: HTTP/2 is used. | - | | | - **false**: HTTP/2 is not used. | - | | | | - | | | This parameter is valid only when the | - | | | protocol used by the listener is set | - | | | to **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_pool_id | String | Specifies the ID of the associated | - | | | backend server group. | - | | | | - | | | If a request does not match the | - | | | forwarding policy, the request is | - | | | forwarded to the default backend | - | | | server group for processing. If the | - | | | value is **null**, the listener has | - | | | no default backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | default_tls_container_ref | String | Specifies the ID of the server | - | | | certificate used by the listener. For | - | | | details, see | - | | | `Certificate `__. | - | | | | - | | | This parameter is mandatory when | - | | | **protocol** is set to | - | | | **TERMINATED_HTTPS**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | client_ca_tls_container_ref | String | Specifies the ID of the CA | - | | | certificate used by the listener. For | - | | | details, see | - | | | `Certificate `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | sni_container_refs | Array | Lists the IDs of SNI certificates | - | | | (server certificates with a domain | - | | | name) used by the listener. | - | | | | - | | | If the parameter value is an empty | - | | | list, the SNI feature is disabled. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array | Tags the listener. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the listener | - | | | was created. The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the listener | - | | | was updated. The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tls_ciphers_policy | String | Specifies the security policy used by | - | | | the listener. This parameter is valid | - | | | only when the protocol used by the | - | | | listener is set to | - | | | **TERMINATED_HTTPS**. | - | | | | - | | | The value can be **tls-1-0-inherit**, | - | | | **tls-1-0**, **tls-1-1**, | - | | | **tls-1-2**, or **tls-1-2-strict**, | - | | | and the default value is **tls-1-0**. | - | | | For details of cipher suites for each | - | | | security policy, see `Table | - | | | 3 `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 7** **loadbalancers** parameter description - - ========= ====== ================================================= - Parameter Type Description - ========= ====== ================================================= - id String Specifies the ID of the associated load balancer. - ========= ====== ================================================= - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Updating a listener - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/listeners/f622c150-72f5-4263-a47a-e5003c652aa3 - - { - "listener": { - "description": "my listener", - "name": "listener-jy-test2", - "default_pool_id": "c61310de-9a06-4f0c-850c-6f4797b9984c", - "default_tls_container_ref": "23b58a961a4d4c95be585e98046e657a", - "client_ca_tls_container_ref": "417a0976969f497db8cbb083bff343ba" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "listener": { - "client_ca_tls_container_ref": "417a0976969f497db8cbb083bff343ba", - "protocol": "TERMINATED_HTTPS", - "description": "my listener", - "default_tls_container_ref": "23b58a961a4d4c95be585e98046e657a", - "admin_state_up": true, - "http2_enable": false, - "loadbalancers": [ - { - "id": "165b6a38-5278-4569-b747-b2ee65ea84a4" - } - ], - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - - "sni_container_refs": [], - "connection_limit": -1, - "protocol_port": 443, - "tags": [], - "default_pool_id": "c61310de-9a06-4f0c-850c-6f4797b9984c", - "id": "f622c150-72f5-4263-a47a-e5003c652aa3", - "name": "listener-jy-test2", - "tls_ciphers_policy": "tls-1-0", - "created_at": "2018-07-25T01:54:13", - "updated_at": "2018-07-25T01:54:14" - - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/elb_zq_jt_0005.rst b/elb/api-ref/elb_zq_jt_0005.rst deleted file mode 100644 index e870fe0b..00000000 --- a/elb/api-ref/elb_zq_jt_0005.rst +++ /dev/null @@ -1,58 +0,0 @@ -Deleting a Listener -=================== - -Function -^^^^^^^^ - -This API is used to delete a listener by ID. - -Constraints -^^^^^^^^^^^ - -All backend server groups associated with the listener must be deleted before the listener is deleted. - -URI -^^^ - -DELETE /v2.0/lbaas/listeners/{listener_id} - -.. table:: **Table 1** Parameter description - - =========== ========= ====== ========================== - Parameter Mandatory Type Description - =========== ========= ====== ========================== - listener_id Yes String Specifies the listener ID. - =========== ========= ====== ========================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Deleting a listener - - .. code:: screen - - DELETE https://{Endpoint}/v2.0/lbaas/listeners/35cb8516-1173-4035-8dae-0dae3453f37f - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Listener `__ diff --git a/elb/api-ref/elb_zq_zf_0000.rst b/elb/api-ref/elb_zq_zf_0000.rst deleted file mode 100644 index 56122cea..00000000 --- a/elb/api-ref/elb_zq_zf_0000.rst +++ /dev/null @@ -1,10 +0,0 @@ -Forwarding Policy -================= - -- `Adding a Forwarding Policy `__ -- `Querying Forwarding Policies `__ -- `Querying Details of a Forwarding Policy `__ -- `Updating a Forwarding Policy `__ -- `Deleting a Forwarding Policy `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_zf_0001.rst b/elb/api-ref/elb_zq_zf_0001.rst deleted file mode 100644 index 4a9df22b..00000000 --- a/elb/api-ref/elb_zq_zf_0001.rst +++ /dev/null @@ -1,498 +0,0 @@ -Adding a Forwarding Policy -========================== - -Function -^^^^^^^^ - -This API is used to add a forwarding policy. The listener and forwarding policy determine how traffic is forwarded to backend servers. - -- By matching the URL or domain name specified in the forwarding policy when **action** is set to **REDIRECT_TO_POOL**, the load balancer distributes the traffic to backend servers in a specific backend server group. -- When **action** is set to **REDIRECT_TO_LISTENER**, the HTTP listener is redirected to an HTTPS listener, and requests are routed by the HTTPS listener. - -Constraints -^^^^^^^^^^^ - -Currently, only redirects from an HTTP listener to an HTTPS listener are supported. When **action** is set to **REDIRECT_TO_LISTENER**, the listener specified by **listener_id** can only be an HTTP listener, and the listener specified by **redirect_listener_id** can only be an HTTPS listener. - -The load balancer of the HTTPS listener to which traffic is redirected must be the same as that of the HTTP listener. - -URI -^^^ - -POST /v2.0/lbaas/l7policies - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | l7policy | Yes | Object | Specifies the forwarding policy. For details, see `Table | - | | | | 2 <#elb_zq_zf_0001__en-us_topic_0136295317_table173601118133515>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 2** **l7policy** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the | - | | | | forwarding policy is used. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **tenant_id** in the token. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the forwarding | - | | | | policy name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding policy. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | forwarding policy. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | Yes | String | Specifies the ID of the | - | | | | listener to which the | - | | | | forwarding policy is added. | - | | | | | - | | | | - When **action** is set | - | | | | to **REDIRECT_TO_POOL**, | - | | | | forwarding policies can | - | | | | be added to a listener | - | | | | with **protocol** set to | - | | | | **HTTP** or | - | | | | **TERMINATED_HTTPS**. | - | | | | - When **action** is set | - | | | | to | - | | | | | - | | | | **REDIRECT_TO_LISTENER**, | - | | | | forwarding policies can | - | | | | be added to a listener | - | | | | with **protocol** set to | - | | | | **HTTP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | action | Yes | String | Specifies whether requests | - | | | | are forwarded to another | - | | | | backend server group or | - | | | | redirected to an HTTPS | - | | | | listener. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **REDIRECT_TO_POOL**: | - | | | | Requests are forwarded | - | | | | to the backend server | - | | | | group specified by | - | | | | **redirect_pool_id**. | - | | | | - | - | | | | **REDIRECT_TO_LISTENER**: | - | | | | Requests are redirected | - | | | | from the HTTP listener | - | | | | specified by | - | | | | **listener_id** to the | - | | | | HTTPS listener specified | - | | | | by | - | | | | | - | | | | **redirect_listener_id**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_pool_id | No | String | Specifies the ID of the | - | | | | backend server group to | - | | | | which traffic is forwarded. | - | | | | The default value is | - | | | | **null**. | - | | | | | - | | | | This parameter is mandatory | - | | | | when **action** is set to | - | | | | **REDIRECT_TO_POOL**. | - | | | | | - | | | | This parameter cannot be | - | | | | specified when **action** | - | | | | is set to | - | | | | **REDIRECT_TO_LISTENER**. | - | | | | | - | | | | The backend server group | - | | | | must meet the following | - | | | | requirements: | - | | | | | - | | | | - Cannot be the default | - | | | | backend server group of | - | | | | the listener. | - | | | | - Cannot be the backend | - | | | | server group used by | - | | | | forwarding policies of | - | | | | other listeners. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_listener_id | No | String | Specifies the ID of the | - | | | | listener to which the | - | | | | traffic is redirected. The | - | | | | default value is **null**. | - | | | | | - | | | | This parameter cannot be | - | | | | specified when **action** | - | | | | is set to | - | | | | **REDIRECT_TO_POOL**. | - | | | | | - | | | | This parameter is mandatory | - | | | | when **action** is set to | - | | | | **REDIRECT_TO_LISTENER**, | - | | | | and the listener must meet | - | | | | the following requirements: | - | | | | | - | | | | - Can only be an HTTPS | - | | | | listener. | - | | | | - Can only be a listener | - | | | | of the same load | - | | | | balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_url | No | String | Specifies the URL to which | - | | | | traffic is redirected. The | - | | | | default value is **null**. | - | | | | | - | | | | This parameter is reserved. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | position | No | Integer | Specifies the forwarding | - | | | | priority. The value ranges | - | | | | from **1** to **100**. The | - | | | | default value is **100**. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | rules | No | Array | Lists the forwarding rules | - | | | | of the forwarding policy. | - | | | | For details, see `Table | - | | | | 3 <#elb_zq_zf | - | | | | _0001__en-us_topic_01362953 | - | | | | 17_table16998194317143>`__. | - | | | | | - | | | | The list contains a maximum | - | | | | of two rules, and the | - | | | | **type** parameter of each | - | | | | rule must be unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 3** **rules** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | **Parameter** | **Mandatory** | **Type** | **Description** | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the match type of | - | | | | a forwarding rule. | - | | | | | - | | | | The value range varies | - | | | | depending on the protocol | - | | | | of the backend server | - | | | | group: | - | | | | | - | | | | - **HOST_NAME**: matches | - | | | | the domain name in the | - | | | | request. | - | | | | - **PATH**: matches the | - | | | | path in the request. | - | | | | | - | | | | The match type of | - | | | | forwarding rules in a | - | | | | forwarding policy must be | - | | | | unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | compare_type | Yes | String | Specifies the match mode. | - | | | | The options are as follows: | - | | | | | - | | | | When **type** is set to | - | | | | **HOST_NAME**, the value of | - | | | | this parameter can only be | - | | | | the following: | - | | | | | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - | | | | | - | | | | When **type** is set to | - | | | | **PATH**, the value of this | - | | | | parameter can be one of the | - | | | | following: | - | | | | | - | | | | - **REGEX**: indicates | - | | | | regular expression | - | | | | match. | - | | | | - **STARTS_WITH**: | - | | | | indicates prefix match. | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**. The default | - | | | | value is **false**. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | String | Specifies the key of the | - | | | | match content. The default | - | | | | value is **null**. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the value of the | - | | | | match content. The value | - | | | | cannot contain spaces. | - | | | | | - | | | | - When **type** is set to | - | | | | **HOST_NAME**, the value | - | | | | can contain a maximum of | - | | | | 100 characters that | - | | | | contain only letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.), and must | - | | | | start with a letter or | - | | | | digit. | - | | | | - When **type** is set to | - | | | | **PATH**, the value can | - | | | | contain a maximum of 128 | - | | | | characters. When | - | | | | **compare_type** is set | - | | | | to **STARTS_WITH** or | - | | | | **EQUAL_TO**, the value | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | \_ | - | | | | ~';@^-%#&$.*+?,=!:|\/()[]{} | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | l7policy | Object | Specifies the forwarding policy. For details, see `Table | - | | | 5 <#elb_zq_zf_0001__en-us_topic_0136295317_table1251155618376>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **l7policy** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding policy is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding policy. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the forwarding policy is added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | action | String | Specifies whether requests are | - | | | forwarded to another backend server | - | | | group or redirected to an HTTPS | - | | | listener. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests are | - | | | forwarded to the backend server | - | | | group specified by | - | | | **redirect_pool_id**. | - | | | - **REDIRECT_TO_LISTENER**: Requests | - | | | are redirected from the HTTP | - | | | listener specified by | - | | | **listener_id** to the HTTPS | - | | | listener specified by | - | | | **redirect_listener_id**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_pool_id | String | Specifies the ID of the backend | - | | | server group to which traffic is | - | | | forwarded. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_listener_id | String | Specifies the ID of the listener to | - | | | which the traffic is redirected. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url | String | Specifies the URL to which traffic is | - | | | redirected. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array | Lists the forwarding rules of the | - | | | forwarding policy. For details, see | - | | | `Table | - | | | 6 <#elb_zq_zf_0001__en-us_to | - | | | pic_0136295317_table129777459104>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | position | Integer | Specifies the forwarding priority. | - | | | The value ranges from **1** to | - | | | **100**. The default value is | - | | | **100**. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** **rules** parameter description - - ========= ====== =============================================================== - Parameter Type Description - ========= ====== =============================================================== - id String Lists the IDs of the forwarding rules in the forwarding policy. - ========= ====== =============================================================== - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Adding a forwarding policy - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/l7policies - - { - "l7policy": { - "name": "niubiao_yaqing_api-2", - "listener_id": "3e24a3ca-11e5-4aa3-abd4-61ba0a8a18f1", - "action": "REDIRECT_TO_POOL", - "redirect_pool_id": "6460f13a-76de-43c7-b776-4fefc06a676e", - "rules": [ - { - "type": "PATH", - "compare_type": "EQUAL_TO", - "value": "/test" - }, - { - "type": "HOST_NAME", - "compare_type": "EQUAL_TO", - "value": "www.test.com" - } - ] - } - } - -- Example request 2: Creating a redirect - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/l7policies - - { - "l7policy": { - "action": "REDIRECT_TO_LISTENER", - "listener_id": "4ef8553e-9ef7-4859-a42d-919feaf89d60", - "redirect_listener_id": "3ee10199-a7b4-4784-93cd-857afe9d0890", - "name": "redirect-test" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "l7policy": { - "redirect_pool_id": "6460f13a-76de-43c7-b776-4fefc06a676e", - "description": "", - "admin_state_up": true, - "rules": [ - { - "id": "742600d9-2a14-4808-af69-336883dbb590" - }, - { - "id": "3251ed77-0d52-412b-9310-733636bb3fbf" - } - ], - "tenant_id": "573d73c9f90e48d0bddfa0eb202b25c2", - "listener_id": "3e24a3ca-11e5-4aa3-abd4-61ba0a8a18f1", - "redirect_url": null, - "redirect_listener_id": null, - "action": "REDIRECT_TO_POOL", - "position": 100, - "provisioning_status": "ACTIVE", - - "id": "65d6e115-f179-4bcd-9bbb-1484e5f8ee81", - "name": "niubiao_yaqing-_api-2" - } - } - -- Example response 2 - - .. code:: screen - - { - "l7policy": { - "redirect_pool_id": null, - "description": "", - "admin_state_up": true, - "rules": [ ], - "tenant_id": "573d73c9f90e48d0bddfa0eb202b25c2", - "listener_id": "4ef8553e-9ef7-4859-a42d-919feaf89d60", - "redirect_url": null, - "redirect_listener_id": "3ee10199-a7b4-4784-93cd-857afe9d0890", - "action": "REDIRECT_TO_LISTENER", - "position": 100, - "provisioning_status": "ACTIVE", - "id": "bc4e4338-480f-4a98-8245-5bb1964f0e1d", - "name": "redirect-test" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/elb_zq_zf_0002.rst b/elb/api-ref/elb_zq_zf_0002.rst deleted file mode 100644 index 3a79b6c8..00000000 --- a/elb/api-ref/elb_zq_zf_0002.rst +++ /dev/null @@ -1,475 +0,0 @@ -Querying Forwarding Policies -============================ - -Function -^^^^^^^^ - -This API is used to query the forwarding policies. Filter query and pagination query are supported. Unless otherwise specified, exact match is applied. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v2.0/lbaas/l7policies - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | Parameter | **Mandatory** | Type | Description | | - +=======================+=======================+=======================+=======================+=======================+ - | marker | No | String | Specifies the ID of | | - | | | | the forwarding policy | | - | | | | from which pagination | | - | | | | query starts, that | | - | | | | is, the ID of the | | - | | | | last forwarding | | - | | | | policy on the | | - | | | | previous page. | | - | | | | | | - | | | | This parameter must | | - | | | | be used together with | | - | | | | **limit**. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | limit | No | Integer | Specifies the number | | - | | | | of forwarding | | - | | | | policies on each | | - | | | | page. If this | | - | | | | parameter is not set, | | - | | | | all forwarding | | - | | | | policies are queried | | - | | | | by default. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | page_reverse | No | Boolean | Specifies the page | | - | | | | direction. The value | | - | | | | can be **true** or | | - | | | | **false**, and the | | - | | | | default value is | | - | | | | **false**. The last | | - | | | | page in the list | | - | | | | requested with | | - | | | | **page_reverse** set | | - | | | | to **false** will not | | - | | | | contain the "next" | | - | | | | link, and the last | | - | | | | page in the list | | - | | | | requested with | | - | | | | **page_reverse** set | | - | | | | to **true** will not | | - | | | | contain the | | - | | | | "previous" link. | | - | | | | | | - | | | | This parameter must | | - | | | | be used together with | | - | | | | **limit**. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | id | No | String | Specifies the | | - | | | | forwarding policy ID. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | tenant_id | No | String | Specifies the ID of | | - | | | | the project where the | | - | | | | forwarding policy is | | - | | | | used. | | - | | | | | | - | | | | The value contains a | | - | | | | maximum of 255 | | - | | | | characters. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | name | No | String | Specifies the | | - | | | | forwarding policy | | - | | | | name. | | - | | | | | | - | | | | The value contains a | | - | | | | maximum of 255 | | - | | | | characters. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | admin_state_up | No | Boolean | Specifies the | | - | | | | administrative status | | - | | | | of the forwarding | | - | | | | policy. | | - | | | | | | - | | | | This parameter is | | - | | | | reserved, and the | | - | | | | default value is | | - | | | | **true**. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | description | No | String | Provides | | - | | | | supplementary | | - | | | | information about the | | - | | | | forwarding policy. | | - | | | | | | - | | | | The value contains a | | - | | | | maximum of 255 | | - | | | | characters. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | listener_id | No | String | Specifies the ID of | | - | | | | the listener to which | | - | | | | the forwarding policy | | - | | | | is added. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | action | No | String | Specifies whether | | - | | | | requests are | | - | | | | forwarded to another | | - | | | | backend server group | | - | | | | or redirected to an | | - | | | | HTTPS listener. | | - | | | | | | - | | | | The value can be one | | - | | | | of the following: | | - | | | | | | - | | | | - | | - | | | | **REDIRECT_TO_POOL**: | | - | | | | Requests are | | - | | | | forwarded to the | | - | | | | backend server | | - | | | | group specified by | | - | | | | | | - | | | | **redirect_pool_id**. | | - | | | | - **RE | | - | | | | DIRECT_TO_LISTENER**: | | - | | | | Requests are | | - | | | | redirected from | | - | | | | the HTTP listener | | - | | | | specified by | | - | | | | **listener_id** to | | - | | | | the HTTPS listener | | - | | | | specified by | | - | | | | **re | | - | | | | direct_listener_id**. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | redirect_pool_id | No | String | Specifies the ID of | | - | | | | the backend server | | - | | | | group to which | | - | | | | traffic is forwarded. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | redirect_listener_id | No | String | Specifies the ID of | | - | | | | the listener to which | | - | | | | the traffic is | | - | | | | redirected. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | redirect_url | No | String | Specifies the URL to | | - | | | | which traffic is | | - | | | | redirected. | | - | | | | | | - | | | | This parameter is | | - | | | | reserved. | | - | | | | | | - | | | | The value contains a | | - | | | | maximum of 255 | | - | | | | characters. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | position | No | Integer | Specifies the | | - | | | | forwarding priority. | | - | | | | The value ranges from | | - | | | | **1** to **100**. The | | - | | | | default value is | | - | | | | **100**. | | - | | | | | | - | | | | This parameter is | | - | | | | reserved. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | provisioning_status | No | String | This parameter is | | - | | | | reserved, and its | | - | | | | value can only be | | - | | | | **ACTIVE**. | | - | | | | | | - | | | | It specifies the | | - | | | | provisioning status | | - | | | | of the forwarding | | - | | | | policy. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - | display_all_rules | No | Boolean | Specifies whether to | | - | | | | display all | | - | | | | forwarding rules | | - | | | | added to the | | - | | | | forwarding policy. | | - | | | | | | - | | | | Value options: | | - | | | | | | - | | | | **false**: Forwarding | | - | | | | rules will not be | | - | | | | displayed, and only | | - | | | | IDs are displayed. | | - | | | | | | - | | | | **true**: Forwarding | | - | | | | rules will be | | - | | | | displayed. | | - +-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | l7policies | Array | Lists the forwarding policies. For | - | | | details, see `Table | - | | | 3 <#elb_zq_zf_0002__en-us_top | - | | | ic_0136295315_table1921785733313>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | l7policies_links | Array | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - | | | | - | | | This parameter exists only in the | - | | | response body of pagination query. | - | | | | - | | | For details, see `Table | - | | | 5 <#elb_zq_zf_0002__en-us_to | - | | | pic_0136295315_table164602247259>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 3** **l7policy** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding policy is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding policy. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the forwarding policy is added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | action | String | Specifies whether requests are | - | | | forwarded to another backend server | - | | | group or redirected to an HTTPS | - | | | listener. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests are | - | | | forwarded to the backend server | - | | | group specified by | - | | | **redirect_pool_id**. | - | | | - **REDIRECT_TO_LISTENER**: Requests | - | | | are redirected from the HTTP | - | | | listener specified by | - | | | **listener_id** to the HTTPS | - | | | listener specified by | - | | | **redirect_listener_id**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_pool_id | String | Specifies the ID of the backend | - | | | server group to which traffic is | - | | | forwarded. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_listener_id | String | Specifies the ID of the listener to | - | | | which the traffic is redirected. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url | String | Specifies the URL to which traffic is | - | | | redirected. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array | Lists the forwarding rules of the | - | | | forwarding policy. For details, see | - | | | `Table | - | | | 6 `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | position | Integer | Specifies the forwarding priority. | - | | | The value ranges from **1** to | - | | | **100**. The default value is | - | | | **100**. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **rules** parameter description - - ========= ====== =============================================================== - Parameter Type Description - ========= ====== =============================================================== - id String Lists the IDs of the forwarding rules in the forwarding policy. - ========= ====== =============================================================== - -.. table:: **Table 5** **l7policies_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. | - | | | | - | | | The value can be **next** or | - | | | **previous**. The value **next** | - | | | indicates the href containing the URL | - | | | of the next page, and **previous** | - | | | indicates the href containing the URL | - | | | of the previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Querying all forwarding policies - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/l7policies - -- Example request 2: Querying forwarding policies through which requests are forwarded to the backend server group - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/l7policies?action=REDIRECT_TO_POOL - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "l7policies": [ - { - "redirect_pool_id": "431a03eb-81bb-408e-ae37-7ce19023692b", - "redirect_listener_id": null, - "description": "", - "admin_state_up": true, - "rules": [ - { - "id": "67d8a8fa-b0dd-4bd4-a85b-671db19b2ef3" - }, - { - "id": "f02b3bca-69d2-4335-a3fa-a8054e996213" - } - ], - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - - "listener_id": "26058b64-6185-4e06-874e-4bd68b7633d0", - "redirect_url": null, - "action": "REDIRECT_TO_POOL", - "position": 2, - "provisioning_status": "ACTIVE", - "id": "5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586", - "name": "" - }, - { - "redirect_pool_id": "59eebd7b-c68f-4f8a-aa7f-e062e84c0690", - "redirect_listener_id": null, - "description": "", - "admin_state_up": true, - "rules": [ - { - "id": "f4499f48-de3d-4efe-926d-926aa4d6aaf5" - } - ], - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - "listener_id": "e1310063-00de-4867-ab55-ccac4d9db364", - "redirect_url": null, - "action": "REDIRECT_TO_POOL", - "position": 1, - "provisioning_status": "ACTIVE", - "id": "6cfd9d89-1d7e-4d84-ae1f-a8c5ff126f72", - "name": "" - } - ], - "l7policies_links": [ - { - "href": "https://{Endpoint}/v2.0/lbaas/l7policies/061f461c-c7cf-47ab-9583-09be5076cd09/rules?marker=167c1a31-bc12-4c3d-9ad1-c9bf450df4ce&page_reverse=True", - "rel": "previous" - } - ] - } - -- Example response 2 - - .. code:: screen - - { - "l7policies": [ - { - "redirect_pool_id": "431a03eb-81bb-408e-ae37-7ce19023692b", - "redirect_listener_id": null, - "description": "", - "admin_state_up": true, - "rules": [ - { - "id": "67d8a8fa-b0dd-4bd4-a85b-671db19b2ef3" - }, - { - "id": "f02b3bca-69d2-4335-a3fa-a8054e996213" - } - ], - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - - "listener_id": "26058b64-6185-4e06-874e-4bd68b7633d0", - "redirect_url": null, - "action": "REDIRECT_TO_POOL", - "position": 2, - "provisioning_status": "ACTIVE", - "id": "5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586", - "name": "" - }, - { - "redirect_pool_id": "59eebd7b-c68f-4f8a-aa7f-e062e84c0690", - "redirect_listener_id": null, - "description": "", - "admin_state_up": true, - "rules": [ - { - "id": "f4499f48-de3d-4efe-926d-926aa4d6aaf5" - } - ], - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - - "listener_id": "e1310063-00de-4867-ab55-ccac4d9db364", - "redirect_url": null, - "action": "REDIRECT_TO_POOL", - "position": 1, - "provisioning_status": "ACTIVE", - "id": "6cfd9d89-1d7e-4d84-ae1f-a8c5ff126f72", - "name": "" - } - ], - "l7policies_links": [ - { - "href": "https://{Endpoint}/v2.0/lbaas/l7policies/061f461c-c7cf-47ab-9583-09be5076cd09/rules?marker=167c1a31-bc12-4c3d-9ad1-c9bf450df4ce&page_reverse=True", - "rel": "previous" - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/elb_zq_zf_0003.rst b/elb/api-ref/elb_zq_zf_0003.rst deleted file mode 100644 index fac8c537..00000000 --- a/elb/api-ref/elb_zq_zf_0003.rst +++ /dev/null @@ -1,172 +0,0 @@ -Querying Details of a Forwarding Policy -======================================= - -Function -^^^^^^^^ - -This API is used to query details about a forwarding policy. - -URI -^^^ - -GET /v2.0/lbaas/l7policies/{l7policy_id} - -.. table:: **Table 1** Parameter description - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes String Specifies the forwarding policy ID. - =========== ========= ====== =================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | l7policy | Object | Specifies the forwarding policy. For details, see `Table | - | | | 3 <#elb_zq_zf_0003__en-us_topic_0136295316_table77011444133616>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **l7policy** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding policy is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding policy. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the forwarding policy is added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | action | String | Specifies whether requests are | - | | | forwarded to another backend server | - | | | group or redirected to an HTTPS | - | | | listener. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests are | - | | | forwarded to the backend server | - | | | group specified by | - | | | **redirect_pool_id**. | - | | | - **REDIRECT_TO_LISTENER**: Requests | - | | | are redirected from the HTTP | - | | | listener specified by | - | | | **listener_id** to the HTTPS | - | | | listener specified by | - | | | **redirect_listener_id**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_pool_id | String | Specifies the ID of the backend | - | | | server group to which traffic is | - | | | forwarded. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_listener_id | String | Specifies the ID of the listener to | - | | | which the traffic is redirected. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url | String | Specifies the URL to which traffic is | - | | | redirected. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array | Lists the forwarding rules of the | - | | | forwarding policy. For details, see | - | | | `Table | - | | | 6 `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | position | Integer | Specifies the forwarding priority. | - | | | The value ranges from **1** to | - | | | **100**. The default value is | - | | | **100**. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **rules** parameter description - - ========= ====== =============================================================== - Parameter Type Description - ========= ====== =============================================================== - id String Lists the IDs of the forwarding rules in the forwarding policy. - ========= ====== =============================================================== - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Querying details of a forwarding policy - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "l7policy": { - "redirect_pool_id": "431a03eb-81bb-408e-ae37-7ce19023692b", - "redirect_listener_id": null, - "description": "", - "admin_state_up": true, - "rules": [ - { - "id": "67d8a8fa-b0dd-4bd4-a85b-671db19b2ef3" - }, - { - "id": "f02b3bca-69d2-4335-a3fa-a8054e996213" - } - ], - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - "listener_id": "26058b64-6185-4e06-874e-4bd68b7633d0", - "redirect_url": null, - "provisioning_status": "ACTIVE", - "action": "REDIRECT_TO_POOL", - "position": 1, - "id": "5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586", - "name": "l7policy-garry-1" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/elb_zq_zf_0004.rst b/elb/api-ref/elb_zq_zf_0004.rst deleted file mode 100644 index 217cb68d..00000000 --- a/elb/api-ref/elb_zq_zf_0004.rst +++ /dev/null @@ -1,263 +0,0 @@ -Updating a Forwarding Policy -============================ - -Function -^^^^^^^^ - -This API is used to update a forwarding policy. You can select another backend server group or redirect to another HTTPS listener. - -URI -^^^ - -PUT /v2.0/lbaas/l7policies/{l7policy_id} - -.. table:: **Table 1** Parameter description - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes Object Specifies the forwarding policy ID. - =========== ========= ====== =================================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | l7policy | Yes | Object | Specifies the forwarding policy. For details, see `Table | - | | | | 3 <#elb_zq_zf_0004__en-us_topic_0136295318_table7905034124412>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 3** **l7policy** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the forwarding | - | | | | policy name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | forwarding policy. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_pool_id | No | String | Specifies the ID of the | - | | | | backend server group to | - | | | | which traffic is forwarded. | - | | | | The default value is | - | | | | **null**. | - | | | | | - | | | | This parameter is mandatory | - | | | | when **action** is set to | - | | | | **REDIRECT_TO_POOL**. | - | | | | | - | | | | This parameter cannot be | - | | | | specified when **action** | - | | | | is set to | - | | | | **REDIRECT_TO_LISTENER**. | - | | | | | - | | | | The backend server group | - | | | | must meet the following | - | | | | requirements: | - | | | | | - | | | | - Cannot be the default | - | | | | backend server group of | - | | | | the listener. | - | | | | - Cannot be the backend | - | | | | server group used by | - | | | | forwarding policies of | - | | | | other listeners. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_listener_id | No | String | Specifies the ID of the | - | | | | listener to which the | - | | | | traffic is redirected. The | - | | | | default value is **null**. | - | | | | | - | | | | This parameter is mandatory | - | | | | when **action** is set to | - | | | | **REDIRECT_TO_LISTENER**. | - | | | | | - | | | | This parameter cannot be | - | | | | specified when **action** | - | | | | is set to | - | | | | **REDIRECT_TO_POOL**. The | - | | | | listener must meet the | - | | | | following requirements: | - | | | | | - | | | | - Can only be an HTTPS | - | | | | listener. | - | | | | - Can only be a listener | - | | | | of the same load | - | | | | balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding policy. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | l7policy | Yes | Object | Specifies the forwarding policy. For details, see `Table | - | | | | 5 <#elb_zq_zf_0004__en-us_topic_0136295318_table20746114154514>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 5** **l7policy** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding policy is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding policy. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the forwarding policy is added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | action | String | Specifies whether requests are | - | | | forwarded to another backend server | - | | | group or redirected to an HTTPS | - | | | listener. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests are | - | | | forwarded to the backend server | - | | | group specified by | - | | | **redirect_pool_id**. | - | | | - **REDIRECT_TO_LISTENER**: Requests | - | | | are redirected from the HTTP | - | | | listener specified by | - | | | **listener_id** to the HTTPS | - | | | listener specified by | - | | | **redirect_listener_id**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_pool_id | String | Specifies the ID of the backend | - | | | server group to which traffic is | - | | | forwarded. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_listener_id | String | Specifies the ID of the listener to | - | | | which the traffic is redirected. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url | String | Specifies the URL to which traffic is | - | | | redirected. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array | Lists the forwarding rules of the | - | | | forwarding policy. For details, see | - | | | `Table | - | | | 6 `__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | position | Integer | Specifies the forwarding priority. | - | | | The value ranges from **1** to | - | | | **100**. The default value is | - | | | **100**. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** **rules** parameter description - - ========= ====== =============================================================== - Parameter Type Description - ========= ====== =============================================================== - id String Lists the IDs of the forwarding rules in the forwarding policy. - ========= ====== =============================================================== - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Updating a forwarding policy - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586 - - { - "l7policy": { - "name": "test" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "l7policy": { - "redirect_pool_id": "431a03eb-81bb-408e-ae37-7ce19023692b", - "redirect_listener_id": null, - "description": "", - "admin_state_up": true, - "rules": [ - { - "id": "67d8a8fa-b0dd-4bd4-a85b-671db19b2ef3" - }, - { - "id": "f02b3bca-69d2-4335-a3fa-a8054e996213" - } - ], - - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - - "listener_id": "26058b64-6185-4e06-874e-4bd68b7633d0", - "redirect_url": null, - "action": "REDIRECT_TO_POOL", - "provisioning_status": "ACTIVE", - "position": 2, - "id": "5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586", - "name": "test" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/elb_zq_zf_0005.rst b/elb/api-ref/elb_zq_zf_0005.rst deleted file mode 100644 index 98e44574..00000000 --- a/elb/api-ref/elb_zq_zf_0005.rst +++ /dev/null @@ -1,53 +0,0 @@ -Deleting a Forwarding Policy -============================ - -Function -^^^^^^^^ - -This API is used to delete a specific forwarding policy. - -URI -^^^ - -DELETE /v2.0/lbaas/l7policies/{l7policy_id} - -.. table:: **Table 1** Parameter description - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes Object Specifies the forwarding policy ID. - =========== ========= ====== =================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Deleting a forwarding policy - - .. code:: screen - - DELETE https://{Endpoint}/v2.0/lbaas/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/elb_zq_zg_0000.rst b/elb/api-ref/elb_zq_zg_0000.rst deleted file mode 100644 index 6a3e9829..00000000 --- a/elb/api-ref/elb_zq_zg_0000.rst +++ /dev/null @@ -1,10 +0,0 @@ -Forwarding Rule -=============== - -- `Adding a Forwarding Rule `__ -- `Querying Forwarding Rules `__ -- `Querying Details of a Forwarding Rule `__ -- `Updating a Forwarding Rule `__ -- `Deleting a Forwarding Rule `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_zg_0001.rst b/elb/api-ref/elb_zq_zg_0001.rst deleted file mode 100644 index bf88773c..00000000 --- a/elb/api-ref/elb_zq_zg_0001.rst +++ /dev/null @@ -1,312 +0,0 @@ -Adding a Forwarding Rule -======================== - -Function -^^^^^^^^ - -This API is used to add a forwarding rule. After you add a forwarding rule, the load balancer matches the domain name and path in the request and distributes the traffic to the backend server group specified by **redirect_pool_id** of the associated forwarding policy. - -Constraints -^^^^^^^^^^^ - -The match type of forwarding rules in a forwarding policy must be unique. - -URI -^^^ - -POST /v2.0/lbaas/l7policies/{l7policy_id}/rules - -.. table:: **Table 1** Parameter description - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes String Specifies the forwarding policy ID. - =========== ========= ====== =================================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | rule | Yes | Object | Specifies the forwarding rule. For details, see `Table | - | | | | 3 <#elb_zq_zg_0001__en-us_topic_0116649236_table857349145816>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 3** **rule** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the | - | | | | forwarding rule is used. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **project_id** in the | - | | | | token. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the match type of | - | | | | a forwarding rule. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **HOST_NAME**: matches | - | | | | the domain name in the | - | | | | request. | - | | | | - **PATH**: matches the | - | | | | path in the request. | - | | | | | - | | | | The match type of | - | | | | forwarding rules in a | - | | | | forwarding policy must be | - | | | | unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | compare_type | Yes | String | Specifies the match mode. | - | | | | The options are as follows: | - | | | | | - | | | | When **type** is set to | - | | | | **HOST_NAME**, the value of | - | | | | this parameter can only be | - | | | | the following: | - | | | | | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - | | | | | - | | | | When **type** is set to | - | | | | **PATH**, the value of this | - | | | | parameter can be one of the | - | | | | following: | - | | | | | - | | | | - **REGEX**: indicates | - | | | | regular expression | - | | | | match. | - | | | | - **STARTS_WITH**: | - | | | | indicates prefix match. | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**. The default | - | | | | value is **false**. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | String | Specifies the key of the | - | | | | match content. The default | - | | | | value is **null**. | - | | | | | - | | | | This parameter is reserved. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the value of the | - | | | | match content. The value | - | | | | cannot contain spaces. | - | | | | | - | | | | The value contains a | - | | | | maximum of 128 characters. | - | | | | | - | | | | - When **type** is set to | - | | | | **HOST_NAME**, the value | - | | | | can contain a maximum of | - | | | | 100 characters that | - | | | | contain only letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.), and must | - | | | | start with a letter or | - | | | | digit. | - | | | | - When **type** is set to | - | | | | **PATH**, the value can | - | | | | contain a maximum of 128 | - | | | | characters. When | - | | | | **compare_type** is set | - | | | | to **STARTS_WITH** or | - | | | | **EQUAL_TO**, the value | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | \_~';@^-%#&$.*+?,=!:\| | - | | | | \\/()[]{} | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | rule | Object | Specifies the forwarding rule. For details, see `Table | - | | | 5 <#elb_zq_zg_0001__en-us_topic_0116649236_table1212118142596>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **rule** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding rule ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding rule is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding rule. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the match type of a | - | | | forwarding rule. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **HOST_NAME**: matches the domain | - | | | name in the request. | - | | | - **PATH**: matches the path in the | - | | | request. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | compare_type | String | Specifies the match mode. The options | - | | | are as follows: | - | | | | - | | | When **type** is set to | - | | | **HOST_NAME**, the value of this | - | | | parameter can only be the following: | - | | | | - | | | - **EQUAL_TO**: indicates exact | - | | | match. | - | | | | - | | | When **type** is set to **PATH**, the | - | | | value of this parameter can be one of | - | | | the following: | - | | | | - | | | - **REGEX**: indicates regular | - | | | expression match. | - | | | - **STARTS_WITH**: indicates prefix | - | | | match. | - | | | - **EQUAL_TO**: indicates exact | - | | | match. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | invert | Boolean | Specifies whether reverse matching is | - | | | supported. | - | | | | - | | | The value can be **true** or | - | | | **false**. The default value is | - | | | **false**. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | key | String | Specifies the key of the match | - | | | content. The default value is | - | | | **null**. | - | | | | - | | | This parameter is reserved. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | content. | - | | | | - | | | The value contains a maximum of 128 | - | | | characters. | - | | | | - | | | - When **type** is set to | - | | | **HOST_NAME**, the value can | - | | | contain a maximum of 100 | - | | | characters that contain only | - | | | letters, digits, hyphens (-), and | - | | | periods (.), and must start with a | - | | | letter or digit. | - | | | - When **type** is set to **PATH**, | - | | | the value can contain a maximum of | - | | | 128 characters. When | - | | | **compare_type** is set to | - | | | **STARTS_WITH** or **EQUAL_TO**, | - | | | the value must start with a slash | - | | | (/) and can contain only letters, | - | | | digits, and special characters | - | | | \_~';@^-%#&$.*+?,=!:\| \\/()[]{} | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding rule. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Adding a forwarding rule - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586/rules - - { - "rule": { - "compare_type": "EQUAL_TO", - "type": "PATH", - "value": "/bbb.html" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "rule": { - "compare_type": "EQUAL_TO", - "admin_state_up": true, - "provisioning_status": "ACTIVE", - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - - "invert": false, - "value": "/bbb.html", - "key": null, - "type": "PATH", - "id": "c6f457b8-bf6f-45d7-be5c-a3226945b7b1" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/elb_zq_zg_0002.rst b/elb/api-ref/elb_zq_zg_0002.rst deleted file mode 100644 index ebedfb43..00000000 --- a/elb/api-ref/elb_zq_zg_0002.rst +++ /dev/null @@ -1,388 +0,0 @@ -Querying Forwarding Rules -========================= - -Function -^^^^^^^^ - -This API is used to query forwarding rules. Filter query and pagination query are supported. Unless otherwise specified, exact match is applied. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v2.0/lbaas/l7policies/{l7policy_id}/rules - -.. table:: **Table 1** Parameter description - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes String Specifies the forwarding policy ID. - =========== ========= ====== =================================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | forwarding rule from which | - | | | | pagination query starts, | - | | | | that is, the ID of the last | - | | | | forwarding rule on the | - | | | | previous page. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | forwarding rules on each | - | | | | page. If this parameter is | - | | | | not set, all forwarding | - | | | | rules are queried by | - | | | | default. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the forwarding | - | | | | rule ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the | - | | | | forwarding rule is used. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | String | Specifies the match type of | - | | | | a forwarding rule. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **HOST_NAME**: matches | - | | | | the domain name in the | - | | | | request. | - | | | | - **PATH**: matches the | - | | | | path in the request. | - | | | | | - | | | | The match type of | - | | | | forwarding rules in a | - | | | | forwarding policy must be | - | | | | unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | compare_type | No | String | Specifies the match mode. | - | | | | The options are as follows: | - | | | | | - | | | | When **type** is set to | - | | | | **HOST_NAME**, the value of | - | | | | this parameter can only be | - | | | | the following: | - | | | | | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - | | | | | - | | | | When **type** is set to | - | | | | **PATH**, the value of this | - | | | | parameter can be one of the | - | | | | following: | - | | | | | - | | | | - **REGEX**: indicates | - | | | | regular expression | - | | | | match. | - | | | | - **STARTS_WITH**: | - | | | | indicates prefix match. | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**. The default | - | | | | value is **false**. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | String | Specifies the key of the | - | | | | match content. The default | - | | | | value is **null**. | - | | | | | - | | | | This parameter is reserved. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | No | String | Specifies the value of the | - | | | | match content. | - | | | | | - | | | | The value contains a | - | | | | maximum of 128 characters. | - | | | | | - | | | | - When **type** is set to | - | | | | **HOST_NAME**, the value | - | | | | can contain a maximum of | - | | | | 100 characters that | - | | | | contain only letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.), and must | - | | | | start with a letter or | - | | | | digit. | - | | | | - When **type** is set to | - | | | | **PATH**, the value can | - | | | | contain a maximum of 128 | - | | | | characters. When | - | | | | **compare_type** is set | - | | | | to **STARTS_WITH** or | - | | | | **EQUAL_TO**, the value | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | \_~';@^-%#&$.*+?,=!:\| | - | | | | \\/()[]{} | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | provisioning_status | No | String | This parameter is reserved, | - | | | | and its value can only be | - | | | | **ACTIVE**. | - | | | | | - | | | | It specifies the | - | | | | provisioning status of the | - | | | | forwarding rule. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 3** Response parameters - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | rules | Array | Lists the forwarding rules. For | - | | | details, see `Table | - | | | 4 <#elb_zq_zg_0002__en-us_topi | - | | | c_0116649234_table19731219105316>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules_links | Array | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - | | | | - | | | This parameter exists only in the | - | | | response body of pagination query. | - | | | | - | | | For details, see `Table | - | | | 5 <#elb_zq_zg_0002__en-us_to | - | | | pic_0116649234_table121191126442>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **rules** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding rule ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding rule is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding rule. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the match type of a | - | | | forwarding rule. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **HOST_NAME**: matches the domain | - | | | name in the request. | - | | | - **PATH**: matches the path in the | - | | | request. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | compare_type | String | Specifies the match mode. The options | - | | | are as follows: | - | | | | - | | | When **type** is set to | - | | | **HOST_NAME**, the value of this | - | | | parameter can only be the following: | - | | | | - | | | - **EQUAL_TO**: indicates exact | - | | | match. | - | | | | - | | | When **type** is set to **PATH**, the | - | | | value of this parameter can be one of | - | | | the following: | - | | | | - | | | - **REGEX**: indicates regular | - | | | expression match. | - | | | - **STARTS_WITH**: indicates prefix | - | | | match. | - | | | - **EQUAL_TO**: indicates exact | - | | | match. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | invert | Boolean | Specifies whether reverse matching is | - | | | supported. | - | | | | - | | | The value can be **true** or | - | | | **false**. The default value is | - | | | **false**. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | key | String | Specifies the key of the match | - | | | content. The default value is | - | | | **null**. | - | | | | - | | | This parameter is reserved. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | content. | - | | | | - | | | The value contains a maximum of 128 | - | | | characters. | - | | | | - | | | - When **type** is set to | - | | | **HOST_NAME**, the value can | - | | | contain a maximum of 100 | - | | | characters that contain only | - | | | letters, digits, hyphens (-), and | - | | | periods (.), and must start with a | - | | | letter or digit. | - | | | - When **type** is set to **PATH**, | - | | | the value can contain a maximum of | - | | | 128 characters. When | - | | | **compare_type** is set to | - | | | **STARTS_WITH** or **EQUAL_TO**, | - | | | the value must start with a slash | - | | | (/) and can contain only letters, | - | | | digits, and special characters | - | | | \_~';@^-%#&$.*+?,=!:\| \\/()[]{} | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding rule. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** **rules_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. | - | | | | - | | | The value can be **next** or | - | | | **previous**. The value **next** | - | | | indicates the href containing the URL | - | | | of the next page, and **previous** | - | | | indicates the href containing the URL | - | | | of the previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Querying all forwarding rules of a specific forwarding policy - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586/rules - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "rules": [ - { - "compare_type": "EQUAL_TO", - "provisioning_status": "ACTIVE", - "admin_state_up": true, - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - - "invert": false, - "value": "www.test.com", - "key": null, - "type": "HOST_NAME", - "id": "67d8a8fa-b0dd-4bd4-a85b-671db19b2ef3" - }, - { - "compare_type": "EQUAL_TO", - "provisioning_status": "ACTIVE", - "admin_state_up": true, - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - - "invert": false, - "value": "/aaa.html", - "key": null, - "type": "PATH", - "id": "f02b3bca-69d2-4335-a3fa-a8054e996213" - } - ] - "rules_links": [ - { - "href": "https://{Endpoint}/v2.0/lbaas/l7policies/061f461c-c7cf-47ab-9583-09be5076cd09/rules?marker=167c1a31-bc12-4c3d-9ad1-c9bf450df4ce&page_reverse=True", - "rel": "previous" - } - ] - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/elb_zq_zg_0003.rst b/elb/api-ref/elb_zq_zg_0003.rst deleted file mode 100644 index eb36afae..00000000 --- a/elb/api-ref/elb_zq_zg_0003.rst +++ /dev/null @@ -1,178 +0,0 @@ -Querying Details of a Forwarding Rule -===================================== - -Function -^^^^^^^^ - -This API is used to query details about a forwarding rule using its ID. - -URI -^^^ - -GET /v2.0/lbaas/l7policies/{l7policy_id}/rules/{l7rule_id} - -.. table:: **Table 1** Parameter description - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes String Specifies the forwarding policy ID. - l7rule_id Yes String Specifies the forwarding rule ID. - =========== ========= ====== =================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | rule | Object | Specifies the forwarding rule. For details, see `Table | - | | | 3 <#elb_zq_zg_0003__en-us_topic_0116649235_table239892725716>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **rule** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding rule ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding rule is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding rule. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the match type of a | - | | | forwarding rule. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **HOST_NAME**: matches the domain | - | | | name in the request. | - | | | - **PATH**: matches the path in the | - | | | request. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | compare_type | String | Specifies the match mode. The options | - | | | are as follows: | - | | | | - | | | When **type** is set to | - | | | **HOST_NAME**, the value of this | - | | | parameter can only be the following: | - | | | | - | | | - **EQUAL_TO**: indicates exact | - | | | match. | - | | | | - | | | When **type** is set to **PATH**, the | - | | | value of this parameter can be one of | - | | | the following: | - | | | | - | | | - **REGEX**: indicates regular | - | | | expression match. | - | | | - **STARTS_WITH**: indicates prefix | - | | | match. | - | | | - **EQUAL_TO**: indicates exact | - | | | match. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | invert | Boolean | Specifies whether reverse matching is | - | | | supported. | - | | | | - | | | The value can be **true** or | - | | | **false**. The default value is | - | | | **false**. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | key | String | Specifies the key of the match | - | | | content. The default value is | - | | | **null**. | - | | | | - | | | This parameter is reserved. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | content. | - | | | | - | | | The value contains a maximum of 128 | - | | | characters. | - | | | | - | | | - When **type** is set to | - | | | **HOST_NAME**, the value can | - | | | contain a maximum of 100 | - | | | characters that contain only | - | | | letters, digits, hyphens (-), and | - | | | periods (.), and must start with a | - | | | letter or digit. | - | | | - When **type** is set to **PATH**, | - | | | the value can contain a maximum of | - | | | 128 characters. When | - | | | **compare_type** is set to | - | | | **STARTS_WITH** or **EQUAL_TO**, | - | | | the value must start with a slash | - | | | (/) and can contain only letters, | - | | | digits, and special characters | - | | | \_~';@^-%#&$.*+?,=!:\| \\/()[]{} | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding rule. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Querying details of a forwarding rule - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586/rules/67d8a8fa-b0dd-4bd4-a85b-671db19b2ef3 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "rule": { - "compare_type": "EQUAL_TO", - "provisioning_status": "ACTIVE", - "admin_state_up": true, - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - - "invert": false, - "value": "/index.html", - "key": null, - "type": "PATH", - "id": "67d8a8fa-b0dd-4bd4-a85b-671db19b2ef3" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/elb_zq_zg_0004.rst b/elb/api-ref/elb_zq_zg_0004.rst deleted file mode 100644 index 96f2180e..00000000 --- a/elb/api-ref/elb_zq_zg_0004.rst +++ /dev/null @@ -1,278 +0,0 @@ -Updating a Forwarding Rule -========================== - -Function -^^^^^^^^ - -This API is used to update a forwarding rule. You can change the mode that how traffic is distributed by updating the forwarding rule. - -URI -^^^ - -PUT /v2.0/lbaas/l7policies/{l7policy_id}/rules/{l7rule_id} - -.. table:: **Table 1** Parameter description - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes String Specifies the forwarding policy ID. - l7rule_id Yes String Specifies the forwarding rule ID. - =========== ========= ====== =================================== - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | rule | Yes | Object | Specifies the forwarding rule. For details, see `Table | - | | | | 3 <#elb_zq_zg_0004__en-us_topic_0116649237_table01635270010>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 3** **rule** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | compare_type | No | String | Specifies the match mode. | - | | | | The options are as follows: | - | | | | | - | | | | When **type** is set to | - | | | | **HOST_NAME**, the value of | - | | | | this parameter can only be | - | | | | the following: | - | | | | | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - | | | | | - | | | | When **type** is set to | - | | | | **PATH**, the value of this | - | | | | parameter can be one of the | - | | | | following: | - | | | | | - | | | | - **REGEX**: indicates | - | | | | regular expression | - | | | | match. | - | | | | - **STARTS_WITH**: | - | | | | indicates prefix match. | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**. The default | - | | | | value is **false**. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | String | Specifies the key of the | - | | | | match content. The default | - | | | | value is **null**. | - | | | | | - | | | | This parameter is reserved. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | No | String | Specifies the value of the | - | | | | match content. The value | - | | | | cannot contain spaces. | - | | | | | - | | | | The value contains a | - | | | | maximum of 128 characters. | - | | | | | - | | | | - When **type** is set to | - | | | | **HOST_NAME**, the value | - | | | | can contain a maximum of | - | | | | 100 characters that | - | | | | contain only letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.), and must | - | | | | start with a letter or | - | | | | digit. | - | | | | - When **type** is set to | - | | | | **PATH**, the value can | - | | | | contain a maximum of 128 | - | | | | characters. When | - | | | | **compare_type** is set | - | | | | to **STARTS_WITH** or | - | | | | **EQUAL_TO**, the value | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | \_~';@^-%#&$.*+?,=!:\| | - | | | | \\/()[]{} | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | rule | Object | Specifies the forwarding rule. For details, see `Table | - | | | 5 <#elb_zq_zg_0004__en-us_topic_0116649237_table08840481403>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **rule** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding rule ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding rule is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding rule. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the match type of a | - | | | forwarding rule. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **HOST_NAME**: matches the domain | - | | | name in the request. | - | | | - **PATH**: matches the path in the | - | | | request. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | compare_type | String | Specifies the match mode. The options | - | | | are as follows: | - | | | | - | | | When **type** is set to | - | | | **HOST_NAME**, the value of this | - | | | parameter can only be the following: | - | | | | - | | | - **EQUAL_TO**: indicates exact | - | | | match. | - | | | | - | | | When **type** is set to **PATH**, the | - | | | value of this parameter can be one of | - | | | the following: | - | | | | - | | | - **REGEX**: indicates regular | - | | | expression match. | - | | | - **STARTS_WITH**: indicates prefix | - | | | match. | - | | | - **EQUAL_TO**: indicates exact | - | | | match. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | invert | Boolean | Specifies whether reverse matching is | - | | | supported. | - | | | | - | | | The value can be **true** or | - | | | **false**. The default value is | - | | | **false**. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | key | String | Specifies the key of the match | - | | | content. The default value is | - | | | **null**. | - | | | | - | | | This parameter is reserved. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | value | String | Specifies the value of the match | - | | | content. | - | | | | - | | | The value contains a maximum of 128 | - | | | characters. | - | | | | - | | | - When **type** is set to | - | | | **HOST_NAME**, the value can | - | | | contain a maximum of 100 | - | | | characters that contain only | - | | | letters, digits, hyphens (-), and | - | | | periods (.), and must start with a | - | | | letter or digit. | - | | | - When **type** is set to **PATH**, | - | | | the value can contain a maximum of | - | | | 128 characters. When | - | | | **compare_type** is set to | - | | | **STARTS_WITH** or **EQUAL_TO**, | - | | | the value must start with a slash | - | | | (/) and can contain only letters, | - | | | digits, and special characters | - | | | \_~';@^-%#&$.*+?,=!:\| \\/()[]{} | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding rule. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Updating a forwarding rule - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586/rules/c6f457b8-bf6f-45d7-be5c-a3226945b7b1 - - { - "rule": { - "compare_type": "STARTS_WITH", - "value": "/ccc.html" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "rule": { - "compare_type": "STARTS_WITH", - "provisioning_status": "ACTIVE", - "admin_state_up": true, - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - - "invert": false, - "value": "/ccc.html", - "key": null, - "type": "PATH", - "id": "c6f457b8-bf6f-45d7-be5c-a3226945b7b1" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/elb_zq_zg_0005.rst b/elb/api-ref/elb_zq_zg_0005.rst deleted file mode 100644 index d985d06d..00000000 --- a/elb/api-ref/elb_zq_zg_0005.rst +++ /dev/null @@ -1,54 +0,0 @@ -Deleting a Forwarding Rule -========================== - -Function -^^^^^^^^ - -This API is used to delete a specific forwarding rule. - -URI -^^^ - -DELETE /v2.0/lbaas/l7policies/{l7policy_id}/rules/{l7rule_id} - -.. table:: **Table 1** Parameter description - - =========== ========= ====== =================================== - Parameter Mandatory Type Description - =========== ========= ====== =================================== - l7policy_id Yes String Specifies the forwarding policy ID. - l7rule_id Yes String Specifies the forwarding rule ID. - =========== ========= ====== =================================== - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Deleting a forwarding rule - - .. code:: screen - - DELETE https://{Endpoint}/v2.0/lbaas/l7policies/5ae0e1e7-5f0f-47a1-b39f-5d4c428a1586/rules/c6f457b8-bf6f-45d7-be5c-a3226945b7b1 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - None - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Forwarding Rule `__ diff --git a/elb/api-ref/elb_zq_zs_0000.rst b/elb/api-ref/elb_zq_zs_0000.rst deleted file mode 100644 index c8e6bb6a..00000000 --- a/elb/api-ref/elb_zq_zs_0000.rst +++ /dev/null @@ -1,10 +0,0 @@ -Certificate -=========== - -- `Creating a Certificate `__ -- `Querying Certificates `__ -- `Querying Details of a Certificate `__ -- `Updating a Certificate `__ -- `Deleting a Certificate `__ - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/elb_zq_zs_0001.rst b/elb/api-ref/elb_zq_zs_0001.rst deleted file mode 100644 index 83dd3f8a..00000000 --- a/elb/api-ref/elb_zq_zs_0001.rst +++ /dev/null @@ -1,265 +0,0 @@ -Creating a Certificate -====================== - -Function -^^^^^^^^ - -This API is used to create a certificate. After a certificate is bound to a listener, the load balancer authenticates the client using this certificate, and backend servers can establish secure and reliable HTTP connections with the client. - -URI -^^^ - -POST /v2.0/lbaas/certificates - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the | - | | | | certificate is used. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **project_id** in the | - | | | | token. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the certificate. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the certificate | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | certificate. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | String | Specifies the certificate | - | | | | type. The default value is | - | | | | **server**. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **server**: indicates | - | | | | the server certificate. | - | | | | - **client**: indicates | - | | | | the CA certificate. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain | No | String | Specifies the domain name | - | | | | associated with the server | - | | | | certificate. The default | - | | | | value is **null**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 100 characters. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - A common domain name | - | | | | contains 0 to 100 | - | | | | characters and consists | - | | | | of several labels | - | | | | separated by dots (.). | - | | | | Each label can contain a | - | | | | maximum of 63 | - | | | | characters, including | - | | | | letters, digits, and | - | | | | hyphens (-), and must | - | | | | start and end with a | - | | | | letter or digit. | - | | | | - In addition to the | - | | | | requirements for common | - | | | | domain names, a wildcard | - | | | | domain name can start | - | | | | with an asterisk (*). | - | | | | | - | | | | NOTE: | - | | | | This parameter is valid | - | | | | only when **type** is set | - | | | | to **server**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | private_key | No | String | Specifies the private key | - | | | | of the server certificate. | - | | | | The value must be PEM | - | | | | encoded. | - | | | | | - | | | | - This parameter will be | - | | | | ignored if **type** is | - | | | | set to **client**. A CA | - | | | | server can still be | - | | | | created and used | - | | | | normally. This parameter | - | | | | will be left blank even | - | | | | if you enter a private | - | | | | key that is not PEM | - | | | | encoded. | - | | | | - This parameter is valid | - | | | | and mandatory only when | - | | | | **type** is set to | - | | | | **server**. If you enter | - | | | | an invalid private key, | - | | | | an error is returned. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificate | Yes | String | Specifies the public key of | - | | | | the server certificate or | - | | | | CA certificate used to | - | | | | authenticate the client. | - | | | | The value of parameter | - | | | | **type** determines whether | - | | | | a public key or CA | - | | | | certificate is required. | - | | | | | - | | | | The public key is in PEM | - | | | | format. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 2** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the certificate ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the certificate is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the certificate. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the certificate name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the certificate. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the certificate type. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **server**: indicates the server | - | | | certificate. | - | | | - **client**: indicates the CA | - | | | certificate. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain | String | Specifies the domain name associated | - | | | with the server certificate. | - | | | | - | | | The value contains a maximum of 100 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | private_key | String | Specifies the private key of the | - | | | server certificate in PEM format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate | String | Specifies the public key of the | - | | | server certificate or CA certificate | - | | | used to authenticate the client. The | - | | | value of parameter **type** | - | | | determines whether a public key or CA | - | | | certificate is required. Both types | - | | | of certificates are in PEM format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expire_time | String | Specifies the time when the | - | | | certificate expires. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the | - | | | certificate was created. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | update_time | String | Specifies the time when the | - | | | certificate was updated. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Creating a certificate - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/certificates - - { - "name": "https_certificate", - "description": "description for certificate", - "type": "server", - "domain": "www.elb.com", - "private_key": - "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "certificate": - "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----" - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "domain": "www.elb.com", - "expire_time": "2045-11-17 13:25:47", - "update_time": "2017-12-04 06:49:13", - "create_time": "2017-12-04 06:49:13", - "id": "3d8a7a02f87a40ed931b719edfe75451", - "admin_state_up": true, - "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "tenant_id": "930600df07ac4f66964004041bd3deaf", - "type": "server", - "certificate": "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----", - "name": "https_certificate", - "description": "description for certificate" - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/elb_zq_zs_0002.rst b/elb/api-ref/elb_zq_zs_0002.rst deleted file mode 100644 index 71882131..00000000 --- a/elb/api-ref/elb_zq_zs_0002.rst +++ /dev/null @@ -1,480 +0,0 @@ -Querying Certificates -===================== - -Function -^^^^^^^^ - -This API is used to query all the certificates. Filter query and pagination query are supported. Unless otherwise specified, exact match is applied. - -Constraints -^^^^^^^^^^^ - -Parameters **marker**, **limit**, and **page_reverse** are used for pagination query. Parameters **marker** and **page_reverse** take effect only when they are used together with parameter **limit**. - -URI -^^^ - -GET /v2.0/lbaas/certificates - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | certificate from which | - | | | | pagination query starts, | - | | | | that is, the ID of the last | - | | | | certificate on the previous | - | | | | page. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | certificates on each page. | - | | | | If this parameter is not | - | | | | set, all certificates are | - | | | | queried by default. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the certificate | - | | | | ID. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the certificate | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | certificate. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | No | String | Specifies the certificate | - | | | | type. The default value is | - | | | | **server**. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **server**: indicates | - | | | | the server certificate. | - | | | | - **client**: indicates | - | | | | the CA certificate. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain | No | String | Specifies the domain name | - | | | | associated with the server | - | | | | certificate. The default | - | | | | value is **null**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 100 characters. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - A common domain name | - | | | | contains 0 to 100 | - | | | | characters and consists | - | | | | of several labels | - | | | | separated by dots (.). | - | | | | Each label can contain a | - | | | | maximum of 63 | - | | | | characters, including | - | | | | letters, digits, and | - | | | | hyphens (-), and must | - | | | | start and end with a | - | | | | letter or digit. | - | | | | - In addition to the | - | | | | requirements for common | - | | | | domain names, a wildcard | - | | | | domain name can start | - | | | | with an asterisk (*). | - | | | | - This parameter is valid | - | | | | only when **type** is | - | | | | set to **server**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | private_key | No | String | Specifies the private key | - | | | | of the server certificate. | - | | | | The value must be PEM | - | | | | encoded. | - | | | | | - | | | | - This parameter will be | - | | | | ignored if **type** is | - | | | | set to **client**. A CA | - | | | | server can still be | - | | | | created and used | - | | | | normally. This parameter | - | | | | will be left blank even | - | | | | if you enter a private | - | | | | key that is not PEM | - | | | | encoded. | - | | | | - This parameter is valid | - | | | | and mandatory only when | - | | | | **type** is set to | - | | | | **server**. If you enter | - | | | | an invalid private key, | - | | | | an error is returned. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificate | No | String | Specifies the public key of | - | | | | the server certificate or | - | | | | CA certificate used to | - | | | | authenticate the client. | - | | | | The value of parameter | - | | | | **type** determines whether | - | | | | a public key or CA | - | | | | certificate is required. | - | | | | Both types of certificates | - | | | | are in PEM format. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | create_time | No | String | Specifies the time when the | - | | | | certificate was created. | - | | | | | - | | | | The UTC time is in | - | | | | *YYYY-MM-DD HH:MM:SS* | - | | | | format. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | update_time | No | String | Specifies the time when the | - | | | | certificate was updated. | - | | | | | - | | | | The UTC time is in | - | | | | *YYYY-MM-DD HH:MM:SS* | - | | | | format. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 2** Parameter description - - +--------------+---------+-------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +==============+=========+===========================================================================================+ - | certificates | Array | Lists the certificates. For details, see `Table | - | | | 3 <#elb_zq_zs_0002__en-us_topic_0096561582_table10415837566>`__. | - +--------------+---------+-------------------------------------------------------------------------------------------+ - | instance_num | Integer | Specifies the number of certificates. | - +--------------+---------+-------------------------------------------------------------------------------------------+ - -.. table:: **Table 3** **certificates** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the certificate ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the certificate is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the certificate. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the certificate name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the certificate. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the certificate type. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **server**: indicates the server | - | | | certificate. | - | | | - **client**: indicates the CA | - | | | certificate. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain | String | Specifies the domain name associated | - | | | with the server certificate. | - | | | | - | | | The value contains a maximum of 100 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | private_key | String | Specifies the private key of the | - | | | server certificate in PEM format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate | String | Specifies the public key of the | - | | | server certificate or CA certificate | - | | | used to authenticate the client. The | - | | | value of parameter **type** | - | | | determines whether a public key or CA | - | | | certificate is required. Both types | - | | | of certificates are in PEM format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expire_time | String | Specifies the time when the | - | | | certificate expires. | - | | | | - | | | The UTC time is in *YYYY-MM-DD | - | | | HH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the | - | | | certificate was created. | - | | | | - | | | The UTC time is in *YYYY-MM-DD | - | | | HH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | update_time | String | Specifies the time when the | - | | | certificate was updated. | - | | | | - | | | The UTC time is in *YYYY-MM-DD | - | | | HH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Request example 1: Querying all certificates - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/certificates - -- Example 2: Querying a certificate whose ID is ef4d341365754a959556576501791b19 or ed40e8ea9957488ea82de025e35b74c0 - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/certificates?id=ef4d341365754a959556576501791b19&id=ed40e8ea9957488ea82de025e35b74c0 - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "certificates": [ - { - "certificate": "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----", - "create_time": "2017-02-25 09:35:27", - "expire_time": "2045-11-17 13:25:47", - "description": "description for certificate", - "domain": "www.elb.com", - "id": "23ef9aad4ecb463580476d324a6c71af", - "admin_state_up": true, - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - "name": "https_certificate", - "private_key": - "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M\n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe\ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM\nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt\nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl\nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k\nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl\nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB\nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr\nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M\nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale\nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT\nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx\nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt\nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr\niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ\nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU\nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB\n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd\nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak\n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha\nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf\n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o\njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk\nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd\n3fy+1rCUwzOp9LSjtJYf4ege\n-----END PRIVATE KEY-----", - "type": "server", - "update_time": "2017-02-25 09:35:27" - } - ], - "instance_num": 1 - } - -- Example response 2 - - .. code:: screen - - { - "certificates": [ - { - "description": "Push by SSL Certificate Manager", - "domain": null, - "id": "ed40e8ea9957488ea82de025e35b74c0", - "name": "certForSonar9", - "certificate": "-----BEGIN CERTIFICATE----- - MIIFizCCBHOgAwIBAgIQBlQycV3bWsVsCttvv5rgRjANBgkqhkiG9w0BAQsFADBu - MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 - d3cuZGlnaWNlcnQuY29tMS0wKwYDVQQDEyRFbmNyeXB0aW9uIEV2ZXJ5d2hlcmUg - RFYgVExTIENBIC0gRzEwHhcNMTgwNzEwMDAwMDAwWhcNMTkwNzEwMTIwMDAwWjAU - MRIwEAYDVQQDEwlpY2UxMjMudGswggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK - AoIBAQCtTDlQMoAvyInR6X1dihhNwbdGesbMW6NZX7ffpj9XrB3KCqqlxzI4VmH9 - PntvrpLJNeolgLqDZZc4zKbUkmqxY1dvGDs41coKzdtc9Ig23GVK48wfesnk5r50 - afyU52R1JlSHDOhiDhHOSyhrOzc2GreLrByWKFUaAue6rTnyMbzQaSPtrTAqsURZ - wcmJ6R3A6JwokOgxXBSu41ufPQiFkMgxygKxEBLzIJLjRqCXQHYoxbsTyolb6jwp - w4H6vcRIEcFAgs98ApWRoEKjy7eOP3UUm05F+OkOvXhrlxEqIPm/rlwE0PmVlmm9 - DgBafYb3xT/MtT2VRSfCJQHgIcsdAgMBAAGjggJ9MIICeTAfBgNVHSMEGDAWgBRV - dE+yck/1YLpQ0dfmUVyaAYca1zAdBgNVHQ4EFgQUEFavzYXBNbIHBchbaKcUKad+ - qCEwIwYDVR0RBBwwGoIJaWNlMTIzLnRrgg13d3cuaWNlMTIzLnRrMA4GA1UdDwEB - /wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwTAYDVR0gBEUw - QzA3BglghkgBhv1sAQIwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cuZGlnaWNl - cnQuY29tL0NQUzAIBgZngQwBAgEwgYEGCCsGAQUFBwEBBHUwczAlBggrBgEFBQcw - AYYZaHR0cDovL29jc3AyLmRpZ2ljZXJ0LmNvbTBKBggrBgEFBQcwAoY+aHR0cDov - L2NhY2VydHMuZGlnaWNlcnQuY29tL0VuY3J5cHRpb25FdmVyeXdoZXJlRFZUTFND - QS1HMS5jcnQwCQYDVR0TBAIwADCCAQQGCisGAQQB1nkCBAIEgfUEgfIA8AB2AKS5 - CZC0GFgUh7sTosxncAo8NZgE+RvfuON3zQ7IDdwQAAABZIOnLCIAAAQDAEcwRQIh - AJX6gCXNggPdfOFdDtZPzlYr64TTrR/+b9QKKhyJ2EjBAiAWgu3BG2QK9tWQXpUN - IFadc0nvqmDovabg5nmRMan2mQB2AId1v+dZfPiMQ5lfvfNu/1aNR1Y2/0q1YMG0 - 6v9eoIMPAAABZIOnLQEAAAQDAEcwRQIhAJVRe/7n88dD6KdhNrd4LdFjGARQNmta - Y/K2dFDOXPSfAiBOLrWW8unHOL25RWHJU7Ost3XkNhQYtrLDJrnzo/9kZzANBgkq - hkiG9w0BAQsFAAOCAQEAeqtX9cHmj4OnNAk0IGmF3nKS/u/UgGsY4EJfXwQY2bTZ - PCkqxQOA6HEx59vJ+UilTojrNDi0WskRm/8SKBHtmRwzwX3ile8KiR6fFfQhPUtV - XHZcTfAFo47c7axqon8vumMlEv1PxVImivQ446K7z3kGm34dhMYxS4Gz2gTl8IKt - 90OegejuhbAs5Wlvp1BK8HlYIb5+mw+cgkUC9KTALs5qVbWzogb0bS20KaYarGcu - otcZAOMeJdBFWnpzhr1fxmjaNY4u4hrgPZSTU/iBjdHapoza3zAFfxysmGYqs9dR - jFyxZeR4scz8GqSTFviNdH9jvtDJkdAC5hfMaB811Q== - -----END CERTIFICATE----- - -----BEGIN CERTIFICATE----- - MIIEqjCCA5KgAwIBAgIQAnmsRYvBskWr+YBTzSybsTANBgkqhkiG9w0BAQsFADBh - MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 - d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD - QTAeFw0xNzExMjcxMjQ2MTBaFw0yNzExMjcxMjQ2MTBaMG4xCzAJBgNVBAYTAlVT - MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j - b20xLTArBgNVBAMTJEVuY3J5cHRpb24gRXZlcnl3aGVyZSBEViBUTFMgQ0EgLSBH - MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALPeP6wkab41dyQh6mKc - oHqt3jRIxW5MDvf9QyiOR7VfFwK656es0UFiIb74N9pRntzF1UgYzDGu3ppZVMdo - lbxhm6dWS9OK/lFehKNT0OYI9aqk6F+U7cA6jxSC+iDBPXwdF4rs3KRyp3aQn6pj - pp1yr7IB6Y4zv72Ee/PlZ/6rK6InC6WpK0nPVOYR7n9iDuPe1E4IxUMBH/T33+3h - yuH3dvfgiWUOUkjdpMbyxX+XNle5uEIiyBsi4IvbcTCh8ruifCIi5mDXkZrnMT8n - wfYCV6v6kDdXkbgGRLKsR4pucbJtbKqIkUGxuZI2t7pfewKRc5nWecvDBZf3+p1M - pA8CAwEAAaOCAU8wggFLMB0GA1UdDgQWBBRVdE+yck/1YLpQ0dfmUVyaAYca1zAf - BgNVHSMEGDAWgBQD3lA1VtFMu2bwo+IbG8OXsj3RVTAOBgNVHQ8BAf8EBAMCAYYw - HQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMBIGA1UdEwEB/wQIMAYBAf8C - AQAwNAYIKwYBBQUHAQEEKDAmMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdp - Y2VydC5jb20wQgYDVR0fBDswOTA3oDWgM4YxaHR0cDovL2NybDMuZGlnaWNlcnQu - Y29tL0RpZ2lDZXJ0R2xvYmFsUm9vdENBLmNybDBMBgNVHSAERTBDMDcGCWCGSAGG - /WwBAjAqMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy5kaWdpY2VydC5jb20vQ1BT - MAgGBmeBDAECATANBgkqhkiG9w0BAQsFAAOCAQEAK3Gp6/aGq7aBZsxf/oQ+TD/B - SwW3AU4ETK+GQf2kFzYZkby5SFrHdPomunx2HBzViUchGoofGgg7gHW0W3MlQAXW - M0r5LUvStcr82QDWYNPaUy4taCQmyaJ+VB+6wxHstSigOlSNF2a6vg4rgexixeiV - 4YSB03Yqp2t3TeZHM9ESfkus74nQyW7pRGezj+TC44xCagCQQOzzNmzEAP2SnCrJ - sNE2DpRVMnL8J6xBRdjmOsC3N6cQuKuRXbzByVBjCqAA8t1L0I+9wXJerLPyErjy - rMKWaBFLmfK/AHNF4ZihwPGOc7w6UHczBZXH5RFzJNnww+WnKuTPI0HfnVH8lg== - -----END CERTIFICATE-----", - "type": "server", - "create_time": "2019-03-03 16:32:30", - "private_key": "-----BEGIN RSA PRIVATE KEY----- - MIIEpQIBAAKCAQEArUw5UDKAL8iJ0el9XYoYTcG3RnrGzFujWV+336Y/V6wdygqq - pccyOFZh/T57b66SyTXqJYC6g2WXOMym1JJqsWNXbxg7ONXKCs3bXPSINtxlSuPM - H3rJ5Oa+dGn8lOdkdSZUhwzoYg4Rzksoazs3Nhq3i6wclihVGgLnuq058jG80Gkj - 7a0wKrFEWcHJiekdwOicKJDoMVwUruNbnz0IhZDIMcoCsRAS8yCS40agl0B2KMW7 - E8qJW+o8KcOB+r3ESBHBQILPfAKVkaBCo8u3jj91FJtORfjpDr14a5cRKiD5v65c - BND5lZZpvQ4AWn2G98U/zLU9lUUnwiUB4CHLHQIDAQABAoIBAGs5rISompP2OwA8 - virwVRVXdPUQ5oxvbuTPys+A59RxVIU8kFW+qJ4fJMYysOFrXLtOtq+5tK20YBru - 1ZLVfVqAowrELXB/J2ID+WTMkLORLsNlq1kW+nC9LL6PDY98lLW/n7FoFSkGl5HT - AxFGNGUvpr2vIojuL6nGfmcM47uscJ9aP6IJxr4p70dhPVjZBdnMnXYwRkB3dZt/ - E0B/p8J5i3oo5Rucv4DOfB+01wXGAVyx5/zce+NZdhyrivkj3hHV55SxGhVWzWhj - a3dAlbpKwYgfILj0inRdJYmIjBdbGb2HFix7+ncBg8B2oerJXC6/fANwRGu5/LZU - 5xuPVWkCgYEA6an8TY1unIGLYL5aBJ16Tx4usqMyTXr/T4zkQyftRPMt+ZuxVQHl - GHsg7XvLFNd04MBZXtkZXaYVcpOm7OUYcl0i9ZAkWXXoXcBtn1Oom3gz/7RjAUnp - k+myvxCUSQ2JSz4u3QBtyPVyYNyBFXrKqdKfcYyG85+yQVHBNMVrdvMCgYEAvd0C - hFpm83ha+VQp+9XN1DYZNUyqhibj/E3X9jAn+gDbzlKxw/D9en2RIlQYUrl8+il8 - QKk4cfOxJYStQfxptz8QBPVeLajDN67zJ0Rk8AB50HHHcNSU8uFkaO8KxsyVjbLS - +JltqfJAEraXLinbp1Fxcg9DsQdMd6cw2DmrWa8CgYEA1UjJOUzo80i4HYWDC4Vn - OEK3o22do+WqmEVlsfsG9BH5HEdGVe7V3EO/6aY+1/ZXBDPvH8mRAs9v8lbeXow7 - hWCIYZfB5jre8HyOU4l8dPUCmdxhJrL913rRIuASSqBlet32ztnuXCnWzp1X4nBj - /yF3UqFQKZ7SihcDAZVWo4sCgYEAj7al/BcNzIcynX2mldhdh583b4/Ll+YCNm2Z - 5eDHscZKmx8fLcjRpZE8dXagPqXmwtj6E1vDvQWP9m06VDNCthFHB+nO0tLmidSk - evmbScuiaTRmmbJf2IThY0hlqNsc7PgKF2DTkIstEr0hLDFE8Z6FN6f0PiDfMcbd - Ax6L5EMCgYEA0+qhuQftKQkGdbXX9r3H8N0TVh27ByfL3kKVYy0dUJMvsOAq6d97 - 8mEhYhrYt88f1sFsPM7G09XpCcBXwiKxw8+CDt9auD4r1snBnILpqMPmanF4UDXH - L7s+4it+nIQy24P6g1PihtzsM+HD2UCErBiYUJdRK8Q9GGHdZojFk9Y= - -----END RSA PRIVATE KEY----- - ", - "update_time": "2019-03-03 16:32:30", - "admin_state_up": true, - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - "expire_time": "2019-07-10 12:00:00" - }, - { - "description": null, - "domain": "www.elb.com", - "id": "ef4d341365754a959556576501791b19", - "name": "certificate_28b824c8bbee419992fb7974b2911c72", - "certificate": "-----BEGIN CERTIFICATE----- - MIIDpTCCAo2gAwIBAgIJAKdmmOBYnFvoMA0GCSqGSIb3DQEBCwUAMGkxCzAJBgNV - BAYTAnh4MQswCQYDVQQIDAJ4eDELMAkGA1UEBwwCeHgxCzAJBgNVBAoMAnh4MQsw - CQYDVQQLDAJ4eDELMAkGA1UEAwwCeHgxGTAXBgkqhkiG9w0BCQEWCnh4QDE2My5j - b20wHhcNMTcxMjA0MDM0MjQ5WhcNMjAxMjAzMDM0MjQ5WjBpMQswCQYDVQQGEwJ4 - eDELMAkGA1UECAwCeHgxCzAJBgNVBAcMAnh4MQswCQYDVQQKDAJ4eDELMAkGA1UE - CwwCeHgxCzAJBgNVBAMMAnh4MRkwFwYJKoZIhvcNAQkBFgp4eEAxNjMuY29tMIIB - IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwZ5UJULAjWr7p6FVwGRQRjFN - 2s8tZ/6LC3X82fajpVsYqF1xqEuUDndDXVD09E4u83MS6HO6a3bIVQDp6/klnYld - iE6Vp8HH5BSKaCWKVg8lGWg1UM9wZFnlryi14KgmpIFmcu9nA8yV/6MZAe6RSDmb - 3iyNBmiZ8aZhGw2pI1YwR+15MVqFFGB+7ExkziROi7L8CFCyCezK2/oOOvQsH1dz - Q8z1JXWdg8/9Zx7Ktvgwu5PQM3cJtSHX6iBPOkMU8Z8TugLlTqQXKZOEgwajwvQ5 - mf2DPkVgM08XAgaLJcLigwD513koAdtJd5v+9irw+5LAuO3JclqwTvwy7u/YwwID - AQABo1AwTjAdBgNVHQ4EFgQUo5A2tIu+bcUfvGTD7wmEkhXKFjcwHwYDVR0jBBgw - FoAUo5A2tIu+bcUfvGTD7wmEkhXKFjcwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0B - AQsFAAOCAQEAWJ2rS6Mvlqk3GfEpboezx2J3X7l1z8Sxoqg6ntwB+rezvK3mc9H0 - 83qcVeUcoH+0A0lSHyFN4FvRQL6X1hEheHarYwJK4agb231vb5erasuGO463eYEG - r4SfTuOm7SyiV2xxbaBKrXJtpBp4WLL/s+LF+nklKjaOxkmxUX0sM4CTA7uFJypY - c8Tdr8lDDNqoUtMD8BrUCJi+7lmMXRcC3Qi3oZJW76ja+kZA5mKVFPd1ATih8TbA - i34R7EQDtFeiSvBdeKRsPp8c0KT8H1B4lXNkkCQs2WX5p4lm99+ZtLD4glw8x6Ic - i1YhgnQbn5E0hz55OLu5jvOkKQjPCW+8Kg== - -----END CERTIFICATE-----", - "type": "server", - "create_time": "2018-09-28 03:00:47", - "private_key": "-----BEGIN RSA PRIVATE KEY----- - MIIEowIBAAKCAQEAwZ5UJULAjWr7p6FVwGRQRjFN2s8tZ/6LC3X82fajpVsYqF1x - qEuUDndDXVD09E4u83MS6HO6a3bIVQDp6/klnYldiE6Vp8HH5BSKaCWKVg8lGWg1 - UM9wZFnlryi14KgmpIFmcu9nA8yV/6MZAe6RSDmb3iyNBmiZ8aZhGw2pI1YwR+15 - MVqFFGB+7ExkziROi7L8CFCyCezK2/oOOvQsH1dzQ8z1JXWdg8/9Zx7Ktvgwu5PQ - M3cJtSHX6iBPOkMU8Z8TugLlTqQXKZOEgwajwvQ5mf2DPkVgM08XAgaLJcLigwD5 - 13koAdtJd5v+9irw+5LAuO3JclqwTvwy7u/YwwIDAQABAoIBACU9S5fjD9/jTMXA - DRs08A+gGgZUxLn0xk+NAPX3LyB1tfdkCaFB8BccLzO6h3KZuwQOBPv6jkdvEDbx - Nwyw3eA/9GJsIvKiHc0rejdvyPymaw9I8MA7NbXHaJrY7KpqDQyk6sx+aUTcy5jg - iMXLWdwXYHhJ/1HVOo603oZyiS6HZeYU089NDUcX+1SJi3e5Ke0gPVXEqCq1O11/ - rh24bMxnwZo4PKBWdcMBN5Zf/4ij9vrZE+fFzW7vGBO48A5lvZxWU2U5t/OZQRtN - 1uLOHmMFa0FIF2aWbTVfwdUWAFsvAOkHj9VV8BXOUwKOUuEktdkfAlvrxmsFrO/H - yDeYYPkCgYEA/S55CBbR0sMXpSZ56uRn8JHApZJhgkgvYr+FqDlJq/e92nAzf01P - RoEBUajwrnf1ycevN/SDfbtWzq2XJGqhWdJmtpO16b7KBsC6BdRcH6dnOYh31jgA - vABMIP3wzI4zSVTyxRE8LDuboytF1mSCeV5tHYPQTZNwrplDnLQhywcCgYEAw8Yc - Uk/eiFr3hfH/ZohMfV5p82Qp7DNIGRzw8YtVG/3+vNXrAXW1VhugNhQY6L+zLtJC - aKn84ooup0m3YCg0hvINqJuvzfsuzQgtjTXyaE0cEwsjUusOmiuj09vVx/3U7siK - Hdjd2ICPCvQ6Q8tdi8jV320gMs05AtaBkZdsiWUCgYEAtLw4Kk4f+xTKDFsrLUNf - 75wcqhWVBiwBp7yQ7UX4EYsJPKZcHMRTk0EEcAbpyaJZE3I44vjp5ReXIHNLMfPs - uvI34J4Rfot0LN3n7cFrAi2+wpNo+MOBwrNzpRmijGP2uKKrq4JiMjFbKV/6utGF - Up7VxfwS904JYpqGaZctiIECgYA1A6nZtF0riY6ry/uAdXpZHL8ONNqRZtWoT0kD - 79otSVu5ISiRbaGcXsDExC52oKrSDAgFtbqQUiEOFg09UcXfoR6HwRkba2CiDwve - yHQLQI5Qrdxz8Mk0gIrNrSM4FAmcW9vi9z4kCbQyoC5C+4gqeUlJRpDIkQBWP2Y4 - 2ct/bQKBgHv8qCsQTZphOxc31BJPa2xVhuv18cEU3XLUrVfUZ/1f43JhLp7gynS2 - ep++LKUi9D0VGXY8bqvfJjbECoCeu85vl8NpCXwe/LoVoIn+7KaVIZMwqoGMfgNl - nEqm7HWkNxHhf8A6En/IjleuddS1sf9e/x+TJN1Xhnt9W6pe7Fk1 - -----END RSA PRIVATE KEY-----", - "update_time": "2018-09-28 03:00:47", - "admin_state_up": true, - "tenant_id": "601240b9c5c94059b63d484c92cfe308", - "expire_time": "2020-12-03 03:42:49" - } - ], - "instance_num": 2 - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/elb_zq_zs_0003.rst b/elb/api-ref/elb_zq_zs_0003.rst deleted file mode 100644 index a8c919ba..00000000 --- a/elb/api-ref/elb_zq_zs_0003.rst +++ /dev/null @@ -1,191 +0,0 @@ -Querying Details of a Certificate -================================= - -Function -^^^^^^^^ - -This API is used to query details about a certificate. - -URI -^^^ - -GET /v2.0/lbaas/certificates/{certificate_id} - -.. table:: **Table 1** Parameter description - - ============== ========= ====== ============================= - Parameter Mandatory Type Description - ============== ========= ====== ============================= - certificate_id Yes String Specifies the certificate ID. - ============== ========= ====== ============================= - -Request -^^^^^^^ - -None - -Response -^^^^^^^^ - -.. table:: **Table 2** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the certificate ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the certificate is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the certificate. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the certificate name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the certificate. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the certificate type. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **server**: indicates the server | - | | | certificate. | - | | | - **client**: indicates the CA | - | | | certificate. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain | String | Specifies the domain name associated | - | | | with the server certificate. | - | | | | - | | | The value contains a maximum of 100 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | private_key | String | Specifies the private key of the | - | | | server certificate in PEM format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate | String | Specifies the public key of the | - | | | server certificate or CA certificate | - | | | used to authenticate the client. The | - | | | value of parameter **type** | - | | | determines whether a public key or CA | - | | | certificate is required. Both types | - | | | of certificates are in PEM format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expire_time | String | Specifies the time when the | - | | | certificate expires. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the | - | | | certificate was created. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | update_time | String | Specifies the time when the | - | | | certificate was updated. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Querying details of a certificate - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/certificates/23ef9aad4ecb463580476d324a6c71af - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "certificate": - "-----BEGIN CERTIFICATE----- - \nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD - \nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG - \nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA - \n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5 - \nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9 - \n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS - \nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K - \ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy - \nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t - \nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA - \nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn - \njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa - \nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ - \nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI - \n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ - \niYsGDVN+9QBd0eYUHce+77s96i3I - \n-----END CERTIFICATE-----", - "create_time": "2017-02-25 09:35:27", - "expire_time": "2045-11-17 13:25:47", - "description": "description for certificate", - "domain": "www.elb.com", - "id": "23ef9aad4ecb463580476d324a6c71af", - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - "admin_state_up": true, - "name": "https_certificate", - "private_key": - "-----BEGIN PRIVATE KEY----- - \nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M - \n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe - \ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM - \nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt - \nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl - \nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k - \nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl - \nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB - \nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr - \nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M - \nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale - \nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT - \nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx - \nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt - \nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr - \niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ - \nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU - \nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB - \n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd - \nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak - \n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha - \nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf - \n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o - \njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk - \nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd - \n3fy+1rCUwzOp9LSjtJYf4ege - \n-----END PRIVATE KEY-----", - "type": "server", - "update_time": "2017-02-25 09:35:27" - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/elb_zq_zs_0004.rst b/elb/api-ref/elb_zq_zs_0004.rst deleted file mode 100644 index 68a9eaac..00000000 --- a/elb/api-ref/elb_zq_zs_0004.rst +++ /dev/null @@ -1,319 +0,0 @@ -Updating a Certificate -====================== - -Function -^^^^^^^^ - -This API is used to update a certificate. - -URI -^^^ - -PUT /v2.0/lbaas/certificates/{certificate_id} - -.. table:: **Table 1** Parameter description - - ============== ========= ====== ============================= - Parameter Mandatory Type Description - ============== ========= ====== ============================= - certificate_id Yes String Specifies the certificate ID. - ============== ========= ====== ============================= - -Request -^^^^^^^ - -.. table:: **Table 2** Parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the certificate. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the certificate | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | certificate. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | domain | No | String | Specifies the domain name | - | | | | associated with the server | - | | | | certificate. The default | - | | | | value is **null**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 100 characters. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - A common domain name | - | | | | contains 0 to 100 | - | | | | characters and consists | - | | | | of several labels | - | | | | separated by dots (.). | - | | | | Each label can contain a | - | | | | maximum of 63 | - | | | | characters, including | - | | | | letters, digits, and | - | | | | hyphens (-), and must | - | | | | start and end with a | - | | | | letter or digit. | - | | | | - In addition to the | - | | | | requirements for common | - | | | | domain names, a wildcard | - | | | | domain name can start | - | | | | with an asterisk (*). | - | | | | | - | | | | NOTE: | - | | | | This parameter is valid | - | | | | only when **type** is set | - | | | | to **server**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | private_key | No | String | Specifies the private key | - | | | | of the server certificate. | - | | | | The value must be PEM | - | | | | encoded. | - | | | | | - | | | | - This parameter will be | - | | | | ignored if **type** is | - | | | | set to **client**. A CA | - | | | | server can still be | - | | | | created and used | - | | | | normally. This parameter | - | | | | will be left blank even | - | | | | if you enter a private | - | | | | key that is not PEM | - | | | | encoded. | - | | | | - This parameter is valid | - | | | | and mandatory only when | - | | | | **type** is set to | - | | | | **server**. If you enter | - | | | | an invalid private key, | - | | | | an error is returned. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | certificate | No | String | Specifies the public key of | - | | | | the server certificate or | - | | | | CA certificate used to | - | | | | authenticate the client. | - | | | | The value of parameter | - | | | | **type** determines whether | - | | | | a public key or CA | - | | | | certificate is required. | - | | | | | - | | | | The public key is in PEM | - | | | | format. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 3** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the certificate ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the certificate is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the certificate. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the certificate name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the certificate. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the certificate type. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **server**: indicates the server | - | | | certificate. | - | | | - **client**: indicates the CA | - | | | certificate. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | domain | String | Specifies the domain name associated | - | | | with the server certificate. | - | | | | - | | | The value contains a maximum of 100 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | private_key | String | Specifies the private key of the | - | | | server certificate in PEM format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | certificate | String | Specifies the public key of the | - | | | server certificate or CA certificate | - | | | used to authenticate the client. The | - | | | value of parameter **type** | - | | | determines whether a public key or CA | - | | | certificate is required. Both types | - | | | of certificates are in PEM format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | expire_time | String | Specifies the time when the | - | | | certificate expires. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the | - | | | certificate was created. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | update_time | String | Specifies the time when the | - | | | certificate was updated. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Updating a certificate - - .. code:: screen - - PUT https://{Endpoint}/v2.0/lbaas/certificates/23ef9aad4ecb463580476d324a6c71af - - { - "certificate": - "-----BEGIN CERTIFICATE----- - \nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD - \nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG - \nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA - \n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5 - \nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9 - \n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS - \nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K - \ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy - \nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t - \nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA - \nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn - \njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa - \nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ - \nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI - \n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ - \niYsGDVN+9QBd0eYUHce+77s96i3I - \n-----END CERTIFICATE-----", - "description": "description for certificate", - "domain": "www.elb.com", - "name": "https_certificate", - "private_key": - "-----BEGIN PRIVATE KEY----- - \nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M - \n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe - \ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM - \nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt - \nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl - \nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k - \nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl - \nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB - \nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr - \nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M - \nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale - \nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT - \nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx - \nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt - \nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr - \niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ - \nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU - \nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB - \n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd - \nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak - \n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha - \nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf - \n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o - \njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk - \nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd - \n3fy+1rCUwzOp9LSjtJYf4ege - \n-----END PRIVATE KEY-----" - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response - - .. code:: screen - - { - "certificate": "-----BEGIN CERTIFICATE-----\nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD\nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG\nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA\n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5\nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9\n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS\nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K\ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy\nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t\nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqGSIb3DQEBCwUA\nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn\njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa\nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ\nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI\n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ\niYsGDVN+9QBd0eYUHce+77s96i3I\n-----END CERTIFICATE-----", - "expire_time": "2045-11-17 13:25:47", - "create_time": "2017-02-25 09:35:27", - "description": "description for certificate", - "domain": "www.elb.com", - "id": "23ef9aad4ecb463580476d324a6c71af", - "admin_state_up": true, - "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", - "name": "https_certificate", - "private_key": "-----BEGIN PRIVATE KEY----- - \nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M - \n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe - \ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM - \nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt - \nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl - \nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k - \nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl - \nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB - \nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr - \nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M - \nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale - \nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT - \nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx - \nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt - \nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr - \niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ - \nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU - \nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB - \n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd - \nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak - \n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha - \nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf - \n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o - \njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk - \nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd - \n3fy+1rCUwzOp9LSjtJYf4ege - \n-----END PRIVATE KEY-----", - "type": "server", - "update_time": "2017-02-25 09:38:27" - } - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/elb_zq_zs_0005.rst b/elb/api-ref/elb_zq_zs_0005.rst deleted file mode 100644 index 4a988afe..00000000 --- a/elb/api-ref/elb_zq_zs_0005.rst +++ /dev/null @@ -1,62 +0,0 @@ -Deleting a Certificate -====================== - -Function -^^^^^^^^ - -This API is used to delete a specific certificate. - -Constraints -^^^^^^^^^^^ - -If the target certificate is used by a listener, the certificate cannot be deleted, and 409 code will be displayed. - -URI -^^^ - -DELETE /v2.0/lbaas/certificates/{certificate_id} - -.. table:: **Table 1** Parameter description - - ============== ========= ====== ============================= - Parameter Mandatory Type Description - ============== ========= ====== ============================= - certificate_id Yes String Specifies the certificate ID. - ============== ========= ====== ============================= - -Request -^^^^^^^ - -- Request parameters - - None - -Response -^^^^^^^^ - -- Response parameters - - None - -Example Request -^^^^^^^^^^^^^^^ - -- Example request: Deleting a certificate - - .. code:: screen - - DELETE https://{Endpoint}/v2.0/lbaas/certificates/23ef9aad4ecb463580476d324a6c71af - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - None - -Status Code -^^^^^^^^^^^ - -For details, see `Status Codes `__. - -**Parent topic:** `Certificate `__ diff --git a/elb/api-ref/en-us_topic_0000001088310753.rst b/elb/api-ref/en-us_topic_0000001088310753.rst deleted file mode 100644 index ef37eb76..00000000 --- a/elb/api-ref/en-us_topic_0000001088310753.rst +++ /dev/null @@ -1,6 +0,0 @@ -API Call Precaution -=================== - -By default, load balancers created in the **eu-nl** region are dedicated load balancers. APIs for dedicated load balancers are only available in this region. Shared load balancers and dedicated load balancers are called elastic load balancers collectively. - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/en-us_topic_0000001088335195.rst b/elb/api-ref/en-us_topic_0000001088335195.rst deleted file mode 100644 index b9a577b6..00000000 --- a/elb/api-ref/en-us_topic_0000001088335195.rst +++ /dev/null @@ -1,6 +0,0 @@ -API Call Precaution -=================== - -By default, load balancers created in the **eu-de** region are shared load balancers. APIs for shared load balancers are only available in this region. Shared load balancers and dedicated load balancers are called elastic load balancers collectively. - -**Parent topic:** `Shared Load Balancer APIs `__ diff --git a/elb/api-ref/en-us_topic_0000001124568811.rst b/elb/api-ref/en-us_topic_0000001124568811.rst deleted file mode 100644 index d568b92a..00000000 --- a/elb/api-ref/en-us_topic_0000001124568811.rst +++ /dev/null @@ -1,6 +0,0 @@ -API Call Precaution -=================== - -Classic load balancers are not supported in the **eu-nl** region. - -**Parent topic:** `Classic Load Balancer APIs `__ diff --git a/elb/api-ref/en-us_topic_0000001127879251.rst b/elb/api-ref/en-us_topic_0000001127879251.rst deleted file mode 100644 index 82cb1ddf..00000000 --- a/elb/api-ref/en-us_topic_0000001127879251.rst +++ /dev/null @@ -1,157 +0,0 @@ -Creating a Dedicated Load Balancer and Binding a New EIP to It -============================================================== - -Scenarios -^^^^^^^^^ - -Call APIs to create a dedicated load balancer and bind a new EIP to it. - -Prerequisites -^^^^^^^^^^^^^ - -You have created a VPC and a subnet. - -Procedure -^^^^^^^^^ - -#. Query the subnet you have created. - - a. Send **GET https://**\ *{vpc_endpoint}*\ **/v1/**\ *{project_id}*\ **/subnets**. *project_id* indicates the project ID. - b. Add **X-Auth-Token** to the request header. - c. Check the response. - - - The request is successful if the following response is displayed: - - .. code:: screen - - { - "subnets": [ - { - "id": "0535759e-8104-49d9-902c-a05185a94bdf", // Subnet ID - "name": "subnet-001", // Subnet name - "description": "", - "cidr": "172.16.66.0/24", //IPv4 address range - "dnsList": [ - "100.125.4.6" - ], - "status": "ACTIVE", - "vpc_id": "44789a9f-3e80-451a-ac03-0818f99b6cdd", // VPC ID - "ipv6_enable": true, - "gateway_ip_v6": "2001:db8:a583:37c::1", - "cidr_v6": "2001:db8:a583:37c::/64", - "gateway_ip": "172.16.66.1", - "dhcp_enable": true, - "primary_dns": "100.125.4.6", - "availability_zone": "eu-de-01", //AZ of the subnet - "neutron_network_id": "0535759e-8104-49d9-902c-a05185a94bdf", // Network ID - "neutron_subnet_id": "1492f0ba-cfce-4e2c-86f7-561d757dfeee", // IPv4 subnet ID - "neutron_subnet_id_v6": "3c052475-b50b-49b9-abb1-558bad45e592", - "extra_dhcp_opts": [ - { - "opt_value": "8760h", - "opt_name": "addresstime" - } - ] - } - ] - } - - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -#. Create a dedicated load balancer and bind a new EIP to it. - - a. Send **POST https://**\ *{elb_endpoint}*\ **/v3/**\ *{project_id}*\ **/elb/loadbalancers**. *project_id* indicates the project ID. - - b. Add **X-Auth-Token** to the request header. - - c. Ensure that the following parameters, including **publicip**, are passed in the request body: - - .. code:: screen - - { - "loadbalancer": { - "vpc_id": "e5a892ff-3c33-44ef-ada5-b713eb1f7a8b", - "availability_zone_list": [ - "br-iaas-odin1a" - ], - "admin_state_up": true, - "vip_subnet_cidr_id": "1800b6b8-a69f-4719-813d-24d62aaf32bd", - "name": "elb-ipv4", - "publicip": { - "network_type": "5_bgp", - "bandwidth": { - "size": 2, - "share_type": "PER", - "charge_mode": "bandwidth", - "name": "elb_eip_bandwidth" - } - } - } - } - - d. Check the response. - - - The request is successful if the following response is displayed: - - .. code:: screen - - { - "request_id": "21177eb184c52c5a4540c78dc7fdaee4", - "loadbalancer": { - "id": "a2556f92-3310-4173-a6d1-0b2d0bb68478", - "project_id": "060576782980d5762f9ec014dd2f1148", - "name": "elb-ipv4", - "description": "", - "vip_port_id": "fff961a9-4514-4469-84d4-a2bc4fbdfbeb", - "vip_address": "192.168.0.162", - "admin_state_up": true, - "provisioning_status": "ACTIVE", - "operating_status": "ONLINE", - "listeners": [], - "pools": [], - "tags": [], - "provider": "vlb", - "created_at": "2021-02-23T08:50:19Z", - "updated_at": "2021-02-23T08:50:19Z", - "vpc_id": "e5a892ff-3c33-44ef-ada5-b713eb1f7a8b", - "enterprise_project_id": "0", - "availability_zone_list": [ - "br-iaas-odin1a" - ], - "ipv6_vip_address": null, - "ipv6_vip_virsubnet_id": null, - "ipv6_vip_port_id": null, - "ipv6_bandwidth": null, - "publicips": [ - { - "publicip_id": "12cba100-764e-476c-bf3f-8aba98782cf5", - "publicip_address": "10.246.173.188", - "ip_version": 4 - } - ], - "elb_virsubnet_ids": [ - "4df3e391-5ebf-4300-b614-cf5a4e793666" - ], - "elb_virsubnet_type": "dualstack", - "ip_target_enable": false, - "frozen_scene": null, - "eips": [ - { - "eip_id": "12cba100-764e-476c-bf3f-8aba98782cf5", - "eip_address": "10.246.173.188", - "ip_version": 4 - } - ], - "guaranteed": true, - "billing_info": null, - "l4_flavor_id": null, - "l4_scale_flavor_id": null, - "l7_flavor_id": null, - "l7_scale_flavor_id": null, - "vip_subnet_cidr_id": "1800b6b8-a69f-4719-813d-24d62aaf32bd" - } - } - - - If the request is abnormal, locate the fault by referring to `HTTP Status Codes for Dedicated Load Balancers `__. - -**Parent topic:** `Examples `__ diff --git a/elb/api-ref/en-us_topic_0022480177.rst b/elb/api-ref/en-us_topic_0022480177.rst deleted file mode 100644 index 934e3b2d..00000000 --- a/elb/api-ref/en-us_topic_0022480177.rst +++ /dev/null @@ -1,8 +0,0 @@ -API Usage Guidelines -==================== - -Public cloud APIs comply with the RESTful API design principles. REST-based web services are organized into resources. Each resource is identified by one or more Uniform Resource Identifiers (URIs). An application accesses a resource based on the resource's Unified Resource Locator (URL). A URL is usually in the following format: *https://Endpoint/uri*. In the URL, **uri** indicates the resource path, that is, the API access path. - -Public cloud APIs use HTTPS as the transmission protocol. Requests and responses are transmitted using JSON messages, with media type represented by **Application/json**. - -For details about how to use APIs, see `API Usage Guidelines `__. diff --git a/elb/api-ref/en-us_topic_0096561504.rst b/elb/api-ref/en-us_topic_0096561504.rst deleted file mode 100644 index c024227e..00000000 --- a/elb/api-ref/en-us_topic_0096561504.rst +++ /dev/null @@ -1,147 +0,0 @@ -Querying Load Balancers -======================= - -Function -^^^^^^^^ - -This API is used to query load balancers and display them in a list. - -URI -^^^ - -GET /v1.0/{project_id}/elbaas/loadbalancers - -.. table:: **Table 1** Parameter description - - ========== ========= ====== ========================= - Parameter Mandatory Type Description - ========== ========= ====== ========================= - project_id Yes String Specifies the project ID. - ========== ========= ====== ========================= - -Request -^^^^^^^ - -- Request parameters - - None - -- Example request - - None - -Response -^^^^^^^^ - -- Response parameters - - .. table:: **Table 2** Parameter description - - ============= ====== ======================================= - Parameter Type Description - ============= ====== ======================================= - loadbalancers Array Lists the load balancers. - instance_num String Specifies the number of load balancers. - ============= ====== ======================================= - - .. table:: **Table 3** **loadbalancers** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | vip_address | String | Specifies the private IP address of | - | | | the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | update_time | String | Specifies the time when the listener | - | | | was updated. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | create_time | String | Specifies the time when the listener | - | | | was created. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | status | String | - Specifies the load balancer | - | | | status. | - | | | - The value can be **ACTIVE**, | - | | | **PENDING_CREATE**, or **ERROR**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | bandwidth | Integer | Specifies the bandwidth. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vpc_id | String | Specifies the VPC ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Integer | - Specifies the administrative | - | | | status of the load balancer. | - | | | | - | | | - The value options are as follows: | - | | | | - | | | **0**: The load balancer is | - | | | disabled. | - | | | | - | | | **1**: The load balancer is | - | | | running properly. | - | | | | - | | | **2**: The load balancer is | - | | | frozen. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_id | String | This parameter is unavailable now. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | type | String | Specifies the network type of the | - | | | load balancer. The value is | - | | | **External**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the load balancer name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Description | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | security_group_id | String | - Specifies the security group ID. | - | | | - **null** is displayed for this | - | | | parameter when **type** is set to | - | | | **External**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -- Example response - - .. code:: screen - - { - "loadbalancers": [ - { - "vip_address": "192.144.62.114", - "update_time": "2015-09-14 02:34:32", - "create_time": "2015-09-14 02:34:32", - "id": "0b07acf06d243925bc24a0ac7445267a", - "status": "ACTIVE", - "bandwidth": 1, - "security_group_id": null, - "vpc_id": "f54a3ffd-7a55-4568-9e3d-f0ff2d46a107", - "admin_state_up": 1, - "vip_subnet_id": null, - "type": "External", - "name": "MY_ELB", - "description": null - } - ], - "instance_num": "1" - } - -Status Codes -^^^^^^^^^^^^ - -- Normal - - 200 - -- Abnormal - - =========== ================== ======================================================== - Status Code Message Description - =========== ================== ======================================================== - 400 badRequest Request error. - 401 unauthorized Authentication failed. - 403 userDisabled You do not have the permission to perform the operation. - 404 Not Found The requested page does not exist. - 500 authFault Internal error. - 503 serviceUnavailable Service unavailable. - =========== ================== ======================================================== - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/en-us_topic_0096561535.rst b/elb/api-ref/en-us_topic_0096561535.rst deleted file mode 100644 index aeaea648..00000000 --- a/elb/api-ref/en-us_topic_0096561535.rst +++ /dev/null @@ -1,557 +0,0 @@ -Creating a Load Balancer -======================== - -Function -^^^^^^^^ - -This API is used to create a private network load balancer. After the load balancer is created, its details, such as load balancer ID, IP address, and subnet ID, are returned. - -To create a public network load balancer, you also need to call the API for assigning an EIP and associate this IP address to the port bound to the IP address of the private network load balancer. - -URI -^^^ - -POST /v2.0/lbaas/loadbalancers - -Request -^^^^^^^ - -.. table:: **Table 1** Request parameters - - +--------------+-----------+--------+-------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +==============+===========+========+===============================================================================+ - | loadbalancer | Yes | Object | Specifies the load balancer. For details, see `Table | - | | | | 2 <#en-us_topic_0096 | - | | | | 561535__en-us_topic_0141008273_en-us_topic_0096561535_table1673416344910>`__. | - +--------------+-----------+--------+-------------------------------------------------------------------------------+ - -.. table:: **Table 2** **loadbalancer** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | No | String | Specifies the load balancer | - | | | | name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the load | - | | | | balancer. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the load | - | | | | balancer is used. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **project_id** in the | - | | | | token. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_subnet_id | Yes | String | Specifies the ID of the | - | | | | subnet where the load | - | | | | balancer works. You can | - | | | | obtain the value by calling | - | | | | the API for querying | - | | | | subnets {VPC | - | | | | endpoint}/v2.0/subnets} | - | | | | using the GET method. | - | | | | | - | | | | The private IP address of | - | | | | the load balancer is in | - | | | | this subnet. | - | | | | | - | | | | Only IPv4 subnets are | - | | | | supported. IPv6 subnets are | - | | | | not supported. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | provider | No | String | Specifies the provider of | - | | | | the load balancer. | - | | | | | - | | | | The value can only be | - | | | | **vlb**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | vip_address | No | String | Specifies the private IP | - | | | | address of the load | - | | | | balancer. | - | | | | | - | | | | This IP address must be the | - | | | | one in the subnet specified | - | | | | by **vip_subnet_id**. If | - | | | | this parameter is not | - | | | | specified, an IP address is | - | | | | automatically assigned to | - | | | | the load balancer from the | - | | | | subnet specified by | - | | | | **vip_subnet_id**. | - | | | | | - | | | | The value contains a | - | | | | maximum of 64 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the load balancer. | - | | | | | - | | | | This parameter is reserved. | - | | | | The default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 3** Response parameters - - +--------------+--------+--------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +==============+========+============================================================================================+ - | loadbalancer | Object | Specifies the load balancer. For details, see `Table | - | | | 4 <#en- | - | | | us_topic_0096561535__en-us_topic_0141008273_en-us_topic_0096561535_table1857116262516>`__. | - +--------------+--------+--------------------------------------------------------------------------------------------+ - -.. table:: **Table 4** **loadbalancer** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the load balancer is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the load balancer name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the load balancer. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_id | String | Specifies the ID of the subnet where | - | | | the load balancer works. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_port_id | String | Specifies the ID of the port bound to | - | | | the private IP address of the load | - | | | balancer. | - | | | | - | | | When you create a load balancer, the | - | | | system automatically creates a port | - | | | and associates it with a security | - | | | group. However, the security group | - | | | will not take effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provider | String | Specifies the provider of the load | - | | | balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_address | String | Specifies the private IP address of | - | | | the load balancer. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array | Lists the IDs of listeners added to | - | | | the load balancer. For details, see | - | | | `Table | - | | | 5 <#en-us_topic_0096561535__en-us_to | - | | | pic_0141008273_table107875111574>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Lists the IDs of backend server | - | | | groups associated with the load | - | | | balancer. For details, see `Table | - | | | 6 <#en-us_topic_0096561535__en-us_top | - | | | ic_0141008273_table1566642411246>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | This parameter is reserved, and its | - | | | value can only be **ONLINE**. | - | | | | - | | | It specifies the operating status of | - | | | the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the load balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the load balancer. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array | Lists load balancer tags. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the load | - | | | balancer was created. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the load | - | | | balancer was updated. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 5** **listeners** parameter description - - ========= ====== ============================================ - Parameter Type Description - ========= ====== ============================================ - id String Specifies the ID of the associated listener. - ========= ====== ============================================ - -.. table:: **Table 6** **pools** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Creating a private network load balancer - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/loadbalancers - - { - "loadbalancer": { - "name": "loadbalancer1", - "description": "simple lb", - "tenant_id": "1867112d054b427e808cc6096d8193a1", - "vip_subnet_id": "58077bdb-d470-424b-8c45-2e3c65060a5b", - "vip_address": "192.168.0.100", - "admin_state_up": true - } - } - -- Example request 2 - - (Bind an EIP to the port that has been bound to the load balancer's private IP address. For details about the parameters, see `Table 7 <#en-us_topic_0096561535__en-us_topic_0141008273_table88881449047>`__.) - - .. table:: **Table 7** Request parameter - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | publicip | Yes | Object | Specifies the EIP. For | - | | | | details, see `Table | - | | | | 8 <#en-us_topic_00 | - | | | | 96561535__en-us_topic_01410 | - | | | | 08273_table16889549343>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | bandwidth | Yes | Object | Specifies the bandwidth. | - | | | | For details, see `Table | - | | | | 9 <#en-us_topic_00 | - | | | | 96561535__en-us_topic_01410 | - | | | | 08273_table14891249945>`__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | enterprise_project_id | No | String | - Specifies the enterprise | - | | | | project ID. The value is | - | | | | **0** or a string that | - | | | | contains a maximum of 36 | - | | | | characters in UUID | - | | | | format with hyphens (-). | - | | | | - When assigning an EIP, | - | | | | you need to bind an | - | | | | enterprise project ID to | - | | | | the EIP. | - | | | | - If this parameter is not | - | | | | specified, the default | - | | | | value is **0**. | - | | | | | - | | | | NOTE: | - | | | | For more information about | - | | | | enterprise projects and how | - | | | | to obtain enterprise | - | | | | project IDs, see the | - | | | | *Enterprise Management User | - | | | | Guide*. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - - .. table:: **Table 8** **publicip** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | type | Yes | String | - Specifies the EIP type. | - | | | | - Constraints: | - | | | | | - | | | | - The configured value | - | | | | must be supported by | - | | | | the system. | - | | | | - **publicip_id** is an | - | | | | IPv4 port. If | - | | | | **publicip_type** is | - | | | | not specified, the | - | | | | default value is | - | | | | **5_bgp**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ip_version | No | Integer | - Specifies the EIP | - | | | | version. | - | | | | - The value can be **4** | - | | | | and **6**. **4** | - | | | | indicates an IPv4 | - | | | | address, and **6** | - | | | | indicates an IPv6 | - | | | | address. | - | | | | - Constraints: | - | | | | | - | | | | - The configured value | - | | | | must be supported by | - | | | | the system. | - | | | | - If this parameter is | - | | | | left blank or is an | - | | | | empty string, an IPv4 | - | | | | address is assigned | - | | | | by default. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | ip_address | No | String | - Specifies the EIP to be | - | | | | assigned. The system | - | | | | automatically assigns an | - | | | | EIP if you do not | - | | | | specify it. | - | | | | - The value must be a | - | | | | valid IPv4 address in | - | | | | the available IP address | - | | | | range. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - - .. table:: **Table 9** **bandwidth** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | name | Yes | String | - Specifies the bandwidth | - | | | | name. | - | | | | - The value is a string of | - | | | | 1 to 64 characters that | - | | | | can contain letters, | - | | | | digits, underscores (_), | - | | | | hyphens (-), and periods | - | | | | (.). | - | | | | - This parameter is | - | | | | mandatory when | - | | | | **share_type** is set to | - | | | | **PER**. This parameter | - | | | | will be ignored when | - | | | | **share_type** is set to | - | | | | **WHOLE** with an ID | - | | | | specified. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | size | Yes | Integer | - Specifies the bandwidth | - | | | | (Mbit/s). | - | | | | - The value ranges from | - | | | | **1** to **1000** by | - | | | | default. (The range may | - | | | | vary depending on the | - | | | | configuration in each | - | | | | region. You can see the | - | | | | bandwidth range of each | - | | | | region on the management | - | | | | console.) | - | | | | - This parameter is | - | | | | mandatory when | - | | | | **share_type** is set to | - | | | | **PER**. This parameter | - | | | | will be ignored when | - | | | | **share_type** is set to | - | | | | **WHOLE** with an ID | - | | | | specified. | - | | | | - The minimum increment | - | | | | for bandwidth adjustment | - | | | | varies depending on the | - | | | | bandwidth range. The | - | | | | details are as follows: | - | | | | | - | | | | - The minimum increment | - | | | | is 1 Mbit/s if the | - | | | | allowed bandwidth | - | | | | ranges from 0 Mbit/s | - | | | | to 300 Mbit/s (with | - | | | | 300 Mbit/s included). | - | | | | - The minimum increment | - | | | | is 50 Mbit/s if the | - | | | | allowed bandwidth | - | | | | ranges from 300 | - | | | | Mbit/s to 1000 | - | | | | Mbit/s. | - | | | | - The minimum increment | - | | | | is 500 Mbit/s if the | - | | | | allowed bandwidth is | - | | | | greater than 1000 | - | | | | Mbit/s. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | - Specifies the bandwidth | - | | | | ID. You can specify an | - | | | | existing shared | - | | | | bandwidth when assigning | - | | | | an EIP. | - | | | | - The value can be the ID | - | | | | of the shared bandwidth | - | | | | whose type is set to | - | | | | **WHOLE**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | share_type | Yes | String | - Specifies the bandwidth | - | | | | type. | - | | | | - The value is **PER**, | - | | | | indicating that the | - | | | | bandwidth is dedicated. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | charge_mode | No | String | - If the value is | - | | | | **traffic**, the | - | | | | bandwidth is billed by | - | | | | traffic. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - - - Step 1: Apply for an EIP. - - .. code:: screen - - POST https://{VPCEndpoint}/v1/8b7e35ad379141fc9df3e178bd64f55c/publicips - - { - "publicip": { - "type": "5_bgp", - "ip_version": 4 - }, - "bandwidth": { - "name": "bandwidth123", - "size": 10, - "share_type": "PER" - } - } - - - Example response - - .. code:: screen - - { - "publicip": { - "id": "f588ccfa-8750-4d7c-bf5d-2ede24414706", - "status": "PENDING_CREATE", - "type": "5_bgp", - "public_ip_address": "139.9.204.183", - "tenant_id": "8b7e35ad379141fc9df3e178bd64f55c", - "ip_version": 4, - "create_time": "2019-06-29 06:45:32", - "bandwidth_size": 1 - - } - } - - - Step 2: Bind the EIP. (The value of **public_id** is the same as that in the `â–ª Example response <#en-us_topic_0096561535__en-us_topic_0141008273_li4893134914410>`__, and the value of **port_id** is the same as that of **vip_port_id** in `Example response 1 <#en-us_topic_0096561535__en-us_topic_0141008273_li4893134914410>`__.) - - .. code:: screen - - PUT /v1/8b7e35ad379141fc9df3e178bd64f55c/publicips/f588ccfa-8750-4d7c-bf5d-2ede24414706 - - { - "publicip": { - "port_id": "a7ecbdb5-5a63-41dd-a830-e16c0a7e04a7" - } - } - - - Example response - - .. code:: screen - - { - "publicip": { - "id": "f588ccfa-8750-4d7c-bf5d-2ede24414706", - "status": "ACTIVE", - "type": "5_bgp", - "port_id": "a7ecbdb5-5a63-41dd-a830-e16c0a7e04a7", - "public_ip_address": "139.9.204.183", - "private_ip_address": "192.168.1.131", - "tenant_id": "8b7e35ad379141fc9df3e178bd64f55c", - "create_time": "2019-06-29 07:33:18", - "bandwidth_size": 1, - "ip_version": 4 - } - } - - - After the preceding steps are complete, the load balancer has the capability of accessing the public network. You can access the load balancer using 139.9.204.183, the value of parameter **public_ip_address**. - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "loadbalancer": { - "description": "simple lb", - "provisioning_status": "ACTIVE", - "tenant_id": "1867112d054b427e808cc6096d8193a1", - "created_at": "2019-01-19T05:32:56", - "admin_state_up": true, - "updated_at": "2019-01-19T05:32:57", - "id": "ea2843da-4026-49ec-8338-8fa015b067fc", - "pools": [], - "listeners": [], - "vip_port_id": "a7ecbdb5-5a63-41dd-a830-e16c0a7e04a7", - "operating_status": "ONLINE", - "vip_address": "192.168.0.100", - "vip_subnet_id": "58077bdb-d470-424b-8c45-2e3c65060a5b", - "provider": "vlb", - "tags": [], - "name": "loadbalancer1" - } - } - -- Example response 2 - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/loadbalancers - - { - "loadbalancer": { - "name": "loadbalancer1", - "description": "simple lb", - "tenant_id": "1867112d054b427e808cc6096d8193a1", - "vip_subnet_id": "58077bdb-d470-424b-8c45-2e3c65060a5b", - "vip_address": "192.168.0.100", - "admin_state_up": true - } - } - -After the preceding steps are complete, the load balancer has the capability of accessing the public network. You can access the load balancer using 139.9.204.183, the value of parameter **public_ip_address**. - -Status Codes -^^^^^^^^^^^^ - -See `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/en-us_topic_0096561547.rst b/elb/api-ref/en-us_topic_0096561547.rst deleted file mode 100644 index 7dc0a3c5..00000000 --- a/elb/api-ref/en-us_topic_0096561547.rst +++ /dev/null @@ -1,408 +0,0 @@ -Querying Backend Server Groups -============================== - -Request -^^^^^^^ - -.. table:: **Table 1** Request parameters - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | marker | No | String | Specifies the ID of the | - | | | | backend server group from | - | | | | which pagination query | - | | | | starts, that is, the ID of | - | | | | the last backend server | - | | | | group on the previous page. | - | | | | If this parameter is not | - | | | | specified, the first page | - | | | | will be queried. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | limit | No | Integer | Specifies the number of | - | | | | backend server groups on | - | | | | each page. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | page_reverse | No | Boolean | Specifies the page | - | | | | direction. The value can be | - | | | | **true** or **false**, and | - | | | | the default value is | - | | | | **false**. The last page in | - | | | | the list requested with | - | | | | **page_reverse** set to | - | | | | **false** will not contain | - | | | | the "next" link, and the | - | | | | last page in the list | - | | | | requested with | - | | | | **page_reverse** set to | - | | | | **true** will not contain | - | | | | the "previous" link. | - | | | | | - | | | | This parameter must be used | - | | | | together with **limit**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | id | No | String | Specifies the ID of the | - | | | | backend server group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the backend | - | | | | server group is used. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the backend | - | | | | server group name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | backend server group. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | healthmonitor_id | No | String | Specifies the ID of the | - | | | | health check configured for | - | | | | the backend server group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | loadbalancer_id | No | String | Specifies the ID of the | - | | | | load balancer associated | - | | | | with the backend server | - | | | | group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | protocol | No | String | Specifies the protocol that | - | | | | the backend server group | - | | | | uses to receive requests. | - | | | | | - | | | | TCP, UDP, and HTTP are | - | | | | supported. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | lb_algorithm | No | String | Specifies the load | - | | | | balancing algorithm of the | - | | | | backend server group. | - | | | | | - | | | | The value options are as | - | | | | follows: | - | | | | | - | | | | - **ROUND_ROBIN**: | - | | | | indicates the weighted | - | | | | round robin algorithm. | - | | | | - **LEAST_CONNECTIONS**: | - | | | | indicates the weighted | - | | | | least connections | - | | | | algorithm. | - | | | | - **SOURCE_IP**: indicates | - | | | | the source IP hash | - | | | | algorithm. | - | | | | | - | | | | When the value is | - | | | | **SOURCE_IP**, the weights | - | | | | of backend servers in the | - | | | | server group are invalid. | - | | | | For details about parameter | - | | | | **weight**, see `Table | - | | | | 2 `__. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_address | No | String | Lists the IDs of backend | - | | | | servers in the backend | - | | | | server group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | member_device_id | No | String | Specifies the ID of the ECS | - | | | | corresponding to the | - | | | | backend server in the | - | | | | backend server group. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 2** Parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | pools | Array | Lists the backend server groups. For | - | | | details, see `Table | - | | | 3 <#en-us_to | - | | | pic_0096561547__table92302230217>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools_links | List | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - | | | | - | | | This parameter exists only in the | - | | | response body of pagination query. | - | | | For details, see `Table | - | | | 8 <#en-us_topic | - | | | _0096561547__table18892135113610>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 3** **pools** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the ID of the backend | - | | | server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the backend server group is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the backend server group | - | | | name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the backend server group. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | protocol | String | Specifies the protocol that the | - | | | backend server group uses to receive | - | | | requests. | - | | | | - | | | TCP, UDP, and HTTP are supported. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | lb_algorithm | String | Specifies the load balancing | - | | | algorithm of the backend server | - | | | group. | - | | | | - | | | The value options are as follows: | - | | | | - | | | - **ROUND_ROBIN**: indicates the | - | | | weighted round robin algorithm. | - | | | - **LEAST_CONNECTIONS**: indicates | - | | | the weighted least connections | - | | | algorithm. | - | | | - **SOURCE_IP**: indicates the | - | | | source IP hash algorithm. | - | | | | - | | | When the value is **SOURCE_IP**, the | - | | | weights of backend servers in the | - | | | server group are invalid. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | members | Array | Lists the IDs of backend servers in | - | | | the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | healthmonitor_id | String | Specifies the ID of the health check | - | | | configured for the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the backend server group. | - | | | | - | | | This parameter is reserved. The | - | | | default value is **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array | Lists the IDs of listeners associated | - | | | with the backend server group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | loadbalancers | String | Lists the IDs of load balancers | - | | | associated with the backend server | - | | | group. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | session_persistence | Object | Specifies whether to enable the | - | | | sticky session feature. For details, | - | | | see `Table | - | | | 7 <#en-us_top | - | | | ic_0096561547__table576515134510>`__. | - | | | | - | | | Once the sticky session feature is | - | | | enabled, requests from the same | - | | | client are sent to the same backend | - | | | server within the specified period. | - | | | | - | | | When this feature is disabled, the | - | | | parameter value is **null**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 4** **members** parameter description - - ========= ====== ================================================== - Parameter Type Description - ========= ====== ================================================== - id String Specifies the ID of the associated backend server. - ========= ====== ================================================== - -.. table:: **Table 5** **listeners** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -.. table:: **Table 6** **loadbalancers** parameter description - - ========= ====== ================================================= - Parameter Type Description - ========= ====== ================================================= - id String Specifies the ID of the associated load balancer. - ========= ====== ================================================= - -.. table:: **Table 7** **session_persistence** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | type | String | Specifies the sticky session type. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **SOURCE_IP**: Requests are | - | | | distributed based on the client's | - | | | IP address. Requests from the same | - | | | IP address are sent to the same | - | | | backend server. | - | | | - **HTTP_COOKIE**: When the client | - | | | sends a request for the first | - | | | time, the load balancer | - | | | automatically generates a cookie | - | | | and inserts the cookie into the | - | | | response message. Subsequent | - | | | requests are sent to the backend | - | | | server that processes the first | - | | | request. | - | | | - **APP_COOKIE**: When the client | - | | | sends a request for the first | - | | | time, the backend server that | - | | | receives the request generates a | - | | | cookie and inserts the cookie into | - | | | the response message. Subsequent | - | | | requests are sent to this backend | - | | | server. | - | | | | - | | | When the protocol of the backend | - | | | server group is TCP, only | - | | | **SOURCE_IP** takes effect. When the | - | | | protocol of the backend server group | - | | | is HTTP, only **HTTP_COOKIE** or | - | | | **APP_COOKIE** takes effect. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | cookie_name | String | Specifies the cookie name. | - | | | | - | | | This parameter is mandatory when the | - | | | sticky session type is | - | | | **APP_COOKIE**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | persistence_timeout | Integer | Specifies the sticky session timeout | - | | | duration in minutes. | - | | | | - | | | This parameter is invalid when | - | | | **type** is set to **APP_COOKIE**. | - | | | | - | | | - Optional value ranges are as | - | | | follows: | - | | | | - | | | - When the protocol of the | - | | | backend server group is TCP or | - | | | UDP, the value ranges from | - | | | **1** to **60**. | - | | | - When the protocol of the | - | | | backend server group is HTTP or | - | | | HTTPS, the value ranges from | - | | | **1** to **1440**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 8** **pools_links** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | href | String | Provides links to the previous or | - | | | next page during pagination query, | - | | | respectively. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rel | String | Specifies the prompt of the previous | - | | | or next page. The value can be | - | | | **next** or **previous**. | - | | | | - | | | - **next**: indicates the URL of the | - | | | next page. | - | | | - **previous**: indicates the URL of | - | | | the previous page. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Adding a backend server group with the sticky session feature disabled - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/pools - - { - "pool": { - "lb_algorithm":"ROUND_ROBIN", - "loadbalancer_id": "63ad9dfe-4750-479f-9630-ada43ccc8117", - "protocol":"HTTP" - } - } - -- Example request 2: Querying backend server groups whose load balancing algorithm is **SOURCE_IP** - - .. code:: screen - - GET https://{Endpoint}/v2.0/lbaas/pools - -- Example response 2 - - .. code:: screen - - { - "pools": [ - { - "lb_algorithm": "SOURCE_IP", - "protocol": "TCP", - "description": "", - "admin_state_up": true, - "loadbalancers": [ - { - "id": "07d28d4a-4899-40a3-a939-5d09d69019e1" - } - ], - "tenant_id": "1867112d054b427e808cc6096d8193a1", - "session_persistence": null, - "healthmonitor_id": null, - "listeners": [ - { - "id": "1b421c2d-7e78-4a78-9ee4-c8ccba41f15b" - } - ], - "members": [ - { - "id": "88f9c079-29cb-435a-b98f-0c5c0b90c2bd" - }, - { - "id": "2f4c9644-d5d2-4cf8-a3c0-944239a4f58c" - } - ], - "id": "3a9f50bb-f041-4eac-a117-82472d8a0007", - "name": "my-pool" - } - ] - } - -Status Codes -^^^^^^^^^^^^ - -See `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Backend Server Group `__ diff --git a/elb/api-ref/en-us_topic_0141008271.rst b/elb/api-ref/en-us_topic_0141008271.rst deleted file mode 100644 index 6ce69b22..00000000 --- a/elb/api-ref/en-us_topic_0141008271.rst +++ /dev/null @@ -1,142 +0,0 @@ -Querying Details of a Load Balancer -=================================== - -Response -^^^^^^^^ - -.. table:: **Table 1** Parameter description - - +--------------+--------+--------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +==============+========+============================================================================================+ - | loadbalancer | Object | Specifies the load balancer. For details, see `Table | - | | | 2 <#en-us_topic_0141008271__en-us_topic_0096561532_table1943718352380>`__. | - +--------------+--------+--------------------------------------------------------------------------------------------+ - -.. table:: **Table 2** **loadbalancer** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the load balancer ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the load balancer is used. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the load balancer name. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the load balancer. | - | | | | - | | | The value contains a maximum of 255 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_subnet_id | String | Specifies the ID of the subnet where | - | | | the load balancer works. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_port_id | String | Specifies the ID of the port bound to | - | | | the private IP address of the load | - | | | balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provider | String | Specifies the provider of the load | - | | | balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | vip_address | String | Specifies the private IP address of | - | | | the load balancer. | - | | | | - | | | The value contains a maximum of 64 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listeners | Array | Lists the IDs of listeners added to | - | | | the load balancer. For details, see | - | | | `Table | - | | | 3 <#en-us_top | - | | | ic_0141008271__table107875111574>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | pools | Array | Lists the IDs of backend server | - | | | groups associated with the load | - | | | balancer. For details, see `Table | - | | | 4 <#en-us_topi | - | | | c_0141008271__table1566642411246>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | operating_status | String | Specifies the operating status of the | - | | | load balancer. | - | | | | - | | | The value can be **ONLINE**, | - | | | **OFFLINE**, **DEGRADED**, | - | | | **DISABLED**, or **NO_MONITOR**. | - | | | | - | | | This parameter is reserved. The | - | | | default value is **ONLINE**. | - | | | | - | | | The value contains a maximum of 16 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | Specifies the provisioning status of | - | | | the load balancer. | - | | | | - | | | The value can be **ACTIVE**, | - | | | **PENDING_CREATE**, or **ERROR**. | - | | | | - | | | This parameter is reserved. The | - | | | default value is **ACTIVE**. | - | | | | - | | | The value contains a maximum of 16 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the load balancer. | - | | | | - | | | This parameter is reserved. The | - | | | default value is **true**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tags | Array | Lists the tags added to the load | - | | | balancer. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | created_at | String | Specifies the time when the load | - | | | balancer was created. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | updated_at | String | Specifies the time when the load | - | | | balancer was updated. | - | | | | - | | | The UTC time is in | - | | | *YYYY-MM-DDTHH:MM:SS* format. | - | | | | - | | | The value contains a maximum of 19 | - | | | characters. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 3** **listeners** parameter description - - ========= ====== ============================================ - Parameter Type Description - ========= ====== ============================================ - id String Specifies the ID of the associated listener. - ========= ====== ============================================ - -.. table:: **Table 4** **pools** parameter description - - ========= ====== ======================================================== - Parameter Type Description - ========= ====== ======================================================== - id String Specifies the ID of the associated backend server group. - ========= ====== ======================================================== - -Status Codes -^^^^^^^^^^^^ - -See `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Load Balancer `__ diff --git a/elb/api-ref/errorcode.rst b/elb/api-ref/errorcode.rst deleted file mode 100644 index 23b5fcc9..00000000 --- a/elb/api-ref/errorcode.rst +++ /dev/null @@ -1,132 +0,0 @@ -HTTP Status Codes for Dedicated Load Balancers -============================================== - -The following code descriptions are only suitable for dedicated load balancers. - -=========== ========== ======================================== -Status Code Type Description -=========== ========== ======================================== -200 OK Normal response to GET and PUT requests. -201 Created Normal response to POST requests. -204 No Content Normal response to DELETE requests. -=========== ========== ======================================== - -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| Module | Status Code | Type | Error Code | Possible Cause | -+=======================+=======================+=======================+=======================+=======================+ -| Public | 400 | Bad request | ELB.8902 | Malformed request URI | -| | | | | or body. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | Invalid **admin | -| | | | | \_state_up** value. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | Invalid parameters. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | Batch operations are | -| | | | | not allowed. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | Failed to verify the | -| | | | | parameters. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | Incorrect request | -| | | | | method, for example, | -| | | | | updating attributes | -| | | | | that can be specified | -| | | | | during creation only. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The network is not | -| | | | | external (the value | -| | | | | of | -| | | | | **router:external** | -| | | | | is set to **false**). | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The IaaS OpenStack | -| | | | | network port has no | -| | | | | floating IP address | -| | | | | bound. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The requested | -| | | | | floating IP address | -| | | | | is not in the IP | -| | | | | address range of the | -| | | | | external network. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | Invalid fixed IP | -| | | | | address. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The router port does | -| | | | | not have a fixed IP | -| | | | | address. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The subnet for the | -| | | | | router interface must | -| | | | | have a gateway IP | -| | | | | address. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | 401 | Unauthorized | SYS.0401 | Authentication | -| | | | | required. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | 403 | Forbidden | ELB.8903 | The URI does not | -| | | | | exist. | -| | | | | | -| | | | | The resource cannot | -| | | | | be found. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | SYS.0403 | Authentication | -| | | | | required. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | 404 | Not Found | ELB.8904 | The URI does not | -| | | | | exist. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The resource cannot | -| | | | | be found. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The port UUID is not | -| | | | | valid. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | 409 | Conflict | ELB.8907 | The port is already | -| | | | | in use. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The IP address is | -| | | | | already in use. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The IP address pool | -| | | | | cannot contain | -| | | | | gateway and broadcast | -| | | | | addresses. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The requested | -| | | | | floating IP address | -| | | | | is already in use. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | | The internal IaaS | -| | | | | OpenStack network | -| | | | | port and fixed IP | -| | | | | address are already | -| | | | | associated with | -| | | | | another floating IP | -| | | | | addresses. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | ELB.8905 | The quota is used up. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | 500 | Internal server error | ELB.8906 | Internal IaaS | -| | | | | OpenStack network | -| | | | | error. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| Load balancer | 400 | Bad request | ELB.8931 | The subnet IP version | -| | | | | is not the same. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| | | | ELB.8932 | IPv6 subnets are not | -| | | | | supported, but the | -| | | | | value of | -| | | | | **ip | -| | | | | v6_vip_virsubnet_id** | -| | | | | is not **null**. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ -| Backend server | 400 | Bad request | ELB.8933 | IPv6 subnets are not | -| | | | | supported, but | -| | | | | backend servers use | -| | | | | IPv6 addresses. | -+-----------------------+-----------------------+-----------------------+-----------------------+-----------------------+ - -**Parent topic:** `Common Parameters `__ diff --git a/elb/api-ref/l7.rst b/elb/api-ref/l7.rst deleted file mode 100644 index 4a9df22b..00000000 --- a/elb/api-ref/l7.rst +++ /dev/null @@ -1,498 +0,0 @@ -Adding a Forwarding Policy -========================== - -Function -^^^^^^^^ - -This API is used to add a forwarding policy. The listener and forwarding policy determine how traffic is forwarded to backend servers. - -- By matching the URL or domain name specified in the forwarding policy when **action** is set to **REDIRECT_TO_POOL**, the load balancer distributes the traffic to backend servers in a specific backend server group. -- When **action** is set to **REDIRECT_TO_LISTENER**, the HTTP listener is redirected to an HTTPS listener, and requests are routed by the HTTPS listener. - -Constraints -^^^^^^^^^^^ - -Currently, only redirects from an HTTP listener to an HTTPS listener are supported. When **action** is set to **REDIRECT_TO_LISTENER**, the listener specified by **listener_id** can only be an HTTP listener, and the listener specified by **redirect_listener_id** can only be an HTTPS listener. - -The load balancer of the HTTPS listener to which traffic is redirected must be the same as that of the HTTP listener. - -URI -^^^ - -POST /v2.0/lbaas/l7policies - -Request -^^^^^^^ - -.. table:: **Table 1** Parameter description - - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - | Parameter | Mandatory | Type | Description | - +===========+===========+========+==================================================================================+ - | l7policy | Yes | Object | Specifies the forwarding policy. For details, see `Table | - | | | | 2 <#elb_zq_zf_0001__en-us_topic_0136295317_table173601118133515>`__. | - +-----------+-----------+--------+----------------------------------------------------------------------------------+ - -.. table:: **Table 2** **l7policy** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | Parameter | Mandatory | Type | Description | - +=============================+=============================+=============================+=============================+ - | tenant_id | No | String | Specifies the ID of the | - | | | | project where the | - | | | | forwarding policy is used. | - | | | | | - | | | | The value must be the same | - | | | | as the value of | - | | | | **tenant_id** in the token. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | name | No | String | Specifies the forwarding | - | | | | policy name. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding policy. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | description | No | String | Provides supplementary | - | | | | information about the | - | | | | forwarding policy. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | listener_id | Yes | String | Specifies the ID of the | - | | | | listener to which the | - | | | | forwarding policy is added. | - | | | | | - | | | | - When **action** is set | - | | | | to **REDIRECT_TO_POOL**, | - | | | | forwarding policies can | - | | | | be added to a listener | - | | | | with **protocol** set to | - | | | | **HTTP** or | - | | | | **TERMINATED_HTTPS**. | - | | | | - When **action** is set | - | | | | to | - | | | | | - | | | | **REDIRECT_TO_LISTENER**, | - | | | | forwarding policies can | - | | | | be added to a listener | - | | | | with **protocol** set to | - | | | | **HTTP**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | action | Yes | String | Specifies whether requests | - | | | | are forwarded to another | - | | | | backend server group or | - | | | | redirected to an HTTPS | - | | | | listener. | - | | | | | - | | | | The value can be one of the | - | | | | following: | - | | | | | - | | | | - **REDIRECT_TO_POOL**: | - | | | | Requests are forwarded | - | | | | to the backend server | - | | | | group specified by | - | | | | **redirect_pool_id**. | - | | | | - | - | | | | **REDIRECT_TO_LISTENER**: | - | | | | Requests are redirected | - | | | | from the HTTP listener | - | | | | specified by | - | | | | **listener_id** to the | - | | | | HTTPS listener specified | - | | | | by | - | | | | | - | | | | **redirect_listener_id**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_pool_id | No | String | Specifies the ID of the | - | | | | backend server group to | - | | | | which traffic is forwarded. | - | | | | The default value is | - | | | | **null**. | - | | | | | - | | | | This parameter is mandatory | - | | | | when **action** is set to | - | | | | **REDIRECT_TO_POOL**. | - | | | | | - | | | | This parameter cannot be | - | | | | specified when **action** | - | | | | is set to | - | | | | **REDIRECT_TO_LISTENER**. | - | | | | | - | | | | The backend server group | - | | | | must meet the following | - | | | | requirements: | - | | | | | - | | | | - Cannot be the default | - | | | | backend server group of | - | | | | the listener. | - | | | | - Cannot be the backend | - | | | | server group used by | - | | | | forwarding policies of | - | | | | other listeners. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_listener_id | No | String | Specifies the ID of the | - | | | | listener to which the | - | | | | traffic is redirected. The | - | | | | default value is **null**. | - | | | | | - | | | | This parameter cannot be | - | | | | specified when **action** | - | | | | is set to | - | | | | **REDIRECT_TO_POOL**. | - | | | | | - | | | | This parameter is mandatory | - | | | | when **action** is set to | - | | | | **REDIRECT_TO_LISTENER**, | - | | | | and the listener must meet | - | | | | the following requirements: | - | | | | | - | | | | - Can only be an HTTPS | - | | | | listener. | - | | | | - Can only be a listener | - | | | | of the same load | - | | | | balancer. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | redirect_url | No | String | Specifies the URL to which | - | | | | traffic is redirected. The | - | | | | default value is **null**. | - | | | | | - | | | | This parameter is reserved. | - | | | | | - | | | | The value contains a | - | | | | maximum of 255 characters. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | position | No | Integer | Specifies the forwarding | - | | | | priority. The value ranges | - | | | | from **1** to **100**. The | - | | | | default value is **100**. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | rules | No | Array | Lists the forwarding rules | - | | | | of the forwarding policy. | - | | | | For details, see `Table | - | | | | 3 <#elb_zq_zf | - | | | | _0001__en-us_topic_01362953 | - | | | | 17_table16998194317143>`__. | - | | | | | - | | | | The list contains a maximum | - | | | | of two rules, and the | - | | | | **type** parameter of each | - | | | | rule must be unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -.. table:: **Table 3** **rules** parameter description - - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | **Parameter** | **Mandatory** | **Type** | **Description** | - +=============================+=============================+=============================+=============================+ - | admin_state_up | No | Boolean | Specifies the | - | | | | administrative status of | - | | | | the forwarding rule. | - | | | | | - | | | | This parameter is reserved, | - | | | | and the default value is | - | | | | **true**. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | type | Yes | String | Specifies the match type of | - | | | | a forwarding rule. | - | | | | | - | | | | The value range varies | - | | | | depending on the protocol | - | | | | of the backend server | - | | | | group: | - | | | | | - | | | | - **HOST_NAME**: matches | - | | | | the domain name in the | - | | | | request. | - | | | | - **PATH**: matches the | - | | | | path in the request. | - | | | | | - | | | | The match type of | - | | | | forwarding rules in a | - | | | | forwarding policy must be | - | | | | unique. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | compare_type | Yes | String | Specifies the match mode. | - | | | | The options are as follows: | - | | | | | - | | | | When **type** is set to | - | | | | **HOST_NAME**, the value of | - | | | | this parameter can only be | - | | | | the following: | - | | | | | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - | | | | | - | | | | When **type** is set to | - | | | | **PATH**, the value of this | - | | | | parameter can be one of the | - | | | | following: | - | | | | | - | | | | - **REGEX**: indicates | - | | | | regular expression | - | | | | match. | - | | | | - **STARTS_WITH**: | - | | | | indicates prefix match. | - | | | | - **EQUAL_TO**: indicates | - | | | | exact match. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | invert | No | Boolean | Specifies whether reverse | - | | | | matching is supported. | - | | | | | - | | | | The value can be **true** | - | | | | or **false**. The default | - | | | | value is **false**. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | key | No | String | Specifies the key of the | - | | | | match content. The default | - | | | | value is **null**. | - | | | | | - | | | | This parameter is reserved. | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - | value | Yes | String | Specifies the value of the | - | | | | match content. The value | - | | | | cannot contain spaces. | - | | | | | - | | | | - When **type** is set to | - | | | | **HOST_NAME**, the value | - | | | | can contain a maximum of | - | | | | 100 characters that | - | | | | contain only letters, | - | | | | digits, hyphens (-), and | - | | | | periods (.), and must | - | | | | start with a letter or | - | | | | digit. | - | | | | - When **type** is set to | - | | | | **PATH**, the value can | - | | | | contain a maximum of 128 | - | | | | characters. When | - | | | | **compare_type** is set | - | | | | to **STARTS_WITH** or | - | | | | **EQUAL_TO**, the value | - | | | | must start with a slash | - | | | | (/) and can contain only | - | | | | letters, digits, and | - | | | | special characters | - | | | | \_ | - | | | | ~';@^-%#&$.*+?,=!:|\/()[]{} | - +-----------------------------+-----------------------------+-----------------------------+-----------------------------+ - -Response -^^^^^^^^ - -.. table:: **Table 4** Response parameters - - +-----------+--------+-----------------------------------------------------------------------------------------------+ - | Parameter | Type | Description | - +===========+========+===============================================================================================+ - | l7policy | Object | Specifies the forwarding policy. For details, see `Table | - | | | 5 <#elb_zq_zf_0001__en-us_topic_0136295317_table1251155618376>`__. | - +-----------+--------+-----------------------------------------------------------------------------------------------+ - -.. table:: **Table 5** **l7policy** parameter description - - +---------------------------------------+---------------------------------------+---------------------------------------+ - | Parameter | Type | Description | - +=======================================+=======================================+=======================================+ - | id | String | Specifies the forwarding policy ID. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | tenant_id | String | Specifies the ID of the project where | - | | | the forwarding policy is used. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | name | String | Specifies the forwarding policy name. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | admin_state_up | Boolean | Specifies the administrative status | - | | | of the forwarding policy. | - | | | | - | | | This parameter is reserved. The value | - | | | can be **true** or **false**. | - | | | | - | | | - **true**: Enabled | - | | | - **false**: Disabled | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | description | String | Provides supplementary information | - | | | about the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | listener_id | String | Specifies the ID of the listener to | - | | | which the forwarding policy is added. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | action | String | Specifies whether requests are | - | | | forwarded to another backend server | - | | | group or redirected to an HTTPS | - | | | listener. | - | | | | - | | | The value can be one of the | - | | | following: | - | | | | - | | | - **REDIRECT_TO_POOL**: Requests are | - | | | forwarded to the backend server | - | | | group specified by | - | | | **redirect_pool_id**. | - | | | - **REDIRECT_TO_LISTENER**: Requests | - | | | are redirected from the HTTP | - | | | listener specified by | - | | | **listener_id** to the HTTPS | - | | | listener specified by | - | | | **redirect_listener_id**. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_pool_id | String | Specifies the ID of the backend | - | | | server group to which traffic is | - | | | forwarded. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_listener_id | String | Specifies the ID of the listener to | - | | | which the traffic is redirected. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | redirect_url | String | Specifies the URL to which traffic is | - | | | redirected. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | rules | Array | Lists the forwarding rules of the | - | | | forwarding policy. For details, see | - | | | `Table | - | | | 6 <#elb_zq_zf_0001__en-us_to | - | | | pic_0136295317_table129777459104>`__. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | position | Integer | Specifies the forwarding priority. | - | | | The value ranges from **1** to | - | | | **100**. The default value is | - | | | **100**. | - | | | | - | | | This parameter is reserved. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - | provisioning_status | String | This parameter is reserved, and its | - | | | value can only be **ACTIVE**. | - | | | | - | | | It specifies the provisioning status | - | | | of the forwarding policy. | - +---------------------------------------+---------------------------------------+---------------------------------------+ - -.. table:: **Table 6** **rules** parameter description - - ========= ====== =============================================================== - Parameter Type Description - ========= ====== =============================================================== - id String Lists the IDs of the forwarding rules in the forwarding policy. - ========= ====== =============================================================== - -Example Request -^^^^^^^^^^^^^^^ - -- Example request 1: Adding a forwarding policy - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/l7policies - - { - "l7policy": { - "name": "niubiao_yaqing_api-2", - "listener_id": "3e24a3ca-11e5-4aa3-abd4-61ba0a8a18f1", - "action": "REDIRECT_TO_POOL", - "redirect_pool_id": "6460f13a-76de-43c7-b776-4fefc06a676e", - "rules": [ - { - "type": "PATH", - "compare_type": "EQUAL_TO", - "value": "/test" - }, - { - "type": "HOST_NAME", - "compare_type": "EQUAL_TO", - "value": "www.test.com" - } - ] - } - } - -- Example request 2: Creating a redirect - - .. code:: screen - - POST https://{Endpoint}/v2.0/lbaas/l7policies - - { - "l7policy": { - "action": "REDIRECT_TO_LISTENER", - "listener_id": "4ef8553e-9ef7-4859-a42d-919feaf89d60", - "redirect_listener_id": "3ee10199-a7b4-4784-93cd-857afe9d0890", - "name": "redirect-test" - } - } - -Example Response -^^^^^^^^^^^^^^^^ - -- Example response 1 - - .. code:: screen - - { - "l7policy": { - "redirect_pool_id": "6460f13a-76de-43c7-b776-4fefc06a676e", - "description": "", - "admin_state_up": true, - "rules": [ - { - "id": "742600d9-2a14-4808-af69-336883dbb590" - }, - { - "id": "3251ed77-0d52-412b-9310-733636bb3fbf" - } - ], - "tenant_id": "573d73c9f90e48d0bddfa0eb202b25c2", - "listener_id": "3e24a3ca-11e5-4aa3-abd4-61ba0a8a18f1", - "redirect_url": null, - "redirect_listener_id": null, - "action": "REDIRECT_TO_POOL", - "position": 100, - "provisioning_status": "ACTIVE", - - "id": "65d6e115-f179-4bcd-9bbb-1484e5f8ee81", - "name": "niubiao_yaqing-_api-2" - } - } - -- Example response 2 - - .. code:: screen - - { - "l7policy": { - "redirect_pool_id": null, - "description": "", - "admin_state_up": true, - "rules": [ ], - "tenant_id": "573d73c9f90e48d0bddfa0eb202b25c2", - "listener_id": "4ef8553e-9ef7-4859-a42d-919feaf89d60", - "redirect_url": null, - "redirect_listener_id": "3ee10199-a7b4-4784-93cd-857afe9d0890", - "action": "REDIRECT_TO_LISTENER", - "position": 100, - "provisioning_status": "ACTIVE", - "id": "bc4e4338-480f-4a98-8245-5bb1964f0e1d", - "name": "redirect-test" - } - } - -Status Code -^^^^^^^^^^^ - -For details, see `HTTP Status Codes of Shared Load Balancers `__. - -**Parent topic:** `Forwarding Policy `__ diff --git a/elb/api-ref/topic_300000000.rst b/elb/api-ref/topic_300000000.rst deleted file mode 100644 index dae4e46e..00000000 --- a/elb/api-ref/topic_300000000.rst +++ /dev/null @@ -1,6 +0,0 @@ -Quota -===== - -- `Querying Quotas `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000001.rst b/elb/api-ref/topic_300000001.rst deleted file mode 100644 index fe2c10c3..00000000 --- a/elb/api-ref/topic_300000001.rst +++ /dev/null @@ -1,6 +0,0 @@ -AZ -== - -- `Querying AZs `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000002.rst b/elb/api-ref/topic_300000002.rst deleted file mode 100644 index 74346523..00000000 --- a/elb/api-ref/topic_300000002.rst +++ /dev/null @@ -1,7 +0,0 @@ -Load Balancer Flavor -==================== - -- `Querying Flavors `__ -- `Viewing Details of a Flavor `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000003.rst b/elb/api-ref/topic_300000003.rst deleted file mode 100644 index 6a2b80aa..00000000 --- a/elb/api-ref/topic_300000003.rst +++ /dev/null @@ -1,11 +0,0 @@ -Load Balancer -============= - -- `Creating a Load Balancer `__ -- `Querying Load Balancers `__ -- `Viewing Details of a Load Balancer `__ -- `Updating a Load Balancer `__ -- `Deleting a Load Balancer `__ -- `Querying the Status Tree of a Load Balancer `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000004.rst b/elb/api-ref/topic_300000004.rst deleted file mode 100644 index 86599524..00000000 --- a/elb/api-ref/topic_300000004.rst +++ /dev/null @@ -1,10 +0,0 @@ -Certificate -=========== - -- `Creating a Certificate `__ -- `Querying Certificates `__ -- `Viewing Details of a Certificate `__ -- `Updating a Certificate `__ -- `Deleting a Certificate `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000005.rst b/elb/api-ref/topic_300000005.rst deleted file mode 100644 index aef6f154..00000000 --- a/elb/api-ref/topic_300000005.rst +++ /dev/null @@ -1,10 +0,0 @@ -Listener -======== - -- `Adding a Listener `__ -- `Querying Listeners `__ -- `Viewing Details of a Listener `__ -- `Updating a Listener `__ -- `Deleting a Listener `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000006.rst b/elb/api-ref/topic_300000006.rst deleted file mode 100644 index 8a8a1ffa..00000000 --- a/elb/api-ref/topic_300000006.rst +++ /dev/null @@ -1,10 +0,0 @@ -Backend Server Group -==================== - -- `Creating a Backend Server Group `__ -- `Querying Backend Server Groups `__ -- `Viewing Details of a Backend Server Group `__ -- `Updating a Backend Server Group `__ -- `Deleting a Backend Server Group `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000007.rst b/elb/api-ref/topic_300000007.rst deleted file mode 100644 index 0fa230fa..00000000 --- a/elb/api-ref/topic_300000007.rst +++ /dev/null @@ -1,10 +0,0 @@ -Backend Server -============== - -- `Adding a Backend Server `__ -- `Querying Backend Servers `__ -- `Viewing Details of a Backend Server `__ -- `Updating a Backend Server `__ -- `Removing a Backend Server `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000008.rst b/elb/api-ref/topic_300000008.rst deleted file mode 100644 index 0b19d42c..00000000 --- a/elb/api-ref/topic_300000008.rst +++ /dev/null @@ -1,10 +0,0 @@ -Health Check -============ - -- `Configuring a Health Check `__ -- `Querying Health Checks `__ -- `Viewing Details of a Health Check `__ -- `Updating a Health Check `__ -- `Deleting a Health Check `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000009.rst b/elb/api-ref/topic_300000009.rst deleted file mode 100644 index 236d4f95..00000000 --- a/elb/api-ref/topic_300000009.rst +++ /dev/null @@ -1,10 +0,0 @@ -Forwarding Policy -================= - -- `Adding a Forwarding Policy `__ -- `Querying Forwarding Policies `__ -- `Viewing Details of a Forwarding Policy `__ -- `Updating a Forwarding Policy `__ -- `Deleting a Forwarding Policy `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/api-ref/topic_300000010.rst b/elb/api-ref/topic_300000010.rst deleted file mode 100644 index 78ab04f1..00000000 --- a/elb/api-ref/topic_300000010.rst +++ /dev/null @@ -1,10 +0,0 @@ -Forwarding Rule -=============== - -- `Adding a Forwarding Rule `__ -- `Querying Forwarding Rules `__ -- `Viewing Details of a Forwarding Rule `__ -- `Updating a Forwarding Rule `__ -- `Deleting a Forwarding Rule `__ - -**Parent topic:** `Dedicated Load Balancer APIs `__ diff --git a/elb/umn/temp/access_control.tmp b/elb/umn/temp/access_control.tmp deleted file mode 100644 index 1f38419f..00000000 --- a/elb/umn/temp/access_control.tmp +++ /dev/null @@ -1,47 +0,0 @@ - - -

Access Control

-

Access control allows you to whitelist certain IP addresses to allow them to access a listener.

-
  • You can add whitelists only to listeners of shared load balancers. Adding whitelists may interrupt services. Once a whitelist is added, only IP addresses in the whitelist can access the listener.
  • If access control is enabled but no whitelist is added, the listener cannot be accessed.
  • Whitelists do not conflict with inbound security group rules. Whitelists control access to listeners based on IP addresses or CIDR blocks, whereas inbound security group rules control access to backend servers based on the protocol, ports, and IP addresses.
- -

Adding a Whitelist

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  1. Locate the load balancer and click its name.
  2. Click Listeners, locate the listener, and click its name. In the Basic Information area, click Configure next to Access Control. -.. _en-us_elb_03_0003__table3263104318541: - - - - - - - - - - - - - - - -
    Table 1 Parameter description

    Parameter

    -

    Description

    -

    Example Value

    -

    Access Control

    -

    Enabled

    -
    • If access control is enabled and no whitelist is set, no IP address can access the listener.
    • If access control is enabled and a whitelist is set, only IP addresses in the whitelist can access the listener.
    -

    Disabled

    -
    • If access control is disabled, the listener can be accessed from any IP address.
    -

    N/A

    -

    Whitelist

    -

    Lists the IP addresses that can access the listener.

    - NOTE:
    • A maximum of 300 IP addresses or IP address ranges are supported. A comma (,) is used to separate every two entries.
    • The whitelist cannot contain IPv6 addresses.
    - -

    10.168.2.24,10.168.16.0/24

    -
    - -
  3. Click OK.
- - - - - - - diff --git a/elb/umn/temp/access_logging.tmp b/elb/umn/temp/access_logging.tmp deleted file mode 100644 index bbcef63b..00000000 --- a/elb/umn/temp/access_logging.tmp +++ /dev/null @@ -1,91 +0,0 @@ - - -

Access Logging

-

Access logs record HTTP and HTTPS requests made to load balancers, and these logs are stored in an OBS bucket. Only public network classic load balancers support access logging.

-

Before configuring access logging, ensure that you have created a load balancer and OBS bucket. For details, see "Creating a Bucket" in the Object Storage Service User Guide.

-
  1. Grant read and write permissions to the ELB administrator.
    1. Log in to the management console. On the Object Storage Service page, click the name of the destination bucket.
    2. In the navigation pane on the left, choose Permissions.
    3. On the displayed page, click Bucket ACLs.
    4. Click Add and set the parameters.
    - -.. _elb_ug_rzfw_0001__table38812372310: - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameter description

    Parameter

    -

    Description

    -

    Example Value

    -

    Account

    -

    Specifies the account ID or account name of the ELB administrator.

    -

    N/A

    -

    Access to Bucket

    -

    Specifies the permissions to read data from or write data to an OBS bucket.

    -

    Read/Write

    -

    Access to ACL

    -

    Allows the authorized user to read or write the bucket ACL.

    -

    Read/Write

    -
    - -
    1. Click Save.
    -
  2. Associate the bucket with a load balancer.
    1. Locate the load balancer and click More in the Operation column.
    2. Select Configure Access Log.
    3. In the Configure Access Log dialog box, enable access logging.
    4. Select the associated OBS bucket and configure log information.Figure 1 Configure Access Log
      - -.. _elb_ug_rzfw_0001__table389515316230: - - - - - - - - - - - - - - - - - - - - - - - -
      Table 2 Parameter description

      Parameter

      -

      Description

      -

      Example Value

      -

      Enable Logging

      -

      Whether to enable access logging

      -

      N/A

      -

      Backup Interval (min)

      -

      Log backup interval in minutes, which is 60 minutes by default

      -

      60

      -

      OBS Bucket

      -

      Destination bucket with read and write permissions

      -

      obs01

      -

      Prefix

      -

      Log storage directory

      -

      If this field is left blank, logs will be saved to the root directory of the destination bucket.

      -

      log01

      -
      - -
    -
- - - diff --git a/elb/umn/temp/adding_a_listener.tmp b/elb/umn/temp/adding_a_listener.tmp deleted file mode 100644 index 5018207b..00000000 --- a/elb/umn/temp/adding_a_listener.tmp +++ /dev/null @@ -1,588 +0,0 @@ - - -

Adding a Listener

-

Scenarios

After you create a load balancer, add at least one listener to the load balancer. This listener is a process that checks for requests using the protocol and port you configure for connections from clients to the load balancer, and the protocol and port from the load balancer to backend servers.

-

The listener also defines the health check configuration, based on which the load balancer continually checks the running statuses of backend servers. If a backend server is detected unhealthy, the load balancer routes traffic to these healthy ones. Traffic forwarding to this server resumes once it recovers.

-

When you add an HTTP listener, ensure that the subnet of the load balancer has sufficient IP addresses. If the IP addresses are insufficient, add multiple subnets on the Basic Information page of the load balancer. After you select a subnet, ensure that ACL rules are not configured for this subnet. If rules are configured, request packets may not be allowed.

- -

Adding a Listener to a Dedicated Load Balancer

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Under Listeners, click Add Listener. Configure the parameters based on Table 1, Table 2, and Table 3. -.. _elb_ug_jt_0011__table627865019713: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameters for configuring a listener

    Parameter

    -

    Description

    -

    Example Value

    -

    Name

    -

    Specifies the listener name.

    -

    listener-pnqy

    -

    Frontend Protocol/Port

    -

    Specifies the protocol and port used by the load balancer to receive requests from clients and forward the requests to backend servers.

    -

    The port number ranges from 1 to 65535, and the following protocols are supported:

    -
    • HTTP
    -
    • TCP
    • HTTPS
    • UDP
    -

    TCP/80

    -

    Redirect

    -

    Redirects requests to an HTTPS listener when HTTP is used as the frontend protocol. If you have both HTTPS and HTTP listeners, you can use this function to redirect the requests from the HTTP listener to the HTTPS listener to ensure security.

    -

    If you create a redirect for an HTTP listener, the load balancer will return HTTP 301 Move Permanently to the clients.

    -

    N/A

    -

    Redirected To

    -

    Specifies the HTTPS listener to which requests are redirected.

    -

    N/A

    -

    Server Certificate

    -

    Specifies the certificate used by the server to authenticate the client when HTTPS is used as the frontend protocol.

    -

    N/A

    -

    Enable SNI

    -

    Specifies whether to enable SNI when HTTPS is used as the frontend protocol.

    -

    SNI is an extension to TLS and is used when a server uses multiple domain names and certificates. This allows the client to submit the domain name information while sending an SSL handshake request. After the load balancer receives the request, the load balancer queries the corresponding certificate based on the domain name and returns it to the client. If no certificate is found, the load balancer will return a default certificate.

    -

    N/A

    -

    SNI Certificate

    -

    Specifies the certificate associated with the domain name when the frontend protocol is HTTPS and SNI is enabled.

    -

    N/A

    -

    Advanced Settings

    -

    Security Policy

    -

    Specifies the security policy you can use if you select HTTPS as the frontend protocol. The following options are available (for details, see Security Policy):

    -
    • TLS-1-0
    • TLS-1-1
    • TLS-1-2
    • TLS-1-2-Strict
    -

    TLS-1-0

    -

    Mutual Authentication

    -

    Specifies whether to enable mutual authentication between the server and client. Both a server certificate and CA certificate are required for mutual authentication. You can enable this option if you have set Frontend Protocol to HTTPS.

    -

    N/A

    -

    CA Certificate

    -

    Specifies the certificate used by the server to authenticate the client when HTTPS is used as the frontend protocol. This parameter is mandatory if you have set Frontend Protocol to HTTPS and enabled mutual authentication.

    -

    N/A

    -

    Obtain Load Balancer EIP

    -

    Specifies whether to pass the load balancer EIP to backend servers if you select HTTPS or HTTP for Frontend Protocol.

    -

    N/A

    -

    Description

    -

    Provides supplementary information about the listener.

    -

    N/A

    -

    Tag

    -

    Adds tags to the listener. Each tag is a key-value pair, and the tag key is unique.

    -

    11/11

    -
    - - -.. _elb_ug_jt_0011__table02842501376: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 2 Parameters for adding a backend server group

    Parameter

    -

    Description

    -

    Example Value

    -

    Backend Server Group

    -

    Specifies a group of servers with the same features to receive requests from the load balancer. Two options are available:

    -
    • Create new
    • Use existing NOTE:

      To associate an existing backend server group, ensure that it is not in use. Select the backend server group with the correct protocol. For example, if the frontend protocol is TCP, the backend protocol can only be TCP.

      - -
    -

    Create new

    -

    Name

    -

    Specifies the name of the backend server group.

    -

    server_group-sq4v

    -

    Backend Protocol

    -

    Specifies the protocol used by backend servers to receive requests.

    -

    HTTP

    -

    Load Balancing Algorithm

    -

    Specifies the algorithm used by the load balancer to distribute traffic. The following options are available:

    -
    • Weighted round robin: Requests are routed to different servers based on their weights, which indicate server processing performance. Backend servers with higher weights receive proportionately more requests, whereas equal-weighted servers receive the same number of requests.
    • Weighted least connections: In addition to the weight assigned to each server, the number of connections processed by each backend server is also considered. Requests are routed to the server with the lowest connections-to-weight ratio.
    • Source IP hash: The source IP address of the request is input into a hash algorithm, and the resulting hash is used to identify a server in the static fragment table.
    - NOTE:

    Choose an appropriate algorithm based on your requirements for better traffic distribution.

    - -

    Weighted round robin

    -

    Sticky Session

    -

    Specifies whether to enable sticky sessions. If you enable sticky sessions, all requests from a client during one session are sent to the same backend server.

    - NOTE:

    For HTTP and HTTPS listeners, enabling or disabling sticky sessions may cause few seconds of service interruption.

    - -

    N/A

    -

    Sticky Session Type

    -

    After you enable the sticky session feature, select a sticky session type:

    -
    • Source IP address: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hash key, and all backend servers are numbered. The system allocates the client to a particular server based on the generated key. This enables requests from different clients to be routed and ensures that a client is directed to the same server that it was using previously.
    • Load balancer cookie: The load balancer generates a cookie after receiving a request from the client. All subsequent requests with the same cookie are then routed to the same backend server.
    • Application cookie: The application deployed on the backend server generates a cookie after receiving the first request from the client. All requests with the same cookie generated by backend application are then routed to the same backend server.
    - NOTE:

    Choose an appropriate sticky session type to better distribute requests and improve load balancing.

    -
    • Sticky sessions at Layer 4 (for TCP or UDP listeners): only Source IP address
    • Sticky sessions at Layer 7 (for HTTP or HTTPS listeners): Load balancer cookie and Application cookie
    - -

    Source IP address

    -

    Cookie Name

    -

    Specifies the cookie name. If you select Application cookie, enter a cookie name.

    -

    cookieName-qsps

    -

    Stickiness Duration (min)

    -

    Specifies the minutes that sticky sessions are maintained.

    -
    • Stickiness duration at Layer 4: 1 to 60
    • Stickiness duration at Layer 7: 1 to 1440
    -

    20

    -

    Description

    -

    Provides supplementary information about the backend server group.

    -

    N/A

    -
    - - -.. _elb_ug_jt_0011__table172911502712: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 3 Parameters for configuring a health check

    Parameter

    -

    Description

    -

    Example Value

    -

    Enable Health Check

    -

    Specifies whether to enable health checks.

    -

    N/A

    -

    Protocol

    -
    • Specifies the protocol used by the load balancer to perform health checks on backend servers. You can select either TCP or HTTP. A selected protocol cannot be changed.
    • If the frontend protocol is UDP, the health check protocol is UDP by default.
    -

    HTTP

    -

    Domain Name

    -

    Specifies the domain name that will be used for health checks. The domain name can contain digits, letters, hyphens (-), and periods (.), and must start with a digit or letter. This field is left blank by default and needs to be configured only if you use HTTP as the health check protocol.

    -

    www.elb.com

    -

    Port

    -

    Specifies the port used by the load balancer to perform health checks on backend servers. The port number ranges from 1 to 65535.

    - NOTE:

    This parameter is optional. If you do not specify a health check port, a port of the backend server will be used for health checks by default. If you specify a port, it will be used for health checks.

    - -

    80

    -

    Advanced Settings

    -

    Provides some advanced features.

    -

    N/A

    -

    Interval (s)

    -

    Specifies the maximum time between health checks, in seconds.

    -

    The interval ranges from 1 to 50.

    -

    5

    -

    Timeout (s)

    -

    Specifies the maximum time required for waiting for a response from the health check, in seconds. The timeout ranges from 1 to 50.

    -

    10

    -

    Check Path

    -

    Specifies the destination path for health checks. Configure this parameter only if you have set Protocol to HTTP. The path can contain 1 to 80 characters and must start with a slash (/).

    -

    /index.html

    -

    Maximum Retries

    -

    Specifies the maximum number of health check retries. The value ranges from 1 to 10.

    -

    3

    -
    - -
  1. Click Finish.
  2. Click OK.
- -

Adding a Listener to a Shared Load Balancer

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Under Listeners, click Add Listener. Configure the parameters based on Table 4, Table 5, and Table 6. -.. _elb_ug_jt_0011__table1441020925310: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 4 Parameters for configuring a listener

    Parameter

    -

    Description

    -

    Example Value

    -

    Name

    -

    Specifies the listener name.

    -

    listener-pnqy

    -

    Frontend Protocol/Port

    -

    Specifies the protocol and port used by the load balancer to receive requests from clients and forward the requests to backend servers.

    -

    The port number ranges from 1 to 65535, and the following protocols are supported:

    -
    • HTTP
    -
    • TCP
    • HTTPS
    • UDP
    -

    TCP/80

    -

    Redirect

    -

    Redirects requests to an HTTPS listener when HTTP is used as the frontend protocol. If you have both HTTPS and HTTP listeners, you can use this function to redirect the requests from the HTTP listener to the HTTPS listener to ensure security.

    -

    If you create a redirect for an HTTP listener, the load balancer will return HTTP 301 Move Permanently to the clients.

    -

    N/A

    -

    Redirected To

    -

    Specifies the HTTPS listener to which requests are redirected.

    -

    N/A

    -

    Server Certificate

    -

    Specifies the certificate used by the server to authenticate the client when HTTPS is used as the frontend protocol.

    -

    N/A

    -

    Enable SNI

    -

    Specifies whether to enable SNI when HTTPS is used as the frontend protocol.

    -

    SNI is an extension to TLS and is used when a server uses multiple domain names and certificates. This allows the client to submit the domain name information while sending an SSL handshake request. After the load balancer receives the request, the load balancer queries the corresponding certificate based on the domain name and returns it to the client. If no certificate is found, the load balancer will return a default certificate.

    -

    N/A

    -

    SNI Certificate

    -

    Specifies the certificate associated with the domain name when the frontend protocol is HTTPS and SNI is enabled.

    -

    Select an existing certificate or create one.

    -

    N/A

    -

    Advanced Settings

    -

    Security Policy

    -

    Specifies the security policy you can use if you select HTTPS as the frontend protocol. The following options are available (for details, see Security Policy):

    -
    • TLS-1-0
    • TLS-1-1
    • TLS-1-2
    • TLS-1-2-Strict
    -

    TLS-1-0

    -

    Idle Timeout

    -

    Specifies the length of time for a connection to keep alive, in seconds. If no request is received within this period, the load balancer closes the connection and establishes a new one with the client when the next request arrives. This parameter is mandatory when you have set Frontend Protocol to TCP, HTTP or HTTPS.

    -

    The idle timeout duration varies depending on the protocol:

    -
    • TCP: 10 to 4000
    • HTTP or HTTPS: 0 to 4000
    -
    • TCP: The default value is 300.
    • HTTP or HTTPS: The default value is 60.
    -

    Mutual Authentication

    -

    Specifies whether to enable mutual authentication between the server and client. Both a server certificate and CA certificate are required for mutual authentication. You can enable this option if you have set Frontend Protocol to HTTPS.

    -

    N/A

    -

    CA Certificate

    -

    Specifies the certificate used by the server to authenticate the client when HTTPS is used as the frontend protocol. This parameter is mandatory if you have set Frontend Protocol to HTTPS and enabled mutual authentication.

    -

    N/A

    -

    Description

    -

    Provides supplementary information about the listener.

    -

    N/A

    -

    Tag

    -

    Adds tags to the listener. Each tag is a key-value pair, and the tag key is unique.

    -

    11/11

    -
    - - -.. _elb_ug_jt_0011__table6414109125314: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 5 Parameters for adding a backend server group

    Parameter

    -

    Description

    -

    Example Value

    -

    Backend Server Group

    -

    Specifies a group of servers with the same features to receive requests from the load balancer. Two options are available:

    -
    • Create new
    • Use existing NOTE:

      To associate an existing backend server group, ensure that it is not in use. Select the backend server group with the correct protocol. For example, if the frontend protocol is TCP, the backend protocol can only be TCP.

      - -
    -

    Create new

    -

    Name

    -

    Specifies the name of the backend server group.

    -

    server_group-sq4v

    -

    Backend Protocol

    -

    Specifies the protocol used by backend servers to receive requests.

    -

    HTTP

    -

    Load Balancing Algorithm

    -

    Specifies the algorithm used by the load balancer to distribute traffic. The following options are available:

    -
    • Weighted round robin: Requests are routed to different servers based on their weights, which indicate server processing performance. Backend servers with higher weights receive proportionately more requests, whereas equal-weighted servers receive the same number of requests.
    • Weighted least connections: In addition to the weight assigned to each server, the number of connections processed by each backend server is also considered. Requests are routed to the server with the lowest connections-to-weight ratio.
    • Source IP hash: The source IP address of the request is input into a hash algorithm, and the resulting hash is used to identify a server in the static fragment table.
    - NOTE:

    Choose an appropriate algorithm based on your requirements for better traffic distribution.

    - -

    Weighted round robin

    -

    Sticky Session

    -

    Specifies whether to enable sticky sessions. If you enable sticky sessions, all requests from a client during one session are sent to the same backend server.

    - NOTE:

    For HTTP and HTTPS listeners, enabling or disabling sticky sessions may cause few seconds of service interruption.

    - -

    N/A

    -

    Sticky Session Type

    -

    After you enable the sticky session feature, select a sticky session type:

    -
    • Source IP address: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hash key, and all backend servers are numbered. The system allocates the client to a particular server based on the generated key. This enables requests from different clients to be routed and ensures that a client is directed to the same server that it was using previously.
    • Load balancer cookie: The load balancer generates a cookie after receiving a request from the client. All subsequent requests with the same cookie are then routed to the same backend server.
    • Application cookie: The application deployed on the backend server generates a cookie after receiving the first request from the client. All requests with the same cookie generated by backend application are then routed to the same backend server.
    - NOTE:

    Choose an appropriate sticky session type to better distribute requests and improve load balancing.

    -
    • Sticky sessions at Layer 4 (for TCP or UDP listeners): only Source IP address
    • Sticky sessions at Layer 7 (for HTTP or HTTPS listeners): Load balancer cookie and Application cookie
    - -

    Source IP address

    -

    Cookie Name

    -

    Specifies the cookie name. If you select Application cookie, enter a cookie name.

    -

    cookieName-qsps

    -

    Stickiness Duration (min)

    -

    Specifies the minutes that sticky sessions are maintained.

    -
    • Stickiness duration at Layer 4: 1 to 60
    • Stickiness duration at Layer 7: 1 to 1440
    -

    20

    -

    Description

    -

    Provides supplementary information about the backend server group.

    -

    N/A

    -
    - - -.. _elb_ug_jt_0011__table124201898534: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 6 Parameters for configuring a health check

    Parameter

    -

    Description

    -

    Example Value

    -

    Enable Health Check

    -

    Specifies whether to enable health checks.

    -

    N/A

    -

    Protocol

    -
    • Specifies the protocol used by the load balancer to perform health checks on backend servers. You can select either TCP or HTTP. A selected protocol cannot be changed.
    • If the frontend protocol is UDP, the health check protocol is UDP by default.
    -

    HTTP

    -

    Domain Name

    -

    Specifies the domain name that will be used for health checks. The domain name can contain digits, letters, hyphens (-), and periods (.), and must start with a digit or letter. This field is left blank by default and needs to be configured only if you use HTTP as the health check protocol.

    -

    www.elb.com

    -

    Port

    -

    Specifies the port used by the load balancer to perform health checks on backend servers. The port number ranges from 1 to 65535.

    - NOTE:

    This parameter is optional. If you do not specify a health check port, a port of the backend server will be used for health checks by default.

    - -

    80

    -

    Advanced Settings

    -

    Provides some advanced features.

    -

    N/A

    -

    Interval (s)

    -

    Specifies the maximum time between health checks, in seconds.

    -

    The interval ranges from 1 to 50.

    -

    5

    -

    Timeout (s)

    -

    Specifies the maximum time required for waiting for a response from the health check, in seconds. The timeout duration ranges from 1 to 50.

    -

    10

    -

    Check Path

    -

    Specifies the destination path for health checks. Configure this parameter only if you have set Protocol to HTTP. The path can contain 1 to 80 characters and must start with a slash (/).

    -

    /index.html

    -

    Maximum Retries

    -

    Specifies the maximum number of health check retries. The value ranges from 1 to 10.

    -

    3

    -
    - -
  1. Click Finish.
  2. Click OK.
- - - - - - - diff --git a/elb/umn/temp/adding_an_alarm_rule.tmp b/elb/umn/temp/adding_an_alarm_rule.tmp deleted file mode 100644 index 617f2da3..00000000 --- a/elb/umn/temp/adding_an_alarm_rule.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Adding an Alarm Rule

-
  1. Log in to the management console.
  2. Under Management & Deployment, click Cloud Eye.
  3. In the navigation pane on the left, choose Alarm Management > Alarm Rules.
  4. On the Alarm Rules page, click Create Alarm Rule.The following describes how to create an alarm rule for a load balancer.
    1. Select Elastic Load Balancing for Resource Type.
    2. For Dimension, select Elastic Load Balancers. In the following operations, a load balancer is used as an example.
    3. Set other parameters as required and then click Create.

      Once the alarm rule is set and you have enabled the notification function, the system automatically sends you a notification when an alarm is generated.

      -

      For more information about alarm rules of load balancers and listeners, see the Cloud Eye User Guide.

      - -
    - -
- - - - - - diff --git a/elb/umn/temp/adding_or_removing_backend_servers_(dedicated_load_balancers).tmp b/elb/umn/temp/adding_or_removing_backend_servers_(dedicated_load_balancers).tmp deleted file mode 100644 index c90fc416..00000000 --- a/elb/umn/temp/adding_or_removing_backend_servers_(dedicated_load_balancers).tmp +++ /dev/null @@ -1,194 +0,0 @@ - - -

Adding or Removing Backend Servers (Dedicated Load Balancers)

-

Scenarios

When you use ELB, ensure that at least a healthy backend server is in the backend server group associated with your load balancer. If incoming traffic increases, you need to add more backend servers.

-

After a backend server is removed, it cannot receive requests from the load balancer. You can add it back to the backend server group when the traffic goes up again.

-

If the load balancer is associated with an AS group, instances in the AS group are automatically added to the backend server group associated with the load balancer. If instances are removed from the AS group, they will be automatically removed from the backend server group.

- - -

Adding Backend Servers

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. On the Backend Server Groups tab page, click Add Backend Server under Backend Servers.
  6. Perform the following operations based on the type of the backend servers:
    • Backend servers in the same VPC as the load balancer: In the Add Backend Server dialog box, select the subnet where the backend servers reside, select the backend servers to be added, and click Next. Set the server weights and backend ports, and click Finish.
    • Cross-VPC backend servers: In the Add Cross-VPC Backend Server dialog box, specify the IP addresses, ports, and weights, and click OK.
    -
- -

Removing Backend Servers

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups, locate the backend server group, and click its name.
  6. In the Basic Information area, locate the target backend server and click Remove in the Operation column. To remove multiple backend servers, select the backend servers you want to remove and click Remove above the server list.
  7. Click Yes.
- -

Adding a Backend Server Group

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Under Backend Server Groups, click Add Backend Server Group.
  6. In the Add Backend Server Group dialog box, configure the parameters.

    Configure the parameters based on Table 1 and Table 2.

    - -.. _elb_ug_hd_0003__table299811529239: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameters for adding a backend server group

    Parameter

    -

    Description

    -

    Example Value

    -

    Name

    -

    Specifies the name of the backend server group.

    -

    server_group-sq4v

    -

    Backend Protocol

    -

    Specifies the protocol used by backend servers to receive requests.

    -

    The backend protocol can be TCP, UDP, HTTP, or HTTPS.

    -

    HTTP

    -

    Load Balancing Algorithm

    -

    Specifies the algorithm used by the load balancer to distribute traffic. The following options are available:

    -
    • Weighted round robin: Requests are routed to different servers based on their weights, which indicate server processing performance. Backend servers with higher weights receive proportionately more requests, whereas equal-weighted servers receive the same number of requests.
    • Weighted least connections: In addition to the number of active connections established with each backend server, each server is assigned a weight based on their processing capability. Requests are routed to the server with the lowest connections-to-weight ratio.
    • Source IP hash: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hashing key, and all backend servers are numbered. The generated key is used to allocate the client to a particular server. This allows requests from different clients to be routed based on source IP addresses and ensures that a client is directed to the same server that it was using previously.
    - NOTE:
    • Choose an appropriate algorithm based on your requirements for better traffic distribution.
    • For Weighted round robin or Weighted least connections, no requests will be routed to a server with a weight of 0.
    - -

    Weighted round robin

    -

    Sticky Session

    -

    Specifies whether to enable sticky sessions. If you enable sticky sessions, all requests from a client are sent to the same backend server.

    - NOTE:

    You can enable sticky sessions only if you select Weighted round robin for Load Balancing Algorithm.

    - -

    -

    -

    Sticky Session Type

    -

    After you enable the sticky session feature, select a sticky session type:

    -
    • Source IP address: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hashing key, and all backend servers are numbered. The system allocates the client to a particular server based on the generated key. This enables requests from different clients to be routed and ensures that a client is directed to the same server that it was using previously.
    • Load balancer cookie: The load balancer generates a cookie after receiving a request from the client. All subsequent requests with the same cookie are then routed to the same backend server.
    • Application cookie: The application deployed on the backend server generates a cookie after receiving the first request from the client. All requests with the same cookie generated by backend application are then routed to the same backend server.
    - NOTE:

    Choose an appropriate sticky session type to better distribute requests and improve load balancing.

    -
    • Sticky sessions at Layer 4 (for TCP or UDP listeners): only Source IP address
    • Sticky sessions at Layer 7 (for HTTP or HTTPS listeners): Load balancer cookie and Application cookie
    - -

    Load balancer cookie

    -

    Stickiness Duration (min)

    -

    Specifies the minutes that sticky sessions are maintained. You can enable sticky sessions only if you select Weighted round robin or Weighted least connections for Load Balancing Algorithm.

    -
    • Stickiness duration at Layer 4: 1 to 60
    • Stickiness duration at Layer 7: 1 to 1440
    -

    20

    -

    Slow Start

    -

    Specifies whether to enable slow start, which is disabled by default.

    -

    After you enable slow start, the load balancer linearly increases the proportion of requests to send to backend servers in this mode. When the slow start duration elapses, the load balancer sends full share of requests to backend servers and exits the slow start mode. For details, see Configuring Slow Start (Dedicated Load Balancers).

    -

    -

    -

    Slow Start Duration

    -

    Specifies how long the slow start will last.

    -

    The duration ranges from 30 to 1200, in seconds, and the default value is 30.

    -

    30

    -

    Description

    -

    Provides supplementary information about the backend server group.

    -

    You can enter a maximum of 255 characters.

    -

    -

    -
    - - -.. _elb_ug_hd_0003__table1022053182319: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 2 Parameters for configuring a health check

    Parameter

    -

    Description

    -

    Example Value

    -

    Enable Health Check

    -

    Specifies whether to enable health checks.

    -

    N/A

    -

    Protocol

    -

    Specifies the protocol used by the load balancer to perform health checks on backend servers. You can select either TCP or HTTP. A selected protocol cannot be changed.

    -

    HTTP

    -

    Domain Name

    -

    Specifies the domain name that will be used for health checks.

    -

    The domain name can contain digits, letters, hyphens (-), and periods (.), and must start with a digit or letter. The field is left blank by default and is available only when the health check protocol is HTTP.

    -

    www.elb.com

    -

    Port

    -

    Specifies the port used by the load balancer to perform health checks on backend servers. The port number ranges from 1 to 65535.

    - NOTE:

    If you do not specify a health check port, the backend port will be used for health checks by default. If you specify a port, it will be used for health checks.

    - -

    80

    -

    Advanced Settings

    -

    Interval (s)

    -

    Specifies the maximum time between health checks, in seconds.

    -

    The interval ranges from 1 to 50.

    -

    5

    -

    Timeout (s)

    -

    Specifies the maximum time required for waiting for a response from the health check, in seconds. The timeout duration ranges from 1 to 50.

    -

    3

    -

    Check Path

    -

    Specifies the destination path for health checks. Configure this parameter only if you have set Protocol to HTTP. The path can contain 1 to 80 characters and must start with a slash (/).

    -

    /index.html

    -

    Maximum Retries

    -

    Specifies the maximum number of health check retries. The value ranges from 1 to 10.

    -

    3

    -
    - -
  7. Click OK.
- -

Modifying a Backend Server Group

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups, locate the backend server group, and click on the right of its name.
  6. Modify the parameters as needed and click OK.
- -

Deleting a Backend Server Group

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups, locate the backend server group, and click on the right of its name.
  6. Click Yes.
- - - - - - - diff --git a/elb/umn/temp/adding_or_removing_backend_servers_(shared_load_balancers).tmp b/elb/umn/temp/adding_or_removing_backend_servers_(shared_load_balancers).tmp deleted file mode 100644 index 2f054476..00000000 --- a/elb/umn/temp/adding_or_removing_backend_servers_(shared_load_balancers).tmp +++ /dev/null @@ -1,189 +0,0 @@ - - -

Adding or Removing Backend Servers (Shared Load Balancers)

-

Scenarios

A backend server group has at least a healthy backend server. If incoming traffic increases, you need to add more backend servers.

-

After a backend server is removed, it cannot receive requests from the load balancer. You can add it back to the backend server group when the traffic goes up again.

-

If the load balancer is associated with an AS group, instances in the AS group are automatically added to the backend server group of the load balancer. If instances are removed from the AS group, they will be automatically removed from the backend server group.

-

Backend servers can reside in different subnets of the same VPC.

- - -

Adding Backend Servers

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups, locate the backend server group, and click its name.
  6. In the Basic Information area, click Add in the upper left corner of the server list. Select the subnet where the backend servers reside, select the backend servers you want to add, and click Next.
    • If a backend server has multiple NICs, you can only select the subnet where the primary NIC resides and use the primary NIC to add the backend server.
    • Backend servers cannot use virtual IP addresses.
    - -
  7. Set the weights and ports of backend server and click Finish.

    In the Backend Port text box, enter the port used by each backend server. If multiple backend servers use the same port, you can batch add the port in the Batch Add Port text box and then click OK.

    - -
  8. Click OK.
- -

Removing Backend Servers

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups, locate the backend server group, and click its name.
  6. In the Basic Information area, click Remove in the Operation column to remove a backend server. To remove multiple backend servers, select the backend servers you want to remove and click Remove above the server list.
  7. Click Yes.
- -

Adding a Backend Server Group

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Under Backend Server Groups, click Add Backend Server Group.
  6. In the Add Backend Server Group dialog box, configure the parameters.

    Configure the parameters based on Table 1 and Table 2.

    - -.. _en-us_topic_0052569729__table299811529239: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameters for configuring a backend server group

    Parameter

    -

    Description

    -

    Example Value

    -

    Name

    -

    Specifies the name of the backend server group.

    -

    server_group-sq4v

    -

    Backend Protocol

    -

    Specifies the protocol used by backend servers to receive requests.

    -

    The backend protocol can be TCP, UDP, or HTTP.

    -

    HTTP

    -

    Load Balancing Algorithm

    -

    Specifies the algorithm used by the load balancer to distribute traffic. The following options are available:

    -
    • Weighted round robin: Requests are routed to different servers based on their weights, which indicate server processing performance. Backend servers with higher weights receive proportionately more requests, whereas equal-weighted servers receive the same number of requests.
    • Weighted least connections: In addition to the number of active connections established with each backend server, each server is assigned a weight based on their processing capability. Requests are routed to the server with the lowest connections-to-weight ratio.
    • Source IP hash: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hashing key, and all backend servers are numbered. The generated key is used to allocate the client to a particular server. This allows requests from different clients to be routed based on source IP addresses and ensures that a client is directed to the same server that it was using previously.
    - NOTE:
    • Choose an appropriate algorithm based on your requirements for better traffic distribution.
    • For Weighted round robin or Weighted least connections, no requests will be routed to a server with a weight of 0.
    - -

    Weighted round robin

    -

    Sticky Session

    -

    Specifies whether to enable sticky sessions. If you enable sticky sessions, all requests from a client are sent to the same backend server.

    - NOTE:

    You can enable sticky sessions only if you select Weighted round robin for Load Balancing Algorithm.

    - -

    -

    -

    Sticky Session Type

    -

    After you enable the sticky session feature, select a sticky session type:

    -
    • Source IP address: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hashing key, and all backend servers are numbered. The system allocates the client to a particular server based on the generated key. This enables requests from different clients to be routed and ensures that a client is directed to the same server that it was using previously.
    • Load balancer cookie: The load balancer generates a cookie after receiving a request from the client. All subsequent requests with the same cookie are then routed to the same backend server.
    • Application cookie: The application deployed on the backend server generates a cookie after receiving the first request from the client. All requests with the same cookie generated by backend application are then routed to the same backend server.
    - NOTE:

    Choose an appropriate sticky session type to better distribute requests and improve load balancing.

    -
    • Sticky sessions at Layer 4 (for TCP or UDP listeners): only Source IP address
    • Sticky sessions at Layer 7 (for HTTP or HTTPS listeners): Load balancer cookie and Application cookie
    - -

    Load balancer cookie

    -

    Cookie Name

    -

    Specifies the cookie name. If you select Application cookie, enter a cookie name.

    -

    cookieName-qsps

    -

    Stickiness Duration (min)

    -

    Specifies the minutes that sticky sessions are maintained. You can enable sticky sessions only if you select Weighted round robin or Weighted least connections for Load Balancing Algorithm.

    -
    • Stickiness duration at Layer 4: 1 to 60
    • Stickiness duration at Layer 7: 1 to 1440
    -

    20

    -

    Description

    -

    Provides supplementary information about the backend server group.

    -

    You can enter a maximum of 255 characters.

    -

    -

    -
    - - -.. _en-us_topic_0052569729__table1022053182319: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 2 Parameters for configuring a health check

    Parameter

    -

    Description

    -

    Example Value

    -

    Enable Health Check

    -

    Specifies whether to enable health checks.

    -

    N/A

    -

    Protocol

    -
    • If the frontend protocol is TCP, HTTP or HTTPS, the health check protocol can be TCP or HTTP. The health check protocol cannot be changed once it is set.
    • If the frontend protocol is UDP, the health check protocol is UDP by default.
    -

    HTTP

    -

    Domain Name

    -

    Specifies the domain name that will be used for health checks.

    -

    The domain name can contain digits, letters, hyphens (-), and periods (.), and must start with a digit or letter. The field is left blank by default and is available only when the health check protocol is HTTP.

    -

    www.elb.com

    -

    Port

    -

    Specifies the port used by the load balancer to perform health checks on backend servers. The port number ranges from 1 to 65535.

    - NOTE:

    If you do not specify a health check port, the backend port will be used for health checks by default. If you specify a port, it will be used for health checks.

    - -

    80

    -

    Advanced Settings

    -

    Interval (s)

    -

    Specifies the maximum time between health checks, in seconds.

    -

    The interval ranges from 1 to 50.

    -

    5

    -

    Timeout (s)

    -

    Specifies the maximum time required for waiting for a response from the health check, in seconds. The timeout duration ranges from 1 to 50.

    -

    3

    -

    Check Path

    -

    Specifies the destination path for health checks. Configure this parameter only if you have set Protocol to HTTP. The path can contain 1 to 80 characters and must start with a slash (/).

    -

    /index.html

    -

    Maximum Retries

    -

    Specifies the maximum number of health check retries. The value ranges from 1 to 10.

    -

    3

    -
    - -
  7. Click OK.
- -

Modifying a Backend Server Group

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups, locate the backend server group, and click on the right of its name.
  6. Modify the parameters as needed and click OK.
- -

Deleting a Backend Server Group

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups, locate the backend server group, and click on the right of its name.
  6. Click Yes.
- - - - - - - diff --git a/elb/umn/temp/advanced_features_of_http_https_listeners.tmp b/elb/umn/temp/advanced_features_of_http_https_listeners.tmp deleted file mode 100644 index f5c2c7bd..00000000 --- a/elb/umn/temp/advanced_features_of_http_https_listeners.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

Advanced Features of HTTP/HTTPS Listeners

- - - - - diff --git a/elb/umn/temp/appendix.tmp b/elb/umn/temp/appendix.tmp deleted file mode 100644 index c31a15a8..00000000 --- a/elb/umn/temp/appendix.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

Appendix

- - - - - diff --git a/elb/umn/temp/application_scenarios.tmp b/elb/umn/temp/application_scenarios.tmp deleted file mode 100644 index f0c33c6f..00000000 --- a/elb/umn/temp/application_scenarios.tmp +++ /dev/null @@ -1,24 +0,0 @@ - - -

Application Scenarios

-

Heavy-Traffic Applications

For an application with heavy traffic, such as a large portal or mobile app store, ELB evenly distributes incoming traffic to multiple backend servers, balancing the load while ensuring steady performance.

-

Sticky sessions ensure that requests from one client are always forwarded to the same backend server for fast processing.

-Figure 1 Session stickiness
- -

Applications with Predictable Peaks and Troughs in Traffic

For an application that has predictable peaks and troughs in traffic volumes, ELB works with AS to add or remove backend servers to keep up with changing demands. An example is flash sales, during which application traffic spikes in a short period. ELB can work with AS to run only the required number of backend servers to handle the load of your application.

-Figure 2 Flexible scalability
- -

Zero SPOFs

ELB routinely performs health checks on backend servers to monitor their healthy state. If any backend server is detected unhealthy, ELB will not route requests to this server until it recovers.

-

This makes ELB a good choice for running services that require high reliability, such as websites and toll collection systems.

-Figure 3 Eliminating SPOFs
- -

Cross-AZ Load Balancing

ELB can distribute traffic across AZs. When an AZ becomes faulty, ELB distributes traffic across backend servers in other AZs.

-

ELB is ideal for banking, policing, and large application systems that require high availability.

-Figure 4 Traffic distribution to servers in one or more AZs
- - - - - - - diff --git a/elb/umn/temp/auditing.tmp b/elb/umn/temp/auditing.tmp deleted file mode 100644 index ff317bbe..00000000 --- a/elb/umn/temp/auditing.tmp +++ /dev/null @@ -1,13 +0,0 @@ - - -

Auditing

- - - - - diff --git a/elb/umn/temp/backend_server.tmp b/elb/umn/temp/backend_server.tmp deleted file mode 100644 index 7bd5ea9f..00000000 --- a/elb/umn/temp/backend_server.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Backend Server

- - - - - diff --git a/elb/umn/temp/basic_concepts.tmp b/elb/umn/temp/basic_concepts.tmp deleted file mode 100644 index a0c6c482..00000000 --- a/elb/umn/temp/basic_concepts.tmp +++ /dev/null @@ -1,81 +0,0 @@ - - -

Basic Concepts

- -.. _elb_pro_0001__table17643195014453: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Some concepts about ELB

Term

-

Definition

-

Load balancer

-

A load balancer distributes incoming traffic across backend servers.

-

Listener

-

A listener listens on requests from clients and routes the requests to backend servers based on the settings that you configure when you add the listener.

-

Backend server

-

A backend server is a cloud server added to a backend server group associated with a load balancer. When you add a listener to a load balancer, you can create or select a backend server group to receive requests from the load balancer by using the port and protocol you specify for the backend server group and the load balancing algorithm you select.

-

Backend server group

-

A backend server group is a collection of cloud servers that have same features. When you add a listener, you select a load balancing algorithm and create or select a backend server group. Incoming traffic is routed to the corresponding backend server group based on the listener's configuration.

-

Health check

-

ELB periodically sends requests to backend servers to check whether they can process requests. If a backend server is detected as unhealthy, the load balancer stops routing requests to it. After the backend server recovers, the load balancer will resume routing requests to it.

-

Redirect

-

HTTPS is an extension of HTTP. HTTPS encrypts data between a web server and a browser.

-

Sticky session

-

Sticky sessions ensure that requests from a client always get routed to the same backend server before a session elapses.

-

WebSocket

-

WebSocket is a new HTML5 protocol that provides full-duplex communication between the browser and the server. WebSocket saves server resources and bandwidth, and enables real-time communication. Both WebSocket and HTTP depend on TCP to transmit data. A handshake connection is required between the browser and server, so that they can communicate with each other only after the connection is established. However, as a bidirectional communication protocol, WebSocket is different from HTTP. After the handshake succeeds, both the server and browser (or client agent) can actively send data to or receive data from each other.

-

SNI

-

SNI is an extension to TLS and enables a server to present multiple certificates on the same IP address and TCP port number. This allows multiple secure (HTTPS) websites (or any other service over TLS) to be served by the same IP address without requiring all websites to use the same certificate. SNI allows the client to submit the domain name information while sending an SSL handshake request. Once the load balancer receives the request, it queries the right certificate based on the domain name and returns the corresponding certificate to the client. If no certificate is found, the load balancer will return a default certificate.

-

Persistent connection

-

A persistent connection allows multiple data packets to be sent continuously over a TCP connection. If no data packet is sent during the connection, the client and server send link detection packets to each other to maintain the connection.

-

Short connection

-

A short connection is a connection established when data is exchanged between the client and server and immediately closed after the data is sent.

-

Concurrent connection

-

Concurrent connections are total number of TCP connections initiated by clients and routed to backend servers by a load balancer per second.

-
- - - - - - - diff --git a/elb/umn/temp/binding_an_ip_address_to_or_unbinding_an_ip_address_from_a_load_balancer.tmp b/elb/umn/temp/binding_an_ip_address_to_or_unbinding_an_ip_address_from_a_load_balancer.tmp deleted file mode 100644 index b9a6f2f9..00000000 --- a/elb/umn/temp/binding_an_ip_address_to_or_unbinding_an_ip_address_from_a_load_balancer.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Binding an IP Address to or Unbinding an IP Address from a Load Balancer

-

Scenarios

You can bind an IP address to a load balancer or unbind an IP address from a load balancer based on service requirements. If you bind an EIP to a load balancer, it can route requests over the Internet. If the EIP is not needed any longer, you can unbind it from the load balancer.

-

You can only bind EIPs to or unbind EIPs from shared load balancers.

- -

Binding an EIP

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click More > Bind EIP in the Operation column.
  5. In the Bind EIP dialog box, select the EIP to be bound and click OK.
-

Alternatively, go to the basic information page of the load balancer and click Bind next to EIP.

- -

Unbinding an EIP

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click More > Unbind EIP in the Operation column.
  5. Click Yes.
-

Alternatively, go to the basic information page of the load balancer and click Unbind next to EIP.

- - - - - - - diff --git a/elb/umn/temp/can_backend_servers_access_the_internet_after_they_are_associated_with_a_load_balancer.tmp b/elb/umn/temp/can_backend_servers_access_the_internet_after_they_are_associated_with_a_load_balancer.tmp deleted file mode 100644 index a0d91f0c..00000000 --- a/elb/umn/temp/can_backend_servers_access_the_internet_after_they_are_associated_with_a_load_balancer.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

Can Backend Servers Access the Internet After They Are Associated with a Load Balancer?

-

Yes. Backend servers can access the Internet whether or not they are associated with a load balancer.

-

- - - - - - diff --git a/elb/umn/temp/can_backend_servers_run_different_oss.tmp b/elb/umn/temp/can_backend_servers_run_different_oss.tmp deleted file mode 100644 index 5c12e457..00000000 --- a/elb/umn/temp/can_backend_servers_run_different_oss.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

Can Backend Servers Run Different OSs?

-

Yes.

-

ELB does not restrict OSs of backend servers as long as applications on these servers are the same and the data is consistent. However, it is recommended that you install the same OS on backend servers to simplify management.

- - - - - - diff --git a/elb/umn/temp/can_elb_be_used_separately.tmp b/elb/umn/temp/can_elb_be_used_separately.tmp deleted file mode 100644 index 0daf4a85..00000000 --- a/elb/umn/temp/can_elb_be_used_separately.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

Can ELB Be Used Separately?

-

ELB cannot be used alone.

-

ELB is a service that distributes incoming traffic across servers and must be used with the ECS or BMS service.

- - - - - - diff --git a/elb/umn/temp/can_i_adjust_the_number_of_backend_servers_when_a_load_balancer_is_running.tmp b/elb/umn/temp/can_i_adjust_the_number_of_backend_servers_when_a_load_balancer_is_running.tmp deleted file mode 100644 index 3cf36f31..00000000 --- a/elb/umn/temp/can_i_adjust_the_number_of_backend_servers_when_a_load_balancer_is_running.tmp +++ /dev/null @@ -1,10 +0,0 @@ - - -

Can I Adjust the Number of Backend Servers When a Load Balancer is Running?

-

You can adjust the number of backend servers associated with a load balancer at any time. You can also change the type of backend servers according to your business needs. To ensure service stability, ensure that health checks are normal and that at least one healthy backend server is associated with the load balancer.

- - - - - - diff --git a/elb/umn/temp/certificate.tmp b/elb/umn/temp/certificate.tmp deleted file mode 100644 index b89da207..00000000 --- a/elb/umn/temp/certificate.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Certificate

- - - - - diff --git a/elb/umn/temp/certificate_and_private_key_format.tmp b/elb/umn/temp/certificate_and_private_key_format.tmp deleted file mode 100644 index 323316c8..00000000 --- a/elb/umn/temp/certificate_and_private_key_format.tmp +++ /dev/null @@ -1,54 +0,0 @@ - - -

Certificate and Private Key Format

-

Certificate Format

You can copy and paste the certificate content to create a certificate or directly upload the certificate.

-

A certificate issued by the Root CA is unique, and no additional certificates are required. The configured site is considered trustable by access devices such as a browser.

-

The certificate content must meet the following requirements:

-
  • The content starts with -----BEGIN CERTIFICATE----- and ends with -----END CERTIFICATE-----.
  • Each row contains 64 characters except the last row.
  • There are no empty rows.
-

The following is an example:

-
-----BEGIN CERTIFICATE-----
-MIIDIjCCAougAwIBAgIJALV96mEtVF4EMA0GCSqGSIb3DQEBBQUAMGoxCzAJBgNV
-BAYTAnh4MQswCQYDVQQIEwJ4eDELMAkGA1UEBxMCeHgxCzAJBgNVBAoTAnh4MQsw
-CQYDVQQLEwJ4eDELMAkGA1UEAxMCeHgxGjAYBgkqhkiG9w0BCQEWC3h4eEAxNjMu
-Y29tMB4XDTE3MTExMzAyMjYxM1oXDTIwMTExMjAyMjYxM1owajELMAkGA1UEBhMC
-eHgxCzAJBgNVBAgTAnh4MQswCQYDVQQHEwJ4eDELMAkGA1UEChMCeHgxCzAJBgNV
-BAsTAnh4MQswCQYDVQQDEwJ4eDEaMBgGCSqGSIb3DQEJARYLeHh4QDE2My5jb20w
-gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMU832iM+d3FILgTWmpZBUoYcIWV
-cAAYE7FsZ9LNerOyjJpyi256oypdBvGs9JAUBN5WaFk81UQx29wAyNixX+bKa0DB
-WpUDqr84V1f9vdQc75v9WoujcnlKszzpV6qePPC7igJJpu4QOI362BrWzJCYQbg4
-Uzo1KYBhLFxl0TovAgMBAAGjgc8wgcwwHQYDVR0OBBYEFMbTvDyvE2KsRy9zPq/J
-WOjovG+WMIGcBgNVHSMEgZQwgZGAFMbTvDyvE2KsRy9zPq/JWOjovG+WoW6kbDBq
-MQswCQYDVQQGEwJ4eDELMAkGA1UECBMCeHgxCzAJBgNVBAcTAnh4MQswCQYDVQQK
-EwJ4eDELMAkGA1UECxMCeHgxCzAJBgNVBAMTAnh4MRowGAYJKoZIhvcNAQkBFgt4
-eHhAMTYzLmNvbYIJALV96mEtVF4EMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEF
-BQADgYEAASkC/1iwiALa2RU3YCxqZFEEsZZvQxikrDkDbFeoa6Tk49Fnb1f7FCW6
-PTtY3HPWl5ygsMsSy0Fi3xp3jmuIwzJhcQ3tcK5gC99HWp6Kw37RL8WoB8GWFU0Q
-4tHLOjBIxkZROPRhH+zMIrqUexv6fsb3NWKhnlfh1Mj5wQE4Ldo=
------END CERTIFICATE-----
- -

Private Key Format

When creating a server certificate, you also need a private key. You can copy and paste the private key content or directly upload the private key in the required format.

-

Private keys must be unencrypted and their content must meet the following requirements:

-
  • The content must start with -----BEGIN RSA PRIVATE KEY----- and end with -----END RSA PRIVATE KEY-----.
  • There are no empty rows. Each row must contain 64 characters except the last row.
-

The following is an example:

-
-----BEGIN RSA PRIVATE KEY-----
-MIICXQIBAAKBgQDFPN9ojPndxSC4E1pqWQVKGHCFlXAAGBOxbGfSzXqzsoyacotu
-eqMqXQbxrPSQFATeVmhZPNVEMdvcAMjYsV/mymtAwVqVA6q/OFdX/b3UHO+b/VqL
-o3J5SrM86Veqnjzwu4oCSabuEDiN+tga1syQmEG4OFM6NSmAYSxcZdE6LwIDAQAB
-AoGBAJvLzJCyIsCJcKHWL6onbSUtDtyFwPViD1QrVAtQYabF14g8CGUZG/9fgheu
-TXPtTDcvu7cZdUArvgYW3I9F9IBb2lmF3a44xfiAKdDhzr4DK/vQhvHPuuTeZA41
-r2zp8Cu+Bp40pSxmoAOK3B0/peZAka01Ju7c7ZChDWrxleHZAkEA/6dcaWHotfGS
-eW5YLbSms3f0m0GH38nRl7oxyCW6yMIDkFHURVMBKW1OhrcuGo8u0nTMi5IH9gRg
-5bH8XcujlQJBAMWBQgzCHyoSeryD3TFieXIFzgDBw6Ve5hyMjUtjvgdVKoxRPvpO
-kclc39QHP6Dm2wrXXHEej+9RILxBZCVQNbMCQQC42i+Ut0nHvPuXN/UkXzomDHde
-h1ySsOAO4H+8Y6OSI87l3HUrByCQ7stX1z3L0HofjHqV9Koy9emGTFLZEzSdAkB7
-Ei6cUKKmztkYe3rr+RcATEmwAw3tEJOHmrW5ErApVZKr2TzLMQZ7WZpIPzQRCYnY
-2ZZLDuZWFFG3vW+wKKktAkAaQ5GNzbwkRLpXF1FZFuNF7erxypzstbUmU/31b7tS
-i5LmxTGKL/xRYtZEHjya4Ikkkgt40q1MrUsgIYbFYMf2
------END RSA PRIVATE KEY-----
- - - - - - - diff --git a/elb/umn/temp/change_history.tmp b/elb/umn/temp/change_history.tmp deleted file mode 100644 index 3770cb57..00000000 --- a/elb/umn/temp/change_history.tmp +++ /dev/null @@ -1,162 +0,0 @@ - - -

Change History

- -.. _en-us_elb_07_0000__table315225518207: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Released On

-

Description

-

2021-09-02

-

Modified the following content:

-

Optimized Differences Between Dedicated and Shared Load Balancers.

-

2021-07-27

-

Modified the following content:

-

Added the descriptions about idle timeout for shared load balancers.

-

2021-06-10

-

Modified the following content:

-

Added the descriptions of session stickiness duration.

-

2021-05-27

-

Modified the following content:

-

Changed the name of enhanced load balancers to shared load balancers.

-

2021-05-20

-

Modified the following content:

-

Added the constraints on binding EIPs to dedicated load balancers in the eu-de region in Table 1.

-

2021-04-08

-

Modified the following content:

- -

2021-03-02

-

Modified the following content:

- -

2020-12-10

-

Modified the following content:

-

Added descriptions and operations of dedicated load balancers in Creating a Dedicated Load Balancer.

-

2020-05-30

-

Modified the following content:

-

Modified the descriptions and operations in Migrating from Classic Load Balancers to Shared Load Balancers.

-

2020-02-26

-

Modified the following content:

-

Added Security Policy.

-

Modified the following content:

-

Added the Security Policy parameter in Adding a Listener.

-

2019-07-30

-

Modified the following content:

-
  • Added section "Regions and AZs".
-

2019-05-16

-

Modified the following content:

- -

2019-04-10

-

Accepted in OTC-4.0/Agile-05.2019.

-

2019-04-01

-

Modified the following content:

-

Updated console screenshots.

-

2019-03-04

-

Accepted in OTC 4.0/Agile.

-

2019-02-22

-

Modified the following content:

-
  • Updated the TOA download path in Configuring the TOA Plug-in.
  • Modified some parameters based on the latest console.
  • Optimized the parameter tables and operations for adding listeners in Listener.
-

Added the following content:

- -

2019-02-19

-

Modified the following content:

-
  • Modified the procedure for binding an EIP in section "Creating an Enhanced Load Balancer."
-

Added the following content:

-
  • Added parameters Redirected To and Enable Health Check to the table that describes parameters for adding a listener to an enhanced load balancer in section "Creating an Enhanced Load Balancer."
  • Added the procedure for unbinding an EIP in section "Creating an Enhanced Load Balancer."
-
  • Added the procedure for modifying listeners in Listener.
  • Added the procedure for modifying forwarding policies in Forwarding Policy.
-

2019-02-03

-

Modified the following content:

-
  • Modified the operations related to enhanced load balancers and associated resources (including listener, backend server group, backend server, health check, forwarding policy, and certificate) based on the management console.
  • Optimized the sections under Service Overview.
  • Modified the parameter descriptions of enhanced load balancer listeners in sections "Creating an Enhanced Load Balancer", "Listener", and "Certificate".
  • Changed OK to Yes in the procedures for deleting a load balancer, deleting a listener, removing a backend server, and deleting a certificate. Changed OK to Yes in some sections based on the latest console pages.
  • Modified the operations and the parameters for configuring bucket access permissions in Access Logging.
  • Removed Mutual Authentication from "FAQs" and placed it under "Management."
-Added the following content: - -

Deleted the following content:

-
  • Deleted the content related to IP mode listeners in section "Creating an Enhanced Load Balancer."
  • Deleted FAQ "How Can I Create a Listener in IP Mode?"
  • Deleted "Basic Architecture" and "Features" from "Service Overview."
-

2018-11-30

-

Modified the following content:

-

Added the SNI related parameters for enhanced load balancers.

-

2018-07-20

-

Modified the following content:

-

Added the procedure for adding a listener.

-

2018-06-11

-

Accepted in OTC 3.1.

-

2018-05-17

-

Modified the following content:

-

Deleted parameter Billing Mode.

-

2018-05-30

-

This issue is the first official release.

-
- - - diff --git a/elb/umn/temp/configuring_a_health_check.tmp b/elb/umn/temp/configuring_a_health_check.tmp deleted file mode 100644 index 0882021c..00000000 --- a/elb/umn/temp/configuring_a_health_check.tmp +++ /dev/null @@ -1,92 +0,0 @@ - - -

Configuring a Health Check

-

Scenarios

You can configure a health check when you add a listener. If you have no special requirements, retain the default settings.

- -

Function Description

  • The health check protocol can be different from the backend protocol.
  • To reduce the CPU usage of backend servers, you can use TCP for health checks. If you want to use HTTP for health checks, use static files to obtain the health statuses.
  • You can increase the health check interval to reduce the health check frequency.
  • After you enable health checks, the load balancer immediately checks the health of backend servers and will start routing requests over new connections. If a backend server becomes unhealthy, the load balancer will stop routing traffic to it. However, request routing over established connections is not affected. To ensure service availability, you can enable health checks during off-peak hours.
- -

Configuring a Health Check for a Shared Load Balancer

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups, locate the backend server group, and click its name.
  6. Click More in the Operation column.
  7. Select Configure Health Check from the drop-down list.
  8. In the Configure Health Check dialog box, configure the parameters based on Table 1. -.. _en-us_topic_0162227063__table95680412371: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameters for configuring a health check

    Parameter

    -

    Description

    -

    Example Value

    -

    Enable Health Check

    -

    Specifies whether to enable health checks.

    -

    N/A

    -

    Protocol

    -
    • Specifies the protocol used by the load balancer to perform health checks on backend servers. You can select either TCP or HTTP. A selected protocol cannot be changed.
    • If the frontend protocol is UDP, the health check protocol is UDP by default.
    -

    HTTP

    -

    Domain Name

    -

    Specifies the domain name that will be used for health checks.

    -

    The domain name can contain digits, letters, hyphens (-), and periods (.), and must start with a digit or letter. The field is left blank by default and is available only when the health check protocol is HTTP.

    -

    www.elb.com

    -

    Port

    -

    Specifies the port used by the load balancer to perform health checks on backend servers. The port number ranges from 1 to 65535.

    - NOTE:

    This parameter is optional. If you do not specify a health check port, a port of the backend server will be used for health checks by default. If you specify a port, it will be used for health checks.

    - -

    80

    -

    Advanced Settings

    -

    Interval (s)

    -

    Specifies the maximum time between health checks, in seconds.

    -

    The interval ranges from 1 to 50.

    -

    5

    -

    Timeout (s)

    -

    Specifies the maximum time required for waiting for a response from the health check, in seconds. The timeout duration ranges from 1 to 50.

    -

    3

    -

    Check Path

    -

    Specifies the destination path for health checks. Configure this parameter only if you have set Protocol to HTTP. The path can contain 1 to 80 characters and must start with a slash (/).

    -

    /index.html

    -

    Maximum Retries

    -

    Specifies the maximum number of health check retries. The value ranges from 1 to 10.

    -

    3

    -
    - -
  9. Click Finish.
- - - - - - - diff --git a/elb/umn/temp/configuring_security_group_rules_for_backend_servers_(dedicated_load_balancers).tmp b/elb/umn/temp/configuring_security_group_rules_for_backend_servers_(dedicated_load_balancers).tmp deleted file mode 100644 index be6fe38c..00000000 --- a/elb/umn/temp/configuring_security_group_rules_for_backend_servers_(dedicated_load_balancers).tmp +++ /dev/null @@ -1,25 +0,0 @@ - - -

Configuring Security Group Rules for Backend Servers (Dedicated Load Balancers)

-

Scenarios

When you add a backend server to a backend server group, ensure that the rules of the security group that containing the backend server allows access from the CIDR block of the VPC where the backend server resides, and that the destination port is that used by the backend server. You also need to configure the protocol and port used for health checks. If you use UDP for health checks, configure inbound rules to allow ICMP traffic. Otherwise, health checks cannot be performed on the added backend server.

-

If you have no VPCs when creating a server, the system will automatically create a VPC with default security rules. Default security group rules allow only communications among the servers in the VPC. You also need to configure inbound rules to enable the load balancer to communicate with these servers over the frontend port and health check port.

- -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Computing > Elastic Cloud Server.
  4. In the ECS list, locate the ECS and click its name.

    The ECS details page is displayed.

    -
  5. Click Security Groups, locate the security group, and view security group rules.
  6. Click the security group rule ID or Modify Security Group Rule. The security group details page is displayed.
  7. Under Inbound Rules, click Add Rule.

    TCP, HTTP, or HTTPS listeners

    -
    • If the health check port is not the one used by each backend server, add an inbound rule to allow TCP traffic over the health check port and the ports used by backend servers.
    • If you do not specify a health check port, add inbound rules to allow TCP traffic over the ports used by backend servers.
    • To ensure normal health checks, ensure that security group rules allow traffic from the CIDR block of the subnet where the load balancer resides and traffic from the health check port and from the ports used by backend servers.
    -

    UDP listeners

    -
    • If the health check port is not the one used by each backend server, add an inbound rule to allow UDP traffic over the health check port and the ports used by backend servers.
    • If you do not specify a health check port, add inbound rules to allow UDP traffic over the ports used by backend servers.
    • To ensure normal health checks, ensure that security group rules allow traffic from the CIDR block of the subnet where the load balancer resides and traffic from the health check port and from the ports used by backend servers.
    • You need also to add an inbound rule to allow ICMP traffic.
    -
  8. Click OK.
- -

Firewall Rule

You can associate one or more subnets with a firewall for controlling traffic in and out of the subnets. Similar to security groups, firewalls provide access control functions, but add an additional layer of defense to your VPC. Default firewall rules reject all inbound and outbound traffic. If the subnet of a load balancer or associated backend servers has a firewall associated, the load balancer cannot receive traffic from the Internet or route traffic to backend servers, and backend servers cannot receive traffic from and respond to the load balancer.

-

Configure an inbound firewall rule to allow access from the VPC CIDR block to backend servers.

-

-
  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Virtual Private Cloud.
  4. In the navigation pane on the left, choose Access Control > Firewalls.
  5. Locate the firewall, and click the firewall name to switch to the firewall details page.
  6. On the Inbound Rules or Outbound Rules tab page, click Add Rule to add a rule.
    • Action: Select Allow.
    • Protocol: The protocol must be the same as the frontend protocol you select when you add the listener.
    • Source: Set the value to the VPC CIDR block.
    • Source Port Range: Select the port range.
    • Destination: Enter the default value 0.0.0.0/0. Traffic will be destined for all IP addresses.
    • Destination Port Range: Select the port range.
    • Description: Enter a description for the firewall rule if necessary.
    -
  7. Click OK.
- - - - - - - diff --git a/elb/umn/temp/configuring_security_group_rules_for_backend_servers_(shared_load_balancers).tmp b/elb/umn/temp/configuring_security_group_rules_for_backend_servers_(shared_load_balancers).tmp deleted file mode 100644 index 77f1c6d7..00000000 --- a/elb/umn/temp/configuring_security_group_rules_for_backend_servers_(shared_load_balancers).tmp +++ /dev/null @@ -1,26 +0,0 @@ - - -

Configuring Security Group Rules for Backend Servers (Shared Load Balancers)

-

Scenarios

Before you add servers to a backend server group, ensure that their security groups have inbound rules that allow traffic from 100.125.0.0/16, and specify the health check protocol and port. Otherwise, health checks will be affected, and backend servers cannot receive requests from the load balancer. If UDP is used for health checks, inbound security group rules must also allow the ICMP traffic.

-

If you have no VPCs when creating a server, the system will automatically create a VPC with default security rules. Default security group rules allow only communications among the servers in the VPC. You also need to configure inbound rules to enable the load balancer to communicate with these servers over the frontend port and health check port.

- -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Computing > Elastic Cloud Server.
  4. In the ECS list, locate the ECS and click its name.

    The ECS details page is displayed.

    -
  5. Click Security Groups, locate the security group, and view security group rules.
  6. Click the security group rule ID or Modify Security Group Rule.

    The security group details page is displayed.

    -
  7. Under Inbound Rules, click Add Rule.

    TCP, HTTP, or HTTPS listeners

    -
    • If the health check port is not the one used by each backend server, add inbound rules to allow TCP traffic over the health check port and the ports used by backend servers.
    • If you do not specify a health check port, add inbound rules to allow TCP traffic over the ports used by backend servers.
    • The inbound rules must also allow access from 100.125.0.0/16. Otherwise, health checks will fail.
    -

    UDP listeners

    -
    • If the health check port is not the one used by each backend server, add inbound rules to allow UDP traffic over the health check port and the ports used by backend servers.
    • If you do not specify a health check port, add inbound rules to allow UDP traffic over the ports used by backend servers.
    • The inbound rules must also allow access from 100.125.0.0/16. Otherwise, health checks will fail.
    • You need also to add an inbound rule to allow ICMP traffic.
    -
  8. Click OK.
- -

Firewall Rule

You can associate one or more subnets with a firewall for controlling traffic in and out of the subnets. Similar to security groups, firewalls provide access control functions, but add an additional layer of defense to your VPC. Default firewall rules reject all inbound and outbound traffic. If the subnet of a load balancer or associated backend servers has a firewall associated, the load balancer cannot receive traffic from the Internet or route traffic to backend servers, and backend servers cannot receive traffic from and respond to the load balancer.

-

You can configure an inbound firewall rule to permit access from 100.125.0.0/16.

-

ELB translates public IP addresses that access backend servers into IP addresses in 100.125.0.0/16. You cannot configure firewall rules to prevent public IP addresses from accessing backend servers to allow traffic from 100.125.0.0/16 to all backend servers.

-
  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Under Network, click Virtual Private Cloud.
  4. In the navigation pane on the left, choose Access Control > Firewalls.
  5. Locate the firewall, and click the firewall name to switch to the firewall details page.
  6. On the Inbound Rules or Outbound Rules tab page, click Add Rule to add a rule.
    • Action: Select Allow.
    • Protocol: The protocol must be the same as the frontend protocol you select when you add the listener.
    • Source: Set the value to 100.125.0.0/16.
    • Source Port Range: Select the port range.
    • Destination: Enter the default value 0.0.0.0/0. Traffic will be destined for all IP addresses.
    • Destination Port Range: Select the port range.
    • Description: Enter a description for the firewall rule if necessary.
    -
  7. Click OK.
- - - - - - - diff --git a/elb/umn/temp/configuring_the_toa_plug-in.tmp b/elb/umn/temp/configuring_the_toa_plug-in.tmp deleted file mode 100644 index eefa7ae5..00000000 --- a/elb/umn/temp/configuring_the_toa_plug-in.tmp +++ /dev/null @@ -1,123 +0,0 @@ - - -

Configuring the TOA Plug-in

-

Scenarios

ELB provides customized strategies for managing service access. Before customizing these strategies, ELB needs to obtain the client's IP address contained in the access request. To obtain the IP addresses, you can install a TOA kernel module on backend servers.

-

This section provides detailed operations for you to compile the module in the OS if you use TCP to distribute incoming traffic.

-

The operations for Linux OSs with kernel version of 2.6.32 are different from those for Linux OSs with kernel version of 3.0 or later.

- -
  • TOA does not support listeners using the UDP protocol.
  • The module can work properly in the following OSs and the methods for installing other kernel versions are similar:
    • CentOS 6.8 (kernel version 2.6.32)
    • SUSE 11 SP3 (kernel version 3.0.76)
    • CentOS 7/7.2 (kernel version 3.10.0)
    • Ubuntu 16.04.3 (kernel version 4.4.0)
    • Ubuntu 18.04 (Kernel version 4.15.0)
    • OpenSUSE 42.2 (kernel version 4.4.36)
    • CoreOS 10.10.5 (kernel version 4.9.16)
    • Debian 8.2.0 (Kernel version 3.16.0)
    -
- -

Prerequisites

  • The development environment for compiling the module must be the same as that of the current kernel.
  • VMs can access OS repositories.
  • Users other than root must have sudo permissions.
- -

Procedure

  • In the following operations, the Linux kernel version is 3.0 or later.
-
  1. Prepare the compilation environment.

    During the installation, download the required module development package from the Internet if it cannot be found in the source.

    - -

    The following are operations for compiling the module in different Linux OSs. Perform appropriate operations.

    -
    • CentOS
      1. Run the following command to install the GCC:

        sudo yum install gcc

        -
      2. Run the following command to install the make tool:

        sudo yum install make

        -
      3. Run the following command to install the module development package (the package header and module library must have the same version as the kernel):

        sudo yum install kernel-devel-`uname -r`

        -

        During the installation, download the required module development package from the following address if it cannot be found in the source:

        -

        https://mirror.netcologne.de/oracle-linux-repos/ol7_latest/getPackage/

        -

        For example, to install 3.10.0-693.11.1.el7.x86_64, run the following command:

        -

        rpm -ivh kernel-devel-3.10.0-693.11.1.el7.x86_64.rpm

        - -
      -
    • Ubuntu and Debian
      1. Run the following command to install the GCC:

        sudo apt-get install gcc

        -
      2. Run the following command to install the make tool:

        sudo apt-get install make

        -
      3. Run the following command to install the module development package (the package header and module library must have the same version as the kernel):

        sudo apt-get install linux-headers-`uname -r`

        -
      -
    • SUSE
      1. Run the following command to install the GCC:

        sudo zypper install gcc

        -
      2. Run the following command to install the make tool:

        sudo zypper install make

        -
      3. Run the following command to install the module development package (the package header and module library must have the same version as the kernel):

        sudo zypper install kenel-default-devel

        -
      -
    • CoreOS

      For CoreOS, the module will be compiled in a container, and it must be started before the module is compiled.

      -

      For detailed operations, see the CoreOS documentation. Obtain the documentation from the following link:

      -

      https://coreos.com/os/docs/latest/kernel-modules.html

      -
    -
  2. Compile the module.
    1. Use the git tool and run the following command to download the module source code:

      git clone https://github.com/Huawei/TCP_option_address.git

      -

      If the git tool is not installed, download the module source code from the following link:

      -

      https://github.com/Huawei/TCP_option_address

      - -
    2. Run the following commands to enter the source code directory and compile the module:

      cd src

      -

      make

      -

      If no warning or error code is prompted, the compilation was successful. Verify that the toa.ko file was generated in the current directory.

      -

      If error message "config_retpoline=y but not supported by the compiler, Compiler update recommended" is displayed, the GCC version is too old. Upgrade the GCC to a later version.

      - -
    -
  3. Load the module.
    1. Run the following command to load the module:

      sudo insmod toa.ko

      -
    2. Run the following command to check the module loading and to view the kernel output information:

      dmesg | grep TOA

      -

      If TOA: toa loaded is displayed in the command output, the module has been loaded.

      -

      After compiling the CoreOS module in the container, copy it to the host system and then load it. The container for compiling the module shares the /lib/modules directory with the host system, so you can copy the module in the container to this directory, allowing the host system to use it.

      - -
    -
  4. Set the script to enable it to automatically load the module.

    To make the module take effect when the system starts, add the command for loading the module to your startup script.

    -

    You can use either of the following methods to automatically load the module:

    -
    • Add the command for loading the module to a customized startup script as required.
    • Perform the following operations to configure a startup script:
      1. Create the toa.modules file in the /etc/sysconfig/modules/ directory. This file contains the module loading script.

        The following is an example of the content in the toa.modules file.

        -

        #!/bin/sh

        -

        /sbin/modinfo -F filename /root/toa/toa.ko > /dev/null 2>&1

        -

        if [ $? -eq 0 ]; then

        -

        /sbin/insmod /root/toa/toa.ko

        -

        fi

        -

        /root/toa/toa.ko is the path of the module file. You need to replace it with their actual path.

        -
      2. Run the following command to add execution permissions for the toa.modules startup script:

        sudo chmod +x /etc/sysconfig/modules/toa.modules

        -

        If the kernel is upgraded, the current module will no longer match. Compile the module again.

        - -
      -
    -
  5. Install the module on multiple nodes.

    To load the module in the same OSs, copy the toa.ko file to VMs where the module is to be loaded and then perform the operations in 3.

    -

    After the module is successfully loaded, applications can obtain the real IP address contained in the request.

    -

    The OS of the node must have the same version as the kernel.

    - -
  6. Verify the module.

    After the module is successfully installed, the source address can be directly obtained. The following provides an example for verification.

    -

    Run the following command to start a simple HTTP service on the backend server where Python is installed:

    -

    python -m SimpleHTTPServer port

    -

    The value of port must be the same as the port configured for the backend server, and the default value is 80.

    -

    Access the IP address of the load balancer from a client. Access logs on the server are as follows:

    -
    192.168.0.90 - - [06/Aug/2020 14:24:21] "GET / HTTP/1.1" 200 –
    -

    192.168.0.90 indicates the client's source IP address that is obtained by the backend server.

    - -
- -
  • In the following operations, the Linux kernel version is 2.6.32.

    The TOA plug-in supports the OSs (CentOS 6.8 image) with a kernel of 2.6.32-xx. Perform the following steps to configure the module:

    - -
-
  1. Obtain the kernel source code package Linux-2.6.32-220.23.1.el6.x86_64.rs.src.tar.gz containing the module from the following link:

    http://kb.linuxvirtualserver.org/images/3/34/Linux-2.6.32-220.23.1.el6.x86_64.rs.src.tar.gz

    -
  2. Decompress the kernel source code package.
  3. Modify compilation parameters.
    1. Open the linux-2.6.32-220.23.1.el6.x86_64.rs folder.
    2. Edit the net/toa/toa.h file.

      Change the value of #define TCPOPT_TOA200 to #define TCPOPT_TOA254.

      -
    3. On the shell page, run the following commands:

      sed -i 's/CONFIG_IPV6=m/CONFIG_IPV6=y/g' .config

      -

      echo -e '\n# toa\nCONFIG_TOA=m' >> .config

      -

      After the configuration, the IPv6 module is compiled into the kernel. TOA is compiled into a separate module and can be independently started and stopped.

      -
    4. Edit Makefile.

      You can add a description to the end of EXTRAVERSION =. This description will be displayed in uname -r, for example, -toa.

      -
    -
  4. Run the following command to compile the software package:

    make -j n

    -

    n indicates the number of vCPUs. For example, if there are four vCPUs, n must be set to 4.

    - -
  5. Run the following command to install the module:

    make modules_install

    -

    The following information is displayed.

    -Figure 1 Installing the module
    -
  6. Run the following command to install the kernel:

    make install

    -

    The following information is displayed.

    -Figure 2 Installing the kernel
    -
  7. Open the /boot/grub/grub.conf file and configure the kernel to start up when the system starts.
    1. Change the default startup kernel from the first kernel to the zeroth kernel by changing default=1 to default=0.
    2. Add the nohz=off parameter to the end of the line containing the vmlinuz-2.6.32-toa kernel. If nohz is not disabled, the CPU0 usage may be high and overload the kernel.Figure 3 Configuration file
      -
    3. Save the modification and exit. Restart the OS.

      During the restart, the system will load the vmlinuz-2.6.32-toa kernel.

      -
    -
  8. After the restart, run the following command to load the module:

    modprobe toa

    -

    Add the modprobe toa command to both the startup script and the system scheduled monitoring script.

    -Figure 4 Adding the modprobe toa command
    -

    After the module is loaded, query the kernel information.

    -Figure 5 Querying the kernel
    -
  9. Verify the module.

    After the module is successfully installed, the source address can be directly obtained. The following provides an example for verification.

    -

    Run the following command to start a simple HTTP service on the backend server where Python is installed:

    -

    python -m SimpleHTTPServer port

    -

    The value of port must be the same as the port configured for the backend server, and the default value is 80.

    -

    Access the IP address of the load balancer from a client. Access logs on the server are as follows:

    -
    192.168.0.90 - - [06/Aug/2020 14:24:21] "GET / HTTP/1.1" 200 –
    -

    192.168.0.90 indicates the client's source IP address that is obtained by the backend server.

    - -
- - - - - - diff --git a/elb/umn/temp/configuring_weights_for_backend_servers.tmp b/elb/umn/temp/configuring_weights_for_backend_servers.tmp deleted file mode 100644 index bc73765d..00000000 --- a/elb/umn/temp/configuring_weights_for_backend_servers.tmp +++ /dev/null @@ -1,13 +0,0 @@ - - -

Configuring Weights for Backend Servers

-Each backend server can be given a numeral value from 0 to 100 to indicate the proportion of requests to receive. Requests will not be routed to the backend server whose weight is 0, even if the backend server is considered healthy. You can set a weight for each backend server when you select one of the following algorithms:
  • Weighted round robin: If none of the servers have a weight of 0, the load balancer routes requests to these servers using the round robin algorithm based on their weights. If two backend servers have the same weights, they receive the same number of requests.
  • Weighted least connections: If none of the servers have a weight of 0, the load balancer calculates the load of each backend server using the formula: Overhead = Number of current connections/Server weight. The load balancer routes requests to the backend server with the lowest overhead in each request distribution.
  • Source IP hash: Requests will not be routed to backend servers if their weights are set to 0. Server weights will not take effect if they are not 0, and requests from the same IP address will be routed to the same backend server.
- -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups, locate the backend server group and then the server, and click the number in the Weight column to set the server weight.
  6. Click OK.
- - - - - - - diff --git a/elb/umn/temp/converting_certificate_formats.tmp b/elb/umn/temp/converting_certificate_formats.tmp deleted file mode 100644 index d4a236c3..00000000 --- a/elb/umn/temp/converting_certificate_formats.tmp +++ /dev/null @@ -1,27 +0,0 @@ - - -

Converting Certificate Formats

-

Scenarios

ELB supports certificates only in PEM format. If you have a certificate in any other format, you must convert it to a PEM-encoded certificate. There are some common methods for converting a certificate from any other format to PEM.

- -

From DER to PEM

The DER format is usually used on a Java platform.

-

Run the following command to convert the certificate format:

-
openssl x509 -inform der -in certificate.cer -out certificate.pem
-

Run the following command to convert the private key format:

-
openssl rsa -inform DER -outform PEM -in privatekey.der -out privatekey.pem
- -

From P7B to PEM

The P7B format is usually used by Windows Server and Tomcat.

-

Run the following command to convert the certificate format:

-
openssl pkcs7 -print_certs -in incertificate.p7b -out outcertificate.cer
- -

From PFX to PEM

The PFX format is usually used by Windows Server.

-

Run the following command to convert the certificate format:

-
openssl pkcs12 -in certname.pfx -nokeys -out cert.pem
-

Run the following command to convert the private key format:

-
openssl pkcs12 -in certname.pfx -nocerts -out key.pem -nodes
- - - - - - - diff --git a/elb/umn/temp/creating_a_dedicated_load_balancer.tmp b/elb/umn/temp/creating_a_dedicated_load_balancer.tmp deleted file mode 100644 index 8a4a89ad..00000000 --- a/elb/umn/temp/creating_a_dedicated_load_balancer.tmp +++ /dev/null @@ -1,169 +0,0 @@ - - -

Creating a Dedicated Load Balancer

-

Scenarios

You have prepared everything required for creating a dedicated load balancer. For details, see Preparations for Creating a Load Balancer.

-

Dedicated load balancers can be created only in the eu-nl region. By default, load balancers created in this region are dedicated load balancers.

- -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Click Create Load Balancer and configure the parameters based on Table 1. -.. _elb_lb_000006__en-us_topic_0172674943_table08421211125410: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameter description

    Parameter

    -

    Description

    -

    Example Value

    -

    Type

    -

    Specifies the type of the load balancer.

    -

    Dedicated

    -

    Region

    -

    Specifies the region. Resources in different regions cannot communicate with each other over internal networks. For lower network latency and faster access to resources, select the nearest region.

    -

    eu-nl

    -

    AZ

    -

    Specifies the AZs of the load balancer. You can deploy the load balancer in multiple AZs to ensure service continuity and improve application reliability. When an AZ becomes faulty or unavailable, requests are quickly routed to backend servers in other AZs.

    -

    If backend servers reside in two AZs, for example, AZ 1 and AZ 2, but you plan to create the load balancer only in AZ 1, Xen ECSs cannot be used as clients.

    - NOTE:

    If you change the AZs of an existing load balancer, the load balancer may fail to route requests for several seconds. It is recommended that you plan the AZs in advance, or change the AZs during off-peak hours when necessary.

    - -

    N/A

    -

    Network Type

    -

    Specifies the type of the network where the load balancer works. You can select one or more network types.

    -
    • Public IPv4 network: The load balancer routes requests from the clients to backend servers over the Internet.
    • Private IPv4 network: The load balancer routes requests from the clients to backend servers in a VPC.
    - NOTE:

    If you do not select any of the options, the load balancer cannot communicate with the clients after it is created. When you are using ELB or testing network connectivity, ensure that the load balancer has a public or private IP address bound.

    - -

    Private IPv4 network

    -

    VPC

    -

    Specifies the VPC where the load balancer works. You need to configure this parameter regardless of the selected network type.

    -

    Select an existing VPC or create one.

    -

    For more information about VPC, see the Virtual Private Cloud User Guide.

    -

    vpc-4536

    -

    Subnet

    -

    Specifies the subnet where the load balancer will reside.

    -

    You need to configure this parameter regardless of the selected network type.

    -

    subnet-4536

    -

    Public IPv4 network configuration

    -

    EIP

    -

    If you select Public IPv4 network for Network Type, you need to bind an EIP to the load balancer. Two options are available:

    -
    • New EIP: The system will assign a new EIP to the load balancer.
    • Use existing: Select an existing EIP for the load balancer. NOTE:
      • By default, load balancers created in the eu-nl region are dedicated load balancers. You can unbind an EIP from a dedicated load balancer only on the ELB console if you no longer need the EIP.
      • If you bind a new EIP to the load balancer and specify a shared bandwidth, this EIP will be added to the shared bandwidth.
      • If you set EIP to New EIP when you create a dedicated load balancer in the eu-de region, the system will automatically assign and bind a dedicated EIP to the load balancer for exclusive use. This type of EIPs can be assigned only when you create dedicated load balancers and can only be bound to dedicated load balancers. If you set EIP to Use existing, you can select one from the dedicated EIPs that were assigned when you created dedicated load balancers and have been unbound from the dedicated load balancers.
      • To unbind an EIP from a load balancer, locate the load balancer and choose More > Unbind EIP in the Operation column.
      - -
    -

    N/A

    -

    EIP Type

    -

    Specifies the link type (BGP) when a new EIP is used.

    -

    Dynamic BGP

    -

    Private IPv4 network configuration

    -

    IPv4 Address

    -

    Specifies how you want the IPv4 address to be assigned.

    -
    • Automatically-assigned IP address: The system automatically assigns an IPv4 address to the load balancer.
    • Manually-specified IP address: Manually specify an IPv4 address to the load balancer.
    -

    Automatically-assigned IP address

    -

    Specification

    -
    • Select either Application load balancing (HTTP/HTTPS) or Network load balancing (TCP/UDP) or both, and then select the desired specification. You can select only one specification for Application load balancing (HTTP/HTTPS) and Network load balancing (TCP/UDP), respectively.
    • For application load balancing, the number of IP addresses varies depending on the specification. You can view the number of IP addresses required by the load balancer in the infotip after the selected subnet.
    • The performance of load balancers varies depending on the selected specifications. You can evaluate the actual traffic and select appropriate specifications based on the key metrics.
    • Dedicated load balancers have the following six specifications:
      • Small I
      • Small II
      • Medium I
      • Medium II
      • Large I
      • Large II
      -
    -

    Medium II

    -

    Name

    -

    Specifies the load balancer name.

    -

    elb93wd

    -

    Description

    -

    Provides supplementary information about the load balancer.

    -

    N/A

    -

    Tag

    -

    Identifies load balancers so that they can be easily found. A tag consists of a tag key and a tag value. The tag key marks a tag, and the tag value specifies the tag content. For details about the naming specifications, see Table 2.

    -
    • Key: elb_key1
    • Value: elb-01
    -
    - - -.. _elb_lb_000006__en-us_topic_0172674943_table1184315114541: - - - - - - - - - - - - - - - -
    Table 2 Tag naming rules

    Item

    -

    Requirement

    -

    Example Value

    -

    Tag key

    -
    • Cannot be left blank.
    • Must be unique for the same load balancer.
    • Can contain a maximum of 36 characters.
    • Cannot contain asterisks (*), angle brackets (< and >), backslashes (\), equal signs (=), commas (,), vertical bars (|), or slashes (/).
    • Can contain only the following character types:
      • Uppercase letters
      • Lowercase letters
      • Digits
      • Special characters, including hyphens (-) and underscores (_)
      -
    -

    elb_key1

    -

    Tag value

    -
    • Can contain a maximum of 43 characters.
    • Cannot contain asterisks (*), angle brackets (< and >), backslashes (\), equal signs (=), commas (,), vertical bars (|), or slashes (/).
    • Can contain only the following character types:
      • Uppercase letters
      • Lowercase letters
      • Digits
      • Special characters, including hyphens (-) and underscores (_)
      -
    -

    elb-01

    -
    - -
  5. Click Create Now.
  6. Confirm the configuration and submit your request.
- - - - - - - diff --git a/elb/umn/temp/creating_a_shared_load_balancer.tmp b/elb/umn/temp/creating_a_shared_load_balancer.tmp deleted file mode 100644 index 98ee04c3..00000000 --- a/elb/umn/temp/creating_a_shared_load_balancer.tmp +++ /dev/null @@ -1,136 +0,0 @@ - - -

Creating a Shared Load Balancer

-

Prerequisites

You have prepared everything required for creating a load balancer. For details, see Preparations for Creating a Load Balancer.

-

Load balancers receive requests from clients and route the requests to backend servers, which answer to these requests over the private network.

- -

Creating a Shared Load Balancer

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. On the Load Balancers page, click Create Elastic Load Balancer. Configure the parameters based on Table 1.

    - -.. _en-us_topic_0015479967__table1312515231668: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameters for creating a shared load balancer

    Parameter

    -

    Description

    -

    Example Value

    -

    Region

    -

    Specifies the region. Resources in different regions cannot communicate with each other over internal networks. For lower network latency and faster access to resources, select the nearest region.

    -

    N/A

    -

    Network Type

    -

    Specifies the network type of a load balancer.

    -
    • Public network: The load balancer routes requests from the clients to backend servers over the Internet.
    • Private network: The load balancer routes requests from the clients to backend servers in the same VPC.
    -

    Private network

    -

    VPC

    -

    Specifies the VPC where the load balancer works.

    -

    Select an existing VPC or create one.

    -

    For more information about VPC, see the Virtual Private Cloud User Guide.

    -

    N/A

    -

    Subnet

    -

    Specifies the subnet that the load balancer belongs to.

    -

    N/A

    -

    Private IP Address

    -

    Specifies how you want the IP address to be assigned.

    -
    • Automatically-assigned IP address: The system automatically assigns an IPv4 address to the load balancer.
    • Manually-specified IP address: Manually specify an IPv4 address to the load balancer.
    -

    Automatically-assigned IP address

    -

    EIP

    -

    Specifies the public IP address that will be bound to the load balancer for receiving and forwarding requests over the Internet.

    -

    The following options are available:

    -
    • New EIP: The system will automatically assign an EIP.
    • Use existing: Select an existing EIP.
    -

    New EIP

    -

    Bandwidth

    -

    Specifies the bandwidth when a new EIP is used, in the unit of Mbit/s.

    -

    10 Mbit/s

    -

    Name

    -

    Specifies the load balancer name.

    -

    elb-yss0

    -

    Description

    -

    Provides supplementary information about the load balancer.

    -

    N/A

    -

    Tag

    -

    Identifies load balancers so that they can be easily found. A tag consists of a tag key and a tag value. The tag key marks a tag, and the tag value specifies specific tag content.

    -

    For details about the naming specifications, see Table 2.

    -
    • Key: elb_key1
    • Value: elb-01
    -
    - - -.. _en-us_topic_0015479967__table212772311610: - - - - - - - - - - - - - - - -
    Table 2 Naming rules of load balancer tags

    Item

    -

    Requirement

    -

    Example Value

    -

    Tag key

    -
    • Cannot be left blank.
    • Must be unique for the same load balancer.
    • Can contain a maximum of 36 characters.
    • Cannot contain asterisks (*), angle brackets (< and >), backslashes (\), equal signs (=), commas (,), vertical bars (|), or slashes (/).
    • Can contain only the following character types:
      • Uppercase letters
      • Lowercase letters
      • Digits
      • Special characters, including hyphens (-) and underscores (_)
      -
    -

    elb_key1

    -

    Tag value

    -
    • Can contain a maximum of 43 characters.
    • Cannot contain asterisks (*), angle brackets (< and >), backslashes (\), equal signs (=), commas (,), vertical bars (|), or slashes (/).
    • Can contain only the following character types:
      • Uppercase letters
      • Lowercase letters
      • Digits
      • Special characters, including hyphens (-) and underscores (_)
      -
    -

    elb-01

    -
    - -
  5. Click Create Now.
  6. Confirm the configuration and submit your request.
- - - - - - - diff --git a/elb/umn/temp/creating_and_managing_a_certificate.tmp b/elb/umn/temp/creating_and_managing_a_certificate.tmp deleted file mode 100644 index c14a06ef..00000000 --- a/elb/umn/temp/creating_and_managing_a_certificate.tmp +++ /dev/null @@ -1,49 +0,0 @@ - - -

Creating and Managing a Certificate

-

Scenarios

To enable authentication for securing data transmission over HTTPS, ELB allows you to deploy certificates on load balancers.

-
  • A certificate can be bound to only one type of load balancer. Ensure that you have selected the correct type.
- - -

Creating a Certificate

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. In the navigation pane on the left, choose Certificates.
  5. Click Create Certificate. In the Create Certificate dialog box, configure the following parameters:
    • Certificate Name
    • Certificate Type
      • Server certificate: used for SSL handshake negotiations if an HTTPS listener is used. Both the certificate content and private key are required.
      • CA certificate: issued by a certificate authority (CA) and used to verify the certificate issuer. If HTTPS mutual authentication is required, HTTPS connections can be established only when the client provides a certificate issued by a specific CA.
      -
    • Domain Name: If the certificate is used for SNI, a domain name must be specified.
    • Certificate Content: The content must be in PEM format.

      Click Upload and select the certificate to be uploaded. Ensure that your browser is of the latest version.

      -

      The format of the certificate body is as follows:

      -
      -----BEGIN CERTIFICATE-----
      -Base64–encoded certificate
      ------END CERTIFICATE-----
      -
    • Private Key

      Click Upload and select the private key to be uploaded. Ensure that your browser is of the latest version.

      -Private Key: This must be an unencrypted private key. The format is as follows:
      -----BEGIN PRIVATE KEY-----
      -[key]
      ------END PRIVATE KEY-----
      -

      If there is a certificate chain, you need to configure the certificates in the following sequence: sub-certificate (server certificate), intermediate certificate, and root certificate. If the root certificate has been preset on the server and is not contained in the issued certificates, first configure the sub-certificate (server certificate) and then the intermediate certificate.

      - - -

      For example, if a CA issued a private key private.key and two certificates: a sub-certificate (server certificate) server.cer and an intermediate certificate mid.crt, paste the content of server.cer in the Certificate Content text box, press Enter, then paste the content of mid.crt in the Certificate Content text box, and paste the content of private.key in the Private Key text box to make the entire certificate chain take effect. The format of the certificate body in a certificate chain is as follows:

      -

      Certificate body

      -
      -----BEGIN CERTIFICATE-----
      -Content of the server certificate file server.cer
      ------END CERTIFICATE-----
      ------BEGIN CERTIFICATE-----
      -Content of the intermediate certificate file mid.crt
      ------END CERTIFICATE-----
      -

      Private key

      -
      -----BEGIN PRIVATE KEY-----
      -Content of the private key file private.key
      ------END PRIVATE KEY-----
      -
    • Domain Name

      If the created certificate is used for SNI, you need to specify a domain name. Only one domain name can be specified for each certificate, and the domain name must be the same as that in the certificate.

      -
    • Description
    -
  1. Click OK.
- -

Binding a Certificate

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Under Listeners, click Add Listener.
  6. In the Add Listener dialog box, configure the parameters. When Frontend Protocol is set to HTTPS, a server certificate must be bound to the listener.
  7. Click OK.
- -

Deleting a Certificate

Only certificates that are not in use can be deleted.

-
  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. In the navigation pane on the left, choose Certificates.
  5. Locate the certificate and click Delete in the Operation column.
  6. Click Yes.
- -

Modifying a Certificate

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. In the navigation pane on the left, choose Certificates.
  5. Locate the certificate and click Modify in the Operation column.
  6. Modify the parameters as required.
  7. Click OK.
- - - - - - - diff --git a/elb/umn/temp/deleting_a_load_balancer.tmp b/elb/umn/temp/deleting_a_load_balancer.tmp deleted file mode 100644 index 5fb5f931..00000000 --- a/elb/umn/temp/deleting_a_load_balancer.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Deleting a Load Balancer

-

Scenarios

You can delete a load balancer if you do not need it any longer.

-

A deleted load balancer cannot be recovered.

- -

After a public network load balancer is deleted, its EIP will not be released and can be used by other resources.

- -

Prerequisites

You have removed backend servers from the associated backend server groups, deleted the associated backend server groups, and deleted the listeners added to the load balancer.

- -

Deleting a Load Balancer

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click Delete in the Operation column.
  5. Click Yes.
- - - - - - - diff --git a/elb/umn/temp/differences_between_classic_and_shared_load_balancers.tmp b/elb/umn/temp/differences_between_classic_and_shared_load_balancers.tmp deleted file mode 100644 index 90248b24..00000000 --- a/elb/umn/temp/differences_between_classic_and_shared_load_balancers.tmp +++ /dev/null @@ -1,192 +0,0 @@ - - -

Differences Between Classic and Shared Load Balancers

-

Each type of load balancer has their advantages.

-
  • Classic load balancers are suitable for web services with low traffic and simple traffic patterns.

    Classic load balancers can no longer be created on the management console. Use shared load balancers or dedicated load balancers instead.

    - -
  • Shared load balancers are suitable for choices for web services with heavy traffic. (Shared load balancers were previously named enhanced load balancers.)
-

Table 1 compares the features supported by the two types of load balancers. √ indicates that an item is supported, and — indicates that an item is not supported.

- -.. _en-us_elb_01_0007__table4688103612223: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Features supported by each type of load balancers

Feature

-

Description

-

Classic

-

Shared

-

Load balancing over public and private networks

-
  • Each load balancer on a public network has a public IP address bound to it and routes requests from clients to backend servers over the Internet.
  • Load balancers on a private network work within a VPC and route requests from clients to backend servers in the same VPC.
-

√

-

√

-

Layer 4 and Layer 7 load balancing

-
  • Layer 4 load balancing: After receiving TCP or UDP requests from the clients, the load balancer directly routes the requests to backend servers. Load balancing at Layer 4 features high routing efficiency.
  • Layer 7 load balancing: After receiving an HTTP or HTTPS request, the load balancer identifies the fields in the HTTP/HTTPS packet header and routes the request based on these fields. Though the routing efficiency is lower than that at Layer 4, load balancing at Layer 7 provides some advanced features such as encrypted transmission and cookie-based sticky sessions.
-

√ (UDP is not supported for load balancers on a private network.)

-

√

-

Load balancing algorithm

-

Round robin, least connections, and source IP hash

-

√

-

√

-

Sticky session

-

If you enable sticky sessions, requests from the same client will be routed to the same backend server during the session.

-

√

-

√

-

WebSocket protocol

-

WebSocket is a new HTML5 protocol that provides full-duplex communication between the browser and the server. WebSocket saves server resources and bandwidth, and enables real-time communication.

-

√

-

√

-

Domain name- or URL-based forwarding

-

ELB allows you to add forwarding policies to forward requests to different backend server groups based on the domain names or URLs specified in the forwarding policies.

-

—

-

√ (Currently, you can add forwarding policies only to HTTP or HTTPS listeners.)

-

Adding ECSs as backend servers

-

You can add ECSs to backend server groups to handle requests from load balancers.

-

√

-

√

-

Whitelist-based access control

-

You can whitelist the IP addresses that can access a listener.

-

—

-

√

-

Standard OpenStack APIs

-

OpenStack APIs are supported and are compatible with self-developed APIs.

-

—

-

√

-

Adding BMSs as backend servers

-

BMSs can also be used as backend servers to handle requests distributed by load balancers.

-

—

-

√

-

SNI for certificates

-

Server Name Indication (SNI) is an extension to Transport Layer Security (TLS) and is used in cases that a server uses multiple domain names and certificates. After SNI is enabled, certificates corresponding to the domain names are required.

-

√

-

√

-

SSL protocol

-

Load balancers use SSL to receive requests from clients.

-

√

-

—

-

OBS storage for access logs

-

Access logs of load balancers can be dumped to OBS buckets for storage.

-

√

-

—

-

Server weight

-

You can configure different weights for backend servers when you select the round robin or least connections as the load balancing algorithm.

-

—

-

√

-

Modifying certificate content

-

You can modify the content of a certificate.

-

—

-

√

-

Mutual authentication

-

The identities of both communication parties are authenticated to ensure security. You need to deploy both the server certificate and client certificate. Only HTTPS listeners support this feature.

-

—

-

√

-

HTTP redirection

-

HTTP traffic is redirected to HTTPS. When the client sends an HTTP request, the backend server returns an HTTPS response.

-

—

-

√

-

Performance monitoring on a per listener basis

-

Cloud Eye allows you to monitor your resources, including load balancers.

-

—

-

√

-
- - - - - - - diff --git a/elb/umn/temp/differences_between_dedicated_and_shared_load_balancers.tmp b/elb/umn/temp/differences_between_dedicated_and_shared_load_balancers.tmp deleted file mode 100644 index 3a2bcb6e..00000000 --- a/elb/umn/temp/differences_between_dedicated_and_shared_load_balancers.tmp +++ /dev/null @@ -1,287 +0,0 @@ - - -

Differences Between Dedicated and Shared Load Balancers

-

Each type of load balancer has their advantages.

-
  • Dedicated load balancers have exclusive use of underlying resources, so that the performance of a dedicated load balancer is not affected by other load balancers. In addition, there are a wide range of specifications available for selection.
  • Shared load balancers share underlying resources so that the performance of a load balancer is affected by other load balancers. Shared load balancers were previously named enhanced load balancers.

    Currently, dedicated load balancers are supported only in the eu-nl region.

    - -
-

Advantages of Dedicated Load Balancers

  • Robust performance

    Each dedicated load balancer has exclusive use of isolated underlying resources and can provide guaranteed performance. A single dedicated load balancer deployed in one AZ can establish up to 20 million concurrent connections, and a load balancer deployed across two AZs can establish up to 40 million concurrent connections, meeting your requirements for handling a massive number of requests.

    -
  • High availability

    Dedicated load balancers provide a comprehensive health check mechanism to ensure that incoming traffic is routed to only healthy backend servers, improving the availability of your applications.

    -

    Dedicated load balancers on both public and private networks can route traffic across AZs and support automatic DR and service isolation between users.

    -
  • Ultra security

    Dedicated load balancers also allow you to select security policies that fit your security requirements.

    -
  • Multiple protocols

    Dedicated load balancers support the following protocols, including TCP, UDP, HTTP, and HTTPS, so that they can route requests from different types of applications.

    -
  • Hybrid load balancing

    Dedicated load balancers can route requests to both servers on the cloud and on premises, allowing you to leverage the public cloud to handle burst traffic.

    -
- -

Feature Comparisons

Dedicated load balancers provide more powerful forwarding performance, while shared load balancers are less expensive. You can select the appropriate load balancer based on your application needs. The following tables compare the features supported by the two types of load balancers. (√ indicates that an item is supported, and ╳ indicates that an item is not supported.)

- -.. _elb_pro_0004__en-us_topic_0000001192971589_table142931939192617: - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Supported protocols

Protocol

-

Description

-

Dedicated Load Balancers

-

Shared Load Balancers

-

TCP/UDP (Layer 4)

-

After receiving TCP or UDP requests from the clients, the load balancer directly routes the requests to backend servers. Load balancing at Layer 4 features high routing efficiency.

-

√

-

√

-

HTTP/HTTPS (Layer 7)

-

After receiving a request, the listener needs to identify the request and forward data based on the fields in the HTTP/HTTPS packet header. Though the routing efficiency is lower than that at Layer 4, load balancing at Layer 7 provides some advanced features such as encrypted transmission and cookie-based sticky sessions.

-

√

-

√

-

WebSocket

-

WebSocket is a new HTML5 protocol that provides full-duplex communication between the browser and the server. WebSocket saves server resources and bandwidth, and enables real-time communication.

-

√

-

√

-
- - -.. _elb_pro_0004__en-us_topic_0000001192971589_table9759549192919: - - - - - - - - - - - - - - - - - - -
Table 2 Supported Backend types

Backend Type

-

Description

-

Dedicated Load Balancers

-

Shared Load Balancers

-

ECS

-

You can use load balancers to distribute incoming traffic across ECSs.

-

√

-

√

-

BMS

-

You can use load balancers to distribute incoming traffic across BMSs.

-

√

-

√

-
- - -.. _elb_pro_0004__en-us_topic_0000001192971589_table593918591292: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 3 Advanced features

Feature

-

Description

-

Dedicated Load Balancers

-

Shared Load Balancers

-

Multiple specifications

-

Load balancers allow you to select appropriate specifications based on your requirements. For details, see Specifications of Dedicated Load Balancers.

-

√

-

x

-

HTTPS support

-

Load balancers can receive HTTPS requests from clients and route them to backend servers.

-

√

-

x

-

Mutual authentication

-

In this case, you need to deploy both the server certificate and client certificate.

-

Mutual authentication is supported only by HTTPS listeners.

-

√

-

√

-

SNI

-

Server Name Indication (SNI) is an extension to TLS and is used when a server uses multiple domain names and certificates. After SNI is enabled, certificates corresponding to the domain names are required.

-

√

-

√

-

Security policies

-

When you add HTTPS listeners, you can select desired security policies to improve service security. A security policy is a combination of TLS protocols and cipher suites.

-

√

-

√

-
- - -.. _elb_pro_0004__en-us_topic_0000001192971589_table95315574216: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 4 Other features

Feature

-

Description

-

Dedicated Load Balancers

-

Shared Load Balancers

-

Cross-AZ deployment

-

You can create a load balancer in multiple AZs. Each AZ selects an optimal path to process requests. In addition, the AZs back up each other, improving service processing efficiency and reliability.

-

√

-

x

-

Load balancing algorithms

-

Load balancers support weighted round robin, weighted least connections, and source IP hash.

-

√

-

√

-

Load balancing over public and private networks

-
  • Each load balancer on a public network has a public IP address bound to it and routes requests from clients to backend servers over the Internet.
  • Load balancers on a private network work within a VPC and route requests from clients to backend servers in the same VPC.
-

√

-

√

-

Modifying the bandwidth

-

You can modify the bandwidth used by the EIP bound to the load balancer as required.

-

√

-

√

-

Binding/Unbinding an IP address

-

You can bind an IP address to a load balancer or unbind the IP address from a load balancer based on service requirements.

-

√

-

√

-

Sticky session

-

If you enable sticky sessions, requests from the same client will be routed to the same backend server during the session.

-

√

-

√

-

Access control

-

You can add IP addresses to a whitelist or blacklist to control access to a listener.

-
  • A whitelist allows specified IP addresses to access the listener.
  • A blacklist denies access from specified IP addresses.
-

√

-

√

-

Health check

-

Load balancers periodically send requests to backend servers to check whether they can process requests.

-

√

-

√

-

Certificate management

-

You can create two types of certificates: server certificate and CA certificate. If you need an HTTPS listener, you need to bind a server certificate to it. To enable mutual authentication, you also need to bind a CA certificate to the listener. You can also replace a certificate that is already used by a load balancer.

-

√

-

√

-

Tagging

-

If you have a large number of cloud resources, you can assign different tags to the resources to quickly identify them and use these tags to easily manage your resources.

-

√

-

√

-

Support the display of monitoring metrics.

-

You can use Cloud Eye to monitor load balancers and associated resources and view metrics on the management console.

-

√

-

√

-

Log auditing

-

You can use Cloud Trace Service (CTS) to record operations on load balancers and associated resources for query, auditing, and backtracking.

-

√

-

√

-
- - - - - - - - diff --git a/elb/umn/temp/disabling_a_health_check.tmp b/elb/umn/temp/disabling_a_health_check.tmp deleted file mode 100644 index c836b015..00000000 --- a/elb/umn/temp/disabling_a_health_check.tmp +++ /dev/null @@ -1,14 +0,0 @@ - - -

Disabling a Health Check

-

Scenarios

If you do not require health check, you can disable it when you add listeners. If you have already added listeners with health check enabled, you can also disable it when you modify the listeners.

-

After health check is disabled, the load balancer will consider all backend servers healthy and will still route requests to a backend server even if this server becomes faulty or is working abnormally. As a result, applications on this server are inaccessible. If this happens, ensure that the ports used by the backend servers are normal. You are advised not to disable health checks unless necessary.

- -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  1. Click Backend Server Groups, locate the backend server group, and click its name.
  2. Click More in the Operation column.
  3. Select Configure Health Check from the drop-down list.
  1. In the Configure Health Check dialog box, disable the health check.
  1. Click OK.
- - - - - - - diff --git a/elb/umn/temp/elb_functionality.tmp b/elb/umn/temp/elb_functionality.tmp deleted file mode 100644 index fc2002da..00000000 --- a/elb/umn/temp/elb_functionality.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

ELB Functionality

- - - - - - - - diff --git a/elb/umn/temp/elb_use.tmp b/elb/umn/temp/elb_use.tmp deleted file mode 100644 index 71645394..00000000 --- a/elb/umn/temp/elb_use.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

ELB Use

-

- - - - - - - - diff --git a/elb/umn/temp/enabling_or_disabling_a_load_balancer.tmp b/elb/umn/temp/enabling_or_disabling_a_load_balancer.tmp deleted file mode 100644 index 767f4c7b..00000000 --- a/elb/umn/temp/enabling_or_disabling_a_load_balancer.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Enabling or Disabling a Load Balancer

-

Scenarios

You can enable or disable a load balancer at any time. A disabled load balancer cannot distribute traffic.

-

You can enable or disable only classic load balancers.

-

Classic load balancers can no longer be created on the management console. Use shared load balancers or dedicated load balancers instead.

- - -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer, and click More > Enable or More > Disable.
  5. Click Yes.
- - - - - - - diff --git a/elb/umn/temp/exporting_the_load_balancer_list.tmp b/elb/umn/temp/exporting_the_load_balancer_list.tmp deleted file mode 100644 index f8beead6..00000000 --- a/elb/umn/temp/exporting_the_load_balancer_list.tmp +++ /dev/null @@ -1,13 +0,0 @@ - - -

Exporting the Load Balancer List

-

Scenarios

You can export the load balancer list for backup.

- -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. In the upper right corner of the load balancer list, click .
- - - - - - - diff --git a/elb/umn/temp/faqs.tmp b/elb/umn/temp/faqs.tmp deleted file mode 100644 index 1e6d0246..00000000 --- a/elb/umn/temp/faqs.tmp +++ /dev/null @@ -1,27 +0,0 @@ - - -

FAQs

- - - - - diff --git a/elb/umn/temp/forwarding_policy.tmp b/elb/umn/temp/forwarding_policy.tmp deleted file mode 100644 index cf2d58dc..00000000 --- a/elb/umn/temp/forwarding_policy.tmp +++ /dev/null @@ -1,164 +0,0 @@ - - -

Forwarding Policy

-

Scenarios

You can add forwarding policies to HTTP or HTTPS listeners to forward requests to different backend server groups based on domain names or URLs.

-

This is suited for applications that are deployed on multiple backend servers and provide multiple types of services such as videos, images, audios, and texts.

-

A forwarding policy consists of a forwarding rule and an action.

-
  • There are two types of forwarding rules: domain name and URL.
  • The only supported action is to forward requests to another backend server group.
- -

Constraints and Limitations

  • Forwarding policies can be added only to HTTP and HTTPS listeners.
  • When you add a forwarding policy, note the following:
    • Each URL path must exist on the backend servers. Otherwise, the backend servers return 404 to the load balancer.
    • A URL path cannot be configured for two forwarding policies.
    • In regular expression match, the characters are matched sequentially, and matching ends when any rule is successfully matched. Matching rules cannot overlap with each other.
    -
  • After you add a forwarding policy, the load balancer forwards requests based on the specified domain name or URL:
    • If the domain name or URL in a request matches that specified in the forwarding policy, the request is forwarded to the backend server group you select when you add the forwarding policy.
    • If the domain name or URL in a request does not match that specified in the forwarding policy, the request is forwarded to the default backend server group of the listener.
    -
-

If you add a forwarding policy that is the same as an existing forwarding policy, there will be a conflict. Even if you delete the existing forwarding policy, the newly-added forwarding policy is still in the Faulty state. Delete both the forwarding policies and add two different forwarding policies.

- -

- -

Adding a Forwarding Policy

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Listeners, locate the listener, and click its name.
  6. Click Add on the right of Forwarding Policies.
  7. In the Add Forwarding Policy dialog box, configure the parameters based on Table 1.
  8. Click OK.

    Alternatively, locate the load balancer in the load balancer list and click the name of the listener in the Listener column. In the Listeners area, click Add on the right of Forwarding Policies and then add a forwarding policy.

    -
- -.. _en-us_topic_0114694934__table10859681016: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Forwarding policy parameters

Item

-

Parameter

-

Description

-

Example Value

-

Configure Forwarding Policy

-

Name

-

Specifies the forwarding policy name.

-

forwarding_policy-q582

-

Domain Name

-

Specifies the domain name used for forwarding requests. The domain name in the request must exactly match that in the forwarding policy. You need to specify either a domain name or URL.

-

www.test.com

-

URL Matching Rule

-
  • Exact match

    The request URL is identical to the preset URL.

    -
  • Prefix match

    The requested URL starts with the specified URL string.

    -
  • Regular expression matchThe requested URL matches the specified URL string based on the regular expression. NOTE:
    • Exact match has the highest priority, followed by Prefix match. Regular expression match has the lowest priority.
    • If you use prefix match, the longest string is chosen. For example, if there are two preset URLs: /elb and /elbvip and the accessed URL is /elbvipplus, /elbvip is preferentially matched.
    - - -
-

Exact match

-

URL

-

Specifies the URL used for forwarding requests.

-

/login.php

-

Description

-

Provides supplementary information about the forwarding policy.

-

N/A

-

Add Backend Server Group

-

Backend Server Group

-

Specifies whether a new or existing backend server group will be used. Select Create new or Use existing.

-

If you select Create new, configure the parameters based on Table 1 and Table 2.

- NOTE:

The backend protocol can only be HTTP.

- -

Create new

-
- - -

URL Matching Example

The following table lists how a URL is matched, and Figure 1 shows how a request is forwarded to a backend server group.

- - -.. _en-us_topic_0114694934__table5831113119590: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 2 URL matching

URL Matching Rule

-

URL

-

URL in the Forwarding Policy

-

-

-

-

-

/elb/index.html

-

/elb

-

/elb[^\s]*

-

/index.html

-

Exact match

-

/elb/index.html

-

√

-

-

-

-

-

-

-

Prefix match

-

√

-

√

-

-

-

-

-

Regular expression match

-

√

-

-

-

√

-

-

-
- -Figure 1 Request forwarding
-

In this figure, the system first searches for an exact match of the requested URL (/elb_gls/glossary.html). If there is no exact match, the system searches for a prefix match. If a match is found, the request is forwarded to backend server group 2 even if a regular expression match is also found, because the prefix match has a higher priority.

-

Modifying a Forwarding Policy

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Listeners, locate the listener, and click its name.
  6. Click Forwarding Policies.
  7. Locate the forwarding policy and click on the right of its name.
  8. In the Modify Forwarding Policy dialog box, modify the parameters and click OK.
- -

Deleting a Forwarding Policy

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Listeners, locate the listener, and click its name.
  6. Click Forwarding Policies.
  7. Locate the forwarding policy and click on the right of its name.
  8. Click Yes.
- - - - - - - diff --git a/elb/umn/temp/getting_started.tmp b/elb/umn/temp/getting_started.tmp deleted file mode 100644 index d408ba3e..00000000 --- a/elb/umn/temp/getting_started.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Getting Started

- - - - - diff --git a/elb/umn/temp/health_check.tmp b/elb/umn/temp/health_check.tmp deleted file mode 100644 index d609a404..00000000 --- a/elb/umn/temp/health_check.tmp +++ /dev/null @@ -1,13 +0,0 @@ - - -

Health Check

- - - - - diff --git a/elb/umn/temp/how_can_i_obtain_the_ip_address_of_a_client.tmp b/elb/umn/temp/how_can_i_obtain_the_ip_address_of_a_client.tmp deleted file mode 100644 index 13e9d9a7..00000000 --- a/elb/umn/temp/how_can_i_obtain_the_ip_address_of_a_client.tmp +++ /dev/null @@ -1,80 +0,0 @@ - - -

How Can I Obtain the IP Address of a Client?

-

When you use ELB to route requests to backend servers, IP addresses of the clients will be translated by the ELB system. This FAQ provides the operations for obtaining the IP addresses of the clients.

-

Constraints and Limitations

  • If Network Address Translation (NAT) or Web Application Firewall (WAF) is used, you cannot obtain the IP addresses of the clients.
  • If the client is a container, you can obtain only the IP address of the node where the container is located, but cannot obtain the IP address of the container.
  • If the Obtain Client IP Address option is enabled for TCP or UDP listeners, a cloud server cannot be used as a backend server and a client at the same time. In this case, you can configure the TOA plug-in to obtain the source IP addresses.
  • By default, the Obtain Client IP Address option is enabled for TCP and UDP listeners of dedicated load balancers. You do not need to manually enable it.
- -

Layer 7 Load Balancing

Configure the application server and obtain the IP address of a client from the HTTP header.

- -

The real IP address is placed in the X-Forwarded-For header field by the load balancer in the following format:

-
X-Forwarded-For: IP address of the client,Proxy server 1-IP address,Proxy server 2-IP address,...
-

If you use this method, the first IP address obtained is the IP address of the client.

-

Apache Server

-
  1. Install Apache 2.4.

    For example, if CentOS 7.5 is used as the OS, run the following command to install the software:

    -
    yum install httpd
    -
  2. Add the following content to the end of Apache configuration file /etc/httpd/conf/httpd.conf:
    LoadModule remoteip_module modules/mod_remoteip.so
    -RemoteIPHeader X-Forwarded-For
    -RemoteIPInternalProxy 100.125.0.0/16
    -Figure 1 Content to be added
    -

    Add the IP address range of the proxy server after RemoteIPInternalProxy.

    -
    • Shared load balancers: 100.125.0.0/16 and the IP address range used by the AAD service. 100.125.0.0/16 is used by load balancers to communicate with backend servers, and there are no security risks. Use commas (,) to separate multiple entries.
    • Dedicated load balancers: the CIDR block of the subnet where the load balancer resides
    - -
  3. Change the log output format in the Apache configuration file to the following (%a indicates the source IP address):
    LogFormat "%a %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    -
  4. Restart Apache.
    systemctl restart httpd
    -
  5. Obtain the actual IP address of the client from the httpd access logs.
-

Nginx Server

-

For example, if CentOS 7.5 is used as the OS, run the following command to install the software:

-
  1. Run the following commands to install http_realip_module:
    yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
    -wget http://nginx.org/download/nginx-1.17.0.tar.gz
    -tar zxvf nginx-1.17.0.tar.gz
    -cd nginx-1.17.0
    -./configure --prefix=/path/server/nginx --with-http_stub_status_module --without-http-cache --with-http_ssl_module --with-http_realip_module
    -make
    -make install
    -
  2. Run the following command to open the nginx.conf file:
    vi /path/server/nginx/conf/nginx.conf
    -
  3. Add the following content under http or server:
    ;100.125.0.0/16set_real_ip_from 
    -real_ip_header X-Forwarded-For;
    -Figure 2 Content to be added
    -

    Add the IP address range of the proxy server after set_real_ip_from.

    -
    • Shared load balancers: 100.125.0.0/16 and the IP address range used by the AAD service. (100.125.0.0/16 is used by load balancers to communicate with backend servers, and there are no security risks. Use commas to separate multiple entries.
    -
    • Dedicated load balancers: the CIDR block of the subnet where the load balancer resides
    - -
  4. Start Nginx.
    /path/server/nginx/sbin/nginx
    -
  5. Obtain the actual IP address of the client from the Nginx access logs.
    cat /path/server/nginx/logs/access.log
    -
-

Tomcat Servers

-

In the following operations, the Tomcat installation path is /usr/tomcat/tomcat8/.

-
  1. Log in to a server on which Tomcat is installed.
  2. Check whether Tomcat is running properly.
    ps -ef|grep tomcat
    -netstat -anpt|grep java
    -Figure 3 Tomcat running properly
    -
  3. Add the following configuration items to the server.xml file:
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
    -prefix="localhost_access_log." suffix=".txt"
    -pattern="%{X-FORWARDED-FOR}i %l %u %t %r %s %b %D %q %{User-Agent}i %T" resolveHosts="false" />
    -Figure 4 Example configuration
    -
  4. Restart the Tomcat service.
    cd /usr/tomcat/tomcat8/bin && sh startup.sh
    -

    In this command, /usr/tomcat/tomcat8/ is the Tomcat installation path. Change it based on site requirements.

    -Figure 5 Restarting the Tomcat service
    -
  5. View the latest logs.

    As highlighted in the following figure, IP addresses that are not in the IP address range starting with 100.125 are the source IP addresses.

    -
    cat localhost_access_log..2020-09-10.txt
    -

    In this command, localhost_access_log..2020-09-10.txt indicates the log path of the current day. Change it based on site requirements.

    -Figure 6 Querying the source IP address
    -
-

Windows Server with IIS Deployed

-

The following uses Windows Server 2012 with IIS7 as an example to describe how to obtain the source IP address.

-
  1. Download and install IIS.
  2. Download the F5XForwardedFor.dll plug-in and copy the plug-ins in the x86 and x64 directories to a directory for which IIS has the access permission, for example, C:\F5XForwardedFor2008.
  3. Open the Server Manager and choose Modules > Configure Native Modules.Figure 7 Selecting modules
    -Figure 8 Configure Native Modules
    -
  4. Click Register to register the x86 and x64 plug-ins.Figure 9 Registering plug-ins
    -
  5. In the Modules dialog box, verify that the registered plug-ins are displayed in the list.Figure 10 Confirming the registration
    -
  6. Select ISAPI Filters on the Server Manager homepage and authorize two plug-ins to run ISAPI and CGI extensions.Figure 11 Adding authorization
    -
  7. Select ISAPI and CGI Restriction to set the execution permission for the two plug-ins.Figure 12 Allowing the plug-ins to execute
    -
  8. Click Restart on the homepage to restart IIS. The configuration will take effect after the restart.Figure 13 Restarting IIS
    -
-

Layer 4 Load Balancing

TCP listeners require the TOA plug-in to obtain real IP addresses. For details, see Configuring the TOA Plug-in.

- - - - - - - - diff --git a/elb/umn/temp/how_can_i_use_websocket.tmp b/elb/umn/temp/how_can_i_use_websocket.tmp deleted file mode 100644 index 7d5dcef8..00000000 --- a/elb/umn/temp/how_can_i_use_websocket.tmp +++ /dev/null @@ -1,10 +0,0 @@ - - -

How Can I Use WebSocket?

-

For HTTP listeners, unencrypted WebSocket (ws://) is supported by default. For HTTPS listeners, encrypted WebSocket (wss://) is supported by default.

- - - - - - diff --git a/elb/umn/temp/how_do_i_check_if_sticky_sessions_fail_to_take_effect.tmp b/elb/umn/temp/how_do_i_check_if_sticky_sessions_fail_to_take_effect.tmp deleted file mode 100644 index 4bdb8436..00000000 --- a/elb/umn/temp/how_do_i_check_if_sticky_sessions_fail_to_take_effect.tmp +++ /dev/null @@ -1,10 +0,0 @@ - - -

How Do I Check If Sticky Sessions Fail to Take Effect?

-
  1. Check whether sticky sessions are enabled for the backend server group. If sticky sessions are enabled, go to the next step.
  2. Check the health check result of the backend server. If the health check result is Unhealthy, traffic is routed to other backend servers and sticky sessions become invalid.
  3. If you select the source IP hash algorithm, check whether the IP address of the request changes before the load balancer receives the request.
  4. If an HTTP or HTTPS listener is configured with sticky sessions enabled, check whether the request carries a cookie. If yes, check whether the cookie value changes (because load balancing at Layer 7 uses cookies to maintain sessions).
- - - - - - diff --git a/elb/umn/temp/how_do_i_check_if_traffic_is_evenly_distributed.tmp b/elb/umn/temp/how_do_i_check_if_traffic_is_evenly_distributed.tmp deleted file mode 100644 index e109658d..00000000 --- a/elb/umn/temp/how_do_i_check_if_traffic_is_evenly_distributed.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

How Do I Check If Traffic Is Evenly Distributed?

-
  1. Check whether sticky sessions are enabled. If sticky sessions are enabled and there are few clients, traffic may be unevenly distributed.
  2. Check the health of backend servers, especially those whose health changes over time. If the health check result is Unhealthy or switches between Healthy and Unhealthy, traffic is unbalanced.
  3. Check whether the Source IP hash algorithm is used. If the algorithm is used, requests sent from the same IP address are routed to the same backend server, resulting in unbalanced traffic.
  4. Check whether applications on the backend server use keepalive to maintain TCP persistent connections. If keepalive is used, traffic may be unbalanced because the number of requests on persistent connections is different.
  5. Check whether different weights are assigned to backend servers. The traffic varies according to the weights.
-

Generally, in addition to the load balancing algorithm, factors that affect load balancing include connection type, session stickiness, and server weights.

- - - - - - - diff --git a/elb/umn/temp/how_do_i_check_the_network_conditions_of_a_backend_server.tmp b/elb/umn/temp/how_do_i_check_the_network_conditions_of_a_backend_server.tmp deleted file mode 100644 index 7413b694..00000000 --- a/elb/umn/temp/how_do_i_check_the_network_conditions_of_a_backend_server.tmp +++ /dev/null @@ -1,14 +0,0 @@ - - -

How Do I Check the Network Conditions of a Backend Server?

-
  1. Verify that an IP address has been assigned to the server's primary NIC.
    1. Log in to the server. (An ECS is used as an example here.)
    2. Run the ifconfig or ip address command to view the IP address.

      For Windows ECSs, run ipconfig on the CLI to view their IP addresses.

      - -
    -
  2. Ping the gateway of the subnet where the ECS resides to check basic network communication.
    1. On the VPC details page, locate the subnet and view the gateway address in the Gateway column. Generally, the gateway address ends with .1.
    2. Ping the gateway from the ECS. If the gateway cannot be pinged, check the networks at Layer 2 and Layer 3.
    -
- - - - - - diff --git a/elb/umn/temp/how_do_i_check_the_network_configuration_of_a_backend_server.tmp b/elb/umn/temp/how_do_i_check_the_network_configuration_of_a_backend_server.tmp deleted file mode 100644 index 0a161d1d..00000000 --- a/elb/umn/temp/how_do_i_check_the_network_configuration_of_a_backend_server.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

How Do I Check the Network Configuration of a Backend Server?

-
  1. Check whether the security group of the server is correctly configured.
    1. On the server details page, view the security group.
    2. Check whether the security group allows access from IP addresses in 100.125.0.0/16. If access is not allowed, add inbound rules for 100.125.0.0/16.
    -
  2. Ensure that the network ACLs of the subnet where the server resides does not intercept the traffic.

    In the left navigation pane on the VPC console, choose Access Control> Network ACLs and check whether the subnet allows traffic.

    -
- - - - - - diff --git a/elb/umn/temp/how_do_i_check_the_status_of_a_backend_server.tmp b/elb/umn/temp/how_do_i_check_the_status_of_a_backend_server.tmp deleted file mode 100644 index d7f18455..00000000 --- a/elb/umn/temp/how_do_i_check_the_status_of_a_backend_server.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

How Do I Check the Status of a Backend Server?

-
  1. Verify that the applications on the backend server are enabled.
    1. Log in to the backend server. (An ECS is used as an example here.)
    2. Run the following command to check the port status:

      netstat -ntpl

      - For Windows ECSs, run the netstat -ano command on the CLI to view the port status or server software status.Figure 1 Port status
      - - -
    -
  2. Check the network communication of the ECS.

    For example, if the ECS uses port 80, run the curl command to check whether the communication is normal.

    -

    -
- - - - - - diff --git a/elb/umn/temp/how_do_i_check_traffic_inconsistency.tmp b/elb/umn/temp/how_do_i_check_traffic_inconsistency.tmp deleted file mode 100644 index e59082bb..00000000 --- a/elb/umn/temp/how_do_i_check_traffic_inconsistency.tmp +++ /dev/null @@ -1,10 +0,0 @@ - - -

How Do I Check Traffic Inconsistency?

-

Check for failed requests on the clients, especially when 4xx status codes are returned. A possible cause is that the requests are rejected by ELB and are not routed to backend servers because ELB considers these requests abnormal.

- - - - - - diff --git a/elb/umn/temp/how_do_i_troubleshoot_an_unhealthy_backend_server.tmp b/elb/umn/temp/how_do_i_troubleshoot_an_unhealthy_backend_server.tmp deleted file mode 100644 index a6241529..00000000 --- a/elb/umn/temp/how_do_i_troubleshoot_an_unhealthy_backend_server.tmp +++ /dev/null @@ -1,168 +0,0 @@ - - -

How Do I Troubleshoot an Unhealthy Backend Server?

-

Symptom

If a client cannot access a backend server through a load balancer, the backend server is declared unhealthy. You can check the health check result of the backend server on the ELB console.

-
  • Dedicated load balancers

    On the Load Balancers page, click the name of the load balancer to view its details. Click Backend Server Groups and locate the server group. In the Basic Information area, view the health check result of the backend server.

    -
-
  • Shared load balancers

    On the Load Balancers page, click the name of the load balancer to view its details. Click Backend Server Groups and locate the server group. In the Basic Information area, view the health check result of the backend server.

    -
- -

Background

The load balancer uses IP addresses in 100.125.0.0/16 to send heartbeats to backend servers and check their health. To ensure that health checks can be performed normally, IP addresses in 100.125.0.0/16 must be allowed to access the backend servers.

-

Security group rules configured for backend servers associated with dedicated load balancers are different from those configured for backend servers associated with shared load balancers.

-
  • Classic and shared load balancers: Ensure that security group rules allow access from IP addresses in 100.125.0.0/16.
  • Dedicated load balancers: Ensure that security group rules allow access from IP addresses in the CIDR block of the VPC where the backend server resides.

    For details about how to configure security groups for backend servers associated with dedicated load balancers, see Configuring Security Group Rules for Backend Servers (Dedicated Load Balancers).

    -
- -

If a backend server is considered unhealthy, ELB will not route traffic to it until it is declared healthy again.

-

If you change the weight of a healthy backend server to 0, the health check result of this server becomes Unhealthy.

-
  • When a backend server is detected as unhealthy, the load balancer will stop routing requests to this server.
  • If health checks are disabled, the load balancer will consider the backend server healthy by default and still route requests to it.
  • ELB uses IP addresses in 100.125.0.0/16 to perform health checks and route requests to backend servers.
  • If the Obtain Client IP Address option is enabled for TCP and UDP listeners of both dedicated and shared load balancers, client IP addresses instead of the IP addresses in 100.125.0.0/16 are used to communicate with the backend server.
  • Traffic is not routed to a backend server with a weight of 0, and the health check result for the backend server is not relevant.
- - -

Troubleshooting Procedure

Possible causes are sequenced based on their occurrence probability.

-

Check these causes one by one until the fault persists.

-

You may need to change the health check configuration. It takes a while for the modification to take effect. The required time depends on health check interval and timeout duration. View the health check result in the backend server list of the load balancer.

- -Figure 1 Troubleshooting process
- -.. _en-us_topic_0018127975__table11639162722113: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Troubleshooting process

Possible Cause

-

Solution

-

Backend server group

-

Checking Whether the Backend Server Group Is Associated with a Listener

-

Health check configuration

-

Checking the Health Check Configuration

-

Security group rules

-

Checking Security Group Rules

-

Network ACL rules

-

Checking Firewall Rules

-

Backend server listening configuration

-

Checking the Backend Server

-

Backend server firewall configuration

-

Checking the Firewall on the Backend Server

-

Backend server route configuration

-

Checking the Backend Server Route

-

Backend server load

-

Checking the Backend Server Load

-

Backend server host.deny file

-

Checking the host.deny File

-
- - -

Checking Whether the Backend Server Group Is Associated with a Listener

Check whether the backend server group that the unhealthy backend server belongs to is associated with a listener.

-
  • If the backend server group is not associated with a listener, check whether a listener has been added to the load balancer.
    • If a listener has been added. Associate the backend server group with the listener.
    • If no listeners exist. Add a listener. Select Use existing and then select the backend server group when you add the listener.
    -
  • If the backend server group has been associated with a listener, proceed with the following operations.
- -

Checking the Health Check Configuration

Classic load balancers: In the Listeners area, locate the listener with an unhealthy backend server associated and click View in the Health Check column. The Health Check dialog box is displayed. Check the following parameters:

-
  • Health check protocol and port

    The health check port must be the one used on the backend server, and it cannot be customized.

    -

    Check whether the health check port is the one that the load balancer is listening to. If the two ports are inconsistent, the health check will become abnormal.

    -
  • Check Path. If HTTP is used for health checks, you must check this parameter. A simple static HTML file is recommended.

    Enter an absolute path.

    -

    Examples:

    -

    If the URL is http://www.example.com/chat/try/, the health check path is /chat/try/.

    -

    If the URL is http://192.168.63.187:9096/chat/index.html, the health check path is /chat/index.html.

    - -

    -
-

Shared load balancers: Click the name of the load balancer to view its details. Click Backend Server Groups and then click the name of the server group. On the Basic Information page, click Configure on the right of Health Check. Check the following parameters:

-
  • Protocol
  • Port The port must be the one used on the backend server, and it cannot be customized. Check whether the health check port is the one that the load balancer is listening to. If the two ports are inconsistent, the health check will become abnormal.
  • Check Path If HTTP is used for health checks, you must check this parameter. A simple static HTML file is recommended.
- -
  • If the health check protocol is HTTP, the port and the path are used for health checks.
  • If the health check protocol is TCP, only the port is used for health checks.
  • If health check protocol is HTTP and the health check port is normal, change the path or change the health check protocol to TCP.
  • Enter an absolute path.

    Examples:

    -

    If the URL is http://www.example.com/chat/try/, the health check path is /chat/try/.

    -

    If the URL is http://192.168.63.187:9096/chat/index.html, the health check path is /chat/index.html.

    -
- - -

Checking Security Group Rules

  • Dedicated Load balancers

    The inbound rules of the security group that the backend server belongs to must allow traffic to the VPC where the load balancer resides.

    -
  • SharedELB
    • TCP, HTTP, or HTTPS listeners: Verify that the inbound rule of the security group containing the backend server allows access from 100.125.0.0/16 and allows the traffic from the health check port.
      • If the health check port is the same as the backend port, the inbound rule must allow traffic from the backend port, for example, 80.
      • If the health check port is different from the backend port, the inbound rule must allow traffic from both the health check port and backend port, for example, 443 and 80.

        You can check the protocol and port in the basic information area of the backend server group.

        - -
      -Figure 2 Example inbound rule
      -
    • UDP listeners: Verify that the inbound rule of the security group allows traffic from the health check protocol, health check port, and 100.125.0.0/16. In addition, the ICMP traffic must be allowed in the inbound direction.Figure 3 Example inbound rule that allows ICMP traffic
      -
    -
  • Classic load balancers on a private network: Verify that the TCP traffic is allowed over the health check port in the VPC.Figure 4 Example inbound rule that allows TCP traffic within the VPC
    -
-
  • TCP, HTTP, or HTTPS listeners: Verify that the inbound rule of the security group containing the backend server allows access from 100.125.0.0/16 and allows the traffic from the health check port.
    • If the health check port is the same as the backend port, the inbound rule must allow traffic from the backend port, for example, 80.
    • If the health check port is different from the backend port, the inbound rule must allow traffic from both the health check port and backend port, for example, 443 and 80.

      You can check the protocol and port in the basic information area of the backend server group.

      - -
    -Figure 5 Example inbound rule
    -
  • UDP listeners: Verify that the inbound rule of the security group allows traffic from the health check protocol, health check port, and 100.125.0.0/16. In addition, the ICMP traffic must be allowed in the inbound direction.Figure 6 Example inbound rule that allows ICMP traffic
    -
  • Classic load balancers on a private network: Verify that the TCP traffic is allowed over the health check port in the VPC.Figure 7 Example inbound rule that allows TCP traffic within the VPC
    -
-
  • Access to the backend server from IP addresses in 100.125.0.0/16 must be allowed. Load balancers communicate with backend servers using these IP addresses. After traffic is routed to backend servers, source IP addresses are converted to IP addresses starting with 100.125. In addition, the IP address of the health check node is allocated from 100.125.0.0/16.
  • If you are not sure about the security group rules, change the protocol and port range to All just for testing purposes.
  • For UDP listeners, see How Does ELB Perform UDP Health Checks? What Are the Precautions for UDP Health Checks?
- - -

Checking Firewall Rules

You can associate one or more subnets with a firewall for controlling traffic in and out of the subnets. Similar to security groups, firewalls provide access control functions, but add an additional layer of defense to your VPC. Default firewall rules reject all inbound and outbound traffic. If the subnet of a load balancer or associated backend servers has a firewall associated, the load balancer cannot receive traffic from the Internet or route traffic to backend servers, and backend servers cannot receive traffic from and respond to the load balancer.

-

You can configure an inbound firewall rule to permit access from 100.125.0.0/16.

-
  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Under Network, click Virtual Private Cloud.
  4. In the navigation pane on the left, choose Access Control > Firewalls.
  5. Locate the firewall, and click the firewall name to switch to the firewall details page.
  6. On the Inbound Rules or Outbound Rules tab page, click Add Rule to add a rule.
    • Action: Select Allow.
    • Protocol: The protocol must be the same as the frontend protocol you select when you add the listener.
    • Source: Set the value to 100.125.0.0/16.
    • Source Port Range: Select the port range.
    • Destination: Enter the default value 0.0.0.0/0. Traffic will be destined for all IP addresses.
    • Destination Port Range: Select the port range.
    • Description: Enter a description for the firewall rule if necessary.
    -
  7. Click OK.
- -

Checking the Backend Server

If the backend server runs a Windows OS, use a browser to access https://Backend server IP address:Health check port. If a 2xx or 3xx code is returned, the backend server is running normally.

- -
  • Run the following command on the backend server to check whether the health check port is listened on:
    netstat -anlp | grep port
    -

    If the health check port and LISTEN are displayed, the backend port is in the listening state. As shown in Figure 8, TCP port 880 is listened on.

    -If you do not specify a health check port, backend ports are used by default.Figure 8 Backend server port listened on
    - -Figure 9 Backend server port not listened on
    -
  • For HTTP health checks, run the following command on the backend server to check the status code:
    curl Private IP address of the backend server:Health check port/Health check path -iv
    -

    To perform an HTTP health check, the load balancer initiates a GET request to the backend server. If the following response status codes are displayed, the backend server is considered healthy:

    -

    TCP listeners: 200

    -

    Public network classic load balancers: 2xx or 3xx

    -

    Dedicated load balancers: 200 for TCP/UDP/HTTP/HTTPS health checks

    -

    Shared load balancers: 200, 202, or 401 for HTTP health checks, and 200 for TCP health checks

    -Figure 10 Unhealthy backend server
    -Figure 11 Healthy backend server
    -
  • If HTTP is used for health checks and the backend server is detected unhealthy, perform the following steps to configure a TCP health check:

    On the Listeners tab page, modify the listener, select the backend server group for which TCP health check has been configured, or add a backend server group and select TCP as the health check protocol. After you complete the configuration, wait for a while and check the health check result.

    -
- -

Checking the Firewall on the Backend Server

The firewall or other security software on the backend server may mask IP addresses in 100.125.0.0/16. Ensure that access from 100.125.0.0/16 is allowed in the security group containing the backend server.

- -

Checking the Backend Server Route

Check whether the default route configured for the primary NIC has been manually modified. If the default route is changed, health check packets may fail to reach the backend server.

-Run the following command on the backend server to check whether the default route points to the gateway (For Layer 3 communications, the default route must be configured to point to the gateway):
ip route
- -

Alternatively, run the following command:

-
route -n
-

If the command output does not contain the highlighted route or the IP address to which the route points is not the gateway address of the VPC subnet, change the route to the default one.

-Figure 12 Example default route pointing to the gateway
-Figure 13 Example default route not pointing to the gateway
- -

Checking the Backend Server Load

Check the load of the backend server. If the load is high, connections or requests for health checks may time out.

- -

Checking the host.deny File

Verify that IP addresses in 100.125.0.0/16 are not written to the /etc/hosts.deny file on the backend server.

- - - - - - - diff --git a/elb/umn/temp/how_does_elb_distribute_traffic.tmp b/elb/umn/temp/how_does_elb_distribute_traffic.tmp deleted file mode 100644 index ea9f81d0..00000000 --- a/elb/umn/temp/how_does_elb_distribute_traffic.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

How Does ELB Distribute Traffic?

-

ELB uses FullNAT to forward the incoming traffic. For load balancing at Layer 4, LVS forwards the incoming traffic to backend servers directly. For load balancing at Layer 7, LVS forwards the incoming traffic to Nginx, which then forwards the traffic to backend servers.

-Figure 1 Load balancing at Layer 4
-Figure 2 Load balancing at Layer 7
- - - - - - diff --git a/elb/umn/temp/how_does_elb_perform_udp_health_checks_what_are_the_precautions_for_udp_health_checks.tmp b/elb/umn/temp/how_does_elb_perform_udp_health_checks_what_are_the_precautions_for_udp_health_checks.tmp deleted file mode 100644 index a87b0b32..00000000 --- a/elb/umn/temp/how_does_elb_perform_udp_health_checks_what_are_the_precautions_for_udp_health_checks.tmp +++ /dev/null @@ -1,42 +0,0 @@ - - -

How Does ELB Perform UDP Health Checks? What Are the Precautions for UDP Health Checks?

-

How UDP Health Checks Work

UDP is a connectionless protocol, and a UDP health check is implemented as follows:

- -
  1. The health check node sends an ICMP request message to the backend server based on the health check configuration.
    • If the health check node receives an ICMP reply message from the backend server, it considers the backend server healthy and continues the health check.
    • If the health check node does not receive an ICMP reply message from the backend server, it considers the backend server unhealthy.
    -
  2. After receiving the ICMP reply message, the health check node sends a UDP probe packet to the backend server.
    • If the health check node receives an ICMP Port Unreachable message from the backend server within the timeout duration, the backend server is considered unhealthy.
    • If the health check node does not receive an ICMP Port Unreachable message from the backend server within the timeout duration, the backend server is considered healthy.
    -
-

When you use UDP for health checks, retain default parameter settings.

-

Troubleshooting Procedure

If the backend server is unhealthy, use either of the following methods to locate the fault:

- -
  1. Check whether the timeout duration is too short.

    A possible cause is that the ICMP Echo Reply or ICMP Port Unreachable message returned by the backend server does not reach the health check node within the timeout duration. As a result, the health check result is inaccurate.

    -

    It is recommended that you change the timeout duration to a larger value.

    -

    UDP health checks are different from other health checks. If the health check timeout duration is too short, the health check result of the backend server changes between Healthy and Unhealthy frequently.

    -
  2. Check whether the backend server restricts the rate at which ICMP messages are generated.
-

For Linux servers, run the following commands to query the rate limit and rate mask:

-
sysctl -q net.ipv4.icmp_ratelimit
-

The default rate limit is 1000.

-
sysctl -q net.ipv4.icmp_ratemask
-

The default rate mask is 6168.

-

If the returned value of the first command is the default value or 0, run the following command to remove the rate limit of Port Unreachable messages:

-
sysctl -w net.ipv4.icmp_ratemask=6160
-

For more information, see the Linux Programmer's Manual. On the Linux CLI, run the following command to display the manual:

-
man 7 icmp
-

Alternatively, visit http://man7.org/linux/man-pages/man7/icmp.7.html.

-

Once the rate limit is lifted, the number of ICMP Port Unreachable messages on the backend server will not be limited.

- -

Precautions

Note the following when you configure UDP health checks:

- -
  • UDP health checks use ping packets to detect the health of the backend server. To ensure smooth transmission of these packets, ensure that ICMP is enabled on the backend server by performing the following:

    Log in to the server and run the following command as user root:

    -

    cat /proc/sys/net/ipv4/icmp_echo_ignore_all

    -
    • If the returned value is 1, ICMP is disabled.
    • If the returned value is 0, ICMP is enabled.
    -
  • The health check result may be different from the actual health of the backend server.

    If the backend server runs a Linux OS, the rate of ICMP packets is limited due to protection from ICMP floods of Linux when there is a large number of concurrent requests. In this case, if a service exception occurs, the load balancer will not receive error message port XX unreachable and will still determine that the health check is successful. As a result, there is an inconsistency between the health check result and the actual server health.

    -
  • UDP listeners cannot be added to a private network classic load balancer.

    Classic load balancers can no longer be created on the management console.

    - -
- - - - - - diff --git a/elb/umn/temp/how_elb_works.tmp b/elb/umn/temp/how_elb_works.tmp deleted file mode 100644 index 31451f7e..00000000 --- a/elb/umn/temp/how_elb_works.tmp +++ /dev/null @@ -1,24 +0,0 @@ - - -

How ELB Works

-

To balance the load of your applications, create a load balancer to receive requests from clients and route the requests to backend servers in one or more AZs. Add at least a listener to the load balancer and associate at least a backend server with it. The load balancing algorithm you select when you add the listener determines how requests are distributed.

-

Load Balancing Algorithms

Shared load balancers and dedicated load balancers support the following load balancing algorithms:

-
  • Weighted round robin: Requests are routed to different servers based on their weights, which indicate server processing performance. Backend servers with higher weights receive proportionately more requests, whereas equal-weighted servers receive the same number of requests. This algorithm is often used for short connections, such as HTTP connections.

    The following figure shows an example of how requests are distributed using the weighted round robin algorithm. Two backend servers are in the same AZ and have the same weight, and each server receives the same proportion of requests.

    -Figure 1 Traffic distribution using the weighted round robin algorithm
    -
  • Weighted least connections: In addition to the weight assigned to each server, the number of connections processed by each backend server is also considered. Requests are routed to the server with the lowest connections-to-weight ratio. In addition to the number of connections, each server is assigned a weight based on its capacity. Requests are routed to the server with the lowest connections-to-weight ratio. This algorithm is often used for persistent connections, such as connections to a database.

    The following figure shows an example of how requests are distributed using the weighted least connections algorithm. Two backend servers are in the same AZ and have the same weight, 100 connections have been established with backend server 01, and 50 connections have been connected with backend server 02. New requests are preferentially routed to backend server 02.

    -Figure 2 Traffic distribution using the weighted least connections algorithm
    -
  • Source IP hash: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hashing key, and all backend servers are numbered. The generated key is used to allocate the client to a particular server. This allows requests from different clients to be routed based on source IP addresses and ensures that a client is directed to the same server that it was using previously. This algorithm works well for TCP connections of load balancers that do not use cookies.

    The following figure shows an example of how requests are distributed using the source IP hash algorithm. Two backend servers are in the same AZ and have the same weight. If backend server 01 has processed a request from IP address A, the load balancer will route new requests from IP address A to backend server 01.

    -Figure 3 Traffic distribution using the source IP hash algorithm
    -
- -Classic load balancers support the following load balancing algorithms:
  • Round robin: Requests are distributed sequentially, evenly across all servers. This algorithm is often used for short connections, such as HTTP connections.
  • Least connections: Requests are preferentially routed to backend servers with the minimum number of active connections. This algorithm is often used for persistent connections, such as connections to a database.
  • Source IP hash: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hashing key, and all backend servers are numbered. The generated key is used to allocate the client to a particular server. This allows requests from different clients to be routed based on source IP addresses and ensures that a client is directed to the same server that it was using previously. This algorithm works well for TCP connections of load balancers that do not use cookies.
-

Classic load balancers can no longer be created on the management console. Use shared load balancers or dedicated load balancers instead.

- - - - - - - - - diff --git a/elb/umn/temp/how_many_load_balancers_and_listeners_can_i_have.tmp b/elb/umn/temp/how_many_load_balancers_and_listeners_can_i_have.tmp deleted file mode 100644 index b5a1e4ec..00000000 --- a/elb/umn/temp/how_many_load_balancers_and_listeners_can_i_have.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

How Many Load Balancers and Listeners Can I Have?

-

By default, you can use an account to create a maximum of 50 shared and dedicated load balancers and 100 listeners. If you need more load balancers or listeners, apply to increase the quotas.

-

All load balancers in your account share the quota of listeners.

- - - - - - diff --git a/elb/umn/temp/http_https_listener.tmp b/elb/umn/temp/http_https_listener.tmp deleted file mode 100644 index 4ea53917..00000000 --- a/elb/umn/temp/http_https_listener.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

HTTP/HTTPS Listener

-

- - - - - - - - diff --git a/elb/umn/temp/http_redirection_to_https.tmp b/elb/umn/temp/http_redirection_to_https.tmp deleted file mode 100644 index 060ef96f..00000000 --- a/elb/umn/temp/http_redirection_to_https.tmp +++ /dev/null @@ -1,59 +0,0 @@ - - -

HTTP Redirection to HTTPS

-

Scenarios

HTTPS is an extension of HTTP. HTTPS encrypts data between a web server and a browser.

-

If you enable redirection, all HTTP requests to your website are transmitted over HTTPS connections to improve service security.

-

HTTP requests are forwarded to the HTTPS listener as HTTPS requests, which are then routed to backend servers over HTTP.

- - -

Prerequisites

  • An HTTPS listener has been added.
  • An HTTP listener has been added.
- -

Creating a Redirect

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Listeners, locate the HTTP listener, and click its name.
  6. Click Redirects and then Create on the right. -.. _en-us_topic_0118840332__table5765638104311: - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameters for configuring redirection

    Parameter

    -

    Description

    -

    Example Value

    -

    Name

    -

    Specifies the redirect name.

    -

    redirect-g8h9

    -

    Redirected To

    -

    Specifies the HTTPS listener to which requests are redirected.

    -

    N/A

    -

    Description

    -

    Provides supplementary information about the redirect.

    -

    N/A

    -
    - -
  7. Click OK.
    • If you create a redirect for an HTTP listener, its settings will not take effect except access control.
    • If you create a redirect for an HTTP listener, the load balancer will return HTTP 301 Move Permanently to the clients.
    - -
- -

Modifying a Redirect

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Listeners, locate the HTTP listener, and click its name.
  6. Click Redirects, locate the redirect, and click Modify in the Operation column.
  7. In the Modify Redirect dialog box, modify the redirect name or description, or select another listener, and click OK.
- -

Deleting a Redirect

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Listeners, locate the listener, and click its name.
  6. Click Redirects, locate the redirect, and click Delete in the Operation column.
  7. In the Delete Redirect dialog box, click Yes.
- - - - - - - diff --git a/elb/umn/temp/integration_with_other_services.tmp b/elb/umn/temp/integration_with_other_services.tmp deleted file mode 100644 index 04fd1aa7..00000000 --- a/elb/umn/temp/integration_with_other_services.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Integration with Other Services

-
  • Virtual Private Cloud (VPC)

    Provides IP addresses and bandwidth for load balancers.

    -
  • Auto Scaling (AS)

    Works with ELB to automatically scale the number of backend servers for faster traffic distribution.

    -
  • Identity and Access Management (IAM)

    Provides authentication for ELB.

    -
  • Elastic Cloud Server (ECS)

    Provides cloud servers to run your applications in the cloud. Configure load balancers to route traffic to the servers or containers.

    -
  • Log Tank Service (LTS)

    Stores access logs of HTTP or HTTPS requests to your load balancer for query and analysis later if you have enabled access logging.

    -
  • Cloud Trace Service (CTS)

    Records the operations performed on ELB resources.

    -
  • Cloud Eye

    Monitors the status of load balancers and listeners, without any additional plug-in.

    -
- - - - - - diff --git a/elb/umn/temp/is_an_eip_exclusively_assigned_to_a_load_balancer.tmp b/elb/umn/temp/is_an_eip_exclusively_assigned_to_a_load_balancer.tmp deleted file mode 100644 index 2df45c58..00000000 --- a/elb/umn/temp/is_an_eip_exclusively_assigned_to_a_load_balancer.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Is an EIP Exclusively Assigned to a Load Balancer?

-

During the lifecycle of a classic load balancer, the EIP is exclusively assigned to it. The EIP is released only when you delete the load balancer.

-

For each shared load balancer, the bound EIP is not exclusive. However, the EIP can be unbound from the load balancer and bound to other resources. After you unbind the EIP, the load balancer can no longer receive requests over the Internet.

-

For each dedicated load balancer, the bound EIP is not exclusive. However, the EIP can be unbound from the load balancer and bound to other resources. After you unbind the EIP, the load balancer can no longer receive requests over the Internet.

-

Classic load balancers can no longer be created on the management console. Use shared load balancers or dedicated load balancers instead.

- -

You can unbind an EIP from a dedicated load balancer only on the ELB console.

- - - - - - - diff --git a/elb/umn/temp/key_operations_recorded_by_cts.tmp b/elb/umn/temp/key_operations_recorded_by_cts.tmp deleted file mode 100644 index 2ec577f5..00000000 --- a/elb/umn/temp/key_operations_recorded_by_cts.tmp +++ /dev/null @@ -1,207 +0,0 @@ - - -

Key Operations Recorded by CTS

-

You can use CTS to record operations on ELB for query, auditing, and backtracking.

-

Table 1 lists the operations recorded by CTS.

- -.. _elb_ug_sj_0001__table1419082716297: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 ELB operations recorded by CTS

Action

-

Resource Type

-

Trace

-

Configuring access logs

-

accesslog

-

create access log

-

Deleting access logs

-

accesslog

-

delete access log

-

Creating a certificate

-

certificate

-

create certificate

-

Modifying a certificate

-

certificate

-

update certificate

-

Deleting a certificate

-

certificate

-

delete certificate

-

Creating a health check

-

healthmonitor

-

create healthmonitor

-

Modifying a health check

-

healthmonitor

-

update healthmonitor

-

Deleting a health check

-

healthmonitor

-

delete healthmonitor

-

Adding a forwarding policy

-

l7policy

-

create forwarding policy

-

Modifying a forwarding policy

-

l7policy

-

update forwarding policy

-

Deleting a forwarding policy

-

l7policy

-

delete forwarding policy

-

Adding a forwarding rule

-

l7rule

-

create forwarding rule

-

Modifying a forwarding rule

-

l7rule

-

update forwarding rule

-

Deleting a forwarding rule

-

l7rule

-

delete forwarding rule

-

Adding a listener

-

listener

-

create listener

-

Modifying a listener

-

listener

-

update listener

-

Deleting a listener

-

listener

-

delete listener

-

Creating a load balancer

-

loadbalancer

-

create loadbalancer

-

Modifying a load balancer

-

loadbalancer

-

update loadbalancer

-

Deleting a load balancer

-

loadbalancer

-

delete loadbalancer

-

Adding a backend server

-

member

-

add backend ecs

-

Modifying a backend server

-

member

-

update backend ecs

-

Removing a backend server

-

member

-

remove backend ecs

-

Creating a backend server group

-

pool

-

create backend member group

-

Modifying a backend server group

-

pool

-

update backend member group

-

Deleting a backend server group

-

pool

-

delete backend member group

-
- - - - - - - diff --git a/elb/umn/temp/listener.tmp b/elb/umn/temp/listener.tmp deleted file mode 100644 index 7b060ff3..00000000 --- a/elb/umn/temp/listener.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

Listener

- - - - - diff --git a/elb/umn/temp/load_balancer.tmp b/elb/umn/temp/load_balancer.tmp deleted file mode 100644 index 90d50432..00000000 --- a/elb/umn/temp/load_balancer.tmp +++ /dev/null @@ -1,14 +0,0 @@ - - -

Load Balancer

- - - - - - - - diff --git a/elb/umn/temp/load_balancer_migration.tmp b/elb/umn/temp/load_balancer_migration.tmp deleted file mode 100644 index d9459921..00000000 --- a/elb/umn/temp/load_balancer_migration.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

Load Balancer Migration

-

- - - - - diff --git a/elb/umn/temp/load_balancing_algorithms.tmp b/elb/umn/temp/load_balancing_algorithms.tmp deleted file mode 100644 index 01a1cf24..00000000 --- a/elb/umn/temp/load_balancing_algorithms.tmp +++ /dev/null @@ -1,28 +0,0 @@ - - -

Load Balancing Algorithms

-

Load balancers receive requests from clients and forward them to backend servers in one or more AZs. Each load balancer has at least a listener and a backend server. The load balancing algorithm you select when you add the listener determines how requests are distributed.

-

Load Balancing Algorithms

Shared load balancers and dedicated load balancers support the following load balancing algorithms:

-
  • Weighted round robin: Requests are routed to different servers based on their weights, which indicate server processing performance. Backend servers with higher weights receive proportionately more requests, whereas equal-weighted servers receive the same number of requests. This algorithm is often used for short connections, such as HTTP connections.

    The following figure shows an example of how requests are distributed using the weighted round robin algorithm. Two backend servers are in the same AZ and have the same weight, and each server receives the same proportion of requests.

    -Figure 1 Traffic distribution using the weighted round robin algorithm
    -
  • Weighted least connections: In addition to the weight assigned to each server, the number of connections processed by each backend server is also considered. Requests are routed to the server with the lowest connections-to-weight ratio. In addition to the number of connections, each server is assigned a weight based on its capacity. Requests are routed to the server with the lowest connections-to-weight ratio. This algorithm is often used for persistent connections, such as connections to a database.

    The following figure shows an example of how requests are distributed using the weighted least connections algorithm. Two backend servers are in the same AZ and have the same weight, 100 connections have been established with backend server 01, and 50 connections have been connected with backend server 02. New requests are preferentially routed to backend server 02.

    -Figure 2 Traffic distribution using the weighted least connections algorithm
    -
  • Source IP hash: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hashing key, and all backend servers are numbered. The generated key is used to allocate the client to a particular server. This allows requests from different clients to be routed based on source IP addresses and ensures that a client is directed to the same server that it was using previously. This algorithm works well for TCP connections of load balancers that do not use cookies.

    The following figure shows an example of how requests are distributed using the source IP hash algorithm. Two backend servers are in the same AZ and have the same weight. If backend server 01 has processed a request from IP address A, the load balancer will route new requests from IP address A to backend server 01.

    -Figure 3 Traffic distribution using the source IP hash algorithm
    -
- -Classic load balancers support the following load balancing algorithms:
  • Round robin: Requests are distributed sequentially, evenly across all servers. This algorithm is often used for short connections, such as HTTP connections.
  • Least connections: Requests are preferentially routed to backend servers with the minimum number of active connections. This algorithm is often used for persistent connections, such as connections to a database.
  • Source IP hash: The source IP address of each request is calculated using the consistent hashing algorithm to obtain a unique hashing key, and all backend servers are numbered. The generated key is used to allocate the client to a particular server. This allows requests from different clients to be routed based on source IP addresses and ensures that a client is directed to the same server that it was using previously. This algorithm works well for TCP connections of load balancers that do not use cookies.
-

Classic load balancers can no longer be created on the management console. Use shared load balancers or dedicated load balancers instead.

- - - -

Changing the Load Balancing Algorithm

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Backend Server Groups and click on the right of the backend server group name.
  6. Select a load balancing algorithm.

    The modification will take effect immediately. The load balancer will establish new connections with the clients, and request routing over established connections will not be affected.

    - -
  7. Click OK.
- - - - - - - diff --git a/elb/umn/temp/load_balancing_on_a_public_or_private_network.tmp b/elb/umn/temp/load_balancing_on_a_public_or_private_network.tmp deleted file mode 100644 index f5a39f74..00000000 --- a/elb/umn/temp/load_balancing_on_a_public_or_private_network.tmp +++ /dev/null @@ -1,76 +0,0 @@ - - -

Load Balancing on a Public or Private Network

-

A load balancer can work on either a public or private network.

-

Load Balancing on a Public Network

You can bind an EIP to a load balancer so that it can receive requests from clients on the Internet and route the requests to backend servers.

-Figure 1 Load balancing on a public network
- -

Load Balancing on a Private Network

A load balancer has only a private IP address to receive requests from clients in a VPC and route the requests to backend servers in the same VPC. This type of load balancer can only be accessed in a VPC.

-Figure 2 Load balancing on a private network
- -

Network Types and Load Balancer Types

-.. _en-us_elb_01_0004__table18627142116143: - - - - - - - - - - - - - - - - - -
Table 1 Dedicated load balancers and their network types

Load Balancer Type

-

Network Type

-

Network Type

-

Dedicated load balancers

-

Public IPv4 network

-

Each load balancer has an IPv4 EIP bound to enable it to route requests over the Internet.

-

Private IPv4 network

-

Each load balancer has only a private IPv4 address and can route requests in a VPC.

-

IPv6 network

-

Each load balancer has an IPv6 address bound.

-
  • If the IPv6 address is added to a shared bandwidth, the load balancer can route requests over the Internet.
  • If the IPv6 address is not added to a shared bandwidth, the load balancer can route requests only in a VPC.
-
- - -.. _en-us_elb_01_0004__table17299338192413: - - - - - - - - - - - - - - -
Table 2 Shared load balancers and their network types

Load Balancer Type

-

Network Type

-

Description

-

Shared load balancers

-

Public network

-

Load balancers can route requests on both public and private networks.

-
  • Each load balancer has an EIP bound to enable it to route requests over the Internet.
  • The load balancer also has a private IP address and can route requests in a VPC.
-

Private network

-

Each load balancer has only a private IP address and can route requests in a VPC.

-
- - - - - - - - diff --git a/elb/umn/temp/migrating_from_classic_load_balancers_to_shared_load_balancers.tmp b/elb/umn/temp/migrating_from_classic_load_balancers_to_shared_load_balancers.tmp deleted file mode 100644 index a2e06096..00000000 --- a/elb/umn/temp/migrating_from_classic_load_balancers_to_shared_load_balancers.tmp +++ /dev/null @@ -1,96 +0,0 @@ - - -

Migrating from Classic Load Balancers to Shared Load Balancers

-

Scenarios

Classic load balancers are no longer provided. It is recommended that you use load balancers instead because they provide comprehensive Layer 7 load balancing and better forwarding performance.

- -

Prerequisites

You have the Tenant Administrator permission.

- -

Impacts on Traffic Routing

Traffic routing over persistent connections will be interrupted during migration and rollback. For the impact on traffic routing over short connections, see the following table.

- -.. _elb-03-qy-0001__table189291540135319: - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Impact on traffic routing over short connections

Scenario

-

During Migration

-

Before Finishing Migration

-

Rollback

-

Migrating a private network load balancer

-

Not interrupted

-

On a client that is on the same subnet as the load balancer, run the arping -b Private IP address of the classic load balancer command to refresh ARP entries to ensure service continuity.

-

If ARP entries are not refreshed, traffic from this client will be interrupted. The interruption duration is the ARP aging period, which ranges from 30s to 300s, depending on parameter settings of the client.

- NOTE:

The private IP address of the classic load balancer is bound to the shared load balancer.

- -

If ARP entries are not refreshed, traffic from the client is interrupted. The interruption duration is the ARP aging period, which ranges from 30s to 300s, depending on parameter settings of the client.

-

To refresh ARP entries and shorten the interruption duration to a few seconds, run the arping -b Private IP address of the classic load balancer command on the client.

-

Migrating a public network load balancer with the EIP changed

-

Not interrupted

-

Before you click Finish Migration, ensure that the domain name has been mapped to the new EIP of the newly created shared load balancer.

-

If the new EIP has not been configured, traffic is still routed by the classic load balancer. After you click Finish Migration, traffic routing will be interrupted.

-

Before you click Roll Back, map the domain name to the EIP of the classic load balancer.

-

If the EIP is not configured, traffic is still routed by the shared load balancer. After you click Finish Migration, traffic routing will be interrupted.

-

Migrating a public network load balancer without changing the EIP

-

After the shared load balancer is created, traffic will be interrupted for about 5s, during which the EIP is released from the classic public network load balancer and bound to the shared load balancer.

-

Not interrupted

-

Not interrupted

-
- - -

Migration Process

The following are migration processes for three scenarios:

- -
  • Migrating a private network load balancerFigure 1 Migration process
    -
  • Migrating a public network load balancer with the EIP changedFigure 2 Migration process
    -
  • Migrating a public network load balancer without changing the EIPFigure 3 Migration process
    -
-

Migrating a Classic Load Balancer

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. In the classic load balancer list, locate the load balancer you want to migrate and choose More > Migrate.
  5. Check whether the load balancer to be migrated is a private network load balancer.
    • If it is a private network load balancer, go to 6.
    • If it is not a private network load balancer, go to 7.
    -
  6. Run command arping -b Private IP address of the classic load balancer on the client that is on the same subnet as the load balancer to update the ARP entries. Then, go to 11.

    The private IP address of the classic load balancer is bound to the shared load balancer.

    - -
  7. Determine whether you want to change the EIP.
    • If you want to change the EIP, go to 8.
    • If you do not want to change the EIP, go to 10.
    -
  8. Modify the DNS configuration to map the domain name to the EIP bound to the shared load balancer.
  9. Switch to the Cloud Eye console, view monitoring data of the classic load balancer and then go to 11.

    If both the number of concurrent connections and the number of new connections are 0, traffic is diverted to the shared load balancer.

    -
  10. Send requests to the shared load balancer to test whether it can route requests to associated backend servers.
  11. Locate the classic load balancer that has been migrated and choose More > Finish Migration.

    The classic load balancer will be automatically deleted.

    -
  12. Switch to the load balancer list and view the newly created shared load balancer.
- -

Rolling Back to a Classic Load Balancer

If you decide to roll back, the newly created shared load balancer will be deleted, and the original classic load balancer will be restored.

-
  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. In the classic load balancer list, locate the load balancer you want to roll back and choose More > Roll Back.

    Alternatively, select the load balancer you want to roll back and click Roll Back above the load balancer list.

    -
- -

Batch Migration or Rollback

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. In the classic load balancer list, select the load balancers and click Migrate or Roll Back.
  5. Perform subsequent operations as needed.
    • If you choose Migrate, go to 6.
    • If you choose Roll Back, no further operations are required.
    -
  6. Check whether the load balancers to be migrated are private network load balancers.
    • If they are private network load balancers, go to 7.
    • If they are not private network load balancers, go to 8.
    -
  7. After the migration, run command arping -b Private IP address of each classic load balancer on the client that is on the same subnet as the load balancer to update the ARP entries. Then, go to 12.

    The private IP address of the classic load balancer will be bound to the shared load balancer.

    - -
  8. Determine whether you want to change the EIP.
    • If you want to change the EIP, go to 9.
    • If you do not want to change the EIP, go to 11.
    -
  9. Modify the DNS configuration to map the domain name to the EIP bound to each shared load balancer.
  10. Switch to the Cloud Eye console, view monitoring data of each classic load balancer and then go to 12.

    If both the number of concurrent connections and the number of new connections are 0, traffic is diverted to the shared load balancers.

    -
  11. Send requests to shared load balancers to test whether they can route requests to associated backend servers.
  12. Select all classic load balancers that have been migrated and click Finish Migration.

    These classic load balancers will be automatically deleted.

    -
  13. Switch to the load balancer list, view the newly created shared load balancers.
- -

Causes of Migration Failure

The following are possible causes why a classic load balancer cannot be migrated:

- -
  • The quota of the shared load balancer, listener, backend server group, or certificate is insufficient.
  • The classic load balancer is not in the Running state.
  • The classic load balancer listener is not in the Running state.
  • The shared load balancer does not support the SSL protocol.
-
  • During the migration, the listeners and backend servers of the classic load balancer are also migrated. Your applications and data will not be affected. To ensure successful migration, ensure that backend servers can be accessed from 100.125.0.0/16.
  • After the migration, the original classic load balancer will be deleted and cannot be restored, and its private IP address and EIP will be used by the newly created shared load balancer. If the classic load balancer does not have an EIP, you can bind one to the newly created shared load balancer.
  • During batch migration of public network load balancers, ensure that the number of EIPs and the number of load balancers are the same. After the migration, the system automatically binds one EIP to each shared load balancer in sequence.
  • Integration with the AS service becomes invalid after the migration. Configure AS if you want to scale the number of backend servers associated with each shared load balancer.
  • Access logs stored in the OBS bucket are lost because shared load balancers do not support access logging.
- - - - - - - diff --git a/elb/umn/temp/modifying_an_alarm_rule.tmp b/elb/umn/temp/modifying_an_alarm_rule.tmp deleted file mode 100644 index b2c4cdd1..00000000 --- a/elb/umn/temp/modifying_an_alarm_rule.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Modifying an Alarm Rule

-
  1. Log in to the management console.
  2. Under Management & Deployment, click Cloud Eye.
  3. In the navigation pane on the left, choose Alarm Management > Alarm Rules.
  4. On the Alarm Rules page, locate the alarm rule. In the Operation column, click More > Modify.
    1. Click the name of the alarm rule.
    2. In the upper right corner of the displayed page, click Modify.
    3. On the Modify Alarm Rule page, set parameters as prompted.
    4. Set other parameters as required and then click Modify.

      Once the alarm rule is set and you have enabled the notification function, the system automatically sends you a notification when an alarm is generated.

      -

      For more information about alarm rules of load balancers and listeners, see the Cloud Eye User Guide.

      - -
    - -
- - - - - - diff --git a/elb/umn/temp/modifying_load_balancer_settings.tmp b/elb/umn/temp/modifying_load_balancer_settings.tmp deleted file mode 100644 index 91bc313d..00000000 --- a/elb/umn/temp/modifying_load_balancer_settings.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Modifying Load Balancer Settings

-

Scenarios

You can modify the bandwidth used by the EIP bound to the load balancer as required.

- -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. On the Load Balancers page:

    Dedicated load balancers: Click Elastic Load Balancers, locate the load balancer whose bandwidth you want to modify and click Modify IPv4 Bandwidth or More > Modify IPv6 Bandwidth in the Operation column (if the load balancer has an IPv6 address that has been added to a shared bandwidth).

    -

    Shared load balancers: Click Elastic Load Balancers, locate the load balancer whose bandwidth you want to modify and click Modify Bandwidth or Modify IPv4 Bandwidth in the Operation column (in regions where either dedicated load balancers or both shared and dedicated load balancers are available).

    -

    Classic load balancers: Locate the load balancer whose bandwidth you want to modify and click Modify Bandwidth in the Operation column.

    -
  5. In the New Configuration area, change the bandwidth and click Next.

    Select the bandwidth defined by the system or enter a value from 1 Mbit/s to 2,000 Mbit/s.

    -
  6. Confirm the modified bandwidth and click Submit.
- - - - - - - diff --git a/elb/umn/temp/modifying_or_deleting_a_listener.tmp b/elb/umn/temp/modifying_or_deleting_a_listener.tmp deleted file mode 100644 index b8bc9fac..00000000 --- a/elb/umn/temp/modifying_or_deleting_a_listener.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Modifying or Deleting a Listener

-

Scenarios

You can modify a listener as needed or delete a listener if you no longer need it.

-

Deleted listeners cannot be recovered.

-

Frontend Protocol/Port and Backend Protocol cannot be modified after you have configured them. If you want to modify the protocol or port of the listener, add another listener to the load balancer.

- - -

Modifying a Listener

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Listeners.

    Shared load balancers: Locate the target listener and click on the right of its name. In the Modify Listener dialog box, modify the parameters as needed.

    -
  6. Click OK.
- -

Deleting a Listener

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
    • If the listener has backend servers associated, disassociate the backend servers before deleting the listener.
    • If HTTP requests are redirected to an HTTPS listener, delete the redirect before deleting the HTTPS listener.
    • If the listener has a forwarding policy, delete the forwarding policy before deleting the listener.
    • After a listener is deleted, the associated backend server group is also deleted.
    - -
  5. Click Listeners.
    • For a shared load balancer listener, locate the listener and click on the right of its name. In the Modify Listener dialog box, modify the parameters as needed.
    • For a classic load balancer listener, locate the listener and click Delete in the Operation column.
    -
  6. Click Yes.
- - - - - - - diff --git a/elb/umn/temp/monitoring.tmp b/elb/umn/temp/monitoring.tmp deleted file mode 100644 index 095934b6..00000000 --- a/elb/umn/temp/monitoring.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Monitoring

- - - - - diff --git a/elb/umn/temp/monitoring_metrics.tmp b/elb/umn/temp/monitoring_metrics.tmp deleted file mode 100644 index 1987564d..00000000 --- a/elb/umn/temp/monitoring_metrics.tmp +++ /dev/null @@ -1,336 +0,0 @@ - - -

Monitoring Metrics

-

Overview

This section describes the namespace, the metrics that can be monitored by Cloud Eye, and dimensions of these metrics. You can use APIs provided by Cloud Eye to query the metrics of a monitored object and generated alarms.

- -

Namespace

SYS.ELB

- -

Metrics

-.. _elb_ug_jk_0001__en-us_topic_0109418599_en-us_topic_0021772779_en-us_topic_0021733202_table42148186162545: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Metric ID

-

Name

-

Description

-

Value

-

Monitored Object

-

Monitoring Period

-

(Raw Data)

-

m1_cps

-

Concurrent Connections

-

Load balancing at Layer 4: total number of TCP and UDP connections from the monitored object to backend servers

-

Load balancing at Layer 7: total number of TCP connections from the clients to the monitored object

-

Unit: N/A

-

≥ 0

-

Shared load balancer or its listener, classic load balancer, dedicated load balancer or its listener

-

1 minute

-

m2_act_conn

-

Active Connections

-

Number of TCP and UDP connections in the ESTABLISHED state between the monitored object and backend servers

-

You can run the following command to view the connections (both Windows and Linux servers):

-
netstat -an
-

Unit: N/A

-

≥ 0

-

m3_inact_conn

-

Inactive Connections

-

Number of TCP connections between the monitored object and backend servers except those in the ESTABLISHED state

-

You can run the following command to view the connections (both Windows and Linux servers):

-
netstat -an
-

Unit: N/A

-

≥ 0

-

m4_ncps

-

New Connections

-

Number of TCP and UDP connections established between clients and the monitored object per second

-

Unit: N/A

-

≥ 0/second

-

m5_in_pps

-

Incoming Packets

-

Number of packets received by the monitored object per second

-

Unit: Packet/s

-

≥ 0/second

-

m6_out_pps

-

Outgoing Packets

-

Number of packets sent from the monitored object per second

-

Unit: Packet/s

-

≥ 0/second

-

m7_in_Bps

-

Inbound Rate

-

Traffic used for accessing the monitored object from the Internet

-

Unit: byte/s

-

≥ 0 bytes/s

-

m8_out_Bps

-

Outbound Rate

-

Traffic used by the monitored object to access the Internet

-

Unit: byte/s

-

≥ 0 bytes/s

-

m9_abnormal_servers

-

Unhealthy Servers

-

Number of unhealthy backend servers associated with the monitored object

-

Unit: N/A

-

≥ 0

-

Shared load balancer, classic load balancer, or dedicated load balancer

-

1 minute

-

ma_normal_servers

-

Healthy Servers

-

Number of healthy backend servers associated with the monitored object

-

Unit: N/A

-

≥ 0

-

Layer 7 (HTTP/HTTPS) metrics: These metrics are available only when the frontend protocol is HTTP or HTTPS.

-

mb_l7_qps

-

Layer-7 Query Rate

-

Number of requests the monitored object receives per second

-

Unit: Query/s

-

≥ 0/second

-

Shared load balancer or its listener, dedicated load balancer or its listener

-

1 minute

-

mc_l7_http_2xx

-

2xx Status Codes

-

Number of 2xx status codes returned by the monitored object

-

Unit: Count/s

-

≥ 0/second

-

md_l7_http_3xx

-

3xx Status Codes

-

Number of 3xx status codes returned by the monitored object

-

Unit: Count/s

-

≥ 0/second

-

me_l7_http_4xx

-

4xx Status Codes

-

Number of 4xx status codes returned by the monitored object

-

Unit: Count/s

-

≥ 0/second

-

mf_l7_http_5xx

-

5xx Status Codes

-

Number of 5xx status codes returned by the monitored object

-

Unit: Count/s

-

≥ 0/second

-

m10_l7_http_other_status

-

Other Status Codes

-

Number of status codes returned by the monitored object except 2xx, 3xx, 4xx, and 5xx status codes

-

Unit: Count/s

-

≥ 0/second

-

m11_l7_http_404

-

404 Not Found

-

Number of 404 Not Found status codes returned by the monitored object

-

Unit: Count/s

-

≥ 0/second

-

m12_l7_http_499

-

499 Client Closed Request

-

Number of 499 Client Closed Request status codes returned by the monitored object

-

Unit: Count/s

-

≥ 0/second

-

m13_l7_http_502

-

502 Bad Gateway

-

Number of 502 Bad Gateway status codes returned by the monitored object

-

Unit: Count/s

-

≥ 0/second

-

m14_l7_rt

-

Average Layer-7 Response Time

-

Average response time of the monitored object

-

The response time starts when the monitored object receives requests from the clients and ends when it returns all responses to the clients.

-

Unit: ms

-

≥ 0 ms

-

m15_l7_upstream_4xx

-

4xx Status Codes_Backend

-

Number of 4xx status codes returned by the monitored object

-

Unit: Count/s

-

≥ 0/second

-

Shared load balancer or its listener, dedicated load balancer or its listener

-

1 minute

-

m16_l7_upstream_5xx

-

5xx Status Codes_Backend

-

Number of 5xx status codes returned by the monitored object

-

Unit: Count/s

-

≥ 0/second

-

m17_l7_upstream_rt

-

Average Server Response Time

-

Average response time of backend servers

-

The response time starts when the monitored object routes the requests to the backend server and ends when the monitored object receives a response from the backend server.

-

Unit: ms

-

≥ 0 ms

-
- -

a: If a service is being monitored from multiple dimensions, include all dimensions when you use APIs to query the metrics.

-
  • Example of querying a single metric from both dimensions: dim.0=lbaas_instance_id,223e9eed-2b02-4ed2-a126-7e806a6fee1f&dim.1=lbaas_listener_id,3baa7335-8886-4867-8481-7cbba967a917
  • Example of querying metrics in batches from both dimensions:
    "dimensions": [
    -{
    -"name": "lbaas_instance_id",
    -"value": "223e9eed-2b02-4ed2-a126-7e806a6fee1f"
    -}
    -{
    -"name": "lbaas_listener_id",
    -"value": "3baa7335-8886-4867-8481-7cbba967a917"
    -}
    -],
    -
- -

Dimensions

-.. _elb_ug_jk_0001__en-us_topic_0109418599_en-us_topic_0021772779_en-us_topic_0021733202_table24384314162910: - - - - - - - - - - - - - - - - - - -

Key

-

Value

-

lb_instance_id

-

Specifies the ID of the classic load balancer.

-

lbaas_instance_id

-

Specifies the ID of the shared load balancer.

-

lbaas_listener_id

-

Specifies the ID of the shared load balancer listener.

-

lbaas_pool_id

-

Specifies the backend server group ID.

-
- - - - - - - - diff --git a/elb/umn/temp/mutual_authentication.tmp b/elb/umn/temp/mutual_authentication.tmp deleted file mode 100644 index 05c738f7..00000000 --- a/elb/umn/temp/mutual_authentication.tmp +++ /dev/null @@ -1,100 +0,0 @@ - - -

Mutual Authentication

-

Scenarios

In common HTTPS service scenarios, only the server certificate is required for authentication. For some mission-critical services, such as financial transactions, you need to deploy both the server certificate and the client certificate for mutual authentication.

-

This section uses self-signed certificates as an example to describe how to configure mutual authentication. Self-signed certificates do not provide all the security properties provided by certificates signed by a CA. It is recommended that you purchase certificates from other CAs.

- -

Creating a CA Certificate Using OpenSSL

  1. Log in to a Linux server with OpenSSL installed.
  2. Create the server directory and switch to the directory:

    mkdir ca

    -

    cd ca

    -
  3. Create the certificate configuration file ca_cert.conf. The file content is as follows:
    [ req ]
    -distinguished_name     = req_distinguished_name
    -prompt                 = no
    - 
    -[ req_distinguished_name ]
    - O                      = ELB
    -
  4. Create the CA certificate private key ca.key.

    openssl genrsa -out ca.key 2048

    -Figure 1 Private key of the CA certificate
    -
  5. Create the certificate signing request (CSR) file ca.csr for the CA certificate.

    openssl req -out ca.csr -key ca.key -new -config ./ca_cert.conf

    -
  6. Create the self-signed CA certificate ca.crt.

    openssl x509 -req -in ca.csr -out ca.crt -sha1 -days 5000 -signkey ca.key

    -Figure 2 Creating a self-signed CA certificate
    -
- -

Issuing a Server Certificate Using the CA Certificate

The server certificate can be a CA signed certificate or a self-signed one. In the following steps, a self-signed certificate is used as an example to describe how to create a server certificate.

-
  1. Log in to the server where the CA certificate is generated.
  2. Create a directory at the same level as the directory of the CA certificate and switch to the directory.

    mkdir server

    -

    cd server

    -
  3. Create the certificate configuration file server_cert.conf. The file content is as follows:
    [ req ]
    -distinguished_name     = req_distinguished_name
    -prompt                 = no
    - 
    -[ req_distinguished_name ]
    - O                      = ELB
    - CN                     = www.test.com
    -

    Set the CN field to the domain name or IP address of the Linux server.

    - -
  4. Create the server certificate private key server.key.

    openssl genrsa -out server.key 2048

    -
  5. Create the CSR file server.csr for the server certificate.

    openssl req -out server.csr -key server.key -new -config ./server_cert.conf

    -
  6. Use the CA certificate to issue the server certificate server.crt.

    openssl x509 -req -in server.csr -out server.crt -sha1 -CAcreateserial -days 5000 -CA ../ca/ca.crt -CAkey ../ca/ca.key

    -Figure 3 Issuing a server certificate
    -
- -

Issuing a Client Certificate Using the CA Certificate

  1. Log in to the server where the CA certificate is generated.
  2. Create a directory at the same level as the directory of the CA certificate and switch to the directory.

    mkdir client

    -

    cd client

    -
  3. Create the certificate configuration file client_cert.conf. The file content is as follows:
    [ req ]
    -distinguished_name     = req_distinguished_name
    -prompt                 = no
    - 
    -[ req_distinguished_name ]
    - O                      = ELB
    - CN                     = www.test.com
    -

    Set the CN field to the domain name or IP address of the Linux server.

    - -
  4. Create the client certificate private key client.key.

    openssl genrsa -out client.key 2048

    -Figure 4 Creating a client certificate private key
    -
  5. Create the CSR file client.csr for the client certificate.

    openssl req -out client.csr -key client.key -new -config ./client_cert.conf

    -Figure 5 Creating a client certificate CSR file
    -
  6. Use the CA certificate to issue the client certificate client.crt.

    openssl x509 -req -in client.csr -out client.crt -sha1 -CAcreateserial -days 5000 -CA ../ca/ca.crt -CAkey ../ca/ca.key

    -Figure 6 Issuing a client certificate
    -
  7. Convert the client certificate to a .p12 file that can be identified by the browser.

    openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.p12

    -

    A password is required during command execution. Save this password, which will be required when you import the certificate using the browser.

    - -
- -

Configuring the Server Certificate and Private Key

  1. Log in to the management console.
  2. In the navigation pane on the left, choose Certificates.
  3. In the navigation pane on the left, choose Certificates. On the displayed page, click Create Certificate. In the Create Certificate dialog box, select Server certificate, copy the content of server certificate server.crt to the Certificate Content area and the content of private key file server.key to the Private Key area, and click OK.

    Delete the last newline character before you copy the content.

    - -

    The certificate and private key must be PEM-encoded.

    - -
- -

Configuring the CA Certificate

  1. Log in to the management console.
  2. In the navigation pane on the left, choose Certificates.
  3. Click Create Certificate. In the Create Certificate dialog box, select CA certificate, copy the content of CA certificate ca.crt created in Issuing a Server Certificate Using the CA Certificate to the Certificate Content area, and click OK.

    Delete the last newline character before you copy the content.

    - -

    The certificate must be PEM-encoded.

    - -

- -

Configuring Mutual Authentication

  1. Log in to the management console.
  2. Locate the load balancer and click its name. Under Listeners, click Add Listener. Select HTTPS for Frontend Protocol, enable Mutual Authentication, and select the certificate and CA certificate.Figure 7 Add Listener
    -
    1. Only shared load balancer listeners support mutual authentication.
    - -
-

Add backend servers.

-

For detailed operations, see Adding Backend Servers.

- -

Importing and Testing the Client Certificate

Method 1: Using a browser

-
  1. Import the client certificate using a browser (Internet Explorer 11 is used as an example).
    1. Export client.p12 from the Linux server.
    2. Open the browser, choose Settings > Internet Options and click Content.
    3. Click Certificates and then Import to import the client.p12 certificate.Figure 8 Importing the client.p12 certificate
      -
    -
  2. Verify the import.Enter the access address in the address box of your browser. A window is displayed asking you to select the certificate. Select the client certificate and click OK. If the website can be accessed, the certificate is successfully imported.Figure 9 Accessing the website
    - -
-

Method 2: Using cURL

-
  1. Import the client certificate.

    Copy client certificate client.crt and private key client.key to a new directory, for example, /home/client_cert.

    -
  2. Verify the import.On the Shell screen, run the following command:
    curl -k --cert /home/client_cert/client.crt --key /home/client_cert/client.key https://XXX.XXX.XXX.XXX:XXX/ -I
    - -

    Ensure that the certificate address, private key address, IP address and listening port of the load balancer are correct. Replace https://XXX.XXX.XXX.XXX:XXX with the actual IP address and port number. If the expected response code is returned, the certificate is successfully imported.

    -Figure 10 Example of a correct response code
    -
- - - - - - - diff --git a/elb/umn/temp/network_traffic_paths.tmp b/elb/umn/temp/network_traffic_paths.tmp deleted file mode 100644 index c82c5957..00000000 --- a/elb/umn/temp/network_traffic_paths.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Network Traffic Paths

-

Load balancers communicate with backend servers over a private network.

-
  • If backend servers process only requests routed from load balancers, there is no need to assign EIPs or create NAT gateways.
  • If backend servers need to provide Internet-accessible services or access the Internet, you must assign EIPs or create NAT gateways.
-

Inbound Network Traffic Paths

The listeners' configurations determine how load balancers distribute incoming traffic.Figure 1 Inbound network traffic
- -When a listener uses TCP or UDP to receive incoming traffic:
  • Incoming traffic is routed only through the LVS cluster.
  • The LVS cluster directly routes incoming traffic to backend servers using the load balancing algorithm you select when you add the listener.
- -When a listener uses HTTP or HTTPS to receive incoming traffic:
  • Incoming traffic is routed first to the LVS cluster, then to the Nginx cluster, and finally across backend servers.
  • For HTTPS traffic, the Nginx cluster validates certificates and decrypts data packets before distributing the traffic across backend servers using HTTP.
- - -

Outbound Network Traffic Paths

The outbound traffic is routed back the same way the traffic came in.Figure 2 Outbound network traffic
-
  • Because the load balancer receives and responds to requests over the Internet, traffic transmission depends on the bandwidth, which is not limited by ELB. The load balancer communicates with backend servers over a private network.
  • If you have a NAT gateway, it receives and responds to incoming traffic. The NAT gateway has an EIP bound, through which backend servers can access the Internet and provide services accessible from the Internet. Although there is a restriction on the connections that can be processed by a NAT gateway, traffic transmission depends on the bandwidth
  • If each backend server has an EIP bound, they receive and respond to incoming traffic directly. Traffic transmission depends on the bandwidth.
- - - - - - - - diff --git a/elb/umn/temp/obtaining_source_ip_addresses.tmp b/elb/umn/temp/obtaining_source_ip_addresses.tmp deleted file mode 100644 index 47892e5e..00000000 --- a/elb/umn/temp/obtaining_source_ip_addresses.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - - -

Obtaining Source IP Addresses

- -

- - - - - - - - - diff --git a/elb/umn/temp/overview.tmp b/elb/umn/temp/overview.tmp deleted file mode 100644 index 2860a3de..00000000 --- a/elb/umn/temp/overview.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Overview

-

Two examples are given to show how you can quickly create a shared load balancer to distribute incoming traffic across backend servers.

-
  • Entry level: A large number of requests need to be routed to backend servers. Health checks are required to monitor the health of backend servers to ensure that incoming traffic is routed only to healthy backend servers to eliminate SPOFs and improve service availability.Figure 1 Entry level
    -

    As the incoming traffic increases, you can add more servers to balance the load across backend servers.

    -
  • Advanced level: Two or more applications use the domain name to provide services, and requests are routed to applications based on their URLs. Forwarding policies are required to forward requests from different URLs to the corresponding backend server groups.Figure 2 Advanced level
    -

    As the incoming traffic increases, you can add more backend servers to the two backend server groups. You can also configure health checks to monitor the health of backend servers to ensure that incoming traffic is routed only to healthy backend servers.

    -
- - - - - - diff --git a/elb/umn/temp/popular_questions.tmp b/elb/umn/temp/popular_questions.tmp deleted file mode 100644 index 3ecfa4f9..00000000 --- a/elb/umn/temp/popular_questions.tmp +++ /dev/null @@ -1,10 +0,0 @@ - - -

Popular Questions

- - - - - - - diff --git a/elb/umn/temp/preparations_for_creating_a_load_balancer.tmp b/elb/umn/temp/preparations_for_creating_a_load_balancer.tmp deleted file mode 100644 index 5fa3ae5c..00000000 --- a/elb/umn/temp/preparations_for_creating_a_load_balancer.tmp +++ /dev/null @@ -1,24 +0,0 @@ - - -

Preparations for Creating a Load Balancer

-

Before creating a load balancer, you must plan its region, network, protocol, and backend servers.

-

Region

When you select a region, pay attention to the following:
  • The region must be close to your users' location to reduce network latency and improve the download speed.
  • The region must be the same as that of backend servers. Currently, ELB cannot be deployed across regions.
- - -

Specifications

Dedicated load balancers provide a broad range of specifications to meet different requirements. Specifications for network load balancing are suitable for TCP or UDP requests, while specifications for application load balancing are broadly used to handle HTTP or HTTPS requests. Select appropriate specifications based on your traffic volume and service requirements. The following are some principles for you to select the specifications:
  • For TCP or UDP load balancing, pay attention to the number of concurrent persistent connections, and consider Maximum Connections as a key metric. Estimate the maximum number of concurrent connections that a load balancer can handle in the actual service scenario and select the corresponding specification.
  • For HTTP or HTTPS load balancers, focus more on queries per second (QPS), which determines the service throughput of an application system. Estimate the QPS that a load balancer can handle in the actual service scenario and select the corresponding specification.
  • Use the monitoring data from Cloud Eye to analyze the peak traffic, trend and regularity of the traffic to select the specifications more accurately.
- - -

Protocol

ELB provides load balancing at both Layer 4 and Layer 7.

-
  • If you choose TCP or UDP, the load balancer routes requests directly to backend servers. In this process, the destination IP address in the packets is changed to the IP address of the backend server, and the source IP address to the private IP address of the load balancer. A connection is established after a three-way handshake between the client and the backend server, and the load balancer only forwards the data.Figure 1 Layer-4 load balancing
    -
  • Load balancing at Layer 7 is also called "content exchange". After the load balancer receives a request, it works as a proxy of backend servers to establish a connection (three-way handshake) with the client and then determines to which backend server the request is to be routed based on the fields in the HTTP/HTTPS request header and the load balancing algorithm you selected when you add the listener.Figure 2 Layer-7 load balancing
    -
- -

Backend Servers

Before you use ELB, you need to create cloud servers, deploy required applications on them, and add the cloud servers to one or more backend server groups. When you create ECSs or BMSs, note the following:

-
  • Cloud servers must be in the same region as the load balancer.
  • Cloud servers that run the same OS are recommended so that you can manage them more easily.
- - - - - - - diff --git a/elb/umn/temp/product_advantages.tmp b/elb/umn/temp/product_advantages.tmp deleted file mode 100644 index 95624a4d..00000000 --- a/elb/umn/temp/product_advantages.tmp +++ /dev/null @@ -1,25 +0,0 @@ - - -

Product Advantages

-

Dedicated Load Balancers

  • Robust performance

    Each dedicated load balancer has exclusive use of isolated underlying resources and can provide guaranteed performance. A single dedicated load balancer deployed in one AZ can establish up to 20 million concurrent connections, and a load balancer deployed across two AZs can establish up to 40 million concurrent connections, meeting your requirements for handling a massive number of requests.

    -
  • High availability

    Underlying resources are deployed in clusters to ensure that load balancers can route traffic uninterruptedly. If your servers in one AZ are unhealthy, dedicated load balancers automatically route traffic to healthy servers in other AZs. Dedicated load balancers provide a comprehensive health check mechanism to ensure that incoming traffic is routed to only healthy backend servers, improving the availability of your applications.

    -
  • Ultra security

    Dedicated load balancers also allow you to select security policies that fit your security requirements.

    -
  • Multiple protocols

    Dedicated load balancers support the following protocols, including TCP, UDP, HTTP, and HTTPS, so that they can route requests from different types of applications.

    -
  • Hybrid load balancing

    Dedicated load balancers can route requests to both servers on the cloud and on premises, allowing you to leverage the public cloud to handle burst traffic.

    -
  • Ease-of-use

    Dedicated load balancers provide a diverse set of algorithms that allow you to configure different traffic routing policies to meet your requirements while keeping deployments simple.

    -
  • High reliability

    Load balancers can be deployed across AZs and can distribute traffic more evenly.

    -
- -

Shared Load Balancers

  • Robust performance

    A shared load balancer can establish up to 100 million concurrent connections and up to 1 million new connections per second, and can handle up to 1 million requests per second, meeting your requirements for handling huge numbers of concurrent requests.

    -
  • High availability

    Underlying resources are deployed in clusters to ensure that load balancers can route traffic uninterruptedly. If your servers in one AZ are unhealthy, shared load balancers automatically route traffic to healthy servers in other AZs. Shared load balancers provide a comprehensive health check mechanism to ensure that incoming traffic is routed to only healthy backend servers, improving the availability of your applications.

    -
  • Multiple protocols

    Shared load balancers support the following protocols, including TCP, UDP, HTTP, and HTTPS.

    -
  • Ease-of-use

    Shared load balancers provide a diverse set of algorithms that allow you to configure different traffic routing policies to meet your requirements while keeping deployments simple.

    -
  • High reliability

    Shared load balancers can be deployed across AZs and can distribute traffic more evenly.

    -
- - - - - - - diff --git a/elb/umn/temp/product_concepts.tmp b/elb/umn/temp/product_concepts.tmp deleted file mode 100644 index 5fd4bc85..00000000 --- a/elb/umn/temp/product_concepts.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Product Concepts

-

- - - - - - - - diff --git a/elb/umn/temp/protocols_and_ports.tmp b/elb/umn/temp/protocols_and_ports.tmp deleted file mode 100644 index 9afaf52e..00000000 --- a/elb/umn/temp/protocols_and_ports.tmp +++ /dev/null @@ -1,76 +0,0 @@ - - -

Protocols and Ports

-

Frontend Protocols and Ports

Frontend protocols and ports are used by load balancers to receive requests from clients. Load balancers use TCP, UDP, or SSL at Layer 4, and HTTP or HTTPS at Layer 7. Select a protocol and a port that best suit your requirements.

- -.. _elb_ug_jt_0002__table16662138185223: - - - - - - - - - - - - - - - - - -
Table 1 Frontend protocols and ports

Protocol

-

Port

-

TCP

-

There are some restrictions when you select the protocols and port numbers.

-
  • For each load balancer, UDP can use the same ports as other protocols, but these other protocols must have unique ports. For example, if you have a UDP listener that uses port 88, you can add a TCP, HTTP, or HTTPS listener that also uses port 88. However, if you already have an HTTP listener that uses port 443, you cannot add an HTTPS or TCP listener that uses the same port.
  • The port numbers of the same protocol must be unique. For example, if you have a TCP listener that uses port 80, you cannot add another TCP listener that uses the same port.
-

The port number ranges from 1 to 65535.

-

The following are some commonly-used protocols and port numbers:

-

TCP/80

-

HTTPS/443

-

UDP

-

HTTP

-

HTTPS

-

SSL (only classic load balancers)

-
- - -

Backend Protocols and Ports

Backend protocols and ports are used by backend servers to receive requests from load balancers. If Windows servers have Internet Information Services (IIS) installed, the default backend protocol and port are HTTP and 80.

- -.. _elb_ug_jt_0002__table193210457467: - - - - - - - - - - - - - - - -
Table 2 Backend protocols and ports

Protocol

-

Port

-

TCP

-

Backend servers can use the same ports. The port number ranges from 1 to 65535.

-

The following are some commonly-used protocols and port numbers:

-

TCP/80

-

HTTP/443

-

UDP

-

HTTP

-

HTTPS

-
- - - - - - - - diff --git a/elb/umn/temp/quotas.tmp b/elb/umn/temp/quotas.tmp deleted file mode 100644 index ced5bc15..00000000 --- a/elb/umn/temp/quotas.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

Quotas

-

What Is Quota?

Quotas are enforced for service resources on the platform to prevent unforeseen spikes in resource usage. Quotas can limit the number or amount of resources available to users, such as the maximum number of ECSs or EVS disks that can be created.

-

If the existing resource quota cannot meet your service requirements, you can apply for a higher quota.

- -

How Do I View My Quotas?

  1. Log in to the management console.
  2. Click in the upper left corner and select the desired region and project.
  3. In the upper right corner of the page, click .

    The Service Quota page is displayed.

    -
  4. View the used and total quota of each type of resources on the displayed page.

    If a quota cannot meet service requirements, apply for a higher quota.

    -
- -

How Do I Apply for a Higher Quota?

The system does not support online quota adjustment. If you need to adjust a quota, call the hotline or send an email to the customer service mailbox. Customer service personnel will timely process your request for quota adjustment and inform you of the real-time progress by making a call or sending an email.

-

Before dialing the hotline number or sending an email, make sure that the following information has been obtained:

-
  • Domain name, project name, and project ID, which can be obtained by performing the following operations:

    Log in to the management console using the cloud account, click the username in the upper right corner, select My Credentials from the drop-down list, and obtain the domain name, project name, and project ID on the My Credentials page.

    -
  • Quota information, which includes:
    • Service name
    • Quota type
    • Required quota
    -
-

Learn how to obtain the service hotline and email address.

- - - diff --git a/elb/umn/temp/region_and_az.tmp b/elb/umn/temp/region_and_az.tmp deleted file mode 100644 index 269b060a..00000000 --- a/elb/umn/temp/region_and_az.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Region and AZ

-

Concept

A region and availability zone (AZ) identify the location of a data center. You can create resources in a specific region and AZ.

-
  • A region is a physical data center, which is completely isolated to improve fault tolerance and stability. The region that is selected during resource creation cannot be changed after the resource is created.
  • An AZ is a physical location where resources use independent power supplies and networks. A region contains one or more AZs that are physically isolated but interconnected through internal networks. Because AZs are isolated from each other, any fault that occurs in one AZ will not affect others.
-

Figure 1 shows the relationship between regions and AZs.

-Figure 1 Regions and AZs
- -

Selecting a Region

Select a region closest to your target users for lower network latency and quick access.

- -

Selecting an AZ

When deploying resources, consider your applications' requirements on disaster recovery (DR) and network latency.

-
  • For high DR capability, deploy resources in different AZs within the same region.
  • For lower network latency, deploy resources in the same AZ.
- -

Regions and Endpoints

Before you use an API to call resources, specify its region and endpoint. For more details, see Regions and Endpoints.

- - - - - - - diff --git a/elb/umn/temp/security_policy.tmp b/elb/umn/temp/security_policy.tmp deleted file mode 100644 index a3308774..00000000 --- a/elb/umn/temp/security_policy.tmp +++ /dev/null @@ -1,380 +0,0 @@ - - -

Security Policy

-

Scenarios

When you add HTTPS listeners, you can select desired security policies to improve service security. A security policy is a combination of TLS protocols and cipher suites.

- -

Adding a Security Policy

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Under Listeners, click Add Listener.
  6. In the Add Listener dialog, expand Advanced Settings, and select a security policy. Table 1 lists the parameters to be configured. -.. _elb_ug_jt_0022__table1247813103533: - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Security policy parameters

    Parameter

    -

    Description

    -

    TLS Version

    -

    Cipher Suite

    -

    TLS-1-0

    -

    TLS 1.0, TLS 1.1, and TLS 1.2 and supported cipher suites (high compatibility and moderate security)

    -

    TLS 1.2

    -

    TLS 1.1

    -

    TLS 1.0

    -

    ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA

    -

    TLS-1-1

    -

    TLS 1.1 and TLS 1.2 and supported cipher suites (moderate compatibility and moderate security)

    -

    TLS 1.2

    -

    TLS 1.1

    -

    TLS-1-2

    -

    TLS 1.2 and supported cipher suites (moderate compatibility and high security)

    -

    TLS 1.2

    -

    TLS-1-2-Strict

    -

    Strict TLS 1.2 and supported cipher suites (low compatibility and ultra-high security)

    -

    TLS 1.2

    -

    ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384

    -
    - -
  7. Click OK.
- -

Differences Between Security Policies

-.. _elb_ug_jt_0022__table8551776916: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 2 Differences among the four types of security policies

Security Policy

-

TLS-1-0

-

TLS-1-1

-

TLS-1-2

-

TLS-1-2-Strict

-

TLS-1-2-FS

-

TLS versions

-

Protocol-TLS 1.3

-

-

-

-

-

-

-

-

-

√

-

Protocol-TLS 1.2

-

√

-

√

-

√

-

√

-

√

-

Protocol-TLS 1.1

-

√

-

√

-

-

-

-

-

-

-

Protocol-TLS 1.0

-

√

-

-

-

-

-

-

-

-

-

Cipher suites

-

EDHE-RSA-AES128-GCM-SHA256

-

√

-

√

-

√

-

√

-

-

-

ECDHE-RSA-AES256-GCM-SHA384

-

√

-

√

-

√

-

√

-

√

-

ECDHE-RSA-AES128-SHA256

-

√

-

√

-

√

-

√

-

√

-

ECDHE-RSA-AES256-SHA384

-

√

-

√

-

√

-

√

-

√

-

AES128-GCM-SHA256

-

√

-

√

-

√

-

√

-

-

-

AES256-GCM-SHA384

-

√

-

√

-

√

-

√

-

-

-

AES128-SHA256

-

√

-

√

-

√

-

√

-

-

-

AES256-SHA256

-

√

-

√

-

√

-

√

-

-

-

ECDHE-RSA-AES128-SHA

-

√

-

√

-

√

-

-

-

-

-

ECDHE-RSA-AES256-SHA

-

√

-

√

-

√

-

-

-

-

-

AES128-SHA

-

√

-

√

-

√

-

-

-

-

-

AES256-SHA

-

√

-

√

-

√

-

-

-

-

-

ECDHE-ECDSA-AES128-GCM-SHA256

-

√

-

√

-

√

-

√

-

√

-

ECDHE-ECDSA-AES128-SHA256

-

√

-

√

-

√

-

√

-

√

-

ECDHE-ECDSA-AES128-SHA

-

√

-

√

-

√

-

-

-

-

-

ECDHE-ECDSA-AES256-GCM-SHA384

-

√

-

√

-

√

-

√

-

√

-

ECDHE-ECDSA-AES256-SHA384

-

√

-

√

-

√

-

√

-

√

-

ECDHE-ECDSA-AES256-SHA

-

√

-

√

-

√

-

-

-

-

-
- - -

Modifying a Security Policy

When you modify a security policy, ensure that the security group containing backend servers allows access from 100.125.0.0/16 and allows ICMP packets for UDP health checks. Otherwise, backend servers will be considered unhealthy, and routing will be affected.

-
  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Locate the listener and click on the right of its name.
  6. On the Modify Listener page, expand Advanced Settings and modify the security policy.
  7. Click OK.
- - - - - - - diff --git a/elb/umn/temp/service_overview.tmp b/elb/umn/temp/service_overview.tmp deleted file mode 100644 index ada8e3c4..00000000 --- a/elb/umn/temp/service_overview.tmp +++ /dev/null @@ -1,31 +0,0 @@ - - -

Service Overview

- - - - - diff --git a/elb/umn/temp/service_performance_and_load.tmp b/elb/umn/temp/service_performance_and_load.tmp deleted file mode 100644 index 5ccc91db..00000000 --- a/elb/umn/temp/service_performance_and_load.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

Service Performance and Load

-

- - - - - - - - diff --git a/elb/umn/temp/setting_an_alarm_rule.tmp b/elb/umn/temp/setting_an_alarm_rule.tmp deleted file mode 100644 index 1b77cea9..00000000 --- a/elb/umn/temp/setting_an_alarm_rule.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Setting an Alarm Rule

- - - - - - - - diff --git a/elb/umn/temp/sni_certificate_(for_https_listeners).tmp b/elb/umn/temp/sni_certificate_(for_https_listeners).tmp deleted file mode 100644 index 3c7bdcd0..00000000 --- a/elb/umn/temp/sni_certificate_(for_https_listeners).tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

SNI Certificate (for HTTPS Listeners)

-

Scenarios

If you have an application that can be accessed through multiple domain names and each domain name uses a different certificate, you can enable SNI when you add an HTTPS listener.

-

SNI is an extension to TLS and enables a server to present multiple certificates on the same IP address and TCP port number. This allows multiple secure (HTTPS) websites (or any other service over TLS) to be served by the same IP address without requiring all websites to use the same certificate. SNI allows the client to submit the domain name information while sending an SSL handshake request. Once the load balancer receives the request, it queries the right certificate based on the domain name and returns the corresponding certificate to the client. If no certificate is found, the load balancer will return a default certificate.

-

A maximum of 30 SNI certificates can be configured for each listener.

- -

Prerequisites

You have created a certificate by performing the operations in Creating and Managing a Certificate.

-
  • Only one domain name can be specified for each certificate. Wildcard-domain certificates are supported.

    - -
- -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  1. Locate the load balancer and click its name.
  2. Click Listeners.
    • For a shared load balancer, locate the listener and click Configure on the right of SNI.
    • For a classic load balancer, click Listeners, locate the listener, and click Modify in the Operation column. In the Modify Listener dialog box, modify the parameters as needed.
    -
  3. Enable SNI and select the SNI certificate to be used.
  4. Click OK.
- - - - - - - diff --git a/elb/umn/temp/specifications_of_dedicated_load_balancers.tmp b/elb/umn/temp/specifications_of_dedicated_load_balancers.tmp deleted file mode 100644 index ed600019..00000000 --- a/elb/umn/temp/specifications_of_dedicated_load_balancers.tmp +++ /dev/null @@ -1,216 +0,0 @@ - - -

Specifications of Dedicated Load Balancers

-

Dedicated load balancers are available in different specifications. Each specification contains some key metrics from which you can decide whether the specification meets your needs. When the traffic exceeds the selected specifications, new requests will not be routed, and packet loss will occur.

-
  • Maximum connections

    The metric measures the maximum number of concurrent connections that a load balancer can handle. If the number of connections reaches that defined in the specification, new requests will be discarded to ensure the performance of existing connections.

    -
  • Connections per second (CPS)

    CPS refers to the number of new connections that a load balancer establishes with clients per second. If the number reaches that defined in the specification, new requests will be discarded to ensure the performance of established connections.

    -

    When HTTPS listeners are establishing connections with clients, SSL handshakes occupy more system resources. The number of new HTTPS connections per second is only 10% of the number of new HTTP connections per second. For example, if the specification of a load balancer is small I, and the number of new HTTP connections is 10,000, the number of new HTTPS connections per second is 1,000.

    -
  • Queries per second (QPS)

    QPS measures the number of HTTP or HTTPS requests sent to a backend server per second. If the QPS reaches that defined in the specification, new requests will be discarded to ensure the performance of established connections.

    -
-

Table 1 and Table 2 list the specifications of dedicated load balancers. (Available specifications may vary depending on the resources in different regions.)

- -.. _en-us_topic_0287737145__table14428152722818: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Network load balancing (TCP/UDP)

Type

-

Maximum Connections

-

CPS

-

Bandwidth (Mbit/s)

-

Number of LCUs in an AZ

-

Small I

-

500,000

-

10,000

-

50

-

10

-

Small II

-

1,000,000

-

20,000

-

100

-

20

-

Medium I

-

2,000,000

-

40,000

-

200

-

40

-

Medium II

-

4,000,000

-

80,000

-

400

-

80

-

Large I

-

10000000

-

200,000

-

1,000

-

200

-

Large II

-

20000000

-

400,000

-

2,000

-

400

-
- - -.. _en-us_topic_0287737145__table201281815505: - -.. _en-us_topic_0287737145__table201281815505: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 2 Application load balancing (HTTP/HTTPS)

Type

-

Maximum Connections

-

CPS (HTTP)

-

CPS (HTTPS)

-

QPS

-

Bandwidth (Mbit/s)

-

Number of LCUs in an AZ

-

Small I

-

200,000

-

2,000

-

200

-

4,000

-

50

-

10

-

Small II

-

400,000

-

4,000

-

400

-

8,000

-

100

-

20

-

Medium I

-

800,000

-

8,000

-

800

-

16,000

-

200

-

40

-

Medium II

-

2,000,000

-

20,000

-

2,000

-

40,000

-

400

-

100

-

Large I

-

4,000,000

-

40,000

-

4,000

-

80,000

-

1,000

-

200

-

Large II

-

8,000,000

-

80,000

-

8,000

-

160,000

-

2,000

-

400

-
- -

If you have added multiple listeners to a load balancer, the sum of QPS values of all listeners cannot exceed the QPS defined in each specification.

- - - - - - - diff --git a/elb/umn/temp/sticky_session.tmp b/elb/umn/temp/sticky_session.tmp deleted file mode 100644 index 701e63f1..00000000 --- a/elb/umn/temp/sticky_session.tmp +++ /dev/null @@ -1,20 +0,0 @@ - - - -

Sticky Session

- -

- - - - - - - - - diff --git a/elb/umn/temp/tag.tmp b/elb/umn/temp/tag.tmp deleted file mode 100644 index 28d05ea0..00000000 --- a/elb/umn/temp/tag.tmp +++ /dev/null @@ -1,29 +0,0 @@ - - -

Tag

-

Scenarios

If you have a large number of cloud resources, you can assign different tags to the resources to quickly identify them and use these tags to easily manage your resources.

- -

Adding a Tag to a Load Balancer

You can add a tag to a load balancer in either of the following scenarios:

-
  • Add a tag when you create a load balancer.

    For detailed operations, see Creating a Shared Load Balancer.

    -
  • Add a tag to an existing load balancer.
    1. Log in to the management console.
    2. In the upper left corner of the page, click and select the desired region and project.
    3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
    4. Locate the load balancer and click its name.
    5. Under Tags, click Add Tag.
    6. In the Add Tag dialog box, enter a tag key and value and click OK.
      • A maximum of 20 tags can be added to a load balancer.
      • Each tag is a key-value pair, and the tag key is unique.
      - -
    -
- -

Adding a Tag to a Listener

You can add tags when you add listeners.

-

To add a tag to an existing listener, perform the following steps:

-
  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Listeners, locate the listener, and click its name.
  6. Under Tags, click Add Tag.
  7. In the Add Tag dialog box, enter a tag key and value and click OK.
    • A maximum of 20 tags can be added to a listener.
    • Each tag is a key-value pair, and the tag key is unique.
    - -
-

- -

Modifying a Tag

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Tags, select the tag to be edited, and click Edit in the Operation column. In the Edit Tag dialog box, change the tag value.

    The tag key cannot be changed.

    - -
  6. Click OK.
-

The operations for modifying a listener tag are not detailed here. Refer to the operations of modifying a load balancer tag.

- -

Deleting a Tag

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  4. Locate the load balancer and click its name.
  5. Click Tags, select the tag to be deleted, and click Delete in the Operation column.
  6. In the Delete Tag dialog box, click Yes.
-

The operations for deleting a listener tag are not detailed here. Refer to the operations of deleting a load balancer tag.

- - - diff --git a/elb/umn/temp/using_shared_load_balancers_—_advanced_level.tmp b/elb/umn/temp/using_shared_load_balancers_—_advanced_level.tmp deleted file mode 100644 index e656afc8..00000000 --- a/elb/umn/temp/using_shared_load_balancers_—_advanced_level.tmp +++ /dev/null @@ -1,156 +0,0 @@ - - -

Using Shared Load Balancers — Advanced Level

-

Scenarios

You have two web applications deployed on two ECSs separately, and the web applications provide one domain name but different URLs for users to access.

-

To forward requests based on URLs, you need to create a load balancer, add an HTTP or HTTPS listener, and add forwarding policies to specify the URLs.

-

An HTTP listener is used as an example to describe how to route requests from two URLs (/ELB01 and /ELB02) of the same domain name (www.example.com) to different backend servers.

- -

Prerequisites

  • You have added security group rules to allow traffic from the ports used by the two ECSs. (Alternatively, you can enable all ports first and then disable the ports that are no longer used.)
  • The security group containing the two ECSs allows traffic from 100.125.0.0/16. (ELB uses these IP addresses to perform health checks and route requests to backend servers.)
- -

Creating ECSs

ECSs are used as backend servers.

-

Each ECS needs an EIP to allow you to deploy the backend service on each ECS. In actual use, you can unbind the EIP from each ECS if the ECSs do not need to access the Internet or provide Internet-accessible services after the deployment is complete. Determine whether you need an EIP for your load balancer by referring to Load Balancing on a Public or Private Network.

- -
  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Computing > Elastic Cloud Server.
  4. Click Create ECS, configure the parameters, and click Create Now.

    -

    -The following table lists the specifications of the two ECSs. -.. _en-us_elb_02_0001__table169305003620: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 ECS specifications

    Item

    -

    Example Value

    -

    Name

    -

    ECS01 and ECS02

    -

    OS

    -

    CentOS 7.2 64bit

    -

    vCPUs

    -

    2

    -

    Memory

    -

    4 GB

    -

    System disk

    -

    40 GB

    -

    Data disk

    -

    100 GB

    -

    Bandwidth

    -

    5 Mbit/s

    -
    - - -
  5. Submit your request.
-

Deploying the Application

Deploy Nginx on the two ECSs and edit two HTML pages for the web applications so that a page with message "Welcome to ELB test page one!" is returned when ECS01 is accessed, and the other page with message "Welcome to ELB test page two!" is returned when ECS02 is accessed.

-
  1. Log in to the ECSs.
  2. Install and start Nginx.
    1. Install Nginx:

      yum -y install nginx

      -
    2. Start Nginx:

      systemctl start nginx.service

      -
    3. Enter http://EIP bound to the ECS in the address box of your browser.If the following page is displayed, Nginx has been installed.Figure 1 Nginx installed successfully
      - -
    -
  3. Modify the HTML page of ECS01.Move the index.html file from the default root directory of Nginx /usr/share/nginx/html to the ELB01 directory and modify the file to identify access to ECS01.
    1. Create the ELB01 directory and copy the index.html file to this directory:

      mkdir /usr/share/nginx/html/ELB01

      -

      cp /usr/share/nginx/html/index.html /usr/share/nginx/html/ELB01/

      -
    2. Open the index.html file.

      vim /usr/share/nginx/html/ELB01/index.html

      -
    3. Press i to enter editing mode.
    4. Modify the index.html file to be as follows:
       ...
      -    <body>
      -        <h1>Welcome to <strong>ELB</strong> test page one!</h1>
      -
      -        <div class="content">
      -            <p>This page is used to test the <strong>ELB</strong>!</p>
      -
      -            <div class="alert">
      -                <h2>ELB01</h2>
      -                <div class="content">
      -                    <p><strong>ELB test (page one)!</strong></p>
      -                    <p><strong>ELB test (page one)!</strong></p>
      -                    <p><strong>ELB test (page one)!</strong></p>
      -                </div>
      -            </div>
      -        </div>
      -    </body>
      -
    5. Press Esc to exit editing mode. Then, enter :wq to save the settings and exit the file.
    - -
  4. Modify the HTML page of ECS02.Move the index.html file from the default root directory of Nginx /usr/share/nginx/html to the ELB02 directory and modify the file to identify access to ECS02.
    1. Create the ELB02 directory and copy the index.html file to this directory:

      mkdir /usr/share/nginx/html/ELB02

      -

      cp /usr/share/nginx/html/index.html /usr/share/nginx/html/ELB02/

      -
    2. Open the index.html file.

      vim /usr/share/nginx/html/ELB02/index.html

      -
    3. Press i to enter editing mode.
    4. Modify the index.html file to be as follows:
      ...
      -    <body>
      -        <h1>Welcome to <strong>ELB</strong> test page two!</h1>
      -
      -        <div class="content">
      -            <p>This page is used to test the <strong>ELB</strong>!</p>
      -
      -            <div class="alert">
      -                <h2>ELB02</h2>
      -                <div class="content">
      -                    <p><strong>ELB test (page two)!</strong></p>
      -                    <p><strong>ELB test (page two)!</strong></p>
      -                    <p><strong>ELB test (page two)!</strong></p>
      -                </div>
      -             </div>
      -        </div>
      -    </body>
      -
    5. Press Esc to exit editing mode. Then, enter :wq to save the settings and exit the file.
    - -
  5. Use your browser to access http://ECS01 EIP/ELB01/ and http://ECS02 EIP/ELB02/ to verify that Nginx has been deployed.

    If the modified HTML pages are displayed, Nginx has been deployed.

    -
    • HTML page of ECS01Figure 2 Nginx successfully deployed on ECS01
      -
    • HTML page of ECS02Figure 3 Nginx successfully deployed on ECS02
      -
    -
- -

Creating a Load Balancer

  1. In the upper left corner of the page, click and select the desired region and project.
  2. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  3. Click Create Elastic Load Balancer and then configure the parameters.
  4. Click Create Now.
  5. Confirm the configuration and submit your request.
  6. View the newly created load balancer in the load balancer list.
- -

Adding a Listener

Add a listener to the created load balancer. When you add the listener, create a backend server group, configure a health check, and add the two ECSs to the created backend server group.

-Configure two forwarding policies to forward HTTP requests to the two ECSs, for example, requests from www.example.com/ELB01/ to ECS01, and those from www.example.com/ELB02/ to ECS02.Figure 4 Traffic forwarding
- -
  1. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  2. Locate the created load balancer and click its name.
  3. Under Listeners, click Add Listener.
  4. Configure the listener and click Next.
    • Name: Enter a name, for example, listener-HTTP.
    • Frontend Protocol/Port: Select a protocol and enter a port for the load balancer to receive requests. For example, set it to HTTP and 80.
    -
  5. Create a backend server group, configure a health check, and click Finish.
    • Backend server group
      • Name: Enter a name, for example, server_group-ELB.
      • Load Balancing Algorithm: Select an algorithm that the load balancer will use to route requests, for example, Weighted round robin.
      -
    -
    • Health check
      • Protocol: Select a protocol for the load balancer to perform health checks on backend servers. If the load balancer uses TCP, HTTP, or HTTPS to receive requests, the health check protocol can be TCP or HTTP. Here we use HTTP as an example. Note that the protocol cannot be changed after the listener is added.
      • Domain Name: Enter a domain name that will be used for health checks, for example, www.example.com.
      • Port: Enter a port for the load balancer to perform health checks on backend servers, for example, 80.
      -
    -
- -

Adding Forwarding Policies

  1. Click the name of the newly added listener and then click Add next to Forwarding Policies.
  2. Configure the forwarding policy and click Next.
    • Name: Enter a name for the forwarding policy, for example, forwarding_policy-ELB01.
    • Domain Name: Enter a domain name that will be used to forward the requests, for example, www.example.com. The domain name in the request must exactly match that specified in the forwarding policy.
    • URL: You can also specify a URL to forward the requests, for example, /ELB01/.
    • URL Matching Rule: Select the rule for matching specified URL string with the requested URL. Three options are available, Exact match, Prefix match, and Regular expression match. Exact match enjoys the highest priority, and Regular expression match the lowest priority. Select Exact match here.
    -
  3. Add the backend server group and configure a health check.
    • Backend server group
      • Name: Enter a name, for example, server_group-ELB01.
      • Load Balancing Algorithm: Select an algorithm that the load balancer will use to route requests, for example, Weighted round robin.
      -
    -
    • Health check
      • Protocol: Select a protocol for the load balancer to perform health checks on backend servers. If the load balancer uses TCP, HTTP, or HTTPS to receive requests, the health check protocol can be TCP or HTTP. Here we use HTTP as an example. Note that the protocol cannot be changed after the listener is added.
      • Domain Name: Enter a domain name that will be used for health checks, for example, www.example.com.
      • Port: Enter a port for the load balancer to perform health checks on backend servers, for example, 80.
      -
    -
  4. Select the newly added forwarding policy. On the Backend Server Groups tab page on the right, click Add.
  5. Select the server you want to add, set the backend port, and click Finish.
    • Backend server: ECS01
    • Backend port: Set it to 80. Backend servers will use this port to communicate with the load balancer.
    -
  6. Repeat 1 to 5 to add another forwarding policy, create a backend server group, and add ECS02 to the backend server group. Configure the parameters.
- -

Verifying Load Balancing

After the load balancer is configured, you can access the domain name or the specified URL to check whether the two ECSs are accessible.

-
  1. Modify the C:\Windows\System32\drivers\etc\hosts file on your PC to map the domain name to the load balancer EIP.View the load balancer EIP on the basic information page of the load balancer.Figure 5 hosts file on your PC
    - -
  2. On the CLI of your PC, run the following command to check whether the domain name is mapped to the load balancer EIP:

    ping www.example.com

    -

    If data packets are returned, the domain name has been mapped to the load balancer EIP.

    -
  3. Use your browser to access http://www.example.com/ELB01/. If the following page is displayed, the load balancer has routed the request to ECS01.Figure 6 Accessing ECS01
    -

    ELB01/ indicates that the default directory named ECS01 is accessed, while ELB01 indicates the file name. Therefore, the slash (/) following ELB01 must be retained.

    - -
  4. Use your browser to access http://www.example.com/ELB02/. If the following page is displayed, the load balancer has routed the request to ECS02.Figure 7 Accessing ECS02
    -
- - - - - - - diff --git a/elb/umn/temp/using_shared_load_balancers_—_entry_level.tmp b/elb/umn/temp/using_shared_load_balancers_—_entry_level.tmp deleted file mode 100644 index 96653615..00000000 --- a/elb/umn/temp/using_shared_load_balancers_—_entry_level.tmp +++ /dev/null @@ -1,143 +0,0 @@ - - -

Using Shared Load Balancers — Entry Level

-

Scenarios

You have a web application, which often needs to handle heavy traffic and is deployed on two ECSs for load balancing.

-

You can create a shared load balancer to distribute traffic evenly across the two ECSs, which eliminates SPOFs and makes your application more available.

- -

Prerequisites

  • You have added security group rules to allow traffic from the ports used by the two ECSs. (Alternatively, you can enable all ports first and then disable the ports that are no longer used.)
  • The security group containing the two ECSs allows traffic from 100.125.0.0/16. (ELB uses these IP addresses to perform health checks and route requests to backend servers.)
- -

Creating ECSs

ECSs are used as backend servers.

-

Each ECS needs an EIP for accessing the Internet, so that The EIP bound to the ECS is required only for configuring ECS backend services in this example. You need to determine whether to bind an EIP to the ECS based on the service plan.

-

Determine whether you need to bind an EIP to your load balancer by referring to Load Balancing on a Public or Private Network.

-
  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Computing > Elastic Cloud Server.
  4. Click Create ECS, configure the parameters, and click Create Now.

    -

    -The following table lists the specifications of the two ECSs. -.. _en-us_topic_0052569751__table9439114212376: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 ECS specifications

    Item

    -

    Example Value

    -

    Name

    -

    ECS01 and ECS02

    -

    OS

    -

    CentOS 7.2 64bit

    -

    vCPUs

    -

    2

    -

    Memory

    -

    4 GB

    -

    System disk

    -

    40 GB

    -

    Data disk

    -

    100 GB

    -

    Bandwidth

    -

    5 Mbit/s

    -
    - - -
  5. Submit your request.
- - -

Deploying the Application

Deploy Nginx on the two ECSs and edit two HTML pages for the web application so that a page with message "Welcome to ELB test page one!" is returned when ECS01 is accessed, and the other page with message "Welcome to ELB test page two!" is returned when ECS02 is accessed.

-
  1. Log in to the ECSs.
  2. Install and start Nginx.
    1. Install Nginx:

      yum -y install nginx

      -
    2. Start Nginx:

      systemctl start nginx.service

      -
    3. Enter http://EIP bound to the ECS in the address box of your browser.If the following page is displayed, Nginx has been installed.Figure 1 Nginx installed successfully
      - -
    -
  3. Modify the HTML page of ECS01.Modify the index.html file in the default root directory of Nginx /usr/share/nginx/html to identify access to ECS01.
    1. Open the index.html file.

      vim /usr/share/nginx/html/index.html

      -
    2. Press i to enter editing mode.
    3. Modify the index.html file to be as follows:
       ...
      -    <body>
      -        <h1>Welcome to <strong>ELB</strong> test page one!</h1>
      -
      -        <div class="content">
      -            <p>This page is used to test the <strong>ELB</strong>!</p>
      -
      -            <div class="alert">
      -                <h2>ELB01</h2>
      -                <div class="content">
      -                    <p><strong>ELB test (page one)!</strong></p>
      -                    <p><strong>ELB test (page one)!</strong></p>
      -                    <p><strong>ELB test (page one)!</strong></p>
      -                </div>
      -            </div>
      -        </div>
      -    </body>
      -
    4. Press Esc to exit editing mode. Then, enter :wq to save the settings and exit the file.
    - -
  4. Modify the HTML page of ECS02.Modify the index.html file in the default root directory of Nginx /usr/share/nginx/html to identify access to ECS02.
    1. Open the index.html file.

      vim /usr/share/nginx/html/index.html

      -
    2. Press i to enter editing mode.
    3. Modify the index.html file to be as follows:
      ...
      -    <body>
      -        <h1>Welcome to <strong>ELB</strong> test page two!</h1>
      -
      -        <div class="content">
      -            <p>This page is used to test the <strong>ELB</strong>!</p>
      -
      -            <div class="alert">
      -                <h2>ELB02</h2>
      -                <div class="content">
      -                    <p><strong>ELB test (page two)!</strong></p>
      -                    <p><strong>ELB test (page two)!</strong></p>
      -                    <p><strong>ELB test (page two)!</strong></p>
      -                </div>
      -             </div>
      -        </div>
      -    </body>
      -
    4. Press Esc to exit editing mode. Then, enter :wq to save the settings and exit the file.
    - -
  5. Use your browser to access http://ECS01 EIP and http://ECS02 EIP to verify that Nginx has been deployed.

    If the modified HTML pages are displayed, Nginx has been deployed.

    -
    • HTML page of ECS01Figure 2 Nginx successfully deployed on ECS01
      -
    • HTML page of ECS02Figure 3 Nginx successfully deployed on ECS02
      -
    -
- -

Creating a Load Balancer

  1. In the upper left corner of the page, click and select the desired region and project.
  2. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  3. Click Create Elastic Load Balancer and then configure the parameters.
  4. Click Create Now.
  5. Confirm the configuration and submit your request.
  6. View the newly created load balancer in the load balancer list.
- -

Adding a Listener

Add a listener to the created load balancer. When you add the listener, create a backend server group, configure a health check, and add the two ECSs to the created backend server group.

-Figure 4 Traffic forwarding
-
  1. Hover on in the upper left corner to display Service List and choose Network > Elastic Load Balancing.
  2. Locate the created load balancer (elb-01) and click its name.
  3. Under Listeners, click Add Listener.
  4. Configure the listener and click Next.
    • Name: Enter a name, for example, listener-HTTP.
    • Frontend Protocol/Port: Select a protocol and enter a port for the load balancer to receive requests. For example, set it to HTTP and 80.
    -
  5. Create a backend server group and configure a health check.
    • Backend server group
      • Name: Enter a name, for example, server_group-ELB.
      • Load Balancing Algorithm: Select an algorithm that the load balancer will use to route requests, for example, Weighted round robin.
      -
    -
    • Health check
      • Protocol: Select a protocol for the load balancer to perform health checks on backend servers. If the load balancer uses TCP, HTTP, or HTTPS to receive requests, the health check protocol can be TCP or HTTP. Here we use HTTP as an example. Note that the protocol cannot be changed after the listener is added.
      • Domain Name: Enter a domain name that will be used for health checks, for example, www.example.com.
      • Port: Enter a port for the load balancer to perform health checks on backend servers, for example, 80.
      -
    -
  6. Click the name of the newly added listener. On the Backend Server Groups tab page on the right, click Add.
  7. Select the servers you want to add, set the backend port, and click Finish.
    • Backend servers: Select ECS01 and ECS02.
    • Backend port: Set it to 80. Backend servers will use this port to communicate with the load balancer.
    -
- -

Verifying Load Balancing

After the load balancer is configured, you can access the domain name to check whether the two ECSs are accessible.

-
  1. Modify the C:\Windows\System32\drivers\etc\hosts file on your PC to map the domain name to the load balancer EIP.View the load balancer EIP on the basic information page of the load balancer.Figure 5 hosts file on your PC
    - -
  2. On the CLI of your PC, run the following command to check whether the domain name is mapped to the load balancer EIP:

    ping www.example.com

    -

    If data packets are returned, the domain name has been mapped to the load balancer EIP.

    -
  3. Use your browser to access http://www.example.com. If the following page is displayed, the load balancer has routed the request to ECS01.Figure 6 Accessing ECS01
    -
  4. Use your browser to access http://www.example.com. If the following page is displayed, the load balancer has routed the request to ECS02.Figure 7 Accessing ECS02
    -
- - - - - - - diff --git a/elb/umn/temp/viewing_metrics.tmp b/elb/umn/temp/viewing_metrics.tmp deleted file mode 100644 index 24e5f304..00000000 --- a/elb/umn/temp/viewing_metrics.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Viewing Metrics

-

Scenarios

Cloud Eye allows you to monitor your resources, including load balancers.

-

The transmission of monitoring data takes a while, so the status of each load balancer displayed on the Cloud Eye dashboard is not its real-time status. For a newly created load balancer or a newly added listener, you need to wait for about 5 minutes to 10 minutes before you can view its metrics.

- -

Prerequisites

  • The load balancer is running properly.

    If backend servers are stopped, faulty, or deleted, no monitoring data is displayed.

    -

    Cloud Eye stops monitoring a load balancer and removes it from the monitored object list if its backend servers have been deleted or are in stopped or faulty state for over 24 hours. However, the configured alarm rules will not be automatically deleted.

    - -
  • You have interconnected ELB with Cloud Eye and configured an alarm rule for the load balancer on the Cloud Eye console.

    Without alarm rules configured, there is no monitoring data. For details, see Setting an Alarm Rule.

    -
  • If an IAM user wants to view the ELB monitoring data on the Cloud Eye console, the IAM user must be granted the ELB Administrator permission. Otherwise, the IAM user cannot view all monitoring data.
- -

Background

If you set the weight of a backend server to 0, the load balancer will not route traffic to this server even if it is included in Healthy Servers on the Cloud Eye console.

- -

Procedure

  1. Log in to the management console.
  2. Under Management & Deployment, click Cloud Eye.
  3. In the navigation pane on the left, choose Cloud Service Monitoring > Elastic Load Balancing.
  4. Locate the load balancer and click View Metric in the Operation column.
- - - - - - - diff --git a/elb/umn/temp/viewing_traces.tmp b/elb/umn/temp/viewing_traces.tmp deleted file mode 100644 index 9d397e70..00000000 --- a/elb/umn/temp/viewing_traces.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Viewing Traces

-

Scenarios

CTS records the operations performed on ELB and allows you to view the operation records of the last seven days on the CTS console. To query these records, perform the following operations.

- -

Procedure

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Under Management & Deployment, click Cloud Trace Service.
  4. In the navigation pane on the left, choose Trace List.
  5. Specify the filters used for querying traces. The following filters are available:Figure 1 Filters
    -
    • Trace Type, Trace Source, Resource Type, and Search By

      Select a filter from the drop-down list.

      -

      If you select Trace name for Search By, you need to select a specific trace name.

      -

      If you select Resource ID for Search By, select or enter a specific resource ID.

      -

      If you select Resource name for Search By, select or enter a specific resource name.

      -
    • Operator: Select a specific operator (at the user level rather than the tenant level).
    • Trace Status: Available options include All trace statuses, Normal, Warning, and Incident. You can only select one of them.
    • Time range: You can query traces generated at any time range of the last seven days.
    -
  6. Click on the left of the required trace to expand its details.Figure 2 Expanding trace details
    -
  7. Click View Trace in the Operation column to view trace details.Figure 3 View Trace
    -

    For details about key fields in the trace, see the Cloud Trace Service User Guide.

    -
- - - - - - - diff --git a/elb/umn/temp/what_are_the_relationships_between_load_balancing_algorithms_and_sticky_session_types.tmp b/elb/umn/temp/what_are_the_relationships_between_load_balancing_algorithms_and_sticky_session_types.tmp deleted file mode 100644 index 34a79799..00000000 --- a/elb/umn/temp/what_are_the_relationships_between_load_balancing_algorithms_and_sticky_session_types.tmp +++ /dev/null @@ -1,268 +0,0 @@ - - -

What Are the Relationships Between Load Balancing Algorithms and Sticky Session Types?

-

Sticky sessions ensure that requests from the same client are forwarded to the same backend server. ELB supports three types of sticky sessions. Table 3 lists the relationships between load balancing algorithms and sticky session types of classic load balancers. Table 1 lists the relationships between load balancing algorithms and sticky session types of shared load balancers, and Table 2 lists the relationships between load balancing algorithms and sticky session types of dedicated load balancers.

-

Classic load balancers can no longer be created on the management console. Use shared load balancers or dedicated load balancers instead.

- - -.. _en-us_elb_05_0008__table44808652142126: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Sticky sessions supported by shared load balancers

Load Balancing Algorithm

-

Sticky Session Type

-

Layer 4 (TCP/UDP)

-

Layer 7 (HTTP/HTTPS)

-

Weighted round robin

-

Source IP address

-

Supported

-

Not supported

-

Load balancer cookie

-

N/A

-

Supported

-

Application cookie

-

N/A

-

Supported

-

Weighted least connections

-

Source IP address

-

Not supported

-

Not supported

-

Load balancer cookie

-

N/A

-

Not supported

-

Application cookie

-

N/A

-

Not supported

-

Source IP hash

-

Source IP address

-

N/A

-

Not supported

-

Load balancer cookie

-

N/A

-

Not supported

-

Application cookie

-

N/A

-

Not supported

-
- - -.. _en-us_elb_05_0008__table169631166584: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 2 Sticky sessions supported by dedicated load balancers

Load Balancing Algorithm

-

Sticky Session Type

-

Layer 4 (TCP/UDP)

-

Layer 7 (HTTP/HTTPS)

-

Weighted round robin

-

Source IP address

-

Supported

-

Not supported

-

Load balancer cookie

-

N/A

-

Supported

-

Application cookie

-

N/A

-

Not supported

-

Weighted least connections

-

Source IP address

-

Not supported

-

Not supported

-

Load balancer cookie

-

N/A

-

Not supported

-

Application cookie

-

N/A

-

Not supported

-

Source IP hash

-

Source IP address

-

N/A

-

Not supported

-

Load balancer cookie

-

N/A

-

Not supported

-

Application cookie

-

N/A

-

Not supported

-
- - -.. _en-us_elb_05_0008__table1612018518726: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 3 Session stickiness of classic load balancers

Load Balancing Algorithm

-

Sticky Session Type

-

Layer 4 (TCP/UDP)

-

Layer 7 (HTTP/HTTPS)

-

Round robin

-

Source IP address

-

Supported

-

Not supported

-

Load balancer cookie

-

N/A

-

Supported

-

Application cookie

-

N/A

-

Not supported

-

Least connections

-

Source IP address

-

Supported

-

Not supported

-

Load balancer cookie

-

N/A

-

Not supported

-

Application cookie

-

N/A

-

Not supported

-

Source IP hash

-

Source IP address

-

N/A

-

Not supported

-

Load balancer cookie

-

N/A

-

Not supported

-

Application cookie

-

N/A

-

Not supported

-
- -

Generally, the weighted round robin algorithm is recommended. Sticky sessions at Layer 4 use source IP addresses to main sessions, and sticky sessions at Layer 7 use load balancer cookies.

- - - - - - diff --git a/elb/umn/temp/what_do_i_do_if_a_load_balancer_fails_the_stress_test.tmp b/elb/umn/temp/what_do_i_do_if_a_load_balancer_fails_the_stress_test.tmp deleted file mode 100644 index 379d5b90..00000000 --- a/elb/umn/temp/what_do_i_do_if_a_load_balancer_fails_the_stress_test.tmp +++ /dev/null @@ -1,10 +0,0 @@ - - -

What Do I Do If a Load Balancer Fails the Stress Test?

-
  1. Check the load of backend servers. If their CPU usage reaches 100%, applications may have performance bottlenecks.
  2. Check the incoming traffic. If the incoming traffic exceeds the maximum bandwidth set for the EIP, a large number of packets will be lost and requests will not be responded to, thereby affecting the load balancer's performance.
  3. Check the number of short connections in the time_wait state on the clients. A possible cause is that there are insufficient client ports.
  4. The listening queue backlog of the backend servers is full. As a result, the backend server does not respond to SYN ACK packets, and the client times out. You can increase the upper limit of the backlog by adjusting the net.core.somaxconn parameter.
- - - - - - diff --git a/elb/umn/temp/what_is_elb.tmp b/elb/umn/temp/what_is_elb.tmp deleted file mode 100644 index 5a32082a..00000000 --- a/elb/umn/temp/what_is_elb.tmp +++ /dev/null @@ -1,37 +0,0 @@ - - -

What Is ELB?

-

Elastic Load Balancing (ELB) automatically distributes incoming traffic across multiple backend servers based on the listening rules you configure. ELB expands the service capabilities of your applications and improves their availability by eliminating single points of failure (SPOFs).

-

-

ELB Components

ELB consists of the following components:

-
  • Load balancer: distributes incoming traffic across backend servers in one or more availability zones (AZs).
  • Listener: uses the protocol and port you specify to check for requests from clients and route the requests to associated backend servers based on the listening rules you define. You can add one or more listeners to a load balancer.
  • Backend server group: routes requests from the load balancer to one or more backend servers. You need to add at least one backend server to a backend server group.

    You can set a weight for each backend server based on their performance.

    -

    You can also configure health checks for a backend server group to check the health of each backend server. When a backend server is unhealthy, the load balancer stops routing new requests to this server.

    -
- -Figure 1 ELB components
-

Load Balancer Type

ELB provides the following types of load balancers: classic load balancer, dedicated load balancer, and shared load balancer. Dedicated load balancer and shared load balancer are called elastic load balancers collectively.

-
  • Dedicated load balancers have exclusive use of underlying resources, so that the performance of a dedicated load balancer is not affected by other load balancers. In addition, there are a wide range of specifications available for selection.
-

Currently, dedicated load balancers are supported only in the eu-nl region.

- -

-
  • Shared load balancers are suitable for web services with heavy traffic. Requests are forwarded based on domain names or URLs, making request routing more flexible. Shared load balancers were previously named enhanced load balancers.
  • Classic load balancers can handle simple, light-traffic web services.

    Classic load balancers can no longer be created on the management console. Use shared load balancers or dedicated load balancers instead.

    - -
-

For details, see Differences Between Dedicated and Shared Load Balancers.

-

For details, see Differences Between Shared and Classic Load Balancers.

- -

Accessing ELB

You can use either of the following methods to access ELB:

-
  • Management console

    Log in to the management console and choose Network > Elastic Load Balancing (ELB).

    -
-
  • APIs

    You can call APIs to access ELB. For details, see the Elastic Load Balancing API Reference.

    -

    By default, load balancers created in the eu-de region are shared load balancers. APIs for shared load balancers are available only in this region.

    -

    By default, load balancers created in the eu-nl region are dedicated load balancers. APIs for dedicated load balancers are available only in this region.

    - -
- - - - - - - diff --git a/elb/umn/temp/what_types_of_sticky_sessions_does_elb_support.tmp b/elb/umn/temp/what_types_of_sticky_sessions_does_elb_support.tmp deleted file mode 100644 index c6efcf68..00000000 --- a/elb/umn/temp/what_types_of_sticky_sessions_does_elb_support.tmp +++ /dev/null @@ -1,14 +0,0 @@ - - -

What Types of Sticky Sessions Does ELB Support?

-

Dedicated load balancers: Source IP address and Load balancer cookie

-

Shared load balancers: Source IP address, Load balancer cookie, and Application cookie

-

Classic load balancers: Source IP address and Load balancer cookie

-

Classic load balancers can no longer be created on the management console.

- - - - - - - diff --git a/elb/umn/temp/when_is_a_backend_server_considered_healthy.tmp b/elb/umn/temp/when_is_a_backend_server_considered_healthy.tmp deleted file mode 100644 index fa3bd8c4..00000000 --- a/elb/umn/temp/when_is_a_backend_server_considered_healthy.tmp +++ /dev/null @@ -1,10 +0,0 @@ - - -

When Is a Backend Server Considered Healthy?

-

If a backend server is associated with a load balancer for the first time, the backend server is considered healthy after one health check. After this, the server is detected healthy after the maximum retries of health checks.

- - - - - - diff --git a/elb/umn/temp/why_does_elb_frequently_send_requests_to_backend_servers_during_health_checks.tmp b/elb/umn/temp/why_does_elb_frequently_send_requests_to_backend_servers_during_health_checks.tmp deleted file mode 100644 index bf766f53..00000000 --- a/elb/umn/temp/why_does_elb_frequently_send_requests_to_backend_servers_during_health_checks.tmp +++ /dev/null @@ -1,10 +0,0 @@ - - -

Why Does ELB Frequently Send Requests to Backend Servers During Health Checks?

-

ELB is deployed in cluster mode, and all nodes for request forwarding in the cluster send requests to backend servers at the same time. If the health check interval is too short, health checks are performed once every few seconds, and a large number of packets are sent to backend servers. To control the frequency of access to backend servers, change the health check interval by referring to Configuring a Health Check.

- - - - - - diff --git a/elb/umn/temp/why_is_the_interval_at_which_backend_servers_receive_health_check_packets_different_from_the_configured_health_check_interval.tmp b/elb/umn/temp/why_is_the_interval_at_which_backend_servers_receive_health_check_packets_different_from_the_configured_health_check_interval.tmp deleted file mode 100644 index 300e213f..00000000 --- a/elb/umn/temp/why_is_the_interval_at_which_backend_servers_receive_health_check_packets_different_from_the_configured_health_check_interval.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

Why Is the Interval at Which Backend Servers Receive Health Check Packets Different from the Configured Health Check Interval?

-

Each LVS node and Nginx node in the ELB system detect backend servers at the health check interval that you have specified for the backend server group.

-

During this period, backend servers receive multiple detection packets from LVS and Nginx nodes. This makes it seem that backend servers receive these packets at intervals shorter than the specified health check interval.

- - - - - - diff --git a/elb/umn/temp/why_is_the_security_warning_still_displayed_after_a_certificate_is_configured.tmp b/elb/umn/temp/why_is_the_security_warning_still_displayed_after_a_certificate_is_configured.tmp deleted file mode 100644 index d5ba3ef4..00000000 --- a/elb/umn/temp/why_is_the_security_warning_still_displayed_after_a_certificate_is_configured.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

Why Is the Security Warning Still Displayed After a Certificate Is Configured?

-

The following may cause the system to display a message indicating that a certificate is insecure:

-
  • The domain name used by the certificate is different from the domain name accessed by users. (If this is the case, check the domain name used the certificate to ensure that the domain names are the same or create a self-signed certificate.)
  • SNI is configured, but the specified domain name is different from the one used by the certificate.
  • The domain name level is inconsistent with the certificate level.
-

If the problem persists, run the curl Domain name command to locate the fault based on the error information returned by the system.

- - - - - - diff --git a/modelarts/umn/temp/accessing_a_real-time_service_(token-based_authentication).tmp b/modelarts/umn/temp/accessing_a_real-time_service_(token-based_authentication).tmp deleted file mode 100644 index f077c8c2..00000000 --- a/modelarts/umn/temp/accessing_a_real-time_service_(token-based_authentication).tmp +++ /dev/null @@ -1,47 +0,0 @@ - - -

Accessing a Real-Time Service (Token-based Authentication)

-

If a real-time service is in the Running state, the real-time service has been deployed successfully. This service provides a standard RESTful API for users to call. Before integrating the API to the production environment, commission the API. You can use either of the following methods to send an inference request to the real-time service:

-

Method 1: Use GUI-based Software for Inference (Postman) (Postman is recommended for Windows.)

-

Method 2: Run the cURL Command to Send an Inference Request (curl commands are recommended for Linux.)

-

Method 1: Use GUI-based Software for Inference (Postman)

  1. Download Postman and install it, or install the Postman Chrome extension. Alternatively, use other software that can send POST requests. Postman 7.24.0 is recommended.
  2. Open Postman.
  3. Set parameters on Postman. The following uses image classification as an example.
    • Select a POST task and copy the API URL to the POST text box. To obtain the API URL of the real-time service, switch to the Usage Guides tab on the page providing details about the real-time service. On the Headers tab page, set Key to X-Auth-Token and Value to the obtained token.

      -

      -
    • On the Body tab page, file input and text input are available.
      • File input

        Select form-data. Set KEY to the input parameter of the model, for example, images. Set VALUE to an image to be inferred (only one image can be inferred).

        -
      • Text input

        Select raw and then JSON(application/json). Enter the request body in the text box below. An example request body is as follows:

        -
        {
        -  "meta": {
        -    "uuid": "10eb0091-887f-4839-9929-cbc884f1e20e"
        -  },
        -  "data": {
        -    "req_data": [
        -      {
        -        "sepal_length": 3,
        -        "sepal_width": 1,
        -        "petal_length": 2.2,
        -        "petal_width": 4
        -      }
        -    ]
        -  }
        -}
        -

        meta can carry a universally unique identifier (UUID). When you call an API, the system provides a UUID. When the inference result is returned, the UUID is returned to trace the request. If you do not need this function, leave meta blank. data contains a req_data array for one or multiple pieces of input data. The parameters of each piece of data are determined by the model, such as sepal_length and sepal_width in this example.

        -
      -
    -
  4. After setting the parameters, click Send to send the request. The result is displayed in the response.
    • Inference result using file input: The field values in the return result vary with the model.
    • Inference result using text input: The request body contains meta and data. If the request contains uuid, uuid will be returned in the response. Otherwise, uuid is left blank. data contains a resp_data array for the inference results of one or multiple pieces of input data. The parameters of each result are determined by the model, for example, sepal_length and predictresult in this example.
    -
- -

Method 2: Run the cURL Command to Send an Inference Request

The command for sending inference requests can be input as a file or text.

- -
  1. File input
    curl -k -F 'images=@Image path' -H 'X-Auth-Token:Token value' -X POST Real-time service URL
    -
    • -k indicates that SSL websites can be accessed without using a security certificate.
    • -F indicates file input. In this example, the parameter name is images, which can be changed as required. The image storage path follows @.
    • -H indicates the header of the POST command. X-Auth-Token is the KEY value on the Headers page. Token value indicates the obtained token. For details about how to obtain the token, see .
    • POST is followed by the API URL of the real-time service.
    -

    The following is an example of the cURL command for inference with file input:

    -
    curl -k -F 'images=@/home/data/test.png' -H 'X-Auth-Token:MIISkAY***80T9wHQ==' -X POST https://modelarts-infers-1.xxx/v1/infers/eb3e0c54-3dfa-4750-af0c-95c45e5d3e83
    -
  2. Text input
    curl -k -d '{"data":{"req_data":[{"sepal_length":3,"sepal_width":1,"petal_length":2.2,"petal_width":4}]}}' -H 'X-Auth-Token:MIISkAY***80T9wHQ==' -H 'Content-type: application/json' -X POST https://modelarts-infers-1.xxx/v1/infers/eb3e0c54-3dfa-4750-af0c-95c45e5d3e83
    -

    -d indicates the text input of the request body.

    -
- - - -Parent topic: Real-Time Services - - - diff --git a/modelarts/umn/temp/arm-ascend_template.tmp b/modelarts/umn/temp/arm-ascend_template.tmp deleted file mode 100644 index 248280fc..00000000 --- a/modelarts/umn/temp/arm-ascend_template.tmp +++ /dev/null @@ -1,32 +0,0 @@ - - -

Arm-Ascend Template

-

Introduction

AI engine: MindSpore; Environment: Python 3.5; Input and output mode: undefined mode. Select an appropriate input and output mode based on the model function or application scenario. When using the template to import a model, select the model directory containing the model files.

- -

Template Input

The template input is the OM-based model package stored on OBS. Ensure that the OBS directory you use and ModelArts are in the same region. For details about model package requirements, see Model Package Example.

- -

Input and Output Mode

Undefined Mode can be overwritten. That is, you cannot select another input and output mode during model creation.

- -

Model Package Specifications

  • The model package must be stored in the OBS folder named model. Model files and the model inference code file are stored in the model folder.
  • The model inference code file is optional. If the file exists, the file name must be customize_service.py. Only one inference code file can exist in the model folder. For details about how to compile the model inference code file, see Specifications for Compiling Model Inference Code.
-
  • The structure of the model package imported using the template is as follows:
    model/
    -│
    -├── Model file                 //(Mandatory) The model file format varies according to the engine. For details, see the model package example.
    -├── Custom Python package           //(Optional) User's Python package, which can be directly referenced in the model inference code
    -├── customize_service.py  //(Optional) Model inference code file. The file name must be customize_service.py. Otherwise, the code is not considered as inference code.
    -
- -

Model Package Example

Structure of the OM-based model package

-

When publishing the model, you only need to specify the model directory.

-
OBS bucket/directory name
-|── model    (Mandatory) The folder must be named model and is used to store model-related files.
-    ├── <<Custom Python package>>    (Optional) User's Python package, which can be directly referenced in the model inference code
-    ├── model.om              (Mandatory) Protocol buffer file, which contains the diagram description of the model
-    ├──customize_service.py   (Optional) Model inference code file. The file must be named customize_service.py. Only one inference code file exists. The .py file on which customize_service.py depends can be directly put in the model directory.
- - - - -Parent topic: Template Description - - - diff --git a/modelarts/umn/temp/basic_concepts.tmp b/modelarts/umn/temp/basic_concepts.tmp deleted file mode 100644 index 2ff14e64..00000000 --- a/modelarts/umn/temp/basic_concepts.tmp +++ /dev/null @@ -1,13 +0,0 @@ - - -

Basic Concepts

-

A fine-grained policy is a set of permissions defining which operations on which cloud services can be performed. Each policy can define multiple permissions. After a policy is granted to a user group, users in the group can obtain all permissions defined by the policy. IAM implements fine-grained permissions management based on the permissions defined by policies.

-

IAM supports two types of policies:

-
  • Default policies: Define the common permissions preset in the system, which are typically read-only or management permissions for cloud services such as ModelArts. Default policies can be used only for authorization and cannot be edited or modified.
  • Custom policies: Define the permissions created and managed by users and are the extension and supplement of default policies.
- - - -Parent topic: Permissions Management - - - diff --git a/modelarts/umn/temp/basic_concepts_of_ai_development.tmp b/modelarts/umn/temp/basic_concepts_of_ai_development.tmp deleted file mode 100644 index 8821a53a..00000000 --- a/modelarts/umn/temp/basic_concepts_of_ai_development.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Basic Concepts of AI Development

-

Machine learning is classified into supervised, unsupervised, and reinforcement learning.

-
  • Supervised learning uses labeled samples to adjust the parameters of classifiers to achieve the required performance. It can be considered as learning with a teacher. Common supervised learning includes regression and classification.
  • Unsupervised learning is used to find hidden structures in unlabeled data. Clustering is a form of unsupervised learning.
  • Reinforcement learning is an area of machine learning concerned with how software agents ought to take actions in an environment so as to maximize some notion of cumulative reward.
-

Regression

Regression reflects the time feature of data attributes and generates a function that maps one data attribute to an actual variable prediction to find the dependency between the variable and attribute. Regression mainly analyzes data and predicts data and data relationship. Regression can be used for customer development, retention, customer churn prevention, production lifecycle analysis, sales trend prediction, and targeted promotion.

-

- -

Classification

Classification involves defining a set of categories based on the common features of objects and identifying which category an object belongs to. Classification can be used for customer classification, customer properties, feature analysis, customer satisfaction analysis, and customer purchase trend prediction.

-

- -

Clustering

Clustering involves grouping a set of objects in such a way that objects in the same group are more similar to each other than to those in other groups. Clustering can be used for customer segmentation, customer characteristic analysis, customer purchase trend prediction, and market segmentation.

-

-

Clustering analyzes data objects and produces class labels. Objects are grouped based on the maximized and minimized similarities to form clusters. In this way, objects in the same cluster are more similar to each other than to those in other clusters.

- - - - -Parent topic: Basic Knowledge - - - diff --git a/modelarts/umn/temp/basic_knowledge.tmp b/modelarts/umn/temp/basic_knowledge.tmp deleted file mode 100644 index 8b70f431..00000000 --- a/modelarts/umn/temp/basic_knowledge.tmp +++ /dev/null @@ -1,29 +0,0 @@ - - -

Basic Knowledge

- - - - - -Parent topic: Service Overview - - - diff --git a/modelarts/umn/temp/batch_services.tmp b/modelarts/umn/temp/batch_services.tmp deleted file mode 100644 index b522052f..00000000 --- a/modelarts/umn/temp/batch_services.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Batch Services

- - - - - -Parent topic: Model Deployment - - - diff --git a/modelarts/umn/temp/built-in_image_processing_mode.tmp b/modelarts/umn/temp/built-in_image_processing_mode.tmp deleted file mode 100644 index a3a26f96..00000000 --- a/modelarts/umn/temp/built-in_image_processing_mode.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Built-in Image Processing Mode

-

Input

The built-in image processing input and output mode can be applied to models such as image classification, object detection, and image semantic segmentation. The prediction request path is /, the request protocol is HTTPS, the request method is POST, Content-Type is multipart/form-data, key is images, and type is file. Before selecting this mode, ensure that your model can process the input data whose key is images.

- -

Output

The inference result is returned in JSON format. The specific fields are determined by the model.

- -

Sample Request

In this mode, input an image to be processed in the inference request. The response in JSON format varies according to the model. The following are examples:

-
  • Performing prediction on the console
  • Using Postman to call a RESTful API for prediction

    After a model is deployed as a service, you can obtain the API URL on the Usage Guides tab page of the service details page. On the Body tab page, set the request body. Set key to images, select File, select the image to be processed, and click send to send your prediction request.

    -
- - - - -Parent topic: Input and Output Modes - - - diff --git a/modelarts/umn/temp/built-in_object_detection_mode.tmp b/modelarts/umn/temp/built-in_object_detection_mode.tmp deleted file mode 100644 index 57504418..00000000 --- a/modelarts/umn/temp/built-in_object_detection_mode.tmp +++ /dev/null @@ -1,85 +0,0 @@ - - -

Built-in Object Detection Mode

-

Input

This is a built-in input and output mode for object detection. The models using this mode are identified as object detection models. The prediction request path is /, the request protocol is HTTP, the request method is POST, Content-Type is multipart/form-data, key is images, and type is file. Before selecting this mode, ensure that your model can process the input data whose key is images.

- -

Output

The inference result is returned in JSON format. For details about the fields, see Table 1.

- -.. _modelarts_23_0100__en-us_topic_0172873542_table101531747125712: - - - - - - - - - - - - - - - - - - - -
Table 1 Parameters

Field

-

Type

-

Description

-

detection_classes

-

String array

-

List of detected objects, for example, ["flowers","cat"]

-

detection_boxes

-

Float array

-

Coordinates of the bounding box, in the format of

-

detection_scores

-

Float array

-

Confidence scores of detected objects, which are used to measure the detection accuracy

-
- -

The JSON Schema of the inference result is as follows:

-
{
-	"type": "object",
-	"properties": {
-		"detection_classes": {
-			"items": {
-				"type": "string"
-			},
-			"type": "array"
-		},
-		"detection_boxes": {
-			"items": {
-				"minItems": 4,
-				"items": {
-					"type": "number"
-				},
-				"type": "array",
-				"maxItems": 4
-			},
-			"type": "array"
-		},
-		"detection_scores": {
-			"items": {
-				"type": "string"
-			},
-			"type": "array"
-		}
-	}
-}
- -

Sample Request

In this mode, input an image to be processed in the inference request. The inference result is returned in JSON format. The following are examples:
  • Performing prediction on the console

    On the Prediction tab page of the service details page, upload an image and click Predict to obtain the prediction result.

    -
  • Using Postman to call a RESTful API for prediction

    After a model is deployed as a service, you can obtain the API URL on the Usage Guides tab page of the service details page.

    -
    • On the Headers tab page, set Content-Type to multipart/form-data and X-Auth-Token to the actual token obtained.
    -
    • On the Body tab page, set the request body. Set key to images, select File, select the image to be processed, and click send to send your prediction request.
    -
- - - - - -Parent topic: Input and Output Modes - - - diff --git a/modelarts/umn/temp/built-in_predictive_analytics_mode.tmp b/modelarts/umn/temp/built-in_predictive_analytics_mode.tmp deleted file mode 100644 index 663b7589..00000000 --- a/modelarts/umn/temp/built-in_predictive_analytics_mode.tmp +++ /dev/null @@ -1,142 +0,0 @@ - - -

Built-in Predictive Analytics Mode

-

Input

This is a built-in input and output mode for predictive analytics. The models using this mode are identified as predictive analytics models. The prediction request path is /, the request protocol is HTTP, the request method is POST, and Content-Type is application/json. The request body is in JSON format. For details about the JSON fields, see Table 1. Before selecting this mode, ensure that your model can process the input data in JSON Schema format.

- -.. _modelarts_23_0102__en-us_topic_0172873544_table101531747125712: - - - - - - - - - - - -
Table 1 JSON field description

Field

-

Type

-

Description

-

data

-

Data structure

-

Inference data. For details, see Table 2.

-
- - -.. _modelarts_23_0102__en-us_topic_0172873544_table159187574436: - - - - - - - - - - - -
Table 2 Data description

Field

-

Type

-

Description

-

req_data

-

ReqData array

-

List of inference data

-
- -

ReqData is of the Object type and indicates the inference data. The data structure is determined by the application scenario. For models using this mode, the preprocessing logic in the custom model inference code should be able to correctly process the data inputted in the format defined by the mode.

-

The JSON Schema of a prediction request is as follows:

-
{
-	"type": "object",
-	"properties": {
-		"data": {
-			"type": "object",
-			"properties": {
-				"req_data": {
-					"items": [{
-						"type": "object",
-						"properties": {}
-					}],
-					"type": "array"
-				}
-			}
-		}
-	}
-}
- -

Output

The inference result is returned in JSON format. For details about the JSON fields, see Table 3.

- -.. _modelarts_23_0102__en-us_topic_0172873544_table49621346461: - - - - - - - - - - - -
Table 3 JSON field description

Field

-

Type

-

Description

-

data

-

Data structure

-

Inference data. For details, see Table 4.

-
- - -.. _modelarts_23_0102__en-us_topic_0172873544_table196311344469: - - - - - - - - - - - -
Table 4 Data description

Field

-

Type

-

Description

-

resp_data

-

RespData array

-

List of prediction results

-
- -

Similar to ReqData, RespData is also of the Object type and indicates the prediction result. Its structure is determined by the application scenario. For models using this mode, the postprocessing logic in the custom model inference code should be able to correctly output data in the format defined by the mode.

-

The JSON Schema of a prediction result is as follows:

-
{
-	"type": "object",
-	"properties": {
-		"data": {
-			"type": "object",
-			"properties": {
-				"resp_data": {
-					"type": "array",
-					"items": [{
-						"type": "object",
-						"properties": {}
-					}]
-				}
-			}
-		}
-	}
-}
- -

Sample Request

In this mode, input the data to be predicted in JSON format. The prediction result is returned in JSON format. The following are examples:

-
  • Performing prediction on the console

    On the Prediction tab page of the service details page, enter inference code and click Predict to obtain the prediction result.

    -
  • Using Postman to call a RESTful API for prediction

    After a model is deployed as a service, you can obtain the API URL on the Usage Guides tab page of the service details page.

    -
    • On the Headers tab page, set Content-Type to application/json and X-Auth-Token to the actual token obtained.
    • On the Body tab page, edit the data to be predicted and click send to send your prediction request.
    -
- - - - -Parent topic: Input and Output Modes - - - diff --git a/modelarts/umn/temp/caffe-cpu-py36_general_template.tmp b/modelarts/umn/temp/caffe-cpu-py36_general_template.tmp deleted file mode 100644 index ccfcb622..00000000 --- a/modelarts/umn/temp/caffe-cpu-py36_general_template.tmp +++ /dev/null @@ -1,33 +0,0 @@ - - -

Caffe-CPU-py36 General Template

-

Introduction

AI engine: CPU-based Caffe 1.0; Environment: Python 3.6; Input and output mode: undefined mode. Select an appropriate input and output mode based on the model function or application scenario. When using the template to import a model, select the model directory containing the model files.

- -

Template Input

The template input is the Caffe-based model package stored on OBS. Ensure that the OBS directory you use and ModelArts are in the same region. For details about model package requirements, see Model Package Example.

- -

Input and Output Mode

Undefined Mode can be overwritten. That is, you can select another input and output mode during model creation.

- -

Model Package Specifications

  • The model package must be stored in the OBS folder named model. Model files and the model inference code file are stored in the model folder.
  • The model inference code file is optional. If the file exists, the file name must be customize_service.py. Only one inference code file can exist in the model folder. For details about how to compile the model inference code file, see Specifications for Compiling Model Inference Code.
-
  • The structure of the model package imported using the template is as follows:
    model/
    -│
    -├── Model file                 //(Mandatory) The model file format varies according to the engine. For details, see the model package example.
    -├── Custom Python package           //(Optional) User's Python package, which can be directly referenced in the model inference code
    -├── customize_service.py  //(Optional) Model inference code file. The file name must be customize_service.py. Otherwise, the code is not considered as inference code.
    -
- -

Model Package Example

Structure of the Caffe-based model package

-When publishing the model, you only need to specify the model directory.
OBS bucket/directory name
-|── model    (Mandatory) The folder must be named model and is used to store model-related files.
-    |── <<Custom Python package>>      (Optional) User's Python package, which can be directly referenced in the model inference code
-    |── deploy.prototxt         (Mandatory) Caffe model file, which contains information such as the model network structure
-    |── resnet.caffemodel       (Mandatory) Caffe model file, which contains variable and weight information
-   |── customize_service.py    (Optional) Model inference code file. The file must be named customize_service.py. Only one inference code file exists. The .py file on which customize_service.py depends can be directly put in the model directory.
- - - - - -Parent topic: Template Description - - - diff --git a/modelarts/umn/temp/caffe-gpu-py36_general_template.tmp b/modelarts/umn/temp/caffe-gpu-py36_general_template.tmp deleted file mode 100644 index bcfba435..00000000 --- a/modelarts/umn/temp/caffe-gpu-py36_general_template.tmp +++ /dev/null @@ -1,33 +0,0 @@ - - -

Caffe-GPU-py36 General Template

-

Introduction

AI engine: GPU-based Caffe 1.0; Environment: Python 3.6; Input and output mode: undefined mode. Select an appropriate input and output mode based on the model function or application scenario. When using the template to import a model, select the model directory containing the model files.

- -

Template Input

The template input is the Caffe-based model package stored on OBS. Ensure that the OBS directory you use and ModelArts are in the same region. For details about model package requirements, see Model Package Example.

- -

Input and Output Mode

Undefined Mode can be overwritten. That is, you can select another input and output mode during model creation.

- -

Model Package Specifications

  • The model package must be stored in the OBS folder named model. Model files and the model inference code file are stored in the model folder.
  • The model inference code file is optional. If the file exists, the file name must be customize_service.py. Only one inference code file can exist in the model folder. For details about how to compile the model inference code file, see Specifications for Compiling Model Inference Code.
-
  • The structure of the model package imported using the template is as follows:
    model/
    -│
    -├── Model file                 //(Mandatory) The model file format varies according to the engine. For details, see the model package example.
    -├── Custom Python package           //(Optional) User's Python package, which can be directly referenced in the model inference code
    -├── customize_service.py  //(Optional) Model inference code file. The file name must be customize_service.py. Otherwise, the code is not considered as inference code.
    -
- -

Model Package Example

Structure of the Caffe-based model package

-When publishing the model, you only need to specify the model directory.
OBS bucket/directory name
-|── model    (Mandatory) The folder must be named model and is used to store model-related files.
-    |── <<Custom Python package>>      (Optional) User's Python package, which can be directly referenced in the model inference code
-    |── deploy.prototxt         (Mandatory) Caffe model file, which contains information such as the model network structure
-    |── resnet.caffemodel       (Mandatory) Caffe model file, which contains variable and weight information
-   |── customize_service.py    (Optional) Model inference code file. The file must be named customize_service.py. Only one inference code file exists. The .py file on which customize_service.py depends can be directly put in the model directory.
- - - - - -Parent topic: Template Description - - - diff --git a/modelarts/umn/temp/caffe.tmp b/modelarts/umn/temp/caffe.tmp deleted file mode 100644 index fd4c431b..00000000 --- a/modelarts/umn/temp/caffe.tmp +++ /dev/null @@ -1,763 +0,0 @@ - - -

Caffe

-

Training and Saving a Model

lenet_train_test.prototxt file

-
  1
-  2
-  3
-  4
-  5
-  6
-  7
-  8
-  9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
name: "LeNet"
-layer {
-  name: "mnist"
-  type: "Data"
-  top: "data"
-  top: "label"
-  include {
-    phase: TRAIN
-  }
-  transform_param {
-    scale: 0.00390625
-  }
-  data_param {
-    source: "examples/mnist/mnist_train_lmdb"
-    batch_size: 64
-    backend: LMDB
-  }
-}
-layer {
-  name: "mnist"
-  type: "Data"
-  top: "data"
-  top: "label"
-  include {
-    phase: TEST
-  }
-  transform_param {
-    scale: 0.00390625
-  }
-  data_param {
-    source: "examples/mnist/mnist_test_lmdb"
-    batch_size: 100
-    backend: LMDB
-  }
-}
-layer {
-  name: "conv1"
-  type: "Convolution"
-  bottom: "data"
-  top: "conv1"
-  param {
-    lr_mult: 1
-  }
-  param {
-    lr_mult: 2
-  }
-  convolution_param {
-    num_output: 20
-    kernel_size: 5
-    stride: 1
-    weight_filler {
-      type: "xavier"
-    }
-    bias_filler {
-      type: "constant"
-    }
-  }
-}
-layer {
-  name: "pool1"
-  type: "Pooling"
-  bottom: "conv1"
-  top: "pool1"
-  pooling_param {
-    pool: MAX
-    kernel_size: 2
-    stride: 2
-  }
-}
-layer {
-  name: "conv2"
-  type: "Convolution"
-  bottom: "pool1"
-  top: "conv2"
-  param {
-    lr_mult: 1
-  }
-  param {
-    lr_mult: 2
-  }
-  convolution_param {
-    num_output: 50
-    kernel_size: 5
-    stride: 1
-    weight_filler {
-      type: "xavier"
-    }
-    bias_filler {
-      type: "constant"
-    }
-  }
-}
-layer {
-  name: "pool2"
-  type: "Pooling"
-  bottom: "conv2"
-  top: "pool2"
-  pooling_param {
-    pool: MAX
-    kernel_size: 2
-    stride: 2
-  }
-}
-layer {
-  name: "ip1"
-  type: "InnerProduct"
-  bottom: "pool2"
-  top: "ip1"
-  param {
-    lr_mult: 1
-  }
-  param {
-    lr_mult: 2
-  }
-  inner_product_param {
-    num_output: 500
-    weight_filler {
-      type: "xavier"
-    }
-    bias_filler {
-      type: "constant"
-    }
-  }
-}
-layer {
-  name: "relu1"
-  type: "ReLU"
-  bottom: "ip1"
-  top: "ip1"
-}
-layer {
-  name: "ip2"
-  type: "InnerProduct"
-  bottom: "ip1"
-  top: "ip2"
-  param {
-    lr_mult: 1
-  }
-  param {
-    lr_mult: 2
-  }
-  inner_product_param {
-    num_output: 10
-    weight_filler {
-      type: "xavier"
-    }
-    bias_filler {
-      type: "constant"
-    }
-  }
-}
-layer {
-  name: "accuracy"
-  type: "Accuracy"
-  bottom: "ip2"
-  bottom: "label"
-  top: "accuracy"
-  include {
-    phase: TEST
-  }
-}
-layer {
-  name: "loss"
-  type: "SoftmaxWithLoss"
-  bottom: "ip2"
-  bottom: "label"
-  top: "loss"
-}
-
-
-

lenet_solver.prototxt file

-
 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
# The train/test net protocol buffer definition
-net: "examples/mnist/lenet_train_test.prototxt"
-# test_iter specifies how many forward passes the test should carry out.
-# In the case of MNIST, we have test batch size 100 and 100 test iterations,
-# covering the full 10,000 testing images.
-test_iter: 100
-# Carry out testing every 500 training iterations.
-test_interval: 500
-# The base learning rate, momentum and the weight decay of the network.
-base_lr: 0.01
-momentum: 0.9
-weight_decay: 0.0005
-# The learning rate policy
-lr_policy: "inv"
-gamma: 0.0001
-power: 0.75
-# Display every 100 iterations
-display: 100
-# The maximum number of iterations
-max_iter: 1000
-# snapshot intermediate results
-snapshot: 5000
-snapshot_prefix: "examples/mnist/lenet"
-# solver mode: CPU or GPU
-solver_mode: CPU
-
-
-

Train the model.

-
./build/tools/caffe train --solver=examples/mnist/lenet_solver.prototxt
-

The caffemodel file is generated after model training. Rewrite the lenet_train_test.prototxt file to the lenet_deploy.prototxt file used for deployment by modifying input and output layers.

-
  1
-  2
-  3
-  4
-  5
-  6
-  7
-  8
-  9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
name: "LeNet"
-layer {
-  name: "data"
-  type: "Input"
-  top: "data"
-  input_param { shape: { dim: 1 dim: 1  dim: 28 dim: 28 } } 
-}
-layer {
-  name: "conv1"
-  type: "Convolution"
-  bottom: "data"
-  top: "conv1"
-  param {
-    lr_mult: 1
-  }
-  param {
-    lr_mult: 2
-  }
-  convolution_param {
-    num_output: 20
-    kernel_size: 5
-    stride: 1
-    weight_filler {
-      type: "xavier"
-    }
-    bias_filler {
-      type: "constant"
-    }
-  }
-}
-layer {
-  name: "pool1"
-  type: "Pooling"
-  bottom: "conv1"
-  top: "pool1"
-  pooling_param {
-    pool: MAX
-    kernel_size: 2
-    stride: 2
-  }
-}
-layer {
-  name: "conv2"
-  type: "Convolution"
-  bottom: "pool1"
-  top: "conv2"
-  param {
-    lr_mult: 1
-  }
-  param {
-    lr_mult: 2
-  }
-  convolution_param {
-    num_output: 50
-    kernel_size: 5
-    stride: 1
-    weight_filler {
-      type: "xavier"
-    }
-    bias_filler {
-      type: "constant"
-    }
-  }
-}
-layer {
-  name: "pool2"
-  type: "Pooling"
-  bottom: "conv2"
-  top: "pool2"
-  pooling_param {
-    pool: MAX
-    kernel_size: 2
-    stride: 2
-  }
-}
-layer {
-  name: "ip1"
-  type: "InnerProduct"
-  bottom: "pool2"
-  top: "ip1"
-  param {
-    lr_mult: 1
-  }
-  param {
-    lr_mult: 2
-  }
-  inner_product_param {
-    num_output: 500
-    weight_filler {
-      type: "xavier"
-    }
-    bias_filler {
-      type: "constant"
-    }
-  }
-}
-layer {
-  name: "relu1"
-  type: "ReLU"
-  bottom: "ip1"
-  top: "ip1"
-}
-layer {
-  name: "ip2"
-  type: "InnerProduct"
-  bottom: "ip1"
-  top: "ip2"
-  param {
-    lr_mult: 1
-  }
-  param {
-    lr_mult: 2
-  }
-  inner_product_param {
-    num_output: 10
-    weight_filler {
-      type: "xavier"
-    }
-    bias_filler {
-      type: "constant"
-    }
-  }
-}
-layer {
-  name: "prob"
-  type: "Softmax"
-  bottom: "ip2"
-  top: "prob"
-}
-
-
- -

Inference Code

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
from model_service.caffe_model_service import CaffeBaseService
-
-import numpy as np
-
-import os, json
-
-import caffe
-
-from PIL import Image
-
-
-class LenetService(CaffeBaseService):
-
-    def __init__(self, model_name, model_path):
-        # Call the inference method of the parent class.
-        super(LenetService, self).__init__(model_name, model_path)
-
-        # Configure preprocessing information.
-        transformer = caffe.io.Transformer({'data': self.net.blobs['data'].data.shape})
-        # Transform to NCHW.
-        transformer.set_transpose('data', (2, 0, 1)) 
-        # Perform normalization.
-        transformer.set_raw_scale('data', 255.0)
-
-        # If the batch size is set to 1, inference is supported for only one image.
-        self.net.blobs['data'].reshape(1, 1, 28, 28)
-        self.transformer = transformer
-
-       # Define the class labels.
-        self.label = [0,1,2,3,4,5,6,7,8,9]
-
-
-    def _preprocess(self, data):
-
-        for k, v in data.items():
-            for file_name, file_content in v.items():
-                im = caffe.io.load_image(file_content, color=False)
-               # Pre-process the images.
-                self.net.blobs['data'].data[...] = self.transformer.preprocess('data', im)
-
-                return
-
-    def _postprocess(self, data):
-
-        data = data['prob'][0, :]
-        predicted = np.argmax(data)
-        predicted = {"predicted" : str(predicted) }
-
-        return predicted
-
-
- - - - -Parent topic: Examples of Custom Scripts - - - diff --git a/modelarts/umn/temp/can_i_add_multiple_labels_to_an_image_for_an_object_detection_project.tmp b/modelarts/umn/temp/can_i_add_multiple_labels_to_an_image_for_an_object_detection_project.tmp deleted file mode 100644 index 2056d5b7..00000000 --- a/modelarts/umn/temp/can_i_add_multiple_labels_to_an_image_for_an_object_detection_project.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

Can I Add Multiple Labels to an Image for an Object Detection Project?

-

Yes. You can add multiple labels to an image.

- - - -Parent topic: ExeML - - - diff --git a/modelarts/umn/temp/change_history.tmp b/modelarts/umn/temp/change_history.tmp deleted file mode 100644 index 32ee41e6..00000000 --- a/modelarts/umn/temp/change_history.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Change History

- -.. _modelarts_04_0099__en-us_topic_0135264638_en-us_topic_0135264638_table4331195115321: - - - - - - - - - -

Released On

-

Description

-

2021-04-30

-

This is the first official release.

-
- - - diff --git a/modelarts/umn/temp/common_concepts_of_modelarts.tmp b/modelarts/umn/temp/common_concepts_of_modelarts.tmp deleted file mode 100644 index 2189b256..00000000 --- a/modelarts/umn/temp/common_concepts_of_modelarts.tmp +++ /dev/null @@ -1,20 +0,0 @@ - - -

Common Concepts of ModelArts

-

ExeML

ExeML is the process of automating model design, parameter tuning, and model training, model compression, and model deployment with the labeled data. The process is code-free and does not require developers to have experience in model development. A model can be built in three steps: labeling data, training a model, and deploying the model.

- -

Inference

Inference is the process of deriving a new judgment from a known judgment according to a certain strategy. In AI, machines simulate human intelligence, and complete inference based on neural networks.

- -

Real-Time Inference

Real-time inference specifies a web service that provides an inference result for each inference request.

- -

Batch Inference

Batch inference specifies a batch job that processes batch data for inference.

- -

Resource Pool

ModelArts provides large-scale computing clusters for model development, training, and deployment. There are two types of resource pools: public resource pool and dedicated resource pool. The public resource pool is provided by default. Dedicated resource pools are created separately and used exclusively.

- - - - -Parent topic: Basic Knowledge - - - diff --git a/modelarts/umn/temp/common_operations_on_jupyter_notebook.tmp b/modelarts/umn/temp/common_operations_on_jupyter_notebook.tmp deleted file mode 100644 index d97be311..00000000 --- a/modelarts/umn/temp/common_operations_on_jupyter_notebook.tmp +++ /dev/null @@ -1,82 +0,0 @@ - - -

Common Operations on Jupyter Notebook

-

This section describes common operations on Jupyter Notebook.

-

Opening Jupyter Notebook

In the notebook instance list, locate the row where the target notebook instance resides and click Open in the Operation column to switch to the Jupyter Notebook page.

-

Two tab pages are available on the Jupyter Notebook page: Files and Running.

-Figure 1 Jupyter Notebook
- -

Selecting Different AI Engines to Create Files

Open a notebook instance and go to the Jupyter Notebook page. On the Files tab page, click New in the upper right corner, select the required AI engine, and create a file for encoding.

-Figure 2 Selecting different AI engines
- -

Uploading a File

Open a notebook instance and go to the Jupyter Notebook page. On the Files tab page, click Upload in the upper right corner to select a file from the local PC and upload it.

-Figure 3 Uploading a file
- -

Compiling a File

After a file is created, click the file name to go to the file compilation page.

-Figure 4 Compiling a file
- -.. _modelarts_23_0120__en-us_topic_0188347008_table9727162374411: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Introduction to the file compilation page

No.

-

Area

-

Description

-

1

-

File name

-

You can enter a user-defined file name in this area. After the file name is changed and saved, the new file name is updated to the file list accordingly.

-

2

-

Menu bar

-

The menu bar provides rich functions such as File, Edit, View, Insert, Cell, Kernel, and Help. For details, see Jupyter Notebook Documentation. The following toolbar provides common functions for compiling common Python running files.

-

3

-

Toolbar

-

The toolbar lists the common shortcut operations. From left to right, the shortcut operations are as follows: saving a file, adding a new cell, cutting a selected cell, copying a selected cell, pasting a selected cell, moving a selected cell upwards, moving a selected cell downwards, running a selected cell, terminating the kernel, restarting the kernel, and restarting the kernel and running all cells again.

-

The Code drop-down list contains the following options:

-
  • Code: Write Python code.
  • MarkDown: Write MarkDown code, which is usually used for comments.
  • Raw NBConvert: conversion tool.
  • Heading: Quickly add a MarkDown title.
-

4

-

AI engine and Python version

-

Displays the AI engine and Python version corresponding to the current file. For details about all AI engines and Python versions supported by ModelArts, see Supported AI Engines.

-

5

-

Code cell

-

Each cell has two modes: command mode and editing mode.

-

The blue bar on the left indicates the command mode, and the green bar indicates the editing mode (in this mode, the cursor exists in the cell and you can write code). In command mode, you can press Enter or click the code box to enter the editing mode. In editing mode, you can press ESC or click the left area of the code box to enter the command mode.

-

-
- - -

Deleting a File or Folder

To delete a file or folder from Jupyter Notebook, select the file or folder in the Files list and click the Delete button.

-

After the file or folder is deleted, click the Refresh button in the upper right corner to refresh the Jupyter page and clear the cache.

- -Figure 5 Jupyter page
- - - - -Parent topic: Using Jupyter Notebook - - - diff --git a/modelarts/umn/temp/compressing_and_converting_models.tmp b/modelarts/umn/temp/compressing_and_converting_models.tmp deleted file mode 100644 index ea3f5bc3..00000000 --- a/modelarts/umn/temp/compressing_and_converting_models.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

Compressing and Converting Models

-

To obtain higher computing power, you can deploy the models created on ModelArts or a local PC on the Ascend chip, Arm, or GPU. In this case, you need to compress or convert the models to the required formats before deploying them.

-

ModelArts supports model conversion, allowing you to convert a model to a required format before deploying the model on a chip with higher computing power and performance.

-

Model conversion applies to the following scenarios:

-
  • If you use the TensorFlow framework (in frozen_graph or saved_model format) to train a model, you can convert the model to the .om format. The converted model can be deployed and run on Ascend chips.
-

Constraints

  • Only Ascend chips are supported for model conversion.
  • Only Caffe and TensorFlow models can be converted. For a TensorFlow model, the input data type is of the INT32, BOOL, UINT8, or FLOAT type.
  • ModelArts provides conversion templates for you to choose. For details about the supported templates, see Conversion Templates.
  • The .tflite and TensorRT formats support fewer operators and quantization operators. Therefore, some models may fail to be converted. If the conversion fails, view the log dialog box or check error logs in the conversion output directory.
  • An OBS directory must be specified in compression/conversion tasks. Ensure that the OBS directory you use and ModelArts are in the same region.
  • When importing the converted model to ModelArts, you need to use the model template.
  • For a TensorFlow model, the FrozenGraphDef and SavedModel formats are supported. If a model is in the SavedModel format, the model is converted to the FrozenGraphDef format and then to the OM format.
  • Inputs with dynamic shapes are not supported, for example, NHWC = [?,?,?,3]. A fixed value needs to be specified during model conversion.
  • The input can be up to 4-dimensional. Operators involving dimension changes (such as reshape and expanddim) cannot output five dimensions.
  • Except the const operator, the input and output at all layers in a model must meet the condition dim!=0.
  • Model conversion does not support models that contain training operators.
  • A UINT8 quantized model cannot be converted.
  • Model operators support only 2D convolution but do not support 3D convolution. The batch_normalization_1 and FusedBatchNorm operators cannot be converted in batches.
- -

Deleting a Model Compression/Conversion Task

You can delete unnecessary conversion tasks. However, tasks in the Running or Initializing status cannot be deleted.

-

Deleted tasks cannot be recovered. Exercise caution when performing this operation.

- -
  • Deleting a single task:

    On the Compression/Conversion page, click Delete in the Operation column of the target task.

    -
  • Deleting a batch of tasks:

    On the Compression/Conversion page, select multiple tasks to be deleted and click Delete in the upper left corner.

    -
- - - - -Parent topic: Model Compression and Conversion - - - diff --git a/modelarts/umn/temp/configuring_access_authorization_(global_configuration).tmp b/modelarts/umn/temp/configuring_access_authorization_(global_configuration).tmp deleted file mode 100644 index a853b222..00000000 --- a/modelarts/umn/temp/configuring_access_authorization_(global_configuration).tmp +++ /dev/null @@ -1,20 +0,0 @@ - - -

Configuring Access Authorization (Global Configuration)

-

- - - - - -Parent topic: Preparations - - - diff --git a/modelarts/umn/temp/configuring_access_key_authorization.tmp b/modelarts/umn/temp/configuring_access_key_authorization.tmp deleted file mode 100644 index 1fc2d0cd..00000000 --- a/modelarts/umn/temp/configuring_access_key_authorization.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Configuring Access Key Authorization

-

To use an access key pair for authorization, you need to obtain the access key pair first and then add the access key pair on the ModelArts management console. If your access key pair changes, you need to add a new one.

-

Obtaining an Access Key

  1. On the ModelArts management console, hover over the username in the upper right corner and choose My Credentials from the drop-down list.
  2. On the My Credentials page, choose Access Keys > Create Access Key.
  3. In the Create Access Key dialog box that is displayed, enter the verification code received by SMS or email.
  4. Click OK and save the access key file as prompted. The access key file is saved in the default download folder of the browser. Open the credentials.csv file to view the access key (Access Key Id and Secret Access Key).
- -

Adding an Access Key

  1. Log in to the ModelArts management console. In the navigation pane, choose Settings. The Settings page is displayed.
  2. Click Add Authorization.
  3. In the Add Authorization dialog box that is displayed, set Authorization Method to AK/SK. The username is fixed. Enter the obtained access key pair.
    • AK: Enter the value of the Access Key Id field in the key file.
    • SK: Enter the value of the Secret Access Key field in the key file.
    -
  4. Select I have read and agree to the ModelArts Service Statement and click Agree.

    After the configuration is complete, you can view the access key configurations of an account or IAM user on the Settings page.

    -
- - - - -Parent topic: Configuring Access Authorization (Global Configuration) - - - diff --git a/modelarts/umn/temp/configuring_agency_authorization_(recommended).tmp b/modelarts/umn/temp/configuring_agency_authorization_(recommended).tmp deleted file mode 100644 index 590b11bf..00000000 --- a/modelarts/umn/temp/configuring_agency_authorization_(recommended).tmp +++ /dev/null @@ -1,55 +0,0 @@ - - -

Configuring Agency Authorization (Recommended)

-

An agency is used to delegate ModelArts the operation permissions for dependent services such as OBS and SWR. Before using ModelArts, you need to complete agency authorization.

-

If you have used ModelArts before, click Delete Authorization in the global configurations area and then create an agency.

- -

Before You Start

  • account
    • Only a cloud account can perform agency authorization to authorize the current account or all IAM users under the current account.
    • Multiple IAM users or accounts can use the same agency.
    • A maximum of 50 agencies can be created under an account.
    -
  • IAM user
    • If the agency has been authorized, you can view the authorization information on the Settings page.
    • If an IAM user has not obtained the authorization, ModelArts will display a message indicating that the user has not been authorized when the user accesses the Add Authorization page. In this case, contact the administrator of the IAM user to add authorization. Alternatively, you can use access keys for authorization.
    -
  • When configuring an agency, you can use an automatically created agency. For details, see Automatically Creating an IAM Agency. You can also configure an agency. For example, you can configure an IAM user with the agency valid for only one day.
- -

Configuring Authorization

  1. Log in to the ModelArts management console. In the left navigation pane, click Settings. The Settings page is displayed.
  2. Click Add Authorization.
  3. In the Add Authorization dialog box that is displayed, set Authorization Method to Agency, and select the username and agency to be authorized. -.. _modelarts_08_0007__en-us_topic_0284258827_en-us_topic_0256240291_table11954142119154: - - - - - - - - - - - - - - - -
    Table 1 Parameters

    Parameter

    -

    Description

    -

    Authorization Method

    -

    Select Agency.

    -

    Username

    -

    Select an account from the drop-down list on the right. By default, All IAM users (including logged-in account) is selected, which indicates that authorization will be performed for the logged-in account and all IAM users under the account. All IAM users under the logged-in account are displayed in the drop-down list. You can configure an agency for an IAM user.

    -

    Agency

    -
    • Auto Create (recommended): When you use ModelArts Settings for the first time, no agency is available. In this case, you can click Auto Create to automatically create an agency for the user selected in Username. For details about the automatically created agency, see Automatically Creating an IAM Agency.
    • Select an existing agency: If you have created agencies in IAM, you can select an available agency from the drop-down list to authorize the selected user.
    • Create on IAM: If the automatically created agency cannot meet your requirements, you can click Create on IAM to manually create an agency on the IAM management console. If you choose Create on IAM, configure at least the ModelArts CommonOperation and OBS Operate Access permissions. Otherwise, the basic functions of ModelArts will be unavailable.
    -
    - -
  4. After configuring the username and agency, select I have read and agree to the ModelArts Service Statement and click Agree.

    After the configuration is complete, you can view the agency configurations of an account or IAM user on the Settings page.

    -
- -

Automatically Creating an IAM Agency

The following provides the details about the agency automatically created by ModelArts.

-
  • Agency Name: For a cloud account, the agency name is modelarts_agency. For an IAM user, the agency name is ma_agency_<IAM username>.
  • Agency Type: Select Cloud service.
  • Cloud Service: Select ModelArts.
  • Validity Period: Select Unlimited.
  • Permissions: The ModelArts CommonOperations, OBS OperateAccess, and Tenant Administrator (required for using other dependent services) permissions are automatically added for this agency to use all ModelArts functions.
- -

Deleting Authorizations

To better manage your authorization, you can delete the authorization of an IAM user or delete the authorizations of all users in batches.

-
  • Deleting the authorization of a user

    On the Settings page, the authorizations configured for IAM users under the current account are displayed. You can click Delete in the Operation column to delete the authorization of a user. After the deletion takes effect, the user cannot use ModelArts functions.

    -
  • Deleting authorizations in batches

    On the Settings page, click Delete Authorization above the authorization list to delete all authorizations of the current account. After the deletion, the account and all IAM users under the account cannot use ModelArts functions.

    -
- - - - -Parent topic: Configuring Access Authorization (Global Configuration) - - - diff --git a/modelarts/umn/temp/configuring_the_jupyter_notebook_environment.tmp b/modelarts/umn/temp/configuring_the_jupyter_notebook_environment.tmp deleted file mode 100644 index a8a78b1d..00000000 --- a/modelarts/umn/temp/configuring_the_jupyter_notebook_environment.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - - -

Configuring the Jupyter Notebook Environment

- -

- - - - - - -Parent topic: Using Jupyter Notebook - - - diff --git a/modelarts/umn/temp/conversion_templates.tmp b/modelarts/umn/temp/conversion_templates.tmp deleted file mode 100644 index f6222cbe..00000000 --- a/modelarts/umn/temp/conversion_templates.tmp +++ /dev/null @@ -1,100 +0,0 @@ - - -

Conversion Templates

-

ModelArts provides the following conversion templates based on different AI frameworks:

- -

TF-FrozenGraph-To-Ascend-C32

Convert the model trained by the TensorFlow framework and saved in frozen_graph format. The converted model can run on the Ascend. The custom operators (TBE operators) developed based on Tensor Based Engine (TBE) can be used for conversion.

- -.. _modelarts_23_0110__en-us_topic_0177612243_table397415449135: - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Advanced settings of the custom operator conversion template

Parameter

-

Description

-

input_shape

-

Enter the shape of the input data of the model, for example, input_name1:n1,c1,h1,w1;input_name2:n2,c2,h2,w2. input_name must be the node name in the network model before model conversion. This parameter is mandatory when the model has dynamic shape input. For example, in input_name1:? ,h,w,c, the question mark (?) indicates the batch size, that is, the number of images processed at a time. It is used to convert the original model with a dynamic shape into an offline model with a fixed shape. The batch feature is not supported. The batch value of the input_shape can only be 1. During the conversion, the system parses the input model to obtain the input tensor and prints it in the log. If you do not know the input tensor of the used model, refer to the parsing result in the log.

-

input_format

-

NCHW and NHWC are supported. The default format is NHWC. For the TensorFlow framework, the default value is NHWC. To use the NCHW format, you need to specify NCHW. For the Caffe framework, only the NCHW format is supported.

-

out_nodes

-

Specifies the output node, for example, node_name1:0;node_name1:1;node_name2:0. node_name must be the node name in the network model before model conversion. The digit after each colon (:) indicates the sequence number of the output. For example, node_name1:0 indicates the 0th output of node_name1. If the output node is not specified, the output of the last operator layer serves as the model output by default. To check the parameters of a specific operator layer, specify the operator layer by using this parameter. During the conversion, the system parses the input model to obtain the output node and prints it in the log. If you do not know the input tensor of the used model, refer to the parsing result in the log.

-

net_format

-

Specifies the preferred data format for network operators. Possible values are ND (N cannot be more than 4) and 5D. This parameter only takes effect if the input data of operators on the network supports both ND and 5D formats. ND indicates that operators in the model are converted into the NCHW format. 5D indicates that operators in the model are converted into the 5D format. 5D is the default value.

-

fp16_high_prec

-

Specifies whether to generate a high-precision FP16 Davinci model. 0 is the default value, indicating that a common FP16 Da Vinci model with better inference performance is generated. The value 1 indicates that a high-precision FP16 Da Vinci model with better inference precision is generated. High-precision models support only Caffe operators (Convolution, Pooling, and FullConnection) and TensorFlow operators (tf.nn.conv2d and tf.nn.max_poo).

-

output_type

-

FP32 is the default value and is recommended for classification and detection networks. For image super-resolution networks, UINT8 is recommended for better inference performance.

-
- - -

TF-SavedModel-To-Ascend-C32

Convert the model trained by the TensorFlow framework and saved in saved_model format. The converted model can run on the Ascend. The custom operators (TE operators) developed based on TE can be used for conversion.

- -.. _modelarts_23_0110__en-us_topic_0177612243_table17573123151414: - - - - - - - - - - - - - - - - - - - - - - - - -
Table 2 Advanced settings of the custom operator conversion template

Parameter

-

Description

-

input_shape

-

Enter the shape of the input data of the model, for example, input_name1:n1,c1,h1,w1;input_name2:n2,c2,h2,w2. input_name must be the node name in the network model before model conversion. This parameter is mandatory when the model has dynamic shape input. For example, in input_name1:? ,h,w,c, the question mark (?) indicates the batch size, that is, the number of images processed at a time. It is used to convert the original model with a dynamic shape into an offline model with a fixed shape. The batch feature is not supported. The batch value of the input_shape can only be 1. During the conversion, the system parses the input model to obtain the input tensor and prints it in the log. If you do not know the input tensor of the used model, refer to the parsing result in the log.

-

input_format

-

NCHW and NHWC are supported. The default format is NHWC. For the TensorFlow framework, the default value is NHWC. To use the NCHW format, you need to specify NCHW. For the Caffe framework, only the NCHW format is supported.

-

out_nodes

-

Specifies the output node, for example, node_name1:0;node_name1:1;node_name2:0. node_name must be the node name in the network model before model conversion. The digit after each colon (:) indicates the sequence number of the output. For example, node_name1:0 indicates the 0th output of node_name1. If the output node is not specified, the output of the last operator layer serves as the model output by default. To check the parameters of a specific operator layer, specify the operator layer by using this parameter. During the conversion, the system parses the input model to obtain the output node and prints it in the log. If you do not know the input tensor of the used model, refer to the parsing result in the log.

-

net_format

-

Specifies the preferred data format for network operators. Possible values are ND (N cannot be more than 4) and 5D. This parameter only takes effect if the input data of operators on the network supports both ND and 5D formats. ND indicates that operators in the model are converted into the NCHW format. 5D indicates that operators in the model are converted into the 5D format. 5D is the default value.

-

fp16_high_prec

-

Specifies whether to generate a high-precision FP16 Davinci model. 0 is the default value, indicating that a common FP16 Da Vinci model with better inference performance is generated. The value 1 indicates that a high-precision FP16 Da Vinci model with better inference precision is generated. High-precision models support only Caffe operators (Convolution, Pooling, and FullConnection) and TensorFlow operators (tf.nn.conv2d and tf.nn.max_poo).

-

output_type

-

FP32 is the default value and is recommended for classification and detection networks. For image super-resolution networks, UINT8 is recommended for better inference performance.

-
- - - - - -Parent topic: Model Compression and Conversion - - - diff --git a/modelarts/umn/temp/creating_a_custom_policy.tmp b/modelarts/umn/temp/creating_a_custom_policy.tmp deleted file mode 100644 index f5c21058..00000000 --- a/modelarts/umn/temp/creating_a_custom_policy.tmp +++ /dev/null @@ -1,76 +0,0 @@ - - -

Creating a Custom Policy

-

If default policies cannot meet the requirements on fine-grained access control, you can create custom policies and assign the policies to the user group.

-

You can create custom policies in either of the following ways:

-
  • Visual editor: Select cloud services, actions, resources, and request conditions. This does not require knowledge of policy syntax.
  • JSON: Edit JSON policies from scratch or based on an existing policy.
-

For details about how to create a custom policy, see section "Creating a Custom Policy" in the Identity and Access Management User Guide. This section describes example custom policies of OBS (a dependent service of ModelArts) and ModelArts.

-

Precautions

  • The permissions to use ModelArts depend on OBS authorization. Therefore, you need to grant OBS system permissions to users.
  • A custom policy can contain actions of multiple services that are globally accessible or accessible through region-specific projects.
  • To define permissions required to access both global and project-level services, create two custom policies and specify the scope as Global services and Project-level services. Then grant the two policies to the users.
- -

Example Custom Policies of OBS

ModelArts is a project-level service, and OBS is a global service. Therefore, you need to create custom policies for the two services respectively and grant them to users. The permissions to use ModelArts depend on OBS authorization. The following example shows the minimum permissions for OBS, including the permissions for OBS buckets and objects. After being granted the minimum permissions for OBS, users can access OBS from ModelArts without restrictions.

-
{
-    "Version": "1.1",
-    "Statement": [
-        {
-            "Action": [
-                "obs:bucket:ListAllMybuckets",
-                "obs:bucket:HeadBucket",
-                "obs:bucket:ListBucket",
-                "obs:bucket:GetBucketLocation",
-                "obs:object:GetObject",
-                "obs:object:GetObjectVersion",
-                "obs:object:PutObject",
-                "obs:object:DeleteObject",
-                "obs:object:DeleteObjectVersion",
-                "obs:object:ListMultipartUploadParts",
-                "obs:object:AbortMultipartUpload",
-                "obs:object:GetObjectAcl",
-                "obs:object:GetObjectVersionAcl",
-                "obs:bucket:PutBucketAcl"
-            ],
-            "Effect": "Allow"
-        }
-    ]
-}
- -

Example Custom Policies of ModelArts

  • Example: Denying ExeML project deletion

    A deny policy must be used in conjunction with other policies to take effect. If the permissions assigned to a user contain both Allow and Deny actions, the Deny actions take precedence over the Allow actions.

    -

    The following method can be used if you need to assign permissions of the ModelArts FullAccess policy to a user but also forbid the user from deleting ExeML projects. Create a custom policy for denying ExeML project deletion, and assign both policies to the group the user belongs to. Then the user can perform all operations on ModelArts except deleting ExeML projects. The following is an example deny policy:

    -
    { 
    -      "Version": "1.1", 
    -      "Statement": [ 
    -            { 
    -		  "Effect": "Deny", 
    -                  "Action": [ 
    -                        "modelarts:exemlProject:delete" 
    -                  ] 
    -            } 
    -      ] 
    -}
    -
  • Example: Allowing users to use only development environments

    The following is a policy configuration example for this user:

    -
    { 
    -    "Version": "1.1", 
    -    "Statement": [ 
    -
    -        { 
    -            "Effect": "Allow", 
    -            "Action": [ 
    -                "modelarts:notebook:list", 
    -                "modelarts:notebook:create" ,
    -                "modelarts:notebook:get" ,
    -                "modelarts:notebook:update" ,
    -                "modelarts:notebook:delete" ,
    -                "modelarts:notebook:action" ,
    -                "modelarts:notebook:access" 
    -            ] 
    -        } 
    -    ] 
    -}
    -
- - - - -Parent topic: Permissions Management - - - diff --git a/modelarts/umn/temp/creating_a_dataset.tmp b/modelarts/umn/temp/creating_a_dataset.tmp deleted file mode 100644 index e8865407..00000000 --- a/modelarts/umn/temp/creating_a_dataset.tmp +++ /dev/null @@ -1,369 +0,0 @@ - - -

Creating a Dataset

-

To manage data using ModelArts, create a dataset. Then you can perform operations on the dataset, such as labeling data, importing data, and publishing the dataset.

-

Prerequisites

  • Before using the data management function, you need permissions to access OBS. This function cannot be used if you are not authorized to access OBS. Before using the data management function, go to the Settings page and complete access authorization using an agency.
  • You have created OBS buckets and folders for storing data. In addition, the OBS buckets and ModelArts are in the same region.
  • You have uploaded data to be used to OBS.
- -

Procedure

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. Click Create Dataset. On the Create Dataset page, create datasets of different types based on the data type and data labeling requirements.
    1. Set the basic information, the name and description of the dataset.Figure 1 Basic information about a dataset
      -
    2. Select a labeling scene and type as required. For details about the types supported by ModelArts, see Dataset Types.Figure 2 Selecting a labeling scene and type
      -
    3. Set the parameters based on the dataset type. For details, see the parameters of the following dataset types: -
    4. Click Create in the lower right corner of the page.

      After the dataset is created, the dataset management page is displayed. You can perform the following operations on the dataset: label data, publish dataset versions, manage dataset versions, modify the dataset, import data, and delete the dataset. For details about the operations supported by different types of datasets, see .

      -
    -
- -

Images (Image Classification, Object Detection, and Image Segmentation)

Figure 3 Parameters of datasets for image classification and object detection
- -.. _modelarts_23_0004__en-us_topic_0170886809_table169611557277: - - - - - - - - - - - - - - - - - - -
Table 1 Dataset parameters

Parameter

-

Description

-

Input Dataset Path

-

Select the OBS path to the input dataset.

-

Output Dataset Path

-

Select the OBS path to the output dataset.

- NOTE:

The output dataset path cannot be the same as the input dataset path or cannot be the subdirectory of the input dataset path. Select an empty directory as the Output Dataset Path.

- -

Label Set

-
  • Label Name: Enter a label name. The label name can contain only letters, digits, underscores (_), and hyphens (-). The name contains 1 to 32 characters.
  • Add Label: Click Add Label to add more labels.
  • Setting a label color: This function is available only for datasets of the object detection type. Select a color from the color palette on the right of a label, or enter the hexadecimal color code to set the color.

    -
  • Setting label attributes: For an object detection dataset, you can click the plus sign (+) on the right to add label attributes after setting a label color. Label attributes are used to distinguish different attributes of the objects with the same label. For example, yellow kittens and black kittens have the same label cat and their label attribute is color.
-

Team Labeling

-

Enable or disable team labeling. Image segmentation does not support team labeling. Therefore, this parameter is unavailable when you use image segmentation.

-

After enabling team labeling, enter the name and type of the team labeling task, and select the labeling team and team members. For details about the parameter settings, see Creating Team Labeling Tasks.

-

Before enabling team labeling, ensure that you have added a team and members on the Labeling Teams page. If no labeling team is available, click the link on the page to go to the Labeling Teams page, and add your team and members. For details, see Introduction to Team Labeling.

-

After a dataset is created with team labeling enabled, you can view the Team Labeling mark in Labeling Type.

-
- - -

Audio (Sound Classification, Speech Labeling, and Speech Paragraph Labeling)

Figure 4 Parameters of datasets for sound classification, speech labeling, and speech paragraph labeling
- -.. _modelarts_23_0004__en-us_topic_0170886809_table46851641358: - - - - - - - - - - - - - - - - - - - - - - - - -

Parameter

-

Description

-

Input Dataset Path

-

Select the OBS path to the input dataset.

-

Output Dataset Path

-

Select the OBS path to the output dataset.

- NOTE:

The output dataset path cannot be the same as the input dataset path or cannot be the subdirectory of the input dataset path. Select an empty directory as the Output Dataset Path.

- -

Label Set (Sound Classification)

-

Set labels only for datasets of the sound classification type.

-
  • Label Name: Enter a label name. The label name can contain only letters, digits, underscores (_), and hyphens (-). The name contains 1 to 32 characters.
  • Add Label: Click Add Label to add more labels.
-

Label Management (Speech Paragraph Labeling)

-

Only datasets for speech paragraph labeling support multiple labels.

-
  • Single LabelA single label is used to label a piece of audio that has only one class.
    • Label Name: Enter a label name. The label name can contain contains 1 to 32 characters. Only letters, digits, underscores (_), and hyphens (-) are allowed.
    • Label Color: Set the label color in the Label Color column. You can select a color from the color palette or enter a hexadecimal color code to set the color.
    - -
  • Multiple LabelsMultiple labels are suitable for multi-dimensional labeling. For example, you can label a piece of audio as both noise and speech. For speech, you can label the audio with different speakers. You can click Add Label Class to add multiple label classes. A label class can contain multiple labels. The label class and name can contain contains 1 to 32 characters. Only letters, digits, underscores (_), and hyphens (-) are allowed.
    • Label Class: Set a label class.
    • Label Name: Enter a label name.
    • Add Label: Click Add Label to add more labels.
    - -
-

Speech Labeling (Speech Paragraph Labeling)

-

Only datasets for speech paragraph labeling support speech labeling. By default, speech labeling is disabled. If this function is enabled, you can label speech content.

-

Team Labeling

-

Only datasets of speech paragraph labeling support team labeling.

-

After enabling team labeling, set the name and type of the team labeling task, and select the team and team members. For details about the parameter settings, see Creating Team Labeling Tasks.

-

Before enabling team labeling, ensure that you have added a team and members on the Labeling Teams page. If no labeling team is available, click the link on the page to go to the Labeling Teams page, and add your team and members. For details, see Introduction to Team Labeling.

-

After a dataset is created with team labeling enabled, you can view the Team Labeling mark in Labeling Type.

-
- - -

Text (Text Classification, Named Entity Recognition, and Text Triplet)

Figure 5 Parameters of datasets for text classification, named entity recognition, and text triplet
- -.. _modelarts_23_0004__en-us_topic_0170886809_table8639141818387: - - - - - - - - - - - - - - - - - - - - - -
Table 2 Dataset parameters

Parameter

-

Description

-

Input Dataset Path

-

Select the OBS path to the input dataset.

- NOTE:

Labeled text classification data can be identified only when you import data. When creating a dataset, set an empty OBS directory. After the dataset is created, import the labeled data into it. For details about the format of the data to be imported, see Specifications for Importing Data from an OBS Directory.

- -

Output Dataset Path

-

Select the OBS path to the output dataset.

- NOTE:

The output dataset path cannot be the same as the input dataset path or cannot be the subdirectory of the input dataset path. Select an empty directory as the Output Dataset Path.

- -

Label Set (for text classification and named entity recognition)

-
  • Label Name: Enter a label name. The label name can contain only letters, digits, underscores (_), and hyphens (-). The name contains 1 to 32 characters.
  • Add Label: Click Add Label to add more labels.
  • Setting a label color: Select a color from the color palette or enter the hexadecimal color code to set the color.

    -
-

Label Set (for text triplet)

-

For datasets of the text triplet type, set entity labels and relationship labels.

-
  • Entity Label: Set the label name and label color. You can click the plus sign (+) on the right of the color area to add multiple labels.
  • Relationship Label: a relationship between two entities. Set the source entity and target entity. Therefore, add at least two entity labels before adding a relationship label.
-

-

Team Labeling

-

Enable or disable team labeling.

-

After enabling team labeling, enter the name and type of the team labeling task, and select the labeling team and team members. For details about the parameter settings, see Creating Team Labeling Tasks.

-

Before enabling team labeling, ensure that you have added a team and members on the Labeling Teams page. If no labeling team is available, click the link on the page to go to the Labeling Teams page, and add your team and members. For details, see Introduction to Team Labeling.

-

After a dataset is created with team labeling enabled, you can view the Team Labeling mark in Labeling Type.

-
- - -

Table

When using a CSV file, pay attention to the following:

-
  • When the data type is set to String, the data in the double quotation marks is regarded as one record by default. Ensure that the double quotation marks in the same row are closed. Otherwise, the data will be too large to display.
  • If the number of columns in a row of the CSV file is different from that defined in the schema, the row will be ignored.
- - -.. _modelarts_23_0004__en-us_topic_0170886809_table23707015477: - - - - - - - - - - - - - - - - - - -
Table 3 Dataset parameters

Parameter

-

Description

-

Storage Path

-

Select the OBS path for storing table data. The data imported from the data source is stored in this path. The path cannot be the same as or a subdirectory of the file path in the OBS data source.

-

After a table dataset is created, the following four directories are automatically generated in the storage path:

-
  • annotation: version publishing directory. Each time a version is published, a subdirectory with the same name as the version is generated in this directory.
  • data: data storage directory. Imported data is stored in this directory.
  • logs: directory for storing logs
  • temp: temporary working directory
-

Import

-

If you have stored table data on other cloud services, you can enable this function to import data stored on OBS, DLI, or MRS.

-

Data Source (OBS)

-
  • File Path: Browse all OBS buckets of the account and select the directory where the data file to be imported is located.
  • Contain Table Header: If this parameter is enabled, the imported file contains table headers. In this case, the first row of the imported file is used as the column name. Otherwise, the default column name is added and automatically filled in the schema information.
-

For details about OBS functions, see Object Storage Service Console Operation Guide.

-

Schema

-

Names and types of table columns, which must be the same as those of the imported data. Set the column name based on the imported data and select the column type. For details about the supported types, see Table 4.

-

Click Add Schema to add a new record. When creating a dataset, you must specify a schema. Once created, the schema cannot be modified.

-

When data is imported from OBS, the schema of the CSV file in the file path is automatically obtained. If the schemas of multiple CSV files are inconsistent, an error is reported.

-
- - -.. _modelarts_23_0004__en-us_topic_0170886809_table1916832104917: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 4 Migration data types

Type

-

Description

-

Storage Space

-

Range

-

String

-

String

-

-

-

-

-

Short

-

Signed integer

-

2 bytes

-

-32768 to 32767

-

Int

-

Signed integer

-

4 bytes

-

–2147483648 to 2147483647

-

Long

-

Signed integer

-

8 bytes

-

–9223372036854775808 to 9223372036854775807

-

Double

-

Double-precision floating point

-

8 bytes

-

-

-

Float

-

Single-precision floating point

-

4 bytes

-

-

-

Byte

-

Signed integer

-

1 byte

-

-128 to 127

-

Date

-

Date type in the format of yyyy-MM-dd, for example, 2014-05-29

-

-

-

-

-

Timestamp

-

Timestamp that represents date and time. Format: yyyy-MM-dd HH:mm:ss

-

-

-

-

-

Boolean

-

Boolean

-

1 byte

-

TRUE or FALSE

-
- - -

Video

Figure 6 Parameters of datasets of the video type
- -.. _modelarts_23_0004__en-us_topic_0170886809_table623753175616: - - - - - - - - - - - - - - - -
Table 5 Dataset parameters

Parameter

-

Description

-

Input Dataset Path

-

Select the OBS path to the input dataset.

-

Output Dataset Path

-

Select the OBS path to the output dataset.

- NOTE:

The output dataset path cannot be the same as the input dataset path or cannot be the subdirectory of the input dataset path. Select an empty directory as the Output Dataset Path.

- -

Label Set

-
  • Label Name: Enter a label name. The label name can contain only letters, digits, underscores (_), and hyphens (-). The name contains 1 to 32 characters.
  • Add Label: Click Add Label to add more labels.
  • Setting a label color: Select a color from the color palette or enter the hexadecimal color code to set the color.

    -
-
- - -

Other (Free Format)

Figure 7 Parameters of datasets of the free format type
- -.. _modelarts_23_0004__en-us_topic_0170886809_table115315465714: - - - - - - - - - - - - -
Table 6 Dataset parameters

Parameter

-

Description

-

Input Dataset Path

-

Select the OBS path to the input dataset.

-

Output Dataset Path

-

Select the OBS path to the output dataset.

- NOTE:

The output dataset path cannot be the same as the input dataset path or cannot be the subdirectory of the input dataset path. Select an empty directory as the Output Dataset Path.

- -
- - - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/creating_a_notebook_instance.tmp b/modelarts/umn/temp/creating_a_notebook_instance.tmp deleted file mode 100644 index 7f59c76b..00000000 --- a/modelarts/umn/temp/creating_a_notebook_instance.tmp +++ /dev/null @@ -1,91 +0,0 @@ - - -

Creating a Notebook Instance

-

Before developing a model, create a notebook instance, open it, and perform encoding.

-

Background

  • Only notebook instances in the Running state can be started.
  • A maximum of 10 notebook instances can be created for an account. By default, the notebook instances created by the current user are displayed. If Display Only My Instances is disabled, all notebook instances created by the current account and its IAM users are displayed.
  • If OBS storage is used, ensure that the OBS directory you use and ModelArts are in the same region.
  • Before creating a notebook instance, learn about the AI engines supported by ModelArts and their versions.
- -

Creating a Notebook Instance

  1. Log in to the ModelArts management console. In the left navigation pane, choose DevEnviron > Notebooks to switch to the Notebooks page.
  2. Click Create. On the displayed page, set the required parameters.
    1. Enter the basic information about the notebook instance, including the name, description, and whether to automatically stop the notebook instance. For details about the parameters, see Table 1.Figure 1 Basic information about a notebook instance
      - -.. _modelarts_23_0034__en-us_topic_0162690358_table1669535791517: - - - - - - - - - - - - - - - -
      Table 1 Parameters of basic information

      Parameter

      -

      Description

      -

      Name

      -

      Name of a notebook instance, which contains a maximum of 64 characters. Only digits, letters, underscores (_), and hyphens (-) are allowed. This parameter is mandatory.

      -

      Description

      -

      Brief description of a notebook instance.

      -

      Auto Stop

      -

      This function is enabled by default. The default value is 1 hour later, indicating that the notebook instance automatically stops after running for 1 hour and its billing stops.

      -

      The options are 1 hour later, 2 hours later, 4 hours later, 6 hours later, and Custom. You can select Custom to specify any integer from 1 to 24 hours.

      -
      - -
    2. Set notebook parameters, such as the work environment and instance flavor. For details, see Table 2. -.. _modelarts_23_0034__en-us_topic_0162690358_table4606194015227: - - - - - - - - - - - - - - - - - - - - - -
      Table 2 Notebook instance parameters

      Parameter

      -

      Description

      -

      Work Environment

      -

      Only public images, which are the AI frameworks built in ModelArts are supported.

      -

      All supported AI engines can be used in the same notebook instance. Different engines can be switched quickly and conveniently, and run in independent development environments. After the notebook instance is created, go to the Jupyter page to create the development environment with the desired AI engine. The AI engine varies depending on the operating environment. For details, see Supported AI Engines.

      -

      Resource Pool

      -

      Select Public resource pools or Dedicated resource pools. For details about the dedicated resource pools and how to buy them, see Resource Pools.

      -

      Public resource pools are available immediately after being provisioned. Dedicated resource pools are queue-free. When a large number of users use the public resource pool, they may queue for resources. Purchase a dedicated resource pool to improve development efficiency.

      -

      Type

      -

      The CPU and GPU types are supported.

      -

      Instance Flavor

      -

      If you select a public resource pool, available flavors vary depending on the selected type.

      -
      • If you select CPU for Type, available options include 2 vCPUs | 8 GiB and 8 vCPUs | 32 GiB.
      • If you select GPU for Type, the available option is GPU: 1 x v100NV32 CPU: 8 vCPUs | 64 GiB.
      • If you select Ascend for Type, available options include Ascend: 1 x Ascend 910 CPU: 24 vCPUs | 96 GiB and Ascend: 8 x Ascend 910 CPU: 192 vCPUs | 720 GiB.
      -

      Storage

      -

      The EVS and OBS options are available.

      -
      • Selecting EVS

        Set Disk Space based on the actual usage. The default value of Disk Space is 5 GB. ModelArts provides 5 GB disk space for you to use for free. If the disk space exceeds 5 GB, the additional space is billed by GB according to pricing of ultra-high I/O disks. The value of Disk Space ranges from 5 to 4096.

        -

        If you select this storage mode, all read and write operations on files on the notebook instances take effect on the data stored in your notebook instances. There is no data loss after you restart notebook instances.

        -
      • Selecting OBS

        Click Select next to the Storage Path text box to set the OBS path for storing notebook instance data. If you want to use existing files or data, upload the files or data to the corresponding OBS path in advance. Storage Path must be set to a specific directory in an OBS bucket rather than the root directory of the OBS bucket.

        -

        If you select this storage mode, all read and write operations on files on the notebook instances take effect on the data stored in your selected OBS path. To synchronize data in a file stored in OBS to a notebook instance, select the file and click Sync OBS. For details, see Synchronizing Files with OBS. There is no data loss after you restart this notebook instance.

        -
      -
      - -
    -
  3. Click Next.
  4. After confirming the parameter configurations, click Submit.

    Switch to the notebook instance list. Status of the notebook instance being created is Starting. If Status of the notebook instance changes to Running, the notebook instance has been created.

    -
- - - - -Parent topic: Managing Notebook Instances - - - diff --git a/modelarts/umn/temp/creating_a_project.tmp b/modelarts/umn/temp/creating_a_project.tmp deleted file mode 100644 index a81cc7c5..00000000 --- a/modelarts/umn/temp/creating_a_project.tmp +++ /dev/null @@ -1,66 +0,0 @@ - - -

Creating a Project

-

ModelArts ExeML supports image classification and object detection projects. You can create any of them based on your needs. Perform the following operations to create an ExeML project.

-

Procedure

  1. Log in to the ModelArts management console. In the left navigation pane, choose ExeML. The ExeML page is displayed.
  2. Click Create Project in the box of your desired project. The page for creating an ExeML project is displayed.
  3. On the displayed page, set the parameters by referring to Table 1. -.. _modelarts_21_0010__en-us_topic_0284258839_en-us_topic_0169446159_en-us_topic_0169446153_table14961618163816: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameters

    Parameter

    -

    Description

    -

    Name

    -

    Name of an ExeML project

    -
    • Enter a maximum of 20 characters. Only digits, letters, underscores (_), and hyphens (-) are allowed. This parameter is mandatory.
    • The name must start with a letter.
    -

    Description

    -

    Brief description of a project

    -

    Dataset Source

    -

    You can create a dataset or specify an existing dataset.

    -
    • Create: Configure parameters such as Dataset Name, Input Dataset Path, Output Dataset Path, and Label Set.
    • Specify: Select a dataset of the same type from ModelArts Data Management to create an ExeML project. Only datasets of the same type are displayed in the Dataset Name drop-down list.
    -

    Dataset Name

    -

    If you select Create for Dataset Source, enter a dataset name based on required rules in the text box on the right. If you select Specify for Dataset Source, select one from available datasets of the same type under the current account displayed in the drop-down list.

    -

    Input Dataset Path

    -

    Select the OBS path to the input dataset. For details about dataset input specifications, see Preparing Data.

    -
    • Except the files and folders described in Preparing Data > Requirements for Files Uploaded to OBS, no other files or folders can be saved in the training data path. Otherwise, an error will be reported.
    • Do not modify the files in the training data path.
    -

    Output Dataset Path

    -

    Select the OBS path for storing the output dataset.

    - NOTE:

    The output dataset path cannot be the same as the input dataset path or cannot be the subdirectory of the input dataset path. It is a good practice to select an empty directory in Output Dataset Path.

    - -

    Label Set

    -
    • Label Name: Enter a label name. The label name can contain only Chinese characters, letters, digits, underscores (_), and hyphens (-), which contains 1 to 32 characters.
    • Add Label: Click Add Label to add one or more labels.
    • Set the label color: You need to set label colors for object detection datasets, but you do not need to set label colors for image classification datasets. Select a color from the color palette on the right of a label, or enter the hexadecimal color code to set the color.

      -
    -
    - -
  4. Click Create Project. The system displays a message indicating that the project has been created. Then, the Label Data tab page is displayed. Alternatively, view the created project on the ExeML page and click the project name to go to the Label Data page.
- - - - -Parent topic: Object Detection - - - diff --git a/modelarts/umn/temp/creating_a_training_job.tmp b/modelarts/umn/temp/creating_a_training_job.tmp deleted file mode 100644 index 21f741a3..00000000 --- a/modelarts/umn/temp/creating_a_training_job.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

Creating a Training Job

- - - - - -Parent topic: Training Management - - - diff --git a/modelarts/umn/temp/creating_a_training_job_using_a_custom_image_(gpu).tmp b/modelarts/umn/temp/creating_a_training_job_using_a_custom_image_(gpu).tmp deleted file mode 100644 index 63c56d97..00000000 --- a/modelarts/umn/temp/creating_a_training_job_using_a_custom_image_(gpu).tmp +++ /dev/null @@ -1,81 +0,0 @@ - - -

Creating a Training Job Using a Custom Image (GPU)

-

After creating and uploading a custom image to SWR, you can use the image to create a training job on the ModelArts management console to complete model training.

-

Prerequisites

- -

Creating a Training Job

Log in to the ModelArts management console and create a training job according to Creating a Training Job. When using a custom image to create a job, pay attention to the settings of Algorithm Source, Environment Variable, and Resource Pool.

-
  • Algorithm Source

    Select Custom.

    -
    • Image Path: SWR URL after the image is uploaded to SWRFigure 1 SWR image address
      -
    • Code Directory: OBS path for storing the training code file.
    • Boot Command: boot command after the image is started. The basic format is as follows:

      bash /home/work/run_train.sh {UserCommand}

      -

      bash /home/work/run_train.sh [python/bash/..] {file_location} {file_parameter}

      -

      run_train.sh is the training boot script. After this script is executed, ModelArts recursively downloads all content in the code directory to the local path of the container. The local path is in the format of /home/work/user-job-dir/${Name of the last level in the code directory}/.

      -

      For example, if the OBS path of the training code file is obs://obs-bucket/new/train.py and the code directory is obs://obs-bucket/new/, the local path of the container is /home/work/user-job-dir/new/. The local training code path of the container is /home/work/user-job-dir/new/train.py. Then, you can set the boot command to the following: bash /home/work/run_train.sh python /home/work/user-job-dir/new/train.py {python_file_parameter}

      -

      If you create a training job using a custom image, ModelArts allows you to customize the boot command. The following are two basic formats for the boot command:

      -

      bash /home/work/run_train.sh {UserCommand}

      -

      bash /home/work/run_train.sh [python/bash/..] {file_location} {file_parameter}

      -

      run_train.sh is the training boot script. When creating a custom image, you can implement the training boot script or place the training code in the custom image environment in advance to customize the boot command (in the basic formats or any other formats).

      - -
    -
  • Environment Variable

    After the container is started, besides the environment variables added by configuring Environment Variable during training job creation, Table 1 lists other environment variables to be loaded. You can determine whether to use these environment variables in your own Python training script, or run the {python_file_parameter} command to pass the required parameters.

    - -.. _modelarts_23_0087__en-us_topic_0171858299_table341782301619: - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Optional environment variables

    Environment Variable

    -

    Description

    -

    DLS_TASK_INDEX

    -

    Container index, starting from 0.

    -

    DLS_TASK_NUMBER

    -

    Number of containers, corresponding to Compute Nodes

    -

    DLS_APP_URL

    -

    Code directory, corresponding to Code Dir with the protocol name added. For example, you can use $DLS_APP_URL/*.py to read files in OBS.

    -

    DLS_DATA_URL

    -

    Dataset path, corresponding to Data Source with the protocol name added

    -

    DLS_TRAIN_URL

    -

    Training output path, corresponding to Training Output Path with the protocol name added

    -

    BATCH_{jobName}.0_HOSTS (standalone)

    -

    For standalone training, that is, when the number of compute nodes is 1, the environment variable is BATCH_{jobName}.0_HOSTS.

    -

    The format of the HOSTS environment variable is hostname:port. A container can view the HOSTS of all containers in the same job, such as BATCH_CUSTOM0_HOSTS and BATCH_CUSTOM1_HOSTS, varying according to the indexes. If the resource pool is a dedicated resource pool with the 8GPU specifications, the network type of the container is a host network, and the host IB network can be used to accelerate communications. If other resource pools are used, the network is a container network.

    - NOTE:

    When the host IB network is used for communication acceleration, the ip_mapper.py tool is required to obtain the IP address of the ib0 NIC for using the IPoIB feature.

    - -
    - -
- -
  • Resource Pool

    If you select a resource pool of the GPU type, ModelArts mounts NVME SSDs to the /cache directory. You can use this directory to store temporary files.

    -
-

Running a Training Job Created Using a Custom Image

After a custom image is uploaded to SWR, ModelArts is authorized to obtain and run the image by default when you create a training job using the custom image. When a custom image is run for the first time, the image is checked first. For details about the check, see Specifications for Custom Images Used for Training Jobs. The check failure cause is outputted in the log, and you can modify the image based on the log.

-

After the image is checked, the backend starts the custom image container to run the training job. You can view the training status based on the log.

-

After an image is reviewed, the image does not need to be reviewed again when being used to create training jobs again.

- - - - - -Parent topic: For Training Models - - - diff --git a/modelarts/umn/temp/creating_a_user_and_granting_permissions.tmp b/modelarts/umn/temp/creating_a_user_and_granting_permissions.tmp deleted file mode 100644 index 40a25033..00000000 --- a/modelarts/umn/temp/creating_a_user_and_granting_permissions.tmp +++ /dev/null @@ -1,53 +0,0 @@ - - -

Creating a User and Granting Permissions

-

Policy Content

A fine-grained policy consists of the policy version (the Version field) and statement (the Statement field).

-
  • Version: Distinguishes between role-based access control (RBAC) and fine-grained policies.
    • 1.0: RBAC policies, which are preset in the system and used to grant permissions of each service as a whole. After such a policy is granted to a user, the user has all permissions of the corresponding service.
    • 1.1: Fine-grained policies. A fine-grained policy consists of API-based permissions for operations on specific resource types. Fine-grained policies, as the name suggests, allow for more fine-grained control than RBAC policies. Users granted permissions of such a policy can only perform specific operations on the corresponding service. Fine-grained policies are classified into default and custom policies.
      • Default policies: Preset common permission sets to control read and administrator permissions of different services.
      • Custom policies: Permission sets created and managed by users as an extension and supplement to system-defined policies. For example, a custom policy can be created to allow users only to modify ECS specifications.
      -
    -
- -
  • Statement: Detailed information about a policy, containing the Effect and Action elements.
    • Effect

      Valid values for Effect include Allow and Deny. In a custom policy that contains both Allow and Deny statements, the Deny statements take precedence.

      -
    • Action

      The value can be one or more resource operations.

      -The value format is Service name:Resource type:Action, for example, modelarts:exemlProject:create.
      • Service name: service name. Only lowercase letters are supported, for example, modelarts.
      • Resource type and Action: The values are case-insensitive, and the wildcard (*) are allowed. A wildcard (*) can represent all or part of information about resource types and actions for the specific service.
      - - -
    -
-

Example Policies

  • A policy can define a single permission, such as the permission to deny ExeML project deletion.
    { 
    -      "Version": "1.1", 
    -      "Statement": [ 
    -            { 
    -		  "Effect": "Deny", 
    -                  "Action": [ 
    -                        "modelarts:exemlProject:delete" 
    -                  ] 
    -            } 
    -      ] 
    -}
    -
  • A policy can define multiple permissions, such as the permissions to delete an ExeML version and an ExeML project.
    { 
    -    "Version": "1.1", 
    -    "Statement": [ 
    -        { 
    -            "Effect": "Allow", 
    -            "Action": [ 
    -                "modelarts:exemlProjectVersion:delete", 
    -                "modelarts:exemlProject:delete" 
    -            ] 
    -        } 
    -    ] 
    -}
    -
- -

Authentication Logic

IAM authenticates users according to the permissions that the users have been granted. The authentication logic is as follows:

-Figure 1 Authentication logic
-

The actions in each policy bear the OR relationship.

- -
  1. A user accesses the system and makes an operation request.
  2. The system evaluates all the permissions policies assigned to the user.
  3. In these policies, the system looks for explicit deny permissions. If the system finds an explicit deny that applies, it returns a decision of Deny, and the authentication ends.
  4. If no explicit deny is found, the system looks for allow permissions that would apply to the request. If the system finds an explicit allow permission that applies, it returns a decision of Allow, and the authentication ends.
  5. If no explicit allow permission is found, the system returns a decision of Deny, and the authentication ends.
- - - - -Parent topic: Permissions Management - - - diff --git a/modelarts/umn/temp/creating_an_obs_bucket.tmp b/modelarts/umn/temp/creating_an_obs_bucket.tmp deleted file mode 100644 index 5c4126a9..00000000 --- a/modelarts/umn/temp/creating_an_obs_bucket.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Creating an OBS Bucket

-

ModelArts uses OBS to store data and model backups and snapshots, achieving secure, reliable, and low-cost storage. Therefore, before using ModelArts, create an OBS bucket and folders for storing data.

-

Procedure

  1. Log in to OBS Console and create an OBS bucket. For details, see "Creating a Bucket". For example, create an OBS bucket named c-flowers.

    The created OBS bucket and ModelArts are in the same region.

    - -
  2. Create a folder for storing data. For details, see "Creating a Folder". For example, create a folder named flowers in the created c-flowers OBS bucket.
- - - - -Parent topic: Preparations - - - diff --git a/modelarts/umn/temp/creating_and_uploading_a_custom_image.tmp b/modelarts/umn/temp/creating_and_uploading_a_custom_image.tmp deleted file mode 100644 index 03531e2b..00000000 --- a/modelarts/umn/temp/creating_and_uploading_a_custom_image.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Creating and Uploading a Custom Image

-

ModelArts allows you to use custom images to create training jobs and import models. Before creating and uploading a custom image, understand the following information:

-
  • Software Repository for Container (SWR)

    SWR provides easy, secure, and reliable management over Docker container images throughout their lifecycle, facilitating the deployment of containerized applications. You can push, pull, and manage container images through SWR console, SWR APIs, or community Command Line Interface (CLI).

    -

    Obtain the custom images used by ModelArts for model training and import from the SWR service management list. Upload the custom images you create to SWR.

    -
  • Specifications for custom images. For details about how to use a custom image for a training job, see Specifications for Custom Images Used for Training Jobs. For details about how to use a custom image for model import, see Specifications for Custom Images Used for Importing Models.
-

-

Creating and Uploading a Custom Image

  1. Purchase a cloud server or use a local host to set up the Docker environment.
  2. Obtain the basic image from the local environment.
  3. Compile a Dockerfile based on your requirements to build a custom image. For details about how to efficiently compile a Dockerfile, see SoftWare Repository for Container Best Practices.
  1. After customizing an image, upload the image to SWR by referring to "Uploading an Image Through a Docker Client" in Software Repository for Container User Guide.
-

- - - - -Parent topic: Custom Images - - - diff --git a/modelarts/umn/temp/custom_images.tmp b/modelarts/umn/temp/custom_images.tmp deleted file mode 100644 index f75b2dce..00000000 --- a/modelarts/umn/temp/custom_images.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Custom Images

-

- - - - - diff --git a/modelarts/umn/temp/data_management.tmp b/modelarts/umn/temp/data_management.tmp deleted file mode 100644 index be8053b4..00000000 --- a/modelarts/umn/temp/data_management.tmp +++ /dev/null @@ -1,29 +0,0 @@ - - -

Data Management

- - - - - diff --git a/modelarts/umn/temp/deleting_a_dataset.tmp b/modelarts/umn/temp/deleting_a_dataset.tmp deleted file mode 100644 index 9980e1dd..00000000 --- a/modelarts/umn/temp/deleting_a_dataset.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Deleting a Dataset

-

If a dataset is no longer in use, you can delete it to release resources.

-

After a dataset is deleted, if you need to delete the data in the dataset input and output paths in OBS to release resources, delete the data and the OBS folders on the OBS Console.

- -

Procedure

  1. In the left navigation pane, choose Data Management > Datasets. On the Datasets page, choose More > Delete in the Operation column of the dataset.
  2. In the displayed dialog box, click OK.

    After a dataset is deleted, some functions such as dataset version management become unavailable. Exercise caution when performing this operation. However, the original data and labeling data of the dataset are still stored in OBS.

    - -
- - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/deleting_a_notebook_instance.tmp b/modelarts/umn/temp/deleting_a_notebook_instance.tmp deleted file mode 100644 index 74dd7a35..00000000 --- a/modelarts/umn/temp/deleting_a_notebook_instance.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Deleting a Notebook Instance

-

You can delete notebook instances that are no longer used to release resources.

-
  1. Log in to the ModelArts management console. In the left navigation pane, choose DevEnviron > Notebooks to switch to the Notebooks page.
  2. In the notebook instance list, locate the row where the target notebook instance resides and click Delete in the Operation column. In the dialog box that is displayed, click OK.

    -

    Deleted notebook instances cannot be recovered. Therefore, exercise caution when performing this operation. However, the files created in notebook instances are still stored in OBS specified during creation of the notebook instances.

    - -
- - - -Parent topic: Managing Notebook Instances - - - diff --git a/modelarts/umn/temp/deleting_a_service.tmp b/modelarts/umn/temp/deleting_a_service.tmp deleted file mode 100644 index 017bd748..00000000 --- a/modelarts/umn/temp/deleting_a_service.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Deleting a Service

-

If a service is no longer in use, you can delete it to release resources.

-
  1. Log in to the ModelArts management console and choose Service Deployment from the left navigation pane. Go to the service management page of the target service.
    1. For a real-time service, choose More > Delete in the Operation column to delete it.
    2. For a batch service, click Delete in the Operation column to delete it.
    -

    A deleted service cannot be recovered. Exercise caution when performing this operation.

    - -
- - - -Parent topic: Model Deployment - - - diff --git a/modelarts/umn/temp/deploying_a_model_as_a_batch_service.tmp b/modelarts/umn/temp/deploying_a_model_as_a_batch_service.tmp deleted file mode 100644 index f2c7159c..00000000 --- a/modelarts/umn/temp/deploying_a_model_as_a_batch_service.tmp +++ /dev/null @@ -1,232 +0,0 @@ - - -

Deploying a Model as a Batch Service

-

After a model is prepared, you can deploy it as a batch service. The Service Deployment > Batch Services page lists all batch services. You can enter a service name in the search box in the upper right corner and click to query the service.

-

Prerequisites

  • Data has been prepared. Specifically, you have created a model in the Normal state in ModelArts.
  • Data to be batch processed is ready and has been upload to an OBS directory.
  • At least one empty folder has been created on OBS for storing the output.
- -

Background

  • A maximum of 1,000 batch services can be created.
  • Based on the input request (JSON or other file) defined by the model, different parameter are entered. If the model input is a JSON file, a configuration file is required to generate a mapping file. If the model input is other file, no mapping file is required.
  • Batch services can only be deployed in a public resource pool, but not a dedicated resource pool.
- -

Procedure

  1. Log in to the ModelArts management console. In the left navigation pane, choose Service Deployment > Batch Services. By default, the Batch Services page is displayed.
  2. In the batch service list, click Deploy in the upper left corner. The Deploy page is displayed.
  3. Set parameters for a batch service.
    1. Set the basic information, including Name and Description. The name is generated by default, for example, service-bc0d. You can specify Name and Description according to actual requirements.
    2. Set other parameters, including model configurations. For details, see Table 1. -.. _modelarts_23_0066__en-us_topic_0171858292_table1029041641314: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Table 1 Parameters

      Parameter

      -

      Description

      -

      Model and Version

      -

      Select the model and version that are in the Normal state.

      -

      Input Path

      -

      Select the OBS directory where the data is to be uploaded. Select a folder or a .manifest file. For details about the specifications of the .manifest file, see Manifest File Specifications.

      - NOTE:
      • If the input data is an image, ensure that the size of a single image is less than 10 MB.
      • If the input data is in CSV format, ensure that no Chinese character is included. To use Chinese, set the file encoding format to UTF-8.
      - -

      Request Path

      -

      API URI of a batch service.

      -

      Mapping Relationship

      -

      If the model input is in JSON format, the system automatically generates the mapping based on the configuration file corresponding to the model. If the model input is other file, mapping is not required.

      -

      Automatically generated mapping file. Enter the field index corresponding to each parameter in the CSV file. The index starts from 0.

      -

      Mapping rule: The mapping rule comes from the input parameter (request) in the model configuration file config.json. When type is set to string/number/integer/boolean, you are required to set the index parameter. For details about the mapping rule, see Example Mapping.

      -

      The index must be a positive integer starting from 0. If the value of index does not comply with the rule, this parameter is ignored in the request. After the mapping rule is configured, the corresponding CSV data must be separated by commas (,).

      -

      Output Path

      -

      Select the path for saving the batch prediction result. You can select the empty folder that you create.

      -

      Specifications

      -

      Select available specifications based on the list displayed on the console. The specifications in gray cannot be used at the current site.

      -

      Compute Nodes

      -

      Set the number of instances for the current model version. If you set Instances to 1, the standalone computing mode is used. If you set Instances to a value greater than 1, the distributed computing mode is used. Select a computing mode based on the actual requirements.

      -

      Environment Variable

      -

      Set environment variables and inject them to the container instance. To ensure data security, do not enter sensitive information, such as plaintext passwords, in environment variables.

      -
      - -
    -
  4. After setting the parameters, deploy the model as a batch service as prompted. Generally, service deployment jobs run for a period of time, which may be several minutes or tens of minutes depending on the amount of your selected data and resources.

    You can go to the batch service list to view the basic information about the batch service. In the batch service list, after the status of the newly deployed service changes from Deploying to Running, the service is deployed successfully.

    -
- -

Manifest File Specifications

Batch services of the inference platform support the manifest file. The manifest file describes the input and output of data.

- -Example input manifest file
  • File name: test.manifest
  • File content:
    {"source": "<obs path>/test/data/1.jpg"}
    -{"source": "https://infers-data.obs.xxx.com:443/xgboosterdata/data.csv?AccessKeyId=2Q0V0TQ461N26DDL18RB&Expires=1550611914&Signature=wZBttZj5QZrReDhz1uDzwve8GpY%3D&x-obs-security-token=gQpzb3V0aGNoaW5hixvY8V9a1SnsxmGoHYmB1SArYMyqnQT-ZaMSxHvl68kKLAy5feYvLDM..."}
    -
  • File requirements:
    1. The file name extension must be .manifest.
    2. The file content is in JSON format. Each row describes a piece of input data, which must be accurate to a file instead of a folder.
    -
- -

Example output manifest file

-If you use an input manifest file, the output directory will contain an output manifest file.
  • Assume that the output path is //test-bucket/test/. The result is stored in the following path:
    OBS bucket/directory name
    -├── test-bucket
    -│   ├── test
    -│   │   ├── infer-result-0.manifest
    -│   │   ├── infer-result
    -│   │   │ ├── 1.jpg_result.txt
    -│   │   │ ├── 2.jpg_result.txt
    -
  • Content of the infer-result-0.manifest file:
    {"source": "<obs path>/obs-data-bucket/test/data/1.jpg",  "inference-loc": "<obs path>/test-bucket/test/infer-result/1.jpg_result.txt"}
    -{"source ": "https://infers-data.obs.xxx.com:443/xgboosterdata/2.jpg?AccessKeyId=2Q0V0TQ461N26DDL18RB&Expires=1550611914&Signature=wZBttZj5QZrReDhz1uDzwve8GpY%3D&x-obs-security-token=gQpzb3V0aGNoaW5hixvY8V9a1SnsxmGoHYmB1SArYMyqnQT-ZaMSxHvl68kKLAy5feYvLDMNZWxzhBZ6Q-3HcoZMh9gISwQOVBwm4ZytB_m8sg1fL6isU7T3CnoL9jmvDGgT9VBC7dC1EyfSJrUcqfB...",  "inference-loc": "obs://test-bucket/test/infer-result/2.jpg_result.txt"}
    -
- -
  • File format:
    1. The file name is infer-result-{{index}}.manifest, where index is the instance ID. Each running instance of a batch service generates a manifest file.
    2. The infer-result directory is created in the manifest directory to store the result.
    3. The file content is in JSON format. Each row describes the output result of a piece of input data.
    4. The content contains two fields:
      1. source: input data description, which is the same as that of the input manifest file
      2. inference-loc: output result path in the format of <obs path>/{{Bucket name}}/{{Object name}}
      -
    -
-

Example Mapping

The following example shows the relationship between the configuration file, mapping rule, CSV data, and inference request.

-

Assume that the apis parameter in the configuration file used by your model is as follows:

-
 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
[
-    {
-        "protocol": "http",
-        "method": "post",
-        "url": "/",
-        "request": {
-            "type": "object",
-            "properties": {
-                "data": {
-                    "type": "object",
-                    "properties": {
-                        "req_data": {
-                            "type": "array",
-                            "items": [
-                                {
-                                    "type": "object",
-                                    "properties": {
-                                        "input_1": {
-                                            "type": "number"
-                                        },
-                                        "input_2": {
-                                            "type": "number"
-                                        },
-                                        "input_3": {
-                                            "type": "number"
-                                        },
-                                        "input_4": {
-                                            "type": "number"
-                                        }
-                                    }
-                                }
-                            ]
-                        }
-                    }
-                }
-            }
-        }
-    }
-]
-
-
-

At this point, the corresponding mapping relationship is shown below. The ModelArts management console automatically resolves the mapping relationship from the configuration file. When calling a ModelArts API, write the mapping relationship by yourself according to the rule.

-
{
-    "type": "object",
-    "properties": {
-        "data": {
-            "type": "object",
-            "properties": {
-                "req_data": {
-                    "type": "array",
-                    "items": [
-                        {
-                            "type": "object",
-                            "properties": {
-                                "input_1": {
-                                    "type": "number",
-                                    "index": 0
-                                },
-                                "input_2": {
-                                    "type": "number",
-                                    "index": 1
-                                },
-                                "input_3": {
-                                    "type": "number",
-                                    "index": 2
-                                },
-                                "input_4": {
-                                    "type": "number",
-                                    "index": 3
-                                }
-                            }
-                        }
-                    ]
-                }
-            }
-        }
-    }
-}
-

The data for inference, that is, the CSV data, is in the following format. The data must be separated by commas (,).

-
5.1,3.5,1.4,0.2
-4.9,3.0,1.4,0.2
-4.7,3.2,1.3,0.2
-

Depending on the defined mapping relationship, the inference request is shown below. The format is similar to the format used by the real-time service.

-
{
-	"data": {
-		"req_data": [{
-			"input_1": 5.1,
-			"input_2": 3.5,
-			"input_3": 1.4,
-			"input_4": 0.2
-		}]
-	}
-}
- - - - -Parent topic: Batch Services - - - diff --git a/modelarts/umn/temp/deploying_a_model_as_a_real-time_service.tmp b/modelarts/umn/temp/deploying_a_model_as_a_real-time_service.tmp deleted file mode 100644 index 43f96625..00000000 --- a/modelarts/umn/temp/deploying_a_model_as_a_real-time_service.tmp +++ /dev/null @@ -1,172 +0,0 @@ - - -

Deploying a Model as a Real-Time Service

-

After a model is prepared, you can deploy the model as a real-time service and predict and call the service.

-

A maximum of 20 real-time services can be deployed by a user.

- -

Prerequisites

  • Data has been prepared. Specifically, you have created a model in the Normal state in ModelArts.
- -

Procedure

  1. Log in to the ModelArts management console. In the left navigation pane, choose Service Deployment > Real-Time Services. By default, the system switches to the Real-Time Services page.
  2. In the real-time service list, click Deploy in the upper left corner. The Deploy page is displayed.
  3. Set parameters for a real-time service.
    1. Set basic information about model deployment. For details about the parameters, see Table 1. -.. _modelarts_23_0060__en-us_topic_0165025304_table16373156155613: - - - - - - - - - - - - - - - -
      Table 1 Basic parameters of model deployment

      Parameter

      -

      Description

      -

      Name

      -

      Name of the real-time service. Set this parameter as prompted.

      -

      Auto Stop

      -

      After this parameter is enabled and the auto stop time is set, a service automatically stops at the specified time. The auto stop function is enabled by default, and the default value is 1 hour later.

      -

      The options are 1 hour later, 2 hours later, 4 hours later, 6 hours later, and Custom. If you select Custom, you can enter any integer from 1 to 24 hours in the textbox on the right.

      -

      Description

      -

      Brief description of the real-time service.

      -
      - -
    2. Enter key information including the resource pool and model configurations. For details, see Table 2. -.. _modelarts_23_0060__en-us_topic_0165025304_table10352134481117: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Table 2 Parameters

      Parameter

      -

      Sub-Parameter

      -

      Description

      -

      Resource Pool

      -

      Public resource pools

      -

      Instances in the public resource pool can be of the CPU or GPU type.

      -

      Resource Pool

      -

      Dedicated resource pools

      -

      For details about how to create a dedicated resource pool, see Creating a Dedicated Resource Pool. You can select a specification from the resource pool specifications.

      -

      Model and Configuration

      -

      Model Source

      -

      You can select My Models or My Subscriptions based on site requirements. The models that match the model sources are displayed.

      -

      Model

      -

      The system automatically associates with the list of available models. Select a model in the Normal status and its version.

      -

      Traffic Ratio (%)

      -

      Set the traffic proportion of the current instance node. Service calling requests are allocated to the current version based on this proportion.

      -

      If you deploy only one version of a model, set this parameter to 100%. If you select multiple versions for gated launch, ensure that the sum of the traffic ratios of multiple versions is 100%.

      -

      Specifications

      -

      If you select Public resource pools, you can select the CPU or GPU resources based on site requirements. For details, see Table 3.

      -

      Compute Nodes

      -

      Set the number of instances for the current model version. If you set Instances to 1, the standalone computing mode is used. If you set Instances to a value greater than 1, the distributed computing mode is used. Select a computing mode based on the actual requirements.

      -

      Environment Variable

      -

      Set environment variables and inject them to the container instance. To ensure data security, do not enter sensitive information, such as plaintext passwords, in environment variables.

      -

      Add Model and Configuration

      -

      ModelArts supports multiple model versions and flexible traffic policies. You can use gated launch to smoothly upgrade the model version.

      - NOTE:

      If the selected model has only one version, the system does not display Add Model Version and Configuration.

      - -

      Traffic Limit

      -

      N/A

      -

      Maximum number of times a service can be accessed within a second. You can set this parameter as needed.

      -
      - - -.. _modelarts_23_0060__en-us_topic_0165025304_table117211414482: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Table 3 Supported specifications

      Specifications

      -

      Description

      -

      ExeML specifications (CPU)

      -

      ExeML specifications (GPU)

      -

      Only be used by models trained in ExeML projects.

      -

      CPU: 2 vCPUs | 8 GiB

      -

      Suitable for models with only CPU loads.

      -

      CPU: 8 vCPUs | 64 GiB GPU: 1 x V100

      -

      Suitable for running GPU models.

      -

      CPU: 8 vCPUs | 32 GiB GPU: 1 x T4

      -

      Suitable for models requiring CPU and GPU (NVIDIA T4) resources.

      -

      Arm: 3 vCPUs | 6 GiB Ascend: 1 x Ascend 310

      -

      Carrying one Ascend 310 chip, suitable for models requiring Ascend 310 chip resources.

      -

      Ascend: 1 x Ascend 910 CPU: 24 vCPUs | 96 GiB

      -

      Carrying one Ascend 910 chip, suitable for models requiring Ascend 910 chip resources.

      -

      Ascend: 8 Ascend 910 CPU: 192 vCPUs | 720 GiB

      -

      Carrying eight Ascend 910 chips, suitable for models requiring Ascend 910 chip resources.

      -
      - -
    -
  4. After confirming the entered information, complete service deployment as prompted. Generally, service deployment jobs run for a period of time, which may be several minutes or tens of minutes depending on the amount of your selected data and resources.

    After a real-time service is deployed, it is started immediately.

    - -

    You can go to the real-time service list to view the basic information about the real-time service. In the real-time service list, after the status of the newly deployed service changes from Deploying to Running, the service is deployed successfully.

    -
- - - - -Parent topic: Real-Time Services - - - diff --git a/modelarts/umn/temp/deploying_a_model_as_a_service.tmp b/modelarts/umn/temp/deploying_a_model_as_a_service.tmp deleted file mode 100644 index 21cf885e..00000000 --- a/modelarts/umn/temp/deploying_a_model_as_a_service.tmp +++ /dev/null @@ -1,46 +0,0 @@ - - -

Deploying a Model as a Service

-

Deploying a Model

You can deploy a model as a real-time service that provides a real-time test UI and monitoring capabilities. After model training is complete, you can deploy a version with the ideal accuracy and in the Successful status as a service. The procedure is as follows:

-
  1. On the Train Model tab page, wait until the training status changes to Successful. Click Deploy in the Version Manager pane to deploy the model as a real-time service.
  2. In the Deploy dialog box, select resource flavor, set the Auto Stop function, and click OK to start the deployment.
    • Specifications: The GPU specifications are better, and the CPU specifications are more cost-effective.
    • Compute Nodes: The default value is 1 and cannot be changed.
    • Auto Stop: After this function is enabled and the auto stop time is set, a service automatically stops at the specified time.
    -

    The options are 1 hour later, 2 hours later, 4 hours later, 6 hours later, and Custom. If you select Custom, you can enter any integer from 1 to 24 hours in the text box on the right.

    -
  3. After the model deployment is started, view the deployment status on the Service Deployment page.

    It takes a certain period of time to deploy a model. When the status in the Version Manager pane changes from Deploying to Running, the deployment is complete.

    -

    On the ExeML page, trained models can only be deployed as real-time services. For details about how to deploy them as batch services, see Where Are Models Generated by ExeML Stored? What Other Operations Are Supported?

    - -
- -

Testing a Service

  • On the Service Deployment page, select a service type. For example, on the ExeML page, the image classification model is deployed as a real-time service by default. On the Real-Time Services page, click Prediction in the Operation column of the target service to perform a service test. For details, see "Testing a Service".
  • You can also use code to test a service. For details, see "Accessing a Real-Time Service".
  • The following describes the procedure for performing a service test after the image classification model is deployed as a service on the ExeML page.
    1. After the model is deployed, test the service using an image. On the ExeML page, click the target project, go to the Deploy Service tab page, select the service version in the Running status, click Upload in the service test area, and upload a local image to perform the test.
    2. Click Prediction to conduct the test. After the prediction is complete, label sunflowers and its detection score are displayed in the prediction result area on the right. If the model accuracy does not meet your expectation, add images on the Label Data tab page, label the images, and train and deploy the model again. Table 1 describes the parameters in the prediction result. If you are satisfied with the model prediction result, call the API to access the real-time service as prompted. For details, see Accessing a Real-Time Service.

      Currently, only JPG, JPEG, BMP, and PNG images are supported.

      - -.. _modelarts_21_0007__en-us_topic_0284258836_en-us_topic_0169446156_table27341946101510: - - - - - - - - - - - - -
      Table 1 Parameters in the prediction result

      Parameter

      -

      Description

      -

      predict_label

      -

      Image prediction label

      -

      scores

      -

      Prediction confidence of top 5 labels

      -
      - -

      A running real-time service keeps consuming resources. If you do not need to use the real-time service, click Stop in the Version Manager pane to stop the service. If you want to use the service again, click Start.

      - -
    -
- - - - -Parent topic: Image Classification - - - diff --git a/modelarts/umn/temp/development_environment.tmp b/modelarts/umn/temp/development_environment.tmp deleted file mode 100644 index 3f517773..00000000 --- a/modelarts/umn/temp/development_environment.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Development Environment

- - - - - -Parent topic: FAQs - - - diff --git a/modelarts/umn/temp/devenviron.tmp b/modelarts/umn/temp/devenviron.tmp deleted file mode 100644 index 13245ac8..00000000 --- a/modelarts/umn/temp/devenviron.tmp +++ /dev/null @@ -1,14 +0,0 @@ - - -

DevEnviron

-

It is challenging to set up a development environment, select an AI algorithm framework and algorithm, debug code, install software, and accelerate hardware. To address these challenges, ModelArts provides DevEnviron to simplify the entire development process.

-
  • Mainstream AI algorithm frameworks supported

    In the machine learning and deep learning fields, popular open-source training and inference frameworks include TensorFlow, PyTorch, MXNet, and MindSpore. ModelArts supports all popular AI computing frameworks and provides a user-friendly development and debugging environment. It supports traditional machine learning algorithms, such as logistic regression, decision tree, and clustering, as well as multiple types of deep learning algorithms, such as the convolutional neural network (CNN), recurrent neural network (RNN), and long short-term memory (LSTM).

    -
  • Simplified algorithm development for distributed training

    Deep learning generally requires large-scale GPU clusters for distributed acceleration. For existing open-source frameworks, algorithm developers need to write a large amount of code for distributed training on different hardware, and the acceleration code varies depending on the framework. To resolve these issues, a distributed lightweight framework or SDK is required. The framework or SDK is built on deep learning engines such as TensorFlow, PyTorch, MXNet, and MindSpore to improve the distributed performance and usability of these engines. ModelArts MoXing perfectly suits the needs. The easy-to-use MoXing API/SDK enables you to develop deep learning at low costs.

    -
- - - -Parent topic: Basic Knowledge - - - diff --git a/modelarts/umn/temp/devenviron_(notebook).tmp b/modelarts/umn/temp/devenviron_(notebook).tmp deleted file mode 100644 index 4c8cd422..00000000 --- a/modelarts/umn/temp/devenviron_(notebook).tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

DevEnviron (Notebook)

- - - - - diff --git a/modelarts/umn/temp/do_files_in__cache_still_exist_after_a_notebook_instance_is_stopped_or_restarted_how_do_i_avoid_a_restart.tmp b/modelarts/umn/temp/do_files_in__cache_still_exist_after_a_notebook_instance_is_stopped_or_restarted_how_do_i_avoid_a_restart.tmp deleted file mode 100644 index a9a04456..00000000 --- a/modelarts/umn/temp/do_files_in__cache_still_exist_after_a_notebook_instance_is_stopped_or_restarted_how_do_i_avoid_a_restart.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

Do Files in /cache Still Exist After a Notebook Instance is Stopped or Restarted? How Do I Avoid a Restart?

-

/cache is a temporary directory and will not be saved. After an instance using OBS storage is stopped, data in the ~work directory will be deleted. After a notebook instance is restarted, all cached data except the data in the OBS bucket is lost, and your model or code is unavailable.

-

To avoid a restart, do not train heavy-load jobs that consume large amounts of CPU, GPU, or memory resources in DevEnviron.

- - - -Parent topic: Notebook - - - diff --git a/modelarts/umn/temp/downloading_a_file_from_jupyterlab.tmp b/modelarts/umn/temp/downloading_a_file_from_jupyterlab.tmp deleted file mode 100644 index 009d8403..00000000 --- a/modelarts/umn/temp/downloading_a_file_from_jupyterlab.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

Downloading a File from JupyterLab

-

Only files within 100 MB in JupyterLab can be downloaded to a local PC. You can perform operations in different scenarios based on the storage location selected when creating a notebook instance.

-

Notebook Instances with EVS Attached

For notebook instances with EVS attached, you can perform the following operations to download large files to the local PC:

-
  1. In the notebook instance, create an ipynb file. Use MoXing to upload the large files from notebook instances to OBS. The sample code is as follows:
    1
    -2
    import moxing as mox
    -mox.file.copy('/home/ma-user/work/obs_file.txt', 'obs://bucket_name/obs_file.txt')
    -
    -
    -

    In the preceding code, /home/ma-user/work/obs_file.txt indicates a file storage path in a notebook instance, and obs://bucket_name/obs_file.txt indicates a file storage path on OBS.

    -
  2. Use OBS or the ModelArts SDKs to download the files from OBS to the local PC.
- -

Notebook Instances Using OBS Storage

For notebook instances that use OBS storage, you can use OBS or the ModelArts SDK to download files from OBS to a local PC.

-

Use OBS for download.

- - - - -Parent topic: Uploading and Downloading Data - - - diff --git "a/modelarts/umn/temp/error_message_\"no_such_file_or_directory\"_displayed_in_training_job_logs.tmp" "b/modelarts/umn/temp/error_message_\"no_such_file_or_directory\"_displayed_in_training_job_logs.tmp" deleted file mode 100644 index d9011a3f..00000000 --- "a/modelarts/umn/temp/error_message_\"no_such_file_or_directory\"_displayed_in_training_job_logs.tmp" +++ /dev/null @@ -1,23 +0,0 @@ - - -

Error Message "No such file or directory" Displayed in Training Job Logs

-

Issue Analysis

When you use ModelArts, your data is stored in the OBS bucket. The data has a corresponding OBS path, for example, bucket_name/dir/image.jpg. ModelArts training jobs run in containers, and if they need to access OBS data, they need to know what path to access it from. If ModelArts cannot find the configured path, it is possible that the selected data storage path was configured incorrectly when the training job was created or that the OBS path in the code file is incorrect.

- -

Solution

  1. Confirm that the OBS path in the log exists.

    Locate the incorrect OBS path in the log, for example, obs-test/ModelArts/examples/. There are two methods to check whether it exists.

    -
    • On OBS Console, check whether the OBS path exists.

      Log in to OBS console using the current account, and check whether the OBS buckets, folders, and files exist in the OBS path displayed in the log. For example, you can confirm that a given bucket is there and then check if that bucket contains the folder you are looking for based on the configured path.

      -
      • If the file path exists, go to 2.
      • If it does not exist, change the path configured for the training job to an OBS bucket path that is actually there.
      -
    • Create a notebook instance, and use an API to check whether the directory exists. In an existing notebook instance or after creating a new notebook instance, run the following command to check whether the directory exists:
      import moxing as mox
      -mox.file.exists('obs://obs-test/ModelArts/examples/')
      -
      • If it exists, go to 2.
      • If it does not exist, change it to an available OBS bucket path in the training job.
      -
    -
  2. After confirming that the path exists, check whether OBS and ModelArts are in the same region and whether the OBS bucket belongs to another account.

    Log in to the ModelArts console and view the region where ModelArts resides. Log in to the OBS console and view the region where the OBS bucket resides. Check whether they reside in the same region and whether the OBS bucket belongs to another account.

    -
    • If they are in the same region and the OBS bucket does not belong to another account, go to 3.
    • If they are not in the same region or the OBS bucket belongs to another account, create a bucket and a folder in OBS that is in the same region as ModelArts using the same account, and upload data to the bucket.
    -
  3. In the script of the training job, check whether the API for reading the OBS path in the code file is correct.
- - - - -Parent topic: Training Jobs - - - diff --git a/modelarts/umn/temp/examples_of_custom_scripts.tmp b/modelarts/umn/temp/examples_of_custom_scripts.tmp deleted file mode 100644 index 61396949..00000000 --- a/modelarts/umn/temp/examples_of_custom_scripts.tmp +++ /dev/null @@ -1,25 +0,0 @@ - - - -

Examples of Custom Scripts

- -

- - - - - - diff --git a/modelarts/umn/temp/exeml.tmp b/modelarts/umn/temp/exeml.tmp deleted file mode 100644 index 162bc9c7..00000000 --- a/modelarts/umn/temp/exeml.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - - -

ExeML

- -

- - - - - - diff --git a/modelarts/umn/temp/exporting_data.tmp b/modelarts/umn/temp/exporting_data.tmp deleted file mode 100644 index be08b5c5..00000000 --- a/modelarts/umn/temp/exporting_data.tmp +++ /dev/null @@ -1,33 +0,0 @@ - - -

Exporting Data

-

A dataset includes labeled and unlabeled data. You can select images or filter data based on the filter criteria and export to a new dataset or the specified OBS directory. In addition, you can view the task history to learn about the export records.

-

Only datasets of image classification, object detection, image segmentation, and free format types can be exported.

-
  • For image classification datasets, only the label files in TXT format can be exported.
  • For object detection datasets, only XML label files in Pascal VOC format can be exported.
  • For image segmentation datasets, only XML label files in Pascal VOC format and mask images can be exported.
  • For free format datasets, all files of the datasets can be exported.
- -

Exporting Data to a New Dataset

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset of the object detection or image classification type and click the dataset name to go to the Dashboard tab page of the dataset.

    For a dataset of the free format type, you can click the dataset name to directly access the dataset details page and go to 4.

    - -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed.
  4. On the dataset details page, select or filter data to be exported. Click Export To and choose New Dataset from the drop-down list.
  5. In the displayed Export to New Dataset dialog box, enter the related information and click OK.

    Name: name of the new dataset

    -

    Storage Path: input path of the new dataset, that is, the OBS path where the data to be exported is stored

    -

    Output Path: output path of the new dataset, that is, the output path after labeling is complete. The output path cannot be the same as the storage path, and the output path cannot be a subdirectory of the storage path.

    -

    Export Content: The options are Export the selected samples and Export all samples meeting filtering criteria.

    -
  6. After the data is exported, you can view the new dataset in the dataset list.
- -

Exporting Data to OBS

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset of the object detection or image classification type and click the dataset name to go to the Dashboard tab page of the dataset.

    For a dataset of the free format type, you can click the dataset name to directly access the dataset details page and go to 4.

    - -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed.
  4. On the dataset details page, select or filter data to be exported. Click Export To and choose OBS from the drop-down list.
  5. In the displayed Export to OBS dialog box, enter the related information and click OK.

    Storage Path: path where the data to be exported is stored. You are advised not to save data to the input or output path of the current dataset.

    -

    Export Content: The options are Export the selected samples and Export all samples meeting filtering criteria.

    -
  6. After the data is exported, you can view it in the specified path.
- -

Viewing the Task History

When you export data to a new dataset or OBS, you can view the export task details in the View Task History dialog box.

-
  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset of the object detection or image classification type and click the dataset name to go to the Dashboard tab page of the dataset.

    For a dataset of the free format type, you can click the dataset name to directly access the dataset details page and go to 4.

    - -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed.
  4. On the dataset details page, select or filter data to be exported. Click Export To and choose View Task History from the drop-down list.
  5. In the View Task History dialog box, view the export task history of the current dataset. Information about Task ID, Created, Type, Path, Total, and Status is included.
- - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/faqs.tmp b/modelarts/umn/temp/faqs.tmp deleted file mode 100644 index 2c925723..00000000 --- a/modelarts/umn/temp/faqs.tmp +++ /dev/null @@ -1,27 +0,0 @@ - - - -

FAQs

- -

- - - - - - diff --git a/modelarts/umn/temp/for_importing_models.tmp b/modelarts/umn/temp/for_importing_models.tmp deleted file mode 100644 index 8705cad3..00000000 --- a/modelarts/umn/temp/for_importing_models.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

For Importing Models

-

- - - - - -Parent topic: Custom Images - - - diff --git a/modelarts/umn/temp/for_training_models.tmp b/modelarts/umn/temp/for_training_models.tmp deleted file mode 100644 index a1d8be46..00000000 --- a/modelarts/umn/temp/for_training_models.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

For Training Models

- - - - - -Parent topic: Custom Images - - - diff --git a/modelarts/umn/temp/functions.tmp b/modelarts/umn/temp/functions.tmp deleted file mode 100644 index daea758a..00000000 --- a/modelarts/umn/temp/functions.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

Functions

-

AI engineers face challenges in the installation and configuration of various AI tools, data preparation, and model training. To address these challenges, the one-stop AI development platform ModelArts is provided. The platform integrates data preparation, algorithm development, model training, and model deployment into the production environment, allowing AI engineers to perform one-stop AI development.

-Figure 1 Function overview
-

ModelArts has the following features:

-
  • Data governance

    Manages data preparation, such as data filtering and labeling, and dataset versions.

    -
  • Rapid and simplified model training

    Enables high-performance distributed training and simplifies coding with the self-developed MoXing deep learning framework.

    -
  • Multi-scenario deployment

    Deploys models in various production environments, and supports real-time and batch inference.

    -
  • Auto learning

    Enables model building without coding and supports image classification, object detection, and predictive analytics.

    -
- - - - -Parent topic: Service Overview - - - diff --git a/modelarts/umn/temp/general_issues.tmp b/modelarts/umn/temp/general_issues.tmp deleted file mode 100644 index f5adee4f..00000000 --- a/modelarts/umn/temp/general_issues.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

General Issues

- - - - - -Parent topic: FAQs - - - diff --git a/modelarts/umn/temp/how_do_i_create_a_training_job_when_a_dependency_package_is_referenced_in_a_model.tmp b/modelarts/umn/temp/how_do_i_create_a_training_job_when_a_dependency_package_is_referenced_in_a_model.tmp deleted file mode 100644 index 3fae1dcd..00000000 --- a/modelarts/umn/temp/how_do_i_create_a_training_job_when_a_dependency_package_is_referenced_in_a_model.tmp +++ /dev/null @@ -1,32 +0,0 @@ - - -

How Do I Create a Training Job When a Dependency Package Is Referenced in a Model?

-

When a model references a dependency package, select a frequently-used framework to create training jobs. In addition, place the required file or installation package in the code directory. The requirements vary based on the dependency package that you use.

-
  • Open-source installation package

    It is not allowed to install the package using the GitHub source code.

    - -

    Create a file named pip-requirements.txt in the code directory. In this file, specify the name and version of the dependency package in the format of Package name==Version.

    -

    For example, the OBS path specified by Code Directory contains model files and the pip-requirements.txt file. The following shows the code directory structure:

    -
    |---OBS path to the model boot file
    -     |---model.py               #Model boot file
    -     |---pip-requirements.txt   #Customized configuration file, which specifies the name and version of the dependency package
    -

    The following shows the content of the pip-requirements.txt file:

    -
    alembic==0.8.6
    -bleach==1.4.3
    -click==6.6
    -
  • Customized WHL file

    When you use a customized .whl file, the system cannot automatically download and install the file. Place the .whl file in the code directory, create a file named pip-requirements.txt, and specify the name of the .whl file in the created file. The dependency package must be a .whl file.

    -

    For example, the OBS path specified by Code Directory contains model files, .whl file, and pip-requirements.txt file. The following shows the code directory structure:

    -
    |---OBS path to the model boot file
    -     |---model.py               #Model boot file
    -     |---XXX.whl                #Dependency package. If multiple dependencies are required, place all of them here.
    -     |---pip-requirements.txt   #Customized configuration file, which specifies the name of the dependency package
    -

    The following shows the content of the pip-requirements.txt file:

    -
    numpy-1.15.4-cp36-cp36m-manylinux1_x86_64.whl
    -tensorflow-1.8.0-cp36-cp36m-manylinux1_x86_64.whl
    -
- - - -Parent topic: Training Jobs - - - diff --git a/modelarts/umn/temp/how_do_i_describe_the_dependencies_between_installation_packages_and_model_configuration_files_when_a_model_is_imported.tmp b/modelarts/umn/temp/how_do_i_describe_the_dependencies_between_installation_packages_and_model_configuration_files_when_a_model_is_imported.tmp deleted file mode 100644 index bd544f58..00000000 --- a/modelarts/umn/temp/how_do_i_describe_the_dependencies_between_installation_packages_and_model_configuration_files_when_a_model_is_imported.tmp +++ /dev/null @@ -1,57 +0,0 @@ - - -

How Do I Describe the Dependencies Between Installation Packages and Model Configuration Files When a Model Is Imported?

-

Symptom

When importing a model from OBS or a container image, compile a model configuration file. The model configuration file describes the model usage, computing framework, precision, inference code dependency package, and model API. The configuration file must be in JSON format. In the configuration file, dependencies indicates the packages that the model inference code depends on. Model developers need to provide the package name, installation mode, and version constraints. For details about the parameters, see . The dependency structure array needs to be set for the dependencies parameter.

- -

Solution

When the installation package has dependency relationships, the dependencies parameter in the model configuration file supports multiple dependency structure arrays, which are entered in list format.

-

The dependencies in list format must be installed in sequence. For example, install Cython, pytest-runner, and pytest before installing mmcv-full. When entering the installation packages in list format in the configuration file, write Cython, pytest-runner, and pytest in front of the mmcv-full structure array.

-

Example:

-
"dependencies": [
-    {
-    "installer": "pip",
-    "packages": [
-        {
-            "package_name": "Cython"
-        },
-        {
-            "package_name": "pytest-runner"
-        },
-        {
-            "package_name": "pytest"
-        }]
-    },
-
-    {
-    "installer": "pip",
-    "packages": [
-        {
-            "restraint": "ATLEAST",
-            "package_version": "5.0.0",
-            "package_name": "Pillow"
-        },
-        {
-            "restraint": "ATLEAST",
-            "package_version": "1.4.0",
-            "package_name": "torch"
-        },
-        {
-            "restraint": "ATLEAST",
-            "package_version": "1.19.1",
-            "package_name": "numpy"
-        },
-        {
-            "restraint": "ATLEAST",
-            "package_version": "1.2.0",
-            "package_name": "mmcv-full"
-        }]
-    }
-]
- -

- - - -Parent topic: Service Deployment - - - diff --git a/modelarts/umn/temp/how_do_i_enable_the_terminal_function_in_devenviron_of_modelarts.tmp b/modelarts/umn/temp/how_do_i_enable_the_terminal_function_in_devenviron_of_modelarts.tmp deleted file mode 100644 index 54ee526d..00000000 --- a/modelarts/umn/temp/how_do_i_enable_the_terminal_function_in_devenviron_of_modelarts.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

How Do I Enable the Terminal Function in DevEnviron of ModelArts?

-
  1. Log in to the ModelArts management console, and choose DevEnviron > Notebooks.
  2. In the notebook list, click Open in the Operation column of the target notebook instance to go to the Jupyter page.
  3. On the Files tab page of the Jupyter page, click New and select Terminal. The Terminal page is displayed.Figure 1 Going to the Terminal page
    -
- - - -Parent topic: Notebook - - - diff --git a/modelarts/umn/temp/how_do_i_import_a_model_downloaded_from_obs_to_modelarts.tmp b/modelarts/umn/temp/how_do_i_import_a_model_downloaded_from_obs_to_modelarts.tmp deleted file mode 100644 index 0153e6aa..00000000 --- a/modelarts/umn/temp/how_do_i_import_a_model_downloaded_from_obs_to_modelarts.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

How Do I Import a Model Downloaded from OBS to ModelArts?

-

ModelArts allows you to upload local models to OBS or import models stored in OBS directly into ModelArts.

-

For details about how to import a model from OBS, see Importing a Meta Model from OBS.

- - - -Parent topic: Model Management - - - diff --git a/modelarts/umn/temp/how_do_i_obtain_access_keys.tmp b/modelarts/umn/temp/how_do_i_obtain_access_keys.tmp deleted file mode 100644 index b2ac71c8..00000000 --- a/modelarts/umn/temp/how_do_i_obtain_access_keys.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

How Do I Obtain Access Keys?

-

Obtaining an Access Key

  1. Log in to the console, enter the My Credentials page, and choose Access Keys > Create Access Key.
  2. In the Create Access Key dialog box that is displayed, use the login password for verification.
  3. Click OK, open the credentials.csv file, and save the key file as prompted. The access key file is saved in the default download folder of the browser. Then, the access key (Access Key Id and Secret Access Key) is obtained.
- - - - -Parent topic: General Issues - - - diff --git a/modelarts/umn/temp/how_do_i_perform_incremental_training_in_an_exeml_project.tmp b/modelarts/umn/temp/how_do_i_perform_incremental_training_in_an_exeml_project.tmp deleted file mode 100644 index 550aade5..00000000 --- a/modelarts/umn/temp/how_do_i_perform_incremental_training_in_an_exeml_project.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

How Do I Perform Incremental Training in an ExeML Project?

-

Each round of training generates a training version in an ExeML project. If a training result is unsatisfactory (for example, if the precision is not good enough), you can add high-quality data or add or delete labels, and perform training again.

-
  • For better training results, use high-quality data for incremental training to improve data labeling performance.
- -

Incremental Training Procedure

  1. Log in to the ModelArts console, and click ExeML in the left navigation pane.
  2. On the ExeML page, click a project name. The ExeML details page of the project is displayed.
  3. On the Label Data page, click the Unlabeled tab. On the Unlabeled tab page, you can add images or add or delete labels.

    If you add images, label the added images again. If you add or delete labels, check all images and label them again. You also need to check whether new labels need to be added for the labeled data.

    -
  4. After all images are labeled, click Train in the upper right corner. In the Training Configuration dialog box that is displayed, set Incremental Training Version to the training version that has been completed to perform incremental training based on this version. Set other parameters as prompted.

    After the settings are complete, click Yes to start incremental training. The system automatically switches to the Train Model page. After the training is complete, you can view the training details, such as training precision, evaluation result, and training parameters.

    -
- - - - -Parent topic: Tips - - - diff --git a/modelarts/umn/temp/how_do_i_quickly_create_an_obs_bucket_and_a_folder_when_creating_a_project.tmp b/modelarts/umn/temp/how_do_i_quickly_create_an_obs_bucket_and_a_folder_when_creating_a_project.tmp deleted file mode 100644 index 45a7e065..00000000 --- a/modelarts/umn/temp/how_do_i_quickly_create_an_obs_bucket_and_a_folder_when_creating_a_project.tmp +++ /dev/null @@ -1,14 +0,0 @@ - - -

How Do I Quickly Create an OBS Bucket and a Folder When Creating a Project?

-

When creating a project, select a training data path. This section describes how to quickly create an OBS bucket and folder when you select the training data path.

-
  1. On the page for creating an ExeML project, click on the right of Input Dataset Path. The Input Dataset Path dialog box is displayed.
  2. Click Create Bucket. The Create Bucket page is displayed. For details about how to create a bucket, see Creating a Bucket in the Object Storage Service Console Operation Guide.Figure 1 Creating an OBS bucket
    -
  3. Select the bucket, and click Create Folder. In the dialog box that is displayed, enter the folder name and click OK.
    • The name cannot contain the following special characters: \/:*?"<>|
    • The name cannot start or end with a period (.) or slash (/).
    • The absolute path of a folder cannot exceed 1,023 characters.
    • Any single slash (/) separates and creates multiple levels of folders at once.
    -
- - - -Parent topic: Tips - - - diff --git a/modelarts/umn/temp/how_do_i_upload_data_to_obs.tmp b/modelarts/umn/temp/how_do_i_upload_data_to_obs.tmp deleted file mode 100644 index c2d82918..00000000 --- a/modelarts/umn/temp/how_do_i_upload_data_to_obs.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

How Do I Upload Data to OBS?

-

Before using ModelArts to develop AI models, data needs to be uploaded to an OBS bucket. You can log in to the OBS console to create an OBS bucket, create a folder, and upload data. For details about how to upload data, see Object Storage Service Getting Started.

- - - -Parent topic: General Issues - - - diff --git a/modelarts/umn/temp/how_do_i_view_the_added_data_in_an_exeml_project.tmp b/modelarts/umn/temp/how_do_i_view_the_added_data_in_an_exeml_project.tmp deleted file mode 100644 index 365d660e..00000000 --- a/modelarts/umn/temp/how_do_i_view_the_added_data_in_an_exeml_project.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

How Do I View the Added Data in an ExeML Project?

-

To add data for an existing project, perform the following operations. The operations described in this section apply only to object detection and image classification projects.

-

Obtaining the Data Source of an ExeML Project

  1. Log in to the ModelArts management console and choose ExeML from the left navigation pane.
  2. In the ExeML project list, you can view the data source corresponding to the project in the Data Source column. Click your desired data source link to go to the dataset selected or created during project creation.
- -

Uploading New Data to OBS

Log in to OBS Console, access the data storage path, and upload new data to OBS.

-

For details about how to upload files to OBS, see Uploading an Object.

- -

Synchronizing Data to ModelArts

  1. After data is uploaded to OBS, go to the ExeML page on the ModelArts management console.
  2. In the ExeML project list, select the project to which data is to be added and click the project name. The Label Data page is displayed.
  3. On the Label Data page, click Synchronize Data Source.

    It takes several minutes to complete data synchronization. After the synchronization is complete, the new data is synchronized to the Unlabeled or Labeled tab page.

    -
- - - - -Parent topic: Tips - - - diff --git a/modelarts/umn/temp/image_classification.tmp b/modelarts/umn/temp/image_classification.tmp deleted file mode 100644 index fdbc7325..00000000 --- a/modelarts/umn/temp/image_classification.tmp +++ /dev/null @@ -1,24 +0,0 @@ - - -

Image Classification

-

- - - - - -Parent topic: ExeML - - - diff --git a/modelarts/umn/temp/image_segmentation.tmp b/modelarts/umn/temp/image_segmentation.tmp deleted file mode 100644 index 3d7b6639..00000000 --- a/modelarts/umn/temp/image_segmentation.tmp +++ /dev/null @@ -1,137 +0,0 @@ - - -

Image Segmentation

-

Training a model uses a large number of labeled images. Therefore, label images before the model training. You can label images on the ModelArts management console. Alternatively, modify labels, or delete them and label them again.

-

Before labeling an image in image segmentation scenarios, you need to understand the following:

-
  • All objects whose contours need to be extracted from the image must be labeled.
  • Polygons and points can be used for labeling.
    • In polygon labeling, draw a polygon based on the outline of the target object.
    • In point labeling, label the top, bottom, leftmost, and rightmost points on the object contour. The system will infer the outline of the object based on the labeled points. For images with complex backgrounds, it is a good practice to use polygons for labeling.
    -
  • When labeling an image, ensure that the polygons or points are within the image. Otherwise, an error will occur in subsequent operations.
-

Starting Labeling

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset to be labeled based on the labeling type, and click the dataset name to go to the Dashboard tab page of the dataset.

    By default, the Dashboard tab page of the current dataset version is displayed. If you need to label the dataset of another version, click the Versions tab and then click Set to Current Version in the right pane. For details, see Managing Dataset Versions.

    -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed. By default, all data of the dataset is displayed on the dataset details page.
- -

Synchronizing Data Sources

ModelArts automatically synchronizes data and labeling information from Input Dataset Path to the dataset details page.

-
  • For an image classification dataset, the .txt file with the same name in the same directory as the data source is used as the label of the target image.
  • For an object detection dataset or image segmentation dataset, the .xml file with the same name in the same directory is used as the label of the target image.
-

To quickly obtain the latest data in the OBS bucket, on the All or Unlabeled tab page of the dataset details page, click Synchronize Data Source to add data from OBS to the dataset.

- -

Filtering Data

On the Dashboard tab page of the dataset, the summary of the dataset is displayed by default. In the upper right corner of the page, click Label. The dataset details page is displayed, showing all data in the dataset by default. On the All, Unlabeled, or Labeled tab page, you can add filter criteria in the filter criteria area to quickly filter the data you want to view.

-

The following filter criteria are supported. You can set one or more filter criteria.

-
  • Label: Select All or one or more labels you specified.
  • Sample Creation Time: Select Within 1 month, Within 1 day, or Custom to customize a time range.
  • File Name or Path: Filter files by file name or file storage path.
  • Labeled By: Select the name of the user who labeled the image.
- -

- -

Manually Labeling Images

The dataset details page provides the Labeled and Unlabeled tabs. The All tab page is displayed by default.

-
  1. On the Unlabeled tab page, click an image. The system automatically directs you to the page for labeling the image. For details about how to use common buttons on this page, see Table 2.
  2. Select a labeling method.On the labeling page, common labeling methods and buttons are provided in the toolbar. By default, polygon labeling is selected. Use polygon or point labeling as needed.

    After you select a method to label the first image, the labeling method automatically applies to subsequent images.

    - -Figure 1 Toolbar
    - -.. _modelarts_23_0345__en-us_topic_0000001126398947_table165201739119: - - - - - - - - - - - - -
    Table 1 Labeling methods

    Icon

    -

    Description

    -

    -

    Polygon labeling. In the area where the object to be labeled is located, click to label a point, move the mouse and click multiple points along the edge of the object, and then click the first point again. All the points form a polygon. In this way, the object to be labeled is within the bounding box.

    -

    -

    Point labeling. Label the top, bottom, leftmost, and rightmost points on the object contour. The system will infer the outline of the object based on the labeled points.

    -
    - - -.. _modelarts_23_0345__en-us_topic_0000001126398947_table194471512463: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 2 Toolbar buttons

    Icon

    -

    Description

    -

    -

    Cancel the previous operation.

    -

    -

    Redo the previous operation.

    -

    -

    Zoom in an image.

    -

    -

    Zoom out an image.

    -

    -

    Delete all bounding boxes on the current image.

    -

    -

    Display or hide a bounding box. This operation can be performed only on a labeled image.

    -

    -

    Drag a bounding box to another position or drag the edge of the bounding box to resize it.

    -

    -

    Reset a bounding box. After dragging a bounding box, you can click this button to quickly restore the bounding box to its original shape and position.

    -

    -

    Display the labeled image in full screen.

    -
    - - -
  3. Label an object.

    This section uses point labeling as an example. Identify an object in an image. Click to label the top, bottom, leftmost, and rightmost points on the object contour. In the dialog box that is displayed, set the label name and click Add. Then, the system automatically infers the object contour.

    -

    After labeling an image, click an image that has not been labeled in the image list below to label the new image.

    -Figure 2 Labeling an object outline
    -
  4. Click Back to Data Labeling Preview in the upper left part of the page to view the labeling information. In the dialog box that is displayed, click OK to save the labeling settings.

    The selected image is automatically moved to the Labeled tab page. On the Unlabeled and All tab pages, the labeling information is updated along with the labeling process, including the added label names and the number of images for each label.

    -
- -

Viewing Labeled Images

On the dataset details page, click the Labeled tab to view the list of labeled images. Click an image to view its labeling information in the File Labels area on the right.

- -

Modifying a Label

After labeling an object, you can modify labeled data on the Labeled tab page.

-

On the dataset details page, click the Labeled tab and then the image to be modified. On the labeling page that is displayed, modify the labeling information in the File Labels area on the right.

-
  • Modifying a label: In the Labeling area, click the edit icon, set the target label name or color in the displayed dialog box, and click the save icon to save the modification. Alternatively, click a label to be modified. In the image labeling area, adjust the position and size of the bounding box. After the adjustment is complete, click another label to save the modification.
  • Modifying image labeling information: In the area for displaying images, click the target bounding box. Then, blue points on the bounding box are displayed. Drag a blue point and adjust the bounding box to the edge of the object.
  • Deleting a label: In the Labeling area, click the deletion icon to delete a label from the image. After all labels of an image are deleted, the image is displayed on the Unlabeled tab page.
-After the labeling information is modified, click Back to Data Labeling Preview in the upper left part of the page to exit the labeling page. In the dialog box that is displayed, click OK to save the modification.Figure 3 Editing image labeling information
- - -

Adding Images

In addition to automatically synchronizing data from Input Dataset Path, you can directly add images on ModelArts for data labeling.

-
  1. On the dataset details page, click the All or Unlabeled tab. Then click Add.
  2. On the Add page that is displayed, click Add Image.

    Select one or more images to be uploaded in the local environment. Images in JPG, JPEG, PNG, and BMP formats are supported. The size of a single image cannot exceed 5 MB, and the total size of all images uploaded at a time cannot exceed 8 MB.

    -

    After the images are selected, their thumbnails and sizes are displayed on the Add page.

    -
  3. On the Add page, click OK.

    The images you have added will be automatically displayed in the image list on the Unlabeled tab page. In addition, the images are automatically saved to the OBS directory specified by Input Dataset Path.

    -
- -

Deleting Images

You can quickly delete the images you want to discard.

-

On the All, Unlabeled, or Labeled tab page, select the images to be deleted or click Select Images on Current Page to select all images on the page, and click Delete in the upper left corner to delete the images. In the displayed dialog box, select or deselect Delete source files as required. After confirmation, click OK to delete the images.

-

If a tick is displayed in the upper left corner of an image, the image is selected. If no image is selected on the page, the Delete button is unavailable.

-

If you select Delete source files, images stored in the corresponding OBS directory will be deleted when you delete the selected images. Deleting source files may affect other dataset versions or datasets using those files. As a result, the page display, training, or inference is abnormal. Deleted data cannot be recovered. Exercise caution when performing this operation.

- - - - - -Parent topic: Labeling Data - - - diff --git a/modelarts/umn/temp/import_operation.tmp b/modelarts/umn/temp/import_operation.tmp deleted file mode 100644 index c10f3ced..00000000 --- a/modelarts/umn/temp/import_operation.tmp +++ /dev/null @@ -1,143 +0,0 @@ - - -

Import Operation

-

After a dataset is created, you can directly synchronize data from the dataset. Alternatively, you can import more data by importing the dataset. Data can be imported from an OBS directory or the manifest file.

-

Prerequisites

  • You have created a dataset.
  • You have stored the data to be imported in OBS. You have stored the manifest file in OBS.
  • The OBS buckets and ModelArts are in the same region.
- -

Import Modes

There are two import modes: OBS path and Manifest file.

-
  • OBS path: indicates that the dataset to be imported has been stored in an OBS directory in advance. In this case, you need to select an OBS path that you can access. In addition, the directory structure in the OBS path must comply with the specifications. For details, see Specifications for Importing Data from an OBS Directory. Only the following types of dataset support the OBS path import mode: Image classification, Object detection, Text classification, Table, and Sound classification.
  • Manifest file: indicates that the dataset file is in the manifest format and data is imported from the manifest file. The manifest file defines the mapping between labeling objects and content. In addition, the manifest file has been uploaded to OBS. For details about the specifications of the manifest file, see Specifications for Importing the Manifest File.
-

Before importing an object detection dataset, ensure that the labeling range of the labeling file does not exceed the size of the original image. Otherwise, the import may fail.

- - -.. _modelarts_23_0006__en-us_topic_0171025430_table11677122420123: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Import modes supported by datasets

Dataset Type

-

Importing Data from an OBS Path

-

Importing Data from a Manifest File

-

Image classification

-

Supported

-

Follow the format specifications described in Image Classification.

-

Supported

-

Follow the format specifications described in Image Classification.

-

Object detection

-

Supported

-

Follow the format specifications described in Object Detection.

-

Supported

-

Follow the format specifications described in Object Detection.

-

Image segmentation

-

Supported

-

Follow the format specifications described in Image Segmentation.

-

Supported

-

Follow the format specifications described in Image Segmentation.

-

Sound classification

-

Supported

-

Follow the format specifications described in Sound Classification.

-

Supported

-

Follow the format specifications described in Sound Classification.

-

Speech labeling

-

N/A

-

Supported

-

Follow the format specifications described in Speech Paragraph Labeling.

-

Speech paragraph labeling

-

N/A

-

Supported

-

Follow the format specifications described in Speech Labeling.

-

Text classification

-

Supported

-

Follow the format specifications described in Text Classification.

-

Supported

-

Follow the format specifications described in Text Classification.

-

Named entity recognition

-

N/A

-

Supported

-

Follow the format specifications described in Named Entity Recognition.

-

Text triplet

-

N/A

-

Supported

-

Follow the format specifications described in Text Triplet.

-

Table

-

Supported

-

Follow the format specifications described in Table.

-

N/A

-

Video

-

N/A

-

Supported

-

Follow the format specifications described in Video Labeling.

-

Free format

-

N/A

-

N/A

-
- - -

Importing Data from an OBS Path

The parameters on the GUI for data import vary according to the dataset type. The following uses a dataset of the image classification type as an example.

-
  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. Locate the row that contains the desired dataset and choose More > Import in the Operation column.

    Alternatively, you can click the dataset name to go to the Dashboard tab page of the dataset, and click Import in the upper right corner.

    -
  3. In the Import dialog box, set Import Mode to OBS path and set OBS path to the path for storing data. Then click OK.

    After the data import is successful, the data is automatically synchronized to the dataset. On the Datasets page, you can click the dataset name to view its details and label the data.

    -
- -

Importing Data from a Manifest File

The parameters on the GUI for data import vary according to the dataset type. The following uses a dataset of the object detection type as an example. Datasets of the table type cannot be imported from the manifest file.

-
  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. Locate the row that contains the desired dataset and choose More > Import in the Operation column.

    Alternatively, you can click the dataset name to go to the Dashboard tab page of the dataset, and click Import in the upper right corner.

    -
  3. In the Import dialog box, set the parameters as follows and click OK.
    • Import Mode: Select Manifest file.
    • Manifest file: Select the OBS path for storing the manifest file.
    • Import by Label: The system automatically obtains the labels of the dataset. You can click Add Label to add a label or click the deletion icon on the right to delete a label. This field is optional. After importing a dataset, you can add or delete labels during data labeling.
    • Import labels: If this parameter is selected, the labels defined in the manifest file are imported to the ModelArts dataset.
    -

    After the data import is successful, the data is automatically synchronized to the dataset. On the Datasets page, you can click the dataset name to go to the Dashboard tab page of the dataset, and click Label in the upper right corner. On the displayed dataset details page, view detailed data and label data.

    -
- - - - -Parent topic: Importing Data - - - diff --git a/modelarts/umn/temp/importing_a_meta_model_from_a_container_image.tmp b/modelarts/umn/temp/importing_a_meta_model_from_a_container_image.tmp deleted file mode 100644 index 398b8821..00000000 --- a/modelarts/umn/temp/importing_a_meta_model_from_a_container_image.tmp +++ /dev/null @@ -1,87 +0,0 @@ - - -

Importing a Meta Model from a Container Image

-

For AI engines that are not supported by ModelArts, you can import the model you compile to ModelArts from custom images.

-

Prerequisites

  • For details about the specifications and description of custom images, see Importing a Model Using a Custom Image.
  • The configuration must be provided for a model that you have developed and trained. The file must comply with ModelArts specifications. For details about the specifications, see Specifications for Compiling the Model Configuration File. After the compilation is complete, upload the file to the specified OBS directory.
  • The OBS directory you use and ModelArts are in the same region.
- -

Procedure

  1. Log in to the ModelArts management console, and choose Model Management > Models in the left navigation pane. The Models page is displayed.
  2. Click Import in the upper left corner. The Import page is displayed.
  3. On the Import page, set related parameters.
    1. Set basic information about the model. For details about the parameters, see Table 1. -.. _modelarts_23_0206__en-us_topic_0207629477_table19428112584211: - - - - - - - - - - - - - - - - - - -
      Table 1 Parameters of basic model information

      Parameter

      -

      Description

      -

      Name

      -

      Model name. The value can contain 1 to 64 visible characters, including Chinese characters. Only letters, Chinese characters, digits, hyphens (-), and underscores (_) are allowed.

      -

      Version

      -

      Version of the model to be created. For the first import, the default value is 0.0.1.

      -

      Label

      -

      Model label. A maximum of five model labels are supported.

      -

      Description

      -

      Brief description of the model

      -
      - -
    2. Select the meta model source and set related parameters. Meta Model Source has four options based on the scenario. For details, see Methods of Importing a Model. Set Meta Model Source to Container image. For details about the parameters, see Table 2. -.. _modelarts_23_0206__en-us_topic_0207629477_table104931647171713: - - - - - - - - - - - - - - - - - - -
      Table 2 Parameters of the meta model source

      Parameter

      -

      Description

      -

      Container Image Path

      -

      Click to import the model image from the container image. The model is of the Image type, and you do not need to use swr_location in the configuration file to specify the image location.

      -

      For details about how to create a custom image, see Introduction to Custom Images.

      - NOTE:

      The model image you select will be shared with the administrator, so ensure you have the permission to share the image (images shared with other accounts are unsupported). When you deploy a service, ModelArts deploys the image as an inference service. Ensure that your image can be properly started and provide an inference interface.

      - -

      Deployment Type

      -

      After the model is imported, select the service type that the model is deployed. When deploying a service, you can only deploy the service type selected here. For example, if you only select Real-time services here, you can only deploy real-time services after importing the model.

      -

      Configuration File

      -

      The Import from OBS and Edit online methods are available. The configuration file must comply with certain specifications in Model Package Specifications. If you select Import from OBS, you need to specify the OBS path for storing the configuration file. You can enable View Configuration File to view or edit the configuration file online.

      -

      Parameter Configuration

      -

      Click on the right to view the input and output parameters of the model.

      -
      - -
    3. Set the inference specifications and model description.
      • Min. Inference Specs: If your model requires certain resources to complete inference, you can configure this parameter to set the minimum specifications required for normal inference after the model is deployed as a service. In later versions, the system will allocate resources based on the inference specifications in service deployment. You can also modify the specifications as required during deployment. Note that the specifications configured here are valid only when real-time services are deployed and the dedicated resource pool is used.
      • Model Description: To help other model developers better understand and use your models, provide model descriptions. Click Add Model Description and then set the document name and URL. A maximum of three model descriptions are supported.
      -
    4. Check the information and click Next. The model is imported.

      In the model list, you can view the imported model and its version. When the model status changes to Normal, the model is successfully imported. On this page, you can create new versions, quickly deploy models, publish models to the market, and perform other operations.

      -
    -
- -

Follow-Up Procedure

  • Model Deployment: On the Models page, click the triangle next to a model name to view all versions of the model. Locate the row that contains the target version, click Deploy in the Operation column, and select the deployment type configured when importing the model from the drop-down list. On the Deploy page, set parameters by referring to Introduction to Model Deployment.
- - - - -Parent topic: Importing a Model - - - diff --git a/modelarts/umn/temp/importing_a_meta_model_from_a_template.tmp b/modelarts/umn/temp/importing_a_meta_model_from_a_template.tmp deleted file mode 100644 index 451dee13..00000000 --- a/modelarts/umn/temp/importing_a_meta_model_from_a_template.tmp +++ /dev/null @@ -1,88 +0,0 @@ - - -

Importing a Meta Model from a Template

-

Because the configurations of models with the same functions are similar, ModelArts integrates the configurations of such models into a common template. By using this template, you can easily and quickly import models without compiling the config.json configuration file.

-

Background

  • Because the configurations of models with the same functions are similar, ModelArts integrates the configurations of such models into a common template. By using this template, you can easily and quickly import the model. For details about the template, see Introduction to Model Templates.
  • For details about the supported templates, see Supported Templates. For details about the input and output modes of each template, see Supported Input and Output Modes.
  • Ensure that you have uploaded the model to OBS based on the model package specifications of the corresponding template.
  • The OBS directory you use and ModelArts are in the same region.
- -

Procedure

  1. Log in to the ModelArts management console, and choose Model Management > Models in the left navigation pane. The Models page is displayed.
  2. Click Import in the upper left corner. The Import page is displayed.
  3. On the Import page, set related parameters.
    1. Set basic information about the model. For details about the parameters, see Table 1. -.. _modelarts_23_0205__en-us_topic_0207629476_table83985217130: - - - - - - - - - - - - - - - - - - -
      Table 1 Parameters of basic model information

      Parameter

      -

      Description

      -

      Name

      -

      Model name. The value can contain 1 to 64 visible characters, including Chinese characters. Only letters, Chinese characters, digits, hyphens (-), and underscores (_) are allowed.

      -

      Version

      -

      Version of the model to be created. For the first import, the default value is 0.0.1.

      -

      Label

      -

      Model label. A maximum of five model labels are supported.

      -

      Description

      -

      Brief description of the model

      -
      - -
    2. Select the meta model source and set related parameters. Set Meta Model Source based on your application scenario. For details, see Methods of Importing a Model.If Meta Model Source is set to Template, set other parameters by referring to Table 2. -.. _modelarts_23_0205__en-us_topic_0207629476_table104931647171713: - - - - - - - - - - - - - - - - - - -
      Table 2 Parameters of the meta model source

      Parameter

      -

      Description

      -

      Model Template

      -

      Select a template from the existing ModelArts template list .

      -

      ModelArts also provides three filter criteria: Type, Engine, and Environment, helping you quickly find the desired template. If the three filter criteria cannot meet your requirements, you can enter keywords to search for the target template. For details about the supported templates, see Supported Templates.

      -

      Model Directory

      -

      OBS path where a model is saved. Select an OBS path for storing the model based on the input requirements of the selected model template.

      - NOTE:

      If a training job is executed for multiple times, different version directories are generated, such as V001 and V002, and the generated models are stored in the model folder in different version directories. When selecting model files, specify the model folder in the corresponding version directory.

      - -

      Input and Output Mode

      -

      If the default input and output mode of the selected template can be overwritten, you can select an input and output mode based on the model function or application scenario. Input and Output Mode is an abstract of the API (apis) in config.json. It describes the interface provided by the model for external inference. An input and output mode describes one or more APIs, and corresponds to a template.

      -

      For details about the supported input and output modes, see Supported Input and Output Modes.

      -

      Deployment Type

      -

      After the model is imported, select the service type that the model is deployed. When deploying a service, you can only deploy the service type selected here. For example, if you only select Real-time services here, you can only deploy real-time services after importing the model.

      -
      - -
    3. Set the inference specifications and model description.
      • Min. Inference Specs: If your model requires certain resources to complete inference, you can configure this parameter to set the minimum specifications required for normal inference after the model is deployed as a service. In later versions, the system will allocate resources based on the inference specifications in service deployment. You can also modify the specifications as required during deployment. Note that the specifications configured here are valid only when real-time services are deployed and the dedicated resource pool is used.
      • Model Description: To help other model developers better understand and use your models, provide model descriptions. Click Add Model Description and then set the document name and URL. A maximum of three model descriptions are supported.
      -
    4. Check the information and click Next. The model is imported.

      In the model list, you can view the imported model and its version. When the model status changes to Normal, the model is successfully imported. On this page, you can create new versions, quickly deploy models, publish models to the market, and perform other operations.

      -
    -
- -

Follow-Up Procedure

  • Model Deployment: On the Models page, click the triangle next to a model name to view all versions of the model. Locate the row that contains the target version, click Deploy in the Operation column, and select the deployment type configured when importing the model from the drop-down list. On the Deploy page, set parameters by referring to Introduction to Model Deployment.
- - - - -Parent topic: Importing a Model - - - diff --git a/modelarts/umn/temp/importing_a_meta_model_from_a_training_job.tmp b/modelarts/umn/temp/importing_a_meta_model_from_a_training_job.tmp deleted file mode 100644 index ff79b88d..00000000 --- a/modelarts/umn/temp/importing_a_meta_model_from_a_training_job.tmp +++ /dev/null @@ -1,89 +0,0 @@ - - -

Importing a Meta Model from a Training Job

-

You can create a training job on ModelArts and perform training to obtain a satisfactory model. Then import the model to Model Management for unified management. In addition, you can quickly deploy the model as a service.

-

Background

  • If a model generated by the ModelArts training job is used, ensure that the training job has been successfully executed and the model has been stored in the corresponding OBS directory.
  • If a model is generated from a training job that uses built-in algorithms, the model can be directly imported to ModelArts without using the inference code and configuration file.
  • If a model is generated from a training job that uses a frequently-used framework or custom image, upload the inference code and configuration file to the storage directory of the model by referring to Model Package Specifications.
  • The OBS directory you use and ModelArts are in the same region.
  • ModelArts of the Arm version does not support model import from training.
- -

Procedure

  1. Log in to the ModelArts management console, and choose Model Management > Models in the left navigation pane. The Models page is displayed.
  2. Click Import in the upper left corner. The Import page is displayed.
  3. On the Import page, set related parameters.
    1. Set basic information about the model. For details about the parameters, see Table 1. -.. _modelarts_23_0054__en-us_topic_0207629475_table19428112584211: - - - - - - - - - - - - - - - - - - -
      Table 1 Parameters of basic model information

      Parameter

      -

      Description

      -

      Name

      -

      Model name. The value can contain 1 to 64 visible characters, including Chinese characters. Only letters, Chinese characters, digits, hyphens (-), and underscores (_) are allowed.

      -

      Version

      -

      Version of the model to be created. For the first import, the default value is 0.0.1.

      -

      Label

      -

      Model label. A maximum of five model labels are supported.

      -

      Description

      -

      Brief description of the model

      -
      - -
    2. Select the meta model source and set related parameters. Set Meta Model Source based on your application scenario. For details, see Methods of Importing a Model. If Meta Model Source is set to Training job, set other parameters by referring to Table 2. -.. _modelarts_23_0054__en-us_topic_0207629475_table104931647171713: - - - - - - - - - - - - - - - - - - - - - -
      Table 2 Parameters of the meta model source

      Parameter

      -

      Description

      -

      Meta Model Source

      -

      Select Training job, and select a specified training job that has completed training under the current account and its version from the drop-down lists on the right of Training Job and Version respectively.

      -

      Deployment Type

      -

      After the model is imported, select the service type that the model is deployed. When deploying a service, you can only deploy the service type selected here. For example, if you only select Real-time services here, you can only deploy real-time services after importing the model.

      -

      Inference Code

      -

      Display the model inference code URL. You can copy this URL directly.

      -

      Parameter Configuration

      -

      Click on the right to view the input and output parameters of the model.

      -

      Runtime Dependency

      -

      List the dependencies of the selected model on the environment.

      -
      - -
    3. Set the inference specifications and model description.
      • Min. Inference Specs: If your model requires certain resources to complete inference, you can configure this parameter to set the minimum specifications required for normal inference after the model is deployed as a service. In later versions, the system will allocate resources based on the inference specifications in service deployment. You can also modify the specifications as required during deployment. Note that the specifications configured here are valid only when real-time services are deployed and the dedicated resource pool is used.
      • Model Description: To help other model developers better understand and use your models, provide model descriptions. Click Add Model Description and then set the document name and URL. A maximum of three model descriptions are supported.
      -
    4. Check the information and click Next. The model is imported.

      In the model list, you can view the imported model and its version. When the model status changes to Normal, the model is successfully imported. On this page, you can create new versions, quickly deploy models, publish models to the market, and perform other operations.

      -
    -
- -

Follow-Up Procedure

  • Model Deployment: On the Models page, click the triangle next to a model name to view all versions of the model. Locate the row that contains the target version, click Deploy in the Operation column, and select the deployment type configured when importing the model from the drop-down list. On the Deploy page, set parameters by referring to Introduction to Model Deployment.
- - - - -Parent topic: Importing a Model - - - diff --git a/modelarts/umn/temp/importing_a_meta_model_from_obs.tmp b/modelarts/umn/temp/importing_a_meta_model_from_obs.tmp deleted file mode 100644 index e6614931..00000000 --- a/modelarts/umn/temp/importing_a_meta_model_from_obs.tmp +++ /dev/null @@ -1,182 +0,0 @@ - - -

Importing a Meta Model from OBS

-

In scenarios where frequently-used frameworks are used for model development and training, you can import the model to ModelArts for unified management.

-

Prerequisites

  • The model has been developed and trained, and the type and version of the AI engine it uses is supported by ModelArts. Common engines supported by ModelArts and their runtime ranges are described as follows: -.. _modelarts_23_0207__en-us_topic_0207629478_table108792813184: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Supported AI engines and their runtime

    Engine

    -

    Runtime

    -

    Precautions

    -

    TensorFlow

    -

    python3.6

    -

    python2.7

    -

    tf1.13-python2.7-gpu

    -

    tf1.13-python2.7-cpu

    -

    tf1.13-python3.6-gpu

    -

    tf1.13-python3.6-cpu

    -

    tf1.13-python3.7-cpu

    -

    tf1.13-python3.7-gpu

    -

    tf2.1-python3.7

    -

    tf1.15-aarch64-c76-d910

    -
    • TensorFlow 1.8.0 is used in python2.7 and python3.6.
    • python3.6, python2.7, and tf2.1-python3.7 indicate that the model can run on both CPUs and GPUs. For other runtime values, if the suffix contains cpu or gpu, the model can run only on CPUs or GPUs.
    • The default runtime is python2.7.
    -

    MXNet

    -

    python3.7

    -

    python3.6

    -
    • MXNet 1.2.1 is used in python3.6 and python3.7.
    • python3.6 and python3.7 indicate that the model can run on both CPUs and GPUs.
    • The default runtime is python3.6.
    -

    Caffe

    -

    python3.6

    -

    python3.7

    -

    python3.6-gpu

    -

    python3.7-gpu

    -

    python3.6-cpu

    -

    python3.7-cpu

    -
    • Caffe 1.0.0 is used in python3.6, python3.7, python3.6-gpu, python3.7-gpu, python3.6-cpu, and python3.7-cpu.
    • python 3.6 and python3.7 can only be used to run models on CPUs. For other runtime values, if the suffix contains cpu or gpu, the model can run only on CPUs or GPUs. Use the runtime of python3.6-gpu, python3.7-gpu, python3.6-cpu, or python3.7-cpu.
    • The default runtime is python3.6.
    -

    Spark_MLlib

    -

    python3.6

    -
    • Spark_MLlib 2.3.2 is used in python3.6.
    • python 3.6 can only be used to run models on CPUs.
    -

    Scikit_Learn

    -

    python3.6

    -
    • Scikit_Learn 0.18.1 is used in python3.6.
    • python 3.6 can only be used to run models on CPUs.
    -

    XGBoost

    -

    python3.6

    -
    • XGBoost 0.80 is used in python3.6.
    • python 3.6 can only be used to run models on CPUs.
    -

    PyTorch

    -

    python3.6

    -

    python3.7

    -

    pytorch1.4-python3.7

    -
    • PyTorch 1.0 is used in python3.6 and python3.7.
    • python3.6, python3.7, and pytorch1.4-python3.7 indicate that the model can run on both CPUs and GPUs.
    • The default runtime is python3.6.
    -

    MindSpore

    -

    ms1.1-python3.7-c76

    -

    MindSpore 1.1.1 is used.

    -
    - -
  • The imported model, inference code, and configuration file must comply with the requirements of ModelArts. For details, see Model Package Specifications, Specifications for Compiling the Model Configuration File, and Specifications for Compiling Model Inference Code.
  • The model package that has completed training, inference code, and configuration file have been uploaded to the OBS directory.
  • The OBS directory you use and ModelArts are in the same region.
  • ModelArts of the Arm version does not support model import from OBS.
- -

Procedure

  1. Log in to the ModelArts management console, and choose Model Management > Models in the left navigation pane. The Models page is displayed.
  2. Click Import in the upper left corner. The Import page is displayed.
  3. On the Import page, set related parameters.
    1. Set basic information about the model. For details about the parameters, see Table 2. -.. _modelarts_23_0207__en-us_topic_0207629478_table19428112584211: - - - - - - - - - - - - - - - - - - -
      Table 2 Parameters of basic model information

      Parameter

      -

      Description

      -

      Name

      -

      Model name. The value can contain 1 to 64 visible characters, including Chinese characters. Only letters, Chinese characters, digits, hyphens (-), and underscores (_) are allowed.

      -

      Version

      -

      Version of the model to be created. For the first import, the default value is 0.0.1.

      -

      Label

      -

      Model label. A maximum of five model labels are supported.

      -

      Description

      -

      Brief description of the model

      -
      - -
    2. Select the meta model source and set related parameters. Meta Model Source has four options based on the scenario. For details, see Methods of Importing a Model. Set Meta Model Source to OBS. For details about the parameters, see Table 3.

      For the meta model imported from OBS, you need to compile the inference code and configuration file by referring to Model Package Specifications and place the inference code and configuration files in the model folder storing the meta model. If the selected directory does not contain the corresponding inference code and configuration files, the model cannot be imported.

      - -.. _modelarts_23_0207__en-us_topic_0207629478_table1631162916535: - - - - - - - - - - - - - - - - - - - - - - - - -
      Table 3 Parameters of the meta model source

      Parameter

      -

      Description

      -

      Meta Model

      -

      Select the model storage path. This path is the training output path specified in the training job.

      -

      AI Engine

      -

      The corresponding AI engine is automatically associated based on the selected meta model storage path.

      -

      Deployment Type

      -

      After the model is imported, select the service type that the model is deployed. When deploying a service, you can only deploy the service type selected here. For example, if you only select Real-time services here, you can only deploy real-time services after importing the model.

      -

      Configuration File

      -

      By default, the system associates the configuration file stored in OBS. Enable the function to view, edit, or import the model configuration file from OBS.

      -

      Parameter Configuration

      -

      Click on the right to view the input and output parameters of the model.

      -

      Runtime Dependency

      -

      List the dependencies of the selected model on the environment.

      -
      - -
    3. Set the inference specifications and model description.
      • Min. Inference Specs: If your model requires certain resources to complete inference, you can configure this parameter to set the minimum specifications required for normal inference after the model is deployed as a service. In later versions, the system will allocate resources based on the inference specifications in service deployment. You can also modify the specifications as required during deployment. Note that the specifications configured here are valid only when real-time services are deployed and the dedicated resource pool is used.
      • Model Description: To help other model developers better understand and use your models, provide model descriptions. Click Add Model Description and then set the document name and URL. A maximum of three model descriptions are supported.
      -
    4. Check the information and click Next. The model is imported.

      In the model list, you can view the imported model and its version. When the model status changes to Normal, the model is successfully imported. On this page, you can create new versions, quickly deploy models, publish models to the market, and perform other operations.

      -
    -
- -

Follow-Up Procedure

  • Model Deployment: On the Models page, click the triangle next to a model name to view all versions of the model. Locate the row that contains the target version, click Deploy in the Operation column, and select the deployment type configured when importing the model from the drop-down list. On the Deploy page, set parameters by referring to Introduction to Model Deployment.
- - - - -Parent topic: Importing a Model - - - diff --git a/modelarts/umn/temp/importing_a_model.tmp b/modelarts/umn/temp/importing_a_model.tmp deleted file mode 100644 index b798db05..00000000 --- a/modelarts/umn/temp/importing_a_model.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Importing a Model

- - - - - -Parent topic: Model Management - - - diff --git a/modelarts/umn/temp/importing_a_model_using_a_custom_image.tmp b/modelarts/umn/temp/importing_a_model_using_a_custom_image.tmp deleted file mode 100644 index 0787173c..00000000 --- a/modelarts/umn/temp/importing_a_model_using_a_custom_image.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Importing a Model Using a Custom Image

-

After creating and uploading a custom image to SWR, you can use the image to import a model and deploy the model as a service on the ModelArts management console.

-

Prerequisites

- -

Importing a Model

Set basic parameters for importing a model according to Importing a Meta Model from a Container Image. When importing a model using a custom image, pay attention to the settings of Meta Model Source and Configuration File.

-
  • Meta Model Source

    Select Container Image. Click in the edit box of Container Image Path to select an image. The system automatically lists all images uploaded to SWR. Select an image based on the site requirements.

    -
  • Configuration File

    The model configuration file needs to be compiled independently. For details about how to compile the model configuration file, see Specifications for Compiling the Model Configuration File. For details about the configuration file examples of a custom image, see Example of the Custom Image Model Configuration File. After editing the model configuration file based on the ModelArts specifications, upload it to OBS or use Edit online on the Import Model page.

    -
- -

Deploying a Service

After a model is successfully imported using a custom image, that is, the model status is normal, you can deploy the model as a service. On the Models page, click Deploy in the Operation column and select a service type, for example, Real-time Service.

-

You can deploy models as real-time or batch services based on the business logic of your custom image. The procedure for deploying a model imported using other methods is the same as that for deploying a model imported using a custom image. For details, see Introduction to Model Deployment.

- - - - -Parent topic: For Importing Models - - - diff --git a/modelarts/umn/temp/importing_data.tmp b/modelarts/umn/temp/importing_data.tmp deleted file mode 100644 index 2bb10865..00000000 --- a/modelarts/umn/temp/importing_data.tmp +++ /dev/null @@ -1,20 +0,0 @@ - - -

Importing Data

-

- - - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/input_and_output_modes.tmp b/modelarts/umn/temp/input_and_output_modes.tmp deleted file mode 100644 index 6b89bd01..00000000 --- a/modelarts/umn/temp/input_and_output_modes.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Input and Output Modes

- - - - - -Parent topic: Model Templates - - - diff --git a/modelarts/umn/temp/installing_external_libraries_and_kernels_in_notebook_instances.tmp b/modelarts/umn/temp/installing_external_libraries_and_kernels_in_notebook_instances.tmp deleted file mode 100644 index 28451a67..00000000 --- a/modelarts/umn/temp/installing_external_libraries_and_kernels_in_notebook_instances.tmp +++ /dev/null @@ -1,26 +0,0 @@ - - -

Installing External Libraries and Kernels in Notebook Instances

-

Multiple environments have been installed in ModelArts notebook instances, including TensorFlow. You can use pip install to install external libraries from a Jupyter notebook or terminal to facilitate use.

-

Installing an External Library from a Jupyter Notebook

Assume that you want to install Shapely from a notebook instance. Follow the following instructions:

-
  1. In the left navigation pane of the ModelArts management console, choose DevEnviron > Notebooks. Open a notebook instance in the displayed notebook instance list.
  2. In the Jupyter Notebook page that is displayed, click New and select the required AI engine from the drop-down list.
  3. In the displayed window, type the following command in the code input bar to install Shapely:

    pip install shapely

    -
- -

Installing an External Library from a Terminal

Assume that you want to install Shapely from the terminal of a notebook instance by using pip. Follow the following instructions:

-
  1. In the left navigation pane of the ModelArts management console, choose DevEnviron > Notebooks. Open a notebook instance in the displayed notebook instance list.
  2. In the displayed Jupyter dashboard, click New and choose Terminal from the shortcut menu.
  3. For a notebook instance that does not use the AI engine of the Multi-Engine type, enter the following command in the code input bar to install Shapely:

    /opt/conda/envs/python27_tf/bin/pip install Shapely

    -
  4. The Multi-Engine notebook instance can use multiple engines. By referring to the README file in the /home/ma-user/ path, switch to the installation package of the corresponding engine environment and install Shapely. For example, you can install Shapely from TensorFlow-1.13.1 with the following code:
    source /home/ma-user/anaconda3/bin/activate TensorFlow-1.13.1
    -pip install shapely
    -
-

When you create a ModelArts training job, a new independent running environment is started, which is not associated with the packages installed in the Notebook environment. Therefore, add os.system('pip install xxx') to the startup code before importing the installation package.

-

For example, if you need to use the Shapely dependency in the training job, add the following code to the startup code:

-
os.system('pip install Shapely')
-import Shapely
- - - - - -Parent topic: Configuring the Jupyter Notebook Environment - - - diff --git a/modelarts/umn/temp/introduction_to_custom_images.tmp b/modelarts/umn/temp/introduction_to_custom_images.tmp deleted file mode 100644 index 0f24599b..00000000 --- a/modelarts/umn/temp/introduction_to_custom_images.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Introduction to Custom Images

-

ModelArts provides multiple frequently-used built-in engines. However, when users have special requirements for the deep learning engine and development library, the built-in AI engines cannot meet user requirements. ModelArts provides the custom image function to allow users to customize engines.

-

The bottom layer of ModelArts uses the container technology. Custom images refer to that users create container images and run them on ModelArts. The custom image function supports command line parameters and environment variables in free-text format. The custom images are highly flexible and support the job boot requirements of any computing engine.

-

The following services are also required for creating a custom image: Software Repository for Container (SWR), OBS, and Elastic Cloud Server (ECS)

-

Application Scenarios of Custom Images

  • For Training Models

    If you have developed a model or training script locally and the AI engine you use is not supported by ModelArts, you can create a custom image based on the basic image packages provided by ModelArts and upload the custom image to SWR. Then, you can use the custom image to create a training job on ModelArts and use the resources provided by ModelArts to train models.

    -
  • For Importing Models

    If you use an AI engine that is not supported by ModelArts to develop a model, you can create a custom image, import the image to ModelArts for unified management, and deploy the model as a service.

    -
- - - - -Parent topic: Custom Images - - - diff --git a/modelarts/umn/temp/introduction_to_data_management.tmp b/modelarts/umn/temp/introduction_to_data_management.tmp deleted file mode 100644 index d9d9570b..00000000 --- a/modelarts/umn/temp/introduction_to_data_management.tmp +++ /dev/null @@ -1,87 +0,0 @@ - - -

Introduction to Data Management

-

In ModelArts, you can import and label data on the Data Management page to prepare for model building. ModelArts uses datasets as the basis for model development or training.

-

Dataset Types

ModelArts supports datasets of images, audio, text, tables, videos, and other types for the following purposes:

-
  • Images
    • Image classification: identifies a class of objects in images.
    • Object detection: identifies the position and class of each object in an image.
    • Image segmentation: identifies the outline of each object in an image.
    -
  • Audio
    • Sound classification: classifies and identifies different sounds.
    • Speech labeling: labels speech content.
    • Speech paragraph labeling: segments and labels speech content.
    -
  • Text
    • Text classification: assigns labels to text according to its content.
    • Named entity recognition: assigns labels to named entities in text, such as time and locations.
    • Text triplet: assigns labels to entity segments and entity relationships in the text.
    -
  • Tables
    • Table: applies to structured data processing such as tables. The file format can be CSV. You can preview a maximum of 100 records in a table.
    -
  • Videos
    • Video labeling: identifies the position and class of each object in a video. Only the MP4 format is supported.
    -
  • Others
    • Free format: manages data in any format. Labeling is not available for data of the free format type. The free format type is applicable to scenarios where labeling is not required or developers customize labeling. If your dataset needs to contain data in multiple formats or your data format does not meet the requirements of other types of datasets, you can select a dataset in free format.Figure 1 Example of a dataset in free format
      -
    -
- -

Dataset Management Process and Functions

-.. _modelarts_23_0003__en-us_topic_0171496996_table145501032184813: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Function description

Function

-

Description

-

Creating a Dataset

-

Create a dataset.

-

Image Classification

-

Object Detection

-

Text Classification

-

Named Entity Recognition

-

Text Triplet

-

Sound Classification

-

Speech Labeling

-

Speech Paragraph Labeling

-

Video Labeling

-

Label data based on the types of datasets. Data labeling is not supported for datasets in free format or table format.

-

Import Operation

-

Import the local manifest file or data stored in OBS to the dataset.

-

Exporting Data

-

Export part of the data as a new dataset or to OBS. Historical tasks can be viewed and managed.

-

Modifying a Dataset

-

Modify the basic information about a dataset, such as the dataset name, description, and labels.

-

Publishing a Dataset

-

Publish the labeled dataset as a new version for model building.

-

Managing Dataset Versions

-

View data version updates.

-

Introduction to Team Labeling

-

Allow multiple users to label the same dataset and enable the dataset creator to manage labeling tasks in a unified manner. Add a team and its members to participate in labeling datasets.

-

Deleting a Dataset

-

Delete a dataset to release resources.

-
- - - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/introduction_to_exeml.tmp b/modelarts/umn/temp/introduction_to_exeml.tmp deleted file mode 100644 index d92872e9..00000000 --- a/modelarts/umn/temp/introduction_to_exeml.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Introduction to ExeML

-

ExeML

ModelArts ExeML is a customized code-free model development tool that helps users start AI application development from scratch with high flexibility. ExeML automates model design, parameter tuning and training, and model compression and deployment with the labeled data. Developers do not need to develop basic and encoding capabilities, but only to upload data and complete model training and deployment as prompted by ExeML.

-

Currently, you can use ExeML to quickly create image classification, and object detection models. It can be widely used in industrial, retail, and security fields.

-
  • Image classification classifies and identifies objects in images.
  • Object detection identifies the position and class of each object in images.
- -

ExeML Usage Process

With ModelArts ExeML, you can develop AI models without coding. You only need to upload data, create a project, label the data, publish training, and deploy the trained model. Up to 100 ExeML projects can be created. For details, see Figure 1.

-Figure 1 Usage process of ExeML
- -

ExeML Projects

  • Image Classification

    An image classification project aims to classify images. You only need to add images and label the images. After the images are labeled, an image classification model can be quickly generated. It can automatically classify offerings, vehicle types, and defective goods. For example, in the quality check scenario, you can upload a product image, label the image as qualified or unqualified, and train and deploy a model to inspect product quality.

    -
- -
  • Object Detection

    An object detection project aims to identify the class and location of objects in images. You only need to add images and label objects in the images with proper bounding boxes. The labled images will be used as the training set for creating a model. The model can identify multiple objects and count the number of objects in a single image, as well as inspect employees' dress code and perform unattended inspection of article placement.

    -
- - - -Parent topic: ExeML - - - diff --git a/modelarts/umn/temp/introduction_to_jupyter_notebook.tmp b/modelarts/umn/temp/introduction_to_jupyter_notebook.tmp deleted file mode 100644 index 62a19268..00000000 --- a/modelarts/umn/temp/introduction_to_jupyter_notebook.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Introduction to Jupyter Notebook

-

Jupyter Notebook is a web-based application for interactive computing. It can be applied to full-process computing: development, documentation, running code, and presenting results.

-

ModelArts integrates the open-source Jupyter Notebook. After creating a notebook instance, you can open the instance for development without the need for installation and configuration.

-

Notebook Kernel

  • A notebook kernel is an independent code execution environment. ModelArts Notebook supports multiple kernel types, such as TensorFlow 1.13.1 and PyTorch 1.0. A code execution environment contains the pre-installed and commissioned AI engines and dependencies.
  • When a kernel is selected to open a notebook instance, an IPython process is started at the backend of the notebook instance as the running environment to execute the code and command input on the page.
  • Each kernel type contains an independent Conda running environment to ensure that the AI engines are independent of each other. For example, if the Keras library is updated in a kernel of the TensorFlow type, the kernel of the MindSpore type will not be affected.
- -

Differences Between Notebook Kernels and Common Interactive Python Interpreters

A notebook kernel is an IPython running environment, which can be considered as an enhanced Python shell. Compared with a Python interpreter, a notebook kernel can execute shell scripts and integrate more visualized tools and magic commands. For details, see IPython Documentation.

- - - - -Parent topic: Using Jupyter Notebook - - - diff --git a/modelarts/umn/temp/introduction_to_jupyterlab_and_common_operations.tmp b/modelarts/umn/temp/introduction_to_jupyterlab_and_common_operations.tmp deleted file mode 100644 index ed5e8ff5..00000000 --- a/modelarts/umn/temp/introduction_to_jupyterlab_and_common_operations.tmp +++ /dev/null @@ -1,120 +0,0 @@ - - -

Introduction to JupyterLab and Common Operations

-

JupyterLab is an interactive development environment. It is a next-generation product of Jupyter Notebook. JupyterLab enables you to compile notebooks, operate terminals, edit MarkDown text, open interaction modes, and view CSV files and images.

-

JupyterLab will be a mainstream development environment for developers. JupyterLab supports more flexible and powerful project operations, but has the same components as Jupyter Notebook.

-

ModelArts supports Jupyter Notebook and JupyterLab. You can use different tools to develop code in the same notebook instance.

-

Opening JupyterLab

  1. Log in to the ModelArts management console. In the left navigation pane, choose DevEnviron > Notebooks to switch to the Notebooks page.
  2. Select a notebook instance in the Running state and click Open in the Operation column to access the notebook instance.
  3. On the Jupyter page, click Open JupyterLab in the upper right corner to access the JupyterLab page of the notebook instance.
  4. The Launcher page is automatically displayed. You can use all open-source functions. For details, see JupyterLab Documentation.Figure 1 JupyterLab homepage
    -
- -

Creating and Opening a Notebook Instance

On the JupyterLab homepage, click an applicable AI engine in the Notebook area to create a notebook file with the selected framework.

-

The AI framework supported by each notebook instance varies according to the working environment. The following figure is only an example. Select an AI framework based on the site requirements. For details about all framework versions and Python versions supported by ModelArts, see Supported AI Engines.

-Figure 2 Selecting an AI engine and creating a notebook instance
-

The created notebook file is displayed in the navigation pane on the left.

-Figure 3 Creating a notebook file
- -

Creating a Notebook File and Opening the Console

A console is essentially a Python terminal, which is similar to the native IDE of Python, displaying the output after a statement is entered.

-

On the JupyterLab homepage, click an applicable AI engine in the Console area to create a notebook file with the selected framework.

-

The AI framework supported by each notebook instance varies according to the working environment. The following figure is only an example. Select an AI framework based on the site requirements.

-Figure 4 Selecting an AI engine and creating a console
-

After the file is created, the console page is displayed.

-Figure 5 Creating a notebook file (console)
- -

Uploading a File

On the JupyterLab page, you can click Upload File in the upper left corner and select a local file to upload.

-

The size of the file to be uploaded using this method is limited. If the file size exceeds the limit, use other methods to upload the file. For details, see Uploading Data to JupyterLab.

-Figure 6 Uploading a file
- -

Editing a File

JupyterLab allows you to open multiple notebook instances or files (such as HTML, TXT, and Markdown files) in the same window and displays them on different tab pages.

-

Using JupyterLab, you can customize the display of multiple files. In the file display area on the right, you can drag a file to adjust its position. Multiple files can be concurrently displayed.

-Figure 7 Customized display of multiple files
-

When writing code in a notebook instance, you can create multiple views of a file to synchronously edit the file and view the execution result in real time.

-

To open multiple views, open the file and choose File > New View for Notebook.

-Figure 8 Multiple views of a file
- -

Downloading a File to a Local Computer

Files created in JupyterLab can be directly downloaded to a local computer. The size of the file to be downloaded using this method is limited. If the file size exceeds the limit, use other methods to download the file. For details, see Downloading a File from JupyterLab.

-

In the JupyterLab file list, right-click the file to be downloaded and choose Download from the shortcut menu. The file is downloaded to the directory set for your browser.

-Figure 9 Downloading a file
- -

Common Icons and Plug-ins of JupyterLab

Figure 10 Common icons and plug-ins of JupyterLab
- -.. _modelarts_23_0209__en-us_topic_0208766071_table17325391430: - - - - - - - - - - - - - - - - - - -
Table 1 Icon description

Icon

-

Description

-

-

Opens the Launcher page. Then you can quickly create notebook instances, consoles, or other files.

-

-

Creates a folder.

-

-

Uploads a file. For details, see Uploading a File.

-

-

Updates a folder.

-
- - -.. _modelarts_23_0209__en-us_topic_0208766071_table8147032134415: - - - - - - - - - - - - - - - - - - - - - - - - -
Table 2 Common plug-ins in the plug-in area

Plug-in

-

Description

-

-

Lists files. You can click here to display the list of all files in the notebook instance.

-

-

Lists ModelArts examples. You can click any example in the list to view its code and version mapping.

-

-

Displays the terminals and kernels that are running in the current instance.

-

-

Quick start command.

-

-

Displays the tab page listing the files that are being opened.

-

-

Document organization.

-
- - - - - -Parent topic: Using JupyterLab - - - diff --git a/modelarts/umn/temp/introduction_to_model_deployment.tmp b/modelarts/umn/temp/introduction_to_model_deployment.tmp deleted file mode 100644 index a6df0232..00000000 --- a/modelarts/umn/temp/introduction_to_model_deployment.tmp +++ /dev/null @@ -1,14 +0,0 @@ - - -

Introduction to Model Deployment

-After a training job is complete and a model is generated, you can deploy the model on the Service Deployment page. You can also deploy the model imported from OBS. ModelArts supports the following deployment types:
  • Real-Time Services

    Deploy a model as a web service to provide real-time test UI and monitoring capabilities.

    -
  • Batch Services

    A batch service can perform inference on batch data. After data processing is complete, the batch service automatically stops.

    -
- - - - -Parent topic: Model Deployment - - - diff --git a/modelarts/umn/temp/introduction_to_model_management.tmp b/modelarts/umn/temp/introduction_to_model_management.tmp deleted file mode 100644 index b773fc9d..00000000 --- a/modelarts/umn/temp/introduction_to_model_management.tmp +++ /dev/null @@ -1,45 +0,0 @@ - - -

Introduction to Model Management

-

AI model development and optimization require frequent iterations and debugging. Changes in datasets, training code, or parameters may affect the quality of models. If the metadata of the development process cannot be managed in a unified manner, the optimal model may fail to be reproduced.

-

ModelArts model management allows you to import models generated with all training versions to manage all iterated and debugged models in a unified manner.

-

Usage Restrictions

  • In an automatic learning project, after a model is deployed, the model is automatically uploaded to the model management list. However, models generated by automatic learning cannot be downloaded and can be used only for deployment and rollout.
- -

Methods of Importing a Model

  • Importing from Trained Models: You can create a training job on ModelArts and complete model training. After obtaining a satisfactory model, import the model to the Model Management page for model deployment.
  • Importing from a Template: Because the configurations of models with the same functions are similar, ModelArts integrates the configurations of such models into a common template. By using this template, you can easily and quickly import models without compiling the config.json configuration file.
  • Importing from a Container Image: For AI engines that are not supported by ModelArts, you can import the model you compile to ModelArts using custom images.
  • Importing from OBS: If you use a frequently-used framework to develop and train a model locally, you can import the model to ModelArts for model deployment.
- -

Model Management Functions

-.. _modelarts_23_0052__en-us_topic_0171858287_table129381852171817: - - - - - - - - - - - - - - - -
Table 1 Model management functions

Supported Function

-

Description

-

Importing a Model

-

Import the trained models to ModelArts for unified management. You can import models using four methods. The following provides the operation guide for each method.

- -

Managing Model Versions

-

To facilitate source tracing and repeated model tuning, ModelArts provides the model version management function. You can manage models based on versions.

-

Compressing and Converting Models

-

To obtain higher and more economical computing power, you can deploy the models created on ModelArts or a local PC on the Ascend chip, Arm, or GPU. In this case, you need to compress or convert the models to the required formats before deploying them.

-
- - - - - -Parent topic: Model Management - - - diff --git a/modelarts/umn/temp/introduction_to_model_templates.tmp b/modelarts/umn/temp/introduction_to_model_templates.tmp deleted file mode 100644 index 62402721..00000000 --- a/modelarts/umn/temp/introduction_to_model_templates.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Introduction to Model Templates

-

Because the configurations of models with the same functions are similar, ModelArts integrates the configurations of such models into a common template. By using this template, you can easily and quickly import models without compiling the config.json configuration file. In simple terms, a template integrates AI engine and model configurations. Each template corresponds to a specific AI engine and inference mode. With the templates, you can quickly import models to ModelArts.

-

Using a Template

The following uses the template described in TensorFlow-py36 General Template as an example. Upload the TensorFlow model package to OBS before using the template. Store the model files in the model directory. When creating a model using this template, you need to select the model directory.

-
  1. On the Import Model page, set Meta Model Source to Template.
  2. In the Template area, select TensorFlow-py36 general template.

    ModelArts also provides three filter criteria: Type, Engine, and Environment, helping you quickly find the desired template. If the three filter criteria cannot meet your requirements, you can enter keywords to search for the target template.

    -
  3. For Model Folder, select the model directory where the model files reside. For details, see Template Description.

    If a training job is executed for multiple times, different version directories are generated, such as V001 and V002, and the generated models are stored in the model folder in different version directories. When selecting model files, specify the model folder in the corresponding version directory.

    - -
  4. If the default input and output mode of the selected template can be overwritten, you can select an input and output mode based on the model function or application scenario. Input and Output Mode is an abstract of the API in config.json. It describes the interface provided by the model for external inference. An input and output mode describes one or more APIs, and corresponds to a template.

    For details about the supported input and output modes, see Input and Output Modes.

    -
- -

Supported Templates

- -

Supported Input and Output Modes

- - - - -Parent topic: Model Templates - - - diff --git a/modelarts/umn/temp/introduction_to_model_training.tmp b/modelarts/umn/temp/introduction_to_model_training.tmp deleted file mode 100644 index 58a6a780..00000000 --- a/modelarts/umn/temp/introduction_to_model_training.tmp +++ /dev/null @@ -1,49 +0,0 @@ - - -

Introduction to Model Training

-

ModelArts provides model training for you to view the training effect, based on which you can adjust your model parameters. You can select resource pools (CPU or GPU) with different instance flavors for model training. In addition to the models developed by users, ModelArts also provides built-in algorithms. You can directly adjust parameters of the built-in algorithms, instead of developing a model by yourself, to obtain a satisfactory model.

-

Description of the Model Training Function

-.. _modelarts_23_0044__en-us_topic_0129633060_table138422031155511: - - - - - - - - - - - - - - - - - - - -
Table 1 Function description

Function

-

Description

-

Reference

-

Training job management

-

You can create training jobs, manage training job versions, and view details of training jobs, and evaluation details.

-

Creating a Training Job

-

Managing Training Job Versions

-

Viewing Job Details

-

Job parameter management

-

You can save the parameter settings of a training job (including the data source, algorithm source, running parameters, resource pool parameters, and more) as a job parameter, which can be directly used when you create a training job, eliminating the need to set parameters one by one. As such, the configuration efficiency can be greatly improved.

-

Managing Job Parameters

-

Model training visualization

-

TensorBoard and MindInsight effectively display the computational graph of a model in the running process, the trend of all metrics in time, and the data used in the training.

-

Managing Visualization Jobs

-
- - - - - -Parent topic: Training Management - - - diff --git a/modelarts/umn/temp/introduction_to_notebook.tmp b/modelarts/umn/temp/introduction_to_notebook.tmp deleted file mode 100644 index 7d879e72..00000000 --- a/modelarts/umn/temp/introduction_to_notebook.tmp +++ /dev/null @@ -1,83 +0,0 @@ - - -

Introduction to Notebook

-

ModelArts integrates the open-source Jupyter Notebook and JupyterLab to provide you with online interactive development and debugging environments. You can use the Notebook on the ModelArts management console to compile and debug code and train models based on the code, without concerning installation and configurations.

-
  • Jupyter Notebook is an interactive notebook. For details about how to perform operations on Jupyter Notebook, see Jupyter Notebook Documentation.
  • JupyterLab is an interactive development environment. It is a next-generation product of Jupyter Notebook. JupyterLab enables you to compile notebooks, operate terminals, edit MarkDown text, open interaction modes, and view CSV files and images. For details about how to perform operations on JupyterLab, see JupyterLab Documentation.
-

Supported AI Engines

Each development environment supports multiple AI engines that run independently. All supported AI engines can be used in the same notebook instance, and these engines can be switched quickly and conveniently.

-
  • Each ModelArts notebook instance can use all supported engines.
- - -.. _modelarts_23_0033__en-us_topic_0162690357_table13949522712: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 AI engines

Work Environment

-

Built-in AI Engine and Version

-

Supported Chip

-

Multi-Engine 1.0 (Python 3, Recommended)

-

MXNet-1.2.1

-

GPU

-

PySpark-2.3.2

-

CPU

-

Pytorch-1.0.0

-

GPU

-

TensorFlow-1.13.1

-

GPU

-

XGBoost-Sklearn

-

CPU

-

Multi-Engine 2.0 (Python3)

-

Pytorch-1.4.0

-

GPU

-

TensorFlow-2.1.0

-

CPU/GPU

-

Ascend-Powered-Engine 1.0 (Python3)

-

MindSpore-1.1.1

-

Ascend 910

-

TensorFlow-1.15.0

-

Ascend 910

-
- - -

Constraints

  • For security purposes, the root permission is not granted to the notebook instances integrated in ModelArts. You can use the non-privileged user jovyan or ma-user (using Multi-Engine) to perform operations. Therefore, you cannot use apt-get to install the OS software.
  • Notebook instances support only standalone training under the current AI engine framework. If you need to use distributed training, use ModelArts training jobs and specify multiple nodes in the resource pool.
  • ModelArts DevEnviron does not support apt-get. You can use a custom image to train a model.
  • Notebook instances do not support GUI-related libraries, such as PyQt.
  • Notebook instances created using Ascend specifications cannot be attached to EVS disks.
  • Notebook instances cannot be connected to DWS and database services.
  • Notebook instances cannot directly read files in OBS. You need to download the files to the local host. To access data in OBS, use Moxing or SDK for interaction.
  • DevEnviron does not support TensorBoard. Use the visualization job function under Training Jobs.
  • After a notebook instance is created, you cannot modify its specifications. For example, you cannot change the CPU specifications to GPU specifications or change the work environment. Therefore, select the specifications required by the service when creating a notebook instance, or save your code and data to OBS in a timely manner during development so that you can quickly upload the code and data to a new notebook instance.
  • If the code output is still displayed after you close the page and open it again, use Terminal.
- - - - -Parent topic: DevEnviron (Notebook) - - - diff --git a/modelarts/umn/temp/introduction_to_team_labeling.tmp b/modelarts/umn/temp/introduction_to_team_labeling.tmp deleted file mode 100644 index 89dc1b8a..00000000 --- a/modelarts/umn/temp/introduction_to_team_labeling.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Introduction to Team Labeling

-

Generally, a small data labeling task can be completed by an individual. However, team work is required to label a large dataset. ModelArts provides the team labeling function. A labeling team can be formed to manage labeling for the same dataset.

-

The team labeling function supports only datasets for image classification, object detection, text classification, named entity recognition, text triplet, and speech paragraph labeling.

- -

How to Enable Team Labeling

  • When creating a dataset, enable Team Labeling and select a team or task manager.Figure 1 Enabling during dataset creation
    -
  • If team labeling is not enabled for a dataset that has been created, create a team labeling task to enable team labeling. For details about how to create a team labeling task, see Creating Team Labeling Tasks.Figure 2 Creating a team labeling task in a dataset list
    -Figure 3 Creating a team labeling task
    -Figure 4 Creating a team labeling task on the dataset details page
    -
- -

Operations Related to Team Labeling

- - - - -Parent topic: Team Labeling - - - diff --git a/modelarts/umn/temp/introduction_to_the_ai_development_lifecycle.tmp b/modelarts/umn/temp/introduction_to_the_ai_development_lifecycle.tmp deleted file mode 100644 index 9f409c56..00000000 --- a/modelarts/umn/temp/introduction_to_the_ai_development_lifecycle.tmp +++ /dev/null @@ -1,26 +0,0 @@ - - -

Introduction to the AI Development Lifecycle

-

What Is AI

Artificial intelligence (AI) is a technology capable of simulating human cognition through machines. The core capability of AI is to make a judgment or prediction based on a given input.

- -

What Is the Purpose of AI Development

AI development aims to centrally process and extract information from volumes of data to summarize internal patterns of the study objects.

-

Massive volumes of collected data are computed, analyzed, summarized, and organized by using appropriate statistics, machine learning, and deep learning methods to maximize data value.

- -

Basic Process of AI Development

The basic process of AI development includes the following steps: determining an objective, preparing data, and training, evaluating, and deploying a model.

-Figure 1 AI development process
-
  1. Determine an objective.

    Before starting AI development, determine what to analyze. What problems do you want to solve? What is the business goal? Sort out the AI development framework and ideas based on the business understanding. For example, image classification and object detection. Different projects have different requirements for data and AI development methods.

    -

  2. Prepare data.

    Data preparation refers to data collection and preprocessing.

    -

    Data preparation is the basis of AI development. When you collect and integrate related data based on the determined objective, the most important thing is to ensure the authenticity and reliability of the obtained data. Typically, you cannot collect all the data at the same time. In the data labeling phase, you may find that some data sources are missing and then you may need to repeatedly adjust and optimize the data.

    -

  3. Train a model.

    Modeling involves analyzing the prepared data to find the causality, internal relationships, and regular patterns, thereby providing references for commercial decision making. After model training, usually one or more machine learning or deep learning models are generated. These models can be applied to new data to obtain predictions and evaluation results.

    -

  4. Evaluate the model.

    A model generated by training needs to be evaluated. Typically, you cannot obtain a satisfactory model after the first evaluation, and may need to repeatedly adjust algorithm parameters and data to further optimize the model.

    -

    Some common metrics, such as the accuracy, recall, and area under the curve (AUC), help you effectively evaluate and obtain a satisfactory model.

    -

  5. Deploy the model.

    Model development and training are based on existing data (which may be test data). After a satisfactory model is obtained, the model needs to be formally applied to actual data or newly generated data for prediction, evaluation, and visualization. The findings can then be reported to decision makers in an intuitive way, helping them develop the right business strategies.

    -

- - - - -Parent topic: Basic Knowledge - - - diff --git a/modelarts/umn/temp/introduction_to_training_jobs.tmp b/modelarts/umn/temp/introduction_to_training_jobs.tmp deleted file mode 100644 index cb12b987..00000000 --- a/modelarts/umn/temp/introduction_to_training_jobs.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Introduction to Training Jobs

-

ModelArts supports multiple types of training jobs during the entire AI development process. Select a creation mode based on the algorithm source.

-

Algorithm Sources of Training Jobs

- - - - -Parent topic: Creating a Training Job - - - diff --git a/modelarts/umn/temp/labeling_data.tmp b/modelarts/umn/temp/labeling_data.tmp deleted file mode 100644 index 02905119..00000000 --- a/modelarts/umn/temp/labeling_data.tmp +++ /dev/null @@ -1,32 +0,0 @@ - - -

Labeling Data

-

Before data labeling, consider how to design labels. The labels must correspond to the distinct characteristics of the detected images and are easy to identify (the detected object in an image is highly distinguished from the background). Each label specifies the expected recognition result of the detected images. After the label design is complete, prepare images based on the designed labels. It is recommended that the number of all images to be detected be greater than 100. If the labels of some images are similar, prepare more images.

-
  • During labeling, the variance of a class should be as small as possible. That is, the labeled objects of the same class should be as similar as possible. The labeled objects of different classes should be as different as possible.
  • The contrast between the labeled objects and the image background should be as stark as possible.
  • In object detection labeling, a target object must be entirely contained within a labeling box. If there are multiple objects in an image, do not relabel or miss any objects.
-

Labeling Images

  1. On the Label Data tab page, click the Unlabeled tab. All unlabeled images are displayed. Click an image to go to the labeling page.
  2. Left-click and drag the mouse to select the area where the target object is located. In the dialog box that is displayed, select the label color, enter the label name, and press Enter. After the labeling is complete, the status of the images changes to Labeled.More descriptions of data labeling are as follows:
    • You can click the arrow keys in the upper and lower parts of the image, or press the left and right arrow keys on the keyboard to select another image. Then, repeat the preceding operations to label the image. If an image contains more than one object, you can label all the objects.
    • You can add multiple labels with different colors for an object detection ExeML project for easy identification. After selecting an object, select a new color and enter a new label name in the dialog box that is displayed to add a new label.
    • In an ExeML project, object detection supports only rectangular labeling boxes. In the Data Management function, more types of labeling boxes are supported for object detection datasets.
    • In the Label Data window, you can scroll the mouse to zoom in or zoom out on the image to quickly locate the object.
    - -

    -
  3. After all images in the image directory are labeled, click ExeML in the upper left corner. In the dialog box that is displayed, click OK to save the labeling information. The Label Data page is displayed. On the Labeled tab page, you can view the labeled images or view the label names and quantity in the right pane.
- -

Synchronizing or Adding Images

On the ExeML page, click the project name. The Label Data tab page is displayed. When creating a project, you can add images from a local PC or synchronize image data from OBS.
  • Add: You can quickly add images on a local PC to ModelArts and synchronize the images to the OBS path specified during project creation. Click Add. In the dialog box that is displayed, click Add Image and add images. The total size of all images uploaded in one attempt cannot exceed 8 MB. The size of a single image cannot exceed 5 MB.
  • Synchronize Data Source: You can upload images to the OBS directory specified during project creation and click Synchronize Data Source to quickly add the images in the OBS directory to ModelArts.
  • Delete: You can delete images one by one, or select Select Images on Current Page to delete all images on the page.

    The deleted images cannot be recovered. Exercise caution when performing this operation.

    - -
- - -

Modifying Labeled Data

After labeling data, you can modify labeled data on the Labeled tab page.

-
  • Modifying based on images

    On the dataset details page, click the Labeled tab, click the image to be modified. The labeling page is displayed. Modify the image information in the label information area on the right.

    -
    • Modifying a label: In the Labeling area, click the edit icon, enter the correct label name in the text box, and click the check mark to complete the modification. The label color cannot be modified.
    • Deleting a label: In the Labeling area, click the deletion icon to delete a label from the image.

      After the label is deleted, click the project name in the upper left corner of the page to exit the labeling page. The image will be returned to the Unlabeled tab page.

      -

      -
    -
-
  • Modifying based on labels

    On the dataset details page, click the Labeled tab. The information about all labels is displayed on the right.

    -
    • Modifying a label: Click the edit icon in the Operation column. In the dialog box that is displayed, enter the new label name and click OK. After the modification, the images that have been added with the label use the new label name.
    • Deleting a label: Click the deletion icon in the Operation column. In the displayed dialog box, select the object to be deleted as prompted and click OK.
    -
- - - - -Parent topic: Object Detection - - - diff --git a/modelarts/umn/temp/managing_dataset_versions.tmp b/modelarts/umn/temp/managing_dataset_versions.tmp deleted file mode 100644 index 2dd09e62..00000000 --- a/modelarts/umn/temp/managing_dataset_versions.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

Managing Dataset Versions

-

After labeling data, you can publish the dataset to multiple versions for management. For the published versions, you can view the dataset version updates, set the current version, and delete versions. For details about dataset versions, see About Dataset Versions.

-

For details about how to publish a new version, see Publishing a Dataset.

-

Viewing Dataset Version Updates

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, choose More > Manage Version in the Operation column. The Manage Version tab page is displayed.

    You can view basic information about the dataset, and view the versions and publish time on the left.

    -
- -

Setting to Current Version

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, choose More > Manage Version in the Operation column. The Manage Version tab page is displayed.
  3. On the Manage Version tab page, select the desired dataset version, and click Set to Current Version in the basic information area on the right. After the setting is complete, Current version is displayed to the right of the version name.

    Only the version in Normal status can be set to the current version.

    - -
- -

Deleting a Dataset Version

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, choose More > Manage Version in the Operation column. The Manage Version tab page is displayed.
  3. Locate the row that contains the target version, and click Delete in the Operation column. In the dialog box that is displayed, click OK.

    Deleting a dataset version does not remove the original data. Data and its labeling information are still stored in the OBS directory. However, if it is deleted, you cannot manage the dataset versions on the ModelArts management console. Exercise caution when performing this operation.

    - -
- - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/managing_job_parameters.tmp b/modelarts/umn/temp/managing_job_parameters.tmp deleted file mode 100644 index e53d9f9a..00000000 --- a/modelarts/umn/temp/managing_job_parameters.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

Managing Job Parameters

-

You can store the parameter settings in ModelArts during job creation so that you can use the stored settings to create follow-up training jobs, which makes job creation more efficient.

-

During the operations of creating, editing, and viewing training jobs, the saved job parameter settings are displayed on the Job Parameter Mgmt page.

-

Using a Job Parameter Configuration

  • Method 1: Using a job parameter configuration on the Job Parameter Mgmt page

    Log in to the ModelArts management console. In the left navigation pane, choose Training Management > Training Jobs. On the displayed page, click the Job Parameter Mgmt tab. In the job parameter list, click Creating Training Job for a job parameter configuration to create a training job based on the job parameter configuration.

    -
  • Method 2: Using a job parameter configuration on the Creating Training Job page

    On the Creating Training Job page, click One-Click Configuration. In the displayed dialog box, select the required job parameter configuration to quickly create an available training job.

    -
- -

Editing a Job Parameter Configuration

  1. Log in to the ModelArts management console. In the left navigation pane, choose Training Management > Training Jobs. On the displayed page, click the Job Parameter Mgmt tab.
  2. In the job parameter configuration list, click Edit in the Operation column in a row.
  3. On the displayed page, modify related parameters by referring to "Creating a Training Job" and click OK to save the job parameter settings.

    In the existing job parameter settings, the job name cannot be changed.

    -
- -

Deleting a Training Job Parameter Configuration

  1. Log in to the ModelArts management console. In the left navigation pane, choose Training Management > Training Jobs. On the displayed page, click the Job Parameter Mgmt tab.
  2. In the job parameter list, click Delete in the Operation column in a row.
  3. In the displayed dialog box, click OK.

    Deleted job parameter configurations cannot be recovered. Therefore, exercise caution when performing this operation.

    - -
- - - - -Parent topic: Training Management - - - diff --git a/modelarts/umn/temp/managing_model_versions.tmp b/modelarts/umn/temp/managing_model_versions.tmp deleted file mode 100644 index a4776808..00000000 --- a/modelarts/umn/temp/managing_model_versions.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

Managing Model Versions

-

To facilitate source tracing and repeated model tuning, ModelArts provides the model version management function. You can manage models based on versions.

-

Prerequisites

You have imported a model to ModelArts,

- -

Creating a New Version

On the Model Management > Models page, click Create New Version in the Operation column. The Create New Version page is displayed. Set related parameters by following the instructions in Importing Models and click Next.

- -

Deleting a Version

On the Model Management > Models page, click the triangle on the left of the model name to expand a model version list. In the model version list, click Delete in the Operation column to delete the corresponding version.

-

A deleted version cannot be recovered. Exercise caution when performing this operation.

- - - - - -Parent topic: Model Management - - - diff --git a/modelarts/umn/temp/managing_notebook_instances.tmp b/modelarts/umn/temp/managing_notebook_instances.tmp deleted file mode 100644 index b1cc5d4c..00000000 --- a/modelarts/umn/temp/managing_notebook_instances.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Managing Notebook Instances

-

- - - - - -Parent topic: DevEnviron (Notebook) - - - diff --git a/modelarts/umn/temp/managing_team_labeling_tasks.tmp b/modelarts/umn/temp/managing_team_labeling_tasks.tmp deleted file mode 100644 index 51a7c49c..00000000 --- a/modelarts/umn/temp/managing_team_labeling_tasks.tmp +++ /dev/null @@ -1,64 +0,0 @@ - - -

Managing Team Labeling Tasks

-

For datasets with team labeling enabled, you can create team labeling tasks and assign the labeling tasks to different teams so that team members can complete the labeling tasks together. During data labeling, members can initiate acceptance, continue acceptance, and view acceptance reports.

-

Creating Team Labeling Tasks

If you enable team labeling when creating a dataset and assign a team to label the dataset, the system creates a labeling task based on the team by default. After the dataset is created, you can view the labeling task on the Labeling Progress tab page of the dataset.

-

You can also create a team marking task and assign it to different members in the same team or to other labeling teams.

-
  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. A dataset list is displayed.
  2. In the dataset list, select a dataset that supports team labeling, and click the dataset name to go to the Dashboard tab page of the dataset.
  3. Click the Labeling Progress tab to view existing labeling tasks of the dataset. Click Create Team Labeling Task in the upper right corner to create a task.
  4. In the displayed Create Team Labeling Task dialog box, set related parameters and click OK.
    • Name: Enter a task name.
    • Type: Select a task type, Team or Task Manager.
    • Select Team: If Type is set to Team, you need to select a team and members for labeling. The Select Team drop-down list lists the labeling teams and members created by the current account. For details about team management, see Introduction to Team Labeling.
    • Select Task Manager: If Type is set to Task Manager, you need to select one Team Manager member from all teams as the task manager.
    • Label Set: All existing labels and label attributes of the dataset are displayed. You can also select Automatically synchronize new images to the team labeling task or Automatically load the intelligent labeling results to images that need to be labeled under Label Set.

      The process of loading auto labeling results to a team labeling task is as follows:

      -
      • If you set Type to Team, you are required to create a team labeling task before executing the task.
      • If you set Type to Task Manager, you are required to log in to the data labeling console and assign a labeling task before executing the task.
      -

      After the task is created, you can view the new task on the Labeling Progress tab page.

      -
    -
- -

Labeling (Team Member)

After a labeling task is created, the team member to which the task is assigned receives a labeling notification email.

-

In the email details, click the labeling task link and use your email address and initial password to log in to the labeling platform. After login, change the password. After logging in to the labeling platform, you can view the assigned labeling task and click the task name to go to the labeling page. The labeling method varies depending on the dataset type. For details, see the following:

- -

On the labeling platform, each member can view the images that are not labeled, to be corrected, rejected, to be reviewed, approved, and accepted. Pay attention to the images rejected by the administrator and the images to be corrected.

-

If the Reviewer role is assigned for a team labeling task, the labeling result needs to be reviewed. After the labeling result is reviewed, it is submitted to the administrator for acceptance.

-Figure 1 Labeling platform
- -

Task Acceptance (Administrator)

  • Initiating acceptance

    After team members complete data labeling, the dataset creator can initiate acceptance to check labeling results. The acceptance can be initiated only when a labeling member has labeled data. Otherwise, the acceptance initiation button is unavailable.

    -
    1. On the Labeling Progress tab page, click Initiate Acceptance to accept tasks.
    2. In the displayed dialog box, set Sample Policy to By percentage or By quantity. Click OK to start the acceptance.

      By percentage: Sampling is performed based on a percentage for acceptance.

      -

      By quantity: Sampling is performed based on quantity for acceptance.

      -
    3. After the acceptance is initiated, an acceptance report is displayed on the console in real time. In the Acceptance Result area on the right, select Pass or Reject.

      If you select Pass, set Rating to A, B, C, or D. Option A indicates the highest score. If you select Reject, enter your rejection reasons in the text box.

      -
    -
  • Continuing acceptance

    You can continue accepting tasks whose acceptance is not completed. For tasks for which an acceptance process is not initiated, the Continue Acceptance button is unavailable.

    -

    On the Labeling Progress tab page, click Continue Acceptance to continue accepting tasks. The Real-Time Acceptance Report page is displayed. You can continue to accept the images that are not accepted.

    -
  • Finishing acceptance

    In the acceptance completion window, you can view dataset acceptance details, such as the number of sample files, set the following parameters, and perform acceptance. The labeling information is synchronized to the Labeled tab page of the dataset only after the acceptance is complete.

    -

    Once the labeled data is accepted, team members cannot modify the labeling information. Only the dataset creator can modify the labeling information.

    - -.. _modelarts_23_0210__en-us_topic_0209053802_table1372918217370: - - - - - - - - - - - - -
    Table 1 Parameters for finishing acceptance

    Parameter

    -

    Description

    -

    Modifying Labeled Data

    -
    • Not overwrite: For the same data, do not overwrite the existing data with the labeling result of the current team.
    • Overlays: For the same data, overwrite the existing data with the labeling result of the current team. Overwritten data cannot be recovered. Exercise caution when performing this operation.
    -

    Acceptance Scope

    -
    • All: all data that has been labeled by the current team, including Accepted, Pending Acceptance, and Rejected data. It refers to all sample files in the dataset.
    • All rejects: rejects all data that has been labeled by the current team. That is, all labeled data is rejected to the labeling personnel.

      -
    • Accepted and pending acceptance: accepts the data that passes the acceptance or is in the Pending Acceptance state in the sample files and rejects the data that fails the acceptance to the labeling personnel.
    • Accepted: accepts the data that has passed the acceptance in the sample files and rejects the data that is in the Pending Acceptance state or fails the acceptance to the labeling personnel.
    -
    - -
- -

Viewing an Acceptance Report

You can view the acceptance report of an ongoing or finished labeling task. On the Labeling Progress tab page, click Acceptance Report. In the displayed Acceptance Report dialog box, view report details.

- -

Deleting a Labeling Task

On the Labeling Progress tab page, click Delete in the row where a labeling task to be deleted. After a task is deleted, the labeling details that are not accepted will be lost. Exercise caution when performing this operation. However, the original data in the dataset and the labeled data that has been accepted are still stored in the corresponding OBS bucket.

- - - - -Parent topic: Team Labeling - - - diff --git a/modelarts/umn/temp/managing_training_job_versions.tmp b/modelarts/umn/temp/managing_training_job_versions.tmp deleted file mode 100644 index cb98d0f4..00000000 --- a/modelarts/umn/temp/managing_training_job_versions.tmp +++ /dev/null @@ -1,64 +0,0 @@ - - -

Managing Training Job Versions

-

During model building, you may need to frequently tune the data, training parameters, or the model based on the training results to obtain a satisfactory model. ModelArts allows you to manage training job versions to effectively train your model after the tuning. Specifically, ModelArts generates a version each time when a training is performed. You can quickly get the difference between different versions.

-

Viewing Training Job Versions

  1. Log in to the ModelArts management console. In the left navigation pane, choose Training Management > Training Jobs. By default, the system switches to the Training Jobs page.
  2. In the training job list, click the name of a training job.

    By default, the basic information about the latest version is displayed. If there are multiple available versions, click Select Version in the upper left corner to view a certain version. Click the downward arrow to the left of the version to display job details.

    -
- -

Comparing Versions of a Training Job

On the Version Manager page, click View Comparison Result to view the comparison of all or selected versions of the current training job. The comparison result involves the following information: Running Parameter, F1 Score, Recall, Precision, and Accuracy.

-

The F1 Score, Recall, Precision, and Accuracy parameters of a training job are displayed only when the job is created using a built-in algorithm. For training jobs created using frequently-used frameworks or custom images, define the output of these parameters in your training script code. These parameters cannot be viewed on the GUI.

- - -

Shortcut Operations Based on Training Job Versions

On the Version Manager page, ModelArts provides certain shortcut operation buttons for you to quickly enter the subsequent steps after model training is complete.

- -.. _modelarts_23_0047__en-us_topic_0171858285_table545322619177: - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Shortcut operation button description

Shortcut Operation Button

-

Description

-

Creating Visualization Job

-

Creates a visualization job (TensorBoard) for the current training version. For details, see Managing Visualization Jobs.

- NOTE:

TensorBoard supports only the TensorFlow and MXNet engines. Therefore, you can create the TensorBoard jobs only when the AI engine is TensorFlow or MXNet.

- -

Create Model

-

Creates a model for the current training version. For details about how to create a model, see Importing a Model. You can only create models for training jobs in the Running status.

-

Modify

-

If the training result of the current version does not meet service requirements or the training job fails, click Modify to switch to the page where you can modify the job parameter settings. For details about the parameters of the training job, see Creating a Training Job. After modifying the job parameter settings as required, click OK to start the training job of a new version.

-

Save Training Parameters

-

You can save the job parameter settings of this version as a job parameter configuration, which will be displayed on the Job Parameter Mgmt page. Click More > Save Training Parameters to switch to the Training Parameter page. After confirming that the settings are correct, click OK. For details about training parameter management, see Managing Job Parameters.

-

Stop

-

Click More > Stop to stop the training job of the current version. Only training jobs in the Running state can be stopped.

-

Delete

-

Click More > Delete to delete the training job of the current version.

-
- - - - - -Parent topic: Training Management - - - diff --git a/modelarts/umn/temp/managing_visualization_jobs.tmp b/modelarts/umn/temp/managing_visualization_jobs.tmp deleted file mode 100644 index 55794bf3..00000000 --- a/modelarts/umn/temp/managing_visualization_jobs.tmp +++ /dev/null @@ -1,32 +0,0 @@ - - -

Managing Visualization Jobs

-

You can create visualization jobs of TensorBoard and MindInsight types on ModelArts.

-

TensorBoard supports training jobs based on the TensorFlow engine, and MindInsight supports training jobs based on the MindSpore engine.

-

TensorBoard and MindInsight can effectively display the change trend of a training job and the data used in the training.

-

You can use the summary file generated during model training to create a visualization job.

-

Prerequisites

To ensure that the summary file is generated in the training result, you need to add the related code to the training script.

-
  • Using the TensorFlow engine:

    When using the TensorFlow-based MoXing, in mox.run, set save_summary_steps>0 and summary_verbosity≥1.

    -

    If you want to display other metrics, add tensors to log_info in the return value mox.ModelSpec of model_fn. Only the rank-0 tensors (scalars) are supported. The added tensors are written into the summary file. If you want to write tensors of higher ranks in the summary file, use the native tf.summary of TensorFlow in model_fn.

    -
  • Using the MindSpore engine:

    MindSpore allows you to save data to the summary log file and display the data on the GUI. For details, see the MindSpore official website.

    -
- -

Creating a Visualization Job

  1. Log in to the ModelArts management console. In the left navigation pane, choose Training Jobs. On the displayed page, click the Visualization Jobs tab.
  2. In the upper left corner of the visualization job list, click Create to switch to the Create Visualization Job page.
  3. Set Job Type to TensorBoard and MindInsight. Enter the visualization job name and description as required, set the Training Output Path and Auto Stop parameters.
    • Training Output Path: Select the training output path specified when the training job is created.
    • Auto Stop: Enable or disable the auto stop function. The options are 1 hour later, 2 hours later, 4 hours later, 6 hours later, and Custom. If you select Custom, you can enter any integer within 1 to 24 hours in the textbox on the right.
    -
  4. After confirming the specifications, click Next.

    In the visualization job list, when the status changes to Running, the virtualization job has been created. You can click the name of the visualization job to view its details.

    -
- -

Opening a Visualization Job

In the visualization job list, click the name of the target visualization job. The TensorBoard page is displayed. Only the visualization job in the Running status can be opened.

- -

Running or Stopping a Visualization Job

  • Stopping a visualization job: In the visualization job list, click Stop in the Operation column to stop the visualization job.
  • Running a visualization job: You can run and use a visualization job in the Canceled status again. In the visualization job list, click Run in the Operation column to run the visualization job.
- -

Deleting a Visualization Job

If your visualization job is no longer used, you can delete it to release resources. In the visualization job list, click Delete in the Operation column to delete the visualization job.

-

A deleted visualized job cannot be recovered. You need to create a new visualization job if you want to use it. Exercise caution when performing this operation.

- - - - - -Parent topic: Training Management - - - diff --git a/modelarts/umn/temp/member_management.tmp b/modelarts/umn/temp/member_management.tmp deleted file mode 100644 index 902007cc..00000000 --- a/modelarts/umn/temp/member_management.tmp +++ /dev/null @@ -1,28 +0,0 @@ - - -

Member Management

-

There is no member in a new team. You need to add members who will participate in a team labeling task.

-

A maximum of 100 members can be added to a team. If there are more than 100 members, add them to different teams for better management.

-

Adding a Member

  1. In the left navigation pane of the ModelArts management console, choose Data Management > Labeling Teams. The Labeling Teams page is displayed.
  2. On the Labeling Teams page, select a team from the team list on the left and click a team name. The team details are displayed in the right pane.
  3. In the Team Details area, click Add Member.
  4. In the displayed Add Member dialog box, enter an email address, description, and a role for a member and click OK.

    An email address uniquely identifies a team member. Different members cannot use the same email address. The email address you enter will be recorded and saved in ModelArts. It is used only for ModelArts team labeling. After a member is deleted, the email address will also be deleted.

    -Possible values of Role are Labeler, Reviewer, and Team Manager. Only one Team Manager can be set.Figure 1 Adding a member
    - -Figure 2 Adding a member
    -

    Information about the added member is displayed in the Team Details area.

    -
- -

Modifying Member Information

You can modify member information if it is changed.

-
  1. In the Team Details area, select the desired member.
  2. In the row containing the desired member, click Modify in the Operation column. In the displayed dialog box, modify the description or role.

    The email address of a member cannot be changed. To change the email address of a member, delete the member, and set a new email address when adding a member.

    -

    Possible values of Role are Labeler, Reviewer, and Team Manager. Only one Team Manager can be set.

    -
- -

Deleting Members

  • Deleting a single member

    In the Team Details area, select the desired member, and click Delete in the Operation column. In the dialog box that is displayed, click OK.

    -
  • Batch Deletion

    In the Team Details area, select members to be deleted and click Delete. In the dialog box that is displayed, click OK.

    -
- - - - -Parent topic: Team Labeling - - - diff --git a/modelarts/umn/temp/model_compression_and_conversion.tmp b/modelarts/umn/temp/model_compression_and_conversion.tmp deleted file mode 100644 index 8a4c80ed..00000000 --- a/modelarts/umn/temp/model_compression_and_conversion.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Model Compression and Conversion

- - - - - -Parent topic: Model Management - - - diff --git a/modelarts/umn/temp/model_deployment.tmp b/modelarts/umn/temp/model_deployment.tmp deleted file mode 100644 index c105eea2..00000000 --- a/modelarts/umn/temp/model_deployment.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Model Deployment

- - - - - diff --git a/modelarts/umn/temp/model_input_path_specifications.tmp b/modelarts/umn/temp/model_input_path_specifications.tmp deleted file mode 100644 index 7554b609..00000000 --- a/modelarts/umn/temp/model_input_path_specifications.tmp +++ /dev/null @@ -1,26 +0,0 @@ - - -

Model Input Path Specifications

-

Ascend Chip

The requirements for converting the models run on the Ascend chip are as follows:

-
  • For TensorFlow-based models (in frozen_graph or saved_model format), the input path must comply with the following specifications during model conversion:frozen_graph format
    |
    -|---xxxx.pb                 (Mandatory) Model network file. Only one model network file can exist in the input path. The model must be in frozen_graph or saved_model format.
    -|---insert_op_conf.cfg      (Optional) Insertion operator configuration file. Only one insertion operator configuration file can exist in the input path.
    -|---plugin                  (Optional) Custom operator directory. The input directory can contain only one plugin folder. Only custom operators developed based on Tensor Engine (TE) are supported.
    - -

    saved_model format

    -
    |
    -|---saved_model.pb          (Mandatory) Model network file. Only one model network file can exist in the input path. The model must be in frozen_graph or saved_model format.
    -|---variables               (Mandatory) Fixed subdirectory name, including the model weight deviation.
    -    |---variables.index     Mandatory
    -    |---variables.data-00000-of-00001 Mandatory
    -|---insert_op_conf.cfg      (Optional) Insertion operator configuration file. Only one insertion operator configuration file can exist in the input path.
    -|---plugin                  (Optional) Custom operator directory. The input directory can contain only one plugin folder. Only custom operators developed based on Tensor Engine (TE) are supported.
    -
- - - - -Parent topic: Model Compression and Conversion - - - diff --git a/modelarts/umn/temp/model_management.tmp b/modelarts/umn/temp/model_management.tmp deleted file mode 100644 index 6c1eabbf..00000000 --- a/modelarts/umn/temp/model_management.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Model Management

- - - - - diff --git a/modelarts/umn/temp/model_output_path_description.tmp b/modelarts/umn/temp/model_output_path_description.tmp deleted file mode 100644 index 3e5ec43f..00000000 --- a/modelarts/umn/temp/model_output_path_description.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Model Output Path Description

-

Ascend Chip

The following describes the output path of the model run on the Ascend chip after conversion:

- -
  • For TensorFlow-based models, the output path must comply with the following specifications during model conversion:
    |
    -|---xxxx.om           Converted model to run on the Ascend chip. The model file name extension is .om.
    -|---job_log.txt       Conversion log file
    -
- - - -Parent topic: Model Compression and Conversion - - - diff --git a/modelarts/umn/temp/model_package_specifications.tmp b/modelarts/umn/temp/model_package_specifications.tmp deleted file mode 100644 index 0e9b1639..00000000 --- a/modelarts/umn/temp/model_package_specifications.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Model Package Specifications

-

- - - - - diff --git a/modelarts/umn/temp/model_templates.tmp b/modelarts/umn/temp/model_templates.tmp deleted file mode 100644 index 20640a9b..00000000 --- a/modelarts/umn/temp/model_templates.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Model Templates

-

- - - - - diff --git a/modelarts/umn/temp/model_training.tmp b/modelarts/umn/temp/model_training.tmp deleted file mode 100644 index 1096e5fb..00000000 --- a/modelarts/umn/temp/model_training.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

Model Training

-

In addition to data and algorithms, developers spend a lot of time configuring model training parameters. Model training parameters determine the model's precision and convergence time. Parameter selection is heavily dependent on developers' experience. Improper parameter selection will affect the model's precision or significantly increase the time required for model training.

-

To simplify AI development and improve development efficiency and training performance, ModelArts offers visualized job management, resource management, and version management and automatically performs hyperparameter optimization based on machine learning and reinforcement learning. It provides automatic hyperparameter tuning policies such as learning rate and batch size, and integrates common models.

-

Currently, when most developers build models, the models usually have dozens of layers or even hundreds of layers and MB-level or GB-level parameters to meet precision requirements. As a result, the specifications of computing resources are extremely high, especially the computing power of hardware resources, memory, and ROM. The resource specifications on the device side are strictly limited. For example, the computing power on the device side is 1 TFLOPS, the memory size is about 2 GB, and the ROM space is about 2 GB, so the model size on the device side must be limited to 100 KB and the inference delay must be limited to 100 milliseconds.

-

Therefore, compression technologies with lossless or near-lossless model precision, such as pruning, quantization, and knowledge distillation, are used to implement automatic model compression and optimization, and automatic iteration of model compression and retraining to control the loss of model precision. The low-bit quantization technology, which eliminates the need for retraining, converts the model from a high-precision floating point to a fixed-point operation. Multiple compression and optimization technologies are used to meet the lightweight requirements of device and edge hardware resources. The model compression technology reduces the precision by less than 1% in specific scenarios.

-

When the training data volume is large, the training of the deep learning model is time-consuming. In computer vision technology, ImageNet-1k (a classification dataset containing 1,000 image classes, referred to as ImageNet) is a commonly used dataset. If you use a P100 GPU to train a ResNet-50 model on the dataset, it will take nearly one week. This hinders rapid development of deep learning applications. Therefore, the acceleration of deep learning training has always been an important concern to the academia and the industry.

-

Distributed training acceleration needs to be considered in terms of software and hardware. A single optimization method cannot meet expectations. Therefore, optimization of distributed acceleration is a system project. The distributed training architecture needs to be considered in terms of hardware and chip design. To minimize compute and communication delays, many factors need to be considered, including overall compute specifications, network bandwidth, high-speed cache, power consumption, and heat dissipation of the system, and the relationship between compute and communication throughput.

-

The software design needs to combine high-performance hardware features to fully use the high-speed hardware network and implement high-bandwidth distributed communication and efficient local data caching. By using training optimization algorithms, such as hybrid parallel, gradient compression, and convolution acceleration, the software and hardware of the distributed training system can be efficiently coordinated and optimized from end to end, and training acceleration can be implemented in a distributed environment of multiple hosts and cards. ModelArts delivers an industry-leading speedup of over 0.8 for ResNet50 on the ImageNet dataset in the distributed environment with thousands of hosts and cards.

-

To measure the acceleration performance of distributed deep learning, the following two key indicators are used:

-
  • Throughput, that is, the amount of data processed in a unit time
  • Convergence time, that is, the time required to achieve certain precision
-

The throughput depends on server hardware (for example, more AI acceleration chips with higher FLOPS processing capabilities and higher communication bandwidth achieve higher throughput), data reading and caching, data preprocessing, model computing (for example, convolution algorithm selection), and communication topology optimization. Except low-bit computing and gradient (or parameter) compression, most technologies improve throughput without affecting model precision. To achieve the shortest convergence time, optimize the throughput and adjust the parameters. If the parameters are not adjusted properly, the throughput cannot be optimized. If the batch size is set to a small value, the parallel performance of model training will be relatively poor. As a result, the throughput cannot be improved even if the number of compute nodes are increased.

-

Users are most concerned about convergence time. The MoXing framework implements full-stack optimization and significantly reduces the training convergence time. For data read and preprocessing, MoXing uses multi-level concurrent input pipelines to prevent data I/Os from becoming a bottleneck. In terms of model computing, MoXing provides hybrid precision calculation, which combines semi-precision and single-precision for the upper layer models and reduces the loss caused by precision calculation through adaptive scaling. Dynamic hyperparameter policies (such as momentum and batch size) are used to minimize the number of epochs required for model convergence.

-

ModelArts High-Performance Distributed Training Optimization

  • Automatic hybrid precision to fully utilize hardware computing capabilities
  • Dynamic hyperparameter adjustment technologies (dynamic batch size, image size, and momentum)
  • Automatic model gradient merging and splitting
  • Communication operator scheduling optimization based on BP bubble adaptive computing
  • Distributed high-performance communication libraries (NStack and HCCL)
  • Distributed data-model hybrid parallel
  • Training data compression and multi-level caching
- - - - -Parent topic: Basic Knowledge - - - diff --git a/modelarts/umn/temp/modelarts_metrics.tmp b/modelarts/umn/temp/modelarts_metrics.tmp deleted file mode 100644 index c5fd1126..00000000 --- a/modelarts/umn/temp/modelarts_metrics.tmp +++ /dev/null @@ -1,197 +0,0 @@ - - -

ModelArts Metrics

-

Description

The cloud service platform provides Cloud Eye to help you better understand the status of your ModelArts real-time services and models. You can use Cloud Eye to automatically monitor your ModelArts real-time services and models in real time and manage alarms and notifications, so that you can keep track of performance metrics of ModelArts and models.

- -

Namespace

SYS.ModelArts

- -

Monitoring Metrics

-.. _modelarts_23_0187__en-us_topic_0198064686_table3293914123812: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 ModelArts metrics

Metric ID

-

Metric Name

-

Meaning

-

Value Range

-

Measurement Object & Dimension

-

Monitoring Interval

-

cpu_usage

-

CPU Usage

-

CPU usage of ModelArts

-

Unit: %

-

≥ 0%

-

Measurement object:

-

ModelArts models

-

Dimension:

-

model_id

-

1 minute

-

mem_usage

-

Memory Usage

-

Memory usage of ModelArts

-

Unit: %

-

≥ 0%

-

Measurement object:

-

ModelArts models

-

Dimension:

-

model_id

-

1 minute

-

gpu_util

-

GPU Usage

-

GPU usage of ModelArts

-

Unit: %

-

≥ 0%

-

Measurement object:

-

ModelArts models

-

Dimension:

-

model_id

-

1 minute

-

gpu_mem_usage

-

GPU Memory Usage

-

GPU memory usage of ModelArts

-

Unit: %

-

≥ 0%

-

Measurement object:

-

ModelArts models

-

Dimension:

-

model_id

-

1 minute

-

successfully_called_times

-

Number of Successful Calls

-

Times that ModelArts has been successfully called

-

Unit: Times/min

-

≥Count/min

-

Measurement object:

-

ModelArts models

-

ModelArts real-time services

-

Dimension:

-

model_id,

-

service_id

-

1 minute

-

failed_called_times

-

Number of Failed Calls

-

Times that ModelArts failed to be called

-

Unit: Times/min

-

≥Count/min

-

Measurement object:

-

ModelArts models

-

ModelArts real-time services

-

Dimension:

-

model_id,

-

service_id

-

1 minute

-

total_called_times

-

API Calls

-

Times that ModelArts is called

-

Unit: Times/min

-

≥Count/min

-

Measurement object:

-

ModelArts models

-

ModelArts real-time services

-

Dimension:

-

model_id,

-

service_id

-

1 minute

-

If a measurement object has multiple measurement dimensions, all the measurement dimensions are mandatory when you use an API to query monitoring metrics.

-
  • The following provides an example of using the multi-dimensional dim to query a single monitoring metric: dim.0=service_id,530cd6b0-86d7-4818-837f-935f6a27414d&dim.1="model_id,3773b058-5b4f-4366-9035-9bbd9964714a
  • The following provides an example of using the multi-dimensional dim to query monitoring metrics in batches:

    "dimensions": [

    -

    {

    -

    "name": "service_id",

    -

    "value": "530cd6b0-86d7-4818-837f-935f6a27414d"

    -

    }

    -

    {

    -

    "name": "model_id",

    -

    "value": "3773b058-5b4f-4366-9035-9bbd9964714a"

    -

    }

    -

    ],

    -
-
- - -

Dimensions

-.. _modelarts_23_0187__en-us_topic_0198064686_table130310173915: - - - - - - - - - - - - -
Table 2 Dimension description

Key

-

Value

-

service_id

-

Real-time service ID

-

model_id

-

Model ID

-
- - - - - -Parent topic: Monitoring - - - diff --git a/modelarts/umn/temp/modifying_a_dataset.tmp b/modelarts/umn/temp/modifying_a_dataset.tmp deleted file mode 100644 index 72c7f2e4..00000000 --- a/modelarts/umn/temp/modifying_a_dataset.tmp +++ /dev/null @@ -1,43 +0,0 @@ - - -

Modifying a Dataset

-

For a created dataset, you can modify its basic information to match service changes.

-

Prerequisites

You have created a dataset.

- -

Modifying the Basic Information About a Dataset

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, choose More > Modify in the Operation column.

    Alternatively, you can click the dataset name to go to the Dashboard tab page of the dataset, and click Modify in the upper right corner.

    -
  3. Modify basic information about the dataset and then click OK. Refer to Table 1 for details. -.. _modelarts_23_0020__en-us_topic_0170886811_table151481125214: - - - - - - - - - - - - - - - -
    Table 1 Parameters

    Parameter

    -

    Description

    -

    Name

    -

    Enter the name of the dataset. A dataset name can contain only letters, digits, underscores (_), and hyphens (-).

    -

    Description

    -

    Enter a brief description for the dataset.

    -

    Label Set

    -

    The label set varies depending on the dataset type. For details about how to modify the label set, see the parameters of different dataset types in Creating a Dataset.

    -
    - -
- - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/modifying_a_service.tmp b/modelarts/umn/temp/modifying_a_service.tmp deleted file mode 100644 index f51c0851..00000000 --- a/modelarts/umn/temp/modifying_a_service.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

Modifying a Service

-

For a deployed service, you can modify its basic information to match service changes. You can modify the basic information about a service in either of the following ways:

-

Method 1: Modify Service Information on the Service Management Page

-

Method 2: Modify Service Information on the Service Details Page

-

Prerequisites

A service has been deployed.

- -

Method 1: Modify Service Information on the Service Management Page

  1. Log in to the ModelArts management console and choose Service Deployment from the left navigation pane. Go to the service management page of the target service.
  2. In the service list, click Modify in the Operation column of the target service, modify basic service information, and click OK. -

    Services in the Deploying status cannot be modified.

    - -
- -

Method 2: Modify Service Information on the Service Details Page

  1. Log in to the ModelArts management console and choose Service Deployment from the left navigation pane. Go to the service management page of the target service.
  2. Click the name of the target service. The service details page is displayed.
  3. Click Modify in the upper right corner of the page, modify the service details, and click OK. -
- - - - -Parent topic: Model Deployment - - - diff --git a/modelarts/umn/temp/monitoring.tmp b/modelarts/umn/temp/monitoring.tmp deleted file mode 100644 index ba687633..00000000 --- a/modelarts/umn/temp/monitoring.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Monitoring

-

- - - - - diff --git a/modelarts/umn/temp/mxnet-py36_general_template.tmp b/modelarts/umn/temp/mxnet-py36_general_template.tmp deleted file mode 100644 index a4f279e2..00000000 --- a/modelarts/umn/temp/mxnet-py36_general_template.tmp +++ /dev/null @@ -1,33 +0,0 @@ - - -

MXNet-py36 General Template

-

Introduction

AI engine: MXNet 1.2.1; Environment: Python 3.6; Input and output mode: undefined mode. Select an appropriate input and output mode based on the model function or application scenario. When using the template to import a model, select the model directory containing the model files.

- -

Template Input

The template input is the MXNet-based model package stored on OBS. Ensure that the OBS directory you use and ModelArts are in the same region. For details about model package requirements, see Model Package Example.

- -

Input and Output Mode

Undefined Mode can be overwritten. That is, you can select another input and output mode during model creation.

- -

Model Package Specifications

  • The model package must be stored in the OBS folder named model. Model files and the model inference code file are stored in the model folder.
  • The model inference code file is optional. If the file exists, the file name must be customize_service.py. Only one inference code file can exist in the model folder. For details about how to compile the model inference code file, see Specifications for Compiling Model Inference Code.
-
  • The structure of the model package imported using the template is as follows:
    model/
    -│
    -├── Model file                 //(Mandatory) The model file format varies according to the engine. For details, see the model package example.
    -├── Custom Python package           //(Optional) User's Python package, which can be directly referenced in the model inference code
    -├── customize_service.py  //(Optional) Model inference code file. The file name must be customize_service.py. Otherwise, the code is not considered as inference code.
    -
- -

Model Package Example

Structure of the MXNet-based model package

-

When publishing the model, you only need to specify the model directory.

-
OBS bucket/directory name
-|── model    (Mandatory) The folder must be named model and is used to store model-related files.
-    ├── <<Custom Python package>>       (Optional) User's Python package, which can be directly referenced in the model inference code
-    ├── resnet-50-symbol.json    (Mandatory) Model definition file, which contains the neural network description of the model
-    ├── resnet-50-0000.params    (Mandatory) Model variable parameter file, which contains parameter and weight information
-    ├──customize_service.py      (Optional) Model inference code file. The file must be named customize_service.py. Only one inference code file exists. The .py file on which customize_service.py depends can be directly put in the model directory.
- - - - -Parent topic: Template Description - - - diff --git a/modelarts/umn/temp/named_entity_recognition.tmp b/modelarts/umn/temp/named_entity_recognition.tmp deleted file mode 100644 index bb1d6af6..00000000 --- a/modelarts/umn/temp/named_entity_recognition.tmp +++ /dev/null @@ -1,44 +0,0 @@ - - -

Named Entity Recognition

-

Named entity recognition assigns labels to named entities in text, such as time and locations. Before labeling, you need to understand the following:

-
  • A label name can contain a maximum of 32 characters, including Chinese characters, letters, digits, hyphens (-), and underscores (_).
-

Starting Labeling

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset to be labeled based on the labeling type, and click the dataset name to go to the Dashboard tab page of the dataset.

    By default, the Dashboard tab page of the current dataset version is displayed. If you need to label the dataset of another version, click the Versions tab and then click Set to Current Version in the right pane. For details, see Managing Dataset Versions.

    -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed. By default, all data of the dataset is displayed on the dataset details page.
- -

Labeling Content

The dataset details page displays the labeled and unlabeled text files in the dataset. The Unlabeled tab page is displayed by default.

-

-
  1. On the Unlabeled tab page, the objects to be labeled are listed in the left pane. In the list, click the text object to be labeled, select a part of text displayed under Label Set for labeling, and select a label in the Label Set area in the right pane. Multiple labels can be added to a labeling object.

    You can repeat this operation to select objects and add labels to the objects.

    -
  2. Click Save Current Page in the lower part of the page to complete the labeling.
- -

Adding Labels

  • Adding labels on the Unlabeled tab page: Click the plus sign (+) next to Label Set. On the Add Label page that is displayed, add a label name, select a label color, and click OK.Figure 1 Adding a named entity label (1)
    -
  • Adding labels on the Labeled tab page: Click the plus sign (+) next to All Labels. On the Add Label page that is displayed, add a label name, select a label color, and click OK.Figure 2 Adding a named entity label (2)
    -

    -
- -

Viewing the Labeled Text

On the dataset details page, click the Labeled tab to view the list of the labeled text. You can also view all labels supported by the dataset in the All Labels area on the right.

- -

Modifying Labeled Data

After labeling data, you can modify labeled data on the Labeled tab page.

-

On the dataset details page, click the Labeled tab, and modify the text information in the label information area on the right.

-
  • Modifying based on texts

    On the dataset details page, click the Labeled tab, and select the text to be modified from the text list.

    -

    Manual deletion: In the text list, click the text. When the text background turns blue, the text is selected. On the right of the page, click above a text label to delete the label.

    -
-
  • Modifying based on labels

    On the dataset details page, click the Labeled tab. The information about all labels is displayed on the right.

    -
    • Batch modification: In the All Labels area, click the editing icon in the Operation column, add a label name in the text box, select a label color, and click OK.
    • Batch deletion: In the All Labels area, click the deletion icon in the Operation column to delete the label. In the dialog box that is displayed, select Delete label or Delete label and objects with only the label, and click OK.
    -
- -

Adding Files

In addition to automatically synchronizing data from Input Dataset Path, you can directly add text files on ModelArts for data labeling.

-
  1. On the dataset details page, click the Unlabeled tab. Then click Add File.
  2. In the displayed Add File dialog box, set the parameters as required and then select the file to be uploaded.

    Select one or more files to be uploaded in the local environment. Only .txt and .csv files are supported. The total size of files uploaded at a time cannot exceed 8 MB.

    -
  3. In the Add File dialog box, click Upload. The files you add will be automatically displayed on the Unlabeled tab page.
- -

Deleting a File

You can quickly delete the files you want to discard.

-
  • On the Unlabeled tab page, select the text to be deleted, and click Delete in the upper left corner to delete the text.
  • On the Labeled tab page, select the text to be deleted and click Delete. Alternatively, you can tick Select Images on Current Page to select all text objects on the current page and click Delete in the upper left corner.
-

The background of the selected text is blue.

- - - - -Parent topic: Labeling Data - - - diff --git a/modelarts/umn/temp/notebook.tmp b/modelarts/umn/temp/notebook.tmp deleted file mode 100644 index 2a0614e4..00000000 --- a/modelarts/umn/temp/notebook.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Notebook

- - - - - -Parent topic: Development Environment - - - diff --git a/modelarts/umn/temp/object_detection.tmp b/modelarts/umn/temp/object_detection.tmp deleted file mode 100644 index b0e8beed..00000000 --- a/modelarts/umn/temp/object_detection.tmp +++ /dev/null @@ -1,157 +0,0 @@ - - -

Object Detection

-

Model training uses a large number of labeled images. Therefore, before the model training, add labels to the images that are not labeled. You can add labels to images by manual labeling or auto labeling. In addition, you can modify the labels of images, or remove their labels and label the images again.

-

Before labeling an image in object detection scenarios, pay attention to the following:

-
  • All target objects in the image must be labeled.
  • Target objects are clear without any blocking and contained within bounding boxes.
  • Only the entire object must be contained within a bounding box. The edge of the bounding box cannot intersect the edge outline of the target object. Additionally, there must not be a gap between the edge and the target object to prevent the background from interfering with the model training.
-

Labeling the Dataset

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, click the dataset to be labeled based on the labeling type. The Dashboard tab page of the dataset is displayed.

    By default, the Dashboard tab page of the current dataset version is displayed. To label the dataset of another version, click the Versions tab and then click Set to Current Version in the right pane. For details, see Managing Dataset Versions.

    -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed. By default, all data of the dataset is displayed on the dataset details page.
- -

Synchronizing Data Sources

ModelArts automatically synchronizes data and labeling information from Input Dataset Path to the dataset details page.

-
  • For an image classification dataset, the .txt file with the same name in the same directory as the data source is used as the label of the target image.
  • For an object detection dataset or image segmentation dataset, the .xml file with the same name in the same directory is used as the label of the target image.
-

To quickly obtain the latest data in the OBS bucket, on the All or Unlabeled tab page of the dataset details page, click Synchronize Data Source.

- -

Filtering Data

On the Dashboard tab page of the dataset, the summary of the dataset is displayed by default. In the upper left corner of the page, click Label. The dataset details page is displayed, showing all data in the dataset by default. On the All, Unlabeled, or Labeled tab page, you can add filter criteria in the filter criteria area to quickly filter the data you want to view.

-

The following filter criteria are supported. You can set one or more filter criteria.

-
  • Label: Select All or one or more labels you specified.
  • Sample Creation Time: Select Within 1 month, Within 1 day, or Custom to customize a time range.
  • File Name or Path: Filter files by file name or file storage path.
  • Labeled By: Select the name of the user who performs the labeling operation.
- -

- -

Labeling Images (Manually)

The dataset details page provides the Labeled and Unlabeled tabs. The All tab page is displayed by default.

-
  1. On the Unlabeled tab page, click an image. The image labeling page is displayed. For details about how to use common buttons on the Labeled tab page, see Table 2.
  2. In the left tool bar, select a proper labeling shape. The default labeling shape is a rectangle. In this example, the rectangle is used for labeling.

    On the left of the page, multiple tools are provided for you to label images. However, you can use only one tool at a time.

    - - -.. _modelarts_23_0012__en-us_topic_0170889732_table165201739119: - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Supported bounding box

    Icon

    -

    Description

    -

    -

    Rectangle. Click the edge of the upper left corner of the object to be labeled. A rectangle will be displayed. Drag the rectangle to cover the object and click to label the object.

    -

    -

    Polygon. In the area where the object to be labeled is located, click to label a point, move the mouse and click multiple points along the edge of the object, and then click the first point again. All the points form a polygon. Therefore, the object to be labeled is in the bounding box.

    -

    -

    Circle. Click the center point of an object, and move the mouse to draw a circle to cover the object and click to label the object.

    -

    -

    Straight line. Click to specify the start and end points of an object, and move the mouse to draw a straight line to cover the object and click to label the object.

    -

    -

    Dotted line. Click to specify the start and end points of an object, and move the mouse to draw a dotted line to cover the object and click to label the object.

    -

    -

    Point. Click the object in an image to label a point.

    -
    - -
  3. In the Add Label text box, enter a new label name, select the label color, and click Add. Alternatively, select an existing label from the drop-down list.

    Label all objects in an image. Multiple labels can be added to an image. After labeling an image, you can click the image list below the image to quickly select other images that are not labeled and label them on the labeling page.

    -
  4. Click Back to Data Labeling Preview in the upper left part of the page to view the labeling information. In the dialog box that is displayed, click OK to save the labeling settings.

    The selected image is automatically moved to the Labeled tab page. On the Unlabeled and All tab pages, the labeling information is updated along with the labeling process, including the added label names and the number of images for each label.

    -
- -.. _modelarts_23_0012__en-us_topic_0170889732_table194471512463: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 2 Common icons on the labeling page

Icon

-

Description

-

-

Cancel the previous operation.

-

-

Redo the previous operation.

-

-

Zoom in an image.

-

-

Zoom out an image.

-

-

Delete all bounding boxes on the current image.

-

-

Display or hide a bounding box. You can perform this operation only on a labeled image.

-

-

Drag a bounding box to another position or drag the edge of the bounding box to resize it.

-

-

Reset. After dragging a bounding box, you can click this button to quickly restore the bounding box to its original shape and position.

-

-

Display the labeled image in full screen.

-
- - -

Viewing Labeled Images

On the dataset details page, click the Labeled tab to view the list of the labeled images. You can click an image to view the label information about the image in the All Labels area on the right.

- -

Modifying Labeling Information

After labeling data, you can modify labeled data on the Labeled tab page.

-
  • Modifying based on images

    On the dataset details page, click the Labeled tab, click the image to be modified. The labeling page is displayed. Modify the image information in the label information area on the right.

    -
    • Modifying a label: In the Labeling area, click the edit icon, enter the correct label name in the text box, and click the check mark to complete the modification. Alternatively, click a label. In the image labeling area, adjust the position and size of the bounding box. After the adjustment is complete, click another label to save the modification.
    • Deleting a label: In the Labeling area, click the deletion icon to delete a label from the image.

      After deleting the label, click Back to Data Labeling Preview in the upper left corner of the page to exit the labeling page. In the dialog box that is displayed, save the modification. After all labels of an image are deleted, the image is displayed on the Unlabeled tab page.

      -Figure 1 Editing an object detection label
      -
    -
-
  • Modifying based on labels

    On the dataset details page, click the Labeled tab. The information about all labels is displayed on the right.

    -
    • Modifying a label: Click the edit icon in the Operation column. In the dialog box that is displayed, enter the new label name, select the new label color, and click OK. After the modification, the images that have been added with the label use the new label name.
    • Deleting a label: Click the deletion icon in the Operation column to delete a label.
    -Figure 2 All labels for object detection
    -
- -

Adding Images

In addition to the data automatically synchronized from Input Dataset Path, you can directly add images on ModelArts for labeling.

-
  1. On the dataset details page, click the All or Unlabeled tab. Then, click Add.
  2. On the Add page that is displayed, click Add Image.

    Select one or more images to be uploaded in the local environment. Images in JPG, JPEG, PNG, or BMP formats are supported. The size of a single image cannot exceed 5 MB, and the total size of all images uploaded at a time cannot exceed 8 MB.

    -

    After the images are selected, their thumbnails and total size are displayed on the Add page.

    -
  3. On the Add page, click OK.

    The images you have added will be automatically displayed in the image list on the Unlabeled tab page. In addition, the images are automatically saved to the OBS directory specified by Input Dataset Path.

    -
- -

Deleting Images

You can quickly delete the images you want to discard.

-

On the All, Unlabeled, or Labeled tab page, select the images to be deleted or click Select Images on Current Page, and click Delete in the upper left corner to delete them. In the displayed dialog box, select or deselect Delete source files as required. After confirmation, click OK to delete the images.

-

If a tick is displayed in the upper left corner of an image, the image is selected. If no image is selected on the page, the Delete button is unavailable.

-

If you select Delete source files, images stored in the OBS directory will be deleted accordingly. This operation may affect other dataset versions or datasets using those files, for example, leading to an error in page display, training, or inference. Deleted data cannot be recovered. Exercise caution when performing this operation.

- - - - - -Parent topic: Labeling Data - - - diff --git a/modelarts/umn/temp/opening_a_notebook_instance.tmp b/modelarts/umn/temp/opening_a_notebook_instance.tmp deleted file mode 100644 index 1ef3bb66..00000000 --- a/modelarts/umn/temp/opening_a_notebook_instance.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Opening a Notebook Instance

-

You can open a created notebook instance (that is, an instance in the Running state) and start coding in the development environment.

-

Instance Opening

  • Go to the Jupyter Notebook page.

    In the notebook instance list, locate the row where the target notebook instance resides and click Open in the Operation column or click the notebook instance name.

    -
  • Go to the JupyterLab page.

    In the notebook instance list, select the notebook instance to be opened and click Open JupyterLab in the Operation column.

    -
- -

Code Development

ModelArts provides two environments for code development: Jupyter Notebook and JupyterLab.

-
  • Jupyter Notebook: a web-based application for interactive computing. It can be applied to full-process computing: development, documentation, running code, and presenting results.
  • JupyterLab: an interactive development environment. It is a next-generation product of Jupyter Notebook. JupyterLab enables you to compile notebooks, operate terminals, edit MarkDown text, open interaction modes, and view CSV files and images.
- - - - -Parent topic: Managing Notebook Instances - - - diff --git a/modelarts/umn/temp/overview.tmp b/modelarts/umn/temp/overview.tmp deleted file mode 100644 index 7a5af1a8..00000000 --- a/modelarts/umn/temp/overview.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Overview

-

When you use ExeML, data management, notebook instances, training jobs, models, and services, ModelArts may need to access dependent services such as OBS and Software Repository for Container (SWR). If ModelArts is not authorized to access the services, these functions cannot be used.

-

You can configure access authorization in either of the following ways:

-
  • Using an agency (recommended)

    After agency authorization is configured, the dependent service operation permissions are delegated to ModelArts so that ModelArts can use the dependent services and perform operations on resources on your behalf.

    -
  • Using the access key

    You can use the obtained access key pair (AK/SK) to authorize ModelArts to access dependent services and and perform operations on resources.

    -
-

Precautions

  • Agency authorization grants ModelArts permissions on dependent services, such as OBS and SWR. If the OBS permissions are not configured for an IAM user, the user still does not have the permission to operate the services.
  • For users who have used ModelArts before, access key authorization has been configured and does not need to be configured again. However, you are advised to use agency authorization again.
  • For new users, use agency authorization.
- - - - -Parent topic: Configuring Access Authorization (Global Configuration) - - - diff --git a/modelarts/umn/temp/permissions_management.tmp b/modelarts/umn/temp/permissions_management.tmp deleted file mode 100644 index 0e225e35..00000000 --- a/modelarts/umn/temp/permissions_management.tmp +++ /dev/null @@ -1,20 +0,0 @@ - - -

Permissions Management

-

If you need to assign different permissions to different employees in your enterprise to access ModelArts resources, IAM is a good choice for fine-grained permissions management.

-

Granting Permissions to Users

Figure 1 Authorization model
- -
  1. Plan user groups and grant required permissions to each user group.
  2. Add a user to a specific user group so that the user can inherit the permissions of the group.
-

When personnel changes occur, you only need to change individual user permissions by changing their user group. User groups make permission management more efficient.

-

Granting Permissions to Other Accounts

You (account A) can create an agency on IAM to grant required permissions to the delegated account (account B). The administrator of account B grants the Agent Operator permissions to the user of account B to enable the user to manage resources in your account (account A).

- -

Granting Permissions to Federated Users

You can use IAM to create an IdP and create rules for the IdP to convert federated users into IAM users who have specified permissions to access cloud resources.

-Figure 2 Principles of identity conversion for federated users
- - - - -Parent topic: Service Overview - - - diff --git a/modelarts/umn/temp/preparations.tmp b/modelarts/umn/temp/preparations.tmp deleted file mode 100644 index 349a86d2..00000000 --- a/modelarts/umn/temp/preparations.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - - -

Preparations

- -

- - - - - - diff --git a/modelarts/umn/temp/preparing_data.tmp b/modelarts/umn/temp/preparing_data.tmp deleted file mode 100644 index a95b0fc3..00000000 --- a/modelarts/umn/temp/preparing_data.tmp +++ /dev/null @@ -1,130 +0,0 @@ - - -

Preparing Data

-

Before using ModelArts ExeML to build a model, upload data to an OBS bucket.

-

Uploading Data to OBS

This operation uses the OBS console to upload data. For more information about how to create a bucket and upload files, see Creating a Bucket and Uploading an Object.

-

Perform the following operations to import data to the dataset for model training and building.

-
  1. Log in to OBS Console and create a bucket.
  2. Upload the local data to the OBS bucket. If you have a large amount of data, use OBS Browser+ to upload data or folders. The uploaded data must meet the dataset requirements of the ExeML project.
- -

Requirements on Datasets

  • The name of files in a dataset cannot contain Chinese characters, plus signs (+), spaces, or tabs.
  • Ensure that no damaged image exists. The supported image formats include JPG, JPEG, BMP, and PNG.
  • Do not store data of different projects in the same dataset.
  • To ensure the prediction accuracy of models, the training samples must be similar to the actual application scenarios.
  • To ensure the generalization capability of models, datasets should cover all possible scenarios.
  • In an object detection dataset, if the coordinates of the bounding box exceed the boundaries of an image, the image cannot be identified as a labeled image.
- -

Requirements for Files Uploaded to OBS

  • If you do not need to upload training data in advance, create an empty folder to store files generated in the future, for example, /bucketName/data-cat.
  • If you need to upload images to be labeled in advance, create an empty folder and save the images in the folder. An example of the image directory structure is /bucketName/data-cat/cat.jpg.
  • If you want to upload labeled images to the OBS bucket, upload them according to the following specifications:
    • The dataset for object detection requires storing labeled objects and their label files (in one-to-one relationship with the labeled objects) in the same directory. For example, if the name of the labeled object is IMG_20180919_114745.jpg, the name of the label file must be IMG_20180919_114745.xml.

      The label files for object detection must be in PASCAL VOC format. For details about the format, see Table 1.

      -Example of data files:
      ├─<dataset-import-path> 
      -      │      IMG_20180919_114732.jpg 
      -      │      IMG_20180919_114732.xml 
      -      │      IMG_20180919_114745.jpg 
      -      │      IMG_20180919_114745.xml 
      -      │      IMG_20180919_114945.jpg 
      -      │      IMG_20180919_114945.xml
      - -
    -
    • Images in JPG, JPEG, PNG, and BMP formats are supported. When uploading images on the ModelArts console, ensure that the size of an image does not exceed 5 MB and the total size of images to be uploaded in one attempt does not exceed 8 MB. If the data volume is large, use OBS Browser+ to upload images.
    • A label name can contain a maximum of 32 characters, including letters, digits, hyphens (-), and underscores (_). -.. _modelarts_21_0009__en-us_topic_0284258838_en-us_topic_0169446158_table18220153119617: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Table 1 PASCAL VOC format description

      Field

      -

      Mandatory

      -

      Description

      -

      folder

      -

      Yes

      -

      Directory where the data source is located

      -

      filename

      -

      Yes

      -

      Name of the file to be labeled

      -

      size

      -

      Yes

      -

      Image pixel

      -
      • width: image width. This parameter is mandatory.
      • height: image height. This parameter is mandatory.
      • depth: number of image channels. This parameter is mandatory.
      -

      segmented

      -

      Yes

      -

      Segmented or not

      -

      object

      -

      Yes

      -

      Object detection information. Multiple object{} functions are generated for multiple objects.

      -
      • name: class of the labeled object. This parameter is mandatory.
      • pose: shooting angle of the labeled object. This parameter is mandatory.
      • truncated: whether the labeled object is truncated (0 indicates that the object is not truncated). This parameter is mandatory.
      • occluded: whether the labeled object is occluded (0 indicates that the object is not occluded). This parameter is mandatory.
      • difficult: whether the labeled object is difficult to identify (0 indicates that the object is easy to identify). This parameter is mandatory.
      • confidence: confidence score of the labeled object. The value range is 0 to 1. This parameter is optional.
      • bndbox: bounding box type. This parameter is mandatory. For details about the possible values, see Table 2.
      -
      - - -.. _modelarts_21_0009__en-us_topic_0284258838_en-us_topic_0169446158_table102211311866: - - - - - - - - - - - -
      Table 2 Description of bounding box types

      type

      -

      Shape

      -

      Labeling Information

      -

      bndbox

      -

      Rectangle

      -

      Coordinates of the upper left and lower right points

      -

      <xmin>100<xmin>

      -

      <ymin>100<ymin>

      -

      <xmax>200<xmax>

      -

      <ymax>200<ymax>

      -
      - -Example of the label file in KITTI format:
      <annotation>
      -   <folder>test_data</folder>
      -   <filename>260730932.jpg</filename>
      -   <size>
      -       <width>767</width>
      -       <height>959</height>
      -       <depth>3</depth>
      -   </size>
      -   <segmented>0</segmented>
      -   <object>
      -       <name>bag</name>
      -       <pose>Unspecified</pose>
      -       <truncated>0</truncated>
      -       <occluded>0</occluded>
      -       <difficult>0</difficult>
      -       <bndbox>
      -           <xmin>108</xmin>
      -           <ymin>101</ymin>
      -           <xmax>251</xmax>
      -           <ymax>238</ymax>
      -       </bndbox>
      -   </object>
      -</annotation>
      - -
    -
- - - - -Parent topic: Object Detection - - - diff --git a/modelarts/umn/temp/publishing_a_dataset.tmp b/modelarts/umn/temp/publishing_a_dataset.tmp deleted file mode 100644 index bba3aa32..00000000 --- a/modelarts/umn/temp/publishing_a_dataset.tmp +++ /dev/null @@ -1,77 +0,0 @@ - - -

Publishing a Dataset

-

ModelArts distinguishes data of the same source according to versions labeled at different time, which facilitates the selection of dataset versions during subsequent model building and development. After labeling the data, you can publish the dataset to generate a new dataset version.

-

About Dataset Versions

  • For a newly created dataset (before publishing), there is no dataset version information. The dataset must be published before being used for model development or training.
  • The default naming rules of dataset versions are V001 and V002 in ascending order. You can customize the version number during publishing.
  • You can set any version to the current directory. Then the details of the version are displayed on the dataset details page.
  • You can obtain the dataset in the manifest file format corresponding to each dataset version based on the value of Storage Path. The dataset can be used when you import data or filter hard examples.
  • The version of a table dataset cannot be changed.
- -

Publishing a Dataset

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, click Publish in the Operation column.

    Alternatively, you can click the dataset name to go to the Dashboard tab page of the dataset, and click Publish in the upper right corner.

    -
  3. In the displayed dialog box, set the parameters and click OK. -.. _modelarts_23_0018__en-us_topic_0170886812_table856411819131: - - - - - - - - - - - - - - - - - - -
    Table 1 Parameters for publishing a dataset

    Parameter

    -

    Description

    -

    Version Name

    -

    The naming rules of V001 and V002 in ascending order are used by default. A version name can be customized. Only letters, digits, hyphens (-), and underscores (_) are allowed.

    -

    Format

    -

    -

    Only table datasets support version format setting. Available values are CSV and CarbonData.

    - NOTE:

    If the exported CSV file contains any command starting with =, +, -, or @, ModelArts automatically adds the Tab setting and escapes the double quotation marks (") for security purposes.

    - -

    Splitting

    -

    Only image classification, object detection, text classification, and sound classification datasets support data splitting.

    -

    By default, this function is disabled. After this function is enabled, you need to set the training and validation ratios.

    -

    Enter a value ranging from 0 to 1 for Training Set Ratio. After the training set ratio is set, the validation set ratio is determined. The sum of the training set ratio and the validation set ratio is 1.

    -

    The training set ratio is the ratio of sample data used for model training. The validation set ratio is the ratio of the sample data used for model validation. The training and validation ratios affect the performance of training templates.

    -

    Description

    -

    Description of the current dataset version.

    -
    - -

    After the version is published, you can go to the Version Manager tab page to view the detailed information. By default, the system sets the latest version to the current directory.

    -
- -

Directory Structure of Related Files After the Dataset Is Published

Datasets are managed based on OBS directories. After a new version is published, the directory is generated based on the new version in the output dataset path.

-

Take an image classification dataset as an example. After the dataset is published, the directory structure of related files generated in OBS is as follows:

-
|-- user-specified-output-path
-    |-- DatasetName-datasetId
-        |-- annotation
-            |-- VersionMame1
-                |-- VersionMame1.manifest
-            |-- VersionMame2
-                ...
-            |-- ...
-

The following uses object detection as an example. If a manifest file is imported to the dataset, the following provides the directory structure of related files after the dataset is published:

-
|-- user-specified-output-path 
-    |-- DatasetName-datasetId 
-        |-- annotation 
-            |-- VersionMame1 
-                |-- VersionMame1.manifest 
-                |-- annotation
-                   |-- file1.xml 
-            |-- VersionMame2
-                ...
-            |-- ...
- - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/pyspark.tmp b/modelarts/umn/temp/pyspark.tmp deleted file mode 100644 index 30a0fc08..00000000 --- a/modelarts/umn/temp/pyspark.tmp +++ /dev/null @@ -1,151 +0,0 @@ - - -

PySpark

-

Training and Saving a Model

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
from pyspark.ml import Pipeline, PipelineModel
-from pyspark.ml.linalg import Vectors
-from pyspark.ml.classification import LogisticRegression
-
-# Prepare training data using tuples.
-# Prepare training data from a list of (label, features) tuples.
-training = spark.createDataFrame([
-    (1.0, Vectors.dense([0.0, 1.1, 0.1])),
-    (0.0, Vectors.dense([2.0, 1.0, -1.0])),
-    (0.0, Vectors.dense([2.0, 1.3, 1.0])),
-    (1.0, Vectors.dense([0.0, 1.2, -0.5]))], ["label", "features"])
-
-# Create a training instance. The logistic regression algorithm is used for training.
-# Create a LogisticRegression instance. This instance is an Estimator.
-lr = LogisticRegression(maxIter=10, regParam=0.01)
-
-# Train the logistic regression model.
-# Learn a LogisticRegression model. This uses the parameters stored in lr.
-model = lr.fit(training)
-
-# Save the model to a local directory.
-# Save model to local path.
-model.save("/tmp/spark_model")
-
-
-

After the model is saved, it must be uploaded to the OBS directory before being published. The config.json configuration and customize_service.py must be contained during publishing. For details about the definition method, see Model Package Specifications.

- -

Inference Code

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
# coding:utf-8
-import collections
-import json
-import traceback
-
-import model_service.log as log
-from model_service.spark_model_service import SparkServingBaseService
-from pyspark.ml.classification import LogisticRegression
-
-logger = log.getLogger(__name__)
-
-
-class user_Service(SparkServingBaseService):
-    # Pre-process data.
-    def _preprocess(self, data):
-        logger.info("Begin to handle data from user data...")
-        # Read data.
-        req_json = json.loads(data, object_pairs_hook=collections.OrderedDict)
-        try:
-            # Convert data to the spark dataframe format.
-            predict_spdf = self.spark.createDataFrame(pd.DataFrame(req_json["data"]["req_data"]))
-        except Exception as e:
-            logger.error("check your request data does meet the requirements ?")
-            logger.error(traceback.format_exc())
-            raise Exception("check your request data does meet the requirements ?")
-        return predict_spdf
-
-    # Perform model inference.
-    def _inference(self, data):
-        try:
-             # Load a model file.
-            predict_model = LogisticRegression.load(self.model_path)
-            # Perform data inference.
-            prediction_result = predict_model.transform(data)
-	except Exception as e:
-            logger.error(traceback.format_exc())
-            raise Exception("Unable to load model and do dataframe transformation.")
-        return prediction_result
-
-    # Post-process data.
-    def _postprocess(self, pre_data):
-        logger.info("Get new data to respond...")
-        predict_str = pre_data.toPandas().to_json(orient='records')
-        predict_result = json.loads(predict_str)
-        return predict_result
-
-
- - - - -Parent topic: Examples of Custom Scripts - - - diff --git a/modelarts/umn/temp/pytorch-py36_general_template.tmp b/modelarts/umn/temp/pytorch-py36_general_template.tmp deleted file mode 100644 index b75bb8d4..00000000 --- a/modelarts/umn/temp/pytorch-py36_general_template.tmp +++ /dev/null @@ -1,32 +0,0 @@ - - -

PyTorch-py36 General Template

-

Introduction

AI engine: PyTorch 1.0; Environment: Python 3.6; Input and output mode: undefined mode. Select an appropriate input and output mode based on the model function or application scenario. When using the template to import a model, select the model directory containing the model files.

- -

Template Input

The template input is the PyTorch-based model package stored on OBS. Ensure that the OBS directory you use and ModelArts are in the same region. For details about model package requirements, see Model Package Example.

- -

Input and Output Mode

Undefined Mode can be overwritten. That is, you can select another input and output mode during model creation.

- -

Model Package Specifications

  • The model package must be stored in the OBS folder named model. Model files and the model inference code file are stored in the model folder.
  • The model inference code file is optional. If the file exists, the file name must be customize_service.py. Only one inference code file can exist in the model folder. For details about how to compile the model inference code file, see Specifications for Compiling Model Inference Code.
-
  • The structure of the model package imported using the template is as follows:
    model/
    -│
    -├── Model file                 //(Mandatory) The model file format varies according to the engine. For details, see the model package example.
    -├── Custom Python package           //(Optional) User's Python package, which can be directly referenced in the model inference code
    -├── customize_service.py  //(Optional) Model inference code file. The file name must be customize_service.py. Otherwise, the code is not considered as inference code.
    -
- -

Model Package Example

Structure of the PyTorch-based model package

-

When publishing the model, you only need to specify the model directory.

-
OBS bucket/directory name
-|── model    (Mandatory) The folder must be named model and is used to store model-related files.
-   ├── <<Custom Python package>>     (Optional) User's Python package, which can be directly referenced in the model inference code
-   ├── resnet50.pth           (Mandatory) PyTorch model file, which contains variable and weight information
-   ├──customize_service.py    (Optional) Model inference code file. The file must be named customize_service.py. Only one inference code file exists. The .py file on which customize_service.py depends can be directly put in the model directory.
- - - - -Parent topic: Template Description - - - diff --git a/modelarts/umn/temp/pytorch.tmp b/modelarts/umn/temp/pytorch.tmp deleted file mode 100644 index 7bd784d4..00000000 --- a/modelarts/umn/temp/pytorch.tmp +++ /dev/null @@ -1,380 +0,0 @@ - - -

PyTorch

-

Training a Model

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
from __future__ import print_function
-import argparse
-import torch
-import torch.nn as nn
-import torch.nn.functional as F
-import torch.optim as optim
-from torchvision import datasets, transforms
-
-# Define a network structure.
-class Net(nn.Module):
-    def __init__(self):
-        super(Net, self).__init__()
-# The second dimension of the input must be 784.
-        self.hidden1 = nn.Linear(784, 5120, bias=False)
-        self.output = nn.Linear(5120, 10, bias=False)
-
-    def forward(self, x):
-        x = x.view(x.size()[0], -1)
-        x = F.relu((self.hidden1(x)))
-        x = F.dropout(x, 0.2)
-        x = self.output(x)
-        return F.log_softmax(x)
-
-def train(model, device, train_loader, optimizer, epoch):
-    model.train()
-    for batch_idx, (data, target) in enumerate(train_loader):
-        data, target = data.to(device), target.to(device)
-        optimizer.zero_grad()
-        output = model(data)
-        loss = F.cross_entropy(output, target)
-        loss.backward()
-        optimizer.step()
-        if batch_idx % 10 == 0:
-            print('Train Epoch: {} [{}/{} ({:.0f}%)]\tLoss: {:.6f}'.format(
-                epoch, batch_idx * len(data), len(train_loader.dataset),
-                       100. * batch_idx / len(train_loader), loss.item()))
-
-def test( model, device, test_loader):
-    model.eval()
-    test_loss = 0
-    correct = 0
-    with torch.no_grad():
-        for data, target in test_loader:
-            data, target = data.to(device), target.to(device)
-            output = model(data)
-            test_loss += F.nll_loss(output, target, reduction='sum').item()  # sum up batch loss
-            pred = output.argmax(dim=1, keepdim=True)  # get the index of the max log-probability
-            correct += pred.eq(target.view_as(pred)).sum().item()
-
-    test_loss /= len(test_loader.dataset)
-
-    print('\nTest set: Average loss: {:.4f}, Accuracy: {}/{} ({:.0f}%)\n'.format(
-        test_loss, correct, len(test_loader.dataset),
-        100. * correct / len(test_loader.dataset)))
-
-device = torch.device("cpu")
-
-batch_size=64
-
-kwargs={}
-
-train_loader = torch.utils.data.DataLoader(
-    datasets.MNIST('.', train=True, download=True,
-                   transform=transforms.Compose([
-                       transforms.ToTensor()
-                   ])),
-    batch_size=batch_size, shuffle=True, **kwargs)
-test_loader = torch.utils.data.DataLoader(
-    datasets.MNIST('.', train=False, transform=transforms.Compose([
-        transforms.ToTensor()
-    ])),
-    batch_size=1000, shuffle=True, **kwargs)
-
-model = Net().to(device)
-optimizer = optim.SGD(model.parameters(), lr=0.01, momentum=0.5)
-optimizer = optim.Adam(model.parameters())
-
-for epoch in range(1, 2 + 1):
-    train(model, device, train_loader, optimizer, epoch)
-    test(model, device, test_loader)
-
-
- -

Saving a Model

1
-2
# The model must be saved using state_dict and can be deployed remotely.
-torch.save(model.state_dict(), "pytorch_mnist/mnist_mlp.pt")
-
-
- -

Inference Code

  1
-  2
-  3
-  4
-  5
-  6
-  7
-  8
-  9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
-100
from PIL import Image
-import log
-from model_service.pytorch_model_service import PTServingBaseService
-import torch.nn.functional as F
-
-import torch.nn as nn
-import torch
-import json
-
-import numpy as np
-
-logger = log.getLogger(__name__)
-
-import torchvision.transforms as transforms
-
-# Define model preprocessing.
-infer_transformation = transforms.Compose([
-    transforms.Resize((28,28)),
-    # Transform to a PyTorch tensor.
-    transforms.ToTensor()
-])
-
-
-import os
-
-
-class PTVisionService(PTServingBaseService):
-
-    def __init__(self, model_name, model_path):
-        # Call the constructor of the parent class.
-        super(PTVisionService, self).__init__(model_name, model_path)
-        # Call the customized function to load the model.
-        self.model = Mnist(model_path)
-         # Load tags.
-        self.label = [0,1,2,3,4,5,6,7,8,9]
-        # Labels can also be loaded by label file.
-        # Store the label.json file in the model directory. The following information is read:
-        dir_path = os.path.dirname(os.path.realpath(self.model_path))
-        with open(os.path.join(dir_path, 'label.json')) as f:
-            self.label = json.load(f)
-
-
-    def _preprocess(self, data):
-
-        preprocessed_data = {}
-        for k, v in data.items():
-            input_batch = []
-            for file_name, file_content in v.items():
-                with Image.open(file_content) as image1:
-                    # Gray processing
-                    image1 = image1.convert("L")
-                    if torch.cuda.is_available():
-                        input_batch.append(infer_transformation(image1).cuda())
-                    else:
-                        input_batch.append(infer_transformation(image1))
-            input_batch_var = torch.autograd.Variable(torch.stack(input_batch, dim=0), volatile=True)
-            print(input_batch_var.shape)
-            preprocessed_data[k] = input_batch_var
-
-        return preprocessed_data
-
-    def _postprocess(self, data):
-        results = []
-        for k, v in data.items():
-            result = torch.argmax(v[0])
-            result = {k: self.label[result]}
-            results.append(result)
-        return results
-
-class Net(nn.Module):
-    def __init__(self):
-        super(Net, self).__init__()
-        self.hidden1 = nn.Linear(784, 5120, bias=False)
-        self.output = nn.Linear(5120, 10, bias=False)
-
-    def forward(self, x):
-        x = x.view(x.size()[0], -1)
-        x = F.relu((self.hidden1(x)))
-        x = F.dropout(x, 0.2)
-        x = self.output(x)
-        return F.log_softmax(x)
-
-
-
-def Mnist(model_path, **kwargs):
-    # Generate a network.
-    model = Net()
-    # Load the model.
-    if torch.cuda.is_available():
-        device = torch.device('cuda')
-        model.load_state_dict(torch.load(model_path, map_location="cuda:0"))
-    else:
-        device = torch.device('cpu')
-        model.load_state_dict(torch.load(model_path, map_location=device))
-    # CPU or GPU mapping
-    model.to(device)
-    # Declare an inference mode.
-    model.eval()
-
-    return model
-
-
- - - - -Parent topic: Examples of Custom Scripts - - - diff --git a/modelarts/umn/temp/real-time_services.tmp b/modelarts/umn/temp/real-time_services.tmp deleted file mode 100644 index a3af1f3b..00000000 --- a/modelarts/umn/temp/real-time_services.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Real-Time Services

- - - - - -Parent topic: Model Deployment - - - diff --git a/modelarts/umn/temp/related_services.tmp b/modelarts/umn/temp/related_services.tmp deleted file mode 100644 index 53034b91..00000000 --- a/modelarts/umn/temp/related_services.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Related Services

-

OBS

ModelArts uses Object Storage Service (OBS) to store data and model backups and snapshots. OBS provides secure, reliable, low-cost storage. For more details, see Object Storage Service Console Function Overview.

- -

CCE

ModelArts uses Cloud Container Engine (CCE) to deploy models as real-time services. CCE enables high concurrency and provides elastic scaling. For more information about CCE, see Cloud Container Engine User Guide.

- -

SWR

To use an AI framework that is not supported by ModelArts, use SoftWare Repository for Container (SWR) to customize an image and import the image to ModelArts for training or inference. For more details, see .

- -

Cloud Eye

ModelArts uses Cloud Eye to monitor online services and model loads in real time and send alarms and notifications automatically. For details about Cloud Eye, see Cloud Eye User Guide.

- - - - -Parent topic: Service Overview - - - diff --git a/modelarts/umn/temp/resource_pools.tmp b/modelarts/umn/temp/resource_pools.tmp deleted file mode 100644 index 8e1588e0..00000000 --- a/modelarts/umn/temp/resource_pools.tmp +++ /dev/null @@ -1,115 +0,0 @@ - - -

Resource Pools

-

ModelArts Resource Pools

When using ModelArts to implement AI Development Lifecycle, you can use two different resource pools to train and deploy models.

- - -

Dedicated Resource Pool

  • Dedicated resource pools can be used in the following jobs and tasks: notebook instances, training, TensorBoard, and deployment.
  • Dedicated resource pools are classified into two types: Dedicated for Development/Training and Dedicated for Service Deployment. The Dedicated for Development/Training type can be used only for notebook instances, training, and TensorBoard. The Dedicated for Service Deployment type can be used only for model deployment.
  • Dedicated resource pools are available only when they are in the Running status. If a dedicated resource pool is unavailable or abnormal, rectify the fault before using it.
- -

Creating a Dedicated Resource Pool

  1. Log in to the ModelArts management console and choose Dedicated Resource Pools on the left.
  2. On the Dedicated Resource Pools page, select Dedicated for Development/Training or Dedicated for Service Deployment.
  3. Click Create in the upper left corner. The page for creating a dedicated resource pool is displayed.
  4. Set the parameters on the page. For details about how to set parameters, see Table 1 and Table 2. -.. _modelarts_23_0076__en-us_topic_0143244658_table1073325155617: - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameters of the Dedicated for Development/Training type

    Parameter

    -

    Description

    -

    Resource Type

    -

    The default value is and cannot be changed.

    -

    Name

    -

    Name of a dedicated resource pool.

    -

    The value can contain letters, digits, hyphens (-), and underscores (_).

    -

    Description

    -

    Brief description of a dedicated resource pool.

    -

    Nodes

    -

    Select the number of nodes in a dedicated resource pool. More nodes mean higher computing performance.

    -

    Specifications

    -

    Required specifications. The GPU delivers better performance, and the CPU is more cost-effective. If a flavor is sold out, you can purchase it again only after other users delete the resource pool.

    -
    - - -.. _modelarts_23_0076__en-us_topic_0143244658_table199892206411: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 2 Parameters of the Dedicated for Service Deployment type

    Parameter

    -

    Description

    -

    Resource Type

    -

    The default value is Dedicated for Service Deployment and cannot be changed.

    -

    Name

    -

    Name of a dedicated resource pool.

    -

    The value can contain letters, digits, hyphens (-), and underscores (_).

    -

    Description

    -

    Brief description of a dedicated resource pool.

    -

    Custom Network Configuration

    -

    If you enable Custom Network Configuration, the service instance runs on the specified network and can communicate with other cloud service resource instances on the network. If you do not enable Custom Network Configuration, ModelArts allocates a dedicated network to each user and isolates users from each other.

    -

    If you enable Custom Network Configuration, set VPC, Subnet, and Security Group. If no network is available, go to the VPC service and create a network. .

    -

    AZ

    -

    You can select Random, AZ 1, AZ 2, or AZ 3 based on site requirements. An AZ is a physical region where resources use independent power supplies and networks. AZs are physically isolated but interconnected through an internal network. To enhance workload availability, create nodes in different AZs.

    -

    Nodes

    -

    Select the number of nodes in a dedicated resource pool. More nodes mean higher computing performance.

    -

    Specifications

    -

    Required specifications. The GPU delivers better performance.

    - -
    - -
  5. After confirming that the specifications are correct, create a dedicated resource pool as prompted. After a dedicated resource pool is created, its status changes to Running.
- -

Scaling a Dedicated Resource Pool

After a dedicated resource pool is used for a period of time, you can scale out or in the capacity of the resource pool by increasing or decreasing the number of nodes.

-

The procedure for scaling is as follows:

-
  1. Go to the dedicated resource pool management page, locate the row that contains the desired dedicated resource pool, and click Scale in the Operation column.
  2. On the scaling page, increase or decrease the number of nodes. Increasing the node quantity scales out the resource pool whereas decreasing the node quantity scales in the resource pool. Scale the capacity based on service requirements.
    • During capacity expansion,
    • During capacity reduction, delete the target nodes in the Operation column. To reduce one node, you need to switch off the node in Node List to delete the node.
    -
  3. Click Submit. After the request is submitted, the dedicated resource pool management page is displayed.
- -

Deleting a Dedicated Resource Pool

If a dedicated resource pool is no longer needed during AI service development, you can delete the resource pool to release resources.

-
  • After a dedicated resource pool is deleted, the training jobs, notebook instances, and deployment that depend on the resource pool are unavailable. A dedicated resource pool cannot be restored after being deleted. Exercise caution when deleting a dedicated resource pool.
- -
  1. Go to the dedicated resource pool management page, locate the row that contains the desired dedicated resource pool, and click Delete in the Operation column.
  2. In the dialog box that is displayed, click OK.
- - - diff --git a/modelarts/umn/temp/scikit_learn.tmp b/modelarts/umn/temp/scikit_learn.tmp deleted file mode 100644 index 3673de18..00000000 --- a/modelarts/umn/temp/scikit_learn.tmp +++ /dev/null @@ -1,107 +0,0 @@ - - -

Scikit Learn

-

Training and Saving a Model

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
import json
-import pandas as pd
-from sklearn.datasets import load_iris
-from sklearn.model_selection import train_test_split
-from sklearn.linear_model import LogisticRegression
-from sklearn.externals import joblib
-iris = pd.read_csv('/data/iris.csv')
-X = iris.drop(['virginica'],axis=1)
-y = iris[['virginica']]
-# Create a LogisticRegression instance and train model
-logisticRegression = LogisticRegression(C=1000.0, random_state=0)
-logisticRegression.fit(X,y)
-# Save model to local path
-joblib.dump(logisticRegression, '/tmp/sklearn.m')
-
-
-

After the model is saved, it must be uploaded to the OBS directory before being published. The config.json and customize_service.py files must be contained during publishing. For details about the definition method, see Model Package Specifications.

- -

Inference Code

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
# coding:utf-8
-import collections
-import json
-from sklearn.externals import joblib
-from model_service.python_model_service import XgSklServingBaseService
-
-class user_Service(XgSklServingBaseService):
-
-    # request data preprocess
-    def _preprocess(self, data):
-        list_data = []
-        json_data = json.loads(data, object_pairs_hook=collections.OrderedDict)
-        for element in json_data["data"]["req_data"]:
-            array = []
-            for each in element:
-                array.append(element[each])
-                list_data.append(array)
-        return list_data
-
-    # predict
-    def _inference(self, data):
-        sk_model = joblib.load(self.model_path)
-        pre_result = sk_model.predict(data)
-        pre_result = pre_result.tolist()
-        return pre_result
-
-    # predict result process
-    def _postprocess(self,data):
-        resp_data = []
-        for element in data:
-            resp_data.append({"predictresult": element})
-        return resp_data
-
-
- - - - -Parent topic: Examples of Custom Scripts - - - diff --git a/modelarts/umn/temp/service_deployment.tmp b/modelarts/umn/temp/service_deployment.tmp deleted file mode 100644 index 484352a5..00000000 --- a/modelarts/umn/temp/service_deployment.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

Service Deployment

- - - - - -Parent topic: FAQs - - - diff --git a/modelarts/umn/temp/service_overview.tmp b/modelarts/umn/temp/service_overview.tmp deleted file mode 100644 index 1aa8c775..00000000 --- a/modelarts/umn/temp/service_overview.tmp +++ /dev/null @@ -1,26 +0,0 @@ - - - -

Service Overview

- - -

- - - - - - - - diff --git a/modelarts/umn/temp/setting_alarm_rules.tmp b/modelarts/umn/temp/setting_alarm_rules.tmp deleted file mode 100644 index 48d7666a..00000000 --- a/modelarts/umn/temp/setting_alarm_rules.tmp +++ /dev/null @@ -1,17 +0,0 @@ - - -

Setting Alarm Rules

-

Scenario

Setting alarm rules allows you to customize the monitored objects and notification policies so that you can know the status of ModelArts real-time services and models in a timely manner.

-

An alarm rule includes the alarm rule name, monitored object, metric, threshold, monitoring interval, and whether to send a notification. This section describes how to set alarm rules for ModelArts services and models.

- -

Prerequisites

You have created an ModelArts real-time service.

- -

Procedure

  1. Log in to the management console.
  2. Click Service List. Under Management & Deployment, click Cloud Eye.
  3. In the left navigation pane, choose Cloud Service Monitoring > ModelArts.
  4. Select a real-time service for which you want to create an alarm rule and click Create Alarm Rule in the Operation column.
  5. On the Create Alarm Rule page, create an alarm rule for ModelArts real-time services and models as prompted.
  6. After the setting is complete, click Create. When an alarm that meets the rule is generated, the system automatically sends a notification.
- - - - -Parent topic: Monitoring - - - diff --git a/modelarts/umn/temp/sound_classification.tmp b/modelarts/umn/temp/sound_classification.tmp deleted file mode 100644 index 514b9a77..00000000 --- a/modelarts/umn/temp/sound_classification.tmp +++ /dev/null @@ -1,49 +0,0 @@ - - -

Sound Classification

-

Model training requires a large amount of labeled data. Therefore, before the model training, label the unlabeled audio files. ModelArts enables you to label audio files in batches by one click. In addition, you can modify the labels of audio files, or remove their labels and label the audio files again.

-

Starting Labeling

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset to be labeled based on the labeling type, and click the dataset name to go to the Dashboard tab page of the dataset.

    By default, the Dashboard tab page of the current dataset version is displayed. If you need to label the dataset of another version, click the Versions tab and then click Set to Current Version in the right pane. For details, see Managing Dataset Versions.

    -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed. By default, all data of the dataset is displayed on the dataset details page.
- -

Synchronizing the Data Source

ModelArts automatically synchronizes data and labeling information from Input Dataset Path to the dataset details page.

-

To quickly obtain the latest data in the OBS bucket, click Synchronize Data Source on the Unlabeled tab page of the dataset details page to add the data uploaded using OBS to the dataset.

- -

Labeling Audio Files

The dataset details page displays the labeled and unlabeled audio files. The Unlabeled tab page is displayed by default. Click on the left of the audio to preview the audio.

-
  1. On the Unlabeled tab page, select the audio files to be labeled.
    • Manual selection: In the audio list, click the target audio. If the blue check box is displayed in the upper right corner, the audio is selected. You can select multiple audio files of the same type and label them together.
    • Batch selection: If all audio files of the current page belong to one type, you can click Select Images on Current Page in the upper right corner of the list to select all the audio files on the page.
    -
  2. Add labels.
    1. In the right pane, set a label name in the Label text box.

      Method 1 (the required label already exists): In the right pane, select a shortcut from the Shortcut drop-down list, select an existing label name from the Label text box, and click OK.

      -

      Method 2 (adding a label): In the right pane, select a shortcut from the Shortcut drop-down list, and enter a new label name in the Label text box.

      -
    2. The selected audio files are automatically moved to the Labeled tab page. On the Unlabeled tab page, the labeling information is updated along with the labeling process, including the added label names and the number of audio files corresponding to each label.
    -

    Shortcut key description: After specifying a shortcut key for a label, you can select an audio file and press the shortcut key to add a label for the audio file. Example: Specify 1 as the shortcut key for the aa label. Select one or more files and press 1 during data labeling. A message is displayed, asking you whether to label the files with aa. Click OK.

    -

    Each label has a shortcut key. A shortcut key cannot be specified for different labels. Shortcut keys can greatly improve the labeling efficiency.

    - -
- -

Viewing the Labeled Audio Files

On the dataset details page, click the Labeled tab to view the list of the labeled audio files. Click an audio file. You can view the label information about the audio file in the File Labels area on the right.

- -

Modifying Labels

After labeling data, you can modify labeled data on the Labeled tab page.

-
  • Modifying based on audio

    On the data labeling page, click the Labeled tab. Select one or more audio files to be modified from the audio list. Modify the label in the label details area on the right.

    -
    • Modifying a label: In the File Labels area, click the edit icon in the Operation column, enter the correct label name in the text box, and click the check mark to complete the modification.
    • Deleting a label: In the File Labels area, click the delete icon in the Operation column to delete the label.
    -
-
  • Modifying based on labels

    On the dataset details page, click the Labeled tab. The information about all labels is displayed on the right.

    -Figure 1 Information about all labels
    -
    • Modifying a label: Click the editing icon in the Operation column. In the dialog box that is displayed, enter the new label name and click OK. After the modification, the new label applies to the audio files that contain the original label.
    • Deleting a label: Click the deletion icon in the Operation column. In the displayed dialog box, select the object to be deleted as prompted and click OK.
    -
- -

Adding Audio Files

In addition to automatically synchronizing data from Input Dataset Path, you can directly add audio files on ModelArts for data labeling.

-
  1. On the dataset details page, click the Unlabeled tab. Then click Add Audio in the upper left corner.
  2. In the Add Audio dialog box that is displayed, click Add Audio.

    Select the audio files to be uploaded in the local environment. Only WAV audio files are supported. The size of an audio file cannot exceed 4 MB. The total size of audio files uploaded at a time cannot exceed 8 MB.

    -
  3. In the Add Audio dialog box, click OK.

    The audio files you add will be automatically displayed on the Unlabeled tab page. In addition, the audio files are automatically saved to the OBS directory specified by Input Dataset Path.

    -
- -

Deleting Audio Files

You can quickly delete the audio files you want to discard.

-

On the Unlabeled or Labeled tab page, select the audio files to be deleted one by one or tick Select Images on Current Page to select all audio files on the page, and then click Delete File in the upper left corner. In the displayed dialog box, select or deselect Delete source files as required. After confirmation, click OK to delete the audio files.

-

If a tick is displayed in the upper right corner of an audio file, the audio file is selected. If no audio file is selected on the page, the Delete File button is unavailable.

-

If you select Delete source files, audio files stored in the corresponding OBS directory will be deleted when you delete the selected audio files. Deleting source files may affect other dataset versions or datasets using those files. As a result, the page display, training, or inference is abnormal. Deleted data cannot be recovered. Exercise caution when performing this operation.

- - - - - -Parent topic: Labeling Data - - - diff --git a/modelarts/umn/temp/specifications_for_compiling_model_inference_code.tmp b/modelarts/umn/temp/specifications_for_compiling_model_inference_code.tmp deleted file mode 100644 index 9d4dd9f1..00000000 --- a/modelarts/umn/temp/specifications_for_compiling_model_inference_code.tmp +++ /dev/null @@ -1,671 +0,0 @@ - - -

Specifications for Compiling Model Inference Code

-

This section describes how to compile model inference code in ModelArts. The following also provides an example of inference code for the TensorFlow engine and an example of customizing inference logic in an inference script.

-

Specifications for Compiling Inference Code

  1. All custom Python code must be inherited from the BaseService class. Table 1 lists the import statements of different types of model parent classes. -.. _modelarts_23_0093__en-us_topic_0172466150_table55021545175412: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Import statements of the BaseService class

    Model Type

    -

    Parent Class

    -

    Import Statement

    -

    TensorFlow

    -

    TfServingBaseService

    -

    from model_service.tfserving_model_service import TfServingBaseService

    -

    MXNet

    -

    MXNetBaseService

    -

    from mms.model_service.mxnet_model_service import MXNetBaseService

    -

    PyTorch

    -

    PTServingBaseService

    -

    from model_service.pytorch_model_service import PTServingBaseService

    -

    Pyspark

    -

    SparkServingBaseService

    -

    from model_service.spark_model_service import SparkServingBaseService

    -

    Caffe

    -

    CaffeBaseService

    -

    from model_service.caffe_model_service import CaffeBaseService

    -

    XGBoost

    -

    XgSklServingBaseService

    -

    from model_service.python_model_service import XgSklServingBaseService

    -

    Scikit_Learn

    -

    XgSklServingBaseService

    -

    from model_service.python_model_service import XgSklServingBaseService

    -

    MindSpore

    -

    SingleNodeService

    -

    from model_service.model_service import SingleNodeService

    -
    - -
  2. The following methods can be rewritten: -.. _modelarts_23_0093__en-us_topic_0172466150_table119897712529: - - - - - - - - - - - - - - - - - - - - - -
    Table 2 Methods to be rewritten

    Method

    -

    Description

    -

    __init__(self, model_name, model_path)

    -

    Initialization method, which is suitable for models created based on deep learning frameworks. Models and labels are loaded using this method. This method must be rewritten for models based on PyTorch and Caffe to implement the model loading logic.

    -

    __init__(self, model_path)

    -

    Initialization method, which is suitable for models created based on machine learning frameworks. The model path (self.model_path) is initialized using this method. In Spark_MLlib, this method also initializes SparkSession (self.spark).

    -

    _preprocess(self, data)

    -

    Preprocess method, which is called before an inference request and is used to convert the original request data of an API into the expected input data of a model

    -

    _inference(self, data)

    -

    Inference request method. You are not advised to rewrite the method because once the method is rewritten, the built-in inference process of ModelArts will be overwritten and the custom inference logic will run.

    -

    _postprocess(self, data)

    -

    Postprocess method, which is called after an inference request is complete and is used to convert the model output to the API output

    -
    - -
    • You can choose to rewrite the preprocess and postprocess methods to implement preprocessing of the API input and postprocessing of the inference output.
    • Rewriting the init method of the BaseService inheritance class may cause a model to run abnormally.
    - -
  3. The attribute that can be used is the local path where the model resides. The attribute name is self.model_path. In addition, PySpark-based models can use self.spark to obtain the SparkSession object in customize_service.py.

    An absolute path is required for reading files in the inference code. You can obtain the absolute path of the model from the self.model_path attribute.

    -
    • When TensorFlow, Caffe, or MXNet is used, self.model_path indicates the path of the model file. See the following example:
      # Store the label.json file in the model directory. The following information is read:
      -with open(os.path.join(self.model_path, 'label.json')) as f:
      -    self.label = json.load(f)
      -
    -
    • When PyTorch, Scikit_Learn, or PySpark is used, self.model_path indicates the path of the model file. See the following example:
      # Store the label.json file in the model directory. The following information is read:
      -dir_path = os.path.dirname(os.path.realpath(self.model_path))
      -with open(os.path.join(dir_path, 'label.json')) as f:
      -    self.label = json.load(f)
      -
    - -
  4. Two types of content-type APIs can be used for inputting data: multipart/form-data and application/json
    • multipart/form-data request
      curl -X POST \
      -  <modelarts-inference-endpoint> \
      -  -F image1=@cat.jpg \
      -  -F images2=@horse.jpg
      -

      The corresponding input data is as follows:

      -
      [
      -   {
      -      "image1":{
      -         "cat.jpg":"<cat..jpg file io>"
      -      }
      -   },
      -   {
      -      "image2":{
      -         "horse.jpg":"<horse.jpg file io>"
      -      }
      -   }
      -]
      -
    • application/json request
       curl -X POST \
      -   <modelarts-inference-endpoint> \
      -   -d '{
      -    "images":"base64 encode image"
      -    }'
      -

      The corresponding input data is python dict.

      -
       {
      -    "images":"base64 encode image"
      -
      - }
      -
    -
- -

TensorFlow Inference Script Example

The following is an example of TensorFlow MnistService.
  • Inference code
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    -24
    -25
    -26
    -27
    from PIL import Image
    -import numpy as np
    -from model_service.tfserving_model_service import TfServingBaseService
    -
    -class mnist_service(TfServingBaseService):
    -
    -    def _preprocess(self, data):
    -        preprocessed_data = {}
    -
    -        for k, v in data.items():
    -            for file_name, file_content in v.items():
    -                image1 = Image.open(file_content)
    -                image1 = np.array(image1, dtype=np.float32)
    -                image1.resize((1, 784))
    -                preprocessed_data[k] = image1
    -
    -        return preprocessed_data
    -
    -    def _postprocess(self, data):
    -
    -        infer_output = {}
    -
    -        for output_name, result in data.items():
    -
    -            infer_output["mnist_result"] = result[0].index(max(result[0]))
    -
    -        return infer_output
    -
    -
    -
  • Request
    curl -X POST \ Real-time service address \ -F images=@test.jpg
    -
  • Response
    {"mnist_result": 7}
    -
- -

The preceding code example resizes images imported to the user's form to adapt to the model input shape. The 32×32 image is read from the Pillow library and resized to 1×784 to match the model input. In subsequent processing, convert the model output into a list for the RESTful API to display.

- -

XGBoost Inference Script Example

# coding:utf-8
-import collections
-import json
-import xgboost as xgb
-from model_service.python_model_service import XgSklServingBaseService
-
-
-class user_Service(XgSklServingBaseService):
-
-    # request data preprocess
-    def _preprocess(self, data):
-        list_data = []
-        json_data = json.loads(data, object_pairs_hook=collections.OrderedDict)
-        for element in json_data["data"]["req_data"]:
-            array = []
-            for each in element:
-                array.append(element[each])
-                list_data.append(array)
-        return list_data
-
-    #   predict
-    def _inference(self, data):
-        xg_model = xgb.Booster(model_file=self.model_path)
-        pre_data = xgb.DMatrix(data)
-        pre_result = xg_model.predict(pre_data)
-        pre_result = pre_result.tolist()
-        return pre_result
-
-    # predict result process
-    def _postprocess(self, data):
-        resp_data = []
-        for element in data:
-            resp_data.append({"predict_result": element})
-        return resp_data
-

- -

Inference Script Example of the Custom Inference Logic

First, define a dependency package in the configuration file. For details, see Example of a Model Configuration File Using a Custom Dependency Package. Then, use the following code example to implement the loading and inference of the model in saved_model format.

-
  1
-  2
-  3
-  4
-  5
-  6
-  7
-  8
-  9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
# -*- coding: utf-8 -*-
-import json
-import os
-import threading
-
-import numpy as np
-import tensorflow as tf
-from PIL import Image
-
-from model_service.tfserving_model_service import TfServingBaseService
-import logging
-
-logger = logging.getLogger(__name__)
-
-
-class MnistService(TfServingBaseService):
-
-    def __init__(self, model_name, model_path):
-        self.model_name = model_name
-        self.model_path = model_path
-        self.model_inputs = {}
-        self.model_outputs = {}
-
-       # The label file can be loaded here and used in the post-processing function.
-        # Directories for storing the label.txt file on OBS and in the model package
-
-        # with open(os.path.join(self.model_path, 'label.txt')) as f:
-        #     self.label = json.load(f)
-
-        # Load the model in saved_model format in non-blocking mode to prevent blocking timeout.
-        thread = threading.Thread(target=self.get_tf_sess)
-        thread.start()
-
-    def get_tf_sess(self):
-        # Load the model in saved_model format.
-
-       # The session will be reused. Do not use the with statement.
-        sess = tf.Session(graph=tf.Graph())
-        meta_graph_def = tf.saved_model.loader.load(sess, [tf.saved_model.tag_constants.SERVING], self.model_path)
-        signature_defs = meta_graph_def.signature_def
-
-        self.sess = sess
-
-        signature = []
-
-        # only one signature allowed
-        for signature_def in signature_defs:
-            signature.append(signature_def)
-        if len(signature) == 1:
-            model_signature = signature[0]
-        else:
-            logger.warning("signatures more than one, use serving_default signature")
-            model_signature = tf.saved_model.signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY
-
-        logger.info("model signature: %s", model_signature)
-
-        for signature_name in meta_graph_def.signature_def[model_signature].inputs:
-            tensorinfo = meta_graph_def.signature_def[model_signature].inputs[signature_name]
-            name = tensorinfo.name
-            op = self.sess.graph.get_tensor_by_name(name)
-            self.model_inputs[signature_name] = op
-
-        logger.info("model inputs: %s", self.model_inputs)
-
-        for signature_name in meta_graph_def.signature_def[model_signature].outputs:
-            tensorinfo = meta_graph_def.signature_def[model_signature].outputs[signature_name]
-            name = tensorinfo.name
-            op = self.sess.graph.get_tensor_by_name(name)
-
-            self.model_outputs[signature_name] = op
-
-        logger.info("model outputs: %s", self.model_outputs)
-
-    def _preprocess(self, data):
-        # Two request modes using HTTPS
-        # 1. The request in form-data file format is as follows: data = {"Request key value":{"File name":<File io>}}
-       # 2. Request in JSON format is as follows: data = json.loads("JSON body transferred by the API")
-        preprocessed_data = {}
-
-        for k, v in data.items():
-            for file_name, file_content in v.items():
-                image1 = Image.open(file_content)
-                image1 = np.array(image1, dtype=np.float32)
-                image1.resize((1, 28, 28))
-                preprocessed_data[k] = image1
-
-        return preprocessed_data
-
-    def _inference(self, data):
-
-        feed_dict = {}
-        for k, v in data.items():
-            if k not in self.model_inputs.keys():
-                logger.error("input key %s is not in model inputs %s", k, list(self.model_inputs.keys()))
-                raise Exception("input key %s is not in model inputs %s" % (k, list(self.model_inputs.keys())))
-            feed_dict[self.model_inputs[k]] = v
-
-        result = self.sess.run(self.model_outputs, feed_dict=feed_dict)
-        logger.info('predict result : ' + str(result))
-
-        return result
-
-    def _postprocess(self, data):
-        infer_output = {"mnist_result": []}
-        for output_name, results in data.items():
-
-            for result in results:
-                infer_output["mnist_result"].append(np.argmax(result))
-
-        return infer_output
-
-    def __del__(self):
-        self.sess.close()
-
-
- -

MindSpore Inference Script Example

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
import threading
-
-import mindspore
-import mindspore.nn as nn
-import numpy as np
-import logging
-from mindspore import Tensor, context
-from mindspore.common.initializer import Normal
-from mindspore.train.serialization import load_checkpoint, load_param_into_net
-from model_service.model_service import SingleNodeService
-from PIL import Image
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.INFO)
-
-
-
-context.set_context(mode=context.GRAPH_MODE, device_target="Ascend")
-
-
-class LeNet5(nn.Cell):
-    """Lenet network structure."""
-
-    # define the operator required
-    def __init__(self, num_class=10, num_channel=1):
-        super(LeNet5, self).__init__()
-        self.conv1 = nn.Conv2d(num_channel, 6, 5, pad_mode='valid')
-        self.conv2 = nn.Conv2d(6, 16, 5, pad_mode='valid')
-        self.fc1 = nn.Dense(16 * 5 * 5, 120, weight_init=Normal(0.02))
-        self.fc2 = nn.Dense(120, 84, weight_init=Normal(0.02))
-        self.fc3 = nn.Dense(84, num_class, weight_init=Normal(0.02))
-        self.relu = nn.ReLU()
-        self.max_pool2d = nn.MaxPool2d(kernel_size=2, stride=2)
-        self.flatten = nn.Flatten()
-
-    # use the preceding operators to construct networks
-    def construct(self, x):
-        x = self.max_pool2d(self.relu(self.conv1(x)))
-        x = self.max_pool2d(self.relu(self.conv2(x)))
-        x = self.flatten(x)
-        x = self.relu(self.fc1(x))
-        x = self.relu(self.fc2(x))
-        x = self.fc3(x)
-        return x
-
-
-class mnist_service(SingleNodeService):
-    def __init__(self, model_name, model_path):
-        self.model_name = model_name
-        self.model_path = model_path
-        logger.info("self.model_name:%s self.model_path: %s", self.model_name,
-                    self.model_path)
-        self.network = None
-        # Load the model in non-blocking mode to prevent blocking timeout.
-        thread = threading.Thread(target=self.load_model)
-        thread.start()
-
-    def load_model(self):
-        logger.info("load network ... \n")
-        self.network = LeNet5()
-        ckpt_file = self.model_path + "/checkpoint_lenet_1-1_1875.ckpt"
-        logger.info("ckpt_file: %s", ckpt_file)
-        param_dict = load_checkpoint(ckpt_file)
-        load_param_into_net(self.network, param_dict)
-        logger.info("load network successfully ! \n")
-
-    def _preprocess(self, input_data):
-        preprocessed_result = {}
-        images = []
-        for k, v in input_data.items():
-            for file_name, file_content in v.items():
-                image1 = Image.open(file_content)
-                image1 = image1.resize((1, 32 * 32))
-                image1 = np.array(image1, dtype=np.float32)
-                images.append(image1)
-
-        images = np.array(images, dtype=np.float32)
-        logger.info(images.shape)
-        images.resize([len(input_data), 1, 32, 32])
-        logger.info("images shape: %s", images.shape)
-        inputs = Tensor(images, mindspore.float32)
-        preprocessed_result['images'] = inputs
-
-        return preprocessed_result
-
-    def _inference(self, preprocessed_result):
-        inference_result = self.network(preprocessed_result['images'])
-        return inference_result
-
-    def _postprocess(self, inference_result):
-        return str(inference_result)
-
-
- - - - -Parent topic: Model Package Specifications - - - diff --git a/modelarts/umn/temp/specifications_for_compiling_the_model_configuration_file.tmp b/modelarts/umn/temp/specifications_for_compiling_the_model_configuration_file.tmp deleted file mode 100644 index d6c8bf84..00000000 --- a/modelarts/umn/temp/specifications_for_compiling_the_model_configuration_file.tmp +++ /dev/null @@ -1,1354 +0,0 @@ - - -

Specifications for Compiling the Model Configuration File

-

A model developer needs to compile a configuration file when publishing a model. The model configuration file describes the model usage, computing framework, precision, inference code dependency package, and model API.

-

Configuration File Format

The configuration file is in JSON format. Table 1 describes the parameters.

- -.. _modelarts_23_0092__en-us_topic_0172466149_table7143191919436: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Parameters

Parameter

-

Mandatory

-

Data Type

-

Description

-

model_algorithm

-

Yes

-

String

-

Model algorithm, which is set by the model developer to help model users understand the usage of the model. The value must start with a letter and contain no more than 36 characters. Chinese characters and special characters (&!'\"<>=) are not allowed. Common model algorithms include image_classification (image classification), object_detection (object detection), and predict_analysis (prediction analysis).

-

model_type

-

Yes

-

String

-

Model AI engine, which indicates the computing framework used by a model. The options are TensorFlow, MXNet, Spark_MLlib, Caffe, Scikit_Learn, XGBoost, PyTorch, MindSpore, and Image.

-

Image is not a common AI framework. When model_type is set to Image, a model is imported from a custom image. In this case, swr_location is mandatory. For details about how to make Image images, see Custom Image Specifications.

-

runtime

-

No

-

String

-

Model runtime environment. Python 3.6 is used by default. The value of runtime depends on the value of model_type. If model_type is set to Image, you do not need to set runtime. If model_type is set to another frequently-used framework, select the engine and development environment. For details about the supported running environments, see Table 1.

-

If your model needs to run on a specified CPU or GPU, select the runtime based on the suffix information. If the runtime does not contain the CPU or GPU information, read the description of each runtime in Table 1.

-

swr_location

-

No

-

String

-

SWR image address.

-
  • If you import a custom image model from a container image, you do not need to set swr_location.
  • If you import a custom image model from OBS (not recommended) and set model_type to Image, you must set swr_location. swr_location indicates the address of the Docker image on SWR, indicating that the Docker image on SWR is used to publish the model.
-

metrics

-

No

-

Object

-

Model precision information, including the average value, recall rate, precision, and accuracy. For details about the metrics object structure, see Table 2.

-

This parameter is used only to display model information and is optional.

-

apis

-

No

-

api array

-

Format of the requests received and returned by a model. The value is structure data.

-

It is the RESTful API array provided by a model. For details about the API data structure, see Table 3.

-
  • When model_type is set to Image, that is, in the model scenario of a custom image, APIs with different paths can be declared in apis based on the request path exposed by the image.
  • When model_type is not Image, only one API whose request path is / can be declared in apis because the preconfigured AI engine exposes only one inference API whose request path is /.
-

dependencies

-

No

-

dependency array

-

Package on which the model inference code depends, which is structure data.

-

Model developers need to provide the package name, installation mode, and version constraints. Only the pip installation mode is supported. Table 6 describes the dependency array.

-

If the model package does not contain the customize_service.py file, you do not need to set this parameter. Dependency packages cannot be installed for custom image models.

-

health

-

No

-

health data structure

-

Configuration of an image health interface. This parameter is mandatory only when model_type is set to Image. For details about the health data structure, see Table 8.

-
- - -.. _modelarts_23_0092__en-us_topic_0172466149_table81712704511: - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 2 metrics object description

Parameter

-

Mandatory

-

Data Type

-

Description

-

f1

-

No

-

Number

-

F1 score. The value is rounded to 17 decimal places.

-

recall

-

No

-

Number

-

Recall rate. The value is rounded to 17 decimal places.

-

precision

-

No

-

Number

-

Precision. The value is rounded to 17 decimal places.

-

accuracy

-

No

-

Number

-

Accuracy. The value is rounded to 17 decimal places.

-
- - -.. _modelarts_23_0092__en-us_topic_0172466149_table1683418482455: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 3 api array

Parameter

-

Mandatory

-

Data Type

-

Description

-

protocol

-

No

-

String

-

Request protocol. The default value is http. Set the parameter value to http or https based on your custom image. For details about other parameter, see Example of the Object Detection Model Configuration File.

-

url

-

No

-

String

-

Request path. The default value is a slash (/). For a custom image model (model_type is Image), set this parameter to the actual request path exposed in the image. For a non-custom image model (model_type is not Image), the URL can only be /.

-

method

-

No

-

String

-

Request method. The default value is POST.

-

request

-

No

-

Object

-

Request body. For details about the request structure, see Table 4.

-

response

-

No

-

Object

-

Response body. For details about the response structure, see Table 5.

-
- - -.. _modelarts_23_0092__en-us_topic_0172466149_table332913335466: - - - - - - - - - - - - - - - - - - -
Table 4 request description

Parameter

-

Mandatory

-

Data Type

-

Description

-

Content-type

-

Yes for real-time services

-

No for batch services

-

String

-

Data is sent in a specified content format. The default value is application/json.

-

The options are as follows:

-
  • application/json: sends JSON data.
  • multipart/form-data: uploads a file.
- NOTE:

For machine learning models, only application/json is supported.

- -

data

-

Yes for real-time services

-

No for batch services

-

String

-

The request body is described in JSON schema.

-
- - -.. _modelarts_23_0092__en-us_topic_0172466149_table17521240184711: - - - - - - - - - - - - - - - - - - -
Table 5 response description

Parameter

-

Mandatory

-

Data Type

-

Description

-

Content-type

-

Yes for real-time services

-

No for batch services

-

String

-

Data is sent in a specified content format. The default value is application/json.

-

The options are as follows:

-
  • application/json: sends JSON data.
  • multipart/form-data: uploads a file.
- NOTE:

For machine learning models, only application/json is supported.

- -

data

-

Yes for real-time services

-

No for batch services

-

String

-

The response body is described in JSON schema.

-
- - -.. _modelarts_23_0092__en-us_topic_0172466149_table13709813144819: - - - - - - - - - - - - - - - - - - -
Table 6 dependency array

Parameter

-

Mandatory

-

Data Type

-

Description

-

installer

-

Yes

-

String

-

Installation method. Only pip is supported.

-

packages

-

Yes

-

package array

-

Dependency package collection. For details about the package structure array, see Table 7.

-
- - -.. _modelarts_23_0092__en-us_topic_0172466149_table47885356482: - - - - - - - - - - - - - - - - - - - - - - - -
Table 7 package array

Parameter

-

Mandatory

-

Type

-

Description

-

package_name

-

Yes

-

String

-

Dependency package name. Chinese characters and special characters (&!'"<>=) are not allowed.

-

package_version

-

No

-

String

-

Dependency package version. If the dependency package does not rely on the version number, leave this field blank. Chinese characters and special characters (&!'"<>=) are not allowed.

-

restraint

-

No

-

String

-

Version restriction. This parameter is mandatory only when package_version is configured. Possible values are EXACT, ATLEAST, and ATMOST.

-
  • EXACT indicates that a specified version is installed.
  • ATLEAST indicates that the version of the installation package is not earlier than the specified version.
  • ATMOST indicates that the version of the installation package is not later than the specified version. NOTE:
    • If there are specific requirements on the version, preferentially use EXACT. If EXACT conflicts with the system installation packages, you can select ATLEAST.
    • If there is no specific requirement on the version, retain only the package_name parameter and leave restraint and package_version blank.
    - -
-
- - -.. _modelarts_23_0092__en-us_topic_0172466149_table115896191852: - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 8 health data structure description

Parameter

-

Mandatory

-

Type

-

Description

-

url

-

Yes

-

String

-

Request URL of the health check interface

-

protocol

-

No

-

String

-

Request protocol of the health check interface. Only HTTP is supported.

-

initial_delay_seconds

-

No

-

String

-

After an instance is started, a health check starts after seconds configured in initial_delay_seconds.

-

timeout_seconds

-

No

-

String

-

Health check timeout

-
- - -

Example of the Object Detection Model Configuration File

The following code uses the TensorFlow engine as an example. You can modify the model_type parameter based on the actual engine type.

-
  • Model input

    Key: images

    -

    Value: image files

    -
  • Model output
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    ```
    -{
    -    "detection_classes": [
    -        "face",
    -        "arm"
    -    ],
    -    "detection_boxes": [
    -        [
    -            33.6,
    -            42.6,
    -            104.5,
    -            203.4
    -        ],
    -        [
    -            103.1,
    -            92.8,
    -            765.6,
    -            945.7
    -        ]
    -    ],
    -    "detection_scores": [0.99, 0.73]
    -}
    -```
    -
    -
    -
  • Configuration file
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    -41
    -42
    -43
    -44
    -45
    -46
    -47
    -48
    -49
    -50
    -51
    -52
    -53
    -54
    -55
    -56
    -57
    -58
    -59
    -60
    -61
    -62
    -63
    -64
    -65
    -66
    -67
    -68
    -69
    -70
    -71
    -72
    -73
    ```
    -{
    -    "model_type": "TensorFlow",
    -    "model_algorithm": "object_detection",
    -    "metrics": {
    -        "f1": 0.345294,
    -        "accuracy": 0.462963,
    -        "precision": 0.338977,
    -        "recall": 0.351852
    -    },
    -    "apis": [{
    -        "protocol": "http",
    -        "url": "/",
    -        "method": "post",
    -        "request": {
    -            "Content-type": "multipart/form-data",
    -            "data": {
    -                "type": "object",
    -                "properties": {
    -                    "images": {
    -                        "type": "file"
    -                    }
    -                }
    -            }
    -        },
    -        "response": {
    -            "Content-type": "multipart/form-data",
    -            "data": {
    -                "type": "object",
    -                "properties": {
    -                    "detection_classes": {
    -                        "type": "array",
    -                        "items": [{
    -                            "type": "string"
    -                        }]
    -                    },
    -                    "detection_boxes": {
    -                        "type": "array",
    -                        "items": [{
    -                            "type": "array",
    -                            "minItems": 4,
    -                            "maxItems": 4,
    -                            "items": [{
    -                                "type": "number"
    -                            }]
    -                        }]
    -                    },
    -                    "detection_scores": {
    -                        "type": "array",
    -                        "items": [{
    -                            "type": "number"
    -                        }]
    -                    }
    -                }
    -            }
    -        }
    -    }],
    -    "dependencies": [{
    -        "installer": "pip",
    -        "packages": [{
    -                "restraint": "EXACT",
    -                "package_version": "1.15.0",
    -                "package_name": "numpy"
    -            },
    -            {
    -                "restraint": "EXACT",
    -                "package_version": "5.2.0",
    -                "package_name": "Pillow"
    -            }
    -        ]
    -    }]
    -}
    -```
    -
    -
    -
- -

Example of the Image Classification Model Configuration File

The following code uses the TensorFlow engine as an example. You can modify the model_type parameter based on the actual engine type.

-
  • Model input

    Key: images

    -

    Value: image files

    -
  • Model output
    1
    -2
    -3
    -4
    -5
    -6
    -7
    -8
    -9
    ```
    -{
    -    "predicted_label": "flower",
    -    "scores": [
    -       ["rose", 0.99],
    -       ["begonia", 0.01]
    -    ]
    -}
    -```
    -
    -
    -
  • Configuration file
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    -41
    -42
    -43
    -44
    -45
    -46
    -47
    -48
    -49
    -50
    -51
    -52
    -53
    -54
    -55
    -56
    -57
    -58
    -59
    -60
    -61
    -62
    -63
    -64
    -65
    -66
    -67
    -68
    -69
    ```
    -{
    -    "model_type": "TensorFlow",
    -    "model_algorithm": "image_classification",
    -    "metrics": {
    -        "f1": 0.345294,
    -        "accuracy": 0.462963,
    -        "precision": 0.338977,
    -        "recall": 0.351852
    -    },
    -    "apis": [{
    -        "protocol": "http",
    -        "url": "/",
    -        "method": "post",
    -        "request": {
    -            "Content-type": "multipart/form-data",
    -            "data": {
    -                "type": "object",
    -                "properties": {
    -                    "images": {
    -                        "type": "file"
    -                    }
    -                }
    -            }
    -        },
    -        "response": {
    -            "Content-type": "multipart/form-data",
    -            "data": {
    -                "type": "object",
    -                "properties": {
    -                    "predicted_label": {
    -                        "type": "string"
    -                    },
    -                    "scores": {
    -                        "type": "array",
    -                        "items": [{
    -                            "type": "array",
    -                            "minItems": 2,
    -                            "maxItems": 2,
    -                            "items": [
    -                                {
    -                                    "type": "string"
    -                                },
    -                                {
    -                                    "type": "number"
    -                                }
    -                            ]
    -                        }]
    -                    }
    -                }
    -            }
    -        }
    -    }],
    -    "dependencies": [{
    -        "installer": "pip",
    -        "packages": [{
    -                "restraint": "ATLEAST",
    -                "package_version": "1.15.0",
    -                "package_name": "numpy"
    -            },
    -            {
    -                "restraint": "",
    -                "package_version": "",
    -                "package_name": "Pillow"
    -            }
    -        ]
    -    }]
    -}
    -```
    -
    -
    -
- -

Example of the Predictive Analytics Model Configuration File

The following code uses the TensorFlow engine as an example. You can modify the model_type parameter based on the actual engine type.

-
  • Model input
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    -24
    -25
    -26
    ```
    -{
    -    "data": {
    -        "req_data": [
    -            {
    -                "buying_price": "high",
    -                "maint_price": "high",
    -                "doors": "2",
    -                "persons": "2",
    -                "lug_boot": "small",
    -                "safety": "low",
    -                "acceptability": "acc"
    -            },
    -            {
    -                "buying_price": "high",
    -                "maint_price": "high",
    -                "doors": "2",
    -                "persons": "2",
    -                "lug_boot": "small",
    -                "safety": "low",
    -                "acceptability": "acc"
    -            }
    -        ]
    -    }
    -}
    -```
    -
    -
    -
  • Model output
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    ```
    -{
    -    "data": {
    -        "resp_data": [
    -            {
    -                "predict_result": "unacc"
    -            },
    -            {
    -                "predict_result": "unacc"
    -            }
    -        ]
    -    }
    -}
    -```
    -
    -
    -
  • Configuration file
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    -41
    -42
    -43
    -44
    -45
    -46
    -47
    -48
    -49
    -50
    -51
    -52
    -53
    -54
    -55
    -56
    -57
    -58
    -59
    -60
    -61
    -62
    -63
    -64
    -65
    -66
    -67
    -68
    -69
    -70
    -71
    -72
    -73
    -74
    -75
    -76
    -77
    ```
    -{
    -    "model_type": "TensorFlow",
    -    "model_algorithm": "predict_analysis",
    -    "metrics": {
    -        "f1": 0.345294,
    -        "accuracy": 0.462963,
    -        "precision": 0.338977,
    -        "recall": 0.351852
    -    },
    -    "apis": [
    -        {
    -            "protocol": "http",
    -            "url": "/",
    -            "method": "post",
    -            "request": {
    -                "Content-type": "application/json",
    -                "data": {
    -                    "type": "object",
    -                    "properties": {
    -                        "data": {
    -                            "type": "object",
    -                            "properties": {
    -                                "req_data": {
    -                                    "items": [
    -                                        {
    -                                            "type": "object",
    -                                            "properties": {
    -                                            }
    -                                        }],
    -                                    "type": "array"
    -                                }
    -                            }
    -                        }
    -                    }
    -                }
    -            },
    -            "response": {
    -                "Content-type": "multipart/form-data",
    -                "data": {
    -                    "type": "object",
    -                    "properties": {
    -                        "data": {
    -                            "type": "object",
    -                            "properties": {
    -                                "resp_data": {
    -                                    "type": "array",
    -                                    "items": [
    -                                        {
    -                                            "type": "object",
    -                                            "properties": {
    -                                            }
    -                                        }]
    -                                }
    -                            }
    -                        }
    -                    }
    -                }
    -            }
    -        }],
    -    "dependencies": [
    -        {
    -            "installer": "pip",
    -            "packages": [
    -                {
    -                    "restraint": "EXACT",
    -                    "package_version": "1.15.0",
    -                    "package_name": "numpy"
    -                },
    -                {
    -                    "restraint": "EXACT",
    -                    "package_version": "5.2.0",
    -                    "package_name": "Pillow"
    -                }]
    -        }]
    -}
    -```
    -
    -
    -
- -

Example of the Custom Image Model Configuration File

The model input and output are similar to those in Example of the Object Detection Model Configuration File.

-
 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
{
-    "model_algorithm": "image_classification",
-    "model_type": "Image",
-
-    "metrics": {
-        "f1": 0.345294,
-        "accuracy": 0.462963,
-        "precision": 0.338977,
-        "recall": 0.351852
-    },
-    "apis": [{
-        "protocol": "http",
-        "url": "/",
-        "method": "post",
-        "request": {
-            "Content-type": "multipart/form-data",
-            "data": {
-                "type": "object",
-                "properties": {
-                    "images": {
-                        "type": "file"
-                    }
-                }
-            }
-        },
-        "response": {
-            "Content-type": "multipart/form-data",
-            "data": {
-                "type": "object",
-                "required": [
-                    "predicted_label",
-                    "scores"
-                ],
-                "properties": {
-                    "predicted_label": {
-                        "type": "string"
-                    },
-                    "scores": {
-                        "type": "array",
-                        "items": [{
-                            "type": "array",
-                            "minItems": 2,
-                            "maxItems": 2,
-                            "items": [{
-                                    "type": "string"
-                                },
-                                {
-                                    "type": "number"
-                                }
-                            ]
-                        }]
-                    }
-                }
-            }
-        }
-    }]
-}
-
-
- -

Example of the Machine Learning Model Configuration File

The following uses XGBoost as an example:

-
  • Model input
-
{
-	"data": {
-		"req_data": [{
-			"sepal_length": 5,
-			"sepal_width": 3.3,
-			"petal_length": 1.4,
-			"petal_width": 0.2
-		}, {
-			"sepal_length": 5,
-			"sepal_width": 2,
-			"petal_length": 3.5,
-			"petal_width": 1
-		}, {
-			"sepal_length": 6,
-			"sepal_width": 2.2,
-			"petal_length": 5,
-			"petal_width": 1.5
-		}]
-	}
-}
-
  • Model output
-
{
-	"data": {
-		"resp_data": [{
-			"predict_result": "Iris-setosa"
-		}, {
-			"predict_result": "Iris-versicolor"
-		}]
-	}
-}
-
  • Configuration file
-
{
-  "model_type": "XGBoost",
-  "model_algorithm": "xgboost_iris_test",
-  "runtime": "python2.7",
-  "metrics": {
-    "f1": 0.345294,
-    "accuracy": 0.462963,
-    "precision": 0.338977,
-    "recall": 0.351852
-  },
-  "apis": [
-    {
-      "protocol": "http",
-      "url": "/",
-      "method": "post",
-      "request": {
-        "Content-type": "application/json",
-        "data": {
-          "type": "object",
-          "properties": {
-            "data": {
-              "type": "object",
-              "properties": {
-                "req_data": {
-                  "items": [
-                    {
-                      "type": "object",
-                      "properties": {}
-                    }
-                  ],
-                  "type": "array"
-                }
-              }
-            }
-          }
-        }
-      },
-      "response": {
-        "Content-type": "applicaton/json",
-        "data": {
-          "type": "object",
-          "properties": {
-            "resp_data": {
-              "type": "array",
-              "items": [
-                {
-                  "type": "object",
-                  "properties": {
-                    "predict_result": {
-                      "type": "number"
-                    }
-                  }
-                }
-              ]
-            }
-          }
-        }
-      }
-    }
-  ]
-}
-

- -

Example of a Model Configuration File Using a Custom Dependency Package

The following example defines the NumPy 1.16.4 dependency environment.

-
 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
{
-     "model_algorithm": "image_classification",
-     "model_type": "TensorFlow",
-     "runtime": "python3.6",
-     "apis": [{
-             "procotol": "http",
-             "url": "/",
-             "method": "post",
-             "request": {
-                 "Content-type": "multipart/form-data",
-                 "data": {
-                     "type": "object",
-                     "properties": {
-                         "images": {
-                             "type": "file"
-                         }
-                     }
-                 }
-             },
-             "response": {
-                 "Content-type": "applicaton/json",
-                 "data": {
-                     "type": "object",
-                     "properties": {
-                         "mnist_result": {
-                             "type": "array",
-             "item": [{
-                "type": "string"
-                         }]
-                         }
-                     }
-                 }
-             }
-         }
-     ],
-     "metrics": {
-         "f1": 0.124555,
-         "recall": 0.171875,
-         "precision": 0.0023493892851938493,
-         "accuracy": 0.00746268656716417
-     },
-    "dependencies": [{
-        "installer": "pip",
-        "packages": [{
-                "restraint": "EXACT",
-                "package_version": "1.16.4",
-                "package_name": "numpy"
-            }
-        ]
-    }]
- }
-
-
- - - - -Parent topic: Model Package Specifications - - - diff --git a/modelarts/umn/temp/specifications_for_custom_images_used_for_importing_models.tmp b/modelarts/umn/temp/specifications_for_custom_images_used_for_importing_models.tmp deleted file mode 100644 index 1d46fc17..00000000 --- a/modelarts/umn/temp/specifications_for_custom_images_used_for_importing_models.tmp +++ /dev/null @@ -1,45 +0,0 @@ - - -

Specifications for Custom Images Used for Importing Models

-

When creating an image using locally developed models, ensure that they meet the specifications defined by ModelArts.

-

Specifications for Custom Images Used for Model Management

  • Custom images cannot contain malicious code.
  • The size of a custom image cannot exceed 30 GB.
  • External port of images

    The external service port of the image must be 8080. The inference interface must be consistent with the URL defined by apis in the config.json file. The inference interface can be directly accessed when the image is started. The following is an example of accessing the mnist image. The image contains the model trained with the mnist dataset. The model can identify handwritten digits in images. In this example, listen_ip indicates the IP address of the container.

    -
    • Sample request: curl -X POST \ http://{listen_ip}:8080/ \ -F images=@seven.jpg
    • Sample response
      {"mnist_result": 7}
      -
    -
  • Health check port

    A custom image must provide a health check interface for ModelArts to call. The health check interface is configured in the config.json file. For details, see the model configuration file compilation description. A sample health check interface is as follows:

    -
    • URI
      GET /health
      -
    • Sample request: curl -X GET \ http://{listen_ip}:8080/health
    • Sample response
      {"health": "true"}
      -
    • Status code -.. _modelarts_23_0219__en-us_topic_0212179953_table19701134515351: - - - - - - - - - - - -
      Table 1 Status code

      Status Code

      -

      Message

      -

      Description

      -

      200

      -

      OK

      -

      Successful request

      -
      - -
    -
  • Log file output

    To ensure that the log content can be displayed normally, the logs must be standard output.

    -
  • Image boot file

    To deploy a batch service, set the boot file of an image to /home/run.sh and use CMD to set the default boot path. The following is a sample Dockerfile.

    -

    CMD /bin/sh /home/run.sh

    -
  • Image dependencies

    To deploy a batch service, install component packages such as Python, JRE/JDK, and ZIP in the image.

    -
- - - - -Parent topic: For Importing Models - - - diff --git a/modelarts/umn/temp/specifications_for_custom_images_used_for_training_jobs.tmp b/modelarts/umn/temp/specifications_for_custom_images_used_for_training_jobs.tmp deleted file mode 100644 index 789ddbc3..00000000 --- a/modelarts/umn/temp/specifications_for_custom_images_used_for_training_jobs.tmp +++ /dev/null @@ -1,127 +0,0 @@ - - -

Specifications for Custom Images Used for Training Jobs

-

When creating an image using locally developed models and training scripts, ensure that they meet the specifications defined by ModelArts.

-

Specifications

  • Custom images cannot contain malicious code.
  • Part of content in the basic images cannot be changed, including all the files in /bin, /sbin, /usr, and /lib(64), some important configuration files in /etc, and the ModelArts tools in $HOME.
  • A file cannot be added whose owner is root and has permission setuid or setgid.
  • The size of a custom image cannot exceed 9.5 GB.
-
  • To ensure that the log content can be displayed normally, the logs must be standard output.
  • The default user of a custom image must be the user whose UID is 1101.
  • Custom images can be developed based on basic ModelArts images. For details about the supported basic images, see Overview of a Basic Image Package.
  • Currently, the ModelArts backend does not support the download of open source installation packages. You are advised to install the dependency packages required for training in the custom image.
- -

Overview of a Basic Image Package

To facilitate code download, training log output, and log file upload to OBS, ModelArts provides basic image packages for creating custom images. The basic images provided by ModelArts have the following features:

-
  • Some necessary tools are available in the basic image. You need to create a custom image based on the basic images provided by ModelArts.
  • ModelArts continuously updates the basic image versions. For compatible updates, after the basic images are updated, you can still use the old images. For incompatible updates, the custom images created based on the old version cannot run on ModelArts, but the approved custom images can still be used.
  • If a custom image fails to be approved and the audit log contains an error message indicating that the basic image does not match, you need to use a new basic image to create an image.
-

Run the following command to obtain a ModelArts image:

-
docker pull <Address for obtaining a basic image>
-

After customizing an image, upload it to SWR. Make sure that you have created an organization and obtained the password for logging in to SWR. For details, see "Image Management" > "Uploading an Image Through SWR Console" in Software Repository for Container User Guide.

-
docker push  swr.<region>.xxx.com/<Organization to which the target image belongs>/<Image name>
-

Obtain basic images based on chip requirements:

- - -

CPU-based Basic Images

Address for obtaining a basic image

-
swr.<region>.xxx.com/modelarts-job-dev-image/custom-cpu-base:1.3
-

Table 1 and Table 2 list the components and tools used by basic images.

- -.. _modelarts_23_0217__en-us_topic_0212179951_table42317014714: - - - - - - - - - -
Table 1 Components

Component

-

Description

-

run_train.sh

-

Training boot script. You can download the code directory, run training commands, redirect training log output, and upload log files to OBS after training commands are executed.

-
- - -.. _modelarts_23_0217__en-us_topic_0212179951_table624501372: - - - - - - - - - - - - - - - -
Table 2 Tool list

Tool

-

Description

-

utils.sh

-

Tool script. The run_train.sh script depends on this script.

-

It provides methods such as SK decryption, code directory download, and log file upload.

-

ip_mapper.py

-

Script for obtaining NIC addresses.

-

By default, the IP address of the ib0 NIC is obtained. Training code can use the IP address of the ib0 NIC to accelerate network communications.

-

dls-downloader.py

-

OBS download script. The utils.sh script depends on this script.

-
- - -

GPU-based Basic Images

Addresses for obtaining a basic image

-
swr.<region>.xxx.com/modelarts-job-dev-image/custom-gpu-cuda9-base:1.3
-swr.<region>.xxx.com/modelarts-job-dev-image/custom-gpu-cuda92-base:1.3
-swr.<region>.xxx.com/modelarts-job-dev-image/custom-gpu-cuda10-cudnn74-base:1.1-4
-swr.<region>.xxx.com/modelarts-job-dev-image/custom-base-cuda10.0-cp36-ubuntu18.04-x86:1.1
-swr.<region>.xxx.com/modelarts-job-dev-image/custom-base-cuda10.1-cp36-ubuntu18.04-x86:1.1
-swr.<region>.xxx.com/modelarts-job-dev-image/custom-base-cuda10.2-cp36-ubuntu18.04-x86:1.1
- -.. _modelarts_23_0217__en-us_topic_0212179951_table137851182312: - - - - - - - - - -
Table 3 Components

Component

-

Description

-

run_train.sh

-

Training boot script. You can download the code directory, run training commands, redirect training log output, and upload log files to OBS after training commands are executed.

-
- - -.. _modelarts_23_0217__en-us_topic_0212179951_table135271650237: - - - - - - - - - - - - - - - -
Table 4 Tool list

Tool

-

Description

-

utils.sh

-

Tool script. The run_train.sh script depends on this script.

-

It provides methods such as SK decryption, code directory download, and log file upload.

-

ip_mapper.py

-

Script for obtaining NIC addresses.

-

By default, the IP address of the ib0 NIC is obtained. Training code can use the IP address of the ib0 NIC to accelerate network communications.

-

dls-downloader.py

-

OBS download script. The utils.sh script depends on this script.

-
- - - - - -Parent topic: For Training Models - - - diff --git a/modelarts/umn/temp/specifications_for_importing_data_from_an_obs_directory.tmp b/modelarts/umn/temp/specifications_for_importing_data_from_an_obs_directory.tmp deleted file mode 100644 index f8f0016e..00000000 --- a/modelarts/umn/temp/specifications_for_importing_data_from_an_obs_directory.tmp +++ /dev/null @@ -1,283 +0,0 @@ - - -

Specifications for Importing Data from an OBS Directory

-

When a dataset is imported, the data storage directory and file name must comply with the ModelArts specifications if the data to be used is stored in OBS.

-

Only the following types of dataset support the OBS path import mode: Image classification, Object detection, Text classification, Table, and Sound classification.

-

To import data from an OBS directory, you must have the read permission on the OBS directory.

- -

Image Classification

  • Image classification data can be in two modes. The first mode (directory mode) supports only single labels. The second mode (.txt label files) supports multiple labels.
    • Images with the same label must be stored in the same directory, and the label name is the directory name. If there are multiple levels of directories, the last level is used as the label name.

      In the following example, Cat and Dog are label names.

      -
      dataset-import-example 
      -├─Cat 
      -│      10.jpg 
      -│      11.jpg 
      -│      12.jpg 
      -│ 
      -└─Dog 
      -        1.jpg 
      -        2.jpg 
      -        3.jpg
      -
    • If .txt files exist in the directory, the content in the .txt files is used as the image label. This mode is better than the previous one.

      In the following example, import-dir-1 and import-dir-2 are the imported subdirectories:

      -
      dataset-import-example 
      -├─import-dir-1
      -│      10.jpg
      -│      10.txt    
      -│      11.jpg 
      -│      11.txt
      -│      12.jpg 
      -│      12.txt
      -└─import-dir-2
      -        1.jpg 
      -        1.txt
      -        2.jpg 
      -        2.txt
      -

      The following shows a label file for a single label, for example, the 1.txt file:

      -
      Cat
      -

      The following shows a label file for multiple labels, for example, the 1.txt file:

      -
      Cat
      -Dog
      -
    -
  • Only images in JPG, JPEG, PNG, and BMP formats are supported. The size of a single image cannot exceed 5 MB, and the total size of all images uploaded at a time cannot exceed 8 MB.
- -

Object Detection

  • The simple mode of object detection requires users store labeled objects and their label files (in one-to-one relationship with the labeled objects) in the same directory. For example, if the name of the labeled object file is IMG_20180919_114745.jpg, the name of the label file must be IMG_20180919_114745.xml.

    The label files for object detection must be in PASCAL VOC format. For details about the format, see Table 8.

    -

    Example:

    -
    ├─dataset-import-example 
    -│      IMG_20180919_114732.jpg 
    -│      IMG_20180919_114732.xml 
    -│      IMG_20180919_114745.jpg 
    -│      IMG_20180919_114745.xml 
    -│      IMG_20180919_114945.jpg 
    -│      IMG_20180919_114945.xml
    -

    A label file example is as follows:

    -
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    -<annotation>
    -    <folder>NA</folder>
    -    <filename>bike_1_1593531469339.png</filename>
    -    <source>
    -        <database>Unknown</database>
    -    </source>
    -    <size>
    -        <width>554</width>
    -        <height>606</height>
    -        <depth>3</depth>
    -    </size>
    -    <segmented>0</segmented>
    -    <object>
    -        <name>Dog</name>
    -        <pose>Unspecified</pose>
    -        <truncated>0</truncated>
    -        <difficult>0</difficult>
    -        <occluded>0</occluded>
    -        <bndbox>
    -            <xmin>279</xmin>
    -            <ymin>52</ymin>
    -            <xmax>474</xmax>
    -            <ymax>278</ymax>
    -        </bndbox>
    -    </object>
    -    <object>
    -        <name>Cat</name>
    -        <pose>Unspecified</pose>
    -        <truncated>0</truncated>
    -        <difficult>0</difficult>
    -        <occluded>0</occluded>
    -        <bndbox>
    -            <xmin>279</xmin>
    -            <ymin>198</ymin>
    -            <xmax>456</xmax>
    -            <ymax>421</ymax>
    -        </bndbox>
    -    </object>
    -</annotation>
    -
    -
    -
-
  • Only images in JPG, JPEG, PNG, and BMP formats are supported. The size of a single image cannot exceed 5 MB, and the total size of all images uploaded at a time cannot exceed 8 MB.
- -

Image Segmentation

  • The simple mode of image segmentation requires users store labeled objects and their label files (in one-to-one relationship with the labeled objects) in the same directory. For example, if the name of the labeled object file is IMG_20180919_114746.jpg, the name of the label file must be IMG_20180919_114746.xml.

    Fields mask_source and mask_color are added to the label file in PASCAL VOC format. For details about the format, see Table 4.

    -

    Example:

    -
    ├─dataset-import-example 
    -│      IMG_20180919_114732.jpg 
    -│      IMG_20180919_114732.xml 
    -│      IMG_20180919_114745.jpg 
    -│      IMG_20180919_114745.xml 
    -│      IMG_20180919_114945.jpg 
    -│      IMG_20180919_114945.xml
    -

    A label file example is as follows:

    -
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    -<annotation>
    -    <folder>NA</folder>
    -    <filename>image_0006.jpg</filename>
    -    <source>
    -        <database>Unknown</database>
    -    </source>
    -    <size>
    -        <width>230</width>
    -        <height>300</height>
    -        <depth>3</depth>
    -    </size>
    -    <segmented>1</segmented>
    -    <mask_source>obs://xianao/out/dataset-8153-Jmf5ylLjRmSacj9KevS/annotation/V001/segmentationClassRaw/image_0006.png</mask_source>
    -    <object>
    -        <name>bike</name>
    -        <pose>Unspecified</pose>
    -        <truncated>0</truncated>
    -        <difficult>0</difficult>
    -        <mask_color>193,243,53</mask_color>
    -        <occluded>0</occluded>
    -        <polygon>
    -            <x1>71</x1>
    -            <y1>48</y1>
    -            <x2>75</x2>
    -            <y2>73</y2>
    -            <x3>49</x3>
    -            <y3>69</y3>
    -            <x4>68</x4>
    -            <y4>92</y4>
    -            <x5>90</x5>
    -            <y5>101</y5>
    -            <x6>45</x6>
    -            <y6>110</y6>
    -            <x7>71</x7>
    -            <y7>48</y7>
    -        </polygon>
    -    </object>
    -</annotation>
    -
    -
    -
- -

Text Classification

Text classification supports two import modes.

-
  • The labeled objects and labels for text classification are in the same text file. You can specify a separator to separate the labeled objects and labels, as well as multiple labeled objects.For example, the following shows an example text file. The Tab key is used to separate the labeled object from the label.
    It touches good and responds quickly. I don't know how it performs in the future.   positive
    -Three months ago, I bought a very good phone and replaced my old one with it. It can operate longer between charges.  positive
    -Why does my phone heat up if I charge it for a while? The volume button stuck after being pressed down.  negative
    -It's a gift for Father's Day. The logistics is fast and I received it in 24 hours. I like the earphones because the bass sounds feel good and they would not fall off.  positive
    - -
  • The labeled objects and label files for text classification are text files, and correspond to each other based on the rows. For example, the first row in a label file indicates the label of the first row in the file of the labeled object.

    For example, the content of labeled object COMMENTS_20180919_114745.txt is as follows:

    -
    It touches good and responds quickly. I don't know how it performs in the future.
    -Three months ago, I bought a very good phone and replaced my old one with it. It can operate longer between charges.
    -Why does my phone heat up if I charge it for a while? The volume button stuck after being pressed down.
    -It's a gift for Father's Day. The logistics is fast and I received it in 24 hours. I like the earphones because the bass sounds feel good and they would not fall off.
    -

    The content of label file COMMENTS_20180919_114745_result.txt is as follows:

    -
    positive
    -negative
    -negative 
    -positive
    -

    The data format requires users to store labeled objects and their label files (in one-to-one relationship with the labeled objects) in the same directory. For example, if the name of the labeled object file is COMMENTS_20180919_114745.txt, the name of the label file must be COMMENTS _20180919_114745_result.txt.

    -

    Example of data file storage:

    -
    ├─dataset-import-example 
    -│      COMMENTS_20180919_114732.txt 
    -│      COMMENTS _20180919_114732_result.txt 
    -│      COMMENTS _20180919_114745.txt 
    -│      COMMENTS _20180919_114745_result.txt 
    -│      COMMENTS _20180919_114945.txt 
    -│      COMMENTS _20180919_114945_result.txt
    -
- -

Sound Classification

For sound classification, sound files with the same label must be stored in the same directory, and the label name is the directory name.

-

Example:

-
dataset-import-example 
-├─Cat 
-│      10.wav 
-│      11.wav 
-│      12.wav 
-│ 
-└─Dog 
-        1.wav 
-        2.wav 
-        3.wav
- -

Table

You can import data from OBS.

-

Import description:

-
  1. The prerequisite for successful import is that the schema of the data source must be the same as that specified during dataset creation. The schema indicates column names and types of a table. Once specified during dataset creation, the values cannot be changed.
  2. If the data format is invalid, the data is set to null values. For details, see Table 4.
  3. When a CSV file is imported from OBS, the data type is not verified, but the number of columns must be the same as that in the schema of the dataset.
-
  • From OBS

    CSV files can be imported from OBS. You need to select the directory where the files are stored. The number of columns in the CSV file must be the same as that in the dataset schema. The schema of the CSV file can be automatically obtained.

    -
    ├─dataset-import-example 
    -│      table_import_1.csv 
    -│      table_import_2.csv
    -│      table_import_3.csv
    -│      table_import_4.csv
    -
- - - - -Parent topic: Importing Data - - - diff --git a/modelarts/umn/temp/specifications_for_importing_the_manifest_file.tmp b/modelarts/umn/temp/specifications_for_importing_the_manifest_file.tmp deleted file mode 100644 index ae7f366f..00000000 --- a/modelarts/umn/temp/specifications_for_importing_the_manifest_file.tmp +++ /dev/null @@ -1,1101 +0,0 @@ - - -

Specifications for Importing the Manifest File

-

The manifest file defines the mapping between labeling objects and content. The Manifest file import mode means that the manifest file is used for dataset import. The manifest file can be imported from OBS. When importing a manifest file from OBS, ensure that the current user has the permissions to access the directory housing the manifest file.

-

There are many requirements on the Manifest file compilation. Import new data from OBS. Generally, Manifest file import is used for data migration of ModelArts in different regions or using different accounts. If you have labeled data in a region using ModelArts, you can obtain the manifest file of the published dataset from the output path. Then you can import the dataset using the manifest file to ModelArts of other regions or accounts. The imported data carries the labeling information and does not need to be labeled again, improving development efficiency.

- -

The manifest file that contains information about the original file and labeling can be used in labeling, training, and inference scenarios. The manifest file that contains only information about the original file can be used in inference scenarios or used to generate an unlabeled dataset. The manifest file must meet the following requirements:

-
  • The manifest file uses the UTF-8 encoding format. The source value of text classification can contain Chinese characters. However, Chinese characters are not recommended for other parameters.
  • The manifest file uses the JSON Lines format (jsonlines.org). A line contains one JSON object.
    {"source": "/path/to/image1.jpg", "annotation": ... }
    -{"source": "/path/to/image2.jpg", "annotation": ... }
    -{"source": "/path/to/image3.jpg", "annotation": ... }
    -

    In the preceding example, the manifest file contains multiple lines of JSON object.

    -
  • The manifest file can be generated by users, third-party tools, or ModelArts Data Labeling. The file name can be any valid file name. To facilitate the internal use of the ModelArts system, the file name generated by the ModelArts Data Labeling function consists of the following character strings: DatasetName-VersionName.manifest. For example, animal-v201901231130304123.manifest.
-

Image Classification

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
{
-    "source":"s3://path/to/image1.jpg",
-    "usage":"TRAIN",
-    "id":"0162005993f8065ef47eefb59d1e4970",
-    "annotation": [
-        {
-            "type": "modelarts/image_classification",
-            "name": "cat",
-            "property": {
-                "color":"white",
-                "kind":"Persian cat"            
-            },
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"        
-        },
-        {
-            "type": "modelarts/image_classification",
-            "name":"animal",
-            "annotated-by":"modelarts/active-learning",
-            "confidence": 0.8,
-            "creation-time":"2019-01-23 11:30:30"        
-        }],
-    "inference-loc":"/path/to/inference-output"
-}
-
-
- -.. _modelarts_23_0009__en-us_topic_0170886817_table598984218223: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Parameters

Parameter

-

Mandatory

-

Description

-

source

-

Yes

-

URI of an object to be labeled. For details about data source types and examples, see Table 2.

-

usage

-

No

-

By default, the parameter value is left blank. Possible values are as follows:

-
  • TRAIN: The object is used for training.
  • EVAL: The object is used for evaluation.
  • TEST: The object is used for testing.
  • INFERENCE: The object is used for inference.
-

If the parameter value is left blank, the user decides how to use the object.

-

id

-

No

-

Sample ID exported from the system. You do not need to set this parameter when importing the sample.

-

annotation

-

No

-

If the parameter value is left blank, the object is not labeled. The value of annotation consists of an object list. For details about the parameters, see Table 3.

-

inference-loc

-

No

-

This parameter is available when the file is generated by the inference service, indicating the location of the inference result file.

-
- - -.. _modelarts_23_0009__en-us_topic_0170886817_table9303122642318: - - - - - - - - - - - - -
Table 2 Data source types

Type

-

Example

-

OBS

-

"source":"s3://path-to-jpg"

-

Content

-

"source":"content://I love machine learning"

-
- - -.. _modelarts_23_0009__en-us_topic_0170886817_table48141825192716: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 3 annotation objects

Parameter

-

Mandatory

-

Description

-

type

-

Yes

-

Label type. Possible values are as follows:

-
  • image_classification: image classification
  • text_classification: text classification
  • text_entity: named entity recognition
  • object_detection: object detection
  • audio_classification: sound classification
  • audio_content: speech labeling
  • audio_segmentation: speech paragraph labeling
-

name

-

Yes/No

-

This parameter is mandatory for the classification type but optional for other types. This example uses the image classification type.

-

id

-

Yes/No

-

Label ID. This parameter is mandatory for triplets but optional for other types. The entity label ID of a triplet is in E+number format, for example, E1 and E2. The relationship label ID of a triplet is in R+number format, for example, R1 and R2.

-

property

-

No

-

Labeling property. In this example, the cat has two properties: color and kind.

-

annotated-by

-

No

-

The default value is human, indicating manual labeling.

-
  • human
-

creation-time

-

No

-

Time when the labeling job was created. It is the time when labeling information was written, not the time when the manifest file was generated.

-

confidence

-

No

-

Confidence score of machine labeling. The value ranges from 0 to 1.

-
- - -

Image Segmentation

{
-    "annotation": [{
-        "annotation-format": "PASCAL VOC",
-        "type": "modelarts/image_segmentation",
-        "annotation-loc": "s3://path/to/annotation/image1.xml",
-        "creation-time": "2020-12-16 21:36:27",
-        "annotated-by": "human"
-    }],
-    "usage": "train",
-    "source": "s3://path/to/image1.jpg",
-    "id": "16d196c19bf61994d7deccafa435398c",
-    "sample-type": 0
-}
-
  • The parameters such as source, usage, and annotation are the same as those described in Image Classification. For details, see Table 1.
  • annotation-loc indicates the path for saving the label file. This parameter is mandatory for image segmentation and object detection but optional for other labeling types.
  • annotation-format indicates the format of the label file. This parameter is optional. The default value is PASCAL VOC. Only PASCAL VOC is supported.
  • sample-type indicates a sample format. Value 0 indicates image, 1 text, 2 audio, 4 table, and 6 video.
- -.. _modelarts_23_0009__en-us_topic_0170886817_table1516151991311: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 4 PASCAL VOC format parameters

Parameter

-

Mandatory

-

Description

-

folder

-

Yes

-

Directory where the data source is located

-

filename

-

Yes

-

Name of the file to be labeled

-

size

-

Yes

-

Image pixel

-
  • width: image width. This parameter is mandatory.
  • height: image height. This parameter is mandatory.
  • depth: number of image channels. This parameter is mandatory.
-

segmented

-

Yes

-

Segmented or not

-

mask_source

-

No

-

Segmentation mask path

-

object

-

Yes

-

Object detection information. Multiple object{} functions are generated for multiple objects.

-
  • name: class of the labeled content. This parameter is mandatory.
  • pose: shooting angle of the labeled content. This parameter is mandatory.
  • truncated: whether the labeled content is truncated (0 indicates that the content is not truncated). This parameter is mandatory.
  • occluded: whether the labeled content is occluded (0 indicates that the content is not occluded). This parameter is mandatory.
  • difficult: whether the labeled object is difficult to identify (0 indicates that the object is easy to identify). This parameter is mandatory.
  • confidence: confidence score of the labeled object. The value ranges from 0 to 1. This parameter is optional.
  • bndbox: bounding box type. This parameter is mandatory. For details about the possible values, see Table 5.
  • mask_color: label color, which is represented by the RGB value. This parameter is mandatory.
-
- - -.. _modelarts_23_0009__en-us_topic_0170886817_table181711917139: - - - - - - - - - - - -
Table 5 Bounding box types

Type

-

Shape

-

Labeling Information

-

polygon

-

Polygon

-

Coordinates of points

-

<x1>100<x1>

-

<y1>100<y1>

-

<x2>200<x2>

-

<y2>100<y2>

-

<x3>250<x3>

-

<y3>150<y3>

-

<x4>200<x4>

-

<y4>200<y4>

-

<x5>100<x5>

-

<y5>200<y5>

-

<x6>50<x6>

-

<y6>150<y6>

-

<x7>100<x7>

-

<y7>100<y7>

-
- -Example:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<annotation>
-    <folder>NA</folder>
-    <filename>image_0006.jpg</filename>
-    <source>
-        <database>Unknown</database>
-    </source>
-    <size>
-        <width>230</width>
-        <height>300</height>
-        <depth>3</depth>
-    </size>
-    <segmented>1</segmented>
-    <mask_source>obs://xianao/out/dataset-8153-Jmf5ylLjRmSacj9KevS/annotation/V001/segmentationClassRaw/image_0006.png</mask_source>
-    <object>
-        <name>bike</name>
-        <pose>Unspecified</pose>
-        <truncated>0</truncated>
-        <difficult>0</difficult>
-        <mask_color>193,243,53</mask_color>
-        <occluded>0</occluded>
-        <polygon>
-            <x1>71</x1>
-            <y1>48</y1>
-            <x2>75</x2>
-            <y2>73</y2>
-            <x3>49</x3>
-            <y3>69</y3>
-            <x4>68</x4>
-            <y4>92</y4>
-            <x5>90</x5>
-            <y5>101</y5>
-            <x6>45</x6>
-            <y6>110</y6>
-            <x7>71</x7>
-            <y7>48</y7>
-        </polygon>
-    </object>
-</annotation>
- - -

Text Classification

{
-    "source": "content://I like this product ",
-    "id":"XGDVGS",
-    "annotation": [
-        {
-            "type": "modelarts/text_classification",
-            "name": " positive",
-            "annotated-by": "human",
-            "creation-time": "2019-01-23 11:30:30"        
-        } ]
-}
-

The content parameter indicates the text to be labeled (in UTF-8 encoding format, which can be Chinese). The other parameters are the same as those described in Image Classification. For details, see Table 1.

- -

Named Entity Recognition

{
-    "source":"content://Michael Jordan is the most famous basketball player in the world.",
-    "usage":"TRAIN",
-    "annotation":[
-        {
-            "type":"modelarts/text_entity",
-            "name":"Person",
-            "property":{
-                "@modelarts:start_index":0,
-                "@modelarts:end_index":14
-            },
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"
-        },
-        {
-            "type":"modelarts/text_entity",
-            "name":"Category",
-            "property":{
-                "@modelarts:start_index":34,
-                "@modelarts:end_index":44
-            },
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"
-        }
-    ]
-}
-

-

The parameters such as source, usage, and annotation are the same as those described in Image Classification. For details, see Table 1.

-

Table 6 describes the property parameters. For example, if you want to extract Michael from "source":"content://Michael Jordan", the value of start_index is 0 and that of end_index is 7.

- -.. _modelarts_23_0009__en-us_topic_0170886817_table8486339124912: - - - - - - - - - - - - - - - -
Table 6 Description of property parameters

Parameter

-

Data Type

-

Description

-

@modelarts:start_index

-

Integer

-

Start position of the text. The value starts from 0, including the characters specified by start_index.

-

@modelarts:end_index

-

Integer

-

End position of the text, excluding the characters specified by end_index.

-
- - -

Text Triplet

{
-    "source":"content://"Three Body" is a series of long science fiction novels created by Liu Cix.",
-    "usage":"TRAIN",
-    "annotation":[
-        {
-            "type":"modelarts/text_entity",
-            "name":"Person",
-            "id":"E1",
-            "property":{
-                "@modelarts:start_index":67,
-                "@modelarts:end_index":74
-            },
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"
-        },
-        {
-            "type":"modelarts/text_entity",
-            "name":"Book",
-            "id":"E2",
-            "property":{
-                "@modelarts:start_index":0,
-                "@modelarts:end_index":12
-            },
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"
-        },
-        {
-            "type":"modelarts/text_triplet",
-            "name":"Author",
-            "id":"R1",
-            "property":{
-                "@modelarts:from":"E1",
-                "@modelarts:to":"E2"
-            },
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"
-        },
-        {
-            "type":"modelarts/text_triplet",
-            "name":"Works",
-            "id":"R2",
-            "property":{
-                "@modelarts:from":"E2",
-                "@modelarts:to":"E1"
-            },
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"
-        }
-    ]
-}
- -

The parameters such as source, usage, and annotation are the same as those described in Image Classification. For details, see Table 1.

-

Table 5 property parameters describes the property parameters. @modelarts:start_index and @modelarts:end_index are the same as those of named entity recognition. For example, when source is set to content://"Three Body" is a series of long science fiction novels created by Liu Cix., Liu Cix is an entity person, Three Body is an entity book, the person is the author of the book, and the book is works of the person.

- -.. _modelarts_23_0009__en-us_topic_0170886817_table134893213914: - - - - - - - - - - - - - - - - - - - - - - - -
Table 7 Description of property parameters

Parameter

-

Data Type

-

Description

-

@modelarts:start_index

-

Integer

-

Start position of the triplet entities. The value starts from 0, including the characters specified by start_index.

-

@modelarts:end_index

-

Integer

-

End position of the triplet entities, excluding the characters specified by end_index.

-

@modelarts:from

-

String

-

Start entity ID of the triplet relationship.

-

@modelarts:to

-

String

-

Entity ID pointed to in the triplet relationship.

-
- -

Object Detection

{
-    "source":"s3://path/to/image1.jpg",
-    "usage":"TRAIN",
-    "annotation": [
-        {
-            "type":"modelarts/object_detection",
-            "annotation-loc": "s3://path/to/annotation1.xml",
-            "annotation-format":"PASCAL VOC",
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"                
-        }]
-}
-
  • The parameters such as source, usage, and annotation are the same as those described in Image Classification. For details, see Table 1.
  • annotation-loc indicates the path for saving the label file. This parameter is mandatory for object detection and image segmentation but optional for other labeling types.
  • annotation-format indicates the format of the label file. This parameter is optional. The default value is PASCAL VOC. Only PASCAL VOC is supported.
- -.. _modelarts_23_0009__en-us_topic_0170886817_table77167388472: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 8 PASCAL VOC format parameters

Parameter

-

Mandatory

-

Description

-

folder

-

Yes

-

Directory where the data source is located

-

filename

-

Yes

-

Name of the file to be labeled

-

size

-

Yes

-

Image pixel

-
  • width: image width. This parameter is mandatory.
  • height: image height. This parameter is mandatory.
  • depth: number of image channels. This parameter is mandatory.
-

segmented

-

Yes

-

Segmented or not

-

object

-

Yes

-

Object detection information. Multiple object{} functions are generated for multiple objects.

-
  • name: class of the labeled content. This parameter is mandatory.
  • pose: shooting angle of the labeled content. This parameter is mandatory.
  • truncated: whether the labeled content is truncated (0 indicates that the content is not truncated). This parameter is mandatory.
  • occluded: whether the labeled content is occluded (0 indicates that the content is not occluded). This parameter is mandatory.
  • difficult: whether the labeled object is difficult to identify (0 indicates that the object is easy to identify). This parameter is mandatory.
  • confidence: confidence score of the labeled object. The value ranges from 0 to 1. This parameter is optional.
  • bndbox: bounding box type. This parameter is mandatory. For details about the possible values, see Table 9.
-
- - -.. _modelarts_23_0009__en-us_topic_0170886817_table1770752310500: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 9 Description of bounding box types

Type

-

Shape

-

Labeling Information

-

point

-

Point

-

Coordinates of a point

-

<x>100<x>

-

<y>100<y>

-

line

-

Line

-

Coordinates of points

-

<x1>100<x1>

-

<y1>100<y1>

-

<x2>200<x2>

-

<y2>200<y2>

-

bndbox

-

Rectangle

-

Coordinates of the upper left and lower right points

-

<xmin>100<xmin>

-

<ymin>100<ymin>

-

<xmax>200<xmax>

-

<ymax>200<ymax>

-

polygon

-

Polygon

-

Coordinates of points

-

<x1>100<x1>

-

<y1>100<y1>

-

<x2>200<x2>

-

<y2>100<y2>

-

<x3>250<x3>

-

<y3>150<y3>

-

<x4>200<x4>

-

<y4>200<y4>

-

<x5>100<x5>

-

<y5>200<y5>

-

<x6>50<x6>

-

<y6>150<y6>

-

circle

-

Circle

-

Center coordinates and radius

-

<cx>100<cx>

-

<cy>100<cy>

-

<r>50<r>

-
- -Example:
<annotation>
-   <folder>test_data</folder>
-   <filename>260730932.jpg</filename>
-   <size>
-       <width>767</width>
-       <height>959</height>
-       <depth>3</depth>
-   </size>
-   <segmented>0</segmented>
-   <object>
-       <name>point</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       <point>
-           <x1>456</x1>
-           <y1>596</y1>
-       </point>
-   </object>
-   <object>
-       <name>line</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       <line>
-           <x1>133</x1>
-           <y1>651</y1>
-           <x2>229</x2>
-           <y2>561</y2>
-       </line>
-   </object>
-   <object>
-       <name>bag</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       <bndbox>
-           <xmin>108</xmin>
-           <ymin>101</ymin>
-           <xmax>251</xmax>
-           <ymax>238</ymax>
-       </bndbox>
-   </object>
-   <object>
-       <name>boots</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       
-       <polygon>
-           <x1>373</x1>
-           <y1>264</y1>
-           <x2>500</x2>
-           <y2>198</y2>
-           <x3>437</x3>
-           <y3>76</y3>
-           <x4>310</x4>
-           <y4>142</y4>
-       </polygon>
-   </object>
-   <object>
-       <name>circle</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       <circle>
-           <cx>405</cx>
-           <cy>170</cy>
-           <r>100<r>
-       </circle>
-   </object>
-</annotation>
- - -

Sound Classification

{
-"source":
-"s3://path/to/pets.wav", 
-    "annotation": [
-        {
-            "type": "modelarts/audio_classification",
-            "name":"cat",    
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"
-        } 
-    ]
-}
-

The parameters such as source, usage, and annotation are the same as those described in Image Classification. For details, see Table 1.

- -

Speech Labeling

{
-    "source":"s3://path/to/audio1.wav",
-    "annotation":[
-        {
-            "type":"modelarts/audio_content",
-            "property":{
-                "@modelarts:content":"Today is a good day."
-            },
-            "annotated-by":"human",
-            "creation-time":"2019-01-23 11:30:30"
-        }
-    ]
-}
-
  • The parameters such as source, usage, and annotation are the same as those described in Image Classification. For details, see Table 1.
  • The @modelarts:content parameter in property indicates speech labeling. The data type is String.
- -

Speech Paragraph Labeling

{
-    "source":"s3://path/to/audio1.wav",
-    "usage":"TRAIN",
-    "annotation":[
-        {
-           
-"type":"modelarts/audio_segmentation",
-            "property":{
-                "@modelarts:start_time":"00:01:10.123",
-                "@modelarts:end_time":"00:01:15.456",
-               
-                "@modelarts:source":"Tom",
-               
-                "@modelarts:content":"How are you?"
-            },
-           "annotated-by":"human",
-           "creation-time":"2019-01-23 11:30:30"
-        },
-        {
-           "type":"modelarts/audio_segmentation",
-            "property":{
-                "@modelarts:start_time":"00:01:22.754",
-                "@modelarts:end_time":"00:01:24.145",
-                "@modelarts:source":"Jerry",
-                "@modelarts:content":"I'm fine, thank you."
-            },
-           "annotated-by":"human",
-           "creation-time":"2019-01-23 11:30:30"
-        }
-    ]
-}
-
  • The parameters such as source, usage, and annotation are the same as those described in Image Classification. For details, see Table 1.
  • Table 10 describes the property parameters. -.. _modelarts_23_0009__en-us_topic_0170886817_table1151144815513: - - - - - - - - - - - - - - - - - - - - - - - -
    Table 10 Description of property parameters

    Parameter

    -

    Data Type

    -

    Description

    -

    @modelarts:start_time

    -

    String

    -

    Start time of the sound. The format is hh:mm:ss.SSS.

    -

    hh indicates the hour, mm indicates the minute, ss indicates the second, and SSS indicates the millisecond.

    -

    @modelarts:end_time

    -

    String

    -

    End time of the sound. The format is hh:mm:ss.SSS.

    -

    hh indicates the hour, mm indicates the minute, ss indicates the second, and SSS indicates the millisecond.

    -

    @modelarts:source

    -

    String

    -

    Sound source

    -

    @modelarts:content

    -

    String

    -

    Sound content

    -
    - -
- -

Video Labeling

{
-	"annotation": [{
-		"annotation-format": "PASCAL VOC",
-		"type": "modelarts/object_detection",
-		"annotation-loc": "s3://path/to/annotation1_t1.473722.xml",
-		"creation-time": "2020-10-09 14:08:24",
-		"annotated-by": "human"
-	}],
-	"usage": "train",
-	"property": {
-		"@modelarts:parent_duration": 8,
-		"@modelarts:parent_source": "s3://path/to/annotation1.mp4",
-		"@modelarts:time_in_video": 1.473722
-	},
-	"source": "s3://input/path/to/annotation1_t1.473722.jpg",
-	"id": "43d88677c1e9a971eeb692a80534b5d5",
-	"sample-type": 0
-}
-
  • The parameters such as source, usage, and annotation are the same as those described in Image Classification. For details, see Table 1.
  • annotation-loc indicates the path for saving the label file. This parameter is mandatory for object detection but optional for other labeling types.
  • annotation-format indicates the format of the label file. This parameter is optional. The default value is PASCAL VOC. Only PASCAL VOC is supported.
  • sample-type indicates a sample format. Value 0 indicates image, 1 text, 2 audio, 4 table, and 6 video.
- -.. _modelarts_23_0009__en-us_topic_0170886817_table178351411132818: - - - - - - - - - - - - - - - - - - - -
Table 11 property parameters

Parameter

-

Data Type

-

Description

-

@modelarts:parent_duration

-

Double

-

Duration of the labeled video, in seconds

-

@modelarts:time_in_video

-

Double

-

Timestamp of the labeled video frame, in seconds

-

@modelarts:parent_source

-

String

-

OBS path of the labeled video

-
- - -.. _modelarts_23_0009__en-us_topic_0170886817_table259920384918: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 12 PASCAL VOC format parameters

Parameter

-

Mandatory

-

Description

-

folder

-

Yes

-

Directory where the data source is located

-

filename

-

Yes

-

Name of the file to be labeled

-

size

-

Yes

-

Image pixel

-
  • width: image width. This parameter is mandatory.
  • height: image height. This parameter is mandatory.
  • depth: number of image channels. This parameter is mandatory.
-

segmented

-

Yes

-

Segmented or not

-

object

-

Yes

-

Object detection information. Multiple object{} functions are generated for multiple objects.

-
  • name: class of the labeled content. This parameter is mandatory.
  • pose: shooting angle of the labeled content. This parameter is mandatory.
  • truncated: whether the labeled content is truncated (0 indicates that the content is not truncated). This parameter is mandatory.
  • occluded: whether the labeled content is occluded (0 indicates that the content is not occluded). This parameter is mandatory.
  • difficult: whether the labeled object is difficult to identify (0 indicates that the object is easy to identify). This parameter is mandatory.
  • confidence: confidence score of the labeled object. The value ranges from 0 to 1. This parameter is optional.
  • bndbox: bounding box type. This parameter is mandatory. For details about the possible values, see Table 13.
-
- - -.. _modelarts_23_0009__en-us_topic_0170886817_table869624041814: - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 13 Bounding box types

Type

-

Shape

-

Labeling Information

-

point

-

Point

-

Coordinates of a point

-

<x>100<x>

-

<y>100<y>

-

line

-

Line

-

Coordinates of points

-

<x1>100<x1>

-

<y1>100<y1>

-

<x2>200<x2>

-

<y2>200<y2>

-

bndbox

-

Rectangle

-

Coordinates of the upper left and lower right points

-

<xmin>100<xmin>

-

<ymin>100<ymin>

-

<xmax>200<xmax>

-

<ymax>200<ymax>

-

polygon

-

Polygon

-

Coordinates of points

-

<x1>100<x1>

-

<y1>100<y1>

-

<x2>200<x2>

-

<y2>100<y2>

-

<x3>250<x3>

-

<y3>150<y3>

-

<x4>200<x4>

-

<y4>200<y4>

-

<x5>100<x5>

-

<y5>200<y5>

-

<x6>50<x6>

-

<y6>150<y6>

-

circle

-

Circle

-

Center coordinates and radius

-

<cx>100<cx>

-

<cy>100<cy>

-

<r>50<r>

-
- -Example:
<annotation>
-   <folder>test_data</folder>
-   <filename>260730932_t1.473722.jpg.jpg</filename>
-   <size>
-       <width>767</width>
-       <height>959</height>
-       <depth>3</depth>
-   </size>
-   <segmented>0</segmented>
-   <object>
-       <name>point</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       <point>
-           <x1>456</x1>
-           <y1>596</y1>
-       </point>
-   </object>
-   <object>
-       <name>line</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       <line>
-           <x1>133</x1>
-           <y1>651</y1>
-           <x2>229</x2>
-           <y2>561</y2>
-       </line>
-   </object>
-   <object>
-       <name>bag</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       <bndbox>
-           <xmin>108</xmin>
-           <ymin>101</ymin>
-           <xmax>251</xmax>
-           <ymax>238</ymax>
-       </bndbox>
-   </object>
-   <object>
-       <name>boots</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       <polygon>
-           <x1>373</x1>
-           <y1>264</y1>
-           <x2>500</x2>
-           <y2>198</y2>
-           <x3>437</x3>
-           <y3>76</y3>
-           <x4>310</x4>
-           <y4>142</y4>
-       </polygon>
-   </object>
-   <object>
-       <name>circle</name>
-       <pose>Unspecified</pose>
-       <truncated>0</truncated>
-       <occluded>0</occluded>
-       <difficult>0</difficult>
-       <circle>
-           <cx>405</cx>
-           <cy>170</cy>
-           <r>100<r>
-       </circle>
-   </object>
-</annotation>
- - - - - -Parent topic: Importing Data - - - diff --git a/modelarts/umn/temp/speech_labeling.tmp b/modelarts/umn/temp/speech_labeling.tmp deleted file mode 100644 index 61ea9500..00000000 --- a/modelarts/umn/temp/speech_labeling.tmp +++ /dev/null @@ -1,36 +0,0 @@ - - -

Speech Labeling

-

Model training requires a large amount of labeled data. Therefore, before the model training, label the unlabeled audio files. ModelArts enables you to label audio files in batches by one click. In addition, you can modify the labels of audio files, or remove their labels and label the audio files again.

-

Starting Labeling

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset to be labeled based on the labeling type, and click the dataset name to go to the Dashboard tab page of the dataset.

    By default, the Dashboard tab page of the current dataset version is displayed. If you need to label the dataset of another version, click the Versions tab and then click Set to Current Version in the right pane. For details, see Managing Dataset Versions.

    -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed. By default, all data of the dataset is displayed on the dataset details page.
- -

Synchronizing the Data Source

ModelArts automatically synchronizes data and labeling information from Input Dataset Path to the dataset details page.

-

To quickly obtain the latest data in the OBS bucket, click Synchronize Data Source on the Unlabeled tab page of the dataset details page to add the data uploaded using OBS to the dataset.

- -

Labeling Audio Files

The dataset details page displays the labeled and unlabeled audio files. The Unlabeled tab page is displayed by default.

-
  1. In the audio file list on the Unlabeled tab page, click the target audio file. In the area on the right, the audio file is displayed. Click below the audio file to play the audio.
  2. In Speech Content, enter the speech content.
  3. After entering the content, click OK to complete the labeling. The audio file is automatically moved to the Labeled tab page.Figure 1 Labeling an audio file
    -
- -

Viewing the Labeled Audio Files

On the dataset details page, click the Labeled tab to view the list of the labeled audio files. Click the audio file to view the audio content in the Speech Content text box on the right.

- -

Modifying Labeled Data

After labeling data, you can modify labeled data on the Labeled tab page.

-

On the data labeling page, click the Labeled tab, and select the audio file to be modified from the audio file list. In the label information area on the right, modify the content of the Speech Content text box, and click OK to complete the modification.

- -

Adding Audio Files

In addition to automatically synchronizing data from Input Dataset Path, you can directly add audio files on ModelArts for data labeling.

-
  1. On the dataset details page, click the Unlabeled tab. Then click Add Audio in the upper left corner.
  2. In the Add Audio dialog box that is displayed, click Add Audio.

    Select the audio files to be uploaded in the local environment. Only WAV audio files are supported. The size of an audio file cannot exceed 4 MB. The total size of audio files uploaded at a time cannot exceed 8 MB.

    -
  3. In the Add Audio dialog box, click OK.

    The audio files you add will be automatically displayed on the Unlabeled tab page. In addition, the audio files are automatically saved to the OBS directory specified by Input Dataset Path.

    -
- -

Deleting Audio Files

You can quickly delete the audio files you want to discard.

-

On the Unlabeled or Labeled tab page, select the audio files to be deleted, and then click Delete File in the upper left corner. In the displayed dialog box, select or deselect Delete source files as required. After confirmation, click OK to delete the audio files.

-

If you select Delete source files, audio files stored in the corresponding OBS directory will be deleted when you delete the selected audio files. Deleting source files may affect other dataset versions or datasets using those files. As a result, the page display, training, or inference is abnormal. Deleted data cannot be recovered. Exercise caution when performing this operation.

- - - - - -Parent topic: Labeling Data - - - diff --git a/modelarts/umn/temp/speech_paragraph_labeling.tmp b/modelarts/umn/temp/speech_paragraph_labeling.tmp deleted file mode 100644 index 885e0e59..00000000 --- a/modelarts/umn/temp/speech_paragraph_labeling.tmp +++ /dev/null @@ -1,37 +0,0 @@ - - -

Speech Paragraph Labeling

-

Model training requires a large amount of labeled data. Therefore, before the model training, label the unlabeled audio files. ModelArts enables you to label audio files. In addition, you can modify the labels of audio files, or remove their labels and label the audio files again.

-

Starting Labeling

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset to be labeled based on the labeling type, and click the dataset name to go to the Dashboard tab page of the dataset.

    By default, the Dashboard tab page of the current dataset version is displayed. If you need to label the dataset of another version, click the Versions tab and then click Set to Current Version in the right pane. For details, see Managing Dataset Versions.

    -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed. By default, all data of the dataset is displayed on the dataset details page.
- -

Synchronizing the Data Source

ModelArts automatically synchronizes data and labeling information from Input Dataset Path to the dataset details page.

-

To quickly obtain the latest data in the OBS bucket, click Synchronize Data Source on the Unlabeled tab page of the dataset details page to add the data uploaded using OBS to the dataset.

- -

Labeling Audio Files

The dataset details page displays the labeled and unlabeled audio files. The Unlabeled tab page is displayed by default.

-
  1. In the audio file list on the Unlabeled tab page, click the target audio file. In the area on the right, the audio file is displayed. Click below the audio file to play the audio.
  2. Select an audio segment based on the content being played, and enter the audio file label and content in the Speech Content text box.Figure 1 Labeling an audio file
    -
  3. After entering the content, click OK to complete the labeling. The audio file is automatically moved to the Labeled tab page.
- -

Viewing the Labeled Audio Files

On the dataset details page, click the Labeled tab to view the list of the labeled audio files. Click the audio file to view the audio content in the Speech Content text box on the right.

- -

Modifying Labeled Data

After labeling data, you can modify labeled data on the Labeled tab page.

-
  • Modifying a label: On the dataset details page, click the Labeled tab, and select the audio file to be modified from the audio file list. In the Speech Content area, modify Label and Content, and click OK to complete the modification.
  • Deleting a label: Click in the Operation column of the target number to delete the label of the audio segment. Alternatively, you can click the cross (x) icon above the labeled audio file to delete the label. Then click OK.
- -

Adding Audio Files

In addition to automatically synchronizing data from Input Dataset Path, you can directly add audio files on ModelArts for data labeling.

-
  1. On the dataset details page, click the Unlabeled tab. Then click Add Audio in the upper left corner.
  2. In the Add Audio dialog box that is displayed, click Add Audio.

    Select the audio files to be uploaded in the local environment. Only WAV audio files are supported. The size of an audio file cannot exceed 4 MB. The total size of audio files uploaded at a time cannot exceed 8 MB.

    -
  3. In the Add Audio dialog box, click OK.

    The audio files you add will be automatically displayed on the Unlabeled tab page. In addition, the audio files are automatically saved to the OBS directory specified by Input Dataset Path.

    -
- -

Deleting Audio Files

You can quickly delete the audio files you want to discard.

-

On the Unlabeled or Labeled tab page, select the audio files to be deleted, and then click Delete File in the upper left corner. In the displayed dialog box, select or deselect Delete source files as required. After confirmation, click OK to delete the audio files.

-

If you select Delete source files, audio files stored in the corresponding OBS directory will be deleted when you delete the selected audio files. Deleting source files may affect other dataset versions or datasets using those files. As a result, the page display, training, or inference is abnormal. Deleted data cannot be recovered. Exercise caution when performing this operation.

- - -

- - - -Parent topic: Labeling Data - - - diff --git a/modelarts/umn/temp/starting_or_stopping_a_notebook_instance.tmp b/modelarts/umn/temp/starting_or_stopping_a_notebook_instance.tmp deleted file mode 100644 index 6b718179..00000000 --- a/modelarts/umn/temp/starting_or_stopping_a_notebook_instance.tmp +++ /dev/null @@ -1,13 +0,0 @@ - - -

Starting or Stopping a Notebook Instance

-

You can stop unwanted notebook instances to prevent unnecessary fees. You can also start a notebook instance that is in the Stopped state to use it again.

-

Log in to the ModelArts management console. In the left navigation pane, choose DevEnviron > Notebooks to switch to the Notebooks page. Perform the following operations to stop or start a notebook instance:

-
  • To stop a notebook instance, locate the row where the notebook instance resides and click Stop in the Operation column. Only notebook instances in the Running state can be stopped.
  • To start a notebook instance, locate the row where the notebook instance resides and click Start in the Operation column. Only notebook instances in the Stopped state can be started.
- - - -Parent topic: Managing Notebook Instances - - - diff --git a/modelarts/umn/temp/starting_or_stopping_a_service.tmp b/modelarts/umn/temp/starting_or_stopping_a_service.tmp deleted file mode 100644 index 130aa4d5..00000000 --- a/modelarts/umn/temp/starting_or_stopping_a_service.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Starting or Stopping a Service

-

Starting a Service

You can start services in the Successful, Abnormal, or Stopped status. Services in the Deploying status cannot be started. You can start a service in either of the following ways:

- -
  1. Log in to the ModelArts management console and choose Service Deployment from the left navigation pane. Go to the service management page of the target service. Click Start in the Operation column to start the target service.
  2. Log in to the ModelArts management console and choose Service Deployment from the left navigation pane. Go to the service management page of the target service. Click the name of the target service. The service details page is displayed. Click Start in the upper right corner of the page to start the service.
-

Stopping a Service

You can stop services in the Running or Alarm status. Services in the Deploying status cannot be stopped. After a service is stopped, ModelArts stops charging. You can stop a service in either of the following ways:

-
  1. Log in to the ModelArts management console and choose Service Deployment from the left navigation pane. Go to the service management page of the target service. Click Stop in the Operation column to stop the target service.
  2. Log in to the ModelArts management console and choose Service Deployment from the left navigation pane. Go to the service management page of the target service. Click the name of the target service. The service details page is displayed. Click Stop in the upper right corner of the page to stop the service.
- - - - -Parent topic: Model Deployment - - - diff --git a/modelarts/umn/temp/stopping_or_deleting_a_job.tmp b/modelarts/umn/temp/stopping_or_deleting_a_job.tmp deleted file mode 100644 index d51703f3..00000000 --- a/modelarts/umn/temp/stopping_or_deleting_a_job.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Stopping or Deleting a Job

-

Stopping a Training Job

In the training job list, click Stop in the Operation column for a training job in the Running state to stop a running training job.

-

If you have selected Save Training Parameters for a stopped training job, the job's parameter settings will be saved to the Job Parameter Mgmt page.

-

You cannot stop a training job that has stopped running, for example the job in the Successful or Running failed state. Only training jobs in the Running state can be stopped.

- -

Deleting a Training Job

If an existing training job is no longer used, you can delete it.

-

For a training job in the Running, Successful, Running failed, Canceled, or Deploying state, click Delete in the Operation column to delete it.

-

If you have selected Save Training Parameters for a deleted training job, the job's parameter settings will be saved to the Job Parameter Mgmt page.

- - - - -Parent topic: Training Management - - - diff --git a/modelarts/umn/temp/switching_the_cuda_version_on_the_terminal_page_of_a_gpu-based_notebook_instance.tmp b/modelarts/umn/temp/switching_the_cuda_version_on_the_terminal_page_of_a_gpu-based_notebook_instance.tmp deleted file mode 100644 index cb34ffbb..00000000 --- a/modelarts/umn/temp/switching_the_cuda_version_on_the_terminal_page_of_a_gpu-based_notebook_instance.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Switching the CUDA Version on the Terminal Page of a GPU-based Notebook Instance

-

For a GPU-based notebook instance, you can switch different versions of CUDA on the Terminal page of Jupyter.

-

CPU-based notebook instances do not use CUDA. Therefore, the following operations apply only to GPU-based notebook instances.

-
  1. Create and open a notebook instance or open an existing notebook instance in the notebook instance list.
  2. On the Files tab page of the Jupyter page, click New and select Terminal. The Terminal page is displayed.
  3. Run the following command to go to /usr/local:
    cd /usr/local
    -
  4. For example, to switch to CUDA 10, run the following command:
    sudo ln -snf /usr/local/cuda-10.0 cuda
    -Figure 1 Example of switching the CUDA version
    -
- - - -Parent topic: Configuring the Jupyter Notebook Environment - - - diff --git a/modelarts/umn/temp/synchronizing_files_with_obs.tmp b/modelarts/umn/temp/synchronizing_files_with_obs.tmp deleted file mode 100644 index 06c1e599..00000000 --- a/modelarts/umn/temp/synchronizing_files_with_obs.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Synchronizing Files with OBS

-

If you specify Storage Path during notebook instance creation, your compiled code will be automatically stored in your specified OBS bucket. If code invocation among different .ipynb files is required, you can use the Sync OBS function.

-

The Sync OBS function is used to synchronize the objects selected in the list of notebook instance files from the OBS bucket to the current container directory ~/work.

-

Precautions

  • The maximum size of files to be synchronized at a time is 500 MB, and the maximum number of files to be synchronized at a time is 1,024.
  • The total size of objects to be synchronized cannot exceed 5 GB. For example, if 2 GB files exist in the ~/work container directory, you can use Sync OBS to synchronize a maximum of 3 GB files.
  • The Sync OBS function only takes effect on notebook instances for which Storage is OBS. For notebook instances whose Storage is not OBS, all files are read and written in the ~/work container directory.
- -

Procedure

The Sync OBS function can be used in notebook instances. The following describes how to use the function.

-

For example, if the Example1.ipynb file needs to call module in the Example2.ipynb file, select both files and click Sync OBS.

-Figure 1 Using the Sync OBS function
- - - - -Parent topic: Using Jupyter Notebook - - - diff --git a/modelarts/umn/temp/team_labeling.tmp b/modelarts/umn/temp/team_labeling.tmp deleted file mode 100644 index 75c77267..00000000 --- a/modelarts/umn/temp/team_labeling.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Team Labeling

-

- - - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/team_management.tmp b/modelarts/umn/temp/team_management.tmp deleted file mode 100644 index 448bcc3e..00000000 --- a/modelarts/umn/temp/team_management.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

Team Management

-

Team labeling is managed in a unit of teams. To enable team labeling for a dataset, a team must be specified. Multiple members can be added to a team.

-

Background

  • An account can have a maximum of 10 teams.
  • An account must have at least one team to enable team labeling for datasets. If the account has no team, add a team by referring to Adding a Team.
- -

Adding a Team

  1. In the left navigation pane of the ModelArts management console, choose Data Management > Labeling Teams. The Labeling Teams page is displayed.
  2. On the Labeling Teams page, click Add Team.
  3. In the displayed Add Team dialog box, enter a team name and description and click OK. The labeling team is added.

    The new team is displayed on the Labeling Teams page. You can view team details in the right pane. There is no member in the new team. Add members to the new team by referring to Adding a Member.

    -
- -

Deleting a Team

You can delete a team that is no longer used.

-

On the Labeling Teams page, select the target team and click Delete. In the dialog box that is displayed, click OK.

- - - - -Parent topic: Team Labeling - - - diff --git a/modelarts/umn/temp/template_description.tmp b/modelarts/umn/temp/template_description.tmp deleted file mode 100644 index 5a8f0f4a..00000000 --- a/modelarts/umn/temp/template_description.tmp +++ /dev/null @@ -1,25 +0,0 @@ - - -

Template Description

- - - - - -Parent topic: Model Templates - - - diff --git a/modelarts/umn/temp/tensorflow-py36_general_template.tmp b/modelarts/umn/temp/tensorflow-py36_general_template.tmp deleted file mode 100644 index f3997251..00000000 --- a/modelarts/umn/temp/tensorflow-py36_general_template.tmp +++ /dev/null @@ -1,35 +0,0 @@ - - -

TensorFlow-py36 General Template

-

Introduction

AI engine: TensorFlow 1.8; Environment: Python 3.6; Input and output mode: undefined mode. Select an appropriate input and output mode based on the model function or application scenario. When using the template to import a model, select the model directory containing the model files.

- -

Template Input

The template input is the TensorFlow-based model package stored on OBS. Ensure that the OBS directory you use and ModelArts are in the same region. For details about model package requirements, see Model Package Example.

- -

Input and Output Mode

Undefined Mode can be overwritten. That is, you can select another input and output mode during model creation.

- -

Model Package Specifications

  • The model package must be stored in the OBS folder named model. Model files and the model inference code file are stored in the model folder.
  • The model inference code file is optional. If the file exists, the file name must be customize_service.py. Only one inference code file can exist in the model folder. For details about how to compile the model inference code file, see Specifications for Compiling Model Inference Code.
-
  • The structure of the model package imported using the template is as follows:
    model/
    -│
    -├── Model file                 //(Mandatory) The model file format varies according to the engine. For details, see the model package example.
    -├── Custom Python package           //(Optional) User's Python package, which can be directly referenced in the model inference code
    -├── customize_service.py  //(Optional) Model inference code file. The file name must be customize_service.py. Otherwise, the code is not considered as inference code.
    -
- -

Model Package Example

Structure of the TensorFlow-based model package

-

When publishing the model, you only need to specify the model directory.

-
OBS bucket/directory name
-|── model    (Mandatory) The folder must be named model and is used to store model-related files.
-    ├── <<Custom Python package>>    (Optional) User's Python package, which can be directly referenced in the model inference code
-    ├── saved_model.pb        (Mandatory) Protocol buffer file, which contains the diagram description of the model
-    ├── variables             Mandatory for the main file of the *.pb model. The folder must be named variables and contains the weight deviation of the model.
-        ├── variables.index                   Mandatory
-        ├── variables.data-00000-of-00001     Mandatory
-    ├──customize_service.py   (Optional) Model inference code file. The file must be named customize_service.py. Only one inference code file exists. The .py file on which customize_service.py depends can be directly put in the model directory.
- - - - -Parent topic: Template Description - - - diff --git a/modelarts/umn/temp/tensorflow.tmp b/modelarts/umn/temp/tensorflow.tmp deleted file mode 100644 index 9d8ccb79..00000000 --- a/modelarts/umn/temp/tensorflow.tmp +++ /dev/null @@ -1,739 +0,0 @@ - - -

TensorFlow

-

TensorFlow has two types of APIs: Keras and tf. Keras and tf use different code for training and saving models, but the same code for inference.

-

Training a Model (Keras API)

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
from keras.models import Sequential
-model = Sequential()
-from keras.layers import Dense
-import tensorflow as tf
-
-# Import a training dataset.
-mnist = tf.keras.datasets.mnist
-(x_train, y_train),(x_test, y_test) = mnist.load_data()
-x_train, x_test = x_train / 255.0, x_test / 255.0
-
-print(x_train.shape)
-
-from keras.layers import Dense
-from keras.models import Sequential
-import keras
-from keras.layers import Dense, Activation, Flatten, Dropout
-
-# Define a model network.
-model = Sequential()
-model.add(Flatten(input_shape=(28,28)))
-model.add(Dense(units=5120,activation='relu'))
-model.add(Dropout(0.2))
-
-model.add(Dense(units=10, activation='softmax'))
-
-# Define an optimizer and loss functions.
-model.compile(optimizer='adam',
-              loss='sparse_categorical_crossentropy',
-              metrics=['accuracy'])
-
-model.summary()
-# Train the model.
-model.fit(x_train, y_train, epochs=2)
-# Evaluate the model.
-model.evaluate(x_test, y_test)
-
-
- -

Saving a Model (Keras API)

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
from keras import backend as K  
-
-# K.get_session().run(tf.global_variables_initializer())
-
-# Define the inputs and outputs of the prediction API.
-# The key values of the inputs and outputs dictionaries are used as the index keys for the input and output tensors of the model.
- # The input and output definitions of the model must match the custom inference script.
-predict_signature = tf.saved_model.signature_def_utils.predict_signature_def(
-    inputs={"images" : model.input},
-    outputs={"scores" : model.output}
-)
-
-# Define a save path.
-builder = tf.saved_model.builder.SavedModelBuilder('./mnist_keras/')
-
-builder.add_meta_graph_and_variables(
-
-    sess = K.get_session(),
-    # The tf.saved_model.tag_constants.SERVING tag needs to be defined for inference and deployment.
-    tags=[tf.saved_model.tag_constants.SERVING],
-    """
-    signature_def_map: Only single items can exist, or the corresponding key needs to be defined as follows:
-    tf.saved_model.signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY
-    """
-    signature_def_map={
-        tf.saved_model.signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY:
-            predict_signature
-    }
-
-)
-builder.save()
-
-
- -

Training a Model (tf API)

  1
-  2
-  3
-  4
-  5
-  6
-  7
-  8
-  9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
-100
-101
-102
-103
-104
-105
-106
-107
-108
-109
-110
-111
-112
-113
-114
-115
-116
-117
-118
-119
-120
-121
-122
-123
-124
-125
-126
-127
-128
-129
-130
-131
-132
-133
-134
-135
-136
-137
-138
-139
-140
-141
-142
-143
-144
-145
-146
-147
-148
-149
-150
-151
-152
-153
-154
-155
-156
-157
-158
-159
-160
-161
-162
-163
-164
-165
-166
-167
-168
-169
-170
-171
-172
-173
-174
-175
-176
-177
-178
-179
-180
-181
-182
-183
-184
-185
-186
-187
-188
-189
-190
-191
-192
-193
-194
-195
-196
-197
-198
-199
-200
-201
-202
-203
-204
-205
-206
-207
-208
-209
-210
-211
-212
-213
-214
-215
-216
-217
-218
-219
-220
-221
-222
-223
-224
-225
from __future__ import print_function
-
-import gzip
-import os
-import urllib
-
-import numpy
-import tensorflow as tf
-from six.moves import urllib
-
-# Training data is obtained from the Yann LeCun official website http://yann.lecun.com/exdb/mnist/.
-SOURCE_URL = 'http://yann.lecun.com/exdb/mnist/'
-TRAIN_IMAGES = 'train-images-idx3-ubyte.gz'
-TRAIN_LABELS = 'train-labels-idx1-ubyte.gz'
-TEST_IMAGES = 't10k-images-idx3-ubyte.gz'
-TEST_LABELS = 't10k-labels-idx1-ubyte.gz'
-VALIDATION_SIZE = 5000
-
-
-def maybe_download(filename, work_directory):
-    """Download the data from Yann's website, unless it's already here."""
-    if not os.path.exists(work_directory):
-        os.mkdir(work_directory)
-    filepath = os.path.join(work_directory, filename)
-    if not os.path.exists(filepath):
-        filepath, _ = urllib.request.urlretrieve(SOURCE_URL + filename, filepath)
-        statinfo = os.stat(filepath)
-        print('Successfully downloaded %s %d bytes.' % (filename, statinfo.st_size))
-    return filepath
-
-
-def _read32(bytestream):
-    dt = numpy.dtype(numpy.uint32).newbyteorder('>')
-    return numpy.frombuffer(bytestream.read(4), dtype=dt)[0]
-
-
-def extract_images(filename):
-    """Extract the images into a 4D uint8 numpy array [index, y, x, depth]."""
-    print('Extracting %s' % filename)
-    with gzip.open(filename) as bytestream:
-        magic = _read32(bytestream)
-        if magic != 2051:
-            raise ValueError(
-                'Invalid magic number %d in MNIST image file: %s' %
-                (magic, filename))
-        num_images = _read32(bytestream)
-        rows = _read32(bytestream)
-        cols = _read32(bytestream)
-        buf = bytestream.read(rows * cols * num_images)
-        data = numpy.frombuffer(buf, dtype=numpy.uint8)
-        data = data.reshape(num_images, rows, cols, 1)
-        return data
-
-
-def dense_to_one_hot(labels_dense, num_classes=10):
-    """Convert class labels from scalars to one-hot vectors."""
-    num_labels = labels_dense.shape[0]
-    index_offset = numpy.arange(num_labels) * num_classes
-    labels_one_hot = numpy.zeros((num_labels, num_classes))
-    labels_one_hot.flat[index_offset + labels_dense.ravel()] = 1
-    return labels_one_hot
-
-
-def extract_labels(filename, one_hot=False):
-    """Extract the labels into a 1D uint8 numpy array [index]."""
-    print('Extracting %s' % filename)
-    with gzip.open(filename) as bytestream:
-        magic = _read32(bytestream)
-        if magic != 2049:
-            raise ValueError(
-                'Invalid magic number %d in MNIST label file: %s' %
-                (magic, filename))
-        num_items = _read32(bytestream)
-        buf = bytestream.read(num_items)
-        labels = numpy.frombuffer(buf, dtype=numpy.uint8)
-        if one_hot:
-            return dense_to_one_hot(labels)
-        return labels
-
-
-class DataSet(object):
-    """Class encompassing test, validation and training MNIST data set."""
-
-    def __init__(self, images, labels, fake_data=False, one_hot=False):
-        """Construct a DataSet. one_hot arg is used only if fake_data is true."""
-
-        if fake_data:
-            self._num_examples = 10000
-            self.one_hot = one_hot
-        else:
-            assert images.shape[0] == labels.shape[0], (
-                    'images.shape: %s labels.shape: %s' % (images.shape,
-                                                           labels.shape))
-            self._num_examples = images.shape[0]
-
-            # Convert shape from [num examples, rows, columns, depth]
-            # to [num examples, rows*columns] (assuming depth == 1)
-            assert images.shape[3] == 1
-            images = images.reshape(images.shape[0],
-                                    images.shape[1] * images.shape[2])
-            # Convert from [0, 255] -> [0.0, 1.0].
-            images = images.astype(numpy.float32)
-            images = numpy.multiply(images, 1.0 / 255.0)
-        self._images = images
-        self._labels = labels
-        self._epochs_completed = 0
-        self._index_in_epoch = 0
-
-    @property
-    def images(self):
-        return self._images
-
-    @property
-    def labels(self):
-        return self._labels
-
-    @property
-    def num_examples(self):
-        return self._num_examples
-
-    @property
-    def epochs_completed(self):
-        return self._epochs_completed
-
-    def next_batch(self, batch_size, fake_data=False):
-        """Return the next `batch_size` examples from this data set."""
-        if fake_data:
-            fake_image = [1] * 784
-            if self.one_hot:
-                fake_label = [1] + [0] * 9
-            else:
-                fake_label = 0
-            return [fake_image for _ in range(batch_size)], [
-                fake_label for _ in range(batch_size)
-            ]
-        start = self._index_in_epoch
-        self._index_in_epoch += batch_size
-        if self._index_in_epoch > self._num_examples:
-            # Finished epoch
-            self._epochs_completed += 1
-            # Shuffle the data
-            perm = numpy.arange(self._num_examples)
-            numpy.random.shuffle(perm)
-            self._images = self._images[perm]
-            self._labels = self._labels[perm]
-            # Start next epoch
-            start = 0
-            self._index_in_epoch = batch_size
-            assert batch_size <= self._num_examples
-        end = self._index_in_epoch
-        return self._images[start:end], self._labels[start:end]
-
-
-def read_data_sets(train_dir, fake_data=False, one_hot=False):
-    """Return training, validation and testing data sets."""
-
-    class DataSets(object):
-        pass
-
-    data_sets = DataSets()
-
-    if fake_data:
-        data_sets.train = DataSet([], [], fake_data=True, one_hot=one_hot)
-        data_sets.validation = DataSet([], [], fake_data=True, one_hot=one_hot)
-        data_sets.test = DataSet([], [], fake_data=True, one_hot=one_hot)
-        return data_sets
-
-    local_file = maybe_download(TRAIN_IMAGES, train_dir)
-    train_images = extract_images(local_file)
-
-    local_file = maybe_download(TRAIN_LABELS, train_dir)
-    train_labels = extract_labels(local_file, one_hot=one_hot)
-
-    local_file = maybe_download(TEST_IMAGES, train_dir)
-    test_images = extract_images(local_file)
-
-    local_file = maybe_download(TEST_LABELS, train_dir)
-    test_labels = extract_labels(local_file, one_hot=one_hot)
-
-    validation_images = train_images[:VALIDATION_SIZE]
-    validation_labels = train_labels[:VALIDATION_SIZE]
-    train_images = train_images[VALIDATION_SIZE:]
-    train_labels = train_labels[VALIDATION_SIZE:]
-
-    data_sets.train = DataSet(train_images, train_labels)
-    data_sets.validation = DataSet(validation_images, validation_labels)
-    data_sets.test = DataSet(test_images, test_labels)
-    return data_sets
-
-training_iteration = 1000
-
-modelarts_example_path =  './modelarts-mnist-train-save-deploy-example'
-
-export_path = modelarts_example_path + '/model/'
-data_path = './'
-
-print('Training model...')
-mnist = read_data_sets(data_path, one_hot=True)
-sess = tf.InteractiveSession()
-serialized_tf_example = tf.placeholder(tf.string, name='tf_example')
-feature_configs = {'x': tf.FixedLenFeature(shape=[784], dtype=tf.float32), }
-tf_example = tf.parse_example(serialized_tf_example, feature_configs)
-x = tf.identity(tf_example['x'], name='x')  # use tf.identity() to assign name
-y_ = tf.placeholder('float', shape=[None, 10])
-w = tf.Variable(tf.zeros([784, 10]))
-b = tf.Variable(tf.zeros([10]))
-sess.run(tf.global_variables_initializer())
-y = tf.nn.softmax(tf.matmul(x, w) + b, name='y')
-cross_entropy = -tf.reduce_sum(y_ * tf.log(y))
-train_step = tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy)
-values, indices = tf.nn.top_k(y, 10)
-table = tf.contrib.lookup.index_to_string_table_from_tensor(
-    tf.constant([str(i) for i in range(10)]))
-prediction_classes = table.lookup(tf.to_int64(indices))
-for _ in range(training_iteration):
-    batch = mnist.train.next_batch(50)
-    train_step.run(feed_dict={x: batch[0], y_: batch[1]})
-correct_prediction = tf.equal(tf.argmax(y, 1), tf.argmax(y_, 1))
-accuracy = tf.reduce_mean(tf.cast(correct_prediction, 'float'))
-print('training accuracy %g' % sess.run(
-    accuracy, feed_dict={
-        x: mnist.test.images,
-        y_: mnist.test.labels
-    }))
-print('Done training!')
-
-
- -

Saving a Model (tf API)

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
# Export the model.
-# The model needs to be saved using the saved_model API.
-print('Exporting trained model to', export_path)
-builder = tf.saved_model.builder.SavedModelBuilder(export_path)
-
-tensor_info_x = tf.saved_model.utils.build_tensor_info(x)
-tensor_info_y = tf.saved_model.utils.build_tensor_info(y)
-
-# Define the inputs and outputs of the prediction API.
-# The key values of the inputs and outputs dictionaries are used as the index keys for the input and output tensors of the model.
- # The input and output definitions of the model must match the custom inference script.
-prediction_signature = (
-    tf.saved_model.signature_def_utils.build_signature_def(
-        inputs={'images': tensor_info_x},
-        outputs={'scores': tensor_info_y},
-        method_name=tf.saved_model.signature_constants.PREDICT_METHOD_NAME))
-
-legacy_init_op = tf.group(tf.tables_initializer(), name='legacy_init_op')
-builder.add_meta_graph_and_variables(
-    # Set tag to serve/tf.saved_model.tag_constants.SERVING.
-    sess, [tf.saved_model.tag_constants.SERVING],
-    signature_def_map={
-        'predict_images':
-            prediction_signature,
-    },
-    legacy_init_op=legacy_init_op)
-
-builder.save()
-
-print('Done exporting!')
-
-
- -

Inference Code (Keras and tf APIs)

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
from PIL import Image
-import numpy as np
-from model_service.tfserving_model_service import TfServingBaseService
-
-
-class mnist_service(TfServingBaseService):
-
-    # Match the model input with the user's HTTPS API input during preprocessing.
-    # The model input corresponding to the preceding training part is {"images":<array>}.
-    def _preprocess(self, data):
-
-        preprocessed_data = {}
-        images = []
-        # Iterate the input data.
-        for k, v in data.items():
-            for file_name, file_content in v.items():
-                image1 = Image.open(file_content)
-                image1 = np.array(image1, dtype=np.float32)
-                image1.resize((1,784))
-                images.append(image1)
-        # Return the numpy array.
-        images = np.array(images,dtype=np.float32)
-        # Perform batch processing on multiple input samples and ensure that the shape is the same as that inputted during training.
-        images.resize((len(data), 784))
-        preprocessed_data['images'] = images
-        return preprocessed_data
-
-    # Processing logic of the inference for invoking the parent class.
-
-    # The output corresponding to model saving in the preceding training part is {"scores":<array>}.
-    # Postprocess the HTTPS output.
-    def _postprocess(self, data):
-        infer_output = {"mnist_result": []}
-        # Iterate the model output.
-        for output_name, results in data.items():
-            for result in results:
-                infer_output["mnist_result"].append(result.index(max(result)))
-        return infer_output
-
-
- - - - -Parent topic: Examples of Custom Scripts - - - diff --git a/modelarts/umn/temp/testing_a_service.tmp b/modelarts/umn/temp/testing_a_service.tmp deleted file mode 100644 index 2c717a2e..00000000 --- a/modelarts/umn/temp/testing_a_service.tmp +++ /dev/null @@ -1,25 +0,0 @@ - - -

Testing a Service

-

After a model is deployed as a real-time service, you can debug code or add files for testing on the Prediction tab page. Based on the input request (JSON text or file) defined by the model, the service can be tested in either of the following ways:

-
  1. JSON Text Prediction: If the input type of the model of the deployed service is JSON text, that is, the input does not contain files, you can enter the JSON code on the Prediction tab page for service testing.
  2. File Prediction (Images and Audios): If the input type of the model of the deployed service is file, including images, audios, and videos, you can add images on the Prediction tab page for service testing.
-
  • If the input type is image, the size of a single image must be less than 10 MB.
  • The following image types are supported: png, psd, jpg, jpeg, bmp, gif, webp, psd, svg, and tiff.
- -

Input Parameters

For the service that you have deployed, you can learn about its input parameters of the service, that is, the input request type mentioned above, on the Usage Guides tab page of the service details page.

-

The input parameters displayed on the Usage Guides tab page depend on the model source that you select.

-
  • If your model comes from ExeML or a built-in algorithm, the input and output parameters are defined by ModelArts. For details, see the Usage Guides tab page. On the Prediction tab page, enter the corresponding JSON text or file for service testing.
  • If you use a custom model with the inference code and configuration file compiled by yourself (Specifications for Compiling the Model Configuration File), the Usage Guides tab page only visualizes your data. The following figure shows the mapping between the input parameters displayed on the Usage Guides tab page and the configuration file.Figure 1 Mapping between the configuration file and Usage Guides
    -
  • If your model is imported using a model template, the input and output parameters vary with the template. For details, see Introduction to Model Templates.
- -

JSON Text Prediction

  1. Log in to the ModelArts management console and choose Service Deployment > Real-Time Services.
  2. On the Real-Time Services page, click the name of the target service. The service details page is displayed. On the Prediction tab page, enter the prediction code and click Predict to perform prediction.

    -
- -

File Prediction (Images and Audios)

  1. Log in to the ModelArts management console and choose Service Deployment > Real-Time Services.
  2. On the Real-Time Services page, click the name of the target service. The service details page is displayed. On the Prediction tab page, click Upload and select a test file. After the file is uploaded successfully, click Predict to perform a prediction test.

    -
- - - - -Parent topic: Real-Time Services - - - diff --git a/modelarts/umn/temp/text_classification.tmp b/modelarts/umn/temp/text_classification.tmp deleted file mode 100644 index 8fddb8db..00000000 --- a/modelarts/umn/temp/text_classification.tmp +++ /dev/null @@ -1,44 +0,0 @@ - - -

Text Classification

-

Model training requires a large amount of labeled data. Therefore, before the model training, add labels to the files that are not labeled. In addition, you can modify, delete, and re-label the labeled text.

-

Text classification classifies text content based on labels. Before labeling text content, you need to understand the following:

-
  • Text labeling supports multiple labels. That is, you can add multiple labels to a labeling object.
  • A label name can contain a maximum of 32 characters, including Chinese characters, letters, digits, hyphens (-), and underscores (_).
-

Starting Labeling

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset to be labeled based on the labeling type, and click the dataset name to go to the Dashboard tab page of the dataset.

    By default, the Dashboard tab page of the current dataset version is displayed. If you need to label the dataset of another version, click the Versions tab and then click Set to Current Version in the right pane. For details, see Managing Dataset Versions.

    -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed. By default, all data of the dataset is displayed on the dataset details page.
- -

Labeling Content

The dataset details page displays the labeled and unlabeled text files in the dataset. The Unlabeled tab page is displayed by default.

-
  1. On the Unlabeled tab page, the objects to be labeled are listed in the left pane. In the list, click the text object to be labeled, and select a label in the Label Set area in the right pane. Multiple labels can be added to a labeling object.

    You can repeat this operation to select objects and add labels to the objects.

    -Figure 1 Labeling for text classification
    -
  2. After all objects are labeled, click Save Current Page at the bottom of the page to complete labeling text files on the Unlabeled tab page.
- -

Adding Labels

  • Adding labels on the Unlabeled tab page: Click the plus sign (+) next to Label Set. On the Add Label page that is displayed, add a label name, select a label color, and click OK.Figure 2 Adding a label (1)
    -
  • Adding labels on the Labeled tab page: Click the plus sign (+) next to All Labels. On the Add Label page that is displayed, add a label name, select a label color, and click OK.Figure 3 Adding a label (2)
    -
- -

Viewing the Labeled Text

On the dataset details page, click the Labeled tab to view the list of the labeled text. You can also view all labels supported by the dataset in the All Labels area on the right.

- -

Modifying Labeled Data

After labeling data, you can modify labeled data on the Labeled tab page.

-
  • Modifying based on texts

    On the dataset details page, click the Labeled tab, and select the text to be modified from the text list.

    -

    In the text list, click the text. When the text background turns blue, the text is selected. If a text file has multiple labels, you can click above a label to delete the label.

    -
-
  • Modifying based on labels

    On the dataset details page, click the Labeled tab. The information about all labels is displayed on the right.

    -
    • Batch modification: In the All Labels area, click the editing icon in the Operation column, modify the label name in the text box, select a label color, and click OK.
    • Batch deletion: In the All Labels area, click the deletion icon in the Operation column to delete the label. In the dialog box that is displayed, select Delete label or Delete label and objects with only the label, and click OK.
    -
- -

Adding Files

In addition to automatically synchronizing data from Input Dataset Path, you can directly add text files on ModelArts for data labeling.

-
  1. On the dataset details page, click the Unlabeled tab. Then click Add File.
  2. In the displayed Add File dialog box, set the parameters as required and then select the file to be uploaded.

    Select one or more files to be uploaded in the local environment. Only .txt and .csv files are supported. The total size of files uploaded at a time cannot exceed 8 MB. Text and Label Separator and Label Separator must be different.

    -
    • Pattern: Select Merge text objects and labels or Separate text objects and labels. An example is provided. Determine the mode of the file to be added by referring to the example.
    • Text and Label Separator: Select Tab, Space, Semicolon, Comma, or Other. If you select Other, enter a separator in the text box on the right.
    • Label Separator: Select Tab, Space, Semicolon, Comma, or Other. If you select Other, enter a separator in the text box on the right.
    -
  3. In the Add File dialog box, click Upload. The files you add will be automatically displayed on the Unlabeled or Labeled tab page.
- -

Deleting a File

You can quickly delete the files you want to discard.

-
  • On the Unlabeled tab page, select the text to be deleted, and click Delete in the upper left corner to delete the text.
  • On the Labeled tab page, select the text to be deleted and click Delete. Alternatively, you can tick Select Images on Current Page to select all text objects on the current page and click Delete in the upper left corner.
-

The background of the selected text is blue.

- - - - -Parent topic: Labeling Data - - - diff --git a/modelarts/umn/temp/text_triplet.tmp b/modelarts/umn/temp/text_triplet.tmp deleted file mode 100644 index ef0218ab..00000000 --- a/modelarts/umn/temp/text_triplet.tmp +++ /dev/null @@ -1,38 +0,0 @@ - - -

Text Triplet

-

Triplet labeling is suitable for scenarios where structured information, such as subjects, predicates, and objects, needs to be labeled in statements. With this function, not only entities in statements, but also relationships between entities can be labeled. Triplet labeling is often used in natural language processing tasks such as dependency syntax analysis and information extraction.

-

Text triplet labeling involves two classes of important labels: Entity Label and Relationship Label. For the Relationship Label, you need to set its Source entity and Target entity.

-
  • You can define multiple entity and relationship labels for a text object.
  • The Entity Label defined during dataset creation cannot be deleted.
-

Precautions

Before labeling, ensure that the Entity Label and Relationship Label of a dataset have been defined. For the Relationship Label, you need to set its Source entity and Target entity. The Relationship Label must be between the defined Source entity and Target entity.

-

For example, if two entities are labeled as Place, you cannot add any relationship label between them. If a relationship label cannot be added, a red cross is displayed.

- -

Starting Labeling

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset to be labeled based on the labeling type, and click the dataset name to go to the Dashboard tab page of the dataset.

    By default, the Dashboard tab page of the current dataset version is displayed. If you need to label the dataset of another version, click the Versions tab and then click Set to Current Version in the right pane. For details, see Managing Dataset Versions.

    -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed. By default, all data of the dataset is displayed on the dataset details page.
- -

Labeling Content

The dataset details page displays the labeled and unlabeled text objects in the dataset. The Unlabeled tab page is displayed by default.

-
  1. On the Unlabeled tab page, the objects to be labeled are listed in the left pane. In the list, click a text object, select the corresponding text content on the right pane, and select an entity name from the displayed entity list to label the content.Figure 1 Labeling an entity
    -
  2. After labeling multiple entities, click the source entity and target entity in sequence and select a relationship type from the displayed relationship list to label the relationship.Figure 2 Labeling a relationship
    -
  3. After all objects are labeled, click Save Current Page at the bottom of the page.
-

You cannot modify the labels of a dataset in the text triplet type on the labeling page. Instead, click Edit to enter the Modify Dataset page and modify the Entity Label and Relationship Label.

- - -

Modifying Labeled Data

After labeling data, you can modify labeled data on the Labeled tab page.

-

On the dataset details page, click the Labeled tab. Select a text object in the left pane and the right pane displays the detailed label information. You can move your cursor to the entity or relationship label, and right-click to delete it. You can also click the source entity and target entity in sequence to add a relationship label.

-

You can click Delete Labels on Current Item at the bottom of the page to delete all labels in the selected text object.

- -

Adding a File

In addition to automatically synchronizing data from Input Dataset Path, you can directly add text files on ModelArts for data labeling.

-
  1. On the dataset details page, click the Unlabeled tab. Then click Add File.
  2. In the Add File dialog box that is displayed, select the files to be uploaded.

    Select one or more files to be uploaded in the local environment. Only .txt and .csv files are supported. The total size of files uploaded at a time cannot exceed 8 MB.

    -
  3. In the Add File dialog box, click Upload. The files you add will be automatically displayed in the Labeling Objects list on the Unlabeled tab page.
- -

Deleting a File

You can quickly delete the files you want to discard.

-
  • On the Unlabeled tab page, select the text to be deleted, and click Delete in the upper left corner to delete the text.
  • On the Labeled tab page, select the text to be deleted and click Delete. Alternatively, you can tick Select Images on Current Page to select all text objects on the current page and click Delete in the upper left corner.
-

The background of the selected text is blue. If no text is selected on the page, the Delete button is unavailable.

- - - - -Parent topic: Labeling Data - - - diff --git a/modelarts/umn/temp/tips.tmp b/modelarts/umn/temp/tips.tmp deleted file mode 100644 index 6eefe798..00000000 --- a/modelarts/umn/temp/tips.tmp +++ /dev/null @@ -1,22 +0,0 @@ - - -

Tips

-

- - - - - -Parent topic: ExeML - - - diff --git a/modelarts/umn/temp/training_a_model.tmp b/modelarts/umn/temp/training_a_model.tmp deleted file mode 100644 index e9e0b652..00000000 --- a/modelarts/umn/temp/training_a_model.tmp +++ /dev/null @@ -1,106 +0,0 @@ - - -

Training a Model

-

After labeling the images, you can train a model. You can perform model training to obtain the required image classification model. Training images must be classified into at least two classes, and each class must contain at least five images. Before training, ensure that the labeled images meet the requirements. Otherwise, the Train button is unavailable.

-

Procedure

  1. On the ExeML page, click the name of the project that is successfully created. The Label Data tab page is displayed.
  2. On the Label Data tab page, click Train in the upper right corner. In the displayed Training Configuration dialog box, set related parameters. Table 1 describes the parameters. -.. _modelarts_21_0006__en-us_topic_0284258835_en-us_topic_0169446155_table56110116164: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Parameter description

    Parameter

    -

    Description

    -

    Default Value

    -

    Dataset Version

    -

    This version is the one when the dataset is published in Data Management. In an ExeML project, when a training job is started, the dataset is published as a version based on the previous data labeling.

    -

    The system automatically provides a version number. You can change it to the version number that you want.

    -

    Randomly provided by the system

    -

    Training and Validation Ratios

    -

    The labeled sample is randomly divided into a training set and a validation set. By default, the ratio for the training set is 0.8, and that for the validation set is 0.2. The usage field in the manifest file records the set type. The value ranges from 0 to 1.

    -

    0.8

    -

    Incremental Training Version

    -

    Select the version with the highest precision to perform training again. This accelerates model convergence and improves training precision.

    -

    None

    -

    Max. Training Duration (Minute)

    -

    If training is not completed within the maximum training duration, the model is saved and training stops. To prevent the model from exiting before convergence, set this parameter to a large value. The value ranges from 6 to 6000. It is a good practice to properly extend the training duration.

    -

    60

    -

    Training Preference

    -
    • performance_first: performance first. The training duration is short and the generated model is small.
    • balance: balanced performance and precision
    • accuracy_first: precision first. The training duration is long and the generated model is large.
    -

    balance

    -

    Instance Flavor

    -

    Select the resource specifications used for training. By default, the following specifications are supported:

    -
    • Compute-intensive instance (GPU)
    -

    The compute flavors are for reference only. Obtain the flavors on the management console.

    -

    ExeML (GPU)

    -
    - -
  3. After configuring training parameters, click Next to go to the configuration page, confirm the specifications, and click Submit to start auto model training. The training takes a certain period of time. Wait until the training is complete. If you close or exit this page, the system still performs the training operation.
  4. On the Train Model tab page, wait until the training status changes from Running to Completed.
  5. View the training details, such as Accuracy, Evaluation Result, Training Parameters, and Classification Statistics. For details about the evaluation result parameters, see Table 2. -.. _modelarts_21_0006__en-us_topic_0284258835_en-us_topic_0169446155_table19888201216: - - - - - - - - - - - - - - - - - - -
    Table 2 Evaluation result parameters

    Parameter

    -

    Description

    -

    Recall

    -

    Fraction of correctly predicted samples over all samples predicted as a class. It shows the ability of a model to distinguish positive samples.

    -

    Precision

    -

    Fraction of correctly predicted samples over all samples predicted as a class. It shows the ability of a model to distinguish negative samples.

    -

    Accuracy

    -

    Fraction of correctly predicted samples over all samples. It shows the general ability of a model to recognize samples.

    -

    F1 Score

    -

    Harmonic average of the precision and recall of a model. It is used to evaluate the quality of a model. A high F1 score indicates a good model.

    -
    - -
-

An ExeML project supports multiple rounds of training, and each round generates a version. For example, the first training version is V001 (xxx), and the next version is V002 (xxx). The trained models can be managed by training version. After the trained model meets your requirements, deploy the model as a service.

- - - - - -Parent topic: Image Classification - - - diff --git a/modelarts/umn/temp/training_jobs.tmp b/modelarts/umn/temp/training_jobs.tmp deleted file mode 100644 index 4dd5423f..00000000 --- a/modelarts/umn/temp/training_jobs.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Training Jobs

- - - - - -Parent topic: FAQs - - - diff --git a/modelarts/umn/temp/training_management.tmp b/modelarts/umn/temp/training_management.tmp deleted file mode 100644 index 833cccb4..00000000 --- a/modelarts/umn/temp/training_management.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

Training Management

- - - - - diff --git a/modelarts/umn/temp/undefined_mode.tmp b/modelarts/umn/temp/undefined_mode.tmp deleted file mode 100644 index a772f283..00000000 --- a/modelarts/umn/temp/undefined_mode.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Undefined Mode

-

Description

The undefined mode does not define the input and output mode. The input and output mode is determined by the model. Select this mode only when the existing input and output mode is not applicable to the application scenario of the model. The models imported in undefined mode cannot be deployed as batch services. In addition, the service prediction page may not be displayed properly. New modes are coming soon for more application scenarios.

- -

Input

No limit.

- -

Output

No limit.

- -

Sample Request

The undefined mode has no specific sample request because the input and output of the request are entirely determined by the model.

- - - - -Parent topic: Input and Output Modes - - - diff --git a/modelarts/umn/temp/uploading_and_downloading_data.tmp b/modelarts/umn/temp/uploading_and_downloading_data.tmp deleted file mode 100644 index 8a3b94c1..00000000 --- a/modelarts/umn/temp/uploading_and_downloading_data.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - - -

Uploading and Downloading Data

- -

- - - - - - -Parent topic: Using JupyterLab - - - diff --git a/modelarts/umn/temp/uploading_data_to_jupyterlab.tmp b/modelarts/umn/temp/uploading_data_to_jupyterlab.tmp deleted file mode 100644 index 505e7569..00000000 --- a/modelarts/umn/temp/uploading_data_to_jupyterlab.tmp +++ /dev/null @@ -1,38 +0,0 @@ - - -

Uploading Data to JupyterLab

-

On the JupyterLab page, click Upload Files to upload a file. For details, see Uploading a File in Introduction to JupyterLab and Common Operations. If a message is displayed indicating that the size of the files to be uploaded exceeds the upper limit when uploading files to notebook instances or JupyterLab, you can upload the files to OBS and then download them to notebook instances.

-

Step 1: Uploading Files to OBS

Use the OBS API to upload large files because OBS Console has restrictions on the file size and quantity.

- -

Step 2: Downloading Files from OBS to Notebook Instances

A notebook instance can be mounted to OBS or EVS as the storage location. The operation method varies depending on the instance types.

-
  • Downloading files to notebook instances with EVS attached
    • Use the following MoXing API to synchronize files from OBS to notebook instances.Read an OBS file. For example, if you read the obs://bucket_name/obs_file.txt file, the content is returned as strings.
      1
      file_str = mox.file.read('obs://bucket_name/obs_file.txt')
      -
      -
      - -You can also open the file object and read data from it. Both methods are equivalent.
      1
      -2
      with mox.file.File('obs://bucket_name/obs_file.txt', 'r') as f:
      -  file_str = f.read()
      -
      -
      - -
    • Use the OBS API in the ModelArts SDK to download data from OBS to notebook instances.

      If the size of a single file exceeds 5 GB, the file cannot be uploaded in this mode. Use the MoXing API to upload large files.

      - -

      Sample code:

      -
      1
      -2
      -3
      from modelarts.session import Session
      -session = Session()
      -session.download_data(bucket_path="/bucket-name/dir1/sdk.txt", path="/home/user/sdk/obs.txt")
      -
      -
      -
    -
  • Downloading files to notebook instances using OBS for data storage

    Upload files to the OBS path specified during notebook instance creation and synchronize the files from OBS to the notebook instances using Sync OBS.

    -
- - - - -Parent topic: Uploading and Downloading Data - - - diff --git a/modelarts/umn/temp/using_custom_images_to_train_models.tmp b/modelarts/umn/temp/using_custom_images_to_train_models.tmp deleted file mode 100644 index 3435deb3..00000000 --- a/modelarts/umn/temp/using_custom_images_to_train_models.tmp +++ /dev/null @@ -1,147 +0,0 @@ - - -

Using Custom Images to Train Models

-

If the framework used for algorithm development is not a frequently-used framework, you can build an algorithm into a custom image and use the custom image to create a training job.

-

Prerequisites

  • Data has been prepared. Specifically, you have created an available dataset in ModelArts, or you have uploaded the dataset used for training to the OBS directory.
  • If the algorithm source is Custom, create an image and upload the image to SWR. For details, see .
  • The training script has been uploaded to the OBS directory.
  • At least one empty folder has been created on OBS for storing the training output.
  • The account is not in arrears because resources are consumed when training jobs are running.
  • The OBS directory you use and ModelArts are in the same region.
- -

Precautions

  • In the dataset directory specified for a training job, the names of the files (such as the image file, audio file, and label file) containing data used for training contain 0 to 255 characters. If the names of certain files in the dataset directory contain over 255 characters, the training job will ignore these files and use data in the valid files for training. If the names of all files in the dataset directory contain over 255 characters, no data is available for the training job and the training job fails.
  • In the training script, the Data Source and Training Output Path parameters must be set to the OBS path. Use the to perform read and write operations in the path.
- -

Creating a Training Job

  1. Log in to the ModelArts management console. In the left navigation pane, choose Training Management > Training Jobs. By default, the system switches to the Training Jobs page.
  2. In the upper left corner of the training job list, click Create to switch to the Create Training Job page.
  3. Set related parameters.
    1. Set the basic information, including Name, Version, and Description. The Version information is automatically generated by the system and named in an ascending order of V001, V002, and so on. You cannot manually modify it.

      Specify Name and Description according to actual requirements.

      -
    2. Set job parameters, including the data source, algorithm source, and more. For details, see Table 1. -.. _modelarts_23_0239__en-us_topic_0216621184_table1819364517144: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Table 1 Job parameters

      Parameter

      -

      Sub-Parameter

      -

      Description

      -

      One-Click Configuration

      -

      -

      -

      If you have saved job parameter configurations in ModelArts, click One-Click Configuration and select an existing job parameter configuration as prompted to quickly complete parameter setting for the job.

      -

      Algorithm Source

      -

      Custom

      -

      For details about custom image specifications, see Specifications for Custom Images Used for Training Jobs.

      -
      • Image Path: SWR URL after the image is uploaded to SWR. For details about how to upload an image, see Creating and Uploading a Custom Image.
      • Code Directory: OBS path for storing the training code file.
      • Boot Command: Command to boot the training job after the image is started. Set this parameter based on site requirements. If the custom image is based on a basic ModelArts image, set parameters by referring to Creating a Training Job Using a Custom Image (GPU).
      -

      Data Source

      -

      Dataset

      -

      Select an available dataset and its version from the ModelArts Data Management module.

      -
      • Dataset: Select an existing dataset from the drop-down list. If no dataset is available in ModelArts, no result will be displayed in the drop-down list.
      • Version: Select a version according to the Dataset setting.
      -

      Data path

      -

      Select the training data from your OBS bucket. On the right of the Data path text box, click Select. In the dialog box that is displayed, select an OBS folder for storing data.

      -

      Training Output Path

      -

      -

      -

      Storage path of the training result

      - NOTE:

      To minimize errors, select an empty directory for Training Output Path. Do not select the directory used for storing the dataset for Training Output Path.

      - -

      Environment Variable

      -

      -

      -

      Add environment variables based on your image file. This parameter is optional. You can click Add Environment Variable to add multiple variable parameters.

      -

      Job Log Path

      -

      -

      -

      Select a path for storing log files generated during job running.

      -
      - -
    3. Select resources for the training job. -.. _modelarts_23_0239__en-us_topic_0216621184_table8958315124918: - - - - - - - - - - - - - - - - - - -
      Table 2 Resource parameters

      Parameter

      -

      Description

      -

      Resource Pool

      -

      Select resource pools for the job.

      -

      Type

      -

      If Resource Pool is set to Public resource pools, select a resource type. Available resource types are CPU and GPU.

      -

      The GPU resource delivers better performance, and the CPU resource is more cost effective. If the selected algorithm has been defined to use the CPU or GPU, the resource type is automatically displayed on the page. Select the resource type as required.

      -

      Specifications

      -

      Select a resource flavor based on the resource type.

      -

      -

      Compute Nodes

      -

      Set the number of compute nodes. If you set Compute Nodes to 1, the standalone computing mode is used. If you set Compute Nodes to a value greater than 1, the distributed computing mode is used. Select a computing mode based on the actual requirements.

      -
      - -
    4. Configure Notification and select whether to save the parameters of the training job. -.. _modelarts_23_0239__en-us_topic_0216621184_table1217141794320: - - - - - - - - - - - - -
      Table 3 Parameters related to notification and parameter configuration saving

      Parameter

      -

      Description

      -

      Notification

      -

      Select the resource pool status to be monitored from the event list, and SMN sends a notification message when the event occurs.

      -

      This parameter is optional. You can choose whether to enable subscription based on actual requirements. If you enable subscription, set the following parameters as required:

      -
      • Topic: indicates the topic name. You can create a topic on the SMN console.
      • Event: indicates the event to be subscribed to. The options are OnJobRunning, OnJobSucceeded, and OnJobFailed, indicating that training is in progress, successful, and failed, respectively.
      -

      Saving Training Parameters

      -

      If you select this option, the parameter settings of the current job will be saved to facilitate subsequent job creation.

      -

      Select Save Training Parameters and specify Configuration Name and Description. After a training job is created, you can switch to the Job Parameters tab page to view your saved job parameter settings. For details, see Managing Job Parameters.

      -
      - -
    5. After setting the parameters, click Next.
    -
  4. Confirm that the information is correct on the Confirm page that is displayed and click Submit. Generally, training jobs run for a period of time, which may be several minutes or tens of minutes depending on the amount of your selected data and resources.

    After a custom image job is created, the system authorizes ModelArts to obtain and run the image by default. When you run a custom image job for the first time, ModelArts checks the custom image. For details about the check, see Specifications for Custom Images Used for Training Jobs. You can view the cause of the check failure in the log and modify the custom image based on the log.

    -

    After the image is checked, the background starts the custom image container to run the custom image training job. You can switch to the training job list to view the basic information about training jobs. In the training job list, Status of the newly created training job is Initializing. If the status changes to Successful, the training job ends and the model generated is stored in the location specified by Training Output Path. If the status of a training job changes to Running failed. Click the name of the training job and view the job logs. Troubleshoot the fault based on the logs.

    -
    • After an image is reviewed, the image does not need to be reviewed again when being used to create training jobs again.
    • The default user of a custom image must be the user whose UID is 1101.
    - -
- - - - -Parent topic: Creating a Training Job - - - diff --git a/modelarts/umn/temp/using_frequently-used_frameworks_to_train_models.tmp b/modelarts/umn/temp/using_frequently-used_frameworks_to_train_models.tmp deleted file mode 100644 index bc95f30e..00000000 --- a/modelarts/umn/temp/using_frequently-used_frameworks_to_train_models.tmp +++ /dev/null @@ -1,281 +0,0 @@ - - -

Using Frequently-used Frameworks to Train Models

-

If you use frequently-used frameworks, such as TensorFlow and MXNet, to develop algorithms locally, you can select Frequently-used to create training jobs and build models.

-

Prerequisites

  • Data has been prepared. Specifically, you have created an available dataset in ModelArts, or you have uploaded the dataset used for training to the OBS directory.
  • If you select Frequently-used for Algorithm Source, prepare the training script and upload it to the OBS directory.
  • At least one empty folder has been created on OBS for storing the training output.
  • The account is not in arrears because resources are consumed when training jobs are running.
  • The OBS directory you use and ModelArts are in the same region.
- -

Precautions

  • In the dataset directory specified for a training job, the names of the files (such as the image file, audio file, and label file) containing data used for training contain 0 to 255 characters. If the names of certain files in the dataset directory contain over 255 characters, the training job will ignore these files and use data in the valid files for training. If the names of all files in the dataset directory contain over 255 characters, no data is available for the training job and the training job fails.
  • In the training script, the Data Source and Training Output Path parameters must be set to the OBS path. Use the to perform read and write operations in the path.
- -

Frequently-used AI Frameworks for Training Management

ModelArts supports the following AI engines and versions.

- -.. _modelarts_23_0238__en-us_topic_0216621183_table1106232165220: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 AI engines supported by training jobs

Environment

-

Supported Chip

-

System Architecture

-

System Version

-

AI Engine and Version

-

Supported CUDA or Ascend Version

-

TensorFlow

-

CPU and GPU

-

x86_64

-

Ubuntu 16.04

-

TF-1.13.1-python3.6

-

CUDA 10.0

-

TF-2.1.0-python3.6

-

CUDA 10.1

-

Caffe

-

CPU and GPU

-

x86_64

-

Ubuntu 16.04

-

Caffe-1.0.0-python2.7

-

CUDA 8.0

-

Spark_MLlib

-

CPU

-

x86_64

-

Ubuntu 16.04

-

Spark-2.3.2-python3.6

-

N/A

-

XGBoost-Sklearn

-

CPU

-

x86_64

-

Ubuntu 16.04

-

Scikit_Learn-0.18.1-python3.6

-

N/A

-

PyTorch

-

CPU and GPU

-

x86_64

-

Ubuntu 16.04

-

PyTorch-1.3.0-python3.6

-

CUDA 10.0

-

PyTorch-1.4.0-python3.6

-

CUDA 10.1

-

Ascend-Powered-Engine

-

-

Ascend 910

-

-

AArch64

-

EulerOS 2.8

-

Mindspore-1.1.1-python3.7-aarch64

-

C76

-

TF-1.15-python3.7-aarch64

-

C76

-

MindSpore-GPU

-

CPU and GPU

-

x86_64

-

Ubuntu 18.04

-

MindSpore-1.1.0-python3.7

-

CUDA 10.1

-
- - -

Creating a Training Job

  1. Log in to the ModelArts management console. In the left navigation pane, choose Training Management > Training Jobs. By default, the system switches to the Training Jobs page.
  2. In the upper left corner of the training job list, click Create to switch to the Create Training Job page.
  3. Set related parameters.
    1. Set the basic information, including Name, Version, and Description. The Version information is automatically generated by the system and named in an ascending order of V001, V002, and so on. You cannot manually modify it.

      Specify Name and Description according to actual requirements.

      -
    2. Set job parameters, including the data source, algorithm source, and more. For details, see Table 2. -.. _modelarts_23_0238__en-us_topic_0216621183_table1819364517144: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Table 2 Job parameters

      Parameter

      -

      Sub-Parameter

      -

      Description

      -

      One-Click Configuration

      -

      -

      -

      If you have saved job parameter configurations in ModelArts, click One-Click Configuration and select an existing job parameter configuration as prompted to quickly complete parameter setting for the job.

      -

      Algorithm Source

      -

      Frequently-used

      -

      Select an AI engine and its version and specify Code Directory and Boot File. The framework selected for the AI engine must be the same as the one you select when compiling training code. For example, if TensorFlow is used in your training code, select TensorFlow when you create a training job.

      -

      For details about the supported AI engines and versions, see Frequently-used AI Frameworks for Training Management.

      -

      If your model requires Python dependency packages, place the dependency packages and their configuration files in the code directory based on the requirements defined in ModelArts. For details, see How Do I Create a Training Job When a Dependency Package Is Referenced in a Model?.

      -

      Data Source

      -

      Dataset

      -

      Select an available dataset and its version from the ModelArts Data Management module.

      -
      • Dataset: Select an existing dataset from the drop-down list. If no dataset is available in ModelArts, no result will be displayed in the drop-down list.
      • Version: Select a version according to the Dataset setting.
      -

      Data path

      -

      Select the training data from your OBS bucket. On the right of the Data path text box, click Select. In the dialog box that is displayed, select an OBS folder for storing data.

      -

      Training Output Path

      -

      -

      -

      Select a path for storing the training result.

      - NOTE:

      To minimize errors, select an empty directory for Training Output Path. Do not select the directory used for storing the dataset for Training Output Path.

      - -

      Running Parameter

      -

      -

      -

      Set the command line parameters in the code based on the algorithm code logic. Make sure that the parameter names are the same as those in the code.

      -

      For example, train_steps = 10000, where train_steps is a passing parameter in code.

      -

      Job Log Path

      -

      -

      -

      Select a path for storing log files generated during job running.

      -
      - -
    3. Select resources for the training job. -.. _modelarts_23_0238__en-us_topic_0216621183_table1110144413718: - - - - - - - - - - - - - - - - - - -
      Table 3 Resource parameters

      Parameter

      -

      Description

      -

      Resource Pool

      -

      Select resource pools for the job.

      -

      Type

      -

      If Resource Pool is set to Public resource pools, select a resource type. Available resource types are CPU and GPU.

      -

      The GPU resource delivers better performance, and the CPU resource is more cost effective. If the selected algorithm has been defined to use the CPU or GPU, the resource type is automatically displayed on the page. Select the resource type as required.

      - NOTE:

      If GPU resources are used in training code, you must select a GPU cluster when selecting a resource pool. Otherwise, the training job may fail.

      - -

      Specifications

      -

      Select a resource flavor based on the resource type.

      -

      -

      Compute Nodes

      -

      Set the number of compute nodes. If you set Compute Nodes to 1, the standalone computing mode is used. If you set Compute Nodes to a value greater than 1, the distributed computing mode is used. Select a computing mode based on the actual requirements.

      -

      When Frequently-used of Algorithm Source is set to Caffe, only standalone training is supported, that is, Compute Nodes must be set to 1. For other options of Frequently-used, you can select the standalone or distributed mode based on service requirements.

      -
      - -
    4. Configure Notification and select whether to save the parameters of the training job. -.. _modelarts_23_0238__en-us_topic_0216621183_table1217141794320: - - - - - - - - - - - - -
      Table 4 Parameters related to notification and parameter configuration saving

      Parameter

      -

      Description

      -

      Notification

      -

      Select the resource pool status to be monitored from the event list, and SMN sends a notification message when the event occurs.

      -

      This parameter is optional. You can choose whether to enable subscription based on actual requirements. If you enable subscription, set the following parameters as required:

      -
      • Topic: indicates the topic name. You can create a topic on the SMN console.
      • Event: indicates the event to be subscribed to. The options are OnJobRunning, OnJobSucceeded, and OnJobFailed, indicating that training is in progress, successful, and failed, respectively.
      -

      Saving Training Parameters

      -

      If you select this option, the parameter settings of the current job will be saved to facilitate subsequent job creation.

      -

      Select Save Training Parameters and specify Configuration Name and Description. After a training job is created, you can switch to the Job Parameters tab page to view your saved job parameter settings. For details, see Managing Job Parameters.

      -
      - -
    5. After setting the parameters, click Next.
    -
  4. Confirm that the information is correct on the Confirm page that is displayed and click Submit. Generally, training jobs run for a period of time, which may be several minutes or tens of minutes depending on the amount of your selected data and resources.

    After a training job is created, it is started immediately.

    - -

    You can switch to the training job list to view the basic information about training jobs. In the training job list, Status of the newly created training job is Initializing. If the status changes to Successful, the training job ends and the model generated is stored in the location specified by Training Output Path. If the status of a training job changes to Running failed, click the name of the training job and view the job logs. Troubleshoot the fault based on the logs.

    -
- - - - -Parent topic: Creating a Training Job - - - diff --git a/modelarts/umn/temp/using_jupyter_notebook.tmp b/modelarts/umn/temp/using_jupyter_notebook.tmp deleted file mode 100644 index c2a0f811..00000000 --- a/modelarts/umn/temp/using_jupyter_notebook.tmp +++ /dev/null @@ -1,27 +0,0 @@ - - - -

Using Jupyter Notebook

- -

- - - - - - -Parent topic: DevEnviron (Notebook) - - - diff --git a/modelarts/umn/temp/using_jupyterlab.tmp b/modelarts/umn/temp/using_jupyterlab.tmp deleted file mode 100644 index 04e2ecd1..00000000 --- a/modelarts/umn/temp/using_jupyterlab.tmp +++ /dev/null @@ -1,20 +0,0 @@ - - -

Using JupyterLab

-

- - - - - -Parent topic: DevEnviron (Notebook) - - - diff --git a/modelarts/umn/temp/using_modelarts_sdks.tmp b/modelarts/umn/temp/using_modelarts_sdks.tmp deleted file mode 100644 index 1192c31e..00000000 --- a/modelarts/umn/temp/using_modelarts_sdks.tmp +++ /dev/null @@ -1,79 +0,0 @@ - - -

Using ModelArts SDKs

-

In notebook instances, you can use ModelArts SDKs to manage OBS, training jobs, models, and real-time services.

-

For details about how to use ModelArts SDKs, see ModelArts SDK Reference.

-

Notebooks carry the authentication (AK/SK) and region information about login users. Therefore, SDK session authentication can be completed without entering parameters.

-

Example Code

  • Creating a training job
     1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    from modelarts.session import Session
    -from modelarts.estimator import Estimator
    -session = Session()
    -estimator = Estimator(
    -                      modelarts_session=session,
    -                      framework_type='PyTorch',                                     # AI engine name
    -                       framework_version='PyTorch-1.0.0-python3.6',                  # AI engine version
    -                      code_dir='/obs-bucket-name/src/',                                      # Training script directory
    -                      boot_file='/obs-bucket-name/src/pytorch_sentiment.py',                 # Training startup script directory
    -                      log_url='/obs-bucket-name/log/',                                       # Training log directory
    -                      hyperparameters=[
    -                                       {"label":"classes",
    -                                        "value": "10"},    
    -                                       {"label":"lr",
    -                                        "value": "0.001"}
    -                                       ],
    -                      output_path='/obs-bucket-name/output/',                                # Training output directory
    -                      train_instance_type='modelarts.vm.gpu.p100',                  # Training environment specifications
    -                      train_instance_count=1,                                       # Number of training nodes
    -                      job_description='pytorch-sentiment with ModelArts SDK')       # Training job description
    -job_instance = estimator.fit(inputs='/obs-bucket-name/data/train/', wait=False, job_name='my_training_job')
    -
    -
    -
-
  • Querying a model list
    1
    -2
    -3
    -4
    from modelarts.session import Session 
    -from modelarts.model import Model
    -session = Session() 
    -model_list_resp = Model.get_model_list(session, model_status="published", model_name="digit", order="desc")
    -
    -
    -
  • Querying service details
    1
    -2
    -3
    -4
    -5
    from modelarts.session import Session
    -from modelarts.model import Predictor
    -session = Session()
    -predictor_instance = Predictor(session, service_id="input your service_id")
    -predictor_info_resp = predictor_instance.get_service_info()
    -
    -
    -
- - - - -Parent topic: Using JupyterLab - - - diff --git a/modelarts/umn/temp/using_the_convert_to_python_file_function.tmp b/modelarts/umn/temp/using_the_convert_to_python_file_function.tmp deleted file mode 100644 index 7bd05a11..00000000 --- a/modelarts/umn/temp/using_the_convert_to_python_file_function.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Using the Convert to Python File Function

-

After code compiling is finished, you can save the entered code as a .py file which can be used for starting training jobs.

-
  1. Create and open a notebook instance or open an existing notebook instance in the notebook instance list.
  2. On the Files tab page, click New and choose the required AI engine from the drop-down list to access the code development page.
  3. After code compiling is complete, click the save button in the upper left corner. Then, click Convert to Python File to convert the current ipynb file into a Python file. This function can be used to directly save your entered code as a .py file to the working directory.The generated .py file can be used to start ModelArts training jobs.Figure 1 Convert to Python File
    - -
  4. In the dialog box that is displayed, enter the file name as required, and select or deselect Force overwrite if file already exists. By default, the item is not selected, indicating that the file will not be overwritten when a file with the same name exists in the directory. Click Convert.Figure 2 Setting and saving the configuration
    -
- - - -Parent topic: Using Jupyter Notebook - - - diff --git a/modelarts/umn/temp/using_the_notebook_terminal_function.tmp b/modelarts/umn/temp/using_the_notebook_terminal_function.tmp deleted file mode 100644 index c9ab55cd..00000000 --- a/modelarts/umn/temp/using_the_notebook_terminal_function.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

Using the Notebook Terminal Function

-

For developers who are used to coding, the terminal function is very convenient and practical. This section describes how to enable the terminal function in a notebook instance and switch the engine environment in the terminal.

-

Enabling the Notebook Terminal Function

  1. In the notebook instance list, click Open in the Operation column of the target notebook instance to go to the Jupyter Notebook page.
  2. On the Files tab page of the Jupyter page, click New and select Terminal. The Terminal page is displayed.Figure 1 Going to the Terminal page
    -
- -

Switching Engine Environments on the Terminal

You can switch to another AI engine environment in the terminal environment of Jupyter.

-
  1. Create and open a notebook instance or open an existing notebook instance in the notebook instance list.
  2. On the Files tab page of the Jupyter page, click New and select Terminal. The Terminal page is displayed.
  3. Figure 2 Output after command execution
    -
- - - - -Parent topic: Configuring the Jupyter Notebook Environment - - - diff --git a/modelarts/umn/temp/video_labeling.tmp b/modelarts/umn/temp/video_labeling.tmp deleted file mode 100644 index 80524a95..00000000 --- a/modelarts/umn/temp/video_labeling.tmp +++ /dev/null @@ -1,36 +0,0 @@ - - -

Video Labeling

-

Model training requires a large amount of labeled video data. Therefore, before the model training, label the unlabeled video files. ModelArts enables you to label video files. In addition, you can modify the labels of video files, or remove their labels and label the video files again.

-

Starting Labeling

  1. Log in to the ModelArts management console. In the left navigation pane, choose Data Management > Datasets. The Datasets page is displayed.
  2. In the dataset list, select the dataset to be labeled based on the labeling type, and click the dataset name to go to the Dashboard tab page of the dataset.

    By default, the Dashboard tab page of the current dataset version is displayed. If you need to label the dataset of another version, click the Versions tab and then click Set to Current Version in the right pane. For details, see Managing Dataset Versions.

    -
  3. On the Dashboard page of the dataset, click Label in the upper right corner. The dataset details page is displayed. By default, all data of the dataset is displayed on the dataset details page.
- -

Synchronizing Data Sources

ModelArts automatically synchronizes data and labeling information from Input Dataset Path to the dataset details page.

-

To quickly obtain the latest data in the OBS bucket, click Synchronize Data Source on the Unlabeled tab page of the dataset details page to add the data uploaded using OBS to the dataset.

- -

Labeling Video Files

On the dataset details page, both unlabeled and labeled video files in the dataset are displayed.

-
  1. On the Unlabeled tab page, click the target video file in the video list on the left. The labeling page is displayed.
  2. Play the video. When the video is played to the time point to be labeled, click the pause button in the progress bar to pause the video to a specific image.
  3. In the left pane, select a bounding box. By default, a rectangular box is selected. Drag the mouse to select an object in the video image, enter a new label name in the displayed Add Label text box, select a label color, and click Add to label the object. Alternatively, select an existing label from the drop-down list and click Add to label the object. Label all objects in the image. Multiple labels can be added to an image.The supported bounding boxes are the same as those supported by Object Detection. For details, see Table 1 in Object Detection.Figure 1 Labeling video files
    - -
  4. After the previous image is labeled, click the play button on the progress bar to resume the playback. Then, repeat 3 to complete labeling on the entire video.

    The labeled time points of the current video are displayed on the right of the page.

    -Figure 2 File labels
    -
  5. Click Back to Data Labeling Preview in the upper left corner of the page. The dataset details page is displayed, and the labeled video file is displayed on the Labeled tab page.
- -

Modifying Labeled Data

After labeling data, you can delete labeled data on the Labeled tab page.

-
  • Click in the Operation column of the target number to delete the label of the video segment. Alternatively, you can click the cross (x) icon above the labeled video file to delete the label. Then click OK.
-

On the Labeled tab page, click the target video file. In the All Labels area on the right of the labeling page, click the triangle icon on the right of the time point to view details. You can modify or delete a label.

-
  • Modifying a label: Click the edit icon on the right of a label to modify the label name.
  • Deleting a label: Click the delete icon on the right of a label to delete the label. If you click the delete icon on the right of the image time, all labels on the image are deleted.
-Figure 3 Modifying labeled data
- -

Deleting a Video File

You can quickly delete the video files you want to discard.

-

On the All, Unlabeled, or Labeled tab page, select the video files to be deleted or click Select Images on Current Page to select all video files on the page, and click Delete in the upper left corner to delete the video files. In the displayed dialog box, select or deselect Delete source files as required. After confirmation, click OK to delete the videos.

-

If a tick is displayed in the upper left corner of a video file, the video file is selected. If no video file is selected on the page, the Delete File button is unavailable.

-

If you select Delete source files, video files stored in the corresponding OBS directory will be deleted when you delete the selected video files. Deleting source files may affect other dataset versions or datasets using those files. As a result, the page display, training, or inference is abnormal. Deleted data cannot be recovered. Exercise caution when performing this operation.

- - - - - -Parent topic: Labeling Data - - - diff --git a/modelarts/umn/temp/viewing_job_details.tmp b/modelarts/umn/temp/viewing_job_details.tmp deleted file mode 100644 index 2981a093..00000000 --- a/modelarts/umn/temp/viewing_job_details.tmp +++ /dev/null @@ -1,56 +0,0 @@ - - -

Viewing Job Details

-

After a training job finishes, you can manage the training job versions and check whether the training result of the job is satisfactory by viewing the job details.

-

Training Job Details

In the left navigation pane of the ModelArts management console, choose Training Management > Training Jobs to switch to the Training Jobs page. In the training job list, click a job name to view the job details.

-

Table 1 lists parameters of the training job of each version.

- -.. _modelarts_23_0048__en-us_topic_0171858286_table43451384323: - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 Training job details

Parameter

-

Description

-

Version

-

Version of a training job, which is automatically defined by the system, for example, V0001 and V0002.

-

Status

-

Status of a training job,

-

Duration

-

Running duration of a training job

-

Configurations

-

Details about the parameters of the current training job version

-

Logs

-

Logs of the current training job version. If you set Log Output Path when creating a training job, you can click the download button on the Logs tab page to download the logs stored in the OBS bucket to the local host.

-

Resource Usages

-

Usage of resources of the current training version, including the CPU, GPU, and memory.

-
- - - - - -Parent topic: Training Management - - - diff --git a/modelarts/umn/temp/viewing_monitoring_metrics.tmp b/modelarts/umn/temp/viewing_monitoring_metrics.tmp deleted file mode 100644 index 5e0759a8..00000000 --- a/modelarts/umn/temp/viewing_monitoring_metrics.tmp +++ /dev/null @@ -1,21 +0,0 @@ - - -

Viewing Monitoring Metrics

-

Scenario

Cloud Eye on the cloud service platform monitors the status of ModelArts real-time services and model loads. You can obtain the monitoring metrics of each ModelArts real-time service and model loads on the management console. Monitored data requires a period of time for transmission and display. The status of ModelArts displayed on the Cloud Eye console is usually the status obtained 5 to 10 minutes before. You can view the monitored data of a newly created real-time service 5 to 10 minutes later.

- -

Prerequisites

  • The ModelArts real-time service is running properly.
-
  • Alarm rules have been configured on the Cloud Eye page. For details, see Setting Alarm Rules.
  • The real-time service has been properly running for at least 10 minutes.
  • The monitoring data and graphics are available for a new real-time service after the service runs for at least 10 minutes.
-
  • Cloud Eye does not display the metrics of a faulty or deleted real-time service. The monitoring metrics can be viewed after the real-time service starts or recovers.
-

Monitoring data is unavailable without alarm rules configured on Cloud Eye. For details, see Setting Alarm Rules.

- -

Procedure

  1. Log in to the management console.
  2. Click Service List. Under Management & Deployment, click Cloud Eye.
  3. In the left navigation pane, choose Cloud Service Monitoring > ModelArts.
  4. View monitoring graphs.
    • Viewing monitoring graphs of the real-time service: Click View Graph in the Operation column.
    • Viewing monitoring graphs of the model loads: Click next to the target real-time service, and select View Graph from the drop-down list for model loads in the Operation column.
    -
  5. In the monitoring area, you can select a duration to view the monitoring data.

    You can view the monitoring data in the recent 1 hour, 3 hours, or 12 hours. To view the monitoring curve of a longer time range, click to enlarge the graph.

    -
- - - - -Parent topic: Monitoring - - - diff --git a/modelarts/umn/temp/viewing_service_details.tmp b/modelarts/umn/temp/viewing_service_details.tmp deleted file mode 100644 index edee81fc..00000000 --- a/modelarts/umn/temp/viewing_service_details.tmp +++ /dev/null @@ -1,292 +0,0 @@ - - -

Viewing Service Details

-

After a model is deployed as a real-time service, you can access the service page to view its details.

-
  1. Log in to the ModelArts management console and choose Service Deployment > Real-Time Services.
  2. On the Real-Time Services page, click the name of the target service. The service details page is displayed.

    You can view the service name and status. For details, see Table 1.

    - -.. _modelarts_23_0061__en-us_topic_0165025305_table54131529105213: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 1 Real-time service parameters

    Parameter

    -

    Description

    -

    Name

    -

    Name of the real-time service.

    -

    Status

    -

    Current status of the real-time service.

    -

    Source

    -

    Model source of the real-time service.

    -

    Failed Calls/Total Calls

    -

    Number of service calls, which is counted from the time when the service was created.

    -

    If the number of models is changed or a service is invoked when a model is not ready, the number of calls is not counted.

    -

    Network Configuration

    -

    Customized network configuration of the used dedicated resource pool.

    -

    Description

    -

    Service description, which can be edited after you click the edit button on the right side.

    -

    Custom Settings

    -

    Customized configurations based on real-time service versions. This allows version-based traffic distribution policies and configurations. Enable this option and click View Settings to customize the settings. For details, see Modifying Customized Settings.

    -

    Data Collection

    -

    Enable this option to store the data generated when the real-time service is invoked to a specified OBS path.

    -

    Filter

    -

    Enable this option so that the system automatically identifies hard examples in all sample data.

    -

    Synchronize Data

    -

    Synchronize the collected data to a dataset for centralized management and utilization.

    -

    Traffic Limit

    -

    Maximum number of times a service can be accessed within a second.

    -
    - -
  3. You can switch between tabs on the details page of a real-time service to view more details. For details, see Table 2. -.. _modelarts_23_0061__en-us_topic_0165025305_table62441712183917: - - - - - - - - - - - - - - - - - - - - - -
    Table 2 Service details

    Parameter

    -

    Description

    -

    Usage Guides

    -

    Displays the API address, model information, input parameters, and output parameters. You can click to copy the API address to call the service.

    -

    Prediction

    -

    Performs a prediction test on the real-time service. For details, see Testing a Service.

    -

    Configuration Updates

    -

    Displays Existing Configuration and Historical Updates.

    -
    • Existing Configuration: includes the model name, version, status, traffic ratio, .
    • Historical Updates: displays historical model information.
    -

    Monitoring

    -

    Displays Resource Usage and Model Calls.

    -
    • Resource Usage: includes the used and available CPU, memory, and GPU resources.
    • Model Calls: indicates the number of model calls. The statistics collection starts after the model status changes to Ready.
    -

    Logs

    -

    Displays the log information about each model in the service. You can view logs generated in the latest 5 minutes, latest 30 minutes, latest 1 hour, and user-defined time segment.

    -
    • You can select the start time and end time when defining the time segment.
    -
    - -
-

Modifying Customized Settings

A customized configuration rule consists of the configuration condition (Setting), access version (Version), and customized running parameters (including Setting Name and Setting Value).

-

You can configure different settings with customized running parameters for different versions of a real-time service.

-

The priorities of customized configuration rules are in descending order. You can change the priorities by dragging the sequence of customized configuration rules.

-

After a rule is matched, the system will no longer match subsequent rules. A maximum of 10 configuration rules can be configured.

- -.. _modelarts_23_0061__en-us_topic_0165025305_table569619576249: - - - - - - - - - - - - - - - - - - - - - - - -
Table 3 Parameters for Custom Settings

Parameter

-

Mandatory

-

Description

-

Setting

-

Yes

-

Expression of the Spring Expression Language (SPEL) rule. Only the equal and matches expressions of the character type are supported.

-

Version

-

Yes

-

Access version for a customized service configuration rule. When a rule is matched, the real-time service of the version is requested.

-

Setting Name

-

No

-

Key of a customized running parameter, consisting of a maximum of 128 characters.

-

Configure this parameter if the HTTP message header is used to carry customized running parameters to a real-time service.

-

Setting Value

-

No

-

Value of a customized running parameter, consisting of a maximum of 256 characters.

-

Configure this parameter if the HTTP message header is used to carry customized running parameters to a real-time service.

-
- -

Customized settings can be used in the following scenarios:

-
  • If multiple versions of a real-time service are deployed for dark launch, customized settings can be used to distribute traffic by user. -.. _modelarts_23_0061__en-us_topic_0165025305_table19377505490: - - - - - - - - - - - - - - - - - - - - - - - - -
    Table 4 Built-in variables

    Built-in Variable

    -

    Description

    -

    DOMAIN_NAME

    -

    Account name that is used to invoke the inference request

    -

    DOMAIN_ID

    -

    Account ID that is used to invoke the inference request

    -

    PROJECT_NAME

    -

    Project name that is used to invoke the inference request

    -

    PROJECT_ID

    -

    Project ID that invokes the inference request

    -

    USER_NAME

    -

    Username that is used to invoke the inference request

    -

    USER_ID

    -

    User ID that is used to invoke the inference request

    -
    - -

    Pound key (#) indicates that a variable is referenced. The matched character string must be enclosed in single quotation marks.

    -
    #{Built-in variable} == 'Character string'
    -#{Built-in variable} matches 'Regular expression'
    -
    • Example 1:

      If the account name for invoking the inference request is User A, the specified version is matched.

      -
      #DOMAIN_NAME == 'User A'
      -
    • Example 2:

      If the account name in the inference request starts with op, the specified version is matched.

      -
      #DOMAIN_NAME matches 'op.*'
      - -.. _modelarts_23_0061__en-us_topic_0165025305_table52770525547: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Table 5 Common regular expressions

      Character

      -

      Description

      -

      .

      -

      Match any single character except \n. To match any character including \n, use (.|\n).

      -

      *

      -

      Match the subexpression that it follows for zero or multiple times. For example, zo* can match z and zoo.

      -

      +

      -

      Match the subexpression that it follows for once or multiple times. For example, zo+ can match zo and zoo, but cannot match z.

      -

      ?

      -

      Match the subexpression that it follows for zero or one time. For example, do(es)? can match does or do in does.

      -

      ^

      -

      Match the start of the input string.

      -

      $

      -

      Match the end of the input string.

      -

      {n}

      -

      Match for the number specified by n, a non-negative integer. For example, o{2} cannot match o in Bob, but can match two os in food.

      -

      x|y

      -

      Match x or y. For example, z|food can match z or food, and (z|f)ood can match zood or food.

      -

      [xyz]

      -

      Match any single character contained in a character set. For example, [abc] can match a in plain.

      -
      - -Figure 1 Traffic distribution by user
      -
    -
  • If multiple versions of a real-time service are deployed for dark launch, customized settings can be used to access different versions through the header.Start with #HEADER_, indicating that the header is referenced as a condition.
    #HEADER_{key} == '{value}'
    -#HEADER_{key} matches '{value}'
    - -
    • Example 1:

      If the header of an inference HTTP request contains a version and the value is 0.0.1, the condition is met. Otherwise, the condition is not met.

      -
      #HEADER_version == '0.0.1'
      -
    • Example 2:

      If the header of an inference HTTP request contains testheader and the value starts with mock, the rule is matched.

      -
      #HEADER_testheader matches 'mock.*'
      -Figure 2 Using the header to access different versions
      -
    -
  • If a real-time service version supports different running configurations, you can use Setting Name and Setting Value to specify customized running parameters so that different users can use different running configurations.

    Example:

    -When user A accesses the model, the user uses configuration A. When user B accesses the model, the user uses configuration B. When matching a running configuration, ModelArts adds a header to the request and also the customized running parameters specified by Setting Name and Setting Value.Figure 3 Customized running parameters added for a customized configuration rule
    - -
- - - - -Parent topic: Real-Time Services - - - diff --git a/modelarts/umn/temp/viewing_the_batch_service_prediction_result.tmp b/modelarts/umn/temp/viewing_the_batch_service_prediction_result.tmp deleted file mode 100644 index e6691e7a..00000000 --- a/modelarts/umn/temp/viewing_the_batch_service_prediction_result.tmp +++ /dev/null @@ -1,15 +0,0 @@ - - -

Viewing the Batch Service Prediction Result

-

When deploying a batch service, you can select the location of the output data directory. You can view the running result of the batch service that is in the Running completed status.

-

Procedure

  1. Log in to the ModelArts management console and choose Service Deployment > Batch Services.
  2. Click the name of the target service in the Running completed status. The service details page is displayed.
    • You can view the service name, status, ID, input path, output path, and description.
    • You can click in the Description area to edit the description.
    -
  3. Obtain the detailed OBS path next to Output Path, switch to the path and obtain the batch service prediction result.
    • If images are entered, a result file is generated for each image in the Image name__result.txt format, for example, IMG_20180919_115016.jpg_result.txt.
    • If audio files are entered, a result file is generated for each audio file in the Audio file name__result.txt format, for example, 1-36929-A-47.wav_result.txt.
    • If table data is entered, the result file is generated in the Table name__result.txt format, for example, train.csv_result.txt.
    -
- - - - -Parent topic: Batch Services - - - diff --git a/modelarts/umn/temp/what_are_image_classification_and_object_detection.tmp b/modelarts/umn/temp/what_are_image_classification_and_object_detection.tmp deleted file mode 100644 index 10c6d75c..00000000 --- a/modelarts/umn/temp/what_are_image_classification_and_object_detection.tmp +++ /dev/null @@ -1,14 +0,0 @@ - - -

What Are Image Classification and Object Detection?

-

Image classification is an image processing method that separates different classes of targets according to the features reflected in the images. With quantitative analysis on images, it classifies an image or each pixel or area in an image into different categories to replace human visual interpretation. In general, image classification aims to identify a class, status, or scene in an image. It is applicable to scenarios where an image contains only one object. Figure 1 shows an example of identifying a car in an image.

-Figure 1 Image classification
-

Object detection is one of the classical problems in computer vision. It intends to label objects with frames and identify the object classes in an image. Generally, if an image contains multiple objects, object detection can identify the location, quantity, and name of each object in the image. It is suitable for scenarios where an image contains multiple objects. Figure 2 shows an example of identifying a tree and a car in an image.

-Figure 2 Object detection
- - - -Parent topic: ExeML - - - diff --git a/modelarts/umn/temp/what_are_sizes_of_the__cache_directories_for_different_resource_specifications_in_the_training_environment.tmp b/modelarts/umn/temp/what_are_sizes_of_the__cache_directories_for_different_resource_specifications_in_the_training_environment.tmp deleted file mode 100644 index cf64541b..00000000 --- a/modelarts/umn/temp/what_are_sizes_of_the__cache_directories_for_different_resource_specifications_in_the_training_environment.tmp +++ /dev/null @@ -1,80 +0,0 @@ - - -

What Are Sizes of the /cache Directories for Different Resource Specifications in the Training Environment?

-

When creating a training job, you can select CPU, GPU, or Ascend resources based on the size of the training job.

-

ModelArts mounts the disk to the /cache directory. You can use this directory to store temporary files. The /cache directory shares resources with the code directory. The directory has different capacities for different resource specifications.

-
  • GPU resources -.. _modelarts_05_0090__en-us_topic_0000001096855431_en-us_topic_0200343601_table9533182215915: - - - - - - - - - - - - - - - -
    Table 1 Capacities of the cache directories for GPU resources

    GPU Specifications

    -

    cache Directory Capacity

    -

    V100

    -

    800G

    -

    8*V100

    -

    3T

    -

    P100

    -

    800G

    -
    - -
  • CPU resources -.. _modelarts_05_0090__en-us_topic_0000001096855431_en-us_topic_0200343601_table2764175317167: - - - - - - - - - - - - -
    Table 2 Capacities of the cache directories for CPU resources

    CPU Specifications

    -

    cache Directory Capacity

    -

    2 vCPUs | 8 GiB

    -

    50G

    -

    8 vCPUs | 32 GiB

    -

    50G

    -
    - -
-
  • Ascend resources -.. _modelarts_05_0090__en-us_topic_0000001096855431_en-us_topic_0200343601_table1652218538206: - - - - - - - - - -
    Table 3 Capacities of the cache directories for Ascend resources

    Ascend Specifications

    -

    cache Directory Capacity

    -

    Ascend 910

    -

    3T

    -
    - -
- - - -Parent topic: Training Jobs - - - diff --git a/modelarts/umn/temp/what_are_the_relationships_between_modelarts_and_other_services.tmp b/modelarts/umn/temp/what_are_the_relationships_between_modelarts_and_other_services.tmp deleted file mode 100644 index aa842aef..00000000 --- a/modelarts/umn/temp/what_are_the_relationships_between_modelarts_and_other_services.tmp +++ /dev/null @@ -1,18 +0,0 @@ - - -

What Are the Relationships Between ModelArts and Other Services

-

OBS

ModelArts uses Object Storage Service (OBS) to store data and model backups and snapshots. OBS provides secure, reliable, low-cost storage. For more details, see Object Storage Service Console Function Overview.

- -

CCE

ModelArts uses Cloud Container Engine (CCE) to deploy models as real-time services. CCE enables high concurrency and provides elastic scaling. For more information about CCE, see Cloud Container Engine User Guide.

- -

SWR

To use an AI framework that is not supported by ModelArts, use SoftWare Repository for Container (SWR) to customize an image and import the image to ModelArts for training or inference. For more details, see .

- -

Cloud Eye

ModelArts uses Cloud Eye to monitor online services and model loads in real time and send alarms and notifications automatically. For details about Cloud Eye, see Cloud Eye User Guide.

- - - - -Parent topic: General Issues - - - diff --git "a/modelarts/umn/temp/what_can_i_do_if_the_message_\"object_directory_size_quantity_exceeds_the_limit\"_is_displayed_when_i_create_a_training_job.tmp" "b/modelarts/umn/temp/what_can_i_do_if_the_message_\"object_directory_size_quantity_exceeds_the_limit\"_is_displayed_when_i_create_a_training_job.tmp" deleted file mode 100644 index 343bc95a..00000000 --- "a/modelarts/umn/temp/what_can_i_do_if_the_message_\"object_directory_size_quantity_exceeds_the_limit\"_is_displayed_when_i_create_a_training_job.tmp" +++ /dev/null @@ -1,14 +0,0 @@ - - -

What Can I Do If the Message "Object directory size/quantity exceeds the limit" Is Displayed When I Create a Training Job?

-

Issue Analysis

The code directory for creating a training job has limits on the size and number of files.

- -

Solution

Delete the files except the code from the code directory or save the files in other directories. Ensure that the size of the code directory does not exceed 128 MB and the number of files does not exceed 4,096.

- - - - -Parent topic: Training Jobs - - - diff --git a/modelarts/umn/temp/what_formats_of_images_are_supported_by_object_detection_or_image_classification_projects.tmp b/modelarts/umn/temp/what_formats_of_images_are_supported_by_object_detection_or_image_classification_projects.tmp deleted file mode 100644 index e56e07ff..00000000 --- a/modelarts/umn/temp/what_formats_of_images_are_supported_by_object_detection_or_image_classification_projects.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

What Formats of Images Are Supported by Object Detection or Image Classification Projects?

-

Images in JPG, JPEG, PNG, or BMP format are supported.

- - - -Parent topic: ExeML - - - diff --git a/modelarts/umn/temp/what_is_exeml.tmp b/modelarts/umn/temp/what_is_exeml.tmp deleted file mode 100644 index ab42ed76..00000000 --- a/modelarts/umn/temp/what_is_exeml.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

What Is ExeML?

-

ExeML is the process of automating model design, parameter tuning, and model training, compression, and deployment with the labeled data. The process is free of coding and does not require developers' experience in model development.

-

Users who do not have encoding capability can use the labeling, one-click model training, and model deployment functions of ExeML to build AI models.

- - - -Parent topic: ExeML - - - diff --git a/modelarts/umn/temp/what_is_modelarts.tmp b/modelarts/umn/temp/what_is_modelarts.tmp deleted file mode 100644 index bca73cc0..00000000 --- a/modelarts/umn/temp/what_is_modelarts.tmp +++ /dev/null @@ -1,23 +0,0 @@ - - -

What Is ModelArts?

-

ModelArts is a one-stop development platform for AI developers. With data preprocessing, semi-automated data labeling, distributed training, automated model building, and model deployment, ModelArts helps AI developers quickly build models and efficiently manage the AI development lifecycle.

-

ModelArts covers all stages of AI development, including data processing and model training and deployment. The underlying technologies of ModelArts support various heterogeneous computing resources, allowing developers to flexibly select and use resources. In addition, ModelArts supports popular open-source AI development frameworks such as TensorFlow. Developers can also use self-developed algorithm frameworks to match their usage habits.

-

ModelArts aims to simplify AI development.

-

Product Architecture

ModelArts supports the entire development process, including data processing, and model training, management, and deployment.

-

ModelArts supports various AI application scenarios, such as image classification and object detection.

- -Figure 1 ModelArts architecture
-

Product Advantages

  • One-stop platform

    The out-of-the-box and full-lifecycle AI development platform provides one-stop training, management, and deployment of models.

    -
  • Easy to use
    • Automatic optimization of hyperparameters
    • Code-free development and simplified operations
    -
  • High performance
    • The self-developed MoXing deep learning framework accelerates algorithm development and training.
    • Optimized GPU utilization accelerates real-time inference.
    -
  • Flexible
    • Popular open-source frameworks available, such as TensorFlow, and MindSpore
    • Popular GPUs
    • Exclusive use of dedicated resources
    • Custom images for custom frameworks and operators
    -
- - - - -Parent topic: Service Overview - - - diff --git a/modelarts/umn/temp/what_should_i_do_if_a_conflict_occurs_when_deploying_a_model_as_a_real-time_service.tmp b/modelarts/umn/temp/what_should_i_do_if_a_conflict_occurs_when_deploying_a_model_as_a_real-time_service.tmp deleted file mode 100644 index 2aa6ce39..00000000 --- a/modelarts/umn/temp/what_should_i_do_if_a_conflict_occurs_when_deploying_a_model_as_a_real-time_service.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

What Should I Do If a Conflict Occurs When Deploying a Model As a Real-Time Service?

-

Before importing a model, you need to place the corresponding inference code and configuration file in the model folder. When encoding with Python, you are advised to use a relative import (Python import) to import custom packages.

-

If the relative import mode is not used, a conflict will occur once a package with the same name exists in a real-time service. As a result, model deployment or prediction fails.

- - - -Parent topic: Service Deployment - - - diff --git a/modelarts/umn/temp/what_should_i_do_when_the_train_button_is_unavailable_after_i_create_an_image_classification_project_and_label_the_images.tmp b/modelarts/umn/temp/what_should_i_do_when_the_train_button_is_unavailable_after_i_create_an_image_classification_project_and_label_the_images.tmp deleted file mode 100644 index 6b67c715..00000000 --- a/modelarts/umn/temp/what_should_i_do_when_the_train_button_is_unavailable_after_i_create_an_image_classification_project_and_label_the_images.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

What Should I Do When the Train Button Is Unavailable After I Create an Image Classification Project and Label the Images?

-

The Train button turns to be available when the training images for an image classification project are classified into at least two categories, and each category contains at least five images.

- - - -Parent topic: ExeML - - - diff --git a/modelarts/umn/temp/what_type_of_service_is_deployed_in_exeml.tmp b/modelarts/umn/temp/what_type_of_service_is_deployed_in_exeml.tmp deleted file mode 100644 index d36d3415..00000000 --- a/modelarts/umn/temp/what_type_of_service_is_deployed_in_exeml.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

What Type of Service Is Deployed in ExeML?

-

Models created in ExeML are deployed as real-time services. You can add images or compile code to test the services, as well as call the APIs using the URLs.

-

After model development is successful, you can choose Service Deployment > Real-Time Services in the left navigation pane of the ModelArts console to view running services, and stop or delete services.

- - - -Parent topic: ExeML - - - diff --git a/modelarts/umn/temp/what_types_of_services_can_models_be_deployed_as_on_modelarts.tmp b/modelarts/umn/temp/what_types_of_services_can_models_be_deployed_as_on_modelarts.tmp deleted file mode 100644 index 78c1f8c2..00000000 --- a/modelarts/umn/temp/what_types_of_services_can_models_be_deployed_as_on_modelarts.tmp +++ /dev/null @@ -1,11 +0,0 @@ - - -

What Types of Services Can Models Be Deployed as on ModelArts?

-

Currently, models can only be deployed as real-time services and batch services.

- - - -Parent topic: Service Deployment - - - diff --git a/modelarts/umn/temp/where_are_models_generated_by_exeml_stored_what_other_operations_are_supported.tmp b/modelarts/umn/temp/where_are_models_generated_by_exeml_stored_what_other_operations_are_supported.tmp deleted file mode 100644 index b9a14d75..00000000 --- a/modelarts/umn/temp/where_are_models_generated_by_exeml_stored_what_other_operations_are_supported.tmp +++ /dev/null @@ -1,19 +0,0 @@ - - -

Where Are Models Generated by ExeML Stored? What Other Operations Are Supported?

-

Unified Model Management

For an ExeML project, after the model training is complete, the generated model is automatically displayed on the Model Management > Models page. The model name is automatically generated by the system. Its prefix is the same as the name of the ExeML project for easy identification.

-

Models generated by ExeML cannot be downloaded.

- - -

What Other Operations Are Supported for Models Generated by ExeML?

  • Deploying models as real-time and batch services

    On the ExeML page, models can only be deployed as real-time services. You can deploy models as batch services on the Model Management > Models page.

    -

    It should be noted that resources with other specifications can be used when you create a model deployment task on the Model Management > Models page. On the ExeML project page, only Compute-intensive 2 instance (NPU) can be used to deploy models.

    -
  • Creating a version

    When creating a new version, you can select a meta model only from a ModelArts training job, OBS, model template, or custom image. You cannot create a version from the original ExeML project.

    -
  • Deleting a model or its version
- - - - -Parent topic: Tips - - - diff --git a/modelarts/umn/temp/where_is_data_stored_after_the_sync_obs_function_is_used.tmp b/modelarts/umn/temp/where_is_data_stored_after_the_sync_obs_function_is_used.tmp deleted file mode 100644 index b3a44c88..00000000 --- a/modelarts/umn/temp/where_is_data_stored_after_the_sync_obs_function_is_used.tmp +++ /dev/null @@ -1,12 +0,0 @@ - - -

Where Is Data Stored After the Sync OBS Function Is Used?

-
  1. Log in to the ModelArts management console, and choose DevEnviron > Notebooks.
  2. In the Operation column of the target notebook instance in the notebook list, click Open to go to the Jupyter page.
  3. On the Files tab page of the Jupyter page, select the target file and click Sync OBS in the upper part of the page to synchronize the file. The file is stored in the ~/work directory of the instance.
  4. On the Files tab page of the Jupyter page, click New and select Terminal. The Terminal page is displayed.
  5. Run the following command to go to the ~/work directory.
    cd work
    -
  6. Run the ls command in the ~/work directory to view the files.
- - - -Parent topic: Notebook - - - diff --git a/modelarts/umn/temp/where_will_the_data_be_uploaded_to.tmp b/modelarts/umn/temp/where_will_the_data_be_uploaded_to.tmp deleted file mode 100644 index f31b410f..00000000 --- a/modelarts/umn/temp/where_will_the_data_be_uploaded_to.tmp +++ /dev/null @@ -1,14 +0,0 @@ - - -

Where Will the Data Be Uploaded to?

-

Data may be stored in OBS or EVS, depending on which kind of storage you have configured for your Notebook instances:

-
  • OBS

    After you click upload, the data is directly uploaded to the target OBS path specified when the notebook instance was created.

    -
  • EVS

    After you click upload, the data is uploaded to the instance container, that is, the ~/work directory on the Terminal page.

    -
- - - -Parent topic: Notebook - - - diff --git a/modelarts/umn/temp/which_ai_frameworks_does_modelarts_support.tmp b/modelarts/umn/temp/which_ai_frameworks_does_modelarts_support.tmp deleted file mode 100644 index 06e09d7c..00000000 --- a/modelarts/umn/temp/which_ai_frameworks_does_modelarts_support.tmp +++ /dev/null @@ -1,297 +0,0 @@ - - -

Which AI Frameworks Does ModelArts Support?

-

Supported AI frameworks and versions of ModelArts vary slightly based on the development environment, training jobs, and model inference (model management and deployment). The following describes the AI frameworks supported by each module.

-

Development Environment

Notebook instances in the development environment support different AI engines and versions based on specific work environments (that is, different Python versions). After creating a notebook instance in the corresponding work environment, create a file based on the corresponding version in Table 1. ModelArts notebook instances support multiple engines. That is, a notebook instance can use all supported engines. Different engines can be switched quickly and conveniently.

- -.. _modelarts_05_0128__en-us_topic_0246510446_table4362414101: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 1 AI engines

Work Environment

-

Built-in AI Engine and Version

-

Supported Chip

-

Multi-Engine 1.0 (Python 3, Recommended)

-

MXNet-1.2.1

-

GPU

-

PySpark-2.3.2

-

CPU

-

Pytorch-1.0.0

-

GPU

-

TensorFlow-1.13.1

-

GPU

-

XGBoost-Sklearn

-

CPU

-

Multi-Engine 2.0 (Python3)

-

Pytorch-1.4.0

-

GPU

-

TensorFlow-2.1.0

-

CPU/GPU

-

Ascend-Powered-Engine 1.0 (Python3)

-

MindSpore-1.1.1

-

Ascend 910

-

TensorFlow-1.15.0

-

Ascend 910

-
- - -

Training Jobs

Supported AI engines and versions when creating training jobs are as follows:

- -.. _modelarts_05_0128__en-us_topic_0246510446_table97515527121: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 2 AI engines supported by training jobs

Environment

-

Supported Chip

-

System Architecture

-

System Version

-

AI Engine and Version

-

Supported CUDA or Ascend Version

-

TensorFlow

-

CPU and GPU

-

x86_64

-

Ubuntu 16.04

-

TF-1.13.1-python3.6

-

CUDA 10.0

-

TF-2.1.0-python3.6

-

CUDA 10.1

-

Caffe

-

CPU and GPU

-

x86_64

-

Ubuntu 16.04

-

Caffe-1.0.0-python2.7

-

CUDA 8.0

-

Spark_MLlib

-

CPU

-

x86_64

-

Ubuntu 16.04

-

Spark-2.3.2-python3.6

-

N/A

-

XGBoost-Sklearn

-

CPU

-

x86_64

-

Ubuntu 16.04

-

Scikit_Learn-0.18.1-python3.6

-

N/A

-

PyTorch

-

CPU and GPU

-

x86_64

-

Ubuntu 16.04

-

PyTorch-1.3.0-python3.6

-

CUDA 10.0

-

PyTorch-1.4.0-python3.6

-

CUDA 10.1

-

Ascend-Powered-Engine

-

-

Ascend 910

-

-

AArch64

-

EulerOS 2.8

-

Mindspore-1.1.1-python3.7-aarch64

-

C76

-

TF-1.15-python3.7-aarch64

-

C76

-

MindSpore-GPU

-

CPU and GPU

-

x86_64

-

Ubuntu 18.04

-

MindSpore-1.1.0-python3.7

-

CUDA 10.1

-
- - -

Model Inference

For imported models and model inference is completed on ModelArts, supported engines and their runtime are as follows:

- -.. _modelarts_05_0128__en-us_topic_0246510446_table195551745191318: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Table 3 Supported AI engines and their runtime

Engine

-

Runtime

-

Precautions

-

TensorFlow

-

python3.6

-

python2.7

-

tf1.13-python2.7-gpu

-

tf1.13-python2.7-cpu

-

tf1.13-python3.6-gpu

-

tf1.13-python3.6-cpu

-

tf1.13-python3.7-cpu

-

tf1.13-python3.7-gpu

-

tf2.1-python3.7

-

tf1.15-aarch64-c76-d910

-
  • TensorFlow 1.8.0 is used in python2.7 and python3.6.
  • python3.6, python2.7, and tf2.1-python3.7 indicate that the model can run on both CPUs and GPUs. For other runtime values, if the suffix contains cpu or gpu, the model can run only on CPUs or GPUs.
  • The default runtime is python2.7.
-

MXNet

-

python3.7

-

python3.6

-
  • MXNet 1.2.1 is used in python3.6 and python3.7.
  • python3.6 and python3.7 indicate that the model can run on both CPUs and GPUs.
  • The default runtime is python3.6.
-

Caffe

-

python3.6

-

python3.7

-

python3.6-gpu

-

python3.7-gpu

-

python3.6-cpu

-

python3.7-cpu

-
  • Caffe 1.0.0 is used in python3.6, python3.7, python3.6-gpu, python3.7-gpu, python3.6-cpu, and python3.7-cpu.
  • python 3.6 and python3.7 can only be used to run models on CPUs. For other runtime values, if the suffix contains cpu or gpu, the model can run only on CPUs or GPUs. Use the runtime of python3.6-gpu, python3.7-gpu, python3.6-cpu, or python3.7-cpu.
  • The default runtime is python3.6.
-

Spark_MLlib

-

python3.6

-
  • Spark_MLlib 2.3.2 is used in python3.6.
  • python 3.6 can only be used to run models on CPUs.
-

Scikit_Learn

-

python3.6

-
  • Scikit_Learn 0.18.1 is used in python3.6.
  • python 3.6 can only be used to run models on CPUs.
-

XGBoost

-

python3.6

-
  • XGBoost 0.80 is used in python3.6.
  • python 3.6 can only be used to run models on CPUs.
-

PyTorch

-

python3.6

-

python3.7

-

pytorch1.4-python3.7

-
  • PyTorch 1.0 is used in python3.6 and python3.7.
  • python3.6, python3.7, and pytorch1.4-python3.7 indicate that the model can run on both CPUs and GPUs.
  • The default runtime is python3.6.
-

MindSpore

-

ms1.1-python3.7-c76

-

MindSpore 1.1.1 is used.

-
- - - - - -Parent topic: General Issues - - - diff --git a/modelarts/umn/temp/why_does_data_fail_to_be_imported_using_the_manifest_file.tmp b/modelarts/umn/temp/why_does_data_fail_to_be_imported_using_the_manifest_file.tmp deleted file mode 100644 index 5fcb5f74..00000000 --- a/modelarts/umn/temp/why_does_data_fail_to_be_imported_using_the_manifest_file.tmp +++ /dev/null @@ -1,16 +0,0 @@ - - -

Why Does Data Fail to Be Imported Using the Manifest File?

-

Symptom

Failed to use the manifest file of the published dataset to import data again.

- -

Possible Cause

Data has been changed in the OBS directory of the published dataset, for example, images have been deleted. Therefore, the manifest file is inconsistent with data in the OBS directory. As a result, an error occurs when the manifest file is used to import data again.

- -

Solution

  • Method 1 (recommended): Publish a new version of the dataset again and use the new manifest file to import data.
  • Method 2: Modify the manifest file on your local PC, search for data changes in the OBS directory, and modify the manifest file accordingly. Ensure that the manifest file is consistent with data in the OBS directory, and then import data using the new manifest file.
- - - - -Parent topic: Data Management - - - diff --git a/modelarts/umn/temp/xgboost.tmp b/modelarts/umn/temp/xgboost.tmp deleted file mode 100644 index ecdb6640..00000000 --- a/modelarts/umn/temp/xgboost.tmp +++ /dev/null @@ -1,104 +0,0 @@ - - -

XGBoost

-

Training and Saving a Model

 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
import pandas as pd
-import xgboost as xgb
-from sklearn.model_selection import train_test_split
-
-# Prepare training data and setting parameters
-iris = pd.read_csv('/data/iris.csv')
-X = iris.drop(['virginica'],axis=1)
-y = iris[['virginica']]
-X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=1234565)
-params = {
-    'booster': 'gbtree',
-    'objective': 'multi:softmax',
-    'num_class': 3,
-    'gamma': 0.1,
-    'max_depth': 6,
-    'lambda': 2,
-    'subsample': 0.7,
-    'colsample_bytree': 0.7,
-    'min_child_weight': 3,
-    'silent': 1,
-    'eta': 0.1,
-    'seed': 1000,
-    'nthread': 4,
-}
-plst = params.items()
-dtrain = xgb.DMatrix(X_train, y_train)
-num_rounds = 500
-model = xgb.train(plst, dtrain, num_rounds)
-model.save_model('/tmp/xgboost.m')
-
-
-

After the model is saved, it must be uploaded to the OBS directory before being published. The config.json and customize_service.py files must be contained during publishing. For details about the definition method, see Model Package Specifications.

- -

Inference Code

# coding:utf-8
-import collections
-import json
-import xgboost as xgb
-from model_service.python_model_service import XgSklServingBaseService
-class user_Service(XgSklServingBaseService):
-
-    # request data preprocess
-    def _preprocess(self, data):
-        list_data = []
-        json_data = json.loads(data, object_pairs_hook=collections.OrderedDict)
-        for element in json_data["data"]["req_data"]:
-            array = []
-            for each in element:
-                array.append(element[each])
-                list_data.append(array)
-        return list_data
-
-    #   predict
-    def _inference(self, data):
-        xg_model = xgb.Booster(model_file=self.model_path)
-        pre_data = xgb.DMatrix(data)
-        pre_result = xg_model.predict(pre_data)
-        pre_result = pre_result.tolist()
-        return pre_result
-
-    # predict result process
-    def _postprocess(self,data):
-        resp_data = []
-        for element in data:
-            resp_data.append({"predictresult": element})
-        return resp_data
- - - - -Parent topic: Examples of Custom Scripts - - -