From a9ef41723ad66438a24646ba61582dbc5b9f1cfc Mon Sep 17 00:00:00 2001 From: "Dong, Qiu Jian" Date: Thu, 24 Oct 2024 12:19:17 +0000 Subject: [PATCH] CCI UMN initial upload Reviewed-by: Eotvos, Oliver Reviewed-by: Hasko, Vladimir Co-authored-by: Dong, Qiu Jian Co-committed-by: Dong, Qiu Jian --- docs/cci/umn/ALL_META.TXT.json | 347 +++++++ docs/cci/umn/CLASS.TXT.json | 173 ++++ docs/cci/umn/PARAMETERS.txt | 3 + docs/cci/umn/cci_01_0001.html | 91 ++ docs/cci/umn/cci_01_0003.html | 13 + docs/cci/umn/cci_01_0033.html | 13 + docs/cci/umn/cci_01_0034.html | 50 + docs/cci/umn/cci_01_0035.html | 64 ++ docs/cci/umn/cci_01_0053.html | 157 ++++ docs/cci/umn/cci_03_0000.html | 35 + docs/cci/umn/cci_03_0001.html | 22 + docs/cci/umn/cci_03_0003.html | 17 + docs/cci/umn/cci_03_0004.html | 24 + docs/cci/umn/cci_03_0005.html | 33 + docs/cci/umn/cci_03_0006.html | 24 + docs/cci/umn/cci_03_0007.html | 93 ++ docs/cci/umn/cci_03_0008.html | 863 ++++++++++++++++++ docs/cci/umn/cci_03_0010.html | 22 + docs/cci/umn/cci_03_1000.html | 25 + docs/cci/umn/en-us_image_0000001991238669.png | Bin 0 -> 7682 bytes docs/cci/umn/en-us_image_0184026531.png | Bin 0 -> 3454 bytes docs/cci/umn/en-us_image_0197831172.png | Bin 0 -> 19234 bytes docs/cci/umn/en-us_image_0197840533.png | Bin 0 -> 10534 bytes docs/cci/umn/en-us_image_0197840757.png | Bin 0 -> 7010 bytes docs/cci/umn/en-us_image_0197841641.png | Bin 0 -> 6198 bytes docs/cci/umn/en-us_image_0201693831.png | Bin 0 -> 2098 bytes .../cci/umn/en-us_topic_0000001955196756.html | 15 + .../cci/umn/en-us_topic_0000001971717269.html | 15 + .../cci/umn/en-us_topic_0000001975803021.html | 14 + .../caution_3.0-en-us.png | Bin 0 -> 2752 bytes .../public_sys-resources/danger_3.0-en-us.png | Bin 0 -> 2771 bytes docs/cci/umn/public_sys-resources/delta.gif | Bin 0 -> 836 bytes .../cci/umn/public_sys-resources/deltaend.gif | Bin 0 -> 834 bytes .../umn/public_sys-resources/icon-arrowdn.gif | Bin 0 -> 1887 bytes .../umn/public_sys-resources/icon-arrowrt.gif | Bin 0 -> 1890 bytes .../umn/public_sys-resources/icon-caution.gif | Bin 0 -> 1086 bytes .../umn/public_sys-resources/icon-danger.gif | Bin 0 -> 1086 bytes .../umn/public_sys-resources/icon-huawei.gif | Bin 0 -> 2767 bytes .../umn/public_sys-resources/icon-note.gif | Bin 0 -> 983 bytes .../umn/public_sys-resources/icon-notice.gif | Bin 0 -> 962 bytes .../cci/umn/public_sys-resources/icon-tip.gif | Bin 0 -> 879 bytes .../umn/public_sys-resources/icon-warning.gif | Bin 0 -> 1086 bytes .../public_sys-resources/note_3.0-en-us.png | Bin 0 -> 1080 bytes .../public_sys-resources/notice_3.0-en-us.png | Bin 0 -> 1672 bytes .../warning_3.0-en-us.png | Bin 0 -> 3164 bytes 45 files changed, 2113 insertions(+) create mode 100644 docs/cci/umn/ALL_META.TXT.json create mode 100644 docs/cci/umn/CLASS.TXT.json create mode 100644 docs/cci/umn/PARAMETERS.txt create mode 100644 docs/cci/umn/cci_01_0001.html create mode 100644 docs/cci/umn/cci_01_0003.html create mode 100644 docs/cci/umn/cci_01_0033.html create mode 100644 docs/cci/umn/cci_01_0034.html create mode 100644 docs/cci/umn/cci_01_0035.html create mode 100644 docs/cci/umn/cci_01_0053.html create mode 100644 docs/cci/umn/cci_03_0000.html create mode 100644 docs/cci/umn/cci_03_0001.html create mode 100644 docs/cci/umn/cci_03_0003.html create mode 100644 docs/cci/umn/cci_03_0004.html create mode 100644 docs/cci/umn/cci_03_0005.html create mode 100644 docs/cci/umn/cci_03_0006.html create mode 100644 docs/cci/umn/cci_03_0007.html create mode 100644 docs/cci/umn/cci_03_0008.html create mode 100644 docs/cci/umn/cci_03_0010.html create mode 100644 docs/cci/umn/cci_03_1000.html create mode 100644 docs/cci/umn/en-us_image_0000001991238669.png create mode 100644 docs/cci/umn/en-us_image_0184026531.png create mode 100644 docs/cci/umn/en-us_image_0197831172.png create mode 100644 docs/cci/umn/en-us_image_0197840533.png create mode 100644 docs/cci/umn/en-us_image_0197840757.png create mode 100644 docs/cci/umn/en-us_image_0197841641.png create mode 100644 docs/cci/umn/en-us_image_0201693831.png create mode 100644 docs/cci/umn/en-us_topic_0000001955196756.html create mode 100644 docs/cci/umn/en-us_topic_0000001971717269.html create mode 100644 docs/cci/umn/en-us_topic_0000001975803021.html create mode 100644 docs/cci/umn/public_sys-resources/caution_3.0-en-us.png create mode 100644 docs/cci/umn/public_sys-resources/danger_3.0-en-us.png create mode 100644 docs/cci/umn/public_sys-resources/delta.gif create mode 100644 docs/cci/umn/public_sys-resources/deltaend.gif create mode 100644 docs/cci/umn/public_sys-resources/icon-arrowdn.gif create mode 100644 docs/cci/umn/public_sys-resources/icon-arrowrt.gif create mode 100644 docs/cci/umn/public_sys-resources/icon-caution.gif create mode 100644 docs/cci/umn/public_sys-resources/icon-danger.gif create mode 100644 docs/cci/umn/public_sys-resources/icon-huawei.gif create mode 100644 docs/cci/umn/public_sys-resources/icon-note.gif create mode 100644 docs/cci/umn/public_sys-resources/icon-notice.gif create mode 100644 docs/cci/umn/public_sys-resources/icon-tip.gif create mode 100644 docs/cci/umn/public_sys-resources/icon-warning.gif create mode 100644 docs/cci/umn/public_sys-resources/note_3.0-en-us.png create mode 100644 docs/cci/umn/public_sys-resources/notice_3.0-en-us.png create mode 100644 docs/cci/umn/public_sys-resources/warning_3.0-en-us.png diff --git a/docs/cci/umn/ALL_META.TXT.json b/docs/cci/umn/ALL_META.TXT.json new file mode 100644 index 00000000..e9dd4e78 --- /dev/null +++ b/docs/cci/umn/ALL_META.TXT.json @@ -0,0 +1,347 @@ +[ + { + "dockw":"User Guide" + }, + { + "uri":"cci_03_1000.html", + "node_id":"cci_03_1000.xml", + "product_code":"cci", + "code":"1", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Service Overview", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Service Overview", + "githuburl":"" + }, + { + "uri":"cci_03_0001.html", + "node_id":"cci_03_0001.xml", + "product_code":"cci", + "code":"2", + "des":"Cloud Container Instance (CCI) is a serverless container engine that allows you to run containers without creating or managing server clusters.Traditionally, to run conta", + "doc_type":"usermanual", + "kw":"Overview,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Overview", + "githuburl":"" + }, + { + "uri":"cci_03_0003.html", + "node_id":"cci_03_0003.xml", + "product_code":"cci", + "code":"3", + "des":"CCI provides an industry-leading serverless container architecture, so you do not need to create server clusters. Instead, you can create large-scale converged resource p", + "doc_type":"usermanual", + "kw":"Advantages,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Advantages", + "githuburl":"" + }, + { + "uri":"cci_03_0004.html", + "node_id":"cci_03_0004.xml", + "product_code":"cci", + "code":"4", + "des":"Scientific R&D in fields such as genomics and drug development requires high-performance and high-density computing. In addition, scientific computing is generally task-b", + "doc_type":"usermanual", + "kw":"Application Scenarios,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Application Scenarios", + "githuburl":"" + }, + { + "uri":"cci_03_0005.html", + "node_id":"cci_03_0005.xml", + "product_code":"cci", + "code":"5", + "des":"CCI provides enhanced features, such as security isolation, fast workload deployment, elastic load balancing, and auto scaling.The graphical CCI console provides end-to-e", + "doc_type":"usermanual", + "kw":"Basic Concepts,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Basic Concepts", + "githuburl":"" + }, + { + "uri":"cci_03_0008.html", + "node_id":"cci_03_0008.xml", + "product_code":"cci", + "code":"6", + "des":"If you need to assign different permissions to employees in your enterprise to access your CCI resources, Identity and Access Management (IAM) is a good choice for fine-g", + "doc_type":"usermanual", + "kw":"Permissions Management,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Permissions Management", + "githuburl":"" + }, + { + "uri":"cci_03_0007.html", + "node_id":"cci_03_0007.xml", + "product_code":"cci", + "code":"7", + "des":"This section describes the constraints on using CCI 2.0.The following table lists the constraints on CCI 2.0.The following table lists the pod flavors.Requirements on pod", + "doc_type":"usermanual", + "kw":"Constraints,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Constraints", + "githuburl":"" + }, + { + "uri":"cci_03_0010.html", + "node_id":"cci_03_0010.xml", + "product_code":"cci", + "code":"8", + "des":"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", + "doc_type":"usermanual", + "kw":"Region and AZ,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Region and AZ", + "githuburl":"" + }, + { + "uri":"cci_03_0006.html", + "node_id":"cci_03_0006.xml", + "product_code":"cci", + "code":"9", + "des":"CCI needs to be interconnected with the following cloud services. It requires permissions to access these cloud services.SWRSoftWare Repository for Container (SWR) provid", + "doc_type":"usermanual", + "kw":"Related Services,Service Overview,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Related Services", + "githuburl":"" + }, + { + "uri":"cci_01_0003.html", + "node_id":"cci_01_0003.xml", + "product_code":"cci", + "code":"10", + "des":"Log in to the CCI console and grant CCI the permissions to access other cloud services.After the permissions are granted, an agency named cci_admin_trust is created. You ", + "doc_type":"usermanual", + "kw":"Environment Configuration,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Environment Configuration", + "githuburl":"" + }, + { + "uri":"en-us_topic_0000001975803021.html", + "node_id":"en-us_topic_0000001975803021.xml", + "product_code":"cci", + "code":"11", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Container Group", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Container Group", + "githuburl":"" + }, + { + "uri":"en-us_topic_0000001955196756.html", + "node_id":"en-us_topic_0000001955196756.xml", + "product_code":"cci", + "code":"12", + "des":"Pods (or container groups) are the smallest deployable units of computing that you can create and manage. A pod or a container group is a group of one or more containers,", + "doc_type":"usermanual", + "kw":"Overview,Container Group,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Overview", + "githuburl":"" + }, + { + "uri":"cci_01_0053.html", + "node_id":"cci_01_0053.xml", + "product_code":"cci", + "code":"13", + "des":"You can use CCI to quickly create pods for running workloads. On the CCI console, you can view details about all pods, such as basic information, container list, storage ", + "doc_type":"usermanual", + "kw":"Creating a Container Group,Container Group,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Creating a Container Group", + "githuburl":"" + }, + { + "uri":"cci_01_0033.html", + "node_id":"cci_01_0033.xml", + "product_code":"cci", + "code":"14", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Configuration Center", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Configuration Center", + "githuburl":"" + }, + { + "uri":"cci_01_0034.html", + "node_id":"cci_01_0034.xml", + "product_code":"cci", + "code":"15", + "des":"ConfigMaps are objects that you can use to store the configurations required by applications. After you create a ConfigMap, you can use it as a file in a containerized ap", + "doc_type":"usermanual", + "kw":"ConfigMaps,Configuration Center,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"ConfigMaps", + "githuburl":"" + }, + { + "uri":"cci_01_0035.html", + "node_id":"cci_01_0035.xml", + "product_code":"cci", + "code":"16", + "des":"Secrets are objects that you can use to store sensitive data such as authentication information, certificates, and private keys. You can load a secret to a container as a", + "doc_type":"usermanual", + "kw":"Secrets,Configuration Center,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Secrets", + "githuburl":"" + }, + { + "uri":"en-us_topic_0000001971717269.html", + "node_id":"en-us_topic_0000001971717269.xml", + "product_code":"cci", + "code":"17", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Namespaces", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Namespaces", + "githuburl":"" + }, + { + "uri":"cci_01_0001.html", + "node_id":"cci_01_0001.xml", + "product_code":"cci", + "code":"18", + "des":"Namespaces are used to logically divide your resources into different groups, especially in scenarios where a large number of users from multiple teams work on different ", + "doc_type":"usermanual", + "kw":"Creating a Namespace,Namespaces,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Creating a Namespace", + "githuburl":"" + }, + { + "uri":"cci_03_0000.html", + "node_id":"cci_03_0000.xml", + "product_code":"cci", + "code":"19", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Change History,User Guide", + "search_title":"", + "metedata":[ + { + "prodname":"cci", + "documenttype":"usermanual" + } + ], + "title":"Change History", + "githuburl":"" + } +] \ No newline at end of file diff --git a/docs/cci/umn/CLASS.TXT.json b/docs/cci/umn/CLASS.TXT.json new file mode 100644 index 00000000..6e971f18 --- /dev/null +++ b/docs/cci/umn/CLASS.TXT.json @@ -0,0 +1,173 @@ +[ + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"cci", + "title":"Service Overview", + "uri":"cci_03_1000.html", + "doc_type":"usermanual", + "p_code":"", + "code":"1" + }, + { + "desc":"Cloud Container Instance (CCI) is a serverless container engine that allows you to run containers without creating or managing server clusters.Traditionally, to run conta", + "product_code":"cci", + "title":"Overview", + "uri":"cci_03_0001.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"2" + }, + { + "desc":"CCI provides an industry-leading serverless container architecture, so you do not need to create server clusters. Instead, you can create large-scale converged resource p", + "product_code":"cci", + "title":"Advantages", + "uri":"cci_03_0003.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"3" + }, + { + "desc":"Scientific R&D in fields such as genomics and drug development requires high-performance and high-density computing. In addition, scientific computing is generally task-b", + "product_code":"cci", + "title":"Application Scenarios", + "uri":"cci_03_0004.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"4" + }, + { + "desc":"CCI provides enhanced features, such as security isolation, fast workload deployment, elastic load balancing, and auto scaling.The graphical CCI console provides end-to-e", + "product_code":"cci", + "title":"Basic Concepts", + "uri":"cci_03_0005.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"5" + }, + { + "desc":"If you need to assign different permissions to employees in your enterprise to access your CCI resources, Identity and Access Management (IAM) is a good choice for fine-g", + "product_code":"cci", + "title":"Permissions Management", + "uri":"cci_03_0008.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"6" + }, + { + "desc":"This section describes the constraints on using CCI 2.0.The following table lists the constraints on CCI 2.0.The following table lists the pod flavors.Requirements on pod", + "product_code":"cci", + "title":"Constraints", + "uri":"cci_03_0007.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"7" + }, + { + "desc":"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", + "product_code":"cci", + "title":"Region and AZ", + "uri":"cci_03_0010.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"8" + }, + { + "desc":"CCI needs to be interconnected with the following cloud services. It requires permissions to access these cloud services.SWRSoftWare Repository for Container (SWR) provid", + "product_code":"cci", + "title":"Related Services", + "uri":"cci_03_0006.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"9" + }, + { + "desc":"Log in to the CCI console and grant CCI the permissions to access other cloud services.After the permissions are granted, an agency named cci_admin_trust is created. You ", + "product_code":"cci", + "title":"Environment Configuration", + "uri":"cci_01_0003.html", + "doc_type":"usermanual", + "p_code":"", + "code":"10" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"cci", + "title":"Container Group", + "uri":"en-us_topic_0000001975803021.html", + "doc_type":"usermanual", + "p_code":"", + "code":"11" + }, + { + "desc":"Pods (or container groups) are the smallest deployable units of computing that you can create and manage. A pod or a container group is a group of one or more containers,", + "product_code":"cci", + "title":"Overview", + "uri":"en-us_topic_0000001955196756.html", + "doc_type":"usermanual", + "p_code":"11", + "code":"12" + }, + { + "desc":"You can use CCI to quickly create pods for running workloads. On the CCI console, you can view details about all pods, such as basic information, container list, storage ", + "product_code":"cci", + "title":"Creating a Container Group", + "uri":"cci_01_0053.html", + "doc_type":"usermanual", + "p_code":"11", + "code":"13" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"cci", + "title":"Configuration Center", + "uri":"cci_01_0033.html", + "doc_type":"usermanual", + "p_code":"", + "code":"14" + }, + { + "desc":"ConfigMaps are objects that you can use to store the configurations required by applications. After you create a ConfigMap, you can use it as a file in a containerized ap", + "product_code":"cci", + "title":"ConfigMaps", + "uri":"cci_01_0034.html", + "doc_type":"usermanual", + "p_code":"14", + "code":"15" + }, + { + "desc":"Secrets are objects that you can use to store sensitive data such as authentication information, certificates, and private keys. You can load a secret to a container as a", + "product_code":"cci", + "title":"Secrets", + "uri":"cci_01_0035.html", + "doc_type":"usermanual", + "p_code":"14", + "code":"16" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"cci", + "title":"Namespaces", + "uri":"en-us_topic_0000001971717269.html", + "doc_type":"usermanual", + "p_code":"", + "code":"17" + }, + { + "desc":"Namespaces are used to logically divide your resources into different groups, especially in scenarios where a large number of users from multiple teams work on different ", + "product_code":"cci", + "title":"Creating a Namespace", + "uri":"cci_01_0001.html", + "doc_type":"usermanual", + "p_code":"17", + "code":"18" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"cci", + "title":"Change History", + "uri":"cci_03_0000.html", + "doc_type":"usermanual", + "p_code":"", + "code":"19" + } +] \ No newline at end of file diff --git a/docs/cci/umn/PARAMETERS.txt b/docs/cci/umn/PARAMETERS.txt new file mode 100644 index 00000000..6da8d5f0 --- /dev/null +++ b/docs/cci/umn/PARAMETERS.txt @@ -0,0 +1,3 @@ +version="" +language="en-us" +type="" \ No newline at end of file diff --git a/docs/cci/umn/cci_01_0001.html b/docs/cci/umn/cci_01_0001.html new file mode 100644 index 00000000..1d54f404 --- /dev/null +++ b/docs/cci/umn/cci_01_0001.html @@ -0,0 +1,91 @@ + + +

