No edit summary |
No edit summary |
||
Line 120: | Line 120: | ||
3. What are the expected results of those actions? | 3. What are the expected results of those actions? | ||
--> | --> | ||
0. Access to an appropriate storage cluster (gluster or ceph) | * 0. Access to an appropriate storage cluster (gluster or ceph) | ||
1. Configure kubernetes on an Atomic host or cluster of hosts. | * 1. Configure kubernetes on an Atomic host or cluster of hosts. | ||
2. Mount storage on hosts with native client | * 2. Mount storage on hosts with native client | ||
3. Create a physical volume in the mount point in kubernetes | * 3. Create a physical volume in the mount point in kubernetes | ||
4. Create a volume claim in kubernetes | * 4. Create a volume claim in kubernetes | ||
5. Use volume claim in pod definition | * 5. Use volume claim in pod definition | ||
<!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> |
Revision as of 21:54, 6 January 2016
Atomic Storage Clients
Summary
Kubernetes provides a mechanism for providing storage to containers called Persistent Volumes. Persistent Volumes support several underlying storage protocols, but clients are needed to support each type. Native GlusterFS and Ceph clients will be added to the Atomic host base to support new Persistent Volume types.
Owner
- Name: mmicene
- Email: nzwulfin@gmail.com
- Release notes owner:
Current status
- Targeted release: Fedora 24
- Last updated: 2016-01-06
- Tracker bug: <will be assigned by the Wrangler>
Detailed Description
By design, Docker container internal storage is ephemeral in nature and data is lost when a container is stopped. Kubernetes uses Persistent Volumes to provide a means for containers to keep data for extended periods of time and between restarts.
A Persistent Volume (PV) in Kubernetes represents a real piece of underlying storage capacity in the infrastructure. Persistent volumes are intended for "network volumes" like NFS shares, GlusterFS volumes, or Ceph devices.
In order to access the underlying storage, the appropriate drivers must be available to Kubernetes on the Atomic host. We will add the appropriate packages to support the following Persistent Volume types:
- GlusterFS
- RBD (Ceph Block Device)
Both projects currently have packages available and accepted in Fedora for general use. No new packaging should be required.
Benefit to Fedora
Kubernetes Persistent Volumes support is currently limited to NFS and iSCSI *FIXME do we currently support iSCSI?*. Adding these two open source software defined storage clients will expand the capabilities of the Atomic platform to more use cases.
Scope
- Proposal owners:
- Add GlusterFS client Fedora packages to Atomic package list
- Add Ceph client Fedora packages to Atomic package list
- Other developers: N/A (not a System Wide Change)
- Release engineering: N/A (not a System Wide Change)
- List of deliverables: N/A (not a System Wide Change)
- Policies and guidelines: N/A (not a System Wide Change)
- Trademark approval: N/A (not needed for this Change)
Upgrade/compatibility impact
Additional functionality will have no impact, this is not a N/A (not a System Wide Change)
How To Test
- 0. Access to an appropriate storage cluster (gluster or ceph)
- 1. Configure kubernetes on an Atomic host or cluster of hosts.
- 2. Mount storage on hosts with native client
- 3. Create a physical volume in the mount point in kubernetes
- 4. Create a volume claim in kubernetes
- 5. Use volume claim in pod definition
N/A (not a System Wide Change)
User Experience
N/A (not a System Wide Change)
Dependencies
Native client packages are owned by someone else, but are currently maintained for F23 and not slated for removal in F24. N/A (not a System Wide Change)
Contingency Plan
- Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
- Contingency deadline: N/A (not a System Wide Change)
- Blocks release? N/A (not a System Wide Change), Yes/No
- Blocks product? product
Documentation
N/A (not a System Wide Change)