Commit Graph
1107 Commits
Author SHA1 Message Date
Joseph Sawaya ee791b09fd ceph: update CephNFS to use ".nfs" pool in newer ceph versions
This commit updates the CephNFS CR to make the RADOS settings optional
for Ceph versions above 16.2.7 due to the NFS module changes in Ceph.
The changes in Ceph make it so the RADOS pool is always ".nfs" and the
RADOS namespace is always the name of the NFS cluster.

This commit also handles the changes in Ceph Pacific versions before 16.2.7
where the default pool name is "nfs-ganesha" instead of ".nfs".

Closes: https://github.com/rook/rook/issues/8450
Signed-off-by: Joseph Sawaya <jsawaya@redhat.com>
2021-10-04 17:39:47 +00:00
Arun Kumar Mohan 4d845425e6 ceph: reverting the time delay of 'CephMonHighNumberOfLeaderChanges'
As 'CephMonHighNumberOfLeaderChanges' means there is a
multiple monitor election and indicate some communication
issue between the monitors. Increasing interval timing for
this alert is not considered as safe. So reverting this
change back to 5m

Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-10-04 10:37:34 +05:30
Arun Kumar Mohan a7f16c912a ceph: increasing the auto-resolvable alerts' delay to 15m
The following alerts,

CephMonHighNumberOfLeaderChanges
CephOSDDiskNotResponding
CephClusterWarningState

, which are resolved automatically, in most cases,
are causing unnecessary admin events. So we are increasing the
alert delay time to '15m'.

Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-10-01 11:44:43 +00:00
Arun Kumar Mohan 8950e78a4f ceph: adding 'namespace' field to the needed ceph queries
Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-10-01 16:05:54 +05:30
Sébastien Han 1f49b6f766 Merge pull request #8882 from aruniiird/change-CephMgrIsAbsent-alert
ceph: change CephAbsentMgr to use 'up' query
2021-09-30 09:05:49 +02:00
Blaine Gardner c6edc1b7d0 Merge pull request #8781 from BlaineEXE/limit-wildcard-in-rbac-verb-resource
rgw: reduce RBAC for lib-bucket-provisioner
2021-09-29 14:40:54 -06:00
aruniiird 854eb0113f ceph: change CephAbsentMgr to use 'up' query
Instead of using 'absent' query, we are trying to use 'up' which should
provide us with the needed 'namespace' field in the resultant metrics

Signed-off-by: aruniiird <amohan@redhat.com>
2021-09-30 01:12:46 +05:30
subhamkrai 2d7755ca15 build: update command to generate image list
While build.all we have race condition where images.txt
file was update with duplicate entries. So, removing `-a`
from 1st tee and also add `sort -h`and `uniq` command to
confirm no duplicate entry is in the file.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-09-29 15:00:05 +05:30
Sébastien Han 62d66b0f45 Merge pull request #8807 from leseb/fix-bz-2007130
ceph: fix external script when passing monitoring list
2021-09-28 16:01:28 +02:00
Sébastien Han f47b870718 ceph: fix external script when passing monitoring list
If we call the script with --monitoring-endpoint
10.1.8.29,10.1.8.36,10.1.8.25, we need to parse each comma-separated
address and not the entire block.
Now each address is tested properly.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-09-28 15:30:38 +02:00
Satoru Takeuchi 3d4acd1bfa Merge pull request #8833 from ashangit/purge_missing_rights
ceph: add missing rights rook-ceph-purge-osd account
2021-09-28 16:11:34 +09:00
Satoru Takeuchi 8c7f2ba4d5 docs: fix the example of local PVC based cluster
PV for mon must be a filesystem volume.

Closes: https://github.com/rook/rook/issues/8818

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2021-09-28 04:12:44 +00:00
Sébastien Han 4ba7e818c5 Merge pull request #8805 from leseb/fix-8794
ceph: stop using tini
2021-09-27 14:57:39 +02:00
n.fraison 5150018937 ceph: add missing rights rook-ceph-purge-osd account
The purge osd job need to read and update persistentvolumeclaims
While the job doesn't failed with osd and deployments well deleted
The associated pvc is not deleted by the job as it failed to read it

Signed-off-by: n.fraison <n.fraison@criteo.com>
2021-09-27 14:00:06 +02:00
Sébastien Han 121c2987e3 ceph: stop using tini
We don't need to use tini.
We don't have anything in the rook operator that would
either create zombie processes (no threads) or use
exec (to fork). The Go binary has a really good
signal handling mechanism.

