diff --git a/charts/onos.md b/charts/onos.md
index ad5f788..4b13e72 100644
--- a/charts/onos.md
+++ b/charts/onos.md
@@ -1,55 +1,50 @@
-# ONOS Helm chart
+# Deploy ONOS
 
-This chart can be used to deploy an ONOS container.
-Traditionally it is used to deploy three different ONOSes in the system,
-depending by what is required.
+The same chart can be used to deploy different flavors of ONOS, depending on the configuration applied (configurations available in the configs folder).
 
-## ONOS-Fabric
+* **onos-fabric**: a specific version of ONOS used to control the Trellis fabric
+* **onos-voltha**: a specific version of ONOS used to control VOLTHA
+* **onos-vtn**: a speciic version of ONOS used to control VTN
+* **no configuration applied**: if no configurations are applied, a generic ONOS instance will be installed
 
-`helm install -n onos-fabric -f configs/onos-fabric.yaml onos`
+## onos-fabric
 
-Ports exposed:
+```shell
+helm install -n onos-fabric -f configs/onos-fabric.yaml onos
+```
 
-- ovsdb: 31640
-- OpenFlow: 31653
-- SSH: 31101
-- UI: 31181
+**Nodeports exposed**
 
-## ONOS-VOLHTA
+* ovsdb: 31640
+* OpenFlow: 31653
+* SSH: 31101
+* REST/UI: 31181
+
+## onos-voltha
 
 > NOTE: This requires [VOLTHA](voltha.md) to be installed
 
-`helm install -n onos-voltha -f configs/onos-voltha.yaml onos`
-
-Ports exposed:
-
-- SSH: 30115
-- UI: 30120
-
-## ONOS-VTN
-
-`helm install -n onos-cord -f configs/onos-cord.yaml onos`
-
-## Overridable values
-
-This is a sample `values.yaml` that can be used to override values
-through the `-f` option:
-
-```yaml
-imagePullPolicy: Always
-onosImage: 'onosproject/onos:1.13.1'
-
-services:
-  openflowServiceType: NodePort
-  ovsdbServiceType: NodePort
-  sshServiceType: NodePort
-  uiServiceType: NodePort
-  ovsdb:
-    nodePort: 31640
-  openflow:
-    nodePort: 31653
-  ssh:
-    nodePort: 31101
-  ui:
-    nodePort: 31181
+```shell
+helm install -n onos-voltha -f configs/onos-voltha.yaml onos
 ```
+
+**Nodeports exposed**
+
+* SSH: 30115
+* REST/UI: 30120
+
+## onos-vtn
+
+```shell
+helm install -n onos-cord -f configs/onos-cord.yaml onos
+```
+
+The configuration doesn't expose any nodeport.
+
+## Generic ONOS
+
+```shell
+helm install -n onos onos
+```
+
+The configuration doesn't expose any nodeport.
diff --git a/mdl_relaxed.rb b/mdl_relaxed.rb
index 9448317..92e3fe8 100644
--- a/mdl_relaxed.rb
+++ b/mdl_relaxed.rb
@@ -46,3 +46,5 @@
 # Exclude rule: Fenced code blocks should be surrounded by blank lines
 exclude_rule 'MD031'
 
+# Exclude rule: Emphasis used instead of a header
+exclude_rule 'MD036'
diff --git a/prereqs/kubernetes.md b/prereqs/kubernetes.md
index d9d8666..05c680e 100644
--- a/prereqs/kubernetes.md
+++ b/prereqs/kubernetes.md
@@ -2,29 +2,42 @@
 
 A generic CORD installation can run on any version of Kubernetes (>=1.9) and Helm.
 
-Internet is full of different releases of Kubernetes, as of resources that can help to get you going.
-If on one side it may sound confusing, the good news is that you’re not alone!
+Internet is full of different releases of Kubernetes, as of resources that can help to get you going. If on one side it may sound confusing, the good news is that you’re not alone!
 
-Pointing you to a specific version of Kubernetes wouldn’t probably make much sense, since each Kubernetes version may be specific to different deployment needs.
-Anyway, we think it’s good to point you to some well known releases, that can be used for different types of deployments.
+Pointing you to a specific version of Kubernetes wouldn’t probably make much sense, since each Kubernetes version may be specific to different deployment needs. Anyway, we think it’s good to point you to some well known releases, that can be used for different types of deployments.
+
+**New to Kubernetes?** Tutorials are a good place to start. More at <https://kubernetes.io/docs/tutorials/>.
 
 Following paragraphs provide guidelines, pointers and automated scripts to let you quickly install both Kubernetes and Helm.
 
-Whatever version of Kubernetes you’ve installed, a client tool called “kubectl” is usually needed to interact with your Kubernetes installation. To install kubectl on your development machine, follow this guide: <https://kubernetes.io/docs/tasks/tools/install-kubectl/>.
+## Step by step installation
 
-Once Kubernetes is installed, you should have a KubeConfig configuration file containing all details of your deployment (address of the machine(s), credentials, ...). The file can be used to access your Kubernetes deployment from either Kubectl or Helm. Here is how:
+### Install Kubernetes
 
+First, choose what version of Kubernetes you'd like to run. In the following sections of the guide we offer pointers and scripts to get your favorite version of Kubernetes installed. Start from there. Then, come back here and continue over the next paragraphs, below.
+
+### Get your KUBECONFIG file
+
+Once Kubernetes is installed, you should have a KUBECONFIG configuration file containing all the details of your deployment (address of the machine(s), credentials, ...). The file can be used to access your Kubernetes deployment from any client able to communicate with the Kubernetes installation. To manage the pod, export a KUBECONFIG variable containing the path to the configuration file:
+
+```shell
 export KUBECONFIG=/path/to/your/kubeconfig/file
+```
 
-You can also permanently export this environment variable, so you don’t have to export it each time you open a new window in your terminal. More info on this topic can be found here: <https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/>.
+You can also permanently export this environment variable, so you don’t have to export it every time you open a new window in your terminal. More info on this topic at <https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/>.
 
-To test if the installation and the configuration steps were successful, type:
+### Install kubectl
+
+You've installed Kubernetes. Now it's time to install the CLI tools to interact with it. *kubectl* is the basic tool you need. It can be installed on any device able to reach the Kubernetes just installed (i.e. the development laptop, another server, the same machine where Kubernetes is installed). To install kubectl, follow this guide: <https://kubernetes.io/docs/tasks/tools/install-kubectl/>.
+
+To test the kubectl installation run:
 
 ```shell
 kubectl get pods
 ```
 
-Kubernetes should reply to your request, and don’t output any error.
+Kubernetes should reply to the request showing the pods already deployed. If you've just installed Kubernetes, likely you won't see any pod, yet. That's fine, as long as you don't see errors.
 
-More on Kubernetes and Kubectl commands can be found on the official Kubernetes website, <https://kubernetes.io/docs/tutorials/>.
+### Install helm
 
+CORD uses a tool called helm to deploy containers on Kubernetes. As such, helm needs to be installed before being able to deploy CORD containers. More info on helm and how to install it can be found [here](helm.md).
