Commit Graph
7961 Commits
Author SHA1 Message Date
Travis Nielsen 5bcfb7205f Merge pull request #3787 from Madhu-1/make-plugin-configurable
configure cephfs  and rbd servers
2019-09-06 11:05:10 -06:00
Blaine Gardner cb3107a303 Merge pull request #3775 from SUSE/lower-builtin-osd-mem-requests
Ceph osd: lower OSD pod minimum mem to 2Gb
2019-09-06 10:50:12 -06:00
Travis Nielsen 7781a443e3 Merge pull request #3797 from travisn/rename-build-fix
Fix build break from bad merge with method rename
2019-09-06 10:36:26 -06:00
travisn 8d89724e80 fix build break from bad merge with method rename
Signed-off-by: travisn <tnielsen@redhat.com>
2019-09-06 10:15:23 -06:00
Alexander Trost 10f17bc1e0 Merge pull request #3791 from ashishranjan738/osdpanic
fix(osd prepare): osd prepare job getting into panic state
2019-09-06 17:38:13 +02:00
Dmitry Yusupov 91ed971b58 Merge pull request #3785 from dyusupov/master
support for mdpsize
2019-09-06 08:33:12 -07:00
Travis Nielsen 585d7a963d Merge pull request #3759 from krig/typo-1
Tests: Fix typo, defintion -> definition
2019-09-06 08:43:38 -06:00
Blaine Gardner 3c637a8e60 Merge pull request #3784 from travisn/helm-bucket-rbac
Add the rbac to the helm chart for bucket provisioning
2019-09-06 08:29:56 -06:00
Travis Nielsen cb5143555d Merge pull request #3779 from sp98/fix-osd-failure-on-pvc
fix random OSD daemon pod failures when running OSD on PVC
2019-09-06 06:59:57 -06:00
Ashish Ranjan f16c8dc060 fix(osd prepare): osd prepare job getting into panic state
Osd pods getting into panic state due to index out of range error.

logs of osd prepare job:

