Reorganization pass on Aether Docs
Change-Id: I0653109d6fe8d340278580ff5c7758ca264b512e
diff --git a/edge_deployment/runtime_deployment.rst b/edge_deployment/runtime_deployment.rst
new file mode 100644
index 0000000..c97f55d
--- /dev/null
+++ b/edge_deployment/runtime_deployment.rst
@@ -0,0 +1,156 @@
+..
+ SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+ SPDX-License-Identifier: Apache-2.0
+
+Aether Runtime Deployment
+=========================
+
+This section describes how to install Aether edge runtime and Aether managed
+applications.
+
+We will be using GitOps based Aether CD pipeline for this, so we just need to
+create a patch to **aether-pod-configs** repository.
+
+Download aether-pod-configs repository
+--------------------------------------
+
+Download the ``aether-pod-configs`` repository if you don't have it already in
+your development machine.
+
+.. code-block:: shell
+
+ $ cd $WORKDIR
+ $ git clone "ssh://[username]@gerrit.opencord.org:29418/aether-pod-configs"
+
+Update global resource maps
+---------------------------
+
+.. attention::
+
+ Skip this section if you have already done the same step in the
+ :ref:`Update Global Resources Map for VPN <update_global_resource>` section.
+
+Add a new ACE information at the end of the following global resource maps.
+
+* user_map.tfvars
+* cluster_map.tfvars
+
+As a note, you can find several other global resource maps under the
+`production` directory. Resource definitions that need to be shared among
+clusters or are better managed in a single file to avoid configuration
+conflicts are maintained in this way.
+
+.. code-block:: diff
+
+ $ cd $WORKDIR/aether-pod-configs/production
+ $ vi user_map.tfvars
+
+ # Add the new cluster admin user at the end of the map
+ $ git diff user_map.tfvars
+ --- a/production/user_map.tfvars
+ +++ b/production/user_map.tfvars
+ @@ user_map = {
+ username = "menlo"
+ password = "changeme"
+ global_roles = ["user-base", "catalogs-use"]
+ + },
+ + test_admin = {
+ + username = "test"
+ + password = "changeme"
+ + global_roles = ["user-base", "catalogs-use"]
+ }
+ }
+
+.. code-block:: diff
+
+ $ cd $WORKDIR/aether-pod-configs/production
+ $ vi cluster_map.tfvars
+
+ # Add the new K8S cluster information at the end of the map
+ $ git diff cluster_map.tfvars
+ --- a/production/cluster_map.tfvars
+ +++ b/production/cluster_map.tfvars
+ @@ cluster_map = {
+ kube_dns_cluster_ip = "10.53.128.10"
+ cluster_domain = "prd.menlo.aetherproject.net"
+ calico_ip_detect_method = "can-reach=www.google.com"
+ + },
+ + ace-test = {
+ + cluster_name = "ace-test"
+ + management_subnets = ["10.91.0.0/24"]
+ + k8s_version = "v1.18.8-rancher1-1"
+ + k8s_pod_range = "10.66.0.0/17"
+ + k8s_cluster_ip_range = "10.66.128.0/17"
+ + kube_dns_cluster_ip = "10.66.128.10"
+ + cluster_domain = "prd.test.aetherproject.net"
+ + calico_ip_detect_method = "can-reach=www.google.com"
+ }
+ }
+ }
+
+You'll have to get this change merged before proceeding.
+
+.. code-block:: shell
+
+ $ git status
+ On branch tools
+ Changes not staged for commit:
+
+ modified: cluster_map.tfvars
+ modified: user_map.tfvars
+
+ $ git add .
+ $ git commit -m "Add test ACE"
+ $ git review
+
+Create runtime configurations
+-----------------------------
+
+In this step, we will add several Terraform configurations and overriding
+values for the managed applications.
+
+Run the following commands to auto-generate necessary files under the target
+ACE directory.
+
+.. code-block:: shell
+
+ $ cd $WORKDIR/aether-pod-configs/tools
+ $ cp ace_env /tmp/ace_env
+ $ vi /tmp/ace_env
+ # Set environment variables
+
+ $ source /tmp/ace_env
+ $ make runtime
+ Created ../production/ace-test
+ Created ../production/ace-test/main.tf
+ Created ../production/ace-test/variables.tf
+ Created ../production/ace-test/gcp_fw.tf
+ Created ../production/ace-test/cluster.tf
+ Created ../production/ace-test/alerts.tf
+ Created ../production/ace-test/backend.tf
+ Created ../production/ace-test/cluster_val.tfvars
+ Created ../production/ace-test/app_values
+ Created ../production/ace-test/app_values/ace-coredns.yml
+ Created ../production/ace-test/app_values/omec-upf-pfcp-agent.yml
+
+Create a review request
+-----------------------
+
+.. code-block:: shell
+
+ $ cd $WORKDIR/aether-pod-configs
+ $ git status
+
+ Untracked files:
+ (use "git add <file>..." to include in what will be committed)
+
+ production/ace-test/alerts.tf
+ production/ace-test/app_values/
+ production/ace-test/cluster.tf
+
+ $ git add .
+ $ git commit -m "Add test ACE runtime configs"
+ $ git review
+
+Once the review request is accepted and merged,
+CD pipeline will start to deploy K8S and Aether managed applications on it.