aboutsummaryrefslogtreecommitdiff
path: root/ansible/roles/ceph/tasks
AgeCommit message (Collapse)AuthorFilesLines
2016-11-15Remove Ansible from KollaSteven Dake14-612/+0
Change-Id: I5396e4b9927d3e65b6aa4185238a43a4765a996b
2016-11-14Use check_mode no instead of always_runJeffrey Zhang1-4/+4
Change-Id: If42f9ec1a2371982a47f7fe8269fe39d65c599cf Closes-Bug: #1640247
2016-11-03Move precheck into its own roleJeffrey Zhang1-0/+1
* Merge prechecks.yml and site.yml playbook * Create empty precheck.yml into all roles. Change-Id: I8a138558a26c0a2a66c5fd48ed37be657c99c1dd Implements: blueprint condition-pre-check
2016-09-27Remove do_reconfigure.yml file for all rolesJeffrey Zhang2-218/+213
do_reconfigure.yml is introduced to use serial directive. But we use it in wrong. Now serial has moved to playbook file. So it is time to remove the do_reconfigure.yml file Closes-Bug: #1628152 Change-Id: I8d42d27e6bc302a0e575b0353956eaef9b2ca9fd
2016-09-13Merge "Fix permissions of tmp files"Jenkins1-2/+2
2016-09-13Fix permissions of tmp filesChristian Berendt1-2/+2
When running kolla-ansible as non-root users the tmp files will be created with become user as owner and mode 0600. This way the user running kolla-ansible is not able to read the generated files. This is necessary because of the use of the lookup method, which will not run as become user. TrivialFix Change-Id: If86d114c05a9b2e7fa240718611d78e93100ebdf
2016-09-13Added serial option to site.yml.Mick Thompson2-4/+0
Useful for upgrade etc., which is preferablly done serially. Example usage: tools/kolla-ansible deploy OR tools/kolla-ansible upgrade Closes-Bug: #1576708 DocImpact Change-Id: I34b2e16f8ce53e472a4682a4738c4ac0f5abf00c
2016-08-29Add a check before wiping Ceph disks in bootstrapPaul Bourke1-0/+30
An unwitting user may apply the KOLLA_CEPH_OSD[_CACHE]_BOOTSTRAP label to a partition assuming it will only use that partition for Ceph, and end up wiping out their disk. This change adds a layer of checking to this scenario to try and help avoid a disaster scenario. Closes-Bug: 1599103 DocImpact Change-Id: Ibb9fb42f87a76bc02165ec0b93b60234bad8747a
2016-08-09Port with_ loop variable syntax to Ansbile 2Duong Ha-Quang2-16/+16
Migrate to full variable syntax in with_ loop instead of bare variables for: - ceph - ceilometer - glance - heat - horizon - keystone - mariadb - memcached - neutron - nova - rabbitmq Change-Id: Ib925b4ecea47ac758a77739c9c7e140f06933b08 Partial-Implements: blueprint ansible2
2016-07-10Use inventory_hostname for Ceph bootstrapPaul Bourke2-2/+2
The inventory_hostname is more reliable than ansible_hostname for the way we use it here. If the deploy node cannot resolve the hostname of a target node (the operator is using IP addresses in their inventory), the bootstrap will fail with: "Host: x.x.x.x, Task: ceph : Fetching Ceph keyrings, Status: unreachable, Message: SSH Error: data could not be sent to the remote host. Make sure this host can be reached over ssh" Closes-Bug: 1599138 Change-Id: Ic76e4baf8c642c59bbe81e6671ac97bcbb57d470
2016-07-07Read GPT label using sgdisk rather than udevStephen Hindle3-4/+4
The Ceph osd bootstrap/startup logic depends upon reading/writing partition names. Some older versions of udev have trouble reading these (/dev/disk/by-label is missing). To work around this, we shell out to sgdisk and scrape the partition name data directly. Co-authored-by: Paul Bourke <paul.bourke@oracle.com> Closes-Bug: 1585185 Change-Id: I362b3f8e91de79687fc84e256996fbcaf303b6af
2016-07-05Improve task names for CephPaul Bourke2-5/+5
The task names while bootstrapping Ceph OSDs and cache OSDs were identical making them harder to distinguish in the Ansible output. TrivialFix Change-Id: I0228221a09bdaaba46b6280b6e1be9920ad13598
2016-05-27Do not use bare variables in the ceph roleChristian Berendt3-8/+8
This will resolve the following deprecation warning: Using bare variables is deprecated. Update your playbooks so that the environment value uses the full variable syntax. This feature will be removed in a future release. Partial-bug: #1586404 Change-Id: I9086d3f9e7904836e72e6df2fefaa084e5229f7e
2016-05-23Make configurable the location where config files are mergedRyan Hallisey1-2/+2
An operator may want to specify the location of custom config files so that kolla can detect their location and merge them with the default configs generated. Partially implements: blueprint multi-project-config Change-Id: Ibfb38d07a36dfa7fe25381adc34cc1d3cbe7d1e1
2016-05-18Fixed typos in Ansible filesFrancesco Vollero1-1/+1
Files affected: - ansible/roles/ceph/tasks/bootstrap_mons.yml - ansible/roles/neutron/tasks/deploy.yml - ansible/roles/neutron/tasks/start.yml TrivialFix Change-Id: Ic4b624cfe0ae4d73b49e616319e9db2229931249
2016-05-05Make Heka collect Ceph logsMauricio Lima5-0/+6
Change-Id: Ibaa5f8ba600afafa111d2ef204ee9192b8babdfc Closes-Bug: #1570529
2016-05-03map the host localtime to the containerJeffrey Zhang5-1/+8
Closes-Bug: #1577148 Change-Id: I636cefc63cf532434a41af3898b63dffa711e280
2016-03-29Fix the Ceph reconfigureJeffrey Zhang1-58/+127
Closes-Bug: #1563251 Change-Id: I0072c92d6c8160f868b4ab0ec08b11541d3f3401
2016-03-19Allow external ceph journals and fix bootstrapSamYaple2-4/+16
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 osdSamYaple2-1/+4
Change-Id: I9c770a08219d2eead5ece8e3462157359cd920cb Partially-Implements: blueprint ceph-improvements
2016-03-17Allow per node configuration with augmentsSamYaple1-0/+1
This type of per node configuration is required to support things like availability zones for nova. As always, if this file doesnt exist it doesnt get used so this change is safe. TrivialFix Change-Id: Iff8172af522c2c96e5f2c173b24a5dfd4d522ed2
2016-03-09Remove storage_hostnameSamYaple3-2/+4
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-07Merge "Move hostname registration to common"Jenkins1-9/+0
2016-03-04Reconfigure ceph serviceVikram Hosakote2-0/+150
This patch set implements reconfiguring the ceph service. Change-Id: I904d5e4b33c82e20a8e7e84308b62573f59de714 Partially-implements: bp kolla-reconfig
2016-03-03Move hostname registration to commonSamYaple1-9/+0
The storage hostname is used in many conf files all over the place and should be registered upon each run for every service TrivialFix Change-Id: I1d5a20cb6d51cee9f529cf2e1fb144158f7718a9
2016-02-26Add upgrade play for cephSamYaple4-5/+16
Ceph is pretty easy to work with. Upgrade mons, then osds, then rgws We want to eventually make these serial values configurable, but for now due to cephs delicate distributed network nature it is safest to only run 1 change at a time. Change-Id: Icc721ab3651379c28fee853ca95f9e3ddf102998 Partially-Implements: blueprint upgrade-kolla Implements: blueprint upgrade-ceph
2016-02-25Merge "Add the default empty reconfigure.yml file to all roles"Jenkins1-0/+1
2016-02-25Add the default empty reconfigure.yml file to all rolesJeffrey Zhang1-0/+1
DocImpact Partially-implements: bp kolla-reconfig Change-Id: I9738e80960bcfbef18d1ef1b7942f81c45684e85
2016-02-24Switch ceph to use storage networkSamYaple3-11/+15
Ceph was not properly using storage network. TrivialFix Change-Id: Ibf3da5d19cd2ca874d251b455a7eb856154fc3f7
2016-02-02Rename kolla_ansible to kolla_toolboxSamYaple2-3/+3
This change is needed for clarity. We have a kolla-ansible script. We have a kolla-mesos repo. We plan to have a kolla-ansible repo. Already we have had far too much confusion about whether we are talking about the container or the project. Naming this kolla-toolbox eliminates all of that confusion and its probably a bit more accurate of a name too. Closes-Bug: #1541053 Change-Id: I8fd1f49d5a22b36ede5b10f46b9fe02ddda9007e
2016-01-29Merge "Update ceph-mon keyrings"Jenkins1-0/+1
2016-01-28Update all bootstraps to use LabelSamYaple2-0/+6
Add bootstrap label to all bootstrap containers to ensure that when the a new container is launched a difference is seen between it and the bootstrap container since we cannot rely on ENV variables for this. This only affects mariadb at this stage, but it is needed to ensure rabbitmq works when we switch to named volumes. Change-Id: Ia022af26212d2e5445c06149848831037a508407 Closes-Bug: #1538136
2016-01-28Update ceph-mon keyringsSamYaple1-0/+1
Since the fetch script fetched _all_ keyrings from the ceph-mon container, the ceph-mon container must contain all keyrings. This setup works AIO but was broken on multinode because the ceph-mon container did not have the radosgw keyring. This issue affects every multinode install regardless of using the radosgw or not. TrivialFix Change-Id: Ie416de1a5275862da6d77ef0dd174e85e499fc0f
2016-01-26Add stub upgrade.ymlMichal Jastrzebski1-0/+1
After introduction of pull action and turing every main.yml into {{action}}.yml we lost ability to perform upgrade Change-Id: Ie9fa2cd083b061033abc733fba53d54f9c55e393 Fixes-Bug: #1538210
2016-01-21Merge "Rename ceph-mon bootstrap container to avoid conflict"Jenkins1-4/+12
2016-01-19Merge "Fix ceph-mon existing cluster detection logic"Jenkins1-8/+7
2016-01-17Rename ceph-mon bootstrap container to avoid conflictSamYaple1-4/+12
Ceph-mon bootstrap container shares the same name of `ceph_mon` with real ceph-mon service. When bootstrapping, it will sleep forever for the purpose of distribute rings. Later on, when starting real `ceph_mon` service, kolla_docker module will take bootstrap container as real one because bootstrap container has a super set of env variables and kolla_docker doesn't do strict comparing of env variable items. This change follows the pattern of other bootstrap containers and rename to use `bootstrap_ceph_mon` to avoid conflict. Co-Authored-By: Sam Yaple <sam@yaple.net> Change-Id: I0082820900928c42f9cc778ffd705980fea9ad1c Closes-Bug: #1535140
2016-01-18Fix pid leftover after converting ceph to kolla_dockerQiu Yu1-1/+1
Related-Id: Icb1e81dc8acabe51740edc5658957022ddd13cd7 TrivialFix Change-Id: Icf7cca554a972370bb109530cce3a0d451c95ae1
2016-01-16Fix ceph-mon existing cluster detection logicQiu Yu1-8/+7
After moving from data container to named volumes, ceph monmap detection is broken. This change fix the logic by leverage kolla_docker's idempotency creating a named volume. Change-Id: Iabc2e2fe5f526e1a6fc2e1b1158d1702aaf4bdf9 Related-Bug: #1533368
2016-01-04Allow ceph role to pull imagesSamYaple3-20/+43
Change-Id: I7176bdc897e07f28684eedffb3c59e407eba322e Partially-Implements: blueprint pre-pull-images
2016-01-03Convert to named volumes instead of data containerSamYaple3-14/+8
This intentionally leaves out rabbitmq from this patchset. It will require additional work to remove its data container UpgradeImpact Partially-Implements: blueprint docker-named-volumes Change-Id: Id68b8e43a3c077ef4f4f4d67ea34d0692e66eef7
2015-12-31Convert Ceph to kolla_dockerSamYaple6-144/+57
Change-Id: Icb1e81dc8acabe51740edc5658957022ddd13cd7 Partially-Implements: blueprint kolla-docker-module
2015-12-29Add RadosGW containerAndrey Shestakov4-0/+38
Implements blueprint radosgw-container Change-Id: Idc88a67a0979be626d3eaa9b2b9a527010aa2006
2015-12-22Simplify config creationSamYaple1-27/+24
Convert config creation from a playbook to an action_plugin. This reduces the complexity and confusion while retaining the same augment structure and flexibility. This allows us to remove the 0-byte files as requirements. They will still be used if they are present (this means we require additional documentation around them). DocImpact Closes-Bug: #1528430 Change-Id: I2c789f6be9f195c7771ca093a6d59499564b4740
2015-11-20Switch find_disks to use a decent python libSam Yaple2-33/+47
Now /dev/loop devices will work! Change-Id: Icb8efe4f9bc3a21a72eb04bfd03452c26f13fd70 Closes-Bug: #1518438
2015-10-22Automate setting up a cache tierSam Yaple1-0/+50
Introduces a new flag to bootstrap cache devices DocImpact Partially-Implements: blueprint ceph-improvements Change-Id: I09b5a0d5c61b3465237e5f01dc10120725561cd3
2015-10-14Add tty to containersSam Yaple5-0/+6
sudo requires a tty to function by default on centos. Instead of tweaking the sudo conf we can just add a tty. This has the added advantage of making the containers more friendly if you have to `docker exec -i <container> bash` into them. Change-Id: If97a02ca1d37c243a787d98ade54bde8d641aecd backport: liberty Partially-Implements: blueprint functional-testing-gate
2015-10-13Bump ansible to 1.9.2Sam Yaple5-5/+0
Ansible 1.9.2 contains the fix needed for docker-py >1.2.0 This is needed for some gate reasons, but it is also a good version bump because it fixes a few issues with delegate_to. Change-Id: Iafbabb3b0232620849d0548c5cd9d8d316c2b0f3 backport: liberty Partially-Implements: blueprint functional-testing-gate
2015-10-06Bring Kolla inline with FHSSam Yaple4-4/+4
This brings Kolla images inline with FHS and should make finding locations of things more consistent and reliable with the linux world at large. Change-Id: Iece5b4da4bace0fb8b1f41a65ab2c852ec73e6f8 Closes-Bug: #1485742
2015-09-29Fix ceph after config-external removalSam Yaple4-4/+4
Change-Id: I46dc2f02dda8219878eee3755b0891f4c3450682 Partially-Implements: blueprint replace-config-external