mirror of https://github.com/k3s-io/k3s
69 lines
2.5 KiB
Markdown
69 lines
2.5 KiB
Markdown
![]() |
<!-- BEGIN MUNGE: UNVERSIONED_WARNING -->
|
||
|
|
||
|
<!-- BEGIN STRIP_FOR_RELEASE -->
|
||
|
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
|
||
|
<h2>PLEASE NOTE: This document applies to the HEAD of the source tree</h2>
|
||
|
|
||
|
If you are using a released version of Kubernetes, you should
|
||
|
refer to the docs that go with that version.
|
||
|
|
||
|
<strong>
|
||
|
The latest 1.0.x release of this document can be found
|
||
|
[here](http://releases.k8s.io/release-1.0/examples/cephfs/README.md).
|
||
|
|
||
|
Documentation for other releases can be found at
|
||
|
[releases.k8s.io](http://releases.k8s.io).
|
||
|
</strong>
|
||
|
--
|
||
|
|
||
|
<!-- END STRIP_FOR_RELEASE -->
|
||
|
|
||
|
<!-- END MUNGE: UNVERSIONED_WARNING -->
|
||
|
|
||
|
# How to Use it?
|
||
|
|
||
|
Install Ceph on the Kubernetes host. For example, on Fedora 21
|
||
|
|
||
|
# yum -y install ceph
|
||
|
|
||
|
If you don't have a Ceph cluster, you can set up a [containerized Ceph cluster](https://github.com/rootfs/ceph_docker)
|
||
|
|
||
|
Then get the keyring from the Ceph cluster and copy it to */etc/ceph/keyring*.
|
||
|
|
||
|
Once you have installed Ceph and new Kubernetes, you can create a pod based on my examples [cephfs.json](cephfs.json) and [cephfs-with-secret.json](cephfs-with-secret.json). In the pod JSON, you need to provide the following information.
|
||
|
|
||
|
- *monitors*: Array of Ceph monitors.
|
||
|
- *user*: The RADOS user name. If not provided, default *admin* is used.
|
||
|
- *secretFile*: The path to the keyring file. If not provided, default */etc/ceph/user.secret* is used.
|
||
|
- *secretRef*: Reference to Ceph authentication secrets. If provided, *secret* overrides *secretFile*.
|
||
|
- *readOnly*: Whether the filesystem is used as readOnly.
|
||
|
|
||
|
|
||
|
Here are the commands:
|
||
|
|
||
|
```console
|
||
|
# create a secret if you want to use Ceph secret instead of secret file
|
||
|
# cluster/kubectl.sh create -f examples/cephfs/secret/ceph-secret.yaml
|
||
|
|
||
|
# cluster/kubectl.sh create -f examples/cephfs/v1beta3/cephfs.json
|
||
|
# cluster/kubectl.sh get pods
|
||
|
```
|
||
|
|
||
|
If you ssh to that machine, you can run `docker ps` to see the actual pod and `docker inspect` to see the volumes used by the container.
|
||
|
|
||
|
|
||
|
<!-- BEGIN MUNGE: GENERATED_ANALYTICS -->
|
||
|
[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/cephfs/README.md?pixel)]()
|
||
|
<!-- END MUNGE: GENERATED_ANALYTICS -->
|