Commit Graph

19 Commits

Author SHA1 Message Date
Michal Nasiadka abce4d5398 Remove kolla Ceph container images
This change removes ceph* Dockerfiles and relevant kolla python
code bits.

Kolla-Ansible part has been removed, and K-A was the only consumer.

Change-Id: I9568261fdbbe4b9156d0e07c414ec911ca2e8557
2020-02-14 08:52:23 +00:00
Eddie Yen 1d5f753fb1 Add disk dev name check function
This patch will add new function in extend_start.sh for OSD
creation. Not only support loop device but also others that
disk dev layout is end with numbers.

Change-Id: Iee5f8b8581d70166de6eba1bdc9e42766fe8cb48
Closes-Bug: #1847014
2019-10-14 11:00:48 +00:00
wangwei 342c9f0cd0 Add partition detection to fix osd initialization failure
The changes in the following commit did not completely solve the
problem of osd initialization failure:
https://review.opendev.org/652612

In order to solve this problem, the partprobe command consistent with
ceph-disk is added, and then a loop is added to detect the partition,
which is acquired every 1s. When the partition appears, the osd
initialization is continued.

Change-Id: I0ca255c6358132d9e3acfa6b610b70a78756512c
Closes-bug: #1824787
2019-07-10 18:10:53 +09:00
Dincer Celik f5ac80e332 Fixes ceph-osd deploys with loop devices.
Change-Id: I98405e3fb32cbec2d9863817a913ed71c5597e15
Closes-Bug: #1834678
2019-06-28 21:04:45 +03:00
Mark Goddard e0cae62c4a Ceph: Update to Nautilus on CentOS and OracleLinux
The CentOS Stein OpenStack distribution depends on the Ceph Nautilus
release, while Kolla currently deploys Luminous on CentOS.

This change switches CentOS and OracleLinux builds to use Ceph Nautilus.

Support for auth UID has been removed in the Nautilus release [1][2], so
we have removed the --set-uid argument from calls to ceph-authtool.

Also ceph-osd bootstrap mode fails when no mon config is provided, so
we added --no-mon-config (mon config is injected later after bootstrap).

Due to ceph-nfs build issues (ceph upstream nfs-ganesha rpms relied on older
version of userspace-rcu, than CentOS Storage SIG packages) we need to move
to ceph upstream rpm repos.

[1] d6def8ba11
[2] http://docs.ceph.com/docs/master/releases/nautilus/

Co-Authored-By: Michal Nasiadka <michal.nasiadka@nokia.com>

Change-Id: I000398f587c5f4d6cc8995e34e162eebc77bc3e3
Implements: blueprint centos-ceph-nautilus
2019-05-31 18:16:57 +00:00
wangwei ddab09fdd8 Fix the problem of osd initialization failed
When deploying osd, if the user does not use the extra block
partition, the kolla will automatically partition the disk and then
clean up the data on the disk partition. Sometimes the disk partition
will not be updated, there will be an error not finding the partition.

This commit fixes the problem.

Change-Id: I14708f38614dcb75268c2f460ae3d921748c2d10
Closes-bug: #1824787
2019-04-15 19:13:47 +09:00
wangwei 3d4a7360a7 Fix the problem that the crush map is changed
When deploying ceph osd with kolla, each osd deployment will move the
host bucket to default in the crush map.

If we adjust the crush map, we have to re-adjust the crush map after
adding osd or fixing osd.
This commit fixes this problem.

Change-Id: Ifdc3a1fd5fe37da529b2aee9811b12f744cff3bf
Closes-bug: #1821681
2019-03-27 10:41:14 +09:00
wangwei 0f14b3d7e0 Fix bluestore disk naming format in kolla
The current bluestore disk label naming is inconsistent with the
filestore. The filestore naming format is that the disk prefixes
belonging to the same osd are the same and the suffixes are
different.

This patch keeps the bluestore's disk naming as well.

Change-Id: I090cf055ebedc555b5ada35e140b7a7bb2a4cf8f
2018-08-27 16:11:08 +09:00
tone.zhang 7a93e1451a Allow Kolla Ceph to deploy bluestore OSD with 4 partitions
Enhance the deployment of Kolla-Ceph bluestore OSD.

Deploy bluestore OSD including up to 4 partitions:
* one partition is for bluestore OSD information
* one partition is for bluestore block
* one partition is for bluestore block.wal
* one partition is for bluestore block.db

Deploy bluestore OSD deployment with LOOP devices.

Partially-Implements: blueprint kolla-ceph-bluestore

