README
¶
StorageOS Operator
The StorageOS Operator deploys and configures a StorageOS cluster on Kubernetes.
Setup/Development
- Build operator container image with
make operator-image
. Publish or copy the container image to an existing k8s cluster to make it available for use within the cluster. - Generate install manifest file with
make install-manifest
. This will generatestorageos-operator.yaml
file. - Install the operator with
kubectl create -f storageos-operator.yaml
.
The operator can also be run from outside the cluster with make run
. Ensure
the CRDs that the operator requires are installed in the cluster before running
it using make install
.
Install StorageOS cluster
- Ensure an etcd cluster is available to be used with StorageOS.
- Create a secret for the cluster, for example:
apiVersion: v1
kind: Secret
metadata:
name: storageos-api
namespace: storageos
labels:
app: storageos
data:
# echo -n '<secret>' | base64
username: c3RvcmFnZW9z
password: c3RvcmFnZW9z
- Create a
StorageOSCluster
custom resource in the same namespace as the above secret and refer the secret in the spec:
apiVersion: storageos.com/v1
kind: StorageOSCluster
metadata:
name: storageoscluster-sample
namespace: storageos
spec:
secretRefName: storageos-api
storageClassName: storageos
kvBackend:
address: "<etcd-address>"
This will create a StorageOS cluster in storageos
namespace with a
StorageClass storageos
that can be used to provision StorageOS volumes.
Testing
Run the unit tests with make test
.
Run e2e tests with make e2e
. e2e tests use kuttl.
Install kuttl kubectl plugin before running the e2e tests.
Update api-manager manifests
Api-manager manifests are stored in the repo but updated manually. To update the manifests please follow the instructions below.
- Edit
API_MANAGER_VERSION
inMakefile
or pass it to make target. - Execute
make api-manager
command. - Enjoy new version.
Update portal-manager manifests
portal-manager manifests are stored in the repo but updated manually. To update the manifests please follow the instructions below.
- Edit
PORTAL_MANAGER_VERSION
inMakefile
or pass it to make target. - Execute
make portal-manager
command. - Enjoy new version.
Update node-manager manifests
node-manager manifests are stored in the repo but updated manually. To update the manifests please follow the instructions below.
- Edit
NODE_MANAGER_VERSION
inMakefile
or pass it to make target. - Execute
make node-manager
command. - Enjoy new version.
Documentation
¶
There is no documentation for this package.
Directories
¶
Path | Synopsis |
---|---|
api
|
|
config.storageos.com/v1
Package v1 contains API Schema definitions for the config.storageos.com v1 API group +kubebuilder:object:generate=true +groupName=config.storageos.com
|
Package v1 contains API Schema definitions for the config.storageos.com v1 API group +kubebuilder:object:generate=true +groupName=config.storageos.com |
v1
Package v1 contains API Schema definitions for the storageos.com v1 API group +kubebuilder:object:generate=true +groupName=storageos.com
|
Package v1 contains API Schema definitions for the storageos.com v1 API group +kubebuilder:object:generate=true +groupName=storageos.com |
internal
|
|