When testing my changes I couldn't successfully deploy without also
creating the contents of common.yaml first.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
Include the mandatory template files in the rook ceph image
so that the user-driven configuration for CSI and flex do not
need to differ in this aspect.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
The CephCluster resource will now expose the health of the ceph cluster
so admins can query the status with k8s api or kubectl instead of
needing to run the rook toolbox. The operator will query the
ceph status periodically and update the status in the custom resource.
Signed-off-by: travisn <tnielsen@redhat.com>
Node validity is not always as simple as a true/false. Refactor each
validity test into its own function for operators that wish to check
validity more granularly. Ceph will use these changes.
Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
Commit 91cc62676d changed our base ceph
version from Mimic to Nautilus.
Update the comment in the Dockerfile to reflect this change.
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
The current document is too old and it has
a reference to the master branch(earlier
master branch referred to csi-v0.3.0).
This PR updated the snapshot document
wrt to the changes required for csi-v1.0.0
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
socket directory name need not follow
the driver name format,renamed socket directory
to simple names.
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
The Ceph upgrade test is the only one which uses the
`WaitForDeploymentImage` method, and it has to be configured to wait
longer after upgrade at this point. Since the wait time is still
hard-coded, this method is moved to the operator's test dir to make
it clear that the method is suitable only for tests currently.
Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
When deleting a CephObjectStoreUser the deleteUser function
attempts to delete the stored secret using the wrong name. This
patch updates deleteUser to use the same fmt.Sprintf call used in
the createUser function.
Updated CI to delete the correct CRD and check the secret is deleted.
Signed-off-by: Keith Schincke <keith.schincke@gmail.com>
To simplify the deployment of Rook, both the operator and cluster crd are now created in the
same namespace in the examples. By default the operator will only manage a cluster crd
in the same namespace instead of watching for clusters in all namespaces. To manage a cluster
in another namespace, the roles in latter half of operator-common.yaml need to point to the new
namespace and the operator env var ROOK_CURRENT_NAMESPACE_ONLY should be set to false.
Signed-off-by: travisn <tnielsen@redhat.com>
The RBAC is tedious to copy everywhere with the cluster.yaml and is confusing to newcomers.
The common resources are now factored into the operator-common.yaml for the common scenario
of creating a single cluster. Examples are now added for configuration of the operator
and cluster crds to provide a more complete set.
Signed-off-by: travisn <tnielsen@redhat.com>
Upgrading a Ceph objectstore was failing the upgrade test because the
existing method for handling the case where update errors occurred
because labels and label selectors have changed was not robust enough.
Make this more robust by attempting delete-and-create if a normal update
does not work on an rgw deployment.
Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
Update integration test suite fails on an error with getting the keyring
for the mgr. The mgr's cephx capabilities have changed and need to be
updated before get, create, or get-or-create can be called. Since other
daemons' caps may change in the future, make an attempt to update the
user's caps on any key generation. This makes the key generation more
declarative from within the operator code for individual Ceph daemons.
Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
The Ceph mon flag `--public-bind-addr` does not keep the same port as
the previous daemon run when the port is left off the flag's value. A
port is undesired since that could interfere with Nautilus' msgr2
protocol, so instead configure the mon's services to forward the default
bind port on pods (6789) to the mon endpoint's port. The endpoint port
will be 6789 for new mons, but it may be 6790 for legacy clusters.
Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
pass env vars with rook-ceph-system namespace and API version to
ceph-mgr containers to remove hardcoded values from rook orchestrator in
ceph-mgr and updated the unit tests for the same
Signed-off-by: rohan47 <rohgupta@redhat.com>
Allow adding additional required environment variables on a situational
basis to Ceph's spec unit tests.
Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
(cherry picked from commit 94bf2a6e14b88a8e965b4ad5ce1289b606e5c32d)
The RBD module is an important prerequisite for Rook Ceph. It is mentioned as a possible problem on the Common Issues page, but that is the ambulance at the bottom of the cliff 😄. We should mention the perquisite for new users, tell them how to check, and note any major Kubernetes-as-a-service providers that do not have the RBD module.
https://rook.io/docs/rook/master/common-issues.html#rook-agent-rbd-module-missing-error
Signed-off-by: Aaron Roydhouse <aaron@roydhouse.com>