Creating a Namespace

+

Namespaces are used to logically divide your resources into different groups, especially in scenarios where a large number of users from multiple teams work on different projects.

+

CCI provides general computing resources and allows you to create pods with CPU resources for general computing.

+
  • One account can create a maximum of five namespaces in a region.
  • x86 images are supported.
+
+

Relationship Between Namespaces and Networks

Each namespace requires a separate subnet, as shown in Figure 1. When you create a namespace, you need to associate it with a VPC. A subnet will be created for the namespace in the VPC. Containers and other resources created in this namespace will run in the VPC and subnet you select.

+

If you want to run resources of multiple services in the same VPC, you need to consider network planning, including subnet CIDR block division and IP address planning.

+
Figure 1 Relationship between namespaces and VPC subnets
+
+

Application Scenarios

Namespaces can implement partial environment isolation. If you have a large number of projects and personnel, you can create different namespaces based on project attributes, such as production, test, and development.

+
+

Creating a Namespace

  1. Log in to the CCI console. In the navigation pane on the left, choose Namespaces.
  2. On the Namespaces page, click Create Namespace in the upper right corner.
  3. Enter a name for the namespace.

    • The name of each namespace must be unique in CCI.
    • Enter 1 to 63 characters. Start and end with a lowercase letter or digit. Use only lowercase letters, digits, and hyphens (-).
    +
    +

  4. Configure the network plane.

    +

    + + + + + + + + + + + + + + + + +
    Table 1 Network plane settings

    Parameter

    +

    Description

    +

    IPv6

    +

    If this option is enabled, IPv4/IPv6 dual stack is supported.

    +

    VPC

    +

    Select the VPC where the workloads are running. If no VPC is available, create one first. The VPC cannot be changed once selected.

    +

    Recommended CIDR blocks: 10.0.0.0/8-22, 172.16.0.0/12-22, and 192.168.0.0/16-22

    +
    NOTICE:

    10.247.0.0/16 is reserved for workloads. If you select this CIDR block, IP address conflicts may occur, which may result in workload creation failure or service unavailability. However, if you do not need to access pods through workloads, you can select this CIDR block.

    +

    After the namespace is created, you can view the VPC and subnet by choosing Namespaces > Subnet.

    +
    +

    Subnet

    +

    Select the subnet where the workloads are running. If no subnet is available, create one first. The subnet cannot be changed once selected.

    +
    • Some IP addresses (10 by default) in the subnet will be warmed up for the namespace.
    • You can set the number of IP addresses to be warmed up in Advanced Settings.
    • If warming up IP addresses for the namespace is enabled, the VPC and subnet can only be deleted after the namespace is deleted.
    +
    NOTE:

    Sufficient available IP addresses in the subnet are required for creating workloads.

    +
    +

    Security Group

    +

    Select a security group. If no security group is available, create one first. The security group cannot be changed once selected.

    +
    +
    +

  5. (Optional) Advanced Settings

    Each namespace provides an IP pool. You can specify the pool size to reduce the duration for assigning IP addresses and speed up the workload creation.

    +

    For example, 200 pods are running routinely, and 200 IP addresses are required in the IP pool. During peak hours, the IP pool instantly scales out to provide 500 IP addresses. After a specified interval (for example, 23 hours), the IP addresses that exceed the pool size (500 – 200 = 300) will be recycled.

    + +
    + + + + + + + + + + +
    Table 2 Advanced namespace settings

    Parameter

    +

    Description

    +

    IP Pool Warm-up for Namespace

    +

    An IP pool is provided for each namespace, with the number of IP addresses you specify here, and IP addresses will be assigned in advance to accelerate workload creation.

    +

    An IP pool can contain a maximum of 500 IP addresses.

    +

    IP Address Recycling Interval (h)

    +

    Warmed-up IP addresses that become idle can be recycled within the duration you specify here.

    +
    +
    +

  6. Click OK.

    You can view the VPC and subnet on the namespace details page.

    +

