Merge "Update M-CORD installation document"
diff --git a/profiles/mcord/install.md b/profiles/mcord/install.md
index d97a874..bf842b4 100644
--- a/profiles/mcord/install.md
+++ b/profiles/mcord/install.md
@@ -1,15 +1,19 @@
 # M-CORD
 
+> **Note**: Currently the M-CORD is under maintenance.
+> Check the link below for more information:
+> [https://wiki.opencord.org/display/CORD/GPL+Issue+August+2018](https://wiki.opencord.org/display/CORD/GPL+Issue+August+2018)
+
 ## Quick Start
 
 A convenience script is provided that will install M-CORD on a single
 node, suitable for evaluation or testing.  Requirements:
 
 - An _Ubuntu 16.04.4 LTS_ server with at least 64GB of RAM and 32 virtual CPUs
-- Latest versions of released software installed on the server: `sudo apt update; sudo apt -y upgrade`
+- Latest versions of released software installed on the server: `sudo apt update`
 - User invoking the script has passwordless `sudo` capability
 - Open access to the Internet (not behind a proxy)
-- Google DNS servers (e.g., 8.8.8.8) are accessible
+- Public DNS servers (e.g., 8.8.8.8) are accessible
 
 ### Target server on CloudLab (optional)
 
@@ -18,7 +22,9 @@
 up for an account using your organization's email address and choose "Join
 Existing Project"; for "Project Name" enter `cord-testdrive`.
 
-> NOTE: CloudLab is supporting CORD as a courtesy. It is expected that you will not use CloudLab resources for purposes other than evaluating CORD. If, after a week or two, you wish to continue using CloudLab to experiment with or develop CORD, then you must apply for your own separate CloudLab project.
+> NOTE: CloudLab is supporting CORD as a courtesy.
+It is expected that you will not use CloudLab resources for purposes other than evaluating CORD.
+If, after a week or two, you wish to continue using CloudLab to experiment with or develop CORD, then you must apply for your own separate CloudLab project.
 
 Once your account is approved, start an experiment using the
 `OnePC-Ubuntu16.04-HWE` profile on the Wisconsin cluster. This will provide
@@ -28,8 +34,8 @@
 
 ### Convenience Script
 
-This script takes about an hour to complete.  If you run it, you can skip
-directly to [Validating the Installation](#validating-the-installation) below.
+This script takes about an hour to complete.  If you run it, you can jump
+directly to the [Validating the Installation](#validating-the-installation) section.
 
 ```bash
 mkdir ~/cord
@@ -40,126 +46,31 @@
 
 ## Prerequisites
 
-M-CORD requires OpenStack to run VNFs.  The OpenStack installation
-must be customized with the *onos_ml2* Neutron plugin.
-
-- To install Kubernetes, Helm, and a customized Openstack-Helm on a single node or a multi-node cluster, follow [this guide](../../prereqs/openstack-helm.md)
-- To configure the nodes so that VTN can provide virtual networking for OpenStack, follow [this guide](../../prereqs/vtn-setup.md)
+- Kubernetes: 1.10.0
+- Helm: v2.10.0
 
 ## CORD Components
 
-Bring up the M-CORD controller by installing the following charts in order:
+Bring up M-CORD installing the following helm charts in order:
 
+- [base-kubernetes](../../charts/helm.md)
 - [xos-core](../../charts/xos-core.md)
-- [base-openstack](../../charts/base-openstack.md)
-- [onos-vtn](../../charts/onos.md#onos-vtn)
+
+> **Note:** Install xos-core with `--set xos_projectName="M-CORD"` to get correct
+> name on XOS web UI.
+
 - [onos-fabric](../../charts/onos.md#onos-fabric)
 - [mcord](../../charts/mcord.md)
 
 ## Validating the Installation
 
-Before creating any VMs, check to see that VTN has initialized the nodes
-correctly.  On the OpenStack Helm master node run:
-
-```bash
-# password: rocks
-ssh -p 8101 onos@onos-cord-ssh.default.svc.cluster.local cordvtn-nodes
+Verify all components are installed by Helm:
 ```
-
-> NOTE: If the `cordvtn-nodes` command is not present, or if it does not show any nodes,
-> the most common cause is an issue with resolving the server's hostname.
-> See [this section on adding a hostname to kube-dns](../../prereqs/vtn-setup.md#dns-setup)
-> for a fix; the command should be present shortly after the hostname is added.
-
-You should see all nodes in `COMPLETE` state.
-
-> NOTE: If the node is in `INIT` state rather than `COMPLETE`, try running
-> `cordvtn-node-init <node>` and see if that resolves the issue.
-
-Next, check that the VNF images are loaded into OpenStack (they are quite large
-so this may take a while to complete):
-
-```bash
-export OS_CLOUD=openstack_helm
-openstack image list
+cord@mcord:~$ helm list
+NAME                    REVISION    UPDATED                     STATUS      CHART                     APP VERSION    NAMESPACE
+base-kubernetes         1           Mon Sep 10 19:27:45 2018    DEPLOYED    base-kubernetes-0.1.0     1.0            default
+mcord                   1           Mon Sep 10 19:32:21 2018    DEPLOYED    mcord-subscriber-2.0.0                   default
+onos-fabric             1           Mon Sep 10 19:47:05 2018    DEPLOYED    onos-mwc-0.1.0            1.0            default
+vepcservice             1           Mon Sep 10 19:30:29 2018    DEPLOYED    vepcservice-1.0.0                        default
+xos-core                1           Mon Sep 10 19:25:19 2018    DEPLOYED    xos-core-2.1.0-dev                       default
 ```
-
-You should see output like the following:
-
-```text
-+--------------------------------------+-----------------------------+--------+
-| ID                                   | Name                        | Status |
-+--------------------------------------+-----------------------------+--------+
-| b648f563-d9a2-4770-a6d8-b3044e623366 | Cirros 0.3.5 64-bit         | active |
-| 4287e01f-93b5-497f-9099-f526cb2044ac | image_hss_v0.1              | active |
-| e82e459c-27b4-417e-9f95-19ba3cc3fd9d | image_hssdb_v0.1            | active |
-| c62ab4ce-b95b-4e68-a708-65097c7bbe46 | image_internetemulator_v0.1 | active |
-| f2166c56-f772-4614-8bb5-cb848f9d23e3 | image_mme_v0.1              | active |
-| 472b7f9a-f2be-4c61-8085-8b0d37182d32 | image_sdncontroller_v0.1    | active |
-| 7784877f-e45c-4b1a-9eac-478efdb368cc | image_spgwc_v0.1            | active |
-| b9e2ec93-3177-458b-b3b2-c5c917f2fbcd | image_spgwu_v0.1            | active |
-+--------------------------------------+-----------------------------+--------+
-```
-
-To create a virtual EPC, on the master node run:
-
-```bash
-sudo apt install httpie
-http -a admin@opencord.org:letmein POST http://xos-gui.default.svc.cluster.local:4000/xosapi/v1/vepc/vepcserviceinstances blueprint=mcord_5 site_id=1
-```
-
-Check that the networks are created:
-
-```bash
-export OS_CLOUD=openstack_helm
-openstack network list
-```
-
-You should see output like the following:
-
-```text
-+--------------------------------------+--------------------+--------------------------------------+
-| ID                                   | Name               | Subnets                              |
-+--------------------------------------+--------------------+--------------------------------------+
-| 0bc8cb20-b8c7-474c-a14d-22cc4c49cde7 | s11_network        | da782aac-137a-45ae-86ee-09a06c9f3e56 |
-| 5491d2fe-dcab-4276-bc1a-9ab3c9ae5275 | management         | 4037798c-fd95-4c7b-baf2-320237b83cce |
-| 65f16a5c-f1aa-45d9-a73f-9d25fe366ec6 | s6a_network        | f5804cba-7956-40d8-a015-da566604d0db |
-| 6ce9c7e9-19b4-45fd-8e23-8c55ad84a7d7 | spgw_network       | 699829e1-4e67-46a7-af2d-c1fc72ba988e |
-| 87ffaaa3-e2a9-4546-80fa-487a256781a4 | flat_network_s1u   | 288d6a8c-8737-4e0e-9472-c869ba3e7c92 |
-| 8ec59660-4751-48de-b4a3-871f4ff34d81 | db_network         | 6f14b420-0952-4292-a9f2-cfc8b2d6938e |
-| d63d3490-b527-4a99-ad43-d69412b315b9 | sgi_network        | b445d554-1a47-4f3b-a46d-1e15a01731c0 |
-| dac99c3e-3374-4b02-93a8-994d025993eb | flat_network_s1mme | 32dd201c-8f7f-4e11-8c42-4f05734f716a |
-+--------------------------------------+--------------------+--------------------------------------+
-```
-
-Check that the VMs are created (it will take a few minutes for them to come up):
-
-```bash
-export OS_CLOUD=openstack_helm
-openstack server list --all-projects
-```
-
-You should see output like the following:
-
-```text
-+--------------------------------------+-----------------+--------+----------------------------------------------------------------------------------------------------+------------------+-----------+
-| ID                                   | Name            | Status | Networks                                                                                           | Image            | Flavor    |
-+--------------------------------------+-----------------+--------+----------------------------------------------------------------------------------------------------+------------------+-----------+
-| 7e197142-afb1-459d-b421-cad91306d19f | mysite_vmme-2   | ACTIVE | s6a_network=120.0.0.9; flat_network_s1mme=118.0.0.5; management=172.27.0.15; s11_network=112.0.0.2 | image_mme_v0.1   | m1.large  |
-| 9fe385f5-a064-40e0-94d3-17ea87b955fc | mysite_vspgwu-1 | ACTIVE | management=172.27.0.5; sgi_network=115.0.0.3; spgw_network=117.0.0.3; flat_network_s1u=119.0.0.2   | image_spgwu_v0.1 | m1.xlarge |
-| aa6805fe-3d72-4f1e-a2eb-5546d7916073 | mysite_hssdb-5  | ACTIVE | management=172.27.0.13; db_network=121.0.0.12                                                      | image_hssdb_v0.1 | m1.large  |
-| e53138ed-2893-4073-9c9a-6eb4aa1892f1 | mysite_vhss-4   | ACTIVE | s6a_network=120.0.0.2; management=172.27.0.4; db_network=121.0.0.5                                 | image_hss_v0.1   | m1.large  |
-| 4a5960b5-b5e4-4777-8fe4-f257c244f198 | mysite_vspgwc-3 | ACTIVE | management=172.27.0.7; spgw_network=117.0.0.8; s11_network=112.0.0.4                               | image_spgwc_v0.1 | m1.large  |
-+--------------------------------------+-----------------+--------+----------------------------------------------------------------------------------------------------+------------------+-----------+
-```
-
-Log in to the XOS GUI and verify that the service synchronizers have run.  The
-GUI is available at URL `http:<master-node>:30001` with username
-`admin@opencord.org` and password `letmein`.  Verify that the status of all
-ServiceInstance objects is `OK`.
-
-> NOTE: If you see a status message of `SSH Error: data could not be sent to
-> remote host`, the most common cause is the inability of the synchronizers to
-> resolve the server's hostname.  See [this section on adding a hostname to
-> kube-dns](../../prereqs/vtn-setup.md#dns-setup) for a fix; the issue should
-> resolve itself after the hostname is added.