"CEPH Sorunları Çözme" sayfasının sürümleri arasındaki fark
("=== Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi=== Özellikle yeni bir pool oluşturulduğunda bu pool üzerinde rbd, rgw ve benzeri hiçbir..." içeriğiyle yeni sayfa oluşturdu) |
|||
(Aynı kullanıcının aradaki diğer 4 değişikliği gösterilmiyor) | |||
1. satır: | 1. satır: | ||
− | === Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi=== | + | ===Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi=== |
Özellikle yeni bir pool oluşturulduğunda bu pool üzerinde rbd, rgw ve benzeri hiçbir uygulama etkin hale getirilmediyse bu sorun ortaya çıkıyor. Hata mesajı aşağıda verilmiştir. | Özellikle yeni bir pool oluşturulduğunda bu pool üzerinde rbd, rgw ve benzeri hiçbir uygulama etkin hale getirilmediyse bu sorun ortaya çıkıyor. Hata mesajı aşağıda verilmiştir. | ||
18. satır: | 18. satır: | ||
ceph osd pool application enable rbdtest rbd | ceph osd pool application enable rbdtest rbd | ||
− | === Crash Tunable Hatası=== | + | ===Crash Tunable Hatası=== |
Pool üzerinde bir image oluşturmak ve bu imaj ile rbd map ile linux cihazı olarak bağlamak için tunables legacy olarak ayarlanması gerekebiliyor. Bu durumda ceph kümesinin durumuna bakıldığında aşağıdaki hata gözlemlenir. | Pool üzerinde bir image oluşturmak ve bu imaj ile rbd map ile linux cihazı olarak bağlamak için tunables legacy olarak ayarlanması gerekebiliyor. Bu durumda ceph kümesinin durumuna bakıldığında aşağıdaki hata gözlemlenir. | ||
30. satır: | 30. satır: | ||
ceph osd crush tunables optimal | ceph osd crush tunables optimal | ||
+ | ===MON Servisi ayakta ancak quourum olarak eklenemiyorsa=== | ||
+ | ceph -s komutu ile monitörlerin durumu izlenebilir, bu monitörlerin tamamı ayakta ve quorum statüsünde olması gerekir. Yeni bir monitör ceph kümesine eklendiğinde de sayı bir artırılarak gösterilmesi gerekmektedir. Ancak bazen aşağıdaki komut çalıştırıldığında hata alınabilir. | ||
+ | |||
+ | komut: | ||
+ | ceph-deploy mon create-initial | ||
+ | |||
+ | hata mesajı: | ||
+ | ceph_deploy.mon][WARNIN] mon.zula210 monitor is not yet in quorum, tries left: 5 | ||
+ | [ceph_deploy.mon][WARNIN] waiting 5 seconds before retrying | ||
+ | |||
+ | ilgili sunucunun monitör servisinin log dosyasında: | ||
+ | 2018-06-20 08:10:39.307 7fb71d1d4700 0 mon.zula210@0(probing) e0 ms_verify_authorizer bad authorizer from mon 192.168.56.212:6789/0 | ||
+ | 2018-06-20 08:10:39.307 7fb71d1d4700 0 -- 192.168.56.210:6789/0 >> 192.168.56.212:6789/0 conn(0x5580ac1f0a00 :6789 s=STATE_ACCEPTING_WAIT_CONNECT_MSG_AUTH pgs=0 cs=0 l=0).handle_connect_msg: got bad authorizer | ||
+ | 2018-06-20 08:10:39.307 7fb71d1d4700 0 cephx: verify_authorizer could not decrypt ticket info: error: bad magic in decode_decrypt, 173658197698476996 != 18374858748799134293 | ||
+ | |||
+ | bu durumda '''/var/lib/ceph/mon/ceph-zula210/keyring''' dosyasi kontrol edilir. Diger tum mon servisleri calisip bu calismiyorsa diger dosyalardan farkli key'e sahiptir. Digerleri ile ayni yapildiktan sonra artik komut calisabilir. Ayrica '''/etc/ceph/ceph.client.admin.keyring''' dosyasi da kontrol edilmelidir. | ||
+ | |||
+ | ===OSD Disk çıkartıp tekrar eklemek için=== | ||
+ | Hali hazırda ekli olan durumu (down) olması veya başka bir nedenle çıkarılması gereken osd diskler için aşağıda ki işlemler yapılır. Özellikle ceph-deploy komutu ile osd disk eklendiğinde ve süreçte sorunla karşılaşıldığında her ne kadar geriye sarım yapılmaya çalışılsa da maalesef bu işlem düzgün yapılamamaktadır. Neticesinde tekrar komutu çalıştırdığınızda farklı ancak hep aynı hata alınabilmektedir. disk silindikten sonra bile ona ait lvm volume oluşturulması veya dmsetup ta kaydın tutulması tekrar eklemeye mani olacak durumlardır. Detaylı bilgiler için aşağıdaki linklere göz gezdirilebilir. | ||
+ | * https://forum.proxmox.com/threads/ceph-cluster-reinstallation-osds-down.42385/ | ||
+ | * http://docs.ceph.com/docs/mimic/rados/operations/add-or-rm-osds/#removing-osds-manual | ||
+ | * https://www.thegeekdiary.com/lvm-error-cant-open-devsdx-exclusively-mounted-filesystem/ | ||
+ | |||
+ | Normalde takip edilmesi gereken komutlar: | ||
+ | ceph osd out 12 | ||
+ | systemctl stop ceph-osd@12 | ||
+ | ceph osd purge 12 --yes-i-really-mean-it | ||
+ | pvscan | ||
+ | vgremove ceph-e7f8edfa-f6bc-4dee-a93d-e18dbbb8d0dd | ||
+ | ceph osd tree | ||
+ | |||
+ | Toplu silmek için: | ||
+ | for i in `seq 12 23`; do ceph osd out $i; echo $i; done | ||
+ | for i in `seq 12 23`; do systemctl stop ceph-osd@$i; echo $i; done | ||
+ | for i in `seq 12 23`; do ceph osd purge $i --yes-i-really-mean-it; echo $i; done | ||
+ | for i in `pvscan |grep ceph|awk {'print $4'}`; do vgremove $i; echo $i; done | ||
+ | for i in `pvscan|grep dev|awk {'print $2'}`; do dd if=/dev/zero of=$i bs=1024 count=1; done | ||
+ | |||
+ | Tüm bu komutlara rağmen hala hata mesajı alınıyorsa bu durumda Mimic versiyonu öncesinde silmek için çalıştırılan komutlar takip edilebilir. Örnek osd.27'yi çıkarmak için: | ||
+ | ceph osd out 27 | ||
+ | service ceph stop osd.27 | ||
+ | ceph osd crush remove osd.27 | ||
+ | ceph auth del osd.27 | ||
+ | ceph osd rm 27 | ||
+ | ceph-disk zap /dev/sde | ||
+ | dd if=/dev/zero of=/dev/sde bs=1024 count=1 | ||
+ | umount /var/lib/ceph/osd/ceph-27 | ||
+ | rm -rf /var/lib/ceph/osd/ceph-27/ | ||
+ | |||
+ | Son olarak hala çıkartılamamışsa aşağıdaki komutlarla eski kayıt kalınmış mı bakılır. | ||
+ | dmsetup info -C | ||
+ | dmsetup remove ceph--12d0f05f--c185--42c2--9db7--ed28a6a0c926-osd--block--4c3fd1bf--7aec--4b44--8fbf--0da4b23e18b7 | ||
+ | toplu silmek için: | ||
+ | for i in `dmsetup info -C|grep ceph|awk {'print $1'}`; do dmsetup remove $i; done | ||
+ | |||
+ | Böylece artık aşağıdaki komutla yeni bir osd disk eklenebilir. | ||
+ | ceph-deploy --overwrite-conf osd create zula211 --data /dev/sde |
13:12, 26 Haziran 2018 itibarı ile sayfanın şu anki hâli
İçindekiler
Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi
Özellikle yeni bir pool oluşturulduğunda bu pool üzerinde rbd, rgw ve benzeri hiçbir uygulama etkin hale getirilmediyse bu sorun ortaya çıkıyor. Hata mesajı aşağıda verilmiştir.
ceph -w cluster: id: b49d69c7-e017-4f9f-b69b-57d3efe7987b health: HEALTH_WARN application not enabled on 1 pool(s)
ceph health detail komutu ile hatanın detayına bakılabilir.
HEALTH_WARN application not enabled on 1 pool(s) POOL_APP_NOT_ENABLED application not enabled on 1 pool(s) application not enabled on pool 'rbdtest' use 'ceph osd pool application enable <pool-name> <app-name>', where <app-name> is 'cephfs', 'rbd', 'rgw', or freeform for custom applications.
aşağıdaki komut ile de sorun çözülür.
ceph osd pool application enable rbdtest rbd
Crash Tunable Hatası
Pool üzerinde bir image oluşturmak ve bu imaj ile rbd map ile linux cihazı olarak bağlamak için tunables legacy olarak ayarlanması gerekebiliyor. Bu durumda ceph kümesinin durumuna bakıldığında aşağıdaki hata gözlemlenir.
ceph -s cluster: id: b49d69c7-e017-4f9f-b69b-57d3efe7987b health: HEALTH_WARN crush map has straw_calc_version=0
Sorunu çözmek için tekrar tunables set edilir.
ceph osd crush tunables optimal
MON Servisi ayakta ancak quourum olarak eklenemiyorsa
ceph -s komutu ile monitörlerin durumu izlenebilir, bu monitörlerin tamamı ayakta ve quorum statüsünde olması gerekir. Yeni bir monitör ceph kümesine eklendiğinde de sayı bir artırılarak gösterilmesi gerekmektedir. Ancak bazen aşağıdaki komut çalıştırıldığında hata alınabilir.
komut:
ceph-deploy mon create-initial
hata mesajı:
ceph_deploy.mon][WARNIN] mon.zula210 monitor is not yet in quorum, tries left: 5 [ceph_deploy.mon][WARNIN] waiting 5 seconds before retrying
ilgili sunucunun monitör servisinin log dosyasında:
2018-06-20 08:10:39.307 7fb71d1d4700 0 mon.zula210@0(probing) e0 ms_verify_authorizer bad authorizer from mon 192.168.56.212:6789/0 2018-06-20 08:10:39.307 7fb71d1d4700 0 -- 192.168.56.210:6789/0 >> 192.168.56.212:6789/0 conn(0x5580ac1f0a00 :6789 s=STATE_ACCEPTING_WAIT_CONNECT_MSG_AUTH pgs=0 cs=0 l=0).handle_connect_msg: got bad authorizer 2018-06-20 08:10:39.307 7fb71d1d4700 0 cephx: verify_authorizer could not decrypt ticket info: error: bad magic in decode_decrypt, 173658197698476996 != 18374858748799134293
bu durumda /var/lib/ceph/mon/ceph-zula210/keyring dosyasi kontrol edilir. Diger tum mon servisleri calisip bu calismiyorsa diger dosyalardan farkli key'e sahiptir. Digerleri ile ayni yapildiktan sonra artik komut calisabilir. Ayrica /etc/ceph/ceph.client.admin.keyring dosyasi da kontrol edilmelidir.
OSD Disk çıkartıp tekrar eklemek için
Hali hazırda ekli olan durumu (down) olması veya başka bir nedenle çıkarılması gereken osd diskler için aşağıda ki işlemler yapılır. Özellikle ceph-deploy komutu ile osd disk eklendiğinde ve süreçte sorunla karşılaşıldığında her ne kadar geriye sarım yapılmaya çalışılsa da maalesef bu işlem düzgün yapılamamaktadır. Neticesinde tekrar komutu çalıştırdığınızda farklı ancak hep aynı hata alınabilmektedir. disk silindikten sonra bile ona ait lvm volume oluşturulması veya dmsetup ta kaydın tutulması tekrar eklemeye mani olacak durumlardır. Detaylı bilgiler için aşağıdaki linklere göz gezdirilebilir.
- https://forum.proxmox.com/threads/ceph-cluster-reinstallation-osds-down.42385/
- http://docs.ceph.com/docs/mimic/rados/operations/add-or-rm-osds/#removing-osds-manual
- https://www.thegeekdiary.com/lvm-error-cant-open-devsdx-exclusively-mounted-filesystem/
Normalde takip edilmesi gereken komutlar:
ceph osd out 12 systemctl stop ceph-osd@12 ceph osd purge 12 --yes-i-really-mean-it pvscan vgremove ceph-e7f8edfa-f6bc-4dee-a93d-e18dbbb8d0dd ceph osd tree
Toplu silmek için:
for i in `seq 12 23`; do ceph osd out $i; echo $i; done for i in `seq 12 23`; do systemctl stop ceph-osd@$i; echo $i; done for i in `seq 12 23`; do ceph osd purge $i --yes-i-really-mean-it; echo $i; done for i in `pvscan |grep ceph|awk {'print $4'}`; do vgremove $i; echo $i; done for i in `pvscan|grep dev|awk {'print $2'}`; do dd if=/dev/zero of=$i bs=1024 count=1; done
Tüm bu komutlara rağmen hala hata mesajı alınıyorsa bu durumda Mimic versiyonu öncesinde silmek için çalıştırılan komutlar takip edilebilir. Örnek osd.27'yi çıkarmak için:
ceph osd out 27 service ceph stop osd.27 ceph osd crush remove osd.27 ceph auth del osd.27 ceph osd rm 27 ceph-disk zap /dev/sde dd if=/dev/zero of=/dev/sde bs=1024 count=1 umount /var/lib/ceph/osd/ceph-27 rm -rf /var/lib/ceph/osd/ceph-27/
Son olarak hala çıkartılamamışsa aşağıdaki komutlarla eski kayıt kalınmış mı bakılır.
dmsetup info -C dmsetup remove ceph--12d0f05f--c185--42c2--9db7--ed28a6a0c926-osd--block--4c3fd1bf--7aec--4b44--8fbf--0da4b23e18b7
toplu silmek için:
for i in `dmsetup info -C|grep ceph|awk {'print $1'}`; do dmsetup remove $i; done
Böylece artık aşağıdaki komutla yeni bir osd disk eklenebilir.
ceph-deploy --overwrite-conf osd create zula211 --data /dev/sde