Commit Graph
1138 Commits
Author SHA1 Message Date
Travis Nielsen cbe29baf76 Merge pull request #9068 from aruniiird/fix-CephMonQuorumLost-alert-query
ceph: fix 'CephMonQuorumLost' alert
2021-11-02 10:21:24 -06:00
Arun Kumar Mohan af44e5c584 monitoring: fix 'CephMonQuorumLost' alert
Only the 'Running' mons with result value of '1' should be counted.

Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-11-02 17:40:50 +05:30
Yuzuki Mimura 536b59ef0f rgw: change the way to livenessProbe and introduce readinessProbe
rgw doesn't respond `livenessProbe` if the number of connection reaches its
limit (by default, 1000). Then rgw is out of service but still live.
Hense the current `livenessProbe` logic is suitiable for `readinessProbe`.
`tcpSocket` is enough for `livenessProbe`.

Closes: #8407

Signed-off-by: Yuzuki Mimura <yuzuki725.m@gmail.com>
Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2021-10-29 15:07:29 +00:00
Sébastien Han e0145b9643 nfs: add pool setting CR option
Ths NFS spec now supports the CephBlockPool spec which means that it can
take advantage of all the known settings like compression, size, failure
domain etc.

Closes: https://github.com/rook/rook/issues/9034
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-10-29 09:04:31 +02:00
subhamkrai cb0e2405fd security: validate operator-openshift.yaml file
add `allowHostPID: false` field in SCC of
operator-openshift.yaml file.

Closes: https://github.com/rook/rook/issues/9048
Signed-off-by: subhamkrai <srai@redhat.com>
2021-10-28 20:57:56 +05:30
Sébastien Han 4f2c685ad9 ceph: ability to set label to crash collector
We can now set labels to the crash collector deployment by editing the
CephCluster CR with:

```yaml
spec:
  labels:
    crashcollector:
```

Closes: https://github.com/rook/rook/issues/9039
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-10-27 12:29:50 +02:00
Travis Nielsen a861bf0d12 Merge pull request #8411 from Yuggupta27/async-dr-doc
docs: add document for failover and failback
2021-10-26 08:18:36 -06:00
Blaine Gardner 7f5587dd99 Merge pull request #8918 from subhamkrai/update-controller-runtime
core: update controller runtime to v0.10.2
2021-10-25 09:10:55 -06:00
Blaine Gardner 2f850b6ae6 Merge pull request #8613 from subhamkrai/remove-nautilus
ceph: remove ceph nautilus, ceph octopus to default
2021-10-25 09:09:18 -06:00
Yug Gupta 0f62a7c03d ceph: add volume replication cr yaml
Add a new yaml for creating volume replicationclass
and volume replication cr.

Signed-off-by: Yug Gupta <yuggupta27@gmail.com>
2021-10-25 19:37:08 +05:30
Yug Gupta 41ef8561d0 ceph: add mirrored pool yaml
Add a new yaml for creating pools that
have mirroring enabled.

Signed-off-by: Yug Gupta <yuggupta27@gmail.com>
2021-10-25 19:36:52 +05:30
subhamkrai 132c2607a3 core: update controller runtime to v0.10.2
Updating controller runtime to v0.10.2

Closes: https://github.com/rook/rook/issues/8648
Signed-off-by: subhamkrai <srai@redhat.com>
2021-10-25 12:19:15 +05:30
Sébastien Han 8d54fdc35f Merge pull request #8979 from aruniiird/add-CephMonQuorumLost-alert
ceph: adding CephMonQuorumLost critical alert
2021-10-21 12:20:45 +02:00
Arun Kumar Mohan 5c34393eca ceph: adding CephMonQuorumLost critical alert
Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-10-21 12:01:17 +05:30
subhamkrai 0150966024 ceph: remove ceph nautilus, ceph octopus to default
since rook 1.8, ceph nautilus no longer supported,
ceph octopus will be the minimum ceph version.

Closes: https://github.com/rook/rook/issues/7908
Signed-off-by: subhamkrai <srai@redhat.com>
2021-10-20 14:45:12 +05:30
PixelJonas 8733bf6272 ceph: use normal quotation marks for comment
replaces all occurences of lduo/rduo quotation marks to make
sure that using the snippets in a k8s manifest will work

This fixes an issue with ArgoCD not being able
to apply `common.yaml` because of an encoding issue

Signed-off-by: PixelJonas <jonas@janz.digital>
2021-10-20 10:09:22 +02:00
Blaine Gardner d43327de2a docs: move purge osd to cluster namespace
The rook-ceph-purge-osd job should be run for a particular CephCluster
and should therefore be namespaced to the cluster.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-10-19 13:23:42 -06:00
Travis Nielsen d01ea3a0b3 Merge pull request #8900 from BlaineEXE/create-library-chart
helm: create shared library chart
2021-10-19 11:22:23 -06:00
Sébastien Han 4017f94464 osd: use rook binary to fetch key encryption key
When deploying a cluster-wde encrypted cluster we now use the rook
binary to execute some code to fetch the key encryption key.