```
[aranjan@localhost:~]$ oc logs -f rook-ceph-osd-prepare-set1-0-data-6f2nh-zh4zl
2019-09-06 07:48:11.448085 I | cephcmd: desired devices to configure osds: [{Name:/mnt/set1-0-data-6f2nh OSDsPerDevice:1 MetadataDevice: DatabaseSizeMB:0 DeviceClass: IsFilter:false}]
2019-09-06 07:48:11.449841 I | rookcmd: starting Rook v1.0.0-623.gc18d575c.dirty with arguments '/rook/rook ceph osd provision'
2019-09-06 07:48:11.449866 I | rookcmd: flag values: --cluster-id=308f232a-d07a-11e9-96ba-0adfe2bb9bfc, --data-device-filter=, --data-devices=/mnt/set1-0-data-6f2nh, --data-directories=, --encrypted-device=false, --force-format=false, --
help=false, --location=, --log-flush-frequency=5s, --log-level=INFO, --metadata-device=, --node-name=set1-0-data-6f2nh, --operator-image=, --osd-database-size=0, --osd-journal-size=5120, --osd-store=, --osd-wal-size=576, --osds-per-devic
e=1, --pvc-backed-osd=true, --service-account=
2019-09-06 07:48:11.449875 I | op-mon: parsing mon endpoints: a=172.30.150.154:6789
2019-09-06 07:48:11.470058 I | cephconfig: writing config file /var/lib/rook/rook-ceph/rook-ceph.config
2019-09-06 07:48:11.470797 I | cephconfig: generated admin config in /var/lib/rook/rook-ceph
2019-09-06 07:48:11.470989 I | cephosd: discovering hardware
2019-09-06 07:48:11.471030 I | exec: Running command: lsblk /mnt/set1-0-data-6f2nh --bytes --nodeps --pairs --output SIZE,ROTA,RO,TYPE,PKNAME
2019-09-06 07:48:11.473887 I | exec: Running command: sgdisk --print /mnt/set1-0-data-6f2nh
2019-09-06 07:48:11.476048 I | cephosd: creating and starting the osds
2019-09-06 07:48:11.476070 I | exec: Running command: lsblk /mnt/set1-0-data-6f2nh --bytes --pairs --output NAME,SIZE,TYPE,PKNAME
2019-09-06 07:48:11.478030 I | sys: Output: NAME="xvdbg" SIZE="10737418240" TYPE="disk" PKNAME=""
2019-09-06 07:48:11.478056 I | cephosd: /mnt/set1-0-data-6f2nh found in the desired devices
2019-09-06 07:48:11.488231 I | cephosd: configuring osd devices: {"Entries":{"/mnt/set1-0-data-6f2nh":{"Data":-1,"Metadata":null,"Config":{"Name":"/mnt/set1-0-data-6f2nh","OSDsPerDevice":1,"MetadataDevice":"","DatabaseSizeMB":0,"DeviceCl
ass":"","IsFilter":false},"LegacyPartitionsFound":false}}}
2019-09-06 07:48:11.492191 I | cephosd: device /mnt/set1-0-data-6f2nh to be configured by ceph-volume
2019-09-06 07:48:11.492213 I | cephosd: 0/0 pre-ceph-volume osd devices succeeded on this node
2019-09-06 07:48:11.492399 I | exec: Running command: ceph auth get-or-create-key client.bootstrap-osd mon allow profile bootstrap-osd --connect-timeout=15 --cluster=rook-ceph --conf=/var/lib/rook/rook-ceph/rook-ceph.config --keyring=/va
r/lib/rook/rook-ceph/client.admin.keyring --format json --out-file /tmp/973674470
2019-09-06 07:48:12.020858 I | cephosd: Successfully updated lvm config file
2019-09-06 07:48:12.020894 I | cephosd: configuring new device /mnt/set1-0-data-6f2nh
2019-09-06 07:48:12.020908 I | exec: Running command: stdbuf -oL ceph-volume lvm prepare --data /mnt/set1-0-data-6f2nh
2019-09-06 07:48:55.172366 I | cephosd:
panic: runtime error: index out of range

goroutine 1 [running]:
github.com/rook/rook/pkg/daemon/ceph/osd.getLVPath(0x0, 0x0, 0x1e3c60d, 0x2)
        /home/aranjan/Project/go/src/github.com/rook/rook/pkg/daemon/ceph/osd/volume.go:128 +0x2fd
github.com/rook/rook/pkg/daemon/ceph/osd.(*OsdAgent).initializeBlockPVC(0xc000829c30, 0xc00072e1e0, 0xc000736e70, 0x1e4927d, 0xd, 0x0, 0x0)
        /home/aranjan/Project/go/src/github.com/rook/rook/pkg/daemon/ceph/osd/volume.go:108 +0x50b
github.com/rook/rook/pkg/daemon/ceph/osd.(*OsdAgent).configureCVDevices(0xc000829c30, 0xc00072e1e0, 0xc000736e70, 0x38, 0xc000829310, 0x2, 0x2, 0x0)
        /home/aranjan/Project/go/src/github.com/rook/rook/pkg/daemon/ceph/osd/volume.go:70 +0x33a
github.com/rook/rook/pkg/daemon/ceph/osd.(*OsdAgent).configureDevices(0xc000829c30, 0xc00072e1e0, 0xc0000bc370, 0x1c, 0xc0008296e8, 0x1, 0x1, 0xd)
        /home/aranjan/Project/go/src/github.com/rook/rook/pkg/daemon/ceph/osd/agent.go:213 +0x97d
github.com/rook/rook/pkg/daemon/ceph/osd.Provision(0xc00072e1e0, 0xc000829c30, 0xc0000560d0, 0x24)
        /home/aranjan/Project/go/src/github.com/rook/rook/pkg/daemon/ceph/osd/daemon.go:166 +0xeb2
github.com/rook/rook/cmd/rook/ceph.prepareOSD(0x359be60, 0x35cd220, 0x0, 0x0, 0x0, 0x0)
        /home/aranjan/Project/go/src/github.com/rook/rook/cmd/rook/ceph/osd.go:252 +0x838
github.com/rook/rook/vendor/github.com/spf13/cobra.(*Command).execute(0x359be60, 0x35cd220, 0x0, 0x0, 0x359be60, 0x35cd220)
        /home/aranjan/Project/go/src/github.com/rook/rook/vendor/github.com/spf13/cobra/command.go:762 +0x465
github.com/rook/rook/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0x359e200, 0xc0006eff30, 0xb, 0xb)
        /home/aranjan/Project/go/src/github.com/rook/rook/vendor/github.com/spf13/cobra/command.go:852 +0x2ec
github.com/rook/rook/vendor/github.com/spf13/cobra.(*Command).Execute(...)
        /home/aranjan/Project/go/src/github.com/rook/rook/vendor/github.com/spf13/cobra/command.go:800
main.main()
        /home/aranjan/Project/go/src/github.com/rook/rook/cmd/rook/main.go:35 +0x12e
```

