Management Cluster Ceph » Historique » Version 3
Mehdi Abaakouk, 05/11/2015 16:47
1 | 1 | Mehdi Abaakouk | h1. Management Cluster Ceph |
---|---|---|---|
2 | 1 | Mehdi Abaakouk | |
3 | 2 | Mehdi Abaakouk | h2. Ajout d'un OSD classique |
4 | 2 | Mehdi Abaakouk | |
5 | 2 | Mehdi Abaakouk | <pre> |
6 | 2 | Mehdi Abaakouk | $ ceph-disk prepare --zap-disk --cluster-uuid 1fe74663-8dfa-486c-bb80-3bd94c90c967 --fs-type=xfs /dev/sdX |
7 | 2 | Mehdi Abaakouk | $ smartctl --smart=on /dev/sdX # Pour le monitoring. |
8 | 2 | Mehdi Abaakouk | </pre> |
9 | 2 | Mehdi Abaakouk | |
10 | 2 | Mehdi Abaakouk | Pour un HDD: |
11 | 2 | Mehdi Abaakouk | <pre> |
12 | 2 | Mehdi Abaakouk | $ ceph osd crush add osd.<ID> 0 root=default host=g3 |
13 | 2 | Mehdi Abaakouk | </pre> |
14 | 2 | Mehdi Abaakouk | |
15 | 2 | Mehdi Abaakouk | Pour un SSD: |
16 | 2 | Mehdi Abaakouk | <pre> |
17 | 2 | Mehdi Abaakouk | $ ceph osd crush add osd.<ID> 0 root=ssd host=g3-ssd |
18 | 2 | Mehdi Abaakouk | </pre> |
19 | 2 | Mehdi Abaakouk | |
20 | 2 | Mehdi Abaakouk | Ensuite, autoriser Ceph à mettre des data dessus: |
21 | 2 | Mehdi Abaakouk | |
22 | 2 | Mehdi Abaakouk | <pre> |
23 | 2 | Mehdi Abaakouk | $ /root/tools/ceph-reweight-osds.sh osd.<ID> |
24 | 2 | Mehdi Abaakouk | </pre> |
25 | 2 | Mehdi Abaakouk | |
26 | 2 | Mehdi Abaakouk | |
27 | 2 | Mehdi Abaakouk | h2. Ajout d'un OSD qui partage le SSD avec l'OS |
28 | 2 | Mehdi Abaakouk | |
29 | 2 | Mehdi Abaakouk | |
30 | 2 | Mehdi Abaakouk | En général avec ceph, on donne un disque, ceph créé 2 partitions une pour le journal de l'OSD, l'autre pour les datas |
31 | 2 | Mehdi Abaakouk | mais pour le SSD de tetaneutral qui a aussi l'OS, voici la méthode |
32 | 2 | Mehdi Abaakouk | |
33 | 2 | Mehdi Abaakouk | Création manuelle de la partition de data ceph /dev/sda2 ici |
34 | 2 | Mehdi Abaakouk | <pre> |
35 | 2 | Mehdi Abaakouk | apt-get install partprobe |
36 | 2 | Mehdi Abaakouk | fdisk /dev/sda |
37 | 2 | Mehdi Abaakouk | |
38 | 2 | Mehdi Abaakouk | n |
39 | 2 | Mehdi Abaakouk | p |
40 | 2 | Mehdi Abaakouk | <enter> |
41 | 2 | Mehdi Abaakouk | <enter> |
42 | 2 | Mehdi Abaakouk | <enter> |
43 | 2 | Mehdi Abaakouk | <enter> |
44 | 2 | Mehdi Abaakouk | w |
45 | 2 | Mehdi Abaakouk | |
46 | 2 | Mehdi Abaakouk | $ partprobe |
47 | 2 | Mehdi Abaakouk | </pre> |
48 | 2 | Mehdi Abaakouk | |
49 | 2 | Mehdi Abaakouk | On prepare le disk comme normalement |
50 | 2 | Mehdi Abaakouk | |
51 | 2 | Mehdi Abaakouk | <pre> |
52 | 2 | Mehdi Abaakouk | ceph-disk prepare --fs-type=xfs --cluster-uuid 1fe74663-8dfa-486c-bb80-3bd94c90c967 /dev/sda2 |
53 | 2 | Mehdi Abaakouk | ceph-disk activate /dev/sda2 |
54 | 2 | Mehdi Abaakouk | </pre> |
55 | 2 | Mehdi Abaakouk | Le disque n'étant pas utilisé uniquement par ceph, le service ceph ne le chargera pas automatiquement: |
56 | 2 | Mehdi Abaakouk | Il faut ajouter le nom du device dans le /etc/rc.local pour qu'il lance: |
57 | 2 | Mehdi Abaakouk | |
58 | 2 | Mehdi Abaakouk | <pre> |
59 | 2 | Mehdi Abaakouk | ceph-disk activate /dev/sda2 |
60 | 2 | Mehdi Abaakouk | </pre> |
61 | 2 | Mehdi Abaakouk | |
62 | 2 | Mehdi Abaakouk | h2. Suppression d'un OSD: |
63 | 2 | Mehdi Abaakouk | |
64 | 2 | Mehdi Abaakouk | <pre> |
65 | 2 | Mehdi Abaakouk | name="osd.2" |
66 | 2 | Mehdi Abaakouk | ceph osd out ${name} |
67 | 3 | Mehdi Abaakouk | stop ceph-osd id=${name#osd.} # ou sous debian: /etc/init.d/ceph stop ${name} |
68 | 2 | Mehdi Abaakouk | ceph osd crush remove ${name} |
69 | 2 | Mehdi Abaakouk | ceph auth del ${name} |
70 | 2 | Mehdi Abaakouk | ceph osd rm ${name} |
71 | 2 | Mehdi Abaakouk | ceph osd tree |
72 | 2 | Mehdi Abaakouk | </pre> |
73 | 2 | Mehdi Abaakouk | |
74 | 2 | Mehdi Abaakouk | |
75 | 1 | Mehdi Abaakouk | h2. Remplacement à froid d'un tier cache: |
76 | 1 | Mehdi Abaakouk | |
77 | 1 | Mehdi Abaakouk | upstream doc: http://docs.ceph.com/docs/master/rados/operations/cache-tiering/ |
78 | 1 | Mehdi Abaakouk | |
79 | 1 | Mehdi Abaakouk | <pre> |
80 | 1 | Mehdi Abaakouk | ceph osd tier cache-mode ec8p2c forward |
81 | 1 | Mehdi Abaakouk | rados -p ec8p2c cache-flush-evict-all |
82 | 1 | Mehdi Abaakouk | ceph osd tier remove-overlay ec8p2 |
83 | 1 | Mehdi Abaakouk | ceph osd tier remove ec8p2 ec8p2c |
84 | 1 | Mehdi Abaakouk | |
85 | 1 | Mehdi Abaakouk | rados rmpool ec8p2c ec8p2c --yes-i-really-really-mean-ita |
86 | 1 | Mehdi Abaakouk | ceph osd pool create ec8p2c 128 128 replicated |
87 | 1 | Mehdi Abaakouk | |
88 | 1 | Mehdi Abaakouk | ceph osd tier add ec8p2 ec8p2c |
89 | 1 | Mehdi Abaakouk | ceph osd tier cache-mode ec8p2c writeback |
90 | 1 | Mehdi Abaakouk | ceph osd tier set-overlay ec8p2 ec8p2c |
91 | 1 | Mehdi Abaakouk | |
92 | 1 | Mehdi Abaakouk | ceph osd pool set ec8p2c size 3 |
93 | 1 | Mehdi Abaakouk | ceph osd pool set ec8p2c min_size 2 |
94 | 1 | Mehdi Abaakouk | ceph osd pool set ec8p2c hit_set_type bloom |
95 | 1 | Mehdi Abaakouk | |
96 | 1 | Mehdi Abaakouk | ceph osd pool set ec8p2c hit_set_count 1 |
97 | 1 | Mehdi Abaakouk | ceph osd pool set ec8p2c hit_set_period 3600 |
98 | 1 | Mehdi Abaakouk | ceph osd pool set ec8p2c target_max_bytes 200000000000 |
99 | 1 | Mehdi Abaakouk | ceph osd pool set ec8p2c target_max_objects 10000000 |
100 | 1 | Mehdi Abaakouk | ceph osd pool set ec8p2c cache_target_dirty_ratio 0.4 |
101 | 1 | Mehdi Abaakouk | ceph osd pool set ec8p2c cache_target_full_ratio 0.8 |
102 | 1 | Mehdi Abaakouk | </pre> |