]> git.apps.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
Removing creating symbolic links and fixing systemctl enable not working on CoreOS...
authorpprokop <piotr.prokop@intel.com>
Tue, 28 Jun 2016 11:48:46 +0000 (13:48 +0200)
committerpprokop <piotr.prokop@intel.com>
Wed, 13 Jul 2016 08:22:15 +0000 (10:22 +0200)
roles/ceph-osd/tasks/docker/start_docker_osd.yml

index bc214eee793b6d8c97ffe665e0a0f70a1a6c068e..fc3d6e2ebc961caea7510c9b161392ef7d49efd0 100644 (file)
     - not osd_containerized_deployment_with_kv
 
 - name: prepare ceph osd disk with kv_store
-  docker:
-    image: "{{ ceph_osd_docker_username }}/{{ ceph_osd_docker_imagename }}:{{ ceph_osd_docker_image_tag }}"
-    name: "{{ ansible_hostname }}-osd-prepare-{{ item.0 | regex_replace('/', '') }}"
-    net: host
-    pid: host
-    state: running
-    privileged: yes
-    volumes: "{{ item.0 }}:{{ item.0 }}"
-    env: "OSD_DEVICE={{ item.0 }},KV_TYPE={{kv_type}},KV_IP={{kv_endpoint}},{{ ceph_osd_docker_prepare_env }}"
-  ignore_errors: true
+  shell: |
+    docker run  --net=host --rm  \
+    --pid=host \
+    --privileged=true \
+    --name="{{ ansible_hostname }}-osd-prepare-{{ item.0 |
+    regex_replace('/', '') }}" \
+    -v /dev:/dev \
+    -e "OSD_DEVICE={{ item.0 }}" \
+    -e "{{ ceph_osd_docker_prepare_env }}" \
+    -e CEPH_DAEMON=osd_ceph_disk_prepare \
+    -e KV_TYPE={{kv_type}} \
+    -e KV_IP={{kv_endpoint}} \
+    -e KV_PORT={{kv_port}} \
+    "{{ ceph_osd_docker_username }}/{{ ceph_osd_docker_imagename }}:{{ ceph_osd_docker_image_tag }}" \
   with_together:
     - ceph_osd_docker_devices
     - osd_prepared.results
   become: true
   template:
     src: "{{ role_path }}/templates/ceph-osd.service.j2"
-    dest: /var/lib/ceph/ceph-osd@.service
+    dest: /etc/systemd/system/ceph-osd@.service
     owner: "root"
     group: "root"
     mode: "0644"
   failed_when: false
   when: ansible_os_family == 'RedHat' or ansible_os_family == 'CoreOS'
 
-- name: link systemd unit file for osd instance
-  file:
-    src: /var/lib/ceph/ceph-osd@.service
-    dest: /etc/systemd/system/multi-user.target.wants/ceph-osd@{{ item | basename }}.service
-    state: link
-  with_items: ceph_osd_docker_devices
-  when: ansible_os_family == 'RedHat' or ansible_os_family == 'CoreOS'
-
 - name: enable systemd unit file for osd instance
-  shell: systemctl enable /etc/systemd/system/multi-user.target.wants/ceph-osd@{{ item | basename }}.service
+  shell: systemctl enable ceph-osd@{{ item | basename }}.service
   failed_when: false
   changed_when: false
   with_items: ceph_osd_docker_devices
     - ansible_os_family != 'CoreOS'
     - not osd_containerized_deployment_with_kv
 
-- name: run the ceph osd docker image with kv
-  docker:
-    image: "{{ ceph_osd_docker_username }}/{{ ceph_osd_docker_imagename }}"
-    name: "{{ ansible_hostname }}-osd-{{ item | regex_replace('/', '') }}"
-    net: host
-    pid: host
-    state: running
-    privileged: yes
-    env: "KV_TYPE={{kv_type}},KV_IP={{kv_endpoint}},OSD_DEVICE={{ item }},{{ ceph_osd_docker_extra_env }}"
-    volumes: "/dev/:/dev/"
-  with_items: ceph_osd_docker_devices
-  when:
-   - ansible_os_family != 'RedHat'
-   - ansible_os_family != 'CoreOS'
-   - osd_containerized_deployment_with_kv