+
+

Deleting a Namespace

  • Deleting a namespace will delete all resources (such as pods, ConfigMaps, and secrets) related to the namespace.
  • Cascading deletion of workloads and services is not supported after a namespace is deleted.
  • After a namespace is deleted, if a namespace with the same name is created immediately, 409 Conflict may be returned because it takes a while to delete a namespace. Create the namespace about 30 seconds later.
+
+
  1. Log in to the CCI console. In the navigation pane on the left, choose Namespaces.
  2. On the Namespaces page, locate the namespace you want to delete and click Delete in the Operation column. In the Delete Namespace dialog box, enter DELETE and click OK.

    To delete a VPC or subnet, go to the VPC console.

    +
    +

+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_01_0003.html b/docs/cci/umn/cci_01_0003.html new file mode 100644 index 00000000..9a44d160 --- /dev/null +++ b/docs/cci/umn/cci_01_0003.html @@ -0,0 +1,13 @@ + + +

Environment Configuration

+

Logging In to the CCI Console

Log in to the CCI console and grant CCI the permissions to access other cloud services.

+
+
  1. Switch to the CCI console.
  2. If this is the first time you are logging in to the CCI console, click Agree to grant CCI the permissions to access other cloud services.

    After the permissions are granted, an agency named cci_admin_trust is created. You can view the agency on the IAM console.

    +

+

(Optional) Uploading Images

The cloud platform provides the SoftWare Repository for Container (SWR) service for you to upload container images to the image repository. You can easily pull these images when creating workloads on CCI. For details about how to upload images, see Uploading an Image Through the Client.

+

Currently, CCI does not support third-party image repositories.

+
+
+
+ diff --git a/docs/cci/umn/cci_01_0033.html b/docs/cci/umn/cci_01_0033.html new file mode 100644 index 00000000..0e8c418f --- /dev/null +++ b/docs/cci/umn/cci_01_0033.html @@ -0,0 +1,13 @@ + + +

Configuration Center

+
+
+ +
+ diff --git a/docs/cci/umn/cci_01_0034.html b/docs/cci/umn/cci_01_0034.html new file mode 100644 index 00000000..56c703d4 --- /dev/null +++ b/docs/cci/umn/cci_01_0034.html @@ -0,0 +1,50 @@ + + +

ConfigMaps

+

ConfigMaps are objects that you can use to store the configurations required by applications. After you create a ConfigMap, you can use it as a file in a containerized application.

+

Creating a ConfigMap

  1. Log in to the CCI console. In the navigation pane on the left, choose Configuration Center.
  2. Select a namespace and click the ConfigMaps tab.
  3. Click Create from YAML in the upper left corner and edit the YAML file. For details about the YAML file, see YAML format.

    CCI supports both JSON and YAML, and the file size cannot exceed 1 MB.

    +
    +

  4. Click OK.
+
+

Using a ConfigMap

After a ConfigMap is created, you can mount it to a container as a storage volume during pod creation. For example, mount a ConfigMap named system-preset-aeskey to a container and set the storage volume name to volume1.

+

+
+

ConfigMap File Format

A ConfigMap resource file must be in either JSON or YAML format, and the file size cannot exceed 1 MB.

+
  • JSON format

    Example file: configmap.json

    +
    {
    +  "kind": "ConfigMap",
    +  "apiVersion": "v1",
    +  "metadata": {
    +    "name": "nginxconf",
    +    "namespace": "cci-namespace-demo"
    +  },
    +  "data": {
    +    "nginx.conf": "server {\n    listen       80;\n    server_name  localhost;\n\n    location / {\n        root   html;\n        index  index.html index.htm;\n    }\n}"
    +  }
    +}
    +
  • YAML format
    Example file: configmap.yaml
    kind: ConfigMap
    +apiVersion: v1
    +metadata:
    +  name: nginxconf
    +  namespace: cci-namespace-demo
    +data:
    +  nginx.conf: |-
    +    server {
    +        listen       80;
    +        server_name  localhost;
    +
    +        location / {
    +            root   html;
    +            index  index.html index.htm;
    +        }
    +    }
    +
    +
+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_01_0035.html b/docs/cci/umn/cci_01_0035.html new file mode 100644 index 00000000..a620f137 --- /dev/null +++ b/docs/cci/umn/cci_01_0035.html @@ -0,0 +1,64 @@ + + +

Secrets

+

Secrets are objects that you can use to store sensitive data such as authentication information, certificates, and private keys. You can load a secret to a container as an environment variable when the container is started or mount a secret to a container as a file.

+

It is recommended that you encrypt the uploaded secrets.

+
+

Creating a Secret

  1. Log in to the CCI console. In the navigation pane on the left, choose Configuration Center.
  2. Select a namespace and click the Secrets tab.
  3. Click Create from YAML in the upper left corner and edit the YAML file. For details about the YAML file, see YAML format.

    CCI supports both JSON and YAML, and the file size cannot exceed 2 MB.

    +
    +

  4. Click OK.

    You can view the newly created secret in the secret list.

    +