Signed-off-by: Ashish Ranjan <aranjan@redhat.com>
2019-09-06 13:40:22 +05:30
Umanga Chapagain 3f2c9f4e79 ignore updates on nbd device
- adds regex to ignore updates on nbd device
  similar to 'rbd' and 'dm'

Signed-off-by: Umanga Chapagain <chapagainumanga@gmail.com>
2019-09-06 12:00:51 +05:30
Umanga Chapagain 0caedcf4d6 updating additionalPrinterColumns for CephFS
- Renamed MDSCOUNT to ActiveMDS & updated Description
  This was to remove the confusion about what the count
  is actually about (Active or Active+Standby).

Signed-off-by: Umanga Chapagain <chapagainumanga@gmail.com>
2019-09-06 11:38:33 +05:30
Madhu Rajanna f776671e3d configure cephfs and rbd servers
https://github.com/ceph/ceph-csi/pull/550 made
the servers configurable to avoid noise
on the GRPC metrics and also to avoid
unnecessary server starting

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-09-06 09:48:29 +05:30
Rohan CJ 7d3f313cab clusterdisruption: Bypass crush location cache if active failureDomain is not populated
Signed-off-by: Rohan CJ <rohantmp@gmail.com>
2019-09-06 09:43:48 +05:30
Rohan CJ e1bd6595d7 Fix: only schedule node drain canaries on nodes with osds
Signed-off-by: Rohan CJ <rohantmp@gmail.com>
2019-09-06 09:41:56 +05:30
Dmitry Yusupov 2282e956d9 support for mdpsize
Signed-off-by: Dmitry Yusupov <dmitry.yusupov@nexenta.com>
2019-09-05 18:13:56 -07:00
Dmitry Yusupov 6fcd2c21fa Merge pull request #3774 from dyusupov/master
ISGW doesnt need large chunk cache
2019-09-05 18:12:38 -07:00
Blaine Gardner 6ff70be8f0 Ceph osd: lower OSD pod minimum mem to 2Gb
Some users have reported issues running Ceph OSDs in environments
without beefy systems. After consulting with Ceph experts, we believe
2Gb is still a safe minimum for Ceph for users with more modest systems
that won't result in disfunction in Ceph.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-09-05 15:24:33 -06:00
Travis Nielsen a777c94a08 Merge pull request #3778 from rohantmp/managedPDB
Reflect pdb rbac in helm template and ceph_manifests.
2019-09-05 14:10:40 -06:00
travisn 1fcf100790 ceph: add the rbac to the helm chart for bucket provisioning
The bucket provisioning feature was merged without the rbac
for the helm chart. This brings the helm chart back into
parity with common.yaml and avoid seeing errors in the operator
log about attempting to watch the bucket provisioning CR.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-09-05 14:07:58 -06:00
Blaine Gardner 2c4aec93ff Merge pull request #3767 from SUSE/disable-crd-config
Ceph: remove configOverrides from CRD
2019-09-05 13:59:23 -06:00
Blaine Gardner 1d47c03534 Merge pull request #3417 from nabokihms/dynamic-flexvolume-resize
ceph: Add dynamic flexvolume expansion
2019-09-05 12:52:14 -06:00
Blaine Gardner 3a243d2978 ceph: remove configOverride functionality from CRD
After further consideration and working with the feature for a few
weeks, the `configOverride` functionality seems to be more complexity
than is worth it for the expected benefit. Users still have the most
preferred option of setting configs in Ceph's config database using
`ceph cofig set` or the dashboard, and the override ConfigMap still
exists for fallback scenarios. The config database can still be used
by Rook for setting necessary configs, but the user has no way of
telling Rook to do so.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-09-05 12:30:56 -06:00
Santosh Pillai ead0653068 fix random OSD daemon pod failures when running OSD on PVC
OSD pods when running on PVC fail randomly due to some race condition:
 - OSD daemon pod was activating the volume group using vgchange -an without any volume group name.
 - This caused the pods to fail randomly when number of OSDs is more, say greater than 10.
 - This fix adds Volume group name while activating/deactivating volume groups to fix this

