[CORD-1806] Document XOS internals

Change-Id: I8540c1063b543078be2d5f5430ca3eaa048a423a
diff --git a/.gitignore b/.gitignore
index 8c5ce73..2b7bf1a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -34,3 +34,11 @@
 venv-xos/
 _book/
 .noseids
+
+lib/xos-config/cover/
+lib/xos-config/.coverage
+lib/xos-config/coverage.xml
+
+lib/xos-genx/cover/
+lib/xos-genx/.coverage
+lib/xos-genx/coverage.xml
\ No newline at end of file
diff --git a/docs/static/xos_containers.png b/docs/static/xos_containers.png
new file mode 100644
index 0000000..8d86be0
--- /dev/null
+++ b/docs/static/xos_containers.png
Binary files differ
diff --git a/docs/xos_internals.md b/docs/xos_internals.md
new file mode 100644
index 0000000..6c99e4f
--- /dev/null
+++ b/docs/xos_internals.md
@@ -0,0 +1,30 @@
+# XOS Internal
+
+XOS, often referred as the CORD orchestrator, is the unique source of truth in a CORD installation. 
+Here is an overview of its structure.
+
+> Please note that this page is a work in progress, and help/contribution is really appreciated.
+
+# Containers
+
+XOS is made up of a set of Docker containers that cooperate to provide the platform functionalities, 
+from data-model to northbound APIs to synchronizers.
+
+Here is an inventory of those containers:
+
+| Name | Description | Ports |
+| ---- | ----------- | ----- |
+| xos-core | The core of the platform, contains the model definition and the xProto toolchain | 50051, 500515 |
+| xos-db | The Postgres instance that persists the data-model | 5432 |
+| xos-redis | A Redis instance, used as pub/sub channel for internal notifications | 5432 |
+| xos-tosca | Northbound TOSCA interface, accessible via REST at `/xos-tosca`| 9102|
+| xos-gui | Northbound GUI interface, accessible at `/xos`| 4000|
+| xos-ws | Listens to `redis` events and propagates them over web-sockets for notifications| 3000|
+| xos-chameleon | Northbound REST interface, accessible at `/xosapi/v1/..` (`swagger` is published at `/apidocs/`| 3000|
+
+Additionally some infrastructure helpers such as `consul` and `registrator` are  deployed to facilitate service discovery.
+
+All the communication between containers happen over `gRPC` except for `xos-gui` 
+where it is a combination of REST and web-socket.
+
+![xos-containers](./static/xos_containers.png)
\ No newline at end of file