+
+

Using a Secret

After a secret is created, you can mount it to a container as a storage volume during pod creation. For example, mount a secret named aksk-secret to a container and set the storage volume name to volume2.

+

+
+

Secret File Format

  • secret.yaml resource description file

    For example, you can use a secret to obtain the following key-value pairs and encrypt them for an application:

    +

    key1: value1

    +

    key2: value2

    +

    The secret.yaml file is defined as below. (Base64 encoding is required for the value of each key. For details about the Base64 encoding method, see Base64 Encoding.)

    +
    apiVersion: v1
    +kind: Secret
    +metadata:
    +  name: mysecret           #Secret name
    +  annotations:
    +    description: "test"
    +  labels:
    +    label-01: value-01
    +    label-02: value-02
    +data:
    +  key1: dmFsdWUx    #Base64 encoding required
    +  key2: dmFsdWUy  #Base64 encoding required
    +type: Opaque         #The type must be Opaque.
    +
  • secret.json resource description file
    The content is as follows:
    {
    +    "apiVersion": "v1",
    +    "kind": "Secret",
    +    "metadata": {
    +        "annotations": {
    +            "description": "test"
    +        },
    +        "labels": {
    +            "label-01": "value-01",
    +            "label-02": "value-02"
    +        },
    +        "name": "mysecret"
    +    },
    +    "data": {
    +        "key1": "dmFsdWUx",
    +        "key2": "dmFsdWUy"
    +    },
    +    "type": "Opaque"
    +}
    +
    +
+
+

Base64 Encoding

To perform Base64 encoding on a character string, run the echo -n {Content to be encoded} | base64 command.

+
root@ubuntu:~# echo -n "3306" | base64
+MzMwNg==
+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_01_0053.html b/docs/cci/umn/cci_01_0053.html new file mode 100644 index 00000000..735438a1 --- /dev/null +++ b/docs/cci/umn/cci_01_0053.html @@ -0,0 +1,157 @@ + + +

Creating a Container Group

+

Scenario

You can use CCI to quickly create pods for running workloads. On the CCI console, you can view details about all pods, such as basic information, container list, storage volumes, and events. In addition, you can use remote terminals to access pods. You can also delete pods.

+

+
+

+

Prerequisites

+
+

Constraints

Custom domain name images of the SWR enterprise edition cannot be used to create workloads.

+
+

Creating a Pod

  1. Log in to the CCI console.
  2. In the navigation pane on the left, choose Container Groups. On the displayed page, click Create Container Group.
  3. On the Create Container Group page, specify the basic information.

    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Parameter

    +

    Description

    +

    Container Group Name

    +
    • Enter a name for the container group. The name must be unique in the same account.
    • Enter 1 to 253 characters. Start and end with a lowercase letter or digit. Use only lowercase letters, digits, hyphens (-), and periods (.).
    +

    Namespace

    +

    Namespace that the container group belongs to.

    +

    (Optional) Description

    +

    Enter a description, which cannot exceed 250 characters.

    +

    CPU Architecture

    +

    x86

    +

    Pod Type

    +

    General-computing

    +

    vCPUs

    +

    Select a value from 0.25 to 64.

    +

    Memory

    +

    Select the memory based on the selected vCPUs.

    +

    (Optional) Data Storage

    +
    Select a storage volume type and enter a storage volume name.
    • emptyDir volume: By default, CCI provides 20 GiB of free storage space, which is shared by emptyDir volumes and the system disk.
    • ConfigMaps: Select a ConfigMap. If no ConfigMaps are available, create one first. For details, see Creating a ConfigMap.
    • Secrets: Select a secret. If no secrets are available, create one first. For details, see Creating a Secret.
      NOTE:

      Only emptyDir volumes, ConfigMaps, and secrets are supported. Add a volume to the container group and then mount the volume to the specified container.

      +
      +
    +
    +
    +
    +
    +

  1. Configure container settings.

    1. Add basic container information. The total resources of a container cannot exceed the pod flavors.

      +
      +
      + + + + + + + + + + + + + + + + + + + +
      Table 1 Basic container information

      Parameter

      +

      Description

      +

      Container Name

      +
      • The container name must be globally unique.
      • Enter 1 to 63 characters. Start and end with a lowercase letter or digit. Use only lowercase letters, digits, and hyphens (-).
      +

      Image

      +

      Select a container image.

      +
      CAUTION:

      Custom domain name images of the SWR enterprise edition cannot be used to create workloads.

      +
      +

      Image Version

      +

      Select a container image version.

      +

      vCPUs

      +

      Specify the vCPUs. The value cannot exceed that in the pod flavors.

      +

      Memory

      +

      Specify the memory. The value cannot exceed that in the pod flavors.

      +
      +
      +
      +
    2. (Optional) Specify advanced container settings.

      +

      + +
      + + + + + + + + + + + + + + + + + + + +
      Table 2 Advanced container settings

      Parameter

      +

      Description

      +

      Lifecycle

      +

      Based on Kubernetes, CCI provides containers with lifecycle hooks, which enable containers to run code triggered by events during their management lifecycle. For example, if you want a container to perform a certain operation before it is stopped, you can register a hook. CCI provides the following lifecycle hooks:

      +
      • Startup command: Docker ENTRYPOINT commands are used.
      • postStart event: This hook is triggered after the application is started.
      • preStop event: This hook is triggered before the application is stopped.
      +

      Health Check

      +

      Container health can be checked regularly when the container is running.

      +

      CCI supports the following types of probes:

      +
      • Liveness probe: checks whether a container responds normally and whether a restart is required.
      • Ready probe: checks whether a container is ready to respond to requests.
      • Startup probe: checks whether an application has already started.
      +

      Environment Variables

      +

      Environment variables affect the way a running container will behave. You can update them after deploying the workload.

      +

      Data Storage

      +

      Volumes can be mounted to containers to read data from files or store data files persistently. To mount a volume to a container, add the volume to the pod first.

      +

      Security Settings

      +

      Specify a user ID for all the containers to run with. For example, enter 0 to run as user root.

      +
      +
      +
    +

  2. (Optional) Select an image repository access credential.

    +

    +

+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_03_0000.html b/docs/cci/umn/cci_03_0000.html new file mode 100644 index 00000000..a84a4a4e --- /dev/null +++ b/docs/cci/umn/cci_03_0000.html @@ -0,0 +1,35 @@ + + +

Change History

+
+
+ + + + + + + + + + + + + +

Released On

+

What's New

+

2027-08-14

+

Modified the following:

+ +

2024-07-18

+

Added the following:

+ +

Modified the following:

+ + +

2024-05-10

+

This issue is the first official release.

+
+
+
+ diff --git a/docs/cci/umn/cci_03_0001.html b/docs/cci/umn/cci_03_0001.html new file mode 100644 index 00000000..7a1dd41c --- /dev/null +++ b/docs/cci/umn/cci_03_0001.html @@ -0,0 +1,22 @@ + + +

Overview

+

What Is CCI

Cloud Container Instance (CCI) is a serverless container engine that allows you to run containers without creating or managing server clusters.

+

Traditionally, to run containerized workloads, you need to create a server cluster first. In the serverless model, a cloud provider runs servers and dynamically allocates resources so that you can build and run applications without having to worry about server statuses. This model helps you improve development efficiency and reduce IT costs.

+

CCI uses the serverless model that allows you to directly create and use containerized workloads on the console, using kubectl, or by calling APIs, and pay only for the resources consumed by these workloads.

+

CCI is in the beta phase. To use the service, contact customer service.

+
+
+

Functions

One-Stop Container Lifecycle Management

+

CCI allows you to run containers without creating or managing server clusters. In the serverless model, you can deploy and run workloads on the console, using kubectl, or by calling APIs, and pay only for the resources consumed by these workloads.

+
+

Architecture

CCI is a serverless container service. It allows you to create large-scale converged resource pools using the cell-based architecture. It also integrates network and storage services of the cloud platform to allow you to easily deploy and run containerized workloads through the console, kubectl, and APIs.

+
  • CCI works with network and storage services of the cloud platform to provide robust network and storage performance.
  • The QingTian architecture with hardware and software collaboration brings ultimate performance and user experience.
  • Virtualization provides security isolation and works with in-house hardware virtualization acceleration technologies to allow you to create high-performance pods for running your workloads.
  • With unified resource management and workload scheduling, you do not need to manage clusters.
  • Capabilities, such as quick workload deployment, elastic load balancing, and fast auto scaling, can iterate services quickly.
+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_03_0003.html b/docs/cci/umn/cci_03_0003.html new file mode 100644 index 00000000..f5f5a237 --- /dev/null +++ b/docs/cci/umn/cci_03_0003.html @@ -0,0 +1,17 @@ + + +

Advantages

+

Out of the Box

CCI provides an industry-leading serverless container architecture, so you do not need to create server clusters. Instead, you can create large-scale converged resource pools using the cell-based architecture. CCI also integrates network and storage services to allow you to easily deploy and run containerized workloads through the console, kubectl, and APIs.

+
+

Fast Auto Scaling

Resources are unlimited from a single user's perspective and can be scaled in seconds, helping you cope with service changes and ensure SLAs.

+
+

High Security

CCI provides VM-level isolation without compromising the startup speed, offering you better container experience. CCI has the following security features:

