Commit Graph
13292 Commits
Author SHA1 Message Date
Madhu Rajanna 54de442e22 csi: make GRPC timeout configurable
setting the GRPC timeout configurable helps
in some cases where ceph cluster takes more time
to respond.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-04-14 18:15:00 +05:30
Rakshith R 762f75062f csi: enable csi nfs to generate nfs rbac for csv
This commit enables csi.nfs during rbac generation
for csv, so that it can used when deployed with olm.

Signed-off-by: Rakshith R <rar@redhat.com>
2022-04-14 11:47:39 +05:30
Travis Nielsen af60d2a0f4 Merge pull request #10014 from BlaineEXE/nfs-docs
docs: update NFS docs including latest CSI work
2022-04-13 16:23:49 -06:00
Travis Nielsen 6fd2e70039 Merge pull request #10066 from travisn/helm-docs-clarify
docs: Clarify helm install documentation
2022-04-13 15:21:24 -06:00
Blaine Gardner a950feb01e docs: update NFS docs including latest CSI work
Update the NFS docs with the latest available info for Ceph Quincy
including the CSI provisioner driver.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2022-04-13 15:02:16 -06:00
Travis Nielsen 0acf7d616c docs: clarify helm install documentation
Update the formatting so third-level headers are more visible,
sections are more consistent between the operator and cluster
chart docs, and a few other minor updates.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-04-13 14:41:48 -06:00
Travis Nielsen 221fc5d81b Merge pull request #10046 from Madhu-1/webhook-rados
ceph: add webhooks to reject update on subvolume group and radosnamespace
2022-04-13 11:06:20 -06:00
Blaine Gardner fe3be863ba Merge pull request #10058 from BlaineEXE/nfs-rbac-gen
build: generate a separate NFS CSI RBAC manifest
2022-04-13 10:32:18 -06:00
Sébastien Han 46c7c0e9b5 Merge pull request #10062 from travisn/disable-ibm-for-backports
build: Remove requirement for ibm test in backports
2022-04-13 18:18:48 +02:00
Travis Nielsen 5381a6ee2a build: remove requirement for ibm test in backports
The ibm test is not expected to run in PRs, so we can
remove it from the list of required tests for backports in the
release-1.9 branch.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-04-13 10:13:00 -06:00
Rakshith R 2e18d5bbaa csi: add CSI encryption support
Ceph-CSI supports LUKS encryption for RBD volumes.
This commit adds support for the same by adding capability
of mounting required `rook-ceph-csi-kms-config` configmap
into csi-rbdplugin-provisioner and nodeplugin pods.
Required documentations, helm charts and examples yamls
are also updated.

Resolved: #7032

