Commit Graph
6437 Commits
Author SHA1 Message Date
Travis Nielsen c402e40f54 ceph: load test crds from files or urls
The integration tests will now read the manifests from the same source
that is used in the examples for installation. No longer is there a need
for a copy of the CRDs in the integration test code.

The tests will read the manifests directly from disk under a path
relative to the rook root. The upgrade test will read the manifests from
a github url where the base version has been published.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-03-08 21:34:59 -07:00
Travis Nielsen 3fd89dc355 ceph: upgrade test upgrades from 1.5 instead of 1.4
Since the 1.5 releaase we need the integration test to upgrade from
1.5 to master instead of from 1.4 to master.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-03-08 18:12:42 -07:00
Sébastien Han 2a192300e2 Merge pull request #4879 from leseb/raw-mode-non-pvc
ceph: add raw mode for non-pvc osd
2021-03-03 18:55:21 +01:00
Travis Nielsen ec5691ee3a Merge pull request #7330 from thotz/updatecrdsforhealthcheck
ceph: update CRDs for healthcheck in crds.yaml
2021-03-03 08:20:59 -07:00
Sébastien Han 3dde2609fa ceph: add raw mode for non-pvc osd
For simple OSD scenario that don't require the following:

* an encrypted osd
* an osd with a backing device
* multiple osd on the same block device

The OSD will be prepared using the ceph-volume raw mode which does
not use LVM on non-pvc case.

Closes: https://github.com/rook/rook/issues/4768
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-03-03 14:11:26 +01:00
Sébastien Han 06810b9700 ceph: fix iteration
block if not defined was used with osdInfo.Device so not empty anymore
in the loop, which means it will have the same value for all OSDs in the
loop.
This is only called when running on PVC, where a single device is
present so the loop has a single iteration, so not a big issue.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-03-03 14:06:19 +01:00
Sébastien Han c1362ce482 ceph: revert "ceph: test latest ceph on raw device"
This reverts commit 114a949cfb since
14.2.14 is out and has a fix to use raw mode instead of LVM mode on
   partitions.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-03-03 14:06:19 +01:00
Blaine Gardner bc9c5f2057 ceph: start using latest Ceph v15 in integration
Do not use old Ceph v15.2.7 in integration that was working around the
issue of ceph-volume partition support being removed in v15.2.8.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
(cherry picked from commit 99cee7648cfaf72b02d62e281a2ac3a18bce4132)
2021-03-03 14:06:19 +01:00
Sébastien Han e335851b96 Merge pull request #7273 from anmolsachan/BZ1904302
ceph: fixed prometheus query to avoid many-to-many match error
2021-03-03 11:30:13 +01:00
Sébastien Han c28fdfa371 Merge pull request #7307 from leseb/ceph-multi-fs
ceph: rework multiple filesystem support
2021-03-03 07:57:40 +01:00
Santosh Pillai 1159455345 ceph: update CRDs for healthcheck in crds.yaml
Even though CRs for bucket health check was added, CRDs were missing from
crds.yaml file. So the health check always enabled for RGW.

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-03-03 10:42:35 +05:30
Satoru Takeuchi 03a3854281 Merge pull request #7344 from travisn/purge-osd-doc-link
docs: Fix link to the sample osd purge job
2021-03-03 09:31:51 +09:00
Travis Nielsen 6d821d6a51 docs: fix link to the sample osd purge job
The osd purge job link requires an absolute url depending
on the branch name since links to the examples do not work
as relative paths.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-03-02 17:09:56 -07:00
Travis Nielsen efcf2760e7 Merge pull request #7315 from travisn/conditions-rewrite
ceph: Only raise CephCluster conditions that represent current state
2021-03-02 17:04:24 -07:00
Travis Nielsen ccfd1191da ceph: document the CephCluster CR status
The CephCluster CR status has a number of fields that are
now finally documented, including the Ceph status, conditions,
and other general status.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-03-02 15:13:07 -07:00
Travis Nielsen 15d0537cec ceph: only raise conditions that represent current state
The conditions on the cephcluster CR were being set to false
when not in progress, which is misleading to the purpose of
conditions. The conditions will now always represent current
state of the cluster. Transient conditions that show progress of
a reconcile will be removed from the status.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-03-02 14:15:47 -07:00
Travis Nielsen ddedecabac Merge pull request #7334 from thotz/livenessprobergwsslenabled
ceph: handle ssl cases for RGW's livenessprobe
2021-03-02 11:42:06 -07:00
Sébastien Han 8dfa99e01d ceph: rework multiple filesystem support
The upcoming Rook release 1.6 will support Ceph Pacific which introduces
stable support for multiple Ceph Filesystems in the same cluster. So we
now allow the creation of multiple Filesystem if the release is Pacific.

Also, we remove the Operator config flag which was not necessary.

Here I have 2 filesystems:

```
[root@rook-ceph-tools-6b4889fdfd-vncck /]# ceph fs ls
name: myfs, metadata pool: myfs-metadata, data pools: [myfs-data0 ]
name: myfs2, metadata pool: myfs2-metadata, data pools: [myfs2-data0 ]
```

```
  cluster:
    id:     cc747950-589a-4862-bad2-ff7de1217b1a
    health: HEALTH_WARN
            mons a,b,c are low on available space
            6 pool(s) have no replicas configured

  services:
    mon: 3 daemons, quorum a,b,c (age 2d)
    mgr: a(active, since 2d)
    mds: myfs:1 myfs2:1 {myfs2:0=myfs2-b=up:active,myfs:0=myfs-b=up:active} 2 up:standby-replay
    osd: 3 osds: 3 up (since 2m), 3 in (since 6d)

  data:
    pools:   6 pools, 717 pgs
    objects: 44 objects, 4.2 KiB
    usage:   46 MiB used, 90 GiB / 90 GiB avail
    pgs:     717 active+clean

  io:
    client:   1.8 KiB/s rd, 4 op/s rd, 0 op/s wr

  progress:
    Global Recovery Event (45s)
      [===========================.]
```

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-03-02 18:27:04 +01:00
Sébastien Han 912adc131f Merge pull request #7337 from leseb/vault-print-warnings
ceph: expose vault warnings better
2021-03-02 15:34:48 +01:00
Sébastien Han 0534b5a180 ceph: expose vault warnings better
If there is a warning coming from the Vault server we must catch it and
exit immediately to reflect it if no key was retrieved.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-03-02 10:49:19 +01:00
Sébastien Han a134d1df6e Merge pull request #7336 from leseb/revert-vault-backend
ceph: revert kms VAULT_KV_VERS to VAULT_BACKEND
2021-03-02 10:44:43 +01:00
Jiffin Tony Thottan 785aa5a322 ceph: handle ssl cases for RGW's livenessprobe
The livenessprobe for swift/health always check with RGW internal port if host network disabled,
but won't work if only secure port is configured

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-03-02 14:39:57 +05:30
Sébastien Han e4c3a4cef7 ceph: revert kms VAULT_KV_VERS to VAULT_BACKEND
The vault env variable VAULT_BACKEND is read by the secret library so we
must not change it. This is reverting
ee6a03dfb8 with a few extra fixes for the
rgw code.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-03-02 10:08:39 +01:00
Sébastien Han 5fccaf5e62 Merge pull request #7328 from leseb/ubuntu-18-ci
ceph: stick with ubuntu-18.04 on the CI
2021-03-01 18:44:41 +01:00
Sébastien Han 0adf7624d9 ceph: stick with ubuntu-18.04 on the CI
Github just switched to use Ubuntu 20.04 for the ubuntu-latest and it is
breaking some of our scenarios so far. Especially scenario creating
partitions.

Closes: https://github.com/rook/rook/issues/7327
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-03-01 18:20:42 +01:00
Blaine Gardner 4742400a8c Merge pull request #7265 from leseb/toolbox-debug
ceph: ability to set cluster wide log level
2021-03-01 10:10:17 -07:00
Anmol Sachan 136231a71f ceph: fixed prometheus query to avoid many-to-many match error
Ceph_daemon label includes references to a replaced OSD that cause a prometheus
ruleset to fail due many-to-many match error. The changes to this PR filters the
extra matching ceph_daemon time-series.

Signed-off-by: Anmol Sachan <anmol13694@gmail.com>
2021-03-01 17:26:05 +05:30
Sébastien Han c54acf449e ceph: ability to set cluster wide log level
From inside the toolbox, the ceph debug level can now be changed for all
ceph logging subsystems, for instance, level 1 will be:

```
kubectl -n rook-ceph exec deploy/rook-ceph-tools -- set-ceph-debug-level 1
```

To reset to default values just run:

```
kubectl -n rook-ceph exec deploy/rook-ceph-tools -- set-ceph-debug-level default
```

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-03-01 12:27:29 +01:00
Sébastien Han bd9010e7fc Merge pull request #7296 from subhamkrai/fix-codegen
ci: fix codegen err
2021-03-01 11:35:06 +01:00
Sébastien Han 3e5592b366 Merge pull request #7323 from umangachapagain/monitoring
ceph: unmanage labels of monitoring resources
2021-03-01 10:46:48 +01:00
Umanga Chapagain 9d42eb1642 ceph: unmanage labels of monitoring resources
Do not reconcile ServiceMonitor/PrometheusRule on label updates.
This allows users to add custom labels which can be used by
custom Prometheus instances for monitoring.