Closes: https://github.com/rook/rook/issues/8794
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-09-27 10:54:16 +02:00
Arun Kumar Mohan 11ff00e309 ceph: adding 'namespace' into the result of 'ceph_node_down' query
This will add 'namespace' field into the result of 'ceph_node_down'
query.

Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-09-27 08:37:17 +00:00
Sébastien Han 76b2ebbfd0 Merge pull request #8774 from aruniiird/prometheus-rules-format-change
ceph: prometheus rules format changes
2021-09-27 10:36:31 +02:00
Blaine Gardner 7b1b037f94 rgw: reduce RBAC for lib-bucket-provisioner
Reduce the RBAC scope for the lib-bucket-provisioner to the minimum
necessary for Rook to operate with lib-bucket-provisioner. Comment the
RBAC so that users can make informed decisions about whether or not they
can remove the permissions for their uses.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-09-24 16:13:49 -06:00
Blaine Gardner 01bc8ab9a6 Merge pull request #8820 from humblec/co-ty
ceph: update csi sidecar version references to the latest
2021-09-24 12:33:49 -06:00
Humble Chirammal 966a88ea81 ceph: update the csi sidecar versions in templates and documentation
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2021-09-24 18:25:12 +05:30
parth-gr 2c670a053c docs: updated correct indentation for Storage spec in Cephcluster
Cephcluster have wrong indentation for examples yaml and helm
Updated the specs indentation the way it is present in types.go

Closes: https://github.com/rook/rook/issues/8800
Signed-off-by: parth-gr <paarora@redhat.com>
2021-09-24 18:19:27 +05:30
Travis Nielsen f5c1543ddf build: update min k8s version to 1.16
In Rook v1.8 the min version of K8s supported is updated to 1.16.
Users running on older versions of K8s are recommended to update
to 1.16 or newer before updating to Rook v1.8.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-09-23 16:17:56 -06:00
Travis Nielsen 0a0b9c98bd build: remove obsolete flex driver
The flex driver has been fully deprecated and thus removed from Rook.
Before upgrading to v1.8, users will need to convert existing flex volumes
from flex to csi volumes.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-09-23 16:17:20 -06:00
Travis Nielsen fb74e7b2d5 ceph: pick up latest ceph base image 16.2.6-20210918
The previous base image in use by rook v16.2.6-20210916 disappeared
from quay.io.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-09-23 15:11:34 -06:00
Arun Kumar Mohan 55faa31230 ceph: prometheus rules format changes
Due to the latest jsonnet and jsonnetfmt, v0.17.0, we have the
`description` and `message` lines format changed.

Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-09-24 01:13:59 +05:30
Travis Nielsen 0591753673 docs: update master doc links to latest
With the renaming of master docs to latest, all the links also
need to be updated.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-09-22 12:41:32 -06:00
Madhu Rajanna ed5f281a74 ceph: make provisioner replicas configurable
added new option to set the provisioner replicas.
with this new option the user/admin can choose
how many replicas he want for provisioner pod if
number of nodes is greater than 1.

fixes #8153

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2021-09-22 11:24:53 +05:30
Sébastien Han 470fbfd341 Merge pull request #8743 from leseb/next-pacific
ceph: use next ceph v16.2.6 pacific version
2021-09-21 16:41:45 +02:00
Sébastien Han 0c33493f27 ceph: bump manifests to ceph pacific 16.2.6
New version is out so let's use it.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-09-21 09:16:32 +02:00
Sébastien Han a8c3b363ee ceph: export security context constraints
Rook now exports both ceph and csi SCCs to run on openshift so any
program pulling rook can inject the right SCCs.
In the meantime, default SCC has been reinforced to be less permissive.
Documentation has been reworked and a new path for openshift
installations has been created. Rook still provides the YAML files for
manual installations.

Closes: #8713
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-09-20 17:54:48 +02:00
Sébastien Han ae291afb2f ci: force a particular ceph version
Let's force v16.2.5 since the CI is broken with 16.2.6. This gives us
time to continue to merge work and work on fixing deployments with
16.2.6 in parallel.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-09-17 15:28:48 +02:00
Blaine Gardner 83c05324ce ceph: remove unused crd permission from roles
Remove unused ability to modify CRDs from Rook cluster roles. Rook (as
an operator) should not have the ability to modify CRDs used by the
components it controls.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-09-14 12:52:06 -06:00
subhamkrai 284dbc0a0e build: use pkg/operator/ceph/csi/spec.go for csi images
it has happened more than once that the manifests do not
reflect the images so now reading from `pkg/operator/ceph/csi/spec.go`
as this what code uses.

Closes: https://github.com/rook/rook/issues/8687
Signed-off-by: subhamkrai <srai@redhat.com>
2021-09-13 17:16:52 +05:30
Blaine Gardner 94eb4519a0 Merge pull request #8596 from subhamkrai/offline-installation
ci: image list for offline installation
2021-09-09 13:53:49 -06:00
Sébastien Han 3c1c3409b1 Merge pull request #8668 from Muyan0828/fix/osd-full-alert-query
ceph: fix CephOSDCriticallyFulla and CephOSDNearFull Alert Query
2021-09-09 19:01:06 +02:00
chengli f2c9793fca ceph: fix CephOSDCriticallyFulla and CephOSDNearFull Alert Query
Add hostname to CephOSDCriticallyFull and CephOSDNearFull rules's expr