Signed-off-by: Santosh Pillai <sapillai@redhat.com>
2019-09-05 20:34:03 +05:30
Madhu Rajanna b64768ee39 Use release ceph-csi version
replace canary tag with release ceph-csi
v1.2.0 tag

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-09-05 16:10:30 +05:30
Sébastien Han 41fec6bedd Merge pull request #3770 from leseb/use-14.2.3
ceph: bump to 14.2.3
2019-09-05 09:45:49 +02:00
Sébastien Han a5567f8ad4 Merge pull request #3739 from leseb/external-cluster-upgrades
ceph: external be a bit more flexible on upgrade
2019-09-05 09:45:42 +02:00
Rohan CJ ceeace5fd4 Reflect permissions required for managed disruption in the helm template and ceph_manifests
Signed-off-by: Rohan CJ <rohantmp@gmail.com>
2019-09-05 08:37:02 +05:30
travisn 533ac5b693 ceph: refactor version detection of external cluster
Reduce the duplication of detecting the version of the external cluster
by refactoring to a single method that retrieves and validates the
version

Signed-off-by: travisn <tnielsen@redhat.com>
2019-09-04 19:02:08 -06:00
Sébastien Han bc1a5a9037 ceph: external create 'rook-config-override' cm
This configmap is needed by RGW and MDS pods, if it's not present we
won't be able to start any of them.

Signed-off-by: Sébastien Han <seb@redhat.com>
2019-09-04 19:02:08 -06:00
Sébastien Han 9c1bb7c62d ceph: external be a bit more flexible on upgrade
Add various upgrade tests so that the local cluster does not fail if
an upgrade is available on the external cluster.

Also, add better upgrades handling on update and on add. We now rely as
much as possible on a unique function that works both local and external
cluster 'detectAndValidateCephVersion()'. So the code will act the same
way wether a CR update is triggered or if the operator is restarted.

The health check now reports any topology changes on the external
cluster such as odd number of mons and low number. It will also detect
if the external cluster has been upgraded and will log that information,
  helping the admin in his/her decision to trigger an image upgrade.

Finally, we prevent the creation of new CRs if the external cluster
version has a higher major number than the local one.

Closes: https://github.com/rook/rook/issues/3731
Signed-off-by: Sébastien Han <seb@redhat.com>
2019-09-04 19:02:08 -06:00
Sébastien Han aa0e522524 ceph: remove dead code
These functions were not used anywhere, so removing them.

Signed-off-by: Sébastien Han <seb@redhat.com>
2019-09-04 19:02:08 -06:00
Maksim Nabokikh 179e1a310d ceph: Add dynamic flexvolume expansion
Allow to dynamic resize of rook volumes