+
  • Virtualization is supported.
  • Kernel virtualization based on secure containers provides comprehensive security isolation.
  • In-house virtualization acceleration technologies improve the virtualization performance.
+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_03_0004.html b/docs/cci/umn/cci_03_0004.html new file mode 100644 index 00000000..ec8675d6 --- /dev/null +++ b/docs/cci/umn/cci_03_0004.html @@ -0,0 +1,24 @@ + + +

Application Scenarios

+

Scientific Computing

Scientific R&D in fields such as genomics and drug development requires high-performance and high-density computing. In addition, scientific computing is generally task-based and requires quick resource allocation and release. Therefore, a low-cost computing platform with automated O&M is required.

+

The following CCI features make it suitable for computing in this scenario:

+
  • High-performance computing and network, and high I/O storage
  • Resource scaling in seconds minimizes resource consumption
  • No O&M required for clusters and servers, greatly reducing O&M costs
+
+

DevOps/Continuous Delivery

Software development enterprises need complete DevOps processes from code submission to application deployment to improve the development efficiency. DevOps processes such as continuous integration/continuous delivery (CI/CD) are generally task-based computing and require quick resource allocation and release.

+

The following CCI features make it suitable for computing in this scenario:

+
  • Automation for the entire CI/CD process, with no cluster creation and maintenance required
  • Image-based delivery, allowing for consistency between the development and production environments
+
Figure 1 DevOps/Continuous delivery
+
+

Services with Fluctuating Traffic

Some types of applications, such as live video, media information, e-commerce, and online education, have obvious service peaks and troughs. For these applications, resources need to be expanded rapidly during peak hours without breaking the bank.

+

The following CCI features make it suitable for these applications:

+
  • Fast scaling: CCI can quickly take over services from CCE to ensure uptime during peak hours.
+
Figure 2 Auto scaling
+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_03_0005.html b/docs/cci/umn/cci_03_0005.html new file mode 100644 index 00000000..2fbb6b85 --- /dev/null +++ b/docs/cci/umn/cci_03_0005.html @@ -0,0 +1,33 @@ + + +

Basic Concepts

+

CCI provides enhanced features, such as security isolation, fast workload deployment, elastic load balancing, and auto scaling.

+

The graphical CCI console provides end-to-end user experience. In addition, CCI supports native APIs and kubectl. Before using CCI, you are advised to understand related basic concepts.

+

Image

A container image is a special file system that provides the programs, libraries, resources, and configuration files required for running a container. It also contains configuration parameters, for example, anonymous volumes, environment variables, and users. An image does not contain any dynamic data, and its content will not be changed after creation.

+
+

Container

The relationship between an image and a container is similar to that between a class and an instance in object-oriented programming. Images are static, and containers are entities of running images. A container can be created, started, stopped, deleted, and suspended.

+
+

Namespace

A namespace provides a method of allocating resources among multiple users. When you have a large number of projects and personnel, you can define namespaces by project attributes, such as production, test, and development.

+
+

Pod

A pod is the smallest deployable unit of computing that you can create and manage. A pod is a group of one or more containers, with shared storage resources, a unique IP address, and a specification for how to run the containers.

+
Figure 1 Pod
+

Pods can be used in either of the following ways:

+
  • One pod that runs a single container: This is the most common use case. You can think of a pod as a wrapper around a single container, but pods can be managed directly rather than containers.
  • Pods that run multiple containers that need to work together:
+

Pods are rarely created directly. Instead, controllers such as Deployments are used to create and manage pods. Controllers create and manage multiple pods, and provide replica management, rolling upgrade, and self-healing capabilities. A controller typically uses a pod template to create corresponding pods.

+
+

Label

A label is a key-value pair attached to an object and is used to transfer user-defined attributes.

+

Labels are often used to select objects that meet conditions from a group of objects. Labels are currently the most important node grouping method.

+

For example, you may create labels (tier=frontend, app=myapp) to mark frontend pods and labels (tier=backend, app=myapp) to mark backend pods. You can then use selectors to select pods with specific labels and apply services or Deployments to these pods.

+
Figure 2 Pods organized with labels
+
+

ConfigMap

A ConfigMap is used to store configuration data as key-value pairs or configuration files. ConfigMaps are similar to secrets, but provide a means of working with strings that do not contain sensitive information.

+
+

Secret

A secret is an object for storing sensitive data such as authentication information, certificates, and private keys. A secret can be loaded to a container as environment variables when the container is started.

+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_03_0006.html b/docs/cci/umn/cci_03_0006.html new file mode 100644 index 00000000..af321df1 --- /dev/null +++ b/docs/cci/umn/cci_03_0006.html @@ -0,0 +1,24 @@ + + +

Related Services

+

CCI needs to be interconnected with the following cloud services. It requires permissions to access these cloud services.

+
  • SWR

    SoftWare Repository for Container (SWR) provides easy, secure, and reliable management of container images throughout their lifecycles, facilitating quick deployment of containerized services.

    +

    You can create workloads using SWR images.

    +
  • VPC

    Virtual Private Cloud (VPC) allows you to isolate online resources with virtual private networks. You can configure the CIDR block, subnets, and security groups, assign EIPs, and allocate bandwidth for a VPC.

    +

    When creating a namespace, you must associate it with a VPC. All containers to be created in the namespace will run in the VPC.

    +
  • ELB

    Elastic Load Balance (ELB) automatically distributes access traffic to multiple Elastic Cloud Servers (ECSs) to balance the loads. It enhances an application's fault tolerance level and capabilities of providing service externally.

    +

    You can access a container workload from an external network through an elastic load balancer.

    +
  • AOM

    Application Operations Management (AOM) is a one-stop platform for O&M personnel to monitor application and resource operating statuses in real time. By analyzing dozens of metrics, alarms, and logs, you can quickly locate root causes to ensure services run normally.

    +

    AOM collects the .log files of containers from CCI to facilitate log query and viewing. In addition, AOM provides resource monitoring to enable CCI to automatically scale resources.

    +
  • ECS

    Elastic Cloud Server (ECS) allows you to create cloud servers that provide scalable, on-demand computing resources for secure, flexible, and efficient applications.

    +

    CCI imports data to SFS through ECS for container services to use.

    +
  • NAT Gateway

    NAT Gateway provides source network address translation (SNAT), which translates private IP addresses to public IP addresses by binding an elastic IP address (EIP) to the gateway.

    +

    You can use NAT Gateway to set SNAT rules to allow containers in a VPC to access the Internet.

    +
+
+
+ +
+ diff --git a/docs/cci/umn/cci_03_0007.html b/docs/cci/umn/cci_03_0007.html new file mode 100644 index 00000000..3079fed8 --- /dev/null +++ b/docs/cci/umn/cci_03_0007.html @@ -0,0 +1,93 @@ + + +

Constraints

+

This section describes the constraints on using CCI 2.0.

+

Constraints on CCI 2.0

The following table lists the constraints on CCI 2.0.

+ +
+ + + + + + + + + + + + + + + + +

Item

+

Constraint

+

Account for creating CCI instances

+

The account must have complete real-name authentication.

+

Number of vCPUs per CCI instance

+

0.25, 0.5, 1, 2, 4, 8, 16, 32, 48, and 64

+

Supported OS

+

Only Linux

+

Network type

+

Only VPC

+
+
+
+

Constraints on Pod Flavors

The following table lists the pod flavors. +
+ + + + + + + + + + + + + + + + +
Table 1 Requirements on pod flavors

Item

+

Value Range

+

Number of vCPUs

+

0.25, 0.5, 1, 2, 4, 8, 16, 32, 48, and 64

+

Memory

+
  • 1 GiB to 512 GiB
  • The memory must be an integer multiple of 1 GiB.
+

vCPU/memory ratio

+

Between 1:1 and 1:8

+

Containers in a pod

+

A maximum of five containers

+

A single container has as few as 0.25 vCPUs and 0.5 GiB of memory. The maximum resource flavor of a container is the same as that of a pod.

+
+
+
+
+

Constraints on Pod Storage Space

If no EVS disk is mounted, application data is stored in the rootfs of the container. The following table lists the storage space limit of each pod.

+ +
+ + + + + + + +
Table 2 Storage space limit of each type of pod

Pod Type

+

Storage Space

+

General-computing pod

+

30 GB

+
+
+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_03_0008.html b/docs/cci/umn/cci_03_0008.html new file mode 100644 index 00000000..cde616f1 --- /dev/null +++ b/docs/cci/umn/cci_03_0008.html @@ -0,0 +1,863 @@ + + +

Permissions Management

+

If you need to assign different permissions to employees in your enterprise to access your CCI resources, Identity and Access Management (IAM) is a good choice for fine-grained permissions management. IAM provides identity authentication, permissions management, and access control, enabling secure access to your cloud resources.

+

With IAM, you can use your account to create IAM users, and assign permissions to the users to control their access to specific resources. For example, some software developers in your enterprise need to use CCI resources but should not be allowed to delete the resources or perform any other high-risk operations. In this scenario, you can create IAM users for the software developers and grant them only the permissions required for using CCI resources.

+

If your account does not require individual IAM users for permissions management, skip this section.

+

IAM can be used free of charge. You only pay for the resources in your account.

+

CCI Permissions

By default, new IAM users do not have permissions assigned. You need to add a user to one or more groups, and attach permissions policies or roles to these groups. Users inherit permissions from the groups to which they are added and can perform specified operations on cloud services based on the permissions.

+

