22 Commits

Author SHA1 Message Date
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
Andrey Shestakov
1a368c9134 Add RadosGW container
Implements blueprint radosgw-container

Change-Id: Idc88a67a0979be626d3eaa9b2b9a527010aa2006
2015-12-29 12:49:03 +00:00
Swapnil Kulkarni (coolsvap)
59a1c8b9fb Remove hardcoded MAINTAINER in Dockerfiles
Added new option in kolla-build.conf

Change-Id: I45fe51966bcb59ea19d112281ba3d5a1ba091a56
Closes-Bug:#1514304
2015-11-23 11:03:47 +00: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
Jenkins
e69571eeb3 Merge "Convert ceph to json" 2015-09-28 11:26:26 +00:00
Jenkins
6a622ec82c Merge "Implement a install_type and install_metatype" 2015-09-28 10:49:53 +00:00
Sam Yaple
83d195249e Convert ceph to json
Remove ceph debug info and unused partuuid

Change-Id: Ifbe9890979ee666d7e43a04376f36c41ae2d8add
Implements: blueprint ceph-container
Partially-Implements: blueprint replace-config-external
2015-09-28 10:35:52 +00:00
Jenkins
aadbbcbee0 Merge "remove set_configs" 2015-09-28 10:34:58 +00:00
Jenkins
762b24cc1a Merge "Remove quotes from subshell call in bash script" 2015-09-28 10:26:38 +00:00
Steven Dake
0e99b69de4 Implement a install_type and install_metatype
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-28 03:16:48 -07:00
Zhao Lei
c62ddbfa97 Remove quotes from subshell call in bash script
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-28 17:50:36 +08:00
Sam Yaple
160f1cc011 remove set_configs
Change-Id: I9bb0a1fac63cc326234b0f06b1e56b43e0753279
Partially-Implements: blueprint replace-config-external
2015-09-27 13:44:50 +00:00
Sam Yaple
a1b0518b9a Fix removal of config-external
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-25 20:08:40 +00:00
Sam Yaple
c86e66c9dc Ceph Ansible support
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-09-24 12:33:43 +00:00
rthallisey
63a7d01639 Ceph container
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
2015-08-30 07:54:01 +00:00