summaryrefslogtreecommitdiffstats
path: root/deploy/adapters/ansible/roles/ceph-osd
diff options
context:
space:
mode:
Diffstat (limited to 'deploy/adapters/ansible/roles/ceph-osd')
-rwxr-xr-xdeploy/adapters/ansible/roles/ceph-osd/files/create_osd.sh31
-rw-r--r--deploy/adapters/ansible/roles/ceph-osd/tasks/install_osd.yml14
-rw-r--r--deploy/adapters/ansible/roles/ceph-osd/tasks/main.yml5
3 files changed, 50 insertions, 0 deletions
diff --git a/deploy/adapters/ansible/roles/ceph-osd/files/create_osd.sh b/deploy/adapters/ansible/roles/ceph-osd/files/create_osd.sh
new file mode 100755
index 00000000..2c9e57f1
--- /dev/null
+++ b/deploy/adapters/ansible/roles/ceph-osd/files/create_osd.sh
@@ -0,0 +1,31 @@
+if [ -d "/var/local/osd" ]; then
+echo "clear /var/local/osd"
+rm -r /var/local/osd/
+umount /var/local/osd
+rm -r /var/local/osd
+fi
+
+
+#safe check
+ps -ef |grep lvremove |awk '{print $2}' |xargs kill -9
+ps -ef |grep vgremove |awk '{print $2}' |xargs kill -9
+ps -ef |grep vgcreate |awk '{print $2}' |xargs kill -9
+ps -ef |grep lvcreate |awk '{print $2}' |xargs kill -9
+
+if [ -L "/dev/storage-volumes/ceph0" ]; then
+echo "remove lv vg"
+lvremove -f /dev/storage-volumes/ceph0
+fi
+
+
+echo "lvcreate"
+lvcreate -l 100%FREE -nceph0 storage-volumes
+echo "mkfs"
+mkfs.xfs -f /dev/storage-volumes/ceph0
+
+if [ ! -d "/var/local/osd" ]; then
+echo "mount osd"
+mkdir -p /var/local/osd
+mount /dev/storage-volumes/ceph0 /var/local/osd
+fi
+
diff --git a/deploy/adapters/ansible/roles/ceph-osd/tasks/install_osd.yml b/deploy/adapters/ansible/roles/ceph-osd/tasks/install_osd.yml
new file mode 100644
index 00000000..bf49c50e
--- /dev/null
+++ b/deploy/adapters/ansible/roles/ceph-osd/tasks/install_osd.yml
@@ -0,0 +1,14 @@
+---
+
+- name: create osd lv and mount it on /var/local/osd
+ script: create_osd.sh
+
+- name: copy osd keyring
+ copy: src="/tmp/ceph.osd.keyring" dest="/var/lib/ceph/bootstrap-osd/ceph.keyring"
+
+- name: prepare osd disk
+ shell: ceph-disk prepare --fs-type xfs /var/local/osd
+
+- name: activate osd node
+ shell: ceph-disk activate /var/local/osd
+
diff --git a/deploy/adapters/ansible/roles/ceph-osd/tasks/main.yml b/deploy/adapters/ansible/roles/ceph-osd/tasks/main.yml
new file mode 100644
index 00000000..d6c46640
--- /dev/null
+++ b/deploy/adapters/ansible/roles/ceph-osd/tasks/main.yml
@@ -0,0 +1,5 @@
+- include: install_osd.yml
+ when: inventory_hostname in groups["ceph_osd"]
+ tags:
+ - ceph_osd
+ - ceph_deploy