CCI is a project-level service deployed and accessed in specific regions. To assign CCI permissions to a user group, specify the scope as region-specific projects and select projects for the permissions to take effect. If All projects is selected, the permissions will take effect for the user group in all region-specific projects. When accessing CCI, the users need to switch to a region where they have been authorized to use this service.

+

You can grant users permissions by using roles and policies.

+
  • Roles: A type of coarse-grained authorization mechanism that defines permissions related to user responsibilities. This mechanism provides only a limited number of service-level roles for authorization. When using roles to assign permissions, you need to also assign other roles on which the permissions depend to take effect. However, roles are not an ideal choice for fine-grained authorization and secure access control.
  • Policies: A type of fine-grained authorization mechanism that defines permissions required to perform operations on specific cloud resources under certain conditions. This mechanism allows for more flexible policy-based authorization, meeting requirements for secure access control. For example, you can grant CCI users only the permissions for managing a certain type of CCI resources. Most policies define permissions based on APIs. For the API actions supported by CCI, see "Permissions Policies and Supported Actions" in the CCI API Reference.
+
+

Table 1 lists all the system-defined roles and policies supported by CCI.

+ +
+ + + + + + + + + + + + + + + + + + + + + +
Table 1 System-defined roles and policies supported by CCI

Role/Policy Name

+

Description

+

Type

+

CCI FullAccess

+

Full permissions for CCI. Users granted these permissions can create, delete, query, and update all CCI resources.

+

System-defined policy

+

CCI ReadOnlyAccess

+

Read-only permissions for CCI. Users granted these permissions can only view CCI resources.

+

System-defined policy

+

CCI CommonOperations

+

Common user permissions for CCI. Users granted these permissions can perform all operations except creating, deleting, and modifying role-based access control (RBAC) policies, networks, and namespaced resources.

+

System-defined policy

+

CCI Administrator

+

Administrator permissions for CCI. Users granted these permissions can create, delete, query, and update all CCI resources.

+

System-defined role

+
+
+

Table 2 lists the permissions granted by a CCI FullAccess policy.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 2 Permissions granted by a CCI FullAccess policy

Action

+

Description

+

cci:*:*

+

Perform all operations on Cloud Container Instance (CCI).

+

vpc:*:*

+

Perform all operations on Virtual Private Cloud (VPC).

+

elb:*:*

+

Perform all operations on Elastic Load Balance (ELB).

+

sfs:*:*

+

Perform all operations on Scalable File Service (SFS).

+

evs:*:*

+

Perform all operations on Elastic Volume Service (EVS).

+

aom:*:*

+

Perform all operations on Application Operations Management (AOM).

+

apm:*:*

+

Perform all operations on Application Performance Management (APM).

+

swr:*:*

+

Perform all operations on Software Repository for Container (SWR).

+

nat:*:*

+

Perform all operations on NAT Gateway.

+

kms:cmk:*

+

Perform all operations on Key Management Service (KMS).

+
+
+

Table 3 lists the permissions granted by a CCI ReadOnlyAccess policy.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 3 Permissions granted by a CCI ReadOnlyAccess policy

Action

+

Description

+

cci:*:get

+

View details about all CCI resources.

+

cci:*:list

+

List all CCI resources.

+

vpc:*:get

+

View details about all VPC resources.

+

vpc:*:list

+

List all VPC resources.

+

ecs:*:get

+

View details about all ECS resources.

+

ecs:*:list

+

List all ECS resources.

+

elb:*:get

+

View details about all ELB resources.

+

elb:*:list

+

List all ELB resources.

+

sfs:*:get*

+

View details about all SFS resources.

+

sfs:*:list

+

List all SFS resources.

+

evs:*:get*

+

View details about all EVS resources.

+

evs:*:list

+

List all EVS resources.

+

aom:*:get

+

View details about all AOM resources.

+

aom:*:list

+

List all AOM resources.

+

amp:*:get

+

View details about all APM resources.

+

apm:*:list

+

List all APM resources.

+

swr:*:get

+

View details about all SWR resources.

+

swr:*:list

+

List all SWR resources.

+

nat:*:get

+

View details about all NAT Gateway resources.

+

nat:*:list

+

List all NAT Gateway resources.

+

kms:cmk:get

+

Query key information.

+

kms:cmk:list

+

List all keys.

+
+
+

Table 4 lists the permissions granted by a CCI CommonOperations policy.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 4 Permissions granted by a CCI CommonOperations policy

Action

+

Description

+

cci:rbac:get

+

Query RBAC policy details.

+

cci:rbac:list

+

List all RBAC policies.

+

cci:namespace:get

+

Query namespace details.

+

cci:namespace:list

+

List all namespaces.

+

cci:network:get

+

Query network details.

+

cci:network:list

+

List all networks.

+

cci:namespaceSubResource:*

+

Perform all operations on namespaced resources.

+

cci:addonTemplate:*

+

Perform all operations on add-on templates.

+

cci:addonInstance:*

+

Perform all operations on add-on pods.

+

vpc:*:*

+

Perform all operations on VPC.

+

elb:*:*

+

Perform all operations on ELB.

+

aom:*:*

+

Perform all operations on AOM.

+

apm:*:*

+

Perform all operations on APM.

+

swr:*:*

+

Perform all operations on SWR.

+

nat:*:*

+

Perform all operations on NAT Gateway.

+

kms:cmk:*

+

Perform all operations on KMS.

+
+
+

Table 5 lists the actions associated with CCI fine-grained policies.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 5 Actions associated with CCI fine-grained policies

Action

+

Description

+

CCI:rbac:get

+

Query RBAC details.

+

CCI:rbac:list

+

List all RBAC policies.

+

CCI:rbac:update

+

Update RBAC policies.

+

CCI:rbac:delete

+

Delete RBAC policies.

+

CCI:rbac:create

+

Create RBAC policies.

+

CCI:namespaceSubResource:Create

+

Create resources in namespaces.

+

CCI:namespaceSubResource:List

+

List all resources.

+

CCI:namespaceSubResource:Get

+

Query resources.

+

CCI:namespaceSubResource:Delete

+

Delete resources.

+

CCI:namespaceSubResource:Update

+

Update resources.

+

CCI:network:update

+

Update networks.

+

CCI:network:create

+

Create networks.

+

CCI:network:delete

+

Delete networks.

+

CCI:network:list

+

List all networks.

+

CCI:network:get

+

Query network details.

+

CCI:addonInstance:create

+

Create add-on instances.

+

CCI:addonInstance:update

+

Update add-on instances.

+

CCI:addonInstance:delete

+

Delete add-on instances.

+

CCI:addonInstance:get

+

Query add-on instance details.

+

CCI:addonInstance:list

+

List all add-on instances.

+

CCI:addonTemplate:list

+

List all add-on templates.

+

CCI:addonTemplate:get

+

Query add-on template details.

+

CCI:namespace:get

+

Query details about a specified namespace.

+

CCI:namespace:update

+

Update namespaces.

+

CCI:namespace:create

+

Create namespaces.

+

CCI:namespace:list

+

List all namespaces.

+

CCI:namespace:delete

+

Delete namespaces.

+
+
+

Table 6 lists the common operations supported by each system-defined policy or role of CCI. Select the policies or roles as required.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 6 Common operations supported by each system-defined policy or role of CCI

Operation

+

CCI FullAccess

+

CCI ReadOnlyAccess

+

CCI CommonOperations

+

Creating Deployments

+

+

x

+

+

Deleting Deployments

+

+

x

+

+

Viewing Deployments

+

+

+

+

Upgrading workloads

+

+

x

+

+

Scaling workloads

+

+

x

+

+

Deleting pods

+

+

x

+

+

Viewing pods

+

+

+

+

Creating jobs

+

+

x

+

+

Deleting jobs

+

+

x

+

+

Viewing jobs

+

+

+

+

Creating cron jobs

+

+

x

+

+

Deleting cron jobs

+

+

x

+

+

Viewing cron jobs

+

+

+

+

Viewing the resource usage

+

+

+

+

Adding EVS volumes

+

+

x

+

+

Deleting EVS volumes

+

+

x

+

+

Viewing EVS volumes

+

+

+

+

Creating ConfigMaps

+

+

x

+

+

Deleting ConfigMaps

+

+

x

+

+

Viewing ConfigMaps

+

+

+

+

Creating secrets

+

+

x

+

+

Deleting secrets

+

+

x

+

+

Viewing secrets

+

+

+

+

Adding SSL certificates

+

+

x

+

+

Deleting SSL certificates

+

+

x

+

+

Viewing SSL certificates

+

+

+

+

Adding log storage

+

+

x

+

+

Viewing logs

+

+

+

+

Installing add-ons

+

+

x

+

+

Deleting add-ons

+

+

x

+

+

Viewing add-ons

+

+

+

+

Viewing permissions

+

+

+

+

Granting permissions

+

+

x

+

x

+

Deleting permissions

+

+

x

+

x

+

Querying details about a specified namespace

+

+

x

+

+

Creating namespaces

+

+

x

+

x

+

Deleting namespaces

+

+

x

+

x

+

Creating networks

+

+

x

+

x

+

Deleting networks

+

+

x

+

x

+

Listing all networks

+

+

+

+

Querying network details

+

+

+

