summaryrefslogtreecommitdiff
path: root/docker/ceph/ceph-osd
AgeCommit message (Collapse)AuthorFilesLines
2019-10-16Add disk dev name check functionEddie Yen1-39/+20
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 (cherry picked from commit 1d5f753fb13bcc3659b4abd1bb768de8550a6dc4)
2019-08-15Add partition detection to fix osd initialization failurewangwei1-1/+29
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 (cherry picked from commit 342c9f0cd0dc4b97870dc40fab6c5a7d241b40ed)
2019-07-04Fixes ceph-osd deploys with loop devices.Dincer Celik1-1/+6
Change-Id: I98405e3fb32cbec2d9863817a913ed71c5597e15 Closes-Bug: #1834678 (cherry picked from commit f5ac80e332c2a057ee68d95983492bc7e1156b9a)
2019-06-06Ceph: Update to Nautilus on CentOS and OracleLinuxMark Goddard1-3/+20
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] https://github.com/ceph/ceph/commit/d6def8ba1126209f8dcb40e296977dc2b09a376e [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 (cherry picked from commit e0cae62c4aab001fa7b5cc324f178793f4e88f3c)
2019-04-19Fix the problem that the crush map is changedwangwei1-2/+6
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 (cherry picked from commit 3d4a7360a7c51a1f1c806a70026a7c8b20e20789)
2019-04-16Fix the problem of osd initialization failedwangwei1-0/+1
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 (cherry picked from commit ddab09fdd8d7c08ce8db70948ea12571bb4267a8)
2018-08-27Fix bluestore disk naming format in kollawangwei1-8/+8
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-06-20Allow Kolla Ceph to deploy bluestore OSD with 4 partitionstone.zhang1-20/+53
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-07Allow Kolla Ceph to deploy bluestore OSDs in KollaTone Zhang1-21/+89
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>
2017-05-03Override image's meta info.Jawon Choo1-1/+1
centos based images have wrong label info, these changes fix own image's name and build-date. Change-Id: I1d13f8f386c8db12b5fbe5f8ecbbf9e3fbb4ba1c Closes-Bug: #1680341
2017-04-20Use LABEL instead of MAINTAINER (deprecated) in all Dockerfile.j2Chen1-1/+1
Use LABEL instruction instead of MAINTAINER (deprecated) instruc- tion as suggested by Docker's official dockerfile guide. docs.docker.com/engine/reference/builder/#maintainer-deprecated Closes-Bug: #1683652 Change-Id: Ie87a1ddf31aefcd0b623fd2837d78de420e76898
2017-02-05Remove include_header and include_footer in all DockerfilesJeffrey Zhang1-1/+0
include_header and include_footer parameter is already removed, remove them in all Dockerfiles. Add missing footer block. Change-Id: I90da03eb9f95a3827361d5f5ede65fde7d6be2b3
2016-09-13Add header blocks to all DockerfilesPaul Bourke1-0/+2
Change needed to add header blocks to all Dockerfiles, similar to the base. Use case is to easily run something before packages are installed, e.g. to COPY a local rpm in that can be added to the package list. Change-Id: I1bbfdf0b762da0a392aa8bf47781315b45377bee Closes-Bug: 1618969
2016-08-08Customizations for CephEduardo Gonzalez1-0/+2
This patchset contains customization of Dockerfile of Ceph containers Change-Id: I20bc27f2c4c6025ea35c8b48c40aee9919553254 Partially-implements: blueprint third-party-plugin-support Signed-off-by: Eduardo Gonzalez <dabarren@gmail.com>
2016-06-29Use the disk size as the osd weight when osd_initial_weight is autoJeffrey Zhang1-0/+4
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-05-05Make Heka collect Ceph logsMauricio Lima1-0/+7
Change-Id: Ibaa5f8ba600afafa111d2ef204ee9192b8babdfc Closes-Bug: #1570529
2016-03-19Allow external ceph journals and fix bootstrapSamYaple1-20/+17
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-19Allow user to choose filesystem for osdSamYaple1-1/+8
Change-Id: I9c770a08219d2eead5ece8e3462157359cd920cb Partially-Implements: blueprint ceph-improvements
2016-03-09Remove storage_hostnameSamYaple1-3/+3
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-09Add ceph wait before bootstrapSamYaple1-2/+14
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
2015-10-20Fix typos in docstrings:malei1-1/+1
Change 'formating' to 'formatting' change 'seperate' to 'separate' Change-Id: I3093461c91cc71654c3ba86d7d662259262c09f5
2015-12-29Add RadosGW containerAndrey Shestakov1-0/+2
Implements blueprint radosgw-container Change-Id: Idc88a67a0979be626d3eaa9b2b9a527010aa2006
2015-11-23Remove hardcoded MAINTAINER in DockerfilesSwapnil Kulkarni (coolsvap)1-1/+1
Added new option in kolla-build.conf Change-Id: I45fe51966bcb59ea19d112281ba3d5a1ba091a56 Closes-Bug:#1514304
2015-10-22Automate setting up a cache tierSam Yaple1-3/+7
Introduces a new flag to bootstrap cache devices DocImpact Partially-Implements: blueprint ceph-improvements Change-Id: I09b5a0d5c61b3465237e5f01dc10120725561cd3
2015-10-06Common start.shSam Yaple2-9/+2
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-09-28Merge "Convert ceph to json"Jenkins2-25/+2
2015-09-28Merge "Implement a install_type and install_metatype"Jenkins1-1/+1
2015-09-28Convert ceph to jsonSam Yaple2-25/+2
Remove ceph debug info and unused partuuid Change-Id: Ifbe9890979ee666d7e43a04376f36c41ae2d8add Implements: blueprint ceph-container Partially-Implements: blueprint replace-config-external
2015-09-28Merge "remove set_configs"Jenkins1-4/+0
2015-09-28Merge "Remove quotes from subshell call in bash script"Jenkins1-3/+3
2015-09-28Implement a install_type and install_metatypeSteven Dake1-1/+1
This prepares for the RHEL OSP implementation by making the build tool convert all binary-* into an install_type of binary and * into an install_metatype variable substitution inside the Dockerfiles. Further binary-* is substituted as install_name to enable proper building only. Change-Id: Ib681b29176eb79a3cab12ec824313fdecb6e7a5f Partially-Implements: blueprint rhel-based-image-support
2015-09-28Remove quotes from subshell call in bash scriptZhao Lei1-3/+3
Always no quotes for $() statement. We don't need quotes to hold blanks in result: # i=$(echo 1 2 3) # echo $i 1 2 3 # These quotes can make something wrong in some case: # i=$(echo '!') # # i="$(echo '!')" -bash: !: event not found # No real problem for current code, only to use a better code style. Change-Id: I06520f4b11ea6b56c4e73049b6f38bfc62fe1392 Closes-Bug: #1499716 Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
2015-09-27remove set_configsSam Yaple1-4/+0
Change-Id: I9bb0a1fac63cc326234b0f06b1e56b43e0753279 Partially-Implements: blueprint replace-config-external
2015-09-25Fix removal of config-externalSam Yaple1-1/+0
I removed the files but not the COPY commands thus breaking all of Kolla Change-Id: I37d3e0cb94a1ecc12971f485f953310ba8fee53c Partially-Implements: blueprint replace-config-external
2015-09-24Ceph Ansible supportSam Yaple2-11/+41
Add the initial playbooks for making ceph and ansible play nice together. This does not include all of the openstack changes to make things like nova, glance, and cinder work. This will simply build the ceph cluster and thats it. The next patchset will do the OpenStack integration. DocImpact Change-Id: Ie1697dde5f92e833652933a80f0004f31b641330 Partially-Implements: blueprint ceph-container
2015-08-30Ceph containerrthallisey3-0/+52
Running ceph in a container requires 2 pieces: - ceph-mon - objectstorage-daemon (osd) Co-Authored-By: Sam Yaple <sam@yaple.net> Change-Id: I33e5baf72e4bc493889da0d796041acfd1a2cad3 Partially-Implements: blueprint ceph-container