Restructure the Ubuntu Getting Started Section.

- This supercedes PR #1770
 - This breaks up the section from one huge installation page into:
   - A new index page.
   - New support grid with commercial and community support options.
   - Move to lifecycle-based pages based on operational tasks.
     - Add support for local deployments via LXD.
       - Added screenshots to images/docs/ubuntu
     - Add backup page.
     - Add decommissioning page.
     - Add a glossary of terms page.
     - Rewritten installation page.
     - Add logging page.
     - Add monitoring page.
     - Add networking page, flannel only for now, calico in progress.
     - Add a scaling page.
     - Add a security page.
     - Add a storage page.
     - Add a troubleshooting page.
     - Add an upgrade page.
     - Add a cluster validation page.
     - Add new ubuntu content to the index page.
       - Add Ubuntu to _data TOC.
     - Add warning about choosing ipv6 with LXD, thanks Ed Baluf.
     - Template-ize all the pages per jaredb's review.
This commit is contained in:
Jorge O. Castro
2016-11-30 16:59:07 -05:00
parent 586656c027
commit ec5d9b0ec6
25 changed files with 1293 additions and 100 deletions
@@ -0,0 +1,91 @@
---
Title: Storage
---
{% capture overview %}
This page explains how to install and configure persistent storage on a cluster.
{% endcapture %}
{% capture prerequisites %}
This page assumes you have a working Juju deployed cluster.
{% endcapture %}
{% capture steps %}
## Ceph Persistent Volumes
The Canonical Distribution of Kubernetes allows you to connect with durable
storage devices such as [Ceph](http://ceph.com). When paired with the
[Juju Storage](https://jujucharms.com/docs/2.0/charms-storage) feature you
can add durable storage easily and across clouds.
Deploy a minimum of three ceph-mon and three ceph-osd units.
```
juju deploy cs:ceph-mon -n 3
juju deploy cs:ceph-osd -n 3
```
Relate the units together:
```
juju add-relation ceph-mon ceph-osd
```
List the storage pools available to Juju for your cloud:
juju storage-pools
Output:
```
Name Provider Attrs
ebs ebs
ebs-ssd ebs volume-type=ssd
loop loop
rootfs rootfs
tmpfs tmpfs
```
> **Note**: This listing is for the Amazon Web Services public cloud.
> Different clouds may have different pool names.
Add a storage pool to the ceph-osd charm by NAME,SIZE,COUNT:
```
juju add-storage ceph-osd/0 osd-devices=ebs,10G,1
juju add-storage ceph-osd/1 osd-devices=ebs,10G,1
juju add-storage ceph-osd/2 osd-devices=ebs,10G,1
```
Next relate the storage cluster with the Kubernetes cluster:
```
juju add-relation kubernetes-master ceph-mon
```
We are now ready to enlist
[Persistent Volumes](http://kubernetes.io/docs/user-guide/persistent-volumes/)
in Kubernetes which our workloads can consume via Persistent Volume (PV) claims.
```
juju run-action kubernetes-master/0 create-rbd-pv name=test size=50
```
This example created a "test" Radios Block Device (rbd) in the size of 50 MB.
Use watch on your Kubernetes cluster like the following, you should see the PV
become enlisted and be marked as available:
watch kubectl get pv
Output:
```
NAME CAPACITY ACCESSMODES STATUS CLAIM REASON AGE
test 50M RWO Available 10s
```
To consume these Persistent Volumes, your pods will need an associated
Persistant Volume Claim with them, and is outside the scope of this README. See the
[Persistant Volumes](http://kubernetes.io/docs/user-guide/persistent-volumes/)
documentation for more information.
{% endcapture %}
{% include templates/task.md %}