+
+
+
+
+ +
+ diff --git a/docs/cci/umn/cci_03_0010.html b/docs/cci/umn/cci_03_0010.html new file mode 100644 index 00000000..4d0ae19c --- /dev/null +++ b/docs/cci/umn/cci_03_0010.html @@ -0,0 +1,22 @@ + + +

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/docs/cci/umn/cci_03_1000.html b/docs/cci/umn/cci_03_1000.html new file mode 100644 index 00000000..ef6270ca --- /dev/null +++ b/docs/cci/umn/cci_03_1000.html @@ -0,0 +1,25 @@ + + +

Service Overview

+
+ + diff --git a/docs/cci/umn/en-us_image_0000001991238669.png b/docs/cci/umn/en-us_image_0000001991238669.png new file mode 100644 index 0000000000000000000000000000000000000000..67db52ffeb951cc32b42fa185e090626721b4b91 GIT binary patch literal 7682 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 WUtV?bri{KVps#JLRjJ|l=sy4|P*6Gm literal 0 HcmV?d00001 diff --git a/docs/cci/umn/en-us_image_0184026531.png b/docs/cci/umn/en-us_image_0184026531.png new file mode 100644 index 0000000000000000000000000000000000000000..1303a51c2f16a523cbe192bcfe5da3f355ecf256 GIT binary patch literal 3454 zcmc&%dpML^7e_)m3Mn;2aY~~Ln$R%nxFvGD@+y~dkI5*L5yoAnQ!dASCe(O!O5SG1 zrAUgQMsAH;$|Wj<%rVFq8o9(bQ{VaiJ>T?1+H3vxWv#WJwG-{_tmI@7 zvSMOla@NN!9K^)LQ-poGjD)ZqP`Sz!{=|bFtjxqp+EvGeKoV>EtErgS!?g9wUTcMT z-KFC$!D3$B45R&!M^%h&Iem)NbPE-^4F zFIhX;AkQ=1T6T2@;kBujrmk~cs;~2JlI1soocG}q($^kqOi;bCV~awj>L+t=mw|3O zPDpR-g^*JnwoW0y7smK>)Ad)O9fH==N29+K7Dj%lxwFS^-A;>u`jhuyXp>n&&k)iq zLGTYWm-$_lgGW{uV+UD>Gs@MKIfr%CYQqhRue=hD#O9mC&gE~~sznft468~vlJ4VN zC9kkR`E^jdJx{4X3NYP6lyxA%JCrbMX+pUy6yG(3lvxXy;&@6|B&kuB3zyPBFn{Vt-7OWRj+1L|UFgf!5%ttg*9cBc!a=pn9(G7@@GCdSE|^b zUi4Gs5$a-HKrzFC7f=!RhJ+!vP`1X2;Z$FHz(f7GuxU&n9B19j(GZW<4&I0qBiK3`*OqT9$F)sOAiaqwi(AQ&I({_W{ZRAm2C1t9!B zaS*QXYpw1KIbri049z6cAD{DdwwHC+b4k7_s3ZdqZzrt5l}G~NdtCAzoKXXreZp;q zDu%PEkxM8)Mvl#xrOP+p-KjW-iw6pEy^}56p*PqIXM#Z<`MM%NW8~T-tTRHcfy%O4 z!8cEvkF@zEC+=U5te#EbsLjw}ZR1T752kQ|sjk3wrK~$o9&!R7hVx(bPdsqKAd}p% zKE^^%IJLb6Owy*>ViM=OE>W_w;RxS0H5bE9sA}fXVa$QuO`iqm>y|;pp+Kr;}_2KlQ9C}Ux9pO4hPw{ZHeka}Vc=?|BJmhh-!bRUFVYcf51vNY$ zox6#H9It^V);l-@3@&Zj?R6!vjRG5F90ughpo!W}-k4LRy71#0b5r^}$FX`M?oT!g ze5&}7rUJB#F&mjoI)WZeE|rsdb_%LLEcdxp6f_gQP2zl2qW%1Ce(U!d$;y|VPI zR(Gmu4a6Tó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 literal 0 HcmV?d00001 diff --git a/docs/cci/umn/en-us_image_0197840757.png b/docs/cci/umn/en-us_image_0197840757.png new file mode 100644 index 0000000000000000000000000000000000000000..81ff7ed23d84e4c278be1cc2d2355632ff9bd68a GIT binary patch literal 7010 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 B&z1lH literal 0 HcmV?d00001 diff --git a/docs/cci/umn/en-us_topic_0000001955196756.html b/docs/cci/umn/en-us_topic_0000001955196756.html new file mode 100644 index 00000000..48d1165c --- /dev/null +++ b/docs/cci/umn/en-us_topic_0000001955196756.html @@ -0,0 +1,15 @@ + + +

Overview

+

What Is a Pod or Container Group?

Pods (or container groups) are the smallest deployable units of computing that you can create and manage. A pod or a container group is a group of one or more containers, with shared storage, a unique IP address, and a specification for how to run the containers.

+

Pods can be used in either of the following ways:

+
  • A pod runs a single container. This is the most common use case. You can consider a pod as a wrapper around a single container. Pods can be managed directly rather than containers.
  • A pod runs multiple containers that need to work together. In this scenario, a pod can encapsulate an application that is running in a main container and several sidecar containers. As shown in Figure 1, the main container serves as a web server that provides file services from a fixed directory, and the sidecar container periodically downloads files to the directory.
    Figure 1 Pod
    +
+
+
+
+ +
+ diff --git a/docs/cci/umn/en-us_topic_0000001971717269.html b/docs/cci/umn/en-us_topic_0000001971717269.html new file mode 100644 index 00000000..4789573d --- /dev/null +++ b/docs/cci/umn/en-us_topic_0000001971717269.html @@ -0,0 +1,15 @@ + + + +

Namespaces

+ +

+
+ + + diff --git a/docs/cci/umn/en-us_topic_0000001975803021.html b/docs/cci/umn/en-us_topic_0000001975803021.html new file mode 100644 index 00000000..6ead37da --- /dev/null +++ b/docs/cci/umn/en-us_topic_0000001975803021.html @@ -0,0 +1,14 @@ + + +

Container Group

+

+
+ + diff --git a/docs/cci/umn/public_sys-resources/caution_3.0-en-us.png b/docs/cci/umn/public_sys-resources/caution_3.0-en-us.png new file mode 100644 index 0000000000000000000000000000000000000000..60f60762138fe7d98fa081415cf26a4943897779 GIT binary patch literal 2752 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 literal 0 HcmV?d00001 diff --git a/docs/cci/umn/public_sys-resources/icon-arrowdn.gif b/docs/cci/umn/public_sys-resources/icon-arrowdn.gif new file mode 100644 index 0000000000000000000000000000000000000000..379428032932289326e52c2772bd90ba3d88b906 GIT binary patch literal 1887 zcmZ?wbhEHbCgqow z*eU^C3h_d20o>TUVm+{T^pf*)^(zt!^bPe4Kwg3=^!3HBG&dKny0|1L72#g21{a4^ z7NqJ2r55Lx7A2Jm>Ih`8X1|p zSh~8p7&*iAy5uL9=BDPA!1Sgd^t#~G3rY&P1wfl!Qj0RnQd8WD@^clyUbf1_?G{Iz z=0WwQ;C71>PQCg-$LND17Ac}(Lcr7mV#1RxkONQnsd>QEUIa|mjQ{`r{qy_R&mZ5v zef{$J)5j0*-@SeF`qj%9&!0Vg^7zri2lwyYy>t84%^TORUA=Po(!~qs&z(JU`qar2 z$B!L7a`@1}1N-;w-Lrew&K=vgZQZhY)5ZeMTG_VdAT{+S(zE> zX{jm6Nr?&Zaj`McQIQehVWA3>*p!%p5Wn0u7E$th{n6D>ft^YU5&dnB%c=(a~-RV>2EO25SIA CZ-yWM literal 0 HcmV?d00001 diff --git a/docs/cci/umn/public_sys-resources/icon-arrowrt.gif b/docs/cci/umn/public_sys-resources/icon-arrowrt.gif new file mode 100644 index 0000000000000000000000000000000000000000..6aaaa11c23e919c4798d7dcd2b1ae98dd35dd316 GIT binary patch literal 1890 zcmZ?wbhEHb7yetOgf{ zR2HP_2c;J0mlh?b0+lO+tSYc_E=o--$uA1Y&(DE{Vn9ZINq%ugeu08>u$h8JcxGNo zetEGbSiP^Wm1kaYNn&1ds;7&s63_&_%*+%k11Cod14Ab>6ALqQLqk^=3j-5FHzP|& zBUd9gQwvj9m|mCsATTyHM;rzL?XHK6w zdE)r7qel)OI(T6JzP)>P@7lRz`?jrHHgDRvVg0(bYgVsXxnlXUrArnsTDV~Tyt#8` z&zd=7`n0K2CQq6;p}()Ur@O1OqrI)QrMaoGp}wxRrn;)KqP(oMq`0WCAU`iRCp#-M zBRwrOB{?ZEAwDiPCORrIB0MZKBseHAz~9f;$J@)(!`;o*#o5Wx!QRf+#@fo#!raW% z#MsEtKwnQ+M_Wr%LtRZ(MOjHvL0(Q)Mp{ZzLR?H#L|8~rfS-?-hntI&gPo0)g_((w zfkE*n3y@@B&;b#k`jUY|nSq%>!ec`MLnAA%oR7zc2TpB#@>)|YCO&lN;uMU!b7Eqm H1A{dHTIz>f literal 0 HcmV?d00001 diff --git a/docs/cci/umn/public_sys-resources/icon-caution.gif b/docs/cci/umn/public_sys-resources/icon-caution.gif new file mode 100644 index 0000000000000000000000000000000000000000..079c79b263f4b48089f3b3256154c73e7699593f GIT binary patch literal 1086 zcmW+#YfRQ<6hA3LZMyP?V}KhnEtF{Q4vGxS52AozEVM85nq$#%tv8gRF!3GhgM?_) zd5Luv3SKrXFTGCpn$y>EMGZQ&sWI^~+e%qWysRPK%BSD+f4-fabAGq;|Cf|4nO{(o zMH%#n$oXf^sdM5SJ4e1UbEeM389O82RCB6M#VI=_KP%=$orn{5LVlIau{svV?3jS$ z$Q-F7am0>L02|Q2!ZN1G^Z2J`V#a3VX;G<~iYc3tSAnLeiI}hnc~O{UH5OwwCTPT} zks65+8-W$70S3`f30dfY7}$UY7M95y@-?2QvMPChphYF3!YbtLLIs*E%B)Oq4^fy^ z5+zoGJ>&tI*hU=i4-s$()c}KNsKh9AfEd_-1{V3`d>b_$i;xcz{y>Y0S(uP3>_P>a zLM((Fku(B;E{r2+xJ8u612VCVIG_oJ;Sj0;2GQ7rEa(6+umMf}M1C4=)Odu8AxQWG zEh;Aearj(=d;4Z^LLYN*6+asU?Nbl3^Q%D|{s@6Xj}(aZHwkoj-~bw*1FnSd;0aX! zUW<-TPD&b;6s;@zw7K~4mF9cDuK&BQ;b_N-Cj%R=CnEjde9%~1kk}vYY^@mTTNm%F z?mbrf*~d#iX;?ITDf(MHQdK;&p(ek&e9qe?*&A0E)mG(1s`J*pn^#ttId4vCXjV$j zj464u)2F9Q$V#0!dHk4(FDB#D&wP^f0*q1)G?4!%Xe>;ROD~Oee-}xfJUd+aa_0AK zFP$vgR2te>+%}b$hVw&Ni`yT>F5LNRM@_utk68Piwi5??BLBpCcb8mx|3c*1x!xZJ zKU!7(#h8s(^x)5*w=Z0K{=a9#qeoHU|0&%MiU0rr literal 0 HcmV?d00001 diff --git a/docs/cci/umn/public_sys-resources/icon-danger.gif b/docs/cci/umn/public_sys-resources/icon-danger.gif new file mode 100644 index 0000000000000000000000000000000000000000..079c79b263f4b48089f3b3256154c73e7699593f GIT binary patch literal 1086 zcmW+#YfRQ<6hA3LZMyP?V}KhnEtF{Q4vGxS52AozEVM85nq$#%tv8gRF!3GhgM?_) zd5Luv3SKrXFTGCpn$y>EMGZQ&sWI^~+e%qWysRPK%BSD+f4-fabAGq;|Cf|4nO{(o zMH%#n$oXf^sdM5SJ4e1UbEeM389O82RCB6M#VI=_KP%=$orn{5LVlIau{svV?3jS$ z$Q-F7am0>L02|Q2!ZN1G^Z2J`V#a3VX;G<~iYc3tSAnLeiI}hnc~O{UH5OwwCTPT} zks65+8-W$70S3`f30dfY7}$UY7M95y@-?2QvMPChphYF3!YbtLLIs*E%B)Oq4^fy^ z5+zoGJ>&tI*hU=i4-s$()c}KNsKh9AfEd_-1{V3`d>b_$i;xcz{y>Y0S(uP3>_P>a zLM((Fku(B;E{r2+xJ8u612VCVIG_oJ;Sj0;2GQ7rEa(6+umMf}M1C4=)Odu8AxQWG zEh;Aearj(=d;4Z^LLYN*6+asU?Nbl3^Q%D|{s@6Xj}(aZHwkoj-~bw*1FnSd;0aX! zUW<-TPD&b;6s;@zw7K~4mF9cDuK&BQ;b_N-Cj%R=CnEjde9%~1kk}vYY^@mTTNm%F z?mbrf*~d#iX;?ITDf(MHQdK;&p(ek&e9qe?*&A0E)mG(1s`J*pn^#ttId4vCXjV$j zj464u)2F9Q$V#0!dHk4(FDB#D&wP^f0*q1)G?4!%Xe>;ROD~Oee-}xfJUd+aa_0AK zFP$vgR2te>+%}b$hVw&Ni`yT>F5LNRM@_utk68Piwi5??BLBpCcb8mx|3c*1x!xZJ zKU!7(#h8s(^x)5*w=Z0K{=a9#qeoHU|0&%MiU0rr literal 0 HcmV?d00001 diff --git a/docs/cci/umn/public_sys-resources/icon-huawei.gif b/docs/cci/umn/public_sys-resources/icon-huawei.gif new file mode 100644 index 0000000000000000000000000000000000000000..a31d60f895af919d33855217ca02daf4093136d7 GIT binary patch literal 2767 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 GE&l)<3Z_>8 literal 0 HcmV?d00001 diff --git a/docs/cci/umn/public_sys-resources/icon-notice.gif b/docs/cci/umn/public_sys-resources/icon-notice.gif new file mode 100644 index 0000000000000000000000000000000000000000..409070650a49518feb1624c624d814c3bfa63d2e GIT binary patch literal 962 zcmb7D&r8&C5S<{wSd_qn6)U)w5LOaRh!N}_*49lD)S!dZp@M<3gPIX|@UR9-fz+X3 zAaT9)OY{xZtO-;RC85Vab;JEUNIMS5f^r$7-e%-XK`j{0+N$CsgpRd6B1wp z8dw-cH^rU^H4`&7qgabf)l^K`l!66{q9$U(CKRO5%W5pfY)s&YQ6n`HBR0ZTum%`N zgC%I8hQ+`JG_WvCAt-W$sIn@BKCDG1qQWW^a=`*c7G+i@s0S(ZDv1&+K_2`7O-#cM z=m!ZX1Z#kSG+3e)Jg^wpfCd(Yb5TZ)U=a!DwsG z)Z`|1ejMK4ap%CHj;%+>T6=D++5I=uBbQ$fZ48cf{hV1}9&Njl-I}i7e0#6Hdug@s zsr-57_=gLr&9Ros$k}}M>tJ77=hEJ}iPaZ%8|P+gUbS|Oj}5I{|5nZZc)C1$e*Rj` d`09hYXJ4M@PhCx)dHK8WZo1*|*q+^V@*ncduk8Q; literal 0 HcmV?d00001 diff --git a/docs/cci/umn/public_sys-resources/icon-tip.gif b/docs/cci/umn/public_sys-resources/icon-tip.gif new file mode 100644 index 0000000000000000000000000000000000000000..c47bae05c9fd17c02a851d96cfac67bf194498d8 GIT binary patch literal 879 zcmchWKWmj?48@OdDOZPr)a61!OE4yGD)salg#|^Ix$qIEF#uk)V>D{95e^!2r`i+9t# zTMu5YtUcd+@#gp0tDE;9ug>oLIzL$6dOx4-t#2PKExu1KulwoYeD?Os#mVO%AMWih HO|EMGZQ&sWI^~+e%qWysRPK%BSD+f4-fabAGq;|Cf|4nO{(o zMH%#n$oXf^sdM5SJ4e1UbEeM389O82RCB6M#VI=_KP%=$orn{5LVlIau{svV?3jS$ z$Q-F7am0>L02|Q2!ZN1G^Z2J`V#a3VX;G<~iYc3tSAnLeiI}hnc~O{UH5OwwCTPT} zks65+8-W$70S3`f30dfY7}$UY7M95y@-?2QvMPChphYF3!YbtLLIs*E%B)Oq4^fy^ z5+zoGJ>&tI*hU=i4-s$()c}KNsKh9AfEd_-1{V3`d>b_$i;xcz{y>Y0S(uP3>_P>a zLM((Fku(B;E{r2+xJ8u612VCVIG_oJ;Sj0;2GQ7rEa(6+umMf}M1C4=)Odu8AxQWG zEh;Aearj(=d;4Z^LLYN*6+asU?Nbl3^Q%D|{s@6Xj}(aZHwkoj-~bw*1FnSd;0aX! zUW<-TPD&b;6s;@zw7K~4mF9cDuK&BQ;b_N-Cj%R=CnEjde9%~1kk}vYY^@mTTNm%F z?mbrf*~d#iX;?ITDf(MHQdK;&p(ek&e9qe?*&A0E)mG(1s`J*pn^#ttId4vCXjV$j zj464u)2F9Q$V#0!dHk4(FDB#D&wP^f0*q1)G?4!%Xe>;ROD~Oee-}xfJUd+aa_0AK zFP$vgR2te>+%}b$hVw&Ni`yT>F5LNRM@_utk68Piwi5??BLBpCcb8mx|3c*1x!xZJ zKU!7(#h8s(^x)5*w=Z0K{=a9#qeoHU|0&%MiU0rr literal 0 HcmV?d00001 diff --git a/docs/cci/umn/public_sys-resources/note_3.0-en-us.png b/docs/cci/umn/public_sys-resources/note_3.0-en-us.png new file mode 100644 index 0000000000000000000000000000000000000000..57a0e1f53377b28fd80ceb393b035f8d9b8b392a GIT binary patch literal 1080 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