Signed-off-by: chengli <chengli@alauda.io>
2021-09-09 21:58:14 +08:00
Blaine Gardner 5b0785dde0 Merge pull request #8211 from thotz/enhancecephuser
ceph: add options for cephobjectstore user
2021-09-08 11:57:25 -06:00
subhamkrai 7bc9a138f2 ci: image list for offline installation
create file tests/scripts/rook-ceph-image.txt which
will have list of images required for offline installation.

Closes: https://github.com/rook/rook/issues/6406
Signed-off-by: subhamkrai <srai@redhat.com>
2021-09-08 19:52:05 +05:30
Jiffin Tony Thottan ca43800119 ceph: add options for cephobjectstore user
Adding options for quota, bucket limit, caps for the
`cephobjectstoreuser`.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-09-07 22:43:09 +05:30
Anmol Sachan a1efcd7617 ceph: fix CephMonQuorumAtRisk Alert Query
The updated query will work for single mon deployment and will work better for
deployments with five or more mons.

Signed-off-by: Anmol Sachan <anmol13694@gmail.com>
2021-09-07 21:27:45 +05:30
injninja fd158de68d docs: fix typo on cluster crd in kubernetes example
I fixed a generic version typo (v14 instead of v16) to keep the CRD description up to date

Signed-off-by: kubealex <al.rossi87@gmail.com>
2021-09-05 17:58:00 +02:00
Travis Nielsen 849f434a79 ceph: only allow up to 9 mons to be specified
Typical clusters only require 3 or maybe 5 mons. If someone really wants
to go crazy they can add more mons, but over 9 mons really should not be
used.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-09-03 07:43:41 -06:00
Travis Nielsen 1cb97574ea ceph: allow an even number of mons
While an even number of mons can cause lower availability of
mon quorum, it also can provide higher durability for the cluster.
Mon quorum can be restored from a single mon according to the
disaster recovery guide, so there may be scenarios where
an even number of mons may be preferable.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-09-03 07:43:32 -06:00
Sébastien Han ab166742c5 ceph: avoid double reconcile with default value
When setting a default values with kubebuilder flags it seems that the
kube operator intercepts the API call, mutate the CR and inject it.
This results in two events, one for creation and one for edition and we
end up with 2 reconciles. Let's avoid this.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-09-02 13:49:52 +02:00
Blaine Gardner 1b1736a3c5 ceph: remove NFS and Cassandra example manifests
Additionally remove NFS and Cassandra from CRD generator script.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-08-31 14:05:34 -06:00
Arun Kumar Mohan 888d4ea706 ceph: making script backward compatible with python2
Variable name `exec`, was raising an error with python2.
Renamed it to `execErr`.

Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-08-31 19:40:32 +05:30
Sébastien Han 41e915d411 Merge pull request #8493 from leseb/admission-controller
ceph: move the admission webhook to the operator
2021-08-25 09:30:54 +02:00
Sébastien Han 656dd0f334 ceph: move the admission webhook to the operator
Our admission webhooks will now run as part of the Operator container
and not an additional deployment. This has the advantage of consuming
fewer resources in the cluster and not having to manage affinities and
tolerations. This only drawback is that the Secret containing the
certificates is not mounted anymore and the content needs to be written
inside the Operator. This is not practical since we also need to watch
for the Secret content to change. Meaning that the certificates have
been renewed and the webhook server needs to use them.
A new approach is on its way to hopefully simplify this last issue and
implement a watcher for the Secret.
In the meantime, users need to use the cert-manager or renew
certificates manually. Additionally, they must update the
ValidatingWebhookConfiguration object with the new CA bundle.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-08-24 19:07:04 +02:00
Sébastien Han 579fc27783 ceph: embed ceph-csi templates in rook binary
Thanks to Golang 1.16, we can now embed files in the Go binary. This
means we don't need to add the CSI templates files to the container
image. They are added in the Go binary at build time.

The existing location of the template must be in the package calling it.
So they moved to pkg/operator/ceph/csi/template. All the files have been
symlinked back to cluster/examples/kubernetes/ceph/csi/template.

Closes: https://github.com/rook/rook/issues/7609
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-08-24 16:22:20 +02:00
Joseph Sawaya 331e06659e ceph: add permissions to rook-ceph-mgr role for osd removal
This commit adds permissions to the rook-ceph-mgr role
to delete PVCs and deployments and patch deployment scale
to remove OSDs using `ceph orch osd rm` in the rook orchestrator.

Signed-off-by: Joseph Sawaya <jsawaya@redhat.com>
2021-08-19 16:43:01 -04:00