Using cURL all the time to fetch the key has its limitations. The
incoming integration with Kubernetes Authentication through service
accounts is leading the usage of cURL to its end.
The logic is really complex and prone to errors. Re-implementing the
Go logic into Bash is not a viable option.

Also, using the lib in a binary allows us to keep a consistent behavior
throughout the life cycle of our code.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-10-19 17:29:25 +02:00
Blaine Gardner d9146f6f95 helm: create shared library chart
Create a Helm library chart to share content between the Operator Helm
chart (rook-ceph) and the CephCluster (etc.) Helm chart
(rook-ceph-cluster).

This will ensure that when resources related to the CephCluster change,
notably RBAC resources, they will change for both charts.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-10-18 12:33:47 -06:00
Madhu Rajanna 83cd8cb300 csi: fix comment for the provisioner and clusterID
fixed provisioner and clusterID comment to match
the correct namespace.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2021-10-18 10:39:13 +05:30
Arun Kumar Mohan cfa2c2dd38 ceph: fixing the queries for alerts 'CephMgrIsAbsent' and 'CephMgrIsMissingReplicas'
CephMgrIsAbsent
----------------
This alert initially had the following query

absent(up{job="rook-ceph-mgr"})

which will fire when the 'up' query is not present, but had two flows
  a. it will not be fired if 'up' provides a result with ZERO value
  b. it will not give any fields in the metric, so 'namespace' was missing

when the above query was replaced with the following,

up{job="rook-ceph-mgr"} == 0

query had the following shortage
  a. whenever mgr pod is completely down (like 'replicas' set to ZERO
and 'mgr' is not coming up), 'up' query will not give any result.

Thus we had to combine both the queries to get results in both the scenarios.

CephMgrIsMissingReplicas
------------------------
This query previously was,

sum(up{job="rook-ceph-mgr"}) < 1

had the same structure as the above (Absent) query, but it's
intention was to check the no: of 'replicas' count for ceph mgr.
Now it is changed to a kube query which handles the replicas count.

Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-10-15 13:16:45 +05:30
Sébastien Han 5e3ecaadbb Merge pull request #8966 from leseb/rm-compression-mode
ceph: remove default value for pool compression
2021-10-13 18:13:24 +02:00
Sébastien Han 28cc6f5514 ceph: remove default value for pool compression
Using a default value for CompressionMode to none effectively overrides
any values for Parameters. It is deprecated but still takes precedence.
Which means that in its previous form, Parameters was always ignored
since CompressionMode was always set to none when empty.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-10-13 17:06:22 +02:00
Sébastien Han e33d905b59 Merge pull request #8501 from josephsawaya/ceph-nfs-remove-rados
ceph: remove RADOS options from CephNFS and use .nfs pool
2021-10-13 10:41:49 +02:00
Sébastien Han 860e818512 Merge pull request #8947 from GowthamShanmugam/1970354
Handle empty ceph_version in ceph_mon_metadata to avoid raising misleading alert
2021-10-13 10:25:18 +02:00
Gowtham Shanmugasundaram 4b76eb8993 ceph: handle empty ceph_version in ceph_mon_metadata
Signed-off-by: Gowtham Shanmugasundaram <gshanmug@redhat.com>
2021-10-12 15:02:49 +05:30
parth-gr 59467e56ba ceph: modify rook scc in operator-openshift cr
Added allowHostNetwork and allowHostPorts fields
in operator-openshift cr as they are necessary
for validation

Closes: https://github.com/rook/rook/issues/8876
Signed-off-by: parth-gr <paarora@redhat.com>
2021-10-07 18:44:34 +05:30
Travis Nielsen c420f2309c csi: no longer install the volumereplication crds from rook
The volume replication CRDs are an external component, not owned by Rook.
Therefore, they should be installed as any other independent component
in case the admin will install other consumers of the volumereplication CRDs
in the future in addition to Rook and the CSI driver.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-10-06 16:27:44 +00:00
Sébastien Han 0e0ccf8640 Merge pull request #8808 from BlaineEXE/add-trace-log-option
core: create TRACE_INSECURE log level
2021-10-06 11:35:32 +02:00
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
Blaine Gardner 7586cea049 core: create TRACE_INSECURE log level
Create a new log level for Rook that is hidden from users. This is the
most verbose log level, and it is the level developers would like to use
to get debug logs that are important for debugging but that could leak
senstivie information like credentials in production use.

If a user sets their debug level to "TRACE", they will merely get
"DEBUG" level logs. Only if they set "TRACE_INSECURE" will they get
trace logs, and those are likely to include insecure information. Rook
tries very hard not to leak sensitive information in logs even with
verbose "DEBUG" logs.

Resolves #8778

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-10-01 12:09:19 -06:00
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