diff --git a/persistent-volume-provisioning/cinder/cinder-storage-class.yaml b/persistent-volume-provisioning/cinder/cinder-storage-class.yaml new file mode 100644 index 00000000..3dc066cd --- /dev/null +++ b/persistent-volume-provisioning/cinder/cinder-storage-class.yaml @@ -0,0 +1,8 @@ +kind: StorageClass +apiVersion: storage.k8s.io/v1 +metadata: + name: gold +provisioner: kubernetes.io/cinder +parameters: + type: fast + availability: nova diff --git a/persistent-volume-provisioning/cinder/example-pod.yaml b/persistent-volume-provisioning/cinder/example-pod.yaml new file mode 100644 index 00000000..bc14b120 --- /dev/null +++ b/persistent-volume-provisioning/cinder/example-pod.yaml @@ -0,0 +1,23 @@ +apiVersion: v1 +kind: ReplicationController +metadata: + name: server +spec: + replicas: 1 + selector: + role: server + template: + metadata: + labels: + role: server + spec: + containers: + - name: server + image: nginx + volumeMounts: + - mountPath: /var/lib/www/html + name: cinderpvc + volumes: + - name: cinderpvc + persistentVolumeClaim: + claimName: claim1 diff --git a/volumes/cinder/README.md b/volumes/cinder/README.md new file mode 100644 index 00000000..bbb3c470 --- /dev/null +++ b/volumes/cinder/README.md @@ -0,0 +1,27 @@ +This is a simple web server pod which serves HTML from an Cinder volume. + +Create a volume in the same tenant and zone as your node. + +Add your volume information in the pod description file cinder-web.yaml then create the pod: + +```shell + $ kubectl create -f examples/volumes/cinder/cinder-web.yaml +``` + +Add some data to the volume if is empty: + +```sh + $ echo "Hello World" >& /var/lib/kubelet/plugins/kubernetes.io/cinder/mounts/{Volume ID}/index.html +``` + +You should now be able to query your web server: + +```sh + $ curl + $ Hello World +``` + + + +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/examples/volumes/cinder/README.md?pixel)]() + diff --git a/volumes/cinder/cinder-web.yaml b/volumes/cinder/cinder-web.yaml new file mode 100644 index 00000000..4692ac86 --- /dev/null +++ b/volumes/cinder/cinder-web.yaml @@ -0,0 +1,21 @@ +apiVersion: v1 +kind: Pod +metadata: + name: cinder-web +spec: + containers: + - name: web + image: nginx + ports: + - name: web + containerPort: 80 + protocol: tcp + volumeMounts: + - name: html-volume + mountPath: "/usr/share/nginx/html" + volumes: + - name: html-volume + cinder: + # Enter the volume ID below + volumeID: volume_ID + fsType: ext4