Signed-off-by: Umanga Chapagain <chapagainumanga@gmail.com>
2021-03-01 14:21:48 +05:30
subhamkrai 9b6bf82925 ci: update checkout version
this commit update checkout version.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-03-01 10:30:00 +05:30
subhamkrai fd6f6d4953 ci: replace cd with working-directory
this commit replace `cd` with `working-directory`
in gh action.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-03-01 10:30:00 +05:30
subhamkrai afed5bf109 ci: fix codegen err
codegen is currently broken in master.
this commit fix the broken codegen by fixing
the correct working directory in gh action.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-03-01 10:29:26 +05:30
Blaine Gardner b239e56bac Merge pull request #7290 from BlaineEXE/remove-drive-group-support
ceph: remove driveGroup support
2021-02-25 19:11:43 -07:00
Blaine Gardner efa7d66d45 ceph: remove driveGroup support
Remove features and design that supports adding OSDs to Ceph clusters
via `spec:driveGroups`. Update the Ceph upgrade doc that informs users
who currently use Drive Groups (we believe there are none of these
users) how to migrate to using the `spec:storage` config.

Resolves https://github.com/rook/rook/issues/7275

Revert "ceph: fix drive group deployment failure"
This reverts commit 76f1d9944e.

Revert "ceph: osd: add drive groups spec to cluster CR"
This reverts commit 7117fc12b7.

Revert "design: ceph orchestrator module add/remove OSDs"
This reverts commit 178187d035.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-02-25 17:08:47 -07:00
Blaine Gardner bc2721c19f Merge pull request #7311 from BlaineEXE/use-go-test-V-flag
ceph: change osd on pvc unit test to use t.Log()
2021-02-25 14:16:53 -07:00
Travis Nielsen ade67eb7ce Merge pull request #7302 from BlaineEXE/update-to-ceph-15.2.9
ceph: update build and examples to use v15.2.9
2021-02-25 13:56:27 -07:00
Blaine Gardner d5983e8d4b ceph: change osd on pvc unit test to use t.Log()
Change the TestOSDsOnPVC unit test to use t.Log()/t.Logf() to avoid
having a special infof() function that was unnecessary since our unit
tests run with `go test -v` where the `-v` flag interleaves t.Log()
output.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-02-25 11:52:00 -07:00
Blaine Gardner 82941ff8fa Merge pull request #7304 from BlaineEXE/fix-flaky-pvc-unit-test
ceph: fix flaky OSD on PVC unit test
2021-02-25 11:25:29 -07:00
Travis Nielsen 65c410ee13 Merge pull request #7266 from rohan47/clean_terminating_pods
ceph: removed individual force delete pod code for mons and osds
2021-02-25 10:10:54 -07:00
Sébastien Han 447f9c97ff Merge pull request #7299 from jshen28/remove-generatekeyring-for-osd
ceph: remove unnecessary generate key for osd
2021-02-25 14:51:35 +01:00
Sébastien Han 0c4d6a7fa4 Merge pull request #7217 from aruniiird/external-add-standby-mgrs
ceph: Enable external resource script to collect active and standby mgrs
2021-02-25 10:28:32 +01:00
shenjiatong fb33d87d33 ceph: remove generateKeyring for osd
After adopting `ceph-volume`, secret key for
user osd.x will be generated by `ceph-volume` and
thus method `generateKeyring` is not necessary
anymore.

Executing ceph command takes
extra half of second to complete, executing it
in serial is rather expensive, remove it for better
performance.

Signed-off-by: shenjiatong <yshxxsjt715@gmail.com>
2021-02-25 08:21:08 +08:00
Blaine Gardner 98466d4706 ceph: fix flaky OSD on PVC unit test
This was a race condition where the test would sometimes finish before a
deferred watcher.Stop() command was called and sometimes would not.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-02-24 15:43:21 -07:00
Blaine Gardner 818342cbfb ceph: update build and examples to use v15.2.9
There are still references to v15.2.7 in integration tests to allow
testing OSDs on partitions.

The newest dated Ceph image is ceph/ceph:v15.2.9-20210224

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-02-24 15:15:26 -07:00
Arun Kumar Mohan bc4dd24306 ceph: making changes to fix CI test failures
Changed the random port creation's max value from 255 to 254, as the IP
with value 255 fails.
Re-raise/propagate the 'ExecutionFailureException' exception so that we
don't end-up in ZERO exit value.

Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-02-24 23:54:42 +05:30
Arun Kumar Mohan 72b88b4267 ceph: adding the test-data file into the image fs
Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-02-24 23:54:42 +05:30
Arun Kumar Mohan 5ce07b9559 ceph: fixed tests for standby mgr changes
Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-02-24 23:54:42 +05:30
Arun Kumar Mohan f68529f31f ceph: enable external resource script to collect active and standby mgrs
Now 'create-external-cluster-resources.py' script will add standby mgrs
along with the active mgr while providing the output.
'MonitoringEndpoint' data-key will contain a comma separated list of
active followed by standby mgrs' IP addresses.

Signed-off-by: Arun Kumar Mohan <amohan@redhat.com>
2021-02-24 23:54:42 +05:30