Skip to content

Commit e04082c

Browse files
author
Bob Furu
committed
OSDOCS-963 - CSI AWS EBS Operator
1 parent e980f0e commit e04082c

File tree

6 files changed

+151
-1
lines changed

6 files changed

+151
-1
lines changed

_topic_map.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -620,6 +620,8 @@ Topics:
620620
File: persistent-storage-csi-cloning
621621
- Name: OpenStack Manila CSI Driver Operator
622622
File: persistent-storage-csi-manila
623+
- Name: AWS Elastic Block Store CSI Driver Operator
624+
File: persistent-storage-csi-ebs
623625
- Name: Expanding persistent volumes
624626
File: expanding-persistent-volumes
625627
Distros: openshift-enterprise,openshift-webscale,openshift-origin,openshift-dedicated
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * storage/container_storage_interface/persistent-storage-csi-ebs.adoc
4+
5+
[id="persistent-storage-csi-ebs-operator-install-driver_{context}"]
6+
= Installing the AWS Elastic Block Store CSI driver
7+
8+
The AWS Elastic Block Store (EBS) Container Storage Interface (CSI) driver is a custom resource (CR) that enables you to create and mount AWS EBS persistent volumes.
9+
10+
The driver is not installed in {product-title} by default, and must be installed after the AWS EBS CSI Driver Operator has been installed.
11+
12+
.Prerequisites
13+
14+
* The AWS EBS CSI Driver Operator has been installed.
15+
* You have access to the {product-title} web console.
16+
17+
.Procedure
18+
19+
To install the AWS EBS CSI driver from the web console, complete the following steps:
20+
21+
. Log in to the {product-title} web console.
22+
23+
. Navigate to *Operators* -> *Installed Operators*.
24+
25+
. Locate the *AWS EBS CSI Driver Operator* from the list and click on the Operator link.
26+
27+
. Create the driver:
28+
.. From the *Details* tab, click *Create Instance*.
29+
30+
.. Optional: Select *YAML view* to make modifications, such as adding notations, to the driver object template.
31+
32+
.. Click *Create* to finalize.
33+
+
34+
[IMPORTANT]
35+
====
36+
Renaming the cluster and specifying a certain namespace are not supported functions.
37+
====
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * storage/container_storage_interface/persistent-storage-csi-ebs.adoc
4+
5+
[id="persistent-storage-csi-ebs-operator-install_{context}"]
6+
= Installing the AWS Elastic Block Store CSI Driver Operator
7+
8+
The AWS Elastic Block Store (EBS) Container Storage Interface (CSI) Driver Operator enables the replacement of the existing AWS EBS in-tree storage plug-in.
9+
10+
[IMPORTANT]
11+
====
12+
AWS EBS CSI Driver Operator is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production.
13+
====
14+
15+
Installing the AWS EBS CSI Driver Operator provides the CSI driver that allows you to use CSI volumes with the `PersistentVolumeClaims`, `PersistentVolumes`, and `StorageClasses` API objects in {product-title}. It also deploys the StorageClass that you can use to create persistent volume claims (PVCs).
16+
17+
The AWS EBS CSI Driver Operator is not installed in {product-title} by default. Use the following procedure to install and configure this Operator to enable the AWS EBS CSI driver in your cluster.
18+
19+
.Prerequisites
20+
* Access to the {product-title} web console.
21+
22+
.Procedure
23+
To install the AWS EBS CSI Driver Operator from the web console:
24+
25+
. Log in to the web console.
26+
27+
. Navigate to *Operators* -> *OperatorHub*.
28+
29+
. To locate the AWS EBS CSI Driver Operator, type *AWS EBS CSI* into the filter box.
30+
31+
. Click *Install*.
32+
33+
. On the *Install Operator* page, be sure that *All namespaces on the cluster (default)* is selected. Select *openshift-aws-ebs-csi-driver-operator* from the *Installed Namespace* drop-down menu.
34+
35+
. Adjust the values for *Update Channel* and *Approval Strategy* to the values that you want.
36+
37+
. Click *Install*.
38+
39+
Once finished, the AWS EBS CSI Driver Operator is listed in the *Installed Operators* section of the web console.
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * storage/container_storage_interface/persistent-storage-csi-ebs.adoc
4+
5+
[id="persistent-storage-csi-ebs-operator-uninstall_{context}"]
6+
= Uninstalling the AWS Elastic Block Store CSI Driver Operator
7+
8+
Before you uninstall the AWS EBS CSI Driver Operator, you must delete all persistent volume claims (PVCs) that are in use by the Operator.
9+
10+
.Prerequisites
11+
* Access to the {product-title} web console.
12+
13+
.Procedure
14+
To uninstall the AWS EBS CSI Driver Operator from the web console:
15+
16+
. Log in to the web console.
17+
18+
. Navigate to *Storage* -> *Persistent Volume Claims*.
19+
20+
. Select any PVCs that are in use by the AWS EBS CSI Driver Operator and click *Delete*.
21+
22+
. From the *Operators* -> *Installed Operators* page, scroll or type *AWS EBS CSI* into the *Filter by name* field to find the Operator. Then, click on it.
23+
24+
. On the right-hand side of the *Installed Operators* details page, select *Uninstall Operator* from the *Actions* drop-down menu.
25+
26+
. When prompted by the *Uninstall Operator* window, click the *Uninstall* button to remove the Operator from the namespace. Any applications deployed by the Operator on the cluster will need to be cleaned up manually.
27+
28+
Once finished, the AWS EBS CSI Driver Operator is no longer listed in the *Installed Operators* section of the web console.
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
[id="persistent-storage-csi-ebs"]
2+
= AWS Elastic Block Store CSI Driver Operator
3+
include::modules/common-attributes.adoc[]
4+
:context: persistent-storage-csi-ebs
5+
6+
toc::[]
7+
8+
== Overview
9+
10+
{product-title} is capable of provisioning persistent volumes (PVs) using the Container Storage Interface (CSI) driver for AWS Elastic Block Store (EBS).
11+
12+
Familiarity with link:https://kubernetes.io/docs/concepts/storage/persistent-volumes/[PVs], link:https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims[persistent volume claims (PVCs)], link:http://blog.kubernetes.io/2016/10/dynamic-provisioning-and-storage-in-kubernetes.html[dynamic
13+
provisioning], and link:https://kubernetes.io/docs/admin/authorization/rbac/[RBAC authorization] is recommended.
14+
15+
Before PVCs can be created, you must install the AWS EBS CSI Driver Operator. The Operator provides a default StorageClass that you can use to create PVCs. You also have the option to create the EBS StorageClass as described in xref:../../storage/persistent_storage/persistent-storage-aws.adoc#persistent-storage-aws[Persistent Storage Using AWS Elastic Block Store].
16+
17+
After the Operator is installed, you must also create the AWS EBS CSI custom resource (CR) that is required in the {product-title} cluster.
18+
19+
:FeatureName: AWS EBS CSI Driver Operator
20+
include::modules/technology-preview.adoc[leveloffset=+1]
21+
22+
== About CSI
23+
Storage vendors have traditionally provided storage drivers as part of Kubernetes. With the implementation of the Container Storage Interface (CSI), third-party providers can instead deliver storage plug-ins using a standard interface without ever having to change the core Kubernetes code.
24+
25+
CSI Operators give {product-title} users storage options, such as volume snapshots, that are not possible with in-tree volume plug-ins.
26+
27+
[IMPORTANT]
28+
====
29+
{product-title} defaults to using an in-tree, or non-CSI, driver to provision AWS EBS storage. This in-tree driver will be removed in a subsequent update of {product-title}. Volumes provisioned using the existing in-tree driver are planned for migration to the CSI driver at that time.
30+
====
31+
32+
For information about dynamically provisioning AWS EBS persistent volumes in {product-title}, see xref:../../storage/persistent_storage/persistent-storage-aws.adoc#persistent-storage-aws[Persistent Storage Using AWS Elastic Block Store].
33+
34+
include::modules/persistent-storage-csi-ebs-operator-install.adoc[leveloffset=+1]
35+
include::modules/persistent-storage-csi-ebs-operator-install-driver.adoc[leveloffset=+1]
36+
include::modules/persistent-storage-csi-ebs-operator-uninstall.adoc[leveloffset=+1]
37+
//include::modules/persistent-storage-csi-ebs-operator-install-driver.adoc[leveloffset=+1]
38+
39+
.Additional resources
40+
* xref:../../storage/persistent_storage/persistent-storage-aws.adoc#persistent-storage-aws[Persistent Storage Using AWS Elastic Block Store]
41+
* xref:../../storage/container_storage_interface/persistent-storage-csi.adoc#persistent-storage-csi[Configuring CSI volumes]

storage/persistent_storage/persistent-storage-aws.adoc

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[id="persistent-storage-using-aws-ebs"]
1+
[id="persistent-storage-aws"]
22
= Persistent Storage Using AWS Elastic Block Store
33
include::modules/common-attributes.adoc[]
44
:context: persistent-storage-aws
@@ -26,13 +26,16 @@ storage provider.
2626

2727
.Additional References
2828

29+
* xref:../../storage/container_storage_interface/persistent-storage-csi-ebs.adoc#persistent-storage-csi-ebs[AWS Elastic Block Store CSI Driver Operator]
2930
* link:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html[Amazon
3031
EC2]
3132

3233
// Defining attributes required by the next module
3334
:StorageClass: EBS
3435
:Provisioner: kubernetes.io/aws-ebs
3536

37+
include::modules/persistent-storage-csi-ebs-operator-install.adoc[leveloffset=+1]
38+
3639
include::modules/storage-create-storage-class.adoc[leveloffset=+1]
3740

3841
include::modules/storage-persistent-storage-creating-volume-claim.adoc[leveloffset=+1]

0 commit comments

Comments
 (0)