Readme Update
Following sections has been addedd: * Features * Rolling Updates of Kubernetes application * Interacting with Kubernetes Cluster deployed by Murano Co-Authored-By: Nikolay Mahotkin <nmakhotkin@mirantis.com> Change-Id: I7d7572d6c53c9f6f0165ff55fa4d0ed5abdedef9
This commit is contained in:
parent
31e2504251
commit
66ddf3c4e0
@ -1,16 +1,16 @@
|
||||
Google Kubernetes for Murano
|
||||
============================
|
||||
Murano deployed Kubernetes Cluster application
|
||||
==============================================
|
||||
|
||||
Packages in this folder are required to deploy both Google Kubernetes and
|
||||
applications on top of it.
|
||||
|
||||
Contents of each folder need to be zipped and uploaded to Murano Catalog.
|
||||
|
||||
You will also need to build a proper Ubuntu-based image for Kubernetes.
|
||||
You will also need to build a proper image for Kubernetes.
|
||||
This can be done using `diskimage-builder <https://git.openstack.org/cgit/openstack/diskimage-builder>`_
|
||||
and `DIB elements
|
||||
<https://git.openstack.org/cgit/openstack/murano/tree/contrib/elements/kubernetes>`_.
|
||||
The image has to be named *ubuntu14.04-x64-kubernetes.qcow2*
|
||||
The image has to be named *debian8-x64-kubernetes.qcow2*
|
||||
|
||||
|
||||
Overview of Kubernetes
|
||||
@ -32,6 +32,106 @@ count is a property of KubernetesPod.
|
||||
For a more in-depth review of Kubernetes please refer to official
|
||||
`documentation <http://kubernetes.io/v1.1/docs/user-guide/README.html>`_.
|
||||
|
||||
Features
|
||||
========
|
||||
|
||||
Murano deployed Kubernetes Cluster supports following features:
|
||||
|
||||
* Networking_: Calico
|
||||
* `Container Runtime`_: Docker
|
||||
* `Rolling Updates`_ of Kubernetes application
|
||||
* Publishing services: ClusterIP Type
|
||||
|
||||
.. _Networking:
|
||||
|
||||
Networking
|
||||
----------
|
||||
|
||||
Kubernetes Cluster deployed by Murano supports Calico networking by default.
|
||||
Support for Flannel is disabled by default, but can be enabled as an option.
|
||||
|
||||
|
||||
.. _Container runtime:
|
||||
|
||||
Container runtime
|
||||
-----------------
|
||||
|
||||
A container runtime responsible for pulling container images from a registry,
|
||||
unpacking the container and running the application. Kubernetes by default
|
||||
supports Docker runtime. Recently in Kubernetes version 1.3 support for rkt
|
||||
runtime has been added. More runtimes planned to be added in the future.
|
||||
|
||||
Kubernetes Cluster deployed by Murano currently supports only Docker runtime.
|
||||
Though we planning to add rkt runtime in close future.
|
||||
|
||||
|
||||
.. _Rolling Updates:
|
||||
|
||||
Rolling Updates of Kubernetes application
|
||||
-----------------------------------------
|
||||
|
||||
Kubernetes Cluster deployed by Murano supports rolling updates with the use of
|
||||
“Deployments” and “Replication Controllers (RC)” abstractions. Rolling updates
|
||||
using Deployments is a recommended way to perform updates.
|
||||
Rolling update via Deployments provides following benefits over RC:
|
||||
|
||||
* Declarative way to control how service updates are performed
|
||||
* Rollback to an earlier Deployment version
|
||||
* Pause and resume a Deployment.
|
||||
|
||||
To use Rolling updates via Deployments refer to `Kubernetes documentation <http://kubernetes.io/docs/user-guide/deployments/#updating-a-deployment>`_.
|
||||
|
||||
**NOTE:** Currently all applications deployed from Apps Catalog has been created as
|
||||
Replication Controllers (RC). It means that Rolling updates via Deployments
|
||||
are not available for those applications.
|
||||
|
||||
In case application running as Replication Controllers (RC) and requires update,
|
||||
please refer to Kubernetes documentation `here <http://kubernetes.io/docs/user-guide/rolling-updates>`_.
|
||||
|
||||
|
||||
Interacting with Kubernetes Cluster deployed by Murano
|
||||
======================================================
|
||||
|
||||
There are several ways to create, manage applications on Kubernetes cluster:
|
||||
|
||||
Using Murano->Apps Catalog-> Environments view in Horizon:
|
||||
----------------------------------------------------------
|
||||
Users can perform following actions:
|
||||
|
||||
* Deploy/Destroy Kubernetes Cluster
|
||||
* Perform Kubernetes Cluster related actions such as scale Nodes and Gateways.
|
||||
* Perform Kubernetes Pod related actions such as scale, recreate pods or restart Containers.
|
||||
* Deploy selected Application from Apps Catalog via Murano Dashboard.
|
||||
* Deploy any docker image from Docker Hub using Docker Container apps from Apps Catalog.
|
||||
|
||||
Using kubectl CLI:
|
||||
------------------
|
||||
|
||||
Deploy and manage applications using Kubernetes command-line tool - ``kubectl``
|
||||
from you laptop or any local environment:
|
||||
|
||||
* * `Download and install <http://kubernetes.io/docs/getting-started-guides/minikube/#install-kubectl>`_ the ``kubectl`` executable based on OS of the choice.
|
||||
* Configure kubectl context on local env:
|
||||
|
||||
* ``kubectl config set-cluster kubernetes --server=http://<kube1-floating_IP>:8080``
|
||||
* ``kubectl config set-context kubelet-context --cluster=kubernetes --user=""``
|
||||
* ``kubectl config use-context kubelet-context``
|
||||
|
||||
* Verify kubectl Configuration and Connection:
|
||||
|
||||
* ``kubectl config view``
|
||||
* ``kubectl get nodes``
|
||||
|
||||
The resulting kubeconfig file will be stored in ~/.kube/config. Can be sourced at any time after.
|
||||
|
||||
Additionally, it is possible to access ``kubectl cli`` from Master Node (kube-1),
|
||||
where ```kubectl cli``` is installed and configured by default.
|
||||
|
||||
**NOTE:** In case application has been deployed via kubectl it will be exposed
|
||||
automatically outside based on the port information provided in service yaml file.
|
||||
However, it will be required to manually add required port to the OpenStack Security
|
||||
Groups created for this Cluster in order to be able reach application from outside.
|
||||
|
||||
|
||||
How murano installs Kubernetes
|
||||
------------------------------
|
||||
|
Loading…
Reference in New Issue
Block a user