Signed-off-by: Rakshith R <rar@redhat.com>
2022-04-13 19:52:51 +05:30
Madhu Rajanna 52c8211e43 csi: use k8s.gcr.io for csi nfsplugin image
use k8s.gcr.io like other kubernetes sidecar
image to pull the nfsplugin image.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-04-13 11:54:35 +05:30
Madhu Rajanna 4425ef1ce2 build: provide 775 permission for deploy_cert_manager.sh
provided 775 permission like other scripts for
deploy_cert_manager.sh

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-04-13 10:57:33 +05:30
Madhu Rajanna 74c4397973 subvolumegroup: add webhook for subvolumegroup
As we are not suppose to update the filesystem name
once the subvolumegroup is created.
added webhook validation for subvolumegroup update.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-04-13 10:57:30 +05:30
Madhu Rajanna 6aea438288 namespace: add webhook for radosnamespace
As we are not suppose to update the pool name
once the rados namespace is created.
added webhook validation for radosnamespace
update.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-04-13 10:45:04 +05:30
Madhu Rajanna 024c034a95 core: add code to update the webhook configurations
As we are adding new webhook configuration we
need to update the webhooks validations.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2022-04-13 10:38:38 +05:30
Blaine Gardner bca2f128ab build: generate a separate NFS CSI RBAC manifest
Because the NFS CSI driver is optional and rarely deployed, make RBAC
for this driver an optional example that is generated by the helm chart.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2022-04-12 16:57:11 -06:00
Blaine Gardner 5470d9c660 Merge pull request #10054 from BlaineEXE/nfs-create-config-pool-automatically
nfs: create config pool automatically
2022-04-12 13:33:02 -06:00
Blaine Gardner 254a7adb4c nfs: create config pool by default
Create the ".nfs" config pool by default so that users aren't required
to create it via CephBlockPool.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2022-04-12 12:05:43 -06:00
Blaine Gardner 8ea14f77d5 Merge pull request #10053 from BlaineEXE/built-in-pools-must-be-replicated
pool: built-in pools must be replicated
2022-04-12 11:54:48 -06:00
Blaine Gardner 0d2e43bd77 Merge pull request #9927 from Rakshith-R/csi/add-nfs-nodeplugin
csi: add nfs nodeplugin & provisioner
2022-04-12 11:37:55 -06:00
Blaine Gardner bcd5b66e43 pool: built-in pools must be replicated
Built in Ceph pools (device_health_metrics, .mgr, .nfs) must be
replicated and not erasure coded.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2022-04-12 11:14:04 -06:00
Travis Nielsen 38dc2fae2d Merge pull request #10003 from rexagod/9711
core: support arbitrary node affinity inputs
2022-04-12 10:31:58 -06:00
Sébastien Han db09f91272 Merge pull request #10048 from leseb/fix-9784
ci: add multus integration test
2022-04-12 18:23:07 +02:00
Travis Nielsen 96b24a2ab3 Merge pull request #10043 from subhamkrai/refactor-webhook
core: refactor webhook config
2022-04-12 09:45:29 -06:00
Pranshu Srivastava 6e49a090a3 core: support arbitrary node affinity inputs
Adds support for valid arbitrary NodeAffinity JSON input by the user while
maintaining backward compatibility with the older parsing code.

Signed-off-by: Pranshu Srivastava <rexagod@gmail.com>
2022-04-12 21:11:01 +05:30
Sébastien Han 2c09bbb91b ci: add multus integration test
This new integration test will deploy a cluster with multus enabled. It
will be comprised of two network interfaces for ceph public and cluster
communications.
For now, it only deploys a Ceph cluster up to the OSDs.

Closes: https://github.com/rook/rook/issues/9784
Signed-off-by: Sébastien Han <seb@redhat.com>
2022-04-12 17:30:47 +02:00
Travis Nielsen 26907b8923 Merge pull request #10042 from travisn/toc-consistency
docs: Consistent toc headers for crds
2022-04-12 08:41:30 -06:00
subhamkrai 948e2851dc core: refactor webhook config
refactor validating webhook config.

Closes: https://github.com/rook/rook/issues/10025
Signed-off-by: subhamkrai <srai@redhat.com>
2022-04-12 19:49:15 +05:30
Travis Nielsen 73b8412c66 Merge pull request #10044 from subhamkrai/update-doc
docs: update design doc path in multus design
2022-04-12 08:05:23 -06:00
Sébastien Han ebe2e10a3a Merge pull request #9903 from leseb/multus-design-change-for-csi
csi: update multus design to mitigate csi-plugin pod restart
2022-04-12 15:49:29 +02:00
subhamkrai 9e56987d81 docs: update design doc path in multus design
update design doc path in multus design.

Signed-off-by: subhamkrai <srai@redhat.com>
2022-04-12 15:06:02 +05:30
Sébastien Han 77c955a151 csi: update multus design to mitigate csi-plugin pod restart
This is the latest version of the design to mitigate the bug encountered
when restarting the `csi-plugin` pod.

Signed-off-by: Sébastien Han <seb@redhat.com>
2022-04-12 09:36:43 +02:00
Rakshith R f1953314d4 csi: add nfs example yamls
This commit adds example nfs storageclass,
pvc and pod yamls.

Signed-off-by: Rakshith R <rar@redhat.com>
2022-04-12 11:25:09 +05:30
Rakshith R 5f48ad8026 csi: add nfs provisioner deployment
This commit adds nfs provisioner deployment.
This will allow rook to deploy nfs provisioner
which can create backend cephfs subvolumes to be
exported as nfs volumes.

refer:
https://github.com/ceph/ceph-csi/blob/devel/docs/design/proposals/nfs.md

Signed-off-by: Rakshith R <rar@redhat.com>
2022-04-12 11:25:08 +05:30
Rakshith R 34162c3dc5 csi: add nfs nodeplugin daemonset
This commit adds nfs nodeplugin daemonset.
This will allow rook to deploy nfs nodeplugin
which can mount/unmount nfs volumes.