Change-Id: I00eaa600a5e9ad4c1ebca2eeb523bca3d7a25128
Signed-off-by: tone.zhang <tone.zhang@arm.com>
2018-06-20 14:16:30 +08:00
Tone Zhang 291ba252a5 Allow Kolla Ceph to deploy bluestore OSDs in Kolla
Support Kolla Ceph to deploy blustore OSDs. With the patch, Kolla
Ceph can deploy bluestore OSDs on ONE, TWO or THREE storage
devices.

Before deploy bluestore OSD, please prepare devices. The detailed
Please refer to [1] for devices initialization.

extend_start.sh: initialize and start bluestore OSD

find_disk.py: search the devices for bluestore OSD

[1]: specs/kolla-ceph-bluestore.rst

Partially-Implements: blueprint kolla-ceph-bluestore

Change-Id: I832f490de63e1aeb68814697cda610a51b622c1f
Signed-off-by: Tone Zhang <tone.zhang@arm.com>
2018-06-07 13:35:46 +08:00
Jeffrey Zhang d4269334dd Use the disk size as the osd weight when osd_initial_weight is auto
In most of case, the disks used by ceph have different size. Use the
default value 1 may block the ceph when one disk is full. Use the disk
size as osd weight will more reasonally.

TrivialFix

Change-Id: Ib875c7289188cbb9380355baf0c8048f1eb09332
2016-06-29 23:14:51 +08:00
Mauricio Lima 1a2fe93a95 Make Heka collect Ceph logs
Change-Id: Ibaa5f8ba600afafa111d2ef204ee9192b8babdfc
Closes-Bug: #1570529
2016-05-05 13:26:44 -04:00
SamYaple 5250a00781 Allow external ceph journals and fix bootstrap
This allows us to specify external journals for osds which can greatly
improve performance when the external journals are on the solid-state
drives.

The new lookup and startup methods fix the previous races we had
preventing osds from being created properly.

This retains the same functionality as before and is completely
compatible with the previous method and labels, however this does set
new labels for all new bootstrap OSDs. This was due to a limitation
in the length of the name of a GPT partition.

Closes-Bug: #1558853
DocImpact
Partially-Implements: blueprint ceph-improvements
Change-Id: I61fd10cb35c67dabc53bd82270f26909ef51fc38
2016-03-19 22:36:30 +00:00
SamYaple 6d0cd535d3 Allow user to choose filesystem for osd
Change-Id: I9c770a08219d2eead5ece8e3462157359cd920cb
Partially-Implements: blueprint ceph-improvements
2016-03-19 22:36:30 +00:00
SamYaple 7b6fbdf41d Remove storage_hostname
This was an attempt to get storage_interface to work properly but that
work will not be completed and functional this cycle. There are design
topics that need to be discussed about it that were brought to light
by the RAX gate failing for it.

TrivialFix

Change-Id: I65579f9e0e0dcf3fa51c0ea031ff474145457c40
2016-03-09 12:08:15 +00:00
SamYaple 3b65e49930 Add ceph wait before bootstrap
This will make sure ceph has a quorum and the cluster is functional
before attempting to use it. We also make sure udev has time to create
its links by looping a few times. This resolves the races found in the
bootstrap process

TrivialFix

Change-Id: Ia4624916feb5c80b2a067e5a62c176c1a5dea460
2016-03-09 11:55:39 +00:00
malei bdda9e40ea Fix typos in docstrings:
Change 'formating' to 'formatting'
change 'seperate' to 'separate'

Change-Id: I3093461c91cc71654c3ba86d7d662259262c09f5
2015-10-20 17:23:05 +08:00
Sam Yaple b27880aa77 Automate setting up a cache tier
Introduces a new flag to bootstrap cache devices

DocImpact
Partially-Implements: blueprint ceph-improvements

Change-Id: I09b5a0d5c61b3465237e5f01dc10120725561cd3
2015-10-22 10:51:44 +00:00
Sam Yaple cb4e875ae1 Common start.sh
The majority of the start.sh code is identical. This removes that
duplicate code while still maintaining the ability to call code in a
specific container.

The start.sh is moved into /usr/local/bin/kolla_start in the container

The extend_start.sh script is called by the kolla_start script at the
location /usr/local/bin/kolla_extend_start . It always exists because
we create a noop kolla_extend_start in the base directory. We override
it with extend_start.sh in a specific image should we need to.

Of note, the neutron-agents container is exempt from this new
structure due to it being a fat container.

Additionally, we fix the inconsistent permissions throughout. 644 for
repo files and the scripts are set to 755 via a Docker RUN command to
ensure someones local perm change won't break upstream containers.

Change-Id: I7da8d19965463ad30ee522a71183e3f092e0d6ad
Closes-Bug: #1501295
2015-10-06 03:30:26 +00:00