Signed-off-by: Maksim Nabokikh <maksim.nabokikh@flant.com>
2019-09-05 02:40:22 +04:00
Dmitry Yusupov 175e5a7888 ISGW doesnt need large chunk cache
Signed-off-by: Dmitry Yusupov <dmitry.yusupov@nexenta.com>
2019-09-04 15:04:45 -07:00
Sébastien Han 3390a85404 ceph: bump to 14.2.3
Let's use the latest minor release of Ceph 14.2.3.

Signed-off-by: Sébastien Han <seb@redhat.com>
2019-09-04 23:14:28 +02:00
Travis Nielsen eabd48d0f1 Merge pull request #3768 from Madhu-1/remove-attacher-sa
Remove attacher service account
2019-09-04 08:20:38 -06:00
Madhu Rajanna 4ab6e9a191 Remove attacher service account
attacher is part of provisioner deployment,
so provisioner service account will be used
for provisisoner deployments, no need of
attacher service account.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2019-09-04 09:39:33 +05:30
Blaine Gardner 7eef87fbcb Merge pull request #3732 from SUSE/upgrade-docs
Ceph: update upgrade docs for v1.1 release
2019-09-03 12:36:43 -06:00
Travis Nielsen 1dcaecab0f Merge pull request #3758 from krig/remove-outdated-gitignore
Remove outdated cluster/charts/rook-ceph/.gitignore
2019-09-03 12:09:59 -06:00
Travis Nielsen fb26aa10a0 Merge pull request #3747 from k0da/release_bugfix
bugfix: copy helm chart aside for packaging
2019-09-03 12:07:52 -06:00
Blaine Gardner a4bb5e41af Ceph: update upgrade docs for v1.1 release
Update docs and manifests for updating from the Rook v1.0 to v1.1
release.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2019-09-03 11:25:26 -06:00
Kristoffer Grönlund e28eeb7551 Tests: Fix typo, defintion -> definition
Signed-off-by: Kristoffer Grönlund <kgronlund@suse.com>
2019-09-03 17:36:20 +02:00
Kristoffer Grönlund 3c41d7e7d6 Remove outdated cluster/charts/rook-ceph/.gitignore
Since values.yaml is no longer generated from a template
thanks to #3701, the .gitignore file shouldn't be needed.

Signed-off-by: Kristoffer Grönlund <kgronlund@suse.com>
2019-09-03 16:18:45 +02:00
Sébastien Han e7758adfc1 Merge pull request #3738 from leseb/lvm-option
ceph: osd lvm flag
2019-09-02 14:08:34 +02:00
Dinar Valeev f81145a283 bugfix: copy helm chart aside for packaging
In order to not leave any modified file after release, lets put
chart tree aside and run sed logic on it.

Signed-off-by: Dinar Valeev <k0da@opensuse.org>
2019-09-01 19:12:26 +02:00
Travis Nielsen 5c59a1e411 Merge pull request #3742 from travisn/debug-logging
Clean up verbose Ceph logging
v1.1.0-beta.0
2019-08-30 16:44:02 -06:00
travisn a9deac7d19 ceph: clean up verbose logging
The log messages for orchestrations being skipped due to nodes still
being schedulable or unschedulable is filling the logs and not necessary.
The log message for reconciling is now debug, and also fixed another
formatting log message.

Signed-off-by: travisn <tnielsen@redhat.com>
2019-08-30 15:01:35 -06:00
Dmitry Yusupov 09c4858e22 Merge pull request #3741 from sabbot/operator-version-fix
Edgefs:#3735 fix CRD's version to v1
2019-08-30 09:33:47 -07:00
Anton Skriptsov b69c5147d0 Edgefs:#3735 fix CRD's version to v1
Signed-off-by: Anton Skriptsov <sabbotagge@gmail.com>
2019-08-30 08:56:31 -07:00
Sébastien Han 1393b1af3c ceph: osd lvm flag
udev is not running in the container so lvm might be stuck requesting lvm
devices. So let's not talk to udev to get lvm devices.

Signed-off-by: Sébastien Han <seb@redhat.com>
2019-08-30 17:39:49 +02:00