refer:
- https://github.com/ceph/ceph-csi/blob/devel/docs/design/proposals/nfs.md
- https://github.com/kubernetes-csi/csi-driver-nfs

Signed-off-by: Rakshith R <rar@redhat.com>
2022-04-12 11:07:38 +05:30
Travis Nielsen a71e361cef docs: consistent toc headers for crds
The titles for the CRD documentation pages in the table
of contents were not consistent. The full name for the CRD
can be included in the full doc page, but in the TOC
we abbreviate the names for simplicity and readability.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-04-11 16:49:20 -06:00
Travis Nielsen 7ace343a70 Merge pull request #10027 from travisn/prometheus-formatting
helm: Correctly check external cluster for prometheus rules
2022-04-11 11:59:06 -06:00
Travis Nielsen 7eaef3871d Merge pull request #10009 from humblec/remove-update
csi: remove node object update rbac for csi deamonset pods
2022-04-11 09:55:10 -06:00
Sébastien Han aae4e79a3d Merge pull request #10035 from leseb/fix-ibm-kms-corner-case
osd: only set kek to env var on encryption scenario
2022-04-11 17:26:04 +02:00
Travis Nielsen e0ff39bd29 Merge pull request #9934 from subhamkrai/automate-adm
core: start admission controller without any script
2022-04-11 09:07:27 -06:00
Sébastien Han 6bc7827150 osd: only set kek to env var on encryption scenario
There is a corner case where an env variable populated with the prepare
job could influence and trigger some encryption code. We have an env
variable to discover whether the prepare job will encrypt a drive or not
so let's use that instead of running code as a noop and sometimes
trigger a corner case. In this scenario, the prepare job had an "IBM_"
env variable present in the OS image (IBM OS) so the setKEKinEnv()
  function would get called for no reason.

Signed-off-by: Sébastien Han <seb@redhat.com>
2022-04-11 16:54:18 +02:00
subhamkrai f6f03d272b core: start admission controller without any script
finally, admission controller will be enabled default
without any script/manual step. But it still requires cert-manager
to be installed which I believe is already installed in clusters.

**Note**
Code doesn't return error it just logs the error since
we don't want to stop reconciling if the admission controller fails.
We can work on this once the admission controller is stable.

Signed-off-by: subhamkrai <srai@redhat.com>
2022-04-11 19:44:54 +05:30
Sébastien Han 1db2ecf99b Merge pull request #10029 from travisn/default-test-pool-size
test: Default pool replica size for test cluster is 1
2022-04-11 10:04:50 +02:00
Travis Nielsen e5a3cbd08c test: default pool replica size for test cluster is 1
The default replica count for test clusters should be 1.
This was causing the rgw-multisite integration test to
fail because the PGs were attempting to use the default
replication instead of the replication of 1 expected
for test clusters.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-04-08 15:58:43 -06:00
Travis Nielsen 257dc61391 helm: correctly check external cluster for prometheus rules
When the prometheus rules are created, if external settings
were not specified, the helm chart would fail due to a nil ref
in the external settings. Now we check both for the existence
of external settings and whether the external settings are enabled.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-04-08 13:28:54 -06:00
Travis Nielsen d23b117dea Merge pull request #10018 from travisn/render-doc-links
docs: Add missing references to branch name script
2022-04-07 16:01:49 -06:00
Travis Nielsen 82125ddf40 docs: add missing references to branch name script
The script to get the branch name was not being imported
on several doc pages, causing any links using
{{ branchName }} to be broken on those pages.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-04-07 15:58:08 -06:00
Travis Nielsen 178e0a4958 Merge pull request #10016 from travisn/upgrade-doc
docs: Remove obsolete section of upgrade guide
2022-04-07 15:42:35 -06:00
Travis Nielsen c400ffa233 docs: remove obsolete section of upgrade guide
The bluestore_fsck_quick_fix_on_mount fix was only needed when upgrading to
versions of Ceph older than v16.2.6. Everyone on pacific should now be
on v16.2.7, so we can remove this section from the v1.9 upgrade guide.

Also cleaning up a few other small issues in the guide.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2022-04-07 15:36:51 -06:00