<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="tr">
		<id>http://bulutwiki.ulakbim.gov.tr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Admin</id>
		<title>BulutWiki - Kullanıcı katkıları [tr]</title>
		<link rel="self" type="application/atom+xml" href="http://bulutwiki.ulakbim.gov.tr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Admin"/>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php/%C3%96zel:Katk%C4%B1lar/Admin"/>
		<updated>2026-06-19T04:42:27Z</updated>
		<subtitle>Kullanıcı katkıları</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Kaynaklar&amp;diff=242</id>
		<title>Kaynaklar</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Kaynaklar&amp;diff=242"/>
				<updated>2018-11-22T07:29:08Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dosya:Huawei_CloudEngine_8800&amp;amp;7800&amp;amp;6800&amp;amp;5800_Series_VXLAN_Technology_White_Paper.pdf]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Kaynaklar&amp;diff=241</id>
		<title>Kaynaklar</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Kaynaklar&amp;diff=241"/>
				<updated>2018-11-22T07:28:52Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Huawei_CloudEngine_8800&amp;amp;7800&amp;amp;6800&amp;amp;5800_Series_VXLAN_Technology_White_Paper.pdf]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Kaynaklar&amp;diff=240</id>
		<title>Kaynaklar</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Kaynaklar&amp;diff=240"/>
				<updated>2018-11-22T07:28:33Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &amp;quot;Dosya:Huawei_CloudEngine_8800&amp;amp;7800&amp;amp;6800&amp;amp;5800_Series_VXLAN_Technology_White_Paper.pdf&amp;quot; içeriğiyle yeni sayfa oluşturdu&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Dosya:Huawei_CloudEngine_8800&amp;amp;7800&amp;amp;6800&amp;amp;5800_Series_VXLAN_Technology_White_Paper.pdf]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Dosya:Huawei_CloudEngine_8800%267800%266800%265800_Series_VXLAN_Technology_White_Paper.pdf&amp;diff=239</id>
		<title>Dosya:Huawei CloudEngine 8800&amp;7800&amp;6800&amp;5800 Series VXLAN Technology White Paper.pdf</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Dosya:Huawei_CloudEngine_8800%267800%266800%265800_Series_VXLAN_Technology_White_Paper.pdf&amp;diff=239"/>
				<updated>2018-11-22T07:27:21Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=238</id>
		<title>Anasayfa</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=238"/>
				<updated>2018-11-22T07:26:46Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bu web sayfası, TÜBİTAK ULAKBİM çatısı altında hizmet vermeye devam eden Bulut projesinde çeşitli alanlarda hizmet veren teknolojilerin kurulumu ve yönetimi ile ilgili olarak edinilen tecrübe ve bilgilerin aynı teknolojileri kullanan/kullanmayı planlayan kurumlar ile paylaşılması  amacıyla hazırlanmıştır.&lt;br /&gt;
&lt;br /&gt;
== KURULUM ÖNCESİ HAZIRLIKLAR ==&lt;br /&gt;
==== FİZİKSEL DONANIM ORTAMI ====&lt;br /&gt;
*[[ Donanım Seçimi Kriterleri ]]&lt;br /&gt;
*[[ İhale Şartnamesi ]]&lt;br /&gt;
*[[ Donanım Altyapısı ]]&lt;br /&gt;
*[[ Ağ/Sunucu Bağlantı Topolojisi ]]&lt;br /&gt;
==== ORTA KATMAN HAZIRLAMA ====&lt;br /&gt;
* [[ CEPH Genel Bilgiler | CEPH Bluestore vs Filestore ]]&lt;br /&gt;
== KURULUM ==&lt;br /&gt;
*[[ CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler ]]&lt;br /&gt;
* [[ CEPH Kurulumu | BLUESTORE KURULUM, YAPILANDIRMA ve BENCHMARK TESTLERİ]]&lt;br /&gt;
* [[ FILESTORE KURULUMU | FILESTORE KURULUMU]]&lt;br /&gt;
== LEAF &amp;amp; SPINE Yapılandırması ==&lt;br /&gt;
* [[ Kaynaklar ]]&lt;br /&gt;
== CEPH BİLEŞENLERİ ve BİLİNMESİ GEREKEN ANA KOMUTLAR ==&lt;br /&gt;
* [[ CEPH Yönetimi | Temel Bileşenler ve Komutlar]]&lt;br /&gt;
== CEPH YÖNETİMİ ==&lt;br /&gt;
* [[ Yönetim Dashboard (OpenAttic) | Yönetim Arayüzü – Dashboard (OpenAttic) ]]&lt;br /&gt;
* [[ HDD ve SSD üzerinde ayrı pool oluşturma | HDD ve SSD üzerinde ayrı pool oluşturma]]&lt;br /&gt;
* [[ RADOSGW Storage Pool Yapilandirma, Optimizasyon ve Testi ]]&lt;br /&gt;
* [[ CEPH SSD Tamponlama - Cache Tiering ]]&lt;br /&gt;
&lt;br /&gt;
== PERFORMANS TESTLERİ VE OPTİMİZASYON ==&lt;br /&gt;
* [[ CEPH_Yönetimi#CEPH_Performans_Optimizasyonu_i.C3.A7in_Ayarlanabilecek_De.C4.9Fi.C5.9Fken_Listesi | CEPH Performans Optimizasyonu için Ayarlanabilecek Değişken Listesi ]]&lt;br /&gt;
* [[ CEPH Performans Optimizasyonu]]&lt;br /&gt;
* [[ CEPH Benchmark ]]&lt;br /&gt;
== GENEL SORUNLAR ve ÇÖZÜM YOLLARI ==&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Pool_.C3.BCzerinde_herhangi_bir_uygulaman.C4.B1n_aktifle.C5.9Ftirilmemesi |  Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Crash_Tunable_Hatas.C4.B1 | Crash Tunable Hatası ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#MON_Servisi_ayakta_ancak_quourum_olarak_eklenemiyorsa | MON Servisi ayakta ancak quourum olarak eklenemiyorsa ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#OSD_Disk_.C3.A7.C4.B1kart.C4.B1p_tekrar_eklemek_i.C3.A7in | OSD Disk çıkartıp tekrar eklemek için ]]&lt;br /&gt;
&lt;br /&gt;
== Hazırlayanlar ==&lt;br /&gt;
* Onur BEKTAŞ&lt;br /&gt;
* Emrah AKKOYUN&lt;br /&gt;
* Ömer Faruk ÇANGIR&lt;br /&gt;
&lt;br /&gt;
==Lisans==&lt;br /&gt;
Bu wiki sayfalarındaki tüm meteryaller Creative Commonss CC BY-SA 4.0 lisansına sahiptir&lt;br /&gt;
&lt;br /&gt;
[[Dosya:Cclisans.png|çerçeveli|sol]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=237</id>
		<title>RADOSGW Storage Pool Yapilandirma, Optimizasyon ve Testi</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=237"/>
				<updated>2018-09-20T12:43:04Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Obje Depolama Pool Ayarlari - Depolama Politikasi ==&lt;br /&gt;
&lt;br /&gt;
Örnek parola olarak &amp;quot;blabla&amp;quot; kullanılmıştır. Kendi kurulumunuzuzda belirleyeceğiniz parolayı kullanınız.&lt;br /&gt;
&lt;br /&gt;
Herhangi bir yapilandirma yapilmadiginda radosgw uzerinden kullanici tarafinda atilan obje veya bucketlar default yer olan default.rgw.buckets.data adinda pool uzerinde tutulmaktadir. Bunun index bilgileri ise default.rgw.buckets.index pool uzerinde tutulmaktadir. Kullanici vb meta verileri, log'lar ise ayri yapilandirilmis default.rgw.meta ve default.rgw.log pool'lari uzerinde tutulmaktadir.&lt;br /&gt;
&lt;br /&gt;
Asagidaki komutla default olusturulan pool ve detaylari bulunabilir.&lt;br /&gt;
&lt;br /&gt;
 # ceph osd pool ls detail&lt;br /&gt;
 pool 1 '.rgw.root' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 195 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 2 'default.rgw.control' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 199 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 3 'default.rgw.meta' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 201 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 4 'default.rgw.log' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 203 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw &lt;br /&gt;
 pool 5 'default.rgw.buckets.index' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 206 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 6 'default.rgw.buckets.data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 209 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
&lt;br /&gt;
Bune gore default olarak ayarlanan her bir pool 3 replikasi ve her birinin 256 pg sayisi bulunmaktadir. (CEPH kurulumu yapilirken ceph.conf icerisinde default pg sayisi 256 set edildiginde bu pool'lar bu sekilde yapilandirilmistir)&lt;br /&gt;
&lt;br /&gt;
Bu nedenle farkli kullanicilar uzerinden gelecek veriler ayni ozellikte ki pool uzerinde kaydedilecektir, Ornegin B3LAB projesi icin olusturulan kullanicinin verileri de kendimiz icin olsuturulacak GLANCE ve NextCloud projeleri icin olusturulacak kullanicilar da ayni pool uzerinde verileri tutacaklardir. Bu pek istenen bir durum degildir, cunku degisen kapasiteye ve kullanima bagli ozel olusturulmus pool uzerinde verilerini tutmasi daha dogru bir yaklasim olacaktir. index, metadata ve log'lar default pool uzerinde tutulabilir, ancak veriler icin ayri bir data pool tutmak icin bu dokuman hazirlanmistir.&lt;br /&gt;
&lt;br /&gt;
NOT: Her bir objeye ait veriler indexlenmektedir. Eger tum objeleri listeleme gibi bir gereksinim bulunmuyorsa bu durumda her bir objeye ait index bilgisini tutmak gereksizdir. Bunun icin asagidaki baslik izlenebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#indexless_buckets&lt;br /&gt;
&lt;br /&gt;
Ayrica; eger milyonlarca obje olacakse ve surekli listeleme gibi isler yapilacaksa bu durumda index'in yer aldigi pool aysi SSD'lerden olusan bir pool uzerine kurgulanabilir. Bucket index sharding islemi ile de oldukca performans kazanci elde edilebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#bucket_sharding&lt;br /&gt;
&lt;br /&gt;
 AMAC:&lt;br /&gt;
 1- Dosyalarin daha performansli listelenebilmesi icin SSD'ler uzerinde yer alan index pool ve objelerin tutulacagi yuksek pg sayili, 3 replikali data pool olusturmak.&lt;br /&gt;
     index pool: .rgw.buckets.ssd_index, 256 pg, 3 replika, 512GB kota&lt;br /&gt;
     data pool: .rgw.buckets.sharedfile_data, 1024 pg, 3 replika, 30TB kota&lt;br /&gt;
 2- Ayni ozellikte isterleri olan farkli iki proje icin (SAFIR ve NextCloud) ayri kullanici olusturup bu pool'lar uzerinde islem yapabilmesini saglamak&lt;br /&gt;
 3- Her bir kullaniciya ayri kotalar tanimlamak&lt;br /&gt;
&lt;br /&gt;
=== POOL OLUSTURMA ===&lt;br /&gt;
Onceden hazirlanmis 2 farkli crush rule var, bunlardan biri sadece nVme ssd disklerin yer aldigi fast, digeri ise sadece SATA Hdd'lerin yer aldigi replicated_rule. Pool'lar bu chrush liste gore olusturuldu.&lt;br /&gt;
 # ceph osd crush rule list&lt;br /&gt;
 replicated_rule&lt;br /&gt;
 fast&lt;br /&gt;
&lt;br /&gt;
 # ceph osd crush class ls-osd ssd&lt;br /&gt;
 48&lt;br /&gt;
 49&lt;br /&gt;
 50&lt;br /&gt;
 51&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.ssd_index 256 256&lt;br /&gt;
 ceph osd pool set .rgw.buckets.ssd_index crush_rule fast&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.ssd_index max_bytes 512GB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.ssd_index rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.sharedfile_data 1024 1024&lt;br /&gt;
 ceph osd pool set .rgw.buckets.sharedfile_data crush_rule replicated_rule&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.sharedfile_data max_bytes 30TB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.sharedfile_data rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool ls detail&lt;br /&gt;
 .... &lt;br /&gt;
 ....&lt;br /&gt;
 pool 8 '.rgw.buckets.ssd_index' replicated size 3 min_size 3 crush_rule 1 object_hash rjenkins pg_num 256 pgp_num 256 last_change 268 flags hashpspool stripe_width 0&lt;br /&gt;
 pool 9 '.rgw.buckets.sharedfile_data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 1024 pgp_num 1024 last_change 271 flags hashpspool stripe_width 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Placement Target ===&lt;br /&gt;
CEPH Object Gateway, kullanicinin verisini tutarken iliskilendirilmis placement target bilgisine bakar, herhangi bir ayar yapilmadiysa default olan zone altinda yer alan default-placement bilgisine gore de islem yapar. Az once olusturdugumuz sekilde pool'lar uzerinde spesifik islem yapabilmek icin ayni zone altinda yeni bir placement grup olusturup pool bilgilerini ayri ayri burada set etmemiz gerekecektir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup --rgw-zonegroup=default get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sharedfile-placement adinda yeni bir placement target olusturmak icin zonegroup.json dosyasi asagidaki sekilde guncellenip calistirilir.&lt;br /&gt;
&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup set &amp;lt; zonegroup.json&lt;br /&gt;
&lt;br /&gt;
Daha sonra zone yapilandirma dosyasini alip data ve index icin olusturulan bu pool'lar set edilecek sekilde placement target guncellenir.&lt;br /&gt;
&lt;br /&gt;
 # sudo radosgw-admin zone get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 sudo radosgw-admin zone get &amp;gt; zone.json&lt;br /&gt;
 sudo vi zone.json&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;.rgw.buckets.ssd_index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 radosgw-admin zone set &amp;lt; zone.json&lt;br /&gt;
 radosgw-admin period update --commit&lt;br /&gt;
&lt;br /&gt;
=== Bucket Optimizasyon ===&lt;br /&gt;
Pool uzerinde kayitli bucket uzerinde tutulan tum objelerin index bilgisi SSD disk uzerinde tutacak sekilde yapilandirilan .rgw.buckets.ssd_index poolu uzerinde durmaktadir. Buna ek olarak performansi artirmak icin bucket sharding denilen her bir bucket icin tutulacak maksimim obje sayisini belirleyen bir ayar girilmesi gerekmektedir. Tek bir bucket uzerinde milyonlarca kayit tutmak performansi cok dusurecektir.&lt;br /&gt;
&lt;br /&gt;
rgw_override_bucket_index_max_shards parametresi bucket basina tutulacak en fazla shard bilgisini gostermektedir. Default ayari 0'dir, yani bucket uzerinde sinirsiz sayida obje tutacak sekildedir. Bu sayinin belirlenmesi icin asagidaki formul onerilmektedir.&lt;br /&gt;
&lt;br /&gt;
 number of objects expected in a bucket / 100,000&lt;br /&gt;
&lt;br /&gt;
Biz olusturdugumuz pool icin 10.000 kullanici ve her birinin 100 dosyasi olacak sekilde on gordugumuzde toplam obje sayisi 1 milyon olmakta, bu durumda bu sayi ise 10 olacaktir.&lt;br /&gt;
ceph.conf dosyasina asagidaki satir eklenir, ve radosgw servisi restart edilir.&lt;br /&gt;
&lt;br /&gt;
 rgw_override_bucket_index_max_shards = 10&lt;br /&gt;
&lt;br /&gt;
 systemctl restart ceph-radosgw.service&lt;br /&gt;
&lt;br /&gt;
=== Kullanici Olusturma ve Yetkilendirme ===&lt;br /&gt;
Son olarak RADOSGW uzerinde ayarlari yapilmis bu pool'lar uzerinde veri tutacak kullanicilarin olusturulmasinda. RadosGW, hem S3 uyumlu (user) hem de swift api uyumlu (subuser) kullanici olusturmaya izin veriyor.  Dolayisiyla S3 arayuzu icin access ve secret key gerekirken swift arayuzu icin secret key yeterli olabilmektedir. Burada swift api uyumlu subuser olusturulup yetkilendirilecektir. Kullanicilar full yetkiye sahip olacak sekilde olusturulacaktir. (Alternatifer; read, write, readwrite)&lt;br /&gt;
&lt;br /&gt;
 SAFIR kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;safir&amp;quot; --display-name=&amp;quot;B3LAB SAFIR Grubu&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=safir --subuser=safir:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 NextCloud kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;nextcloud&amp;quot; --display-name=&amp;quot;ULAKBIM NextCloud Servisi&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=nextcloud --subuser=nextcloud:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin user info --uid=nextcloud&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;user_id&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;display_name&amp;quot;: &amp;quot;ULAKBIM NextCloud Servisi&amp;quot;,&lt;br /&gt;
    &amp;quot;email&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;suspended&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;max_buckets&amp;quot;: 1000,&lt;br /&gt;
    &amp;quot;auid&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;subusers&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;permissions&amp;quot;: &amp;quot;full-control&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
            &amp;quot;access_key&amp;quot;: &amp;quot;blabla&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;swift_keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;caps&amp;quot;: [],&lt;br /&gt;
    &amp;quot;op_mask&amp;quot;: &amp;quot;read, write, delete&amp;quot;,&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_tags&amp;quot;: [],&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;temp_url_keys&amp;quot;: [],&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;rgw&amp;quot;,&lt;br /&gt;
    &amp;quot;mfa_ids&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
komutu ile kullaniciya ait bilgiler gelmektedir. Bu kullanicilar, hem S3 ile hem de Swift arayuzu ile konusabilecek key'lere sahiptirler.&lt;br /&gt;
&lt;br /&gt;
Dilenirse bu kullanicilar bir sure kullanima kapatilip tekrar asagidaki komutla acilabilir.&lt;br /&gt;
 # radosgw-admin user suspend --uid=nextcloud&lt;br /&gt;
 # radosgw-admin user enable --uid=nextcloud&lt;br /&gt;
&lt;br /&gt;
Kullanici bilgilerine bakildiginda herhangi bir kota bulunmamaktadir. Her ne kadar pool bazinda bir kota tanimlamasi yapildiysa da kullanici bazinda da bir kota tanimlamasi yapilmasi gerekmektedir. CEPH uzerinde kota tanimlamasi kullanici veya kullanicinin sahip oldugu bucket bazinda yapilabilmektedir. Default'ta her ikisi disable durumundadir. Burada kullanici bazli bir kota tanimlanacaktir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=safir --max-objects=1000000 --max-size=30TB&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=nextcloud --max-objects=100000 --max-size=3TB&lt;br /&gt;
&lt;br /&gt;
son olarak kullanici bazli kota tanimlamayi etkinlestirmek gerekmektedir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=nextcloud&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=safir&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: true,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: 32985348833280,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 32212254720,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: 1000000&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Kullanici ile Iliskilendirme ===&lt;br /&gt;
&lt;br /&gt;
Olusturulan bu kullanicilarin sadece yeni olusturdugumuz placement_target dolayisiyla pool uzerinde default islem yapabilmeleri icin metadata verilerinde guncelleme yapmak gerekir. Kullanici bilgisine baktigimizda default_placement bos gelmektedir. Bunu sharedfile_placement ile guncellemek icin:&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata get user:nextcloud &amp;gt; user.json&lt;br /&gt;
user.json dosyasinda default_placement karsisina sharedfile-placement eklenir.&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata put user:nextcloud &amp;lt; user.json ile metadata guncellenir.&lt;br /&gt;
&lt;br /&gt;
Benzer islem diger kullanici icinde yapilir.&lt;br /&gt;
 # radosgw-admin metadata get user:safir &amp;gt; user.json&lt;br /&gt;
 # radosgw-admin metadata put user:safir &amp;lt; user.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TEST islemleri ===&lt;br /&gt;
Pek cok farkli yontemle bucket olusturulup icerisine dosya atilabilir. Bunlardan birkaci ile asagida ornek olmasi acisindan komutlar verilmistir.&lt;br /&gt;
&lt;br /&gt;
S3 arayuzu uzerinden python boto kutuphanesi kullanilarak o kullanicinin access ve secret keyleri ile bucket olusturulabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # cat cephtestv2.py&lt;br /&gt;
 import boto&lt;br /&gt;
 import boto.s3.connection&lt;br /&gt;
 access_key = 'blabla'&lt;br /&gt;
 secret_key = 'blabla'&lt;br /&gt;
 conn = boto.connect_s3(&lt;br /&gt;
           aws_access_key_id = access_key,&lt;br /&gt;
              aws_secret_access_key = secret_key,&lt;br /&gt;
                 host = 'gwmon', port =7480,is_secure=False, calling_format = boto.s3.connection.OrdinaryCallingFormat(),)&lt;br /&gt;
&lt;br /&gt;
 bucket = conn.create_bucket('test-bucket')&lt;br /&gt;
 for bucket in conn.get_all_buckets():&lt;br /&gt;
       print &amp;quot;{name} {created}&amp;quot;.format(name = bucket.name,created = bucket.creation_date,)&lt;br /&gt;
&lt;br /&gt;
Boylece test-bucket adinda bir bucket olusturulmus olunur. Bu bucket altina dosya atmak icinse SWIFT arayuzu uzerinden secret_key ile dosya gonderilebilir.&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla upload test-bucket cephtest.py&lt;br /&gt;
&lt;br /&gt;
Bu bucket altindaki dosyalari listelemek icinse&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla list test-bucket komutu kullanilir.&lt;br /&gt;
&lt;br /&gt;
Bucket ve dosyanin nereye yazildigi onemlidir. Bucket adi verilerek kullanimina ve hangi placement target kullandigina bakilabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin bucket stats --bucket test-bucket&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;bucket&amp;quot;: &amp;quot;test-bucket&amp;quot;,&lt;br /&gt;
    &amp;quot;zonegroup&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-c975ab4e2d65&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_rule&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;explicit_placement&amp;quot;: {&lt;br /&gt;
        &amp;quot;data_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;data_extra_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;index_pool&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;marker&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;index_type&amp;quot;: &amp;quot;Normal&amp;quot;,&lt;br /&gt;
    &amp;quot;owner&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;ver&amp;quot;: &amp;quot;0#2,1#1,2#1,3#2,4#1,5#1,6#1,7#1,8#1,9#1&amp;quot;,&lt;br /&gt;
    &amp;quot;master_ver&amp;quot;: &amp;quot;0#0,1#0,2#0,3#0,4#0,5#0,6#0,7#0,8#0,9#0&amp;quot;,&lt;br /&gt;
    &amp;quot;mtime&amp;quot;: &amp;quot;2018-09-17 15:51:55.909340&amp;quot;,&lt;br /&gt;
    &amp;quot;max_marker&amp;quot;: &amp;quot;0#,1#,2#,3#,4#,5#,6#,7#,8#,9#&amp;quot;,&lt;br /&gt;
    &amp;quot;usage&amp;quot;: {&lt;br /&gt;
        &amp;quot;rgw.main&amp;quot;: {&lt;br /&gt;
            &amp;quot;size&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_actual&amp;quot;: 8192,&lt;br /&gt;
            &amp;quot;size_utilized&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_kb&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;size_kb_actual&amp;quot;: 8,&lt;br /&gt;
            &amp;quot;size_kb_utilized&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;num_objects&amp;quot;: 2&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: true,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
placement_rule bizim set etmis oldugumuz yerde olusturulmustur. Icerisinde ise 2 obje bulunmaktadir. Diger taraftan garanti olmasi acisindan her bir pool kullanimina bakilirsa 2 objenin yeni olusturmus oldugumuz pool uzerinde oldugu gozlemlenir.&lt;br /&gt;
&lt;br /&gt;
 #sudo ceph df detail&lt;br /&gt;
 GLOBAL:&lt;br /&gt;
    SIZE        AVAIL       RAW USED     %RAW USED     OBJECTS&lt;br /&gt;
    351 TiB     351 TiB       54 GiB          0.01        257 &lt;br /&gt;
 POOLS:&lt;br /&gt;
    NAME                             ID     QUOTA OBJECTS     QUOTA BYTES     USED        %USED     MAX AVAIL     OBJECTS     DIRTY     READ        WRITE       RAW USED&lt;br /&gt;
    .rgw.root                        1      N/A               N/A             1.3 KiB         0       111 TiB           4        4      1.8 KiB        10 B      4.0 KiB&lt;br /&gt;
    default.rgw.control              2      N/A               N/A                 0 B         0       111 TiB           8        8          0 B         0 B          0 B&lt;br /&gt;
    default.rgw.meta                 3      N/A               N/A             3.9 KiB         0       111 TiB          21       21        522 B       153 B       12 KiB&lt;br /&gt;
    default.rgw.log                  4      N/A               N/A                 0 B         0       111 TiB         207      207      2.1 MiB     1.4 MiB          0 B&lt;br /&gt;
    default.rgw.buckets.index        5      N/A               N/A                 0 B         0       111 TiB           4        4         79 B        33 B          0 B&lt;br /&gt;
    default.rgw.buckets.data         6      N/A               N/A               516 B         0       111 TiB           1        1          0 B        10 B      1.5 KiB&lt;br /&gt;
    .rgw.buckets.ssd_index           8      N/A               512 GiB             0 B         0       471 GiB          10       10        214 B        56 B          0 B&lt;br /&gt;
    .rgw.buckets.sharedfile_data     9      N/A               30 TiB          1.1 KiB         0       111 TiB           2        2          0 B        20 B      3.2 KiB&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=236</id>
		<title>RADOSGW Storage Pool Yapilandirma, Optimizasyon ve Testi</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=236"/>
				<updated>2018-09-20T12:41:26Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* TEST islemleri */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Obje Depolama Pool Ayarlari - Depolama Politikasi ==&lt;br /&gt;
Herhangi bir yapilandirma yapilmadiginda radosgw uzerinden kullanici tarafinda atilan obje veya bucketlar default yer olan default.rgw.buckets.data adinda pool uzerinde tutulmaktadir. Bunun index bilgileri ise default.rgw.buckets.index pool uzerinde tutulmaktadir. Kullanici vb meta verileri, log'lar ise ayri yapilandirilmis default.rgw.meta ve default.rgw.log pool'lari uzerinde tutulmaktadir.&lt;br /&gt;
&lt;br /&gt;
Asagidaki komutla default olusturulan pool ve detaylari bulunabilir.&lt;br /&gt;
&lt;br /&gt;
 # ceph osd pool ls detail&lt;br /&gt;
 pool 1 '.rgw.root' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 195 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 2 'default.rgw.control' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 199 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 3 'default.rgw.meta' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 201 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 4 'default.rgw.log' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 203 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw &lt;br /&gt;
 pool 5 'default.rgw.buckets.index' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 206 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 6 'default.rgw.buckets.data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 209 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
&lt;br /&gt;
Bune gore default olarak ayarlanan her bir pool 3 replikasi ve her birinin 256 pg sayisi bulunmaktadir. (CEPH kurulumu yapilirken ceph.conf icerisinde default pg sayisi 256 set edildiginde bu pool'lar bu sekilde yapilandirilmistir)&lt;br /&gt;
&lt;br /&gt;
Bu nedenle farkli kullanicilar uzerinden gelecek veriler ayni ozellikte ki pool uzerinde kaydedilecektir, Ornegin B3LAB projesi icin olusturulan kullanicinin verileri de kendimiz icin olsuturulacak GLANCE ve NextCloud projeleri icin olusturulacak kullanicilar da ayni pool uzerinde verileri tutacaklardir. Bu pek istenen bir durum degildir, cunku degisen kapasiteye ve kullanima bagli ozel olusturulmus pool uzerinde verilerini tutmasi daha dogru bir yaklasim olacaktir. index, metadata ve log'lar default pool uzerinde tutulabilir, ancak veriler icin ayri bir data pool tutmak icin bu dokuman hazirlanmistir.&lt;br /&gt;
&lt;br /&gt;
NOT: Her bir objeye ait veriler indexlenmektedir. Eger tum objeleri listeleme gibi bir gereksinim bulunmuyorsa bu durumda her bir objeye ait index bilgisini tutmak gereksizdir. Bunun icin asagidaki baslik izlenebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#indexless_buckets&lt;br /&gt;
&lt;br /&gt;
Ayrica; eger milyonlarca obje olacakse ve surekli listeleme gibi isler yapilacaksa bu durumda index'in yer aldigi pool aysi SSD'lerden olusan bir pool uzerine kurgulanabilir. Bucket index sharding islemi ile de oldukca performans kazanci elde edilebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#bucket_sharding&lt;br /&gt;
&lt;br /&gt;
 AMAC:&lt;br /&gt;
 1- Dosyalarin daha performansli listelenebilmesi icin SSD'ler uzerinde yer alan index pool ve objelerin tutulacagi yuksek pg sayili, 3 replikali data pool olusturmak.&lt;br /&gt;
     index pool: .rgw.buckets.ssd_index, 256 pg, 3 replika, 512GB kota&lt;br /&gt;
     data pool: .rgw.buckets.sharedfile_data, 1024 pg, 3 replika, 30TB kota&lt;br /&gt;
 2- Ayni ozellikte isterleri olan farkli iki proje icin (SAFIR ve NextCloud) ayri kullanici olusturup bu pool'lar uzerinde islem yapabilmesini saglamak&lt;br /&gt;
 3- Her bir kullaniciya ayri kotalar tanimlamak&lt;br /&gt;
&lt;br /&gt;
=== POOL OLUSTURMA ===&lt;br /&gt;
Onceden hazirlanmis 2 farkli crush rule var, bunlardan biri sadece nVme ssd disklerin yer aldigi fast, digeri ise sadece SATA Hdd'lerin yer aldigi replicated_rule. Pool'lar bu chrush liste gore olusturuldu.&lt;br /&gt;
 # ceph osd crush rule list&lt;br /&gt;
 replicated_rule&lt;br /&gt;
 fast&lt;br /&gt;
&lt;br /&gt;
 # ceph osd crush class ls-osd ssd&lt;br /&gt;
 48&lt;br /&gt;
 49&lt;br /&gt;
 50&lt;br /&gt;
 51&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.ssd_index 256 256&lt;br /&gt;
 ceph osd pool set .rgw.buckets.ssd_index crush_rule fast&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.ssd_index max_bytes 512GB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.ssd_index rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.sharedfile_data 1024 1024&lt;br /&gt;
 ceph osd pool set .rgw.buckets.sharedfile_data crush_rule replicated_rule&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.sharedfile_data max_bytes 30TB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.sharedfile_data rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool ls detail&lt;br /&gt;
 .... &lt;br /&gt;
 ....&lt;br /&gt;
 pool 8 '.rgw.buckets.ssd_index' replicated size 3 min_size 3 crush_rule 1 object_hash rjenkins pg_num 256 pgp_num 256 last_change 268 flags hashpspool stripe_width 0&lt;br /&gt;
 pool 9 '.rgw.buckets.sharedfile_data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 1024 pgp_num 1024 last_change 271 flags hashpspool stripe_width 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Placement Target ===&lt;br /&gt;
CEPH Object Gateway, kullanicinin verisini tutarken iliskilendirilmis placement target bilgisine bakar, herhangi bir ayar yapilmadiysa default olan zone altinda yer alan default-placement bilgisine gore de islem yapar. Az once olusturdugumuz sekilde pool'lar uzerinde spesifik islem yapabilmek icin ayni zone altinda yeni bir placement grup olusturup pool bilgilerini ayri ayri burada set etmemiz gerekecektir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup --rgw-zonegroup=default get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sharedfile-placement adinda yeni bir placement target olusturmak icin zonegroup.json dosyasi asagidaki sekilde guncellenip calistirilir.&lt;br /&gt;
&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup set &amp;lt; zonegroup.json&lt;br /&gt;
&lt;br /&gt;
Daha sonra zone yapilandirma dosyasini alip data ve index icin olusturulan bu pool'lar set edilecek sekilde placement target guncellenir.&lt;br /&gt;
&lt;br /&gt;
 # sudo radosgw-admin zone get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 sudo radosgw-admin zone get &amp;gt; zone.json&lt;br /&gt;
 sudo vi zone.json&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;.rgw.buckets.ssd_index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 radosgw-admin zone set &amp;lt; zone.json&lt;br /&gt;
 radosgw-admin period update --commit&lt;br /&gt;
&lt;br /&gt;
=== Bucket Optimizasyon ===&lt;br /&gt;
Pool uzerinde kayitli bucket uzerinde tutulan tum objelerin index bilgisi SSD disk uzerinde tutacak sekilde yapilandirilan .rgw.buckets.ssd_index poolu uzerinde durmaktadir. Buna ek olarak performansi artirmak icin bucket sharding denilen her bir bucket icin tutulacak maksimim obje sayisini belirleyen bir ayar girilmesi gerekmektedir. Tek bir bucket uzerinde milyonlarca kayit tutmak performansi cok dusurecektir.&lt;br /&gt;
&lt;br /&gt;
rgw_override_bucket_index_max_shards parametresi bucket basina tutulacak en fazla shard bilgisini gostermektedir. Default ayari 0'dir, yani bucket uzerinde sinirsiz sayida obje tutacak sekildedir. Bu sayinin belirlenmesi icin asagidaki formul onerilmektedir.&lt;br /&gt;
&lt;br /&gt;
 number of objects expected in a bucket / 100,000&lt;br /&gt;
&lt;br /&gt;
Biz olusturdugumuz pool icin 10.000 kullanici ve her birinin 100 dosyasi olacak sekilde on gordugumuzde toplam obje sayisi 1 milyon olmakta, bu durumda bu sayi ise 10 olacaktir.&lt;br /&gt;
ceph.conf dosyasina asagidaki satir eklenir, ve radosgw servisi restart edilir.&lt;br /&gt;
&lt;br /&gt;
 rgw_override_bucket_index_max_shards = 10&lt;br /&gt;
&lt;br /&gt;
 systemctl restart ceph-radosgw.service&lt;br /&gt;
&lt;br /&gt;
=== Kullanici Olusturma ve Yetkilendirme ===&lt;br /&gt;
Son olarak RADOSGW uzerinde ayarlari yapilmis bu pool'lar uzerinde veri tutacak kullanicilarin olusturulmasinda. RadosGW, hem S3 uyumlu (user) hem de swift api uyumlu (subuser) kullanici olusturmaya izin veriyor.  Dolayisiyla S3 arayuzu icin access ve secret key gerekirken swift arayuzu icin secret key yeterli olabilmektedir. Burada swift api uyumlu subuser olusturulup yetkilendirilecektir. Kullanicilar full yetkiye sahip olacak sekilde olusturulacaktir. (Alternatifer; read, write, readwrite)&lt;br /&gt;
&lt;br /&gt;
 SAFIR kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;safir&amp;quot; --display-name=&amp;quot;B3LAB SAFIR Grubu&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=safir --subuser=safir:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 NextCloud kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;nextcloud&amp;quot; --display-name=&amp;quot;ULAKBIM NextCloud Servisi&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=nextcloud --subuser=nextcloud:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin user info --uid=nextcloud&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;user_id&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;display_name&amp;quot;: &amp;quot;ULAKBIM NextCloud Servisi&amp;quot;,&lt;br /&gt;
    &amp;quot;email&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;suspended&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;max_buckets&amp;quot;: 1000,&lt;br /&gt;
    &amp;quot;auid&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;subusers&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;permissions&amp;quot;: &amp;quot;full-control&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
            &amp;quot;access_key&amp;quot;: &amp;quot;blabla&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;swift_keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;caps&amp;quot;: [],&lt;br /&gt;
    &amp;quot;op_mask&amp;quot;: &amp;quot;read, write, delete&amp;quot;,&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_tags&amp;quot;: [],&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;temp_url_keys&amp;quot;: [],&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;rgw&amp;quot;,&lt;br /&gt;
    &amp;quot;mfa_ids&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
komutu ile kullaniciya ait bilgiler gelmektedir. Bu kullanicilar, hem S3 ile hem de Swift arayuzu ile konusabilecek key'lere sahiptirler.&lt;br /&gt;
&lt;br /&gt;
Dilenirse bu kullanicilar bir sure kullanima kapatilip tekrar asagidaki komutla acilabilir.&lt;br /&gt;
 # radosgw-admin user suspend --uid=nextcloud&lt;br /&gt;
 # radosgw-admin user enable --uid=nextcloud&lt;br /&gt;
&lt;br /&gt;
Kullanici bilgilerine bakildiginda herhangi bir kota bulunmamaktadir. Her ne kadar pool bazinda bir kota tanimlamasi yapildiysa da kullanici bazinda da bir kota tanimlamasi yapilmasi gerekmektedir. CEPH uzerinde kota tanimlamasi kullanici veya kullanicinin sahip oldugu bucket bazinda yapilabilmektedir. Default'ta her ikisi disable durumundadir. Burada kullanici bazli bir kota tanimlanacaktir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=safir --max-objects=1000000 --max-size=30TB&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=nextcloud --max-objects=100000 --max-size=3TB&lt;br /&gt;
&lt;br /&gt;
son olarak kullanici bazli kota tanimlamayi etkinlestirmek gerekmektedir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=nextcloud&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=safir&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: true,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: 32985348833280,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 32212254720,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: 1000000&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Kullanici ile Iliskilendirme ===&lt;br /&gt;
&lt;br /&gt;
Olusturulan bu kullanicilarin sadece yeni olusturdugumuz placement_target dolayisiyla pool uzerinde default islem yapabilmeleri icin metadata verilerinde guncelleme yapmak gerekir. Kullanici bilgisine baktigimizda default_placement bos gelmektedir. Bunu sharedfile_placement ile guncellemek icin:&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata get user:nextcloud &amp;gt; user.json&lt;br /&gt;
user.json dosyasinda default_placement karsisina sharedfile-placement eklenir.&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata put user:nextcloud &amp;lt; user.json ile metadata guncellenir.&lt;br /&gt;
&lt;br /&gt;
Benzer islem diger kullanici icinde yapilir.&lt;br /&gt;
 # radosgw-admin metadata get user:safir &amp;gt; user.json&lt;br /&gt;
 # radosgw-admin metadata put user:safir &amp;lt; user.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TEST islemleri ===&lt;br /&gt;
Pek cok farkli yontemle bucket olusturulup icerisine dosya atilabilir. Bunlardan birkaci ile asagida ornek olmasi acisindan komutlar verilmistir.&lt;br /&gt;
&lt;br /&gt;
S3 arayuzu uzerinden python boto kutuphanesi kullanilarak o kullanicinin access ve secret keyleri ile bucket olusturulabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # cat cephtestv2.py&lt;br /&gt;
 import boto&lt;br /&gt;
 import boto.s3.connection&lt;br /&gt;
 access_key = 'blabla'&lt;br /&gt;
 secret_key = 'blabla'&lt;br /&gt;
 conn = boto.connect_s3(&lt;br /&gt;
           aws_access_key_id = access_key,&lt;br /&gt;
              aws_secret_access_key = secret_key,&lt;br /&gt;
                 host = 'gwmon', port =7480,is_secure=False, calling_format = boto.s3.connection.OrdinaryCallingFormat(),)&lt;br /&gt;
&lt;br /&gt;
 bucket = conn.create_bucket('test-bucket')&lt;br /&gt;
 for bucket in conn.get_all_buckets():&lt;br /&gt;
       print &amp;quot;{name} {created}&amp;quot;.format(name = bucket.name,created = bucket.creation_date,)&lt;br /&gt;
&lt;br /&gt;
Boylece test-bucket adinda bir bucket olusturulmus olunur. Bu bucket altina dosya atmak icinse SWIFT arayuzu uzerinden secret_key ile dosya gonderilebilir.&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla upload test-bucket cephtest.py&lt;br /&gt;
&lt;br /&gt;
Bu bucket altindaki dosyalari listelemek icinse&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla list test-bucket komutu kullanilir.&lt;br /&gt;
&lt;br /&gt;
Bucket ve dosyanin nereye yazildigi onemlidir. Bucket adi verilerek kullanimina ve hangi placement target kullandigina bakilabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin bucket stats --bucket test-bucket&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;bucket&amp;quot;: &amp;quot;test-bucket&amp;quot;,&lt;br /&gt;
    &amp;quot;zonegroup&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-c975ab4e2d65&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_rule&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;explicit_placement&amp;quot;: {&lt;br /&gt;
        &amp;quot;data_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;data_extra_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;index_pool&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;marker&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;index_type&amp;quot;: &amp;quot;Normal&amp;quot;,&lt;br /&gt;
    &amp;quot;owner&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;ver&amp;quot;: &amp;quot;0#2,1#1,2#1,3#2,4#1,5#1,6#1,7#1,8#1,9#1&amp;quot;,&lt;br /&gt;
    &amp;quot;master_ver&amp;quot;: &amp;quot;0#0,1#0,2#0,3#0,4#0,5#0,6#0,7#0,8#0,9#0&amp;quot;,&lt;br /&gt;
    &amp;quot;mtime&amp;quot;: &amp;quot;2018-09-17 15:51:55.909340&amp;quot;,&lt;br /&gt;
    &amp;quot;max_marker&amp;quot;: &amp;quot;0#,1#,2#,3#,4#,5#,6#,7#,8#,9#&amp;quot;,&lt;br /&gt;
    &amp;quot;usage&amp;quot;: {&lt;br /&gt;
        &amp;quot;rgw.main&amp;quot;: {&lt;br /&gt;
            &amp;quot;size&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_actual&amp;quot;: 8192,&lt;br /&gt;
            &amp;quot;size_utilized&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_kb&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;size_kb_actual&amp;quot;: 8,&lt;br /&gt;
            &amp;quot;size_kb_utilized&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;num_objects&amp;quot;: 2&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: true,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
placement_rule bizim set etmis oldugumuz yerde olusturulmustur. Icerisinde ise 2 obje bulunmaktadir. Diger taraftan garanti olmasi acisindan her bir pool kullanimina bakilirsa 2 objenin yeni olusturmus oldugumuz pool uzerinde oldugu gozlemlenir.&lt;br /&gt;
&lt;br /&gt;
 #sudo ceph df detail&lt;br /&gt;
 GLOBAL:&lt;br /&gt;
    SIZE        AVAIL       RAW USED     %RAW USED     OBJECTS&lt;br /&gt;
    351 TiB     351 TiB       54 GiB          0.01        257 &lt;br /&gt;
 POOLS:&lt;br /&gt;
    NAME                             ID     QUOTA OBJECTS     QUOTA BYTES     USED        %USED     MAX AVAIL     OBJECTS     DIRTY     READ        WRITE       RAW USED&lt;br /&gt;
    .rgw.root                        1      N/A               N/A             1.3 KiB         0       111 TiB           4        4      1.8 KiB        10 B      4.0 KiB&lt;br /&gt;
    default.rgw.control              2      N/A               N/A                 0 B         0       111 TiB           8        8          0 B         0 B          0 B&lt;br /&gt;
    default.rgw.meta                 3      N/A               N/A             3.9 KiB         0       111 TiB          21       21        522 B       153 B       12 KiB&lt;br /&gt;
    default.rgw.log                  4      N/A               N/A                 0 B         0       111 TiB         207      207      2.1 MiB     1.4 MiB          0 B&lt;br /&gt;
    default.rgw.buckets.index        5      N/A               N/A                 0 B         0       111 TiB           4        4         79 B        33 B          0 B&lt;br /&gt;
    default.rgw.buckets.data         6      N/A               N/A               516 B         0       111 TiB           1        1          0 B        10 B      1.5 KiB&lt;br /&gt;
    .rgw.buckets.ssd_index           8      N/A               512 GiB             0 B         0       471 GiB          10       10        214 B        56 B          0 B&lt;br /&gt;
    .rgw.buckets.sharedfile_data     9      N/A               30 TiB          1.1 KiB         0       111 TiB           2        2          0 B        20 B      3.2 KiB&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_SSD_Tamponlama_-_Cache_Tiering&amp;diff=235</id>
		<title>CEPH SSD Tamponlama - Cache Tiering</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_SSD_Tamponlama_-_Cache_Tiering&amp;diff=235"/>
				<updated>2018-09-20T12:40:56Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== CEPH CACHE TIERING ===&lt;br /&gt;
write-back mode icin anlatilmistir.&lt;br /&gt;
nvme ssd disklerden olusturulan rbdssd pool'u cache olarak sata disk pooldan olusan rbdperftest poolu onune koymak icin Mimic versiyonunda yapilmasi gereken islemler&lt;br /&gt;
&lt;br /&gt;
 #cache tiering&lt;br /&gt;
 #cache pool: rbdssd&lt;br /&gt;
 #cool pool: rbdperftest&lt;br /&gt;
&lt;br /&gt;
* rbdperftest icerisinde kaln objeleri silmek icin:&lt;br /&gt;
 for i in `rados -p rbdperftest ls`; do rados -p rbdperftest rm $i; echo $i; done&lt;br /&gt;
&lt;br /&gt;
* tier yapida rbdssd'yi cache'lemek icin&lt;br /&gt;
 ceph osd tier add rbdperftest rbdssd&lt;br /&gt;
&lt;br /&gt;
* degisen dosyalar oldugundan modu write-back olarak ayarlandi.&lt;br /&gt;
 ceph osd tier cache-mode rbdssd writeback&lt;br /&gt;
&lt;br /&gt;
* tum veri trafiginin rbdssd cache uzerinden aktarilabilmesi icin yapildi. Dilernirse eger veri cache'te yok ise bu durumda dogrudan hdd uzerinden de okunabilir. (read-proxy mode)&lt;br /&gt;
 ceph osd tier set-overlay rbdperftest rbdssd&lt;br /&gt;
&lt;br /&gt;
* durum kontrol edilir.&lt;br /&gt;
 ceph osd pool ls detail&lt;br /&gt;
&lt;br /&gt;
* Cache'te yer alan degisen objeler pool kapasitesinin yuzde 40 oldugunda hdd'ye flush etmeye basla.&lt;br /&gt;
 ceph osd pool set rbdssd cache_target_dirty_ratio 0.4&lt;br /&gt;
&lt;br /&gt;
* Degisen objeler toplam kapasitenin yuzde 60'ina ulastiginda agresif bir flush'lamaya basla.&lt;br /&gt;
 ceph osd pool set rbdssd cache_target_dirty_high_ratio 0.6&lt;br /&gt;
&lt;br /&gt;
* Sabit kalan objeler kapasitenin yuzde sekseni oldugunda bu objeleri flush etmeye basla.&lt;br /&gt;
 ceph osd pool set rbdssd cache_target_full_ratio 0.8&lt;br /&gt;
&lt;br /&gt;
* Obje degistikten 10dk sonra flush et.&lt;br /&gt;
 ceph osd pool set rbdssd cache_min_flush_age 600&lt;br /&gt;
&lt;br /&gt;
* Cache'te yer alan ve 30 dk dir erisilmeyen objeleri cikar. (evict)&lt;br /&gt;
 ceph osd pool set rbdssd cache_min_evict_age 1800&lt;br /&gt;
&lt;br /&gt;
* 1 cache pools are missing hit_sets hatasini onlemek icin&lt;br /&gt;
 ceph osd pool set OpenstackCachedRBD hit_set_type bloom&lt;br /&gt;
&lt;br /&gt;
=== KALDIRMAK icin ===&lt;br /&gt;
uzerindeki verileri flush etmek icin;&lt;br /&gt;
 ceph osd tier cache-mode rbdssd forward --yes-i-really-mean-it&lt;br /&gt;
&lt;br /&gt;
ne kadar obje olduguna bakilir,&lt;br /&gt;
 rados -p rbdssd ls&lt;br /&gt;
&lt;br /&gt;
hala cok sayida var ise elle flush edilir.&lt;br /&gt;
 rados -p rbdssd cache-flush-evict-all&lt;br /&gt;
&lt;br /&gt;
ceph df komutu ile o pool'da yer alan obje sayisina bakilir. Surekli azalmasi gereklidir.&lt;br /&gt;
 ceph osd tier remove-overlay rbdperftest&lt;br /&gt;
 ceph osd tier remove rbdperftest rbdssd&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=234</id>
		<title>RADOSGW Storage Pool Yapilandirma, Optimizasyon ve Testi</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=234"/>
				<updated>2018-09-20T12:40:35Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* TEST islemleri */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Obje Depolama Pool Ayarlari - Depolama Politikasi ==&lt;br /&gt;
Herhangi bir yapilandirma yapilmadiginda radosgw uzerinden kullanici tarafinda atilan obje veya bucketlar default yer olan default.rgw.buckets.data adinda pool uzerinde tutulmaktadir. Bunun index bilgileri ise default.rgw.buckets.index pool uzerinde tutulmaktadir. Kullanici vb meta verileri, log'lar ise ayri yapilandirilmis default.rgw.meta ve default.rgw.log pool'lari uzerinde tutulmaktadir.&lt;br /&gt;
&lt;br /&gt;
Asagidaki komutla default olusturulan pool ve detaylari bulunabilir.&lt;br /&gt;
&lt;br /&gt;
 # ceph osd pool ls detail&lt;br /&gt;
 pool 1 '.rgw.root' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 195 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 2 'default.rgw.control' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 199 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 3 'default.rgw.meta' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 201 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 4 'default.rgw.log' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 203 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw &lt;br /&gt;
 pool 5 'default.rgw.buckets.index' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 206 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 6 'default.rgw.buckets.data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 209 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
&lt;br /&gt;
Bune gore default olarak ayarlanan her bir pool 3 replikasi ve her birinin 256 pg sayisi bulunmaktadir. (CEPH kurulumu yapilirken ceph.conf icerisinde default pg sayisi 256 set edildiginde bu pool'lar bu sekilde yapilandirilmistir)&lt;br /&gt;
&lt;br /&gt;
Bu nedenle farkli kullanicilar uzerinden gelecek veriler ayni ozellikte ki pool uzerinde kaydedilecektir, Ornegin B3LAB projesi icin olusturulan kullanicinin verileri de kendimiz icin olsuturulacak GLANCE ve NextCloud projeleri icin olusturulacak kullanicilar da ayni pool uzerinde verileri tutacaklardir. Bu pek istenen bir durum degildir, cunku degisen kapasiteye ve kullanima bagli ozel olusturulmus pool uzerinde verilerini tutmasi daha dogru bir yaklasim olacaktir. index, metadata ve log'lar default pool uzerinde tutulabilir, ancak veriler icin ayri bir data pool tutmak icin bu dokuman hazirlanmistir.&lt;br /&gt;
&lt;br /&gt;
NOT: Her bir objeye ait veriler indexlenmektedir. Eger tum objeleri listeleme gibi bir gereksinim bulunmuyorsa bu durumda her bir objeye ait index bilgisini tutmak gereksizdir. Bunun icin asagidaki baslik izlenebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#indexless_buckets&lt;br /&gt;
&lt;br /&gt;
Ayrica; eger milyonlarca obje olacakse ve surekli listeleme gibi isler yapilacaksa bu durumda index'in yer aldigi pool aysi SSD'lerden olusan bir pool uzerine kurgulanabilir. Bucket index sharding islemi ile de oldukca performans kazanci elde edilebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#bucket_sharding&lt;br /&gt;
&lt;br /&gt;
 AMAC:&lt;br /&gt;
 1- Dosyalarin daha performansli listelenebilmesi icin SSD'ler uzerinde yer alan index pool ve objelerin tutulacagi yuksek pg sayili, 3 replikali data pool olusturmak.&lt;br /&gt;
     index pool: .rgw.buckets.ssd_index, 256 pg, 3 replika, 512GB kota&lt;br /&gt;
     data pool: .rgw.buckets.sharedfile_data, 1024 pg, 3 replika, 30TB kota&lt;br /&gt;
 2- Ayni ozellikte isterleri olan farkli iki proje icin (SAFIR ve NextCloud) ayri kullanici olusturup bu pool'lar uzerinde islem yapabilmesini saglamak&lt;br /&gt;
 3- Her bir kullaniciya ayri kotalar tanimlamak&lt;br /&gt;
&lt;br /&gt;
=== POOL OLUSTURMA ===&lt;br /&gt;
Onceden hazirlanmis 2 farkli crush rule var, bunlardan biri sadece nVme ssd disklerin yer aldigi fast, digeri ise sadece SATA Hdd'lerin yer aldigi replicated_rule. Pool'lar bu chrush liste gore olusturuldu.&lt;br /&gt;
 # ceph osd crush rule list&lt;br /&gt;
 replicated_rule&lt;br /&gt;
 fast&lt;br /&gt;
&lt;br /&gt;
 # ceph osd crush class ls-osd ssd&lt;br /&gt;
 48&lt;br /&gt;
 49&lt;br /&gt;
 50&lt;br /&gt;
 51&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.ssd_index 256 256&lt;br /&gt;
 ceph osd pool set .rgw.buckets.ssd_index crush_rule fast&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.ssd_index max_bytes 512GB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.ssd_index rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.sharedfile_data 1024 1024&lt;br /&gt;
 ceph osd pool set .rgw.buckets.sharedfile_data crush_rule replicated_rule&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.sharedfile_data max_bytes 30TB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.sharedfile_data rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool ls detail&lt;br /&gt;
 .... &lt;br /&gt;
 ....&lt;br /&gt;
 pool 8 '.rgw.buckets.ssd_index' replicated size 3 min_size 3 crush_rule 1 object_hash rjenkins pg_num 256 pgp_num 256 last_change 268 flags hashpspool stripe_width 0&lt;br /&gt;
 pool 9 '.rgw.buckets.sharedfile_data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 1024 pgp_num 1024 last_change 271 flags hashpspool stripe_width 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Placement Target ===&lt;br /&gt;
CEPH Object Gateway, kullanicinin verisini tutarken iliskilendirilmis placement target bilgisine bakar, herhangi bir ayar yapilmadiysa default olan zone altinda yer alan default-placement bilgisine gore de islem yapar. Az once olusturdugumuz sekilde pool'lar uzerinde spesifik islem yapabilmek icin ayni zone altinda yeni bir placement grup olusturup pool bilgilerini ayri ayri burada set etmemiz gerekecektir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup --rgw-zonegroup=default get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sharedfile-placement adinda yeni bir placement target olusturmak icin zonegroup.json dosyasi asagidaki sekilde guncellenip calistirilir.&lt;br /&gt;
&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup set &amp;lt; zonegroup.json&lt;br /&gt;
&lt;br /&gt;
Daha sonra zone yapilandirma dosyasini alip data ve index icin olusturulan bu pool'lar set edilecek sekilde placement target guncellenir.&lt;br /&gt;
&lt;br /&gt;
 # sudo radosgw-admin zone get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 sudo radosgw-admin zone get &amp;gt; zone.json&lt;br /&gt;
 sudo vi zone.json&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;.rgw.buckets.ssd_index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 radosgw-admin zone set &amp;lt; zone.json&lt;br /&gt;
 radosgw-admin period update --commit&lt;br /&gt;
&lt;br /&gt;
=== Bucket Optimizasyon ===&lt;br /&gt;
Pool uzerinde kayitli bucket uzerinde tutulan tum objelerin index bilgisi SSD disk uzerinde tutacak sekilde yapilandirilan .rgw.buckets.ssd_index poolu uzerinde durmaktadir. Buna ek olarak performansi artirmak icin bucket sharding denilen her bir bucket icin tutulacak maksimim obje sayisini belirleyen bir ayar girilmesi gerekmektedir. Tek bir bucket uzerinde milyonlarca kayit tutmak performansi cok dusurecektir.&lt;br /&gt;
&lt;br /&gt;
rgw_override_bucket_index_max_shards parametresi bucket basina tutulacak en fazla shard bilgisini gostermektedir. Default ayari 0'dir, yani bucket uzerinde sinirsiz sayida obje tutacak sekildedir. Bu sayinin belirlenmesi icin asagidaki formul onerilmektedir.&lt;br /&gt;
&lt;br /&gt;
 number of objects expected in a bucket / 100,000&lt;br /&gt;
&lt;br /&gt;
Biz olusturdugumuz pool icin 10.000 kullanici ve her birinin 100 dosyasi olacak sekilde on gordugumuzde toplam obje sayisi 1 milyon olmakta, bu durumda bu sayi ise 10 olacaktir.&lt;br /&gt;
ceph.conf dosyasina asagidaki satir eklenir, ve radosgw servisi restart edilir.&lt;br /&gt;
&lt;br /&gt;
 rgw_override_bucket_index_max_shards = 10&lt;br /&gt;
&lt;br /&gt;
 systemctl restart ceph-radosgw.service&lt;br /&gt;
&lt;br /&gt;
=== Kullanici Olusturma ve Yetkilendirme ===&lt;br /&gt;
Son olarak RADOSGW uzerinde ayarlari yapilmis bu pool'lar uzerinde veri tutacak kullanicilarin olusturulmasinda. RadosGW, hem S3 uyumlu (user) hem de swift api uyumlu (subuser) kullanici olusturmaya izin veriyor.  Dolayisiyla S3 arayuzu icin access ve secret key gerekirken swift arayuzu icin secret key yeterli olabilmektedir. Burada swift api uyumlu subuser olusturulup yetkilendirilecektir. Kullanicilar full yetkiye sahip olacak sekilde olusturulacaktir. (Alternatifer; read, write, readwrite)&lt;br /&gt;
&lt;br /&gt;
 SAFIR kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;safir&amp;quot; --display-name=&amp;quot;B3LAB SAFIR Grubu&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=safir --subuser=safir:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 NextCloud kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;nextcloud&amp;quot; --display-name=&amp;quot;ULAKBIM NextCloud Servisi&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=nextcloud --subuser=nextcloud:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin user info --uid=nextcloud&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;user_id&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;display_name&amp;quot;: &amp;quot;ULAKBIM NextCloud Servisi&amp;quot;,&lt;br /&gt;
    &amp;quot;email&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;suspended&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;max_buckets&amp;quot;: 1000,&lt;br /&gt;
    &amp;quot;auid&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;subusers&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;permissions&amp;quot;: &amp;quot;full-control&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
            &amp;quot;access_key&amp;quot;: &amp;quot;blabla&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;swift_keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;caps&amp;quot;: [],&lt;br /&gt;
    &amp;quot;op_mask&amp;quot;: &amp;quot;read, write, delete&amp;quot;,&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_tags&amp;quot;: [],&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;temp_url_keys&amp;quot;: [],&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;rgw&amp;quot;,&lt;br /&gt;
    &amp;quot;mfa_ids&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
komutu ile kullaniciya ait bilgiler gelmektedir. Bu kullanicilar, hem S3 ile hem de Swift arayuzu ile konusabilecek key'lere sahiptirler.&lt;br /&gt;
&lt;br /&gt;
Dilenirse bu kullanicilar bir sure kullanima kapatilip tekrar asagidaki komutla acilabilir.&lt;br /&gt;
 # radosgw-admin user suspend --uid=nextcloud&lt;br /&gt;
 # radosgw-admin user enable --uid=nextcloud&lt;br /&gt;
&lt;br /&gt;
Kullanici bilgilerine bakildiginda herhangi bir kota bulunmamaktadir. Her ne kadar pool bazinda bir kota tanimlamasi yapildiysa da kullanici bazinda da bir kota tanimlamasi yapilmasi gerekmektedir. CEPH uzerinde kota tanimlamasi kullanici veya kullanicinin sahip oldugu bucket bazinda yapilabilmektedir. Default'ta her ikisi disable durumundadir. Burada kullanici bazli bir kota tanimlanacaktir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=safir --max-objects=1000000 --max-size=30TB&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=nextcloud --max-objects=100000 --max-size=3TB&lt;br /&gt;
&lt;br /&gt;
son olarak kullanici bazli kota tanimlamayi etkinlestirmek gerekmektedir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=nextcloud&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=safir&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: true,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: 32985348833280,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 32212254720,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: 1000000&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Kullanici ile Iliskilendirme ===&lt;br /&gt;
&lt;br /&gt;
Olusturulan bu kullanicilarin sadece yeni olusturdugumuz placement_target dolayisiyla pool uzerinde default islem yapabilmeleri icin metadata verilerinde guncelleme yapmak gerekir. Kullanici bilgisine baktigimizda default_placement bos gelmektedir. Bunu sharedfile_placement ile guncellemek icin:&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata get user:nextcloud &amp;gt; user.json&lt;br /&gt;
user.json dosyasinda default_placement karsisina sharedfile-placement eklenir.&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata put user:nextcloud &amp;lt; user.json ile metadata guncellenir.&lt;br /&gt;
&lt;br /&gt;
Benzer islem diger kullanici icinde yapilir.&lt;br /&gt;
 # radosgw-admin metadata get user:safir &amp;gt; user.json&lt;br /&gt;
 # radosgw-admin metadata put user:safir &amp;lt; user.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TEST islemleri ===&lt;br /&gt;
Pek cok farkli yontemle bucket olusturulup icerisine dosya atilabilir. Bunlardan birkaci ile asagida ornek olmasi acisindan komutlar verilmistir.&lt;br /&gt;
&lt;br /&gt;
S3 arayuzu uzerinden python boto kutuphanesi kullanilarak o kullanicinin access ve secret keyleri ile bucket olusturulabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # cat cephtestv2.py&lt;br /&gt;
 import boto&lt;br /&gt;
 import boto.s3.connection&lt;br /&gt;
 access_key = 'sifreniz'&lt;br /&gt;
 secret_key = 'sifreniz'&lt;br /&gt;
 conn = boto.connect_s3(&lt;br /&gt;
           aws_access_key_id = access_key,&lt;br /&gt;
              aws_secret_access_key = secret_key,&lt;br /&gt;
                 host = 'gwmon', port =7480,is_secure=False, calling_format = boto.s3.connection.OrdinaryCallingFormat(),)&lt;br /&gt;
&lt;br /&gt;
 bucket = conn.create_bucket('test-bucket')&lt;br /&gt;
 for bucket in conn.get_all_buckets():&lt;br /&gt;
       print &amp;quot;{name} {created}&amp;quot;.format(name = bucket.name,created = bucket.creation_date,)&lt;br /&gt;
&lt;br /&gt;
Boylece test-bucket adinda bir bucket olusturulmus olunur. Bu bucket altina dosya atmak icinse SWIFT arayuzu uzerinden secret_key ile dosya gonderilebilir.&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla upload test-bucket cephtest.py&lt;br /&gt;
&lt;br /&gt;
Bu bucket altindaki dosyalari listelemek icinse&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla list test-bucket komutu kullanilir.&lt;br /&gt;
&lt;br /&gt;
Bucket ve dosyanin nereye yazildigi onemlidir. Bucket adi verilerek kullanimina ve hangi placement target kullandigina bakilabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin bucket stats --bucket test-bucket&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;bucket&amp;quot;: &amp;quot;test-bucket&amp;quot;,&lt;br /&gt;
    &amp;quot;zonegroup&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-c975ab4e2d65&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_rule&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;explicit_placement&amp;quot;: {&lt;br /&gt;
        &amp;quot;data_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;data_extra_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;index_pool&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;marker&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;index_type&amp;quot;: &amp;quot;Normal&amp;quot;,&lt;br /&gt;
    &amp;quot;owner&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;ver&amp;quot;: &amp;quot;0#2,1#1,2#1,3#2,4#1,5#1,6#1,7#1,8#1,9#1&amp;quot;,&lt;br /&gt;
    &amp;quot;master_ver&amp;quot;: &amp;quot;0#0,1#0,2#0,3#0,4#0,5#0,6#0,7#0,8#0,9#0&amp;quot;,&lt;br /&gt;
    &amp;quot;mtime&amp;quot;: &amp;quot;2018-09-17 15:51:55.909340&amp;quot;,&lt;br /&gt;
    &amp;quot;max_marker&amp;quot;: &amp;quot;0#,1#,2#,3#,4#,5#,6#,7#,8#,9#&amp;quot;,&lt;br /&gt;
    &amp;quot;usage&amp;quot;: {&lt;br /&gt;
        &amp;quot;rgw.main&amp;quot;: {&lt;br /&gt;
            &amp;quot;size&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_actual&amp;quot;: 8192,&lt;br /&gt;
            &amp;quot;size_utilized&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_kb&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;size_kb_actual&amp;quot;: 8,&lt;br /&gt;
            &amp;quot;size_kb_utilized&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;num_objects&amp;quot;: 2&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: true,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
placement_rule bizim set etmis oldugumuz yerde olusturulmustur. Icerisinde ise 2 obje bulunmaktadir. Diger taraftan garanti olmasi acisindan her bir pool kullanimina bakilirsa 2 objenin yeni olusturmus oldugumuz pool uzerinde oldugu gozlemlenir.&lt;br /&gt;
&lt;br /&gt;
 #sudo ceph df detail&lt;br /&gt;
 GLOBAL:&lt;br /&gt;
    SIZE        AVAIL       RAW USED     %RAW USED     OBJECTS&lt;br /&gt;
    351 TiB     351 TiB       54 GiB          0.01        257 &lt;br /&gt;
 POOLS:&lt;br /&gt;
    NAME                             ID     QUOTA OBJECTS     QUOTA BYTES     USED        %USED     MAX AVAIL     OBJECTS     DIRTY     READ        WRITE       RAW USED&lt;br /&gt;
    .rgw.root                        1      N/A               N/A             1.3 KiB         0       111 TiB           4        4      1.8 KiB        10 B      4.0 KiB&lt;br /&gt;
    default.rgw.control              2      N/A               N/A                 0 B         0       111 TiB           8        8          0 B         0 B          0 B&lt;br /&gt;
    default.rgw.meta                 3      N/A               N/A             3.9 KiB         0       111 TiB          21       21        522 B       153 B       12 KiB&lt;br /&gt;
    default.rgw.log                  4      N/A               N/A                 0 B         0       111 TiB         207      207      2.1 MiB     1.4 MiB          0 B&lt;br /&gt;
    default.rgw.buckets.index        5      N/A               N/A                 0 B         0       111 TiB           4        4         79 B        33 B          0 B&lt;br /&gt;
    default.rgw.buckets.data         6      N/A               N/A               516 B         0       111 TiB           1        1          0 B        10 B      1.5 KiB&lt;br /&gt;
    .rgw.buckets.ssd_index           8      N/A               512 GiB             0 B         0       471 GiB          10       10        214 B        56 B          0 B&lt;br /&gt;
    .rgw.buckets.sharedfile_data     9      N/A               30 TiB          1.1 KiB         0       111 TiB           2        2          0 B        20 B      3.2 KiB&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_SSD_Tamponlama_-_Cache_Tiering&amp;diff=233</id>
		<title>CEPH SSD Tamponlama - Cache Tiering</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_SSD_Tamponlama_-_Cache_Tiering&amp;diff=233"/>
				<updated>2018-09-20T12:40:06Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &amp;quot;### CEPH CACHE TIERING ### write-back mode icin anlatilmistir. nvme ssd disklerden olusturulan rbdssd pool'u cache olarak sata disk pooldan olusan rbdperftest...&amp;quot; içeriğiyle yeni sayfa oluşturdu&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;### CEPH CACHE TIERING ###&lt;br /&gt;
write-back mode icin anlatilmistir.&lt;br /&gt;
nvme ssd disklerden olusturulan rbdssd pool'u cache olarak sata disk pooldan olusan rbdperftest poolu onune koymak icin Mimic versiyonunda yapilmasi gereken islemler&lt;br /&gt;
&lt;br /&gt;
 #cache tiering&lt;br /&gt;
 #cache pool: rbdssd&lt;br /&gt;
 #cool pool: rbdperftest&lt;br /&gt;
&lt;br /&gt;
* rbdperftest icerisinde kaln objeleri silmek icin:&lt;br /&gt;
 for i in `rados -p rbdperftest ls`; do rados -p rbdperftest rm $i; echo $i; done&lt;br /&gt;
&lt;br /&gt;
* tier yapida rbdssd'yi cache'lemek icin&lt;br /&gt;
 ceph osd tier add rbdperftest rbdssd&lt;br /&gt;
&lt;br /&gt;
* degisen dosyalar oldugundan modu write-back olarak ayarlandi.&lt;br /&gt;
 ceph osd tier cache-mode rbdssd writeback&lt;br /&gt;
&lt;br /&gt;
* tum veri trafiginin rbdssd cache uzerinden aktarilabilmesi icin yapildi. Dilernirse eger veri cache'te yok ise bu durumda dogrudan hdd uzerinden de okunabilir. (read-proxy mode)&lt;br /&gt;
 ceph osd tier set-overlay rbdperftest rbdssd&lt;br /&gt;
&lt;br /&gt;
* durum kontrol edilir.&lt;br /&gt;
 ceph osd pool ls detail&lt;br /&gt;
&lt;br /&gt;
* Cache'te yer alan degisen objeler pool kapasitesinin yuzde 40 oldugunda hdd'ye flush etmeye basla.&lt;br /&gt;
 ceph osd pool set rbdssd cache_target_dirty_ratio 0.4&lt;br /&gt;
&lt;br /&gt;
* Degisen objeler toplam kapasitenin yuzde 60'ina ulastiginda agresif bir flush'lamaya basla.&lt;br /&gt;
 ceph osd pool set rbdssd cache_target_dirty_high_ratio 0.6&lt;br /&gt;
&lt;br /&gt;
* Sabit kalan objeler kapasitenin yuzde sekseni oldugunda bu objeleri flush etmeye basla.&lt;br /&gt;
 ceph osd pool set rbdssd cache_target_full_ratio 0.8&lt;br /&gt;
&lt;br /&gt;
* Obje degistikten 10dk sonra flush et.&lt;br /&gt;
 ceph osd pool set rbdssd cache_min_flush_age 600&lt;br /&gt;
&lt;br /&gt;
* Cache'te yer alan ve 30 dk dir erisilmeyen objeleri cikar. (evict)&lt;br /&gt;
 ceph osd pool set rbdssd cache_min_evict_age 1800&lt;br /&gt;
&lt;br /&gt;
* 1 cache pools are missing hit_sets hatasini onlemek icin&lt;br /&gt;
 ceph osd pool set OpenstackCachedRBD hit_set_type bloom&lt;br /&gt;
&lt;br /&gt;
### KALDIRMAK icin ###&lt;br /&gt;
uzerindeki verileri flush etmek icin;&lt;br /&gt;
 ceph osd tier cache-mode rbdssd forward --yes-i-really-mean-it&lt;br /&gt;
&lt;br /&gt;
ne kadar obje olduguna bakilir,&lt;br /&gt;
 rados -p rbdssd ls&lt;br /&gt;
&lt;br /&gt;
hala cok sayida var ise elle flush edilir.&lt;br /&gt;
 rados -p rbdssd cache-flush-evict-all&lt;br /&gt;
&lt;br /&gt;
ceph df komutu ile o pool'da yer alan obje sayisina bakilir. Surekli azalmasi gereklidir.&lt;br /&gt;
 ceph osd tier remove-overlay rbdperftest&lt;br /&gt;
 ceph osd tier remove rbdperftest rbdssd&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=232</id>
		<title>Anasayfa</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=232"/>
				<updated>2018-09-20T12:37:11Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* CEPH YÖNETİMİ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bu web sayfası, TÜBİTAK ULAKBİM çatısı altında hizmet vermeye devam eden Bulut projesinde çeşitli alanlarda hizmet veren teknolojilerin kurulumu ve yönetimi ile ilgili olarak edinilen tecrübe ve bilgilerin aynı teknolojileri kullanan/kullanmayı planlayan kurumlar ile paylaşılması  amacıyla hazırlanmıştır.&lt;br /&gt;
&lt;br /&gt;
== KURULUM ÖNCESİ HAZIRLIKLAR ==&lt;br /&gt;
==== FİZİKSEL DONANIM ORTAMI ====&lt;br /&gt;
*[[ Donanım Seçimi Kriterleri ]]&lt;br /&gt;
*[[ İhale Şartnamesi ]]&lt;br /&gt;
*[[ Donanım Altyapısı ]]&lt;br /&gt;
*[[ Ağ/Sunucu Bağlantı Topolojisi ]]&lt;br /&gt;
==== ORTA KATMAN HAZIRLAMA ====&lt;br /&gt;
* [[ CEPH Genel Bilgiler | CEPH Bluestore vs Filestore ]]&lt;br /&gt;
== KURULUM ==&lt;br /&gt;
*[[ CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler ]]&lt;br /&gt;
* [[ CEPH Kurulumu | BLUESTORE KURULUM, YAPILANDIRMA ve BENCHMARK TESTLERİ]]&lt;br /&gt;
* [[ FILESTORE KURULUMU | FILESTORE KURULUMU]]&lt;br /&gt;
&lt;br /&gt;
== CEPH BİLEŞENLERİ ve BİLİNMESİ GEREKEN ANA KOMUTLAR ==&lt;br /&gt;
* [[ CEPH Yönetimi | Temel Bileşenler ve Komutlar]]&lt;br /&gt;
== CEPH YÖNETİMİ ==&lt;br /&gt;
* [[ Yönetim Dashboard (OpenAttic) | Yönetim Arayüzü – Dashboard (OpenAttic) ]]&lt;br /&gt;
* [[ HDD ve SSD üzerinde ayrı pool oluşturma | HDD ve SSD üzerinde ayrı pool oluşturma]]&lt;br /&gt;
* [[ RADOSGW Storage Pool Yapilandirma, Optimizasyon ve Testi ]]&lt;br /&gt;
* [[ CEPH SSD Tamponlama - Cache Tiering ]]&lt;br /&gt;
&lt;br /&gt;
== PERFORMANS TESTLERİ VE OPTİMİZASYON ==&lt;br /&gt;
* [[ CEPH_Yönetimi#CEPH_Performans_Optimizasyonu_i.C3.A7in_Ayarlanabilecek_De.C4.9Fi.C5.9Fken_Listesi | CEPH Performans Optimizasyonu için Ayarlanabilecek Değişken Listesi ]]&lt;br /&gt;
* [[ CEPH Performans Optimizasyonu]]&lt;br /&gt;
* [[ CEPH Benchmark ]]&lt;br /&gt;
== GENEL SORUNLAR ve ÇÖZÜM YOLLARI ==&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Pool_.C3.BCzerinde_herhangi_bir_uygulaman.C4.B1n_aktifle.C5.9Ftirilmemesi |  Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Crash_Tunable_Hatas.C4.B1 | Crash Tunable Hatası ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#MON_Servisi_ayakta_ancak_quourum_olarak_eklenemiyorsa | MON Servisi ayakta ancak quourum olarak eklenemiyorsa ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#OSD_Disk_.C3.A7.C4.B1kart.C4.B1p_tekrar_eklemek_i.C3.A7in | OSD Disk çıkartıp tekrar eklemek için ]]&lt;br /&gt;
&lt;br /&gt;
== Hazırlayanlar ==&lt;br /&gt;
* Onur BEKTAŞ&lt;br /&gt;
* Emrah AKKOYUN&lt;br /&gt;
* Ömer Faruk ÇANGIR&lt;br /&gt;
&lt;br /&gt;
==Lisans==&lt;br /&gt;
Bu wiki sayfalarındaki tüm meteryaller Creative Commonss CC BY-SA 4.0 lisansına sahiptir&lt;br /&gt;
&lt;br /&gt;
[[Dosya:Cclisans.png|çerçeveli|sol]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=231</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=231"/>
				<updated>2018-09-20T12:26:51Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* = Disk Hata Kontrolü */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Donanımların Kontrolü==&lt;br /&gt;
=== Donanım Marka/Model Kontrolü===&lt;br /&gt;
İhale kapsamında aldığımız donanımların kontrolü için aşağıdaki betik kullanıldı, bu sayede disk,bellek ve diğer bilşenlerin istenilen özelliklere sahip olup olmadıkları kontrol edildi&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/ulakceph# more sysinfo.sh &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 INFOFILE=&amp;quot;sysinfo.txt&amp;quot;&lt;br /&gt;
 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 RAM=`free | grep Mem | awk '{print $2}'`&lt;br /&gt;
 echo &amp;quot;RAM: ${RAM}&amp;quot;  &amp;gt; $INFOFILE&lt;br /&gt;
 lshw -class memory | egrep 'vendor:|product:|size:|clock: ' | grep -v &amp;quot;NO DIMM&amp;quot; | egrep -v 'MiB|KiB' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
 echo &amp;quot;CPU Count: ${num_CPU}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 lsblk -a  &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 for i in sdb sdc sdd sde sdf sdg sdh sdi sdj sdk sdl sdm&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;Disk ${i}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    smartctl -a /dev/${i}  | egrep 'Product|Revision:|Manufactured in|Accumulated start-stop cycles' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    echo &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
=== Disk Hata Kontrolü===&lt;br /&gt;
badblocks programı kullanılarak sabit  disklerde kurulum öncesi bad block olup olmadığının kontrolü yapıldı. İlgiki Betik.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/ulakceph# more systest.sh &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 for disk in `lsblk | grep -i 7.3 | awk  '{print $1}'` &lt;br /&gt;
     do badblocks -b4096 -w  -o ${disk}.badblock.txt /dev/${disk} &amp;amp;&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi===&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
===40G Mellanox Connectx 4 Driver ve Firmware güncellemesi===&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=230</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=230"/>
				<updated>2018-09-20T12:26:44Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* = Donanım Marka/Model Kontrolü */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Donanımların Kontrolü==&lt;br /&gt;
=== Donanım Marka/Model Kontrolü===&lt;br /&gt;
İhale kapsamında aldığımız donanımların kontrolü için aşağıdaki betik kullanıldı, bu sayede disk,bellek ve diğer bilşenlerin istenilen özelliklere sahip olup olmadıkları kontrol edildi&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/ulakceph# more sysinfo.sh &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 INFOFILE=&amp;quot;sysinfo.txt&amp;quot;&lt;br /&gt;
 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 RAM=`free | grep Mem | awk '{print $2}'`&lt;br /&gt;
 echo &amp;quot;RAM: ${RAM}&amp;quot;  &amp;gt; $INFOFILE&lt;br /&gt;
 lshw -class memory | egrep 'vendor:|product:|size:|clock: ' | grep -v &amp;quot;NO DIMM&amp;quot; | egrep -v 'MiB|KiB' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
 echo &amp;quot;CPU Count: ${num_CPU}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 lsblk -a  &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 for i in sdb sdc sdd sde sdf sdg sdh sdi sdj sdk sdl sdm&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;Disk ${i}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    smartctl -a /dev/${i}  | egrep 'Product|Revision:|Manufactured in|Accumulated start-stop cycles' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    echo &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
=== Disk Hata Kontrolü==&lt;br /&gt;
badblocks programı kullanılarak sabit  disklerde kurulum öncesi bad block olup olmadığının kontrolü yapıldı. İlgiki Betik.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/ulakceph# more systest.sh &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 for disk in `lsblk | grep -i 7.3 | awk  '{print $1}'` &lt;br /&gt;
     do badblocks -b4096 -w  -o ${disk}.badblock.txt /dev/${disk} &amp;amp;&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi===&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
===40G Mellanox Connectx 4 Driver ve Firmware güncellemesi===&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=229</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=229"/>
				<updated>2018-09-20T12:26:36Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Donanımların Kontrolü==&lt;br /&gt;
=== Donanım Marka/Model Kontrolü==&lt;br /&gt;
İhale kapsamında aldığımız donanımların kontrolü için aşağıdaki betik kullanıldı, bu sayede disk,bellek ve diğer bilşenlerin istenilen özelliklere sahip olup olmadıkları kontrol edildi&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/ulakceph# more sysinfo.sh &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 INFOFILE=&amp;quot;sysinfo.txt&amp;quot;&lt;br /&gt;
 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 RAM=`free | grep Mem | awk '{print $2}'`&lt;br /&gt;
 echo &amp;quot;RAM: ${RAM}&amp;quot;  &amp;gt; $INFOFILE&lt;br /&gt;
 lshw -class memory | egrep 'vendor:|product:|size:|clock: ' | grep -v &amp;quot;NO DIMM&amp;quot; | egrep -v 'MiB|KiB' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
 echo &amp;quot;CPU Count: ${num_CPU}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 lsblk -a  &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 for i in sdb sdc sdd sde sdf sdg sdh sdi sdj sdk sdl sdm&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;Disk ${i}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    smartctl -a /dev/${i}  | egrep 'Product|Revision:|Manufactured in|Accumulated start-stop cycles' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    echo &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 done&lt;br /&gt;
=== Disk Hata Kontrolü==&lt;br /&gt;
badblocks programı kullanılarak sabit  disklerde kurulum öncesi bad block olup olmadığının kontrolü yapıldı. İlgiki Betik.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/ulakceph# more systest.sh &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 for disk in `lsblk | grep -i 7.3 | awk  '{print $1}'` &lt;br /&gt;
     do badblocks -b4096 -w  -o ${disk}.badblock.txt /dev/${disk} &amp;amp;&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi===&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
===40G Mellanox Connectx 4 Driver ve Firmware güncellemesi===&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=228</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=228"/>
				<updated>2018-09-20T12:24:04Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* Donanımların Kontrolü */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
== Donanımların Kontrolü==&lt;br /&gt;
İhale kapsamında aldığımız donanımların kontrolü için aşağıdaki betik kullanıldı, bu sayede disk,bellek ve diğer bilşenlerin istenilen özelliklere sahip olup olmadıkları kontrol edildi&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/ulakceph# more sysinfo.sh &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 INFOFILE=&amp;quot;sysinfo.txt&amp;quot;&lt;br /&gt;
 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 RAM=`free | grep Mem | awk '{print $2}'`&lt;br /&gt;
 echo &amp;quot;RAM: ${RAM}&amp;quot;  &amp;gt; $INFOFILE&lt;br /&gt;
 lshw -class memory | egrep 'vendor:|product:|size:|clock: ' | grep -v &amp;quot;NO DIMM&amp;quot; | egrep -v 'MiB|KiB' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
 echo &amp;quot;CPU Count: ${num_CPU}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 lsblk -a  &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 for i in sdb sdc sdd sde sdf sdg sdh sdi sdj sdk sdl sdm&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;Disk ${i}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    smartctl -a /dev/${i}  | egrep 'Product|Revision:|Manufactured in|Accumulated start-stop cycles' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    echo &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi===&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
===40G Mellanox Connectx 4 Driver ve Firmware güncellemesi===&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=227</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=227"/>
				<updated>2018-09-20T12:23:50Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
== Donanımların Kontrolü==&lt;br /&gt;
İhale kapsamında aldığımız donanımların kontrolü için aşağıdaki betik kullanıldı, bu sayede disk,bellek ve diğer bilşenlerin istenilen özelliklere sahip olup olmadıkları kontrol edildi&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/ulakceph# more sysinfo.sh &lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 INFOFILE=&amp;quot;sysinfo.txt&amp;quot;&lt;br /&gt;
 export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 RAM=`free | grep Mem | awk '{print $2}'`&lt;br /&gt;
 echo &amp;quot;RAM: ${RAM}&amp;quot;  &amp;gt; $INFOFILE&lt;br /&gt;
 lshw -class memory | egrep 'vendor:|product:|size:|clock: ' | grep -v &amp;quot;NO DIMM&amp;quot; | egrep -v 'MiB|KiB' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
 echo &amp;quot;CPU Count: ${num_CPU}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 num_CPU=`cat /proc/cpuinfo | grep -i &amp;quot;model name&amp;quot; | awk -F: '{print $2}' | wc -l`&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;---------------------------------------------------------------------------------------------\n&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 lsblk -a  &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
&lt;br /&gt;
 for i in sdb sdc sdd sde sdf sdg sdh sdi sdj sdk sdl sdm&lt;br /&gt;
    do&lt;br /&gt;
    echo &amp;quot;Disk ${i}&amp;quot; &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    smartctl -a /dev/${i}  | egrep 'Product|Revision:|Manufactured in|Accumulated start-stop cycles' &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
    echo &amp;gt;&amp;gt; $INFOFILE&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi===&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
===40G Mellanox Connectx 4 Driver ve Firmware güncellemesi===&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=226</id>
		<title>RADOSGW Storage Pool Yapilandirma, Optimizasyon ve Testi</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=226"/>
				<updated>2018-09-20T12:22:38Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Obje Depolama Pool Ayarlari - Depolama Politikasi ==&lt;br /&gt;
Herhangi bir yapilandirma yapilmadiginda radosgw uzerinden kullanici tarafinda atilan obje veya bucketlar default yer olan default.rgw.buckets.data adinda pool uzerinde tutulmaktadir. Bunun index bilgileri ise default.rgw.buckets.index pool uzerinde tutulmaktadir. Kullanici vb meta verileri, log'lar ise ayri yapilandirilmis default.rgw.meta ve default.rgw.log pool'lari uzerinde tutulmaktadir.&lt;br /&gt;
&lt;br /&gt;
Asagidaki komutla default olusturulan pool ve detaylari bulunabilir.&lt;br /&gt;
&lt;br /&gt;
 # ceph osd pool ls detail&lt;br /&gt;
 pool 1 '.rgw.root' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 195 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 2 'default.rgw.control' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 199 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 3 'default.rgw.meta' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 201 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 4 'default.rgw.log' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 203 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw &lt;br /&gt;
 pool 5 'default.rgw.buckets.index' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 206 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 6 'default.rgw.buckets.data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 209 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
&lt;br /&gt;
Bune gore default olarak ayarlanan her bir pool 3 replikasi ve her birinin 256 pg sayisi bulunmaktadir. (CEPH kurulumu yapilirken ceph.conf icerisinde default pg sayisi 256 set edildiginde bu pool'lar bu sekilde yapilandirilmistir)&lt;br /&gt;
&lt;br /&gt;
Bu nedenle farkli kullanicilar uzerinden gelecek veriler ayni ozellikte ki pool uzerinde kaydedilecektir, Ornegin B3LAB projesi icin olusturulan kullanicinin verileri de kendimiz icin olsuturulacak GLANCE ve NextCloud projeleri icin olusturulacak kullanicilar da ayni pool uzerinde verileri tutacaklardir. Bu pek istenen bir durum degildir, cunku degisen kapasiteye ve kullanima bagli ozel olusturulmus pool uzerinde verilerini tutmasi daha dogru bir yaklasim olacaktir. index, metadata ve log'lar default pool uzerinde tutulabilir, ancak veriler icin ayri bir data pool tutmak icin bu dokuman hazirlanmistir.&lt;br /&gt;
&lt;br /&gt;
NOT: Her bir objeye ait veriler indexlenmektedir. Eger tum objeleri listeleme gibi bir gereksinim bulunmuyorsa bu durumda her bir objeye ait index bilgisini tutmak gereksizdir. Bunun icin asagidaki baslik izlenebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#indexless_buckets&lt;br /&gt;
&lt;br /&gt;
Ayrica; eger milyonlarca obje olacakse ve surekli listeleme gibi isler yapilacaksa bu durumda index'in yer aldigi pool aysi SSD'lerden olusan bir pool uzerine kurgulanabilir. Bucket index sharding islemi ile de oldukca performans kazanci elde edilebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#bucket_sharding&lt;br /&gt;
&lt;br /&gt;
 AMAC:&lt;br /&gt;
 1- Dosyalarin daha performansli listelenebilmesi icin SSD'ler uzerinde yer alan index pool ve objelerin tutulacagi yuksek pg sayili, 3 replikali data pool olusturmak.&lt;br /&gt;
     index pool: .rgw.buckets.ssd_index, 256 pg, 3 replika, 512GB kota&lt;br /&gt;
     data pool: .rgw.buckets.sharedfile_data, 1024 pg, 3 replika, 30TB kota&lt;br /&gt;
 2- Ayni ozellikte isterleri olan farkli iki proje icin (SAFIR ve NextCloud) ayri kullanici olusturup bu pool'lar uzerinde islem yapabilmesini saglamak&lt;br /&gt;
 3- Her bir kullaniciya ayri kotalar tanimlamak&lt;br /&gt;
&lt;br /&gt;
=== POOL OLUSTURMA ===&lt;br /&gt;
Onceden hazirlanmis 2 farkli crush rule var, bunlardan biri sadece nVme ssd disklerin yer aldigi fast, digeri ise sadece SATA Hdd'lerin yer aldigi replicated_rule. Pool'lar bu chrush liste gore olusturuldu.&lt;br /&gt;
 # ceph osd crush rule list&lt;br /&gt;
 replicated_rule&lt;br /&gt;
 fast&lt;br /&gt;
&lt;br /&gt;
 # ceph osd crush class ls-osd ssd&lt;br /&gt;
 48&lt;br /&gt;
 49&lt;br /&gt;
 50&lt;br /&gt;
 51&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.ssd_index 256 256&lt;br /&gt;
 ceph osd pool set .rgw.buckets.ssd_index crush_rule fast&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.ssd_index max_bytes 512GB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.ssd_index rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.sharedfile_data 1024 1024&lt;br /&gt;
 ceph osd pool set .rgw.buckets.sharedfile_data crush_rule replicated_rule&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.sharedfile_data max_bytes 30TB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.sharedfile_data rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool ls detail&lt;br /&gt;
 .... &lt;br /&gt;
 ....&lt;br /&gt;
 pool 8 '.rgw.buckets.ssd_index' replicated size 3 min_size 3 crush_rule 1 object_hash rjenkins pg_num 256 pgp_num 256 last_change 268 flags hashpspool stripe_width 0&lt;br /&gt;
 pool 9 '.rgw.buckets.sharedfile_data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 1024 pgp_num 1024 last_change 271 flags hashpspool stripe_width 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Placement Target ===&lt;br /&gt;
CEPH Object Gateway, kullanicinin verisini tutarken iliskilendirilmis placement target bilgisine bakar, herhangi bir ayar yapilmadiysa default olan zone altinda yer alan default-placement bilgisine gore de islem yapar. Az once olusturdugumuz sekilde pool'lar uzerinde spesifik islem yapabilmek icin ayni zone altinda yeni bir placement grup olusturup pool bilgilerini ayri ayri burada set etmemiz gerekecektir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup --rgw-zonegroup=default get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sharedfile-placement adinda yeni bir placement target olusturmak icin zonegroup.json dosyasi asagidaki sekilde guncellenip calistirilir.&lt;br /&gt;
&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup set &amp;lt; zonegroup.json&lt;br /&gt;
&lt;br /&gt;
Daha sonra zone yapilandirma dosyasini alip data ve index icin olusturulan bu pool'lar set edilecek sekilde placement target guncellenir.&lt;br /&gt;
&lt;br /&gt;
 # sudo radosgw-admin zone get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 sudo radosgw-admin zone get &amp;gt; zone.json&lt;br /&gt;
 sudo vi zone.json&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;.rgw.buckets.ssd_index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 radosgw-admin zone set &amp;lt; zone.json&lt;br /&gt;
 radosgw-admin period update --commit&lt;br /&gt;
&lt;br /&gt;
=== Bucket Optimizasyon ===&lt;br /&gt;
Pool uzerinde kayitli bucket uzerinde tutulan tum objelerin index bilgisi SSD disk uzerinde tutacak sekilde yapilandirilan .rgw.buckets.ssd_index poolu uzerinde durmaktadir. Buna ek olarak performansi artirmak icin bucket sharding denilen her bir bucket icin tutulacak maksimim obje sayisini belirleyen bir ayar girilmesi gerekmektedir. Tek bir bucket uzerinde milyonlarca kayit tutmak performansi cok dusurecektir.&lt;br /&gt;
&lt;br /&gt;
rgw_override_bucket_index_max_shards parametresi bucket basina tutulacak en fazla shard bilgisini gostermektedir. Default ayari 0'dir, yani bucket uzerinde sinirsiz sayida obje tutacak sekildedir. Bu sayinin belirlenmesi icin asagidaki formul onerilmektedir.&lt;br /&gt;
&lt;br /&gt;
 number of objects expected in a bucket / 100,000&lt;br /&gt;
&lt;br /&gt;
Biz olusturdugumuz pool icin 10.000 kullanici ve her birinin 100 dosyasi olacak sekilde on gordugumuzde toplam obje sayisi 1 milyon olmakta, bu durumda bu sayi ise 10 olacaktir.&lt;br /&gt;
ceph.conf dosyasina asagidaki satir eklenir, ve radosgw servisi restart edilir.&lt;br /&gt;
&lt;br /&gt;
 rgw_override_bucket_index_max_shards = 10&lt;br /&gt;
&lt;br /&gt;
 systemctl restart ceph-radosgw.service&lt;br /&gt;
&lt;br /&gt;
=== Kullanici Olusturma ve Yetkilendirme ===&lt;br /&gt;
Son olarak RADOSGW uzerinde ayarlari yapilmis bu pool'lar uzerinde veri tutacak kullanicilarin olusturulmasinda. RadosGW, hem S3 uyumlu (user) hem de swift api uyumlu (subuser) kullanici olusturmaya izin veriyor.  Dolayisiyla S3 arayuzu icin access ve secret key gerekirken swift arayuzu icin secret key yeterli olabilmektedir. Burada swift api uyumlu subuser olusturulup yetkilendirilecektir. Kullanicilar full yetkiye sahip olacak sekilde olusturulacaktir. (Alternatifer; read, write, readwrite)&lt;br /&gt;
&lt;br /&gt;
 SAFIR kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;safir&amp;quot; --display-name=&amp;quot;B3LAB SAFIR Grubu&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=safir --subuser=safir:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 NextCloud kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;nextcloud&amp;quot; --display-name=&amp;quot;ULAKBIM NextCloud Servisi&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=nextcloud --subuser=nextcloud:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin user info --uid=nextcloud&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;user_id&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;display_name&amp;quot;: &amp;quot;ULAKBIM NextCloud Servisi&amp;quot;,&lt;br /&gt;
    &amp;quot;email&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;suspended&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;max_buckets&amp;quot;: 1000,&lt;br /&gt;
    &amp;quot;auid&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;subusers&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;permissions&amp;quot;: &amp;quot;full-control&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
            &amp;quot;access_key&amp;quot;: &amp;quot;blabla&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;swift_keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;caps&amp;quot;: [],&lt;br /&gt;
    &amp;quot;op_mask&amp;quot;: &amp;quot;read, write, delete&amp;quot;,&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_tags&amp;quot;: [],&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;temp_url_keys&amp;quot;: [],&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;rgw&amp;quot;,&lt;br /&gt;
    &amp;quot;mfa_ids&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
komutu ile kullaniciya ait bilgiler gelmektedir. Bu kullanicilar, hem S3 ile hem de Swift arayuzu ile konusabilecek key'lere sahiptirler.&lt;br /&gt;
&lt;br /&gt;
Dilenirse bu kullanicilar bir sure kullanima kapatilip tekrar asagidaki komutla acilabilir.&lt;br /&gt;
 # radosgw-admin user suspend --uid=nextcloud&lt;br /&gt;
 # radosgw-admin user enable --uid=nextcloud&lt;br /&gt;
&lt;br /&gt;
Kullanici bilgilerine bakildiginda herhangi bir kota bulunmamaktadir. Her ne kadar pool bazinda bir kota tanimlamasi yapildiysa da kullanici bazinda da bir kota tanimlamasi yapilmasi gerekmektedir. CEPH uzerinde kota tanimlamasi kullanici veya kullanicinin sahip oldugu bucket bazinda yapilabilmektedir. Default'ta her ikisi disable durumundadir. Burada kullanici bazli bir kota tanimlanacaktir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=safir --max-objects=1000000 --max-size=30TB&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=nextcloud --max-objects=100000 --max-size=3TB&lt;br /&gt;
&lt;br /&gt;
son olarak kullanici bazli kota tanimlamayi etkinlestirmek gerekmektedir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=nextcloud&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=safir&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: true,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: 32985348833280,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 32212254720,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: 1000000&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Kullanici ile Iliskilendirme ===&lt;br /&gt;
&lt;br /&gt;
Olusturulan bu kullanicilarin sadece yeni olusturdugumuz placement_target dolayisiyla pool uzerinde default islem yapabilmeleri icin metadata verilerinde guncelleme yapmak gerekir. Kullanici bilgisine baktigimizda default_placement bos gelmektedir. Bunu sharedfile_placement ile guncellemek icin:&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata get user:nextcloud &amp;gt; user.json&lt;br /&gt;
user.json dosyasinda default_placement karsisina sharedfile-placement eklenir.&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata put user:nextcloud &amp;lt; user.json ile metadata guncellenir.&lt;br /&gt;
&lt;br /&gt;
Benzer islem diger kullanici icinde yapilir.&lt;br /&gt;
 # radosgw-admin metadata get user:safir &amp;gt; user.json&lt;br /&gt;
 # radosgw-admin metadata put user:safir &amp;lt; user.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TEST islemleri ===&lt;br /&gt;
Pek cok farkli yontemle bucket olusturulup icerisine dosya atilabilir. Bunlardan birkaci ile asagida ornek olmasi acisindan komutlar verilmistir.&lt;br /&gt;
&lt;br /&gt;
S3 arayuzu uzerinden python boto kutuphanesi kullanilarak o kullanicinin access ve secret keyleri ile bucket olusturulabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # cat cephtestv2.py&lt;br /&gt;
 import boto&lt;br /&gt;
 import boto.s3.connection&lt;br /&gt;
 access_key = 'blabla'&lt;br /&gt;
 secret_key = 'blabla'&lt;br /&gt;
 conn = boto.connect_s3(&lt;br /&gt;
           aws_access_key_id = access_key,&lt;br /&gt;
              aws_secret_access_key = secret_key,&lt;br /&gt;
                 host = 'gwmon', port =7480,is_secure=False, calling_format = boto.s3.connection.OrdinaryCallingFormat(),)&lt;br /&gt;
&lt;br /&gt;
 bucket = conn.create_bucket('test-bucket')&lt;br /&gt;
 for bucket in conn.get_all_buckets():&lt;br /&gt;
       print &amp;quot;{name} {created}&amp;quot;.format(name = bucket.name,created = bucket.creation_date,)&lt;br /&gt;
&lt;br /&gt;
Boylece test-bucket adinda bir bucket olusturulmus olunur. Bu bucket altina dosya atmak icinse SWIFT arayuzu uzerinden secret_key ile dosya gonderilebilir.&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla upload test-bucket cephtest.py&lt;br /&gt;
&lt;br /&gt;
Bu bucket altindaki dosyalari listelemek icinse&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla list test-bucket komutu kullanilir.&lt;br /&gt;
&lt;br /&gt;
Bucket ve dosyanin nereye yazildigi onemlidir. Bucket adi verilerek kullanimina ve hangi placement target kullandigina bakilabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin bucket stats --bucket test-bucket&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;bucket&amp;quot;: &amp;quot;test-bucket&amp;quot;,&lt;br /&gt;
    &amp;quot;zonegroup&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-c975ab4e2d65&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_rule&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;explicit_placement&amp;quot;: {&lt;br /&gt;
        &amp;quot;data_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;data_extra_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;index_pool&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;marker&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;index_type&amp;quot;: &amp;quot;Normal&amp;quot;,&lt;br /&gt;
    &amp;quot;owner&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;ver&amp;quot;: &amp;quot;0#2,1#1,2#1,3#2,4#1,5#1,6#1,7#1,8#1,9#1&amp;quot;,&lt;br /&gt;
    &amp;quot;master_ver&amp;quot;: &amp;quot;0#0,1#0,2#0,3#0,4#0,5#0,6#0,7#0,8#0,9#0&amp;quot;,&lt;br /&gt;
    &amp;quot;mtime&amp;quot;: &amp;quot;2018-09-17 15:51:55.909340&amp;quot;,&lt;br /&gt;
    &amp;quot;max_marker&amp;quot;: &amp;quot;0#,1#,2#,3#,4#,5#,6#,7#,8#,9#&amp;quot;,&lt;br /&gt;
    &amp;quot;usage&amp;quot;: {&lt;br /&gt;
        &amp;quot;rgw.main&amp;quot;: {&lt;br /&gt;
            &amp;quot;size&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_actual&amp;quot;: 8192,&lt;br /&gt;
            &amp;quot;size_utilized&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_kb&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;size_kb_actual&amp;quot;: 8,&lt;br /&gt;
            &amp;quot;size_kb_utilized&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;num_objects&amp;quot;: 2&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: true,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
placement_rule bizim set etmis oldugumuz yerde olusturulmustur. Icerisinde ise 2 obje bulunmaktadir. Diger taraftan garanti olmasi acisindan her bir pool kullanimina bakilirsa 2 objenin yeni olusturmus oldugumuz pool uzerinde oldugu gozlemlenir.&lt;br /&gt;
&lt;br /&gt;
 #sudo ceph df detail&lt;br /&gt;
 GLOBAL:&lt;br /&gt;
    SIZE        AVAIL       RAW USED     %RAW USED     OBJECTS&lt;br /&gt;
    351 TiB     351 TiB       54 GiB          0.01        257 &lt;br /&gt;
 POOLS:&lt;br /&gt;
    NAME                             ID     QUOTA OBJECTS     QUOTA BYTES     USED        %USED     MAX AVAIL     OBJECTS     DIRTY     READ        WRITE       RAW USED&lt;br /&gt;
    .rgw.root                        1      N/A               N/A             1.3 KiB         0       111 TiB           4        4      1.8 KiB        10 B      4.0 KiB&lt;br /&gt;
    default.rgw.control              2      N/A               N/A                 0 B         0       111 TiB           8        8          0 B         0 B          0 B&lt;br /&gt;
    default.rgw.meta                 3      N/A               N/A             3.9 KiB         0       111 TiB          21       21        522 B       153 B       12 KiB&lt;br /&gt;
    default.rgw.log                  4      N/A               N/A                 0 B         0       111 TiB         207      207      2.1 MiB     1.4 MiB          0 B&lt;br /&gt;
    default.rgw.buckets.index        5      N/A               N/A                 0 B         0       111 TiB           4        4         79 B        33 B          0 B&lt;br /&gt;
    default.rgw.buckets.data         6      N/A               N/A               516 B         0       111 TiB           1        1          0 B        10 B      1.5 KiB&lt;br /&gt;
    .rgw.buckets.ssd_index           8      N/A               512 GiB             0 B         0       471 GiB          10       10        214 B        56 B          0 B&lt;br /&gt;
    .rgw.buckets.sharedfile_data     9      N/A               30 TiB          1.1 KiB         0       111 TiB           2        2          0 B        20 B      3.2 KiB&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=225</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=225"/>
				<updated>2018-09-20T12:20:41Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi===&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
===40G Mellanox Connectx 4 Driver ve Firmware güncellemesi===&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=224</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=224"/>
				<updated>2018-09-20T12:20:24Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* = 10G Intel Ethernet Kartı Driver Güncellemesi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi===&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
==40G Mellanox Connectx 4 Driver ve Firmware güncellemesi==&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=223</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=223"/>
				<updated>2018-09-20T12:20:09Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* 40G Mellanox Connectx 4 Driver ve Firmware güncellemesi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi==&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
==40G Mellanox Connectx 4 Driver ve Firmware güncellemesi==&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=221</id>
		<title>RADOSGW Storage Pool Yapilandirma, Optimizasyon ve Testi</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=RADOSGW_Storage_Pool_Yapilandirma,_Optimizasyon_ve_Testi&amp;diff=221"/>
				<updated>2018-09-20T12:19:47Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &amp;quot;== Obje Depolama Pool Ayarlari - Depolama Politikasi == Herhangi bir yapilandirma yapilmadiginda radosgw uzerinden kullanici tarafinda atilan obje veya bucket...&amp;quot; içeriğiyle yeni sayfa oluşturdu&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Obje Depolama Pool Ayarlari - Depolama Politikasi ==&lt;br /&gt;
Herhangi bir yapilandirma yapilmadiginda radosgw uzerinden kullanici tarafinda atilan obje veya bucketlar default yer olan default.rgw.buckets.data adinda pool uzerinde tutulmaktadir. Bunun index bilgileri ise default.rgw.buckets.index pool uzerinde tutulmaktadir. Kullanici vb meta verileri, log'lar ise ayri yapilandirilmis default.rgw.meta ve default.rgw.log pool'lari uzerinde tutulmaktadir.&lt;br /&gt;
&lt;br /&gt;
Asagidaki komutla default olusturulan pool ve detaylari bulunabilir.&lt;br /&gt;
&lt;br /&gt;
 # ceph osd pool ls detail&lt;br /&gt;
 pool 1 '.rgw.root' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 195 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 2 'default.rgw.control' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 199 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 3 'default.rgw.meta' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 201 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 4 'default.rgw.log' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 203 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw &lt;br /&gt;
 pool 5 'default.rgw.buckets.index' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 206 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
 pool 6 'default.rgw.buckets.data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 last_change 209 owner 18446744073709551615 flags hashpspool stripe_width 0 application rgw&lt;br /&gt;
&lt;br /&gt;
Bune gore default olarak ayarlanan her bir pool 3 replikasi ve her birinin 256 pg sayisi bulunmaktadir. (CEPH kurulumu yapilirken ceph.conf icerisinde default pg sayisi 256 set edildiginde bu pool'lar bu sekilde yapilandirilmistir)&lt;br /&gt;
&lt;br /&gt;
Bu nedenle farkli kullanicilar uzerinden gelecek veriler ayni ozellikte ki pool uzerinde kaydedilecektir, Ornegin B3LAB projesi icin olusturulan kullanicinin verileri de kendimiz icin olsuturulacak GLANCE ve NextCloud projeleri icin olusturulacak kullanicilar da ayni pool uzerinde verileri tutacaklardir. Bu pek istenen bir durum degildir, cunku degisen kapasiteye ve kullanima bagli ozel olusturulmus pool uzerinde verilerini tutmasi daha dogru bir yaklasim olacaktir. index, metadata ve log'lar default pool uzerinde tutulabilir, ancak veriler icin ayri bir data pool tutmak icin bu dokuman hazirlanmistir.&lt;br /&gt;
&lt;br /&gt;
NOT: Her bir objeye ait veriler indexlenmektedir. Eger tum objeleri listeleme gibi bir gereksinim bulunmuyorsa bu durumda her bir objeye ait index bilgisini tutmak gereksizdir. Bunun icin asagidaki baslik izlenebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#indexless_buckets&lt;br /&gt;
&lt;br /&gt;
Ayrica; eger milyonlarca obje olacakse ve surekli listeleme gibi isler yapilacaksa bu durumda index'in yer aldigi pool aysi SSD'lerden olusan bir pool uzerine kurgulanabilir. Bucket index sharding islemi ile de oldukca performans kazanci elde edilebilir.&lt;br /&gt;
https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/3/html-single/object_gateway_guide_for_red_hat_enterprise_linux/#bucket_sharding&lt;br /&gt;
&lt;br /&gt;
 AMAC:&lt;br /&gt;
 1- Dosyalarin daha performansli listelenebilmesi icin SSD'ler uzerinde yer alan index pool ve objelerin tutulacagi yuksek pg sayili, 3 replikali data pool olusturmak.&lt;br /&gt;
     index pool: .rgw.buckets.ssd_index, 256 pg, 3 replika, 512GB kota&lt;br /&gt;
     data pool: .rgw.buckets.sharedfile_data, 1024 pg, 3 replika, 30TB kota&lt;br /&gt;
 2- Ayni ozellikte isterleri olan farkli iki proje icin (SAFIR ve NextCloud) ayri kullanici olusturup bu pool'lar uzerinde islem yapabilmesini saglamak&lt;br /&gt;
 3- Her bir kullaniciya ayri kotalar tanimlamak&lt;br /&gt;
&lt;br /&gt;
=== POOL OLUSTURMA ===&lt;br /&gt;
Onceden hazirlanmis 2 farkli crush rule var, bunlardan biri sadece nVme ssd disklerin yer aldigi fast, digeri ise sadece SATA Hdd'lerin yer aldigi replicated_rule. Pool'lar bu chrush liste gore olusturuldu.&lt;br /&gt;
 # ceph osd crush rule list&lt;br /&gt;
 replicated_rule&lt;br /&gt;
 fast&lt;br /&gt;
&lt;br /&gt;
 # ceph osd crush class ls-osd ssd&lt;br /&gt;
 48&lt;br /&gt;
 49&lt;br /&gt;
 50&lt;br /&gt;
 51&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.ssd_index 256 256&lt;br /&gt;
 ceph osd pool set .rgw.buckets.ssd_index crush_rule fast&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.ssd_index max_bytes 512GB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.ssd_index rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create .rgw.buckets.sharedfile_data 1024 1024&lt;br /&gt;
 ceph osd pool set .rgw.buckets.sharedfile_data crush_rule replicated_rule&lt;br /&gt;
 ceph osd pool set-quota .rgw.buckets.sharedfile_data max_bytes 30TB&lt;br /&gt;
 ceph osd pool application enable .rgw.buckets.sharedfile_data rgw&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool ls detail&lt;br /&gt;
 .... &lt;br /&gt;
 ....&lt;br /&gt;
 pool 8 '.rgw.buckets.ssd_index' replicated size 3 min_size 3 crush_rule 1 object_hash rjenkins pg_num 256 pgp_num 256 last_change 268 flags hashpspool stripe_width 0&lt;br /&gt;
 pool 9 '.rgw.buckets.sharedfile_data' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 1024 pgp_num 1024 last_change 271 flags hashpspool stripe_width 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Placement Target ===&lt;br /&gt;
CEPH Object Gateway, kullanicinin verisini tutarken iliskilendirilmis placement target bilgisine bakar, herhangi bir ayar yapilmadiysa default olan zone altinda yer alan default-placement bilgisine gore de islem yapar. Az once olusturdugumuz sekilde pool'lar uzerinde spesifik islem yapabilmek icin ayni zone altinda yeni bir placement grup olusturup pool bilgilerini ayri ayri burada set etmemiz gerekecektir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup --rgw-zonegroup=default get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-c975ab4e2d65&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sharedfile-placement adinda yeni bir placement target olusturmak icin zonegroup.json dosyasi asagidaki sekilde guncellenip calistirilir.&lt;br /&gt;
&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-c975ab4e2d65&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;api_name&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;is_master&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
    &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames&amp;quot;: [],&lt;br /&gt;
    &amp;quot;hostnames_s3website&amp;quot;: [],&lt;br /&gt;
    &amp;quot;master_zone&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752&amp;quot;,&lt;br /&gt;
    &amp;quot;zones&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
            &amp;quot;endpoints&amp;quot;: [],&lt;br /&gt;
            &amp;quot;log_meta&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;log_data&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;bucket_index_max_shards&amp;quot;: 0,&lt;br /&gt;
            &amp;quot;read_only&amp;quot;: &amp;quot;false&amp;quot;,&lt;br /&gt;
            &amp;quot;tier_type&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from_all&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;sync_from&amp;quot;: [],&lt;br /&gt;
            &amp;quot;redirect_zone&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;placement_targets&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;tags&amp;quot;: []&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin zonegroup set &amp;lt; zonegroup.json&lt;br /&gt;
&lt;br /&gt;
Daha sonra zone yapilandirma dosyasini alip data ve index icin olusturulan bu pool'lar set edilecek sekilde placement target guncellenir.&lt;br /&gt;
&lt;br /&gt;
 # sudo radosgw-admin zone get&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 sudo radosgw-admin zone get &amp;gt; zone.json&lt;br /&gt;
 sudo vi zone.json&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752&amp;quot;,&lt;br /&gt;
    &amp;quot;name&amp;quot;: &amp;quot;default&amp;quot;,&lt;br /&gt;
    &amp;quot;domain_root&amp;quot;: &amp;quot;default.rgw.meta:root&amp;quot;,&lt;br /&gt;
    &amp;quot;control_pool&amp;quot;: &amp;quot;default.rgw.control&amp;quot;,&lt;br /&gt;
    &amp;quot;gc_pool&amp;quot;: &amp;quot;default.rgw.log:gc&amp;quot;,&lt;br /&gt;
    &amp;quot;lc_pool&amp;quot;: &amp;quot;default.rgw.log:lc&amp;quot;,&lt;br /&gt;
    &amp;quot;log_pool&amp;quot;: &amp;quot;default.rgw.log&amp;quot;,&lt;br /&gt;
    &amp;quot;intent_log_pool&amp;quot;: &amp;quot;default.rgw.log:intent&amp;quot;,&lt;br /&gt;
    &amp;quot;usage_log_pool&amp;quot;: &amp;quot;default.rgw.log:usage&amp;quot;,&lt;br /&gt;
    &amp;quot;reshard_pool&amp;quot;: &amp;quot;default.rgw.log:reshard&amp;quot;,&lt;br /&gt;
    &amp;quot;user_keys_pool&amp;quot;: &amp;quot;default.rgw.meta:users.keys&amp;quot;,&lt;br /&gt;
    &amp;quot;user_email_pool&amp;quot;: &amp;quot;default.rgw.meta:users.email&amp;quot;,&lt;br /&gt;
    &amp;quot;user_swift_pool&amp;quot;: &amp;quot;default.rgw.meta:users.swift&amp;quot;,&lt;br /&gt;
    &amp;quot;user_uid_pool&amp;quot;: &amp;quot;default.rgw.meta:users.uid&amp;quot;,&lt;br /&gt;
    &amp;quot;otp_pool&amp;quot;: &amp;quot;default.rgw.otp&amp;quot;,&lt;br /&gt;
    &amp;quot;system_key&amp;quot;: {&lt;br /&gt;
        &amp;quot;access_key&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;secret_key&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;placement_pools&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;default-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;default.rgw.buckets.index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;default.rgw.buckets.data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;default.rgw.buckets.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;key&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
            &amp;quot;val&amp;quot;: {&lt;br /&gt;
                &amp;quot;index_pool&amp;quot;: &amp;quot;.rgw.buckets.ssd_index&amp;quot;,&lt;br /&gt;
                &amp;quot;data_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data&amp;quot;,&lt;br /&gt;
                &amp;quot;data_extra_pool&amp;quot;: &amp;quot;.rgw.buckets.sharedfile_data.non-ec&amp;quot;,&lt;br /&gt;
                &amp;quot;index_type&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;compression&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;metadata_heap&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;realm_id&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
 radosgw-admin zone set &amp;lt; zone.json&lt;br /&gt;
 radosgw-admin period update --commit&lt;br /&gt;
&lt;br /&gt;
=== Bucket Optimizasyon ===&lt;br /&gt;
Pool uzerinde kayitli bucket uzerinde tutulan tum objelerin index bilgisi SSD disk uzerinde tutacak sekilde yapilandirilan .rgw.buckets.ssd_index poolu uzerinde durmaktadir. Buna ek olarak performansi artirmak icin bucket sharding denilen her bir bucket icin tutulacak maksimim obje sayisini belirleyen bir ayar girilmesi gerekmektedir. Tek bir bucket uzerinde milyonlarca kayit tutmak performansi cok dusurecektir.&lt;br /&gt;
&lt;br /&gt;
rgw_override_bucket_index_max_shards parametresi bucket basina tutulacak en fazla shard bilgisini gostermektedir. Default ayari 0'dir, yani bucket uzerinde sinirsiz sayida obje tutacak sekildedir. Bu sayinin belirlenmesi icin asagidaki formul onerilmektedir.&lt;br /&gt;
&lt;br /&gt;
 number of objects expected in a bucket / 100,000&lt;br /&gt;
&lt;br /&gt;
Biz olusturdugumuz pool icin 10.000 kullanici ve her birinin 100 dosyasi olacak sekilde on gordugumuzde toplam obje sayisi 1 milyon olmakta, bu durumda bu sayi ise 10 olacaktir.&lt;br /&gt;
ceph.conf dosyasina asagidaki satir eklenir, ve radosgw servisi restart edilir.&lt;br /&gt;
&lt;br /&gt;
 rgw_override_bucket_index_max_shards = 10&lt;br /&gt;
&lt;br /&gt;
 systemctl restart ceph-radosgw.service&lt;br /&gt;
&lt;br /&gt;
=== Kullanici Olusturma ve Yetkilendirme ===&lt;br /&gt;
Son olarak RADOSGW uzerinde ayarlari yapilmis bu pool'lar uzerinde veri tutacak kullanicilarin olusturulmasinda. RadosGW, hem S3 uyumlu (user) hem de swift api uyumlu (subuser) kullanici olusturmaya izin veriyor.  Dolayisiyla S3 arayuzu icin access ve secret key gerekirken swift arayuzu icin secret key yeterli olabilmektedir. Burada swift api uyumlu subuser olusturulup yetkilendirilecektir. Kullanicilar full yetkiye sahip olacak sekilde olusturulacaktir. (Alternatifer; read, write, readwrite)&lt;br /&gt;
&lt;br /&gt;
 SAFIR kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;safir&amp;quot; --display-name=&amp;quot;B3LAB SAFIR Grubu&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=safir --subuser=safir:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 NextCloud kullanicisi icin:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;nextcloud&amp;quot; --display-name=&amp;quot;ULAKBIM NextCloud Servisi&amp;quot;&lt;br /&gt;
 radosgw-admin subuser create --uid=nextcloud --subuser=nextcloud:swift --access=full&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin user info --uid=nextcloud&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;user_id&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;display_name&amp;quot;: &amp;quot;ULAKBIM NextCloud Servisi&amp;quot;,&lt;br /&gt;
    &amp;quot;email&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;suspended&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;max_buckets&amp;quot;: 1000,&lt;br /&gt;
    &amp;quot;auid&amp;quot;: 0,&lt;br /&gt;
    &amp;quot;subusers&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;permissions&amp;quot;: &amp;quot;full-control&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
            &amp;quot;access_key&amp;quot;: &amp;quot;blabla&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;swift_keys&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;user&amp;quot;: &amp;quot;nextcloud:swift&amp;quot;,&lt;br /&gt;
            &amp;quot;secret_key&amp;quot;: &amp;quot;blabla&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ],&lt;br /&gt;
    &amp;quot;caps&amp;quot;: [],&lt;br /&gt;
    &amp;quot;op_mask&amp;quot;: &amp;quot;read, write, delete&amp;quot;,&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_tags&amp;quot;: [],&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;temp_url_keys&amp;quot;: [],&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;rgw&amp;quot;,&lt;br /&gt;
    &amp;quot;mfa_ids&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
komutu ile kullaniciya ait bilgiler gelmektedir. Bu kullanicilar, hem S3 ile hem de Swift arayuzu ile konusabilecek key'lere sahiptirler.&lt;br /&gt;
&lt;br /&gt;
Dilenirse bu kullanicilar bir sure kullanima kapatilip tekrar asagidaki komutla acilabilir.&lt;br /&gt;
 # radosgw-admin user suspend --uid=nextcloud&lt;br /&gt;
 # radosgw-admin user enable --uid=nextcloud&lt;br /&gt;
&lt;br /&gt;
Kullanici bilgilerine bakildiginda herhangi bir kota bulunmamaktadir. Her ne kadar pool bazinda bir kota tanimlamasi yapildiysa da kullanici bazinda da bir kota tanimlamasi yapilmasi gerekmektedir. CEPH uzerinde kota tanimlamasi kullanici veya kullanicinin sahip oldugu bucket bazinda yapilabilmektedir. Default'ta her ikisi disable durumundadir. Burada kullanici bazli bir kota tanimlanacaktir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=safir --max-objects=1000000 --max-size=30TB&lt;br /&gt;
 # radosgw-admin quota set --quota-scope=user --uid=nextcloud --max-objects=100000 --max-size=3TB&lt;br /&gt;
&lt;br /&gt;
son olarak kullanici bazli kota tanimlamayi etkinlestirmek gerekmektedir.&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=nextcloud&lt;br /&gt;
 # radosgw-admin quota enable --quota-scope=user --uid=safir&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;user_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: true,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: false,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: 32985348833280,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 32212254720,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: 1000000&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Kullanici ile Iliskilendirme ===&lt;br /&gt;
&lt;br /&gt;
Olusturulan bu kullanicilarin sadece yeni olusturdugumuz placement_target dolayisiyla pool uzerinde default islem yapabilmeleri icin metadata verilerinde guncelleme yapmak gerekir. Kullanici bilgisine baktigimizda default_placement bos gelmektedir. Bunu sharedfile_placement ile guncellemek icin:&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata get user:nextcloud &amp;gt; user.json&lt;br /&gt;
user.json dosyasinda default_placement karsisina sharedfile-placement eklenir.&lt;br /&gt;
    &amp;quot;default_placement&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin metadata put user:nextcloud &amp;lt; user.json ile metadata guncellenir.&lt;br /&gt;
&lt;br /&gt;
Benzer islem diger kullanici icinde yapilir.&lt;br /&gt;
 # radosgw-admin metadata get user:safir &amp;gt; user.json&lt;br /&gt;
 # radosgw-admin metadata put user:safir &amp;lt; user.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TEST islemleri ===&lt;br /&gt;
Pek cok farkli yontemle bucket olusturulup icerisine dosya atilabilir. Bunlardan birkaci ile asagida ornek olmasi acisindan komutlar verilmistir.&lt;br /&gt;
&lt;br /&gt;
S3 arayuzu uzerinden python boto kutuphanesi kullanilarak o kullanicinin access ve secret keyleri ile bucket olusturulabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # cat cephtestv2.py&lt;br /&gt;
 import boto&lt;br /&gt;
 import boto.s3.connection&lt;br /&gt;
 access_key = 'blabla'&lt;br /&gt;
 secret_key = 'blabla'&lt;br /&gt;
 conn = boto.connect_s3(&lt;br /&gt;
           aws_access_key_id = access_key,&lt;br /&gt;
              aws_secret_access_key = secret_key,&lt;br /&gt;
                 host = 'gwmon', port =7480,is_secure=False, calling_format = boto.s3.connection.OrdinaryCallingFormat(),)&lt;br /&gt;
&lt;br /&gt;
 bucket = conn.create_bucket('test-bucket')&lt;br /&gt;
 for bucket in conn.get_all_buckets():&lt;br /&gt;
       print &amp;quot;{name} {created}&amp;quot;.format(name = bucket.name,created = bucket.creation_date,)&lt;br /&gt;
&lt;br /&gt;
Boylece test-bucket adinda bir bucket olusturulmus olunur. Bu bucket altina dosya atmak icinse SWIFT arayuzu uzerinden secret_key ile dosya gonderilebilir.&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla upload test-bucket cephtest.py&lt;br /&gt;
&lt;br /&gt;
Bu bucket altindaki dosyalari listelemek icinse&lt;br /&gt;
 # swift -A http://gwmon:7480/auth/1.0 -U nextcloud:swift -K blabla list test-bucket komutu kullanilir.&lt;br /&gt;
&lt;br /&gt;
Bucket ve dosyanin nereye yazildigi onemlidir. Bucket adi verilerek kullanimina ve hangi placement target kullandigina bakilabilir. Ornegin;&lt;br /&gt;
&lt;br /&gt;
 # radosgw-admin bucket stats --bucket test-bucket&lt;br /&gt;
 {&lt;br /&gt;
    &amp;quot;bucket&amp;quot;: &amp;quot;test-bucket&amp;quot;,&lt;br /&gt;
    &amp;quot;zonegroup&amp;quot;: &amp;quot;f252a88f-d3b2-4566-815a-c975ab4e2d65&amp;quot;,&lt;br /&gt;
    &amp;quot;placement_rule&amp;quot;: &amp;quot;sharedfile-placement&amp;quot;,&lt;br /&gt;
    &amp;quot;explicit_placement&amp;quot;: {&lt;br /&gt;
        &amp;quot;data_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;data_extra_pool&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
        &amp;quot;index_pool&amp;quot;: &amp;quot;&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;id&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;marker&amp;quot;: &amp;quot;813cf61b-a412-4130-8eb4-bc8bacb0f752.494548.2&amp;quot;,&lt;br /&gt;
    &amp;quot;index_type&amp;quot;: &amp;quot;Normal&amp;quot;,&lt;br /&gt;
    &amp;quot;owner&amp;quot;: &amp;quot;nextcloud&amp;quot;,&lt;br /&gt;
    &amp;quot;ver&amp;quot;: &amp;quot;0#2,1#1,2#1,3#2,4#1,5#1,6#1,7#1,8#1,9#1&amp;quot;,&lt;br /&gt;
    &amp;quot;master_ver&amp;quot;: &amp;quot;0#0,1#0,2#0,3#0,4#0,5#0,6#0,7#0,8#0,9#0&amp;quot;,&lt;br /&gt;
    &amp;quot;mtime&amp;quot;: &amp;quot;2018-09-17 15:51:55.909340&amp;quot;,&lt;br /&gt;
    &amp;quot;max_marker&amp;quot;: &amp;quot;0#,1#,2#,3#,4#,5#,6#,7#,8#,9#&amp;quot;,&lt;br /&gt;
    &amp;quot;usage&amp;quot;: {&lt;br /&gt;
        &amp;quot;rgw.main&amp;quot;: {&lt;br /&gt;
            &amp;quot;size&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_actual&amp;quot;: 8192,&lt;br /&gt;
            &amp;quot;size_utilized&amp;quot;: 1102,&lt;br /&gt;
            &amp;quot;size_kb&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;size_kb_actual&amp;quot;: 8,&lt;br /&gt;
            &amp;quot;size_kb_utilized&amp;quot;: 2,&lt;br /&gt;
            &amp;quot;num_objects&amp;quot;: 2&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;bucket_quota&amp;quot;: {&lt;br /&gt;
        &amp;quot;enabled&amp;quot;: false,&lt;br /&gt;
        &amp;quot;check_on_raw&amp;quot;: true,&lt;br /&gt;
        &amp;quot;max_size&amp;quot;: -1,&lt;br /&gt;
        &amp;quot;max_size_kb&amp;quot;: 0,&lt;br /&gt;
        &amp;quot;max_objects&amp;quot;: -1&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
placement_rule bizim set etmis oldugumuz yerde olusturulmustur. Icerisinde ise 2 obje bulunmaktadir. Diger taraftan garanti olmasi acisindan her bir pool kullanimina bakilirsa 2 objenin yeni olusturmus oldugumuz pool uzerinde oldugu gozlemlenir.&lt;br /&gt;
&lt;br /&gt;
 #sudo ceph df detail&lt;br /&gt;
 GLOBAL:&lt;br /&gt;
    SIZE        AVAIL       RAW USED     %RAW USED     OBJECTS&lt;br /&gt;
    351 TiB     351 TiB       54 GiB          0.01        257 &lt;br /&gt;
 POOLS:&lt;br /&gt;
    NAME                             ID     QUOTA OBJECTS     QUOTA BYTES     USED        %USED     MAX AVAIL     OBJECTS     DIRTY     READ        WRITE       RAW USED&lt;br /&gt;
    .rgw.root                        1      N/A               N/A             1.3 KiB         0       111 TiB           4        4      1.8 KiB        10 B      4.0 KiB&lt;br /&gt;
    default.rgw.control              2      N/A               N/A                 0 B         0       111 TiB           8        8          0 B         0 B          0 B&lt;br /&gt;
    default.rgw.meta                 3      N/A               N/A             3.9 KiB         0       111 TiB          21       21        522 B       153 B       12 KiB&lt;br /&gt;
    default.rgw.log                  4      N/A               N/A                 0 B         0       111 TiB         207      207      2.1 MiB     1.4 MiB          0 B&lt;br /&gt;
    default.rgw.buckets.index        5      N/A               N/A                 0 B         0       111 TiB           4        4         79 B        33 B          0 B&lt;br /&gt;
    default.rgw.buckets.data         6      N/A               N/A               516 B         0       111 TiB           1        1          0 B        10 B      1.5 KiB&lt;br /&gt;
    .rgw.buckets.ssd_index           8      N/A               512 GiB             0 B         0       471 GiB          10       10        214 B        56 B          0 B&lt;br /&gt;
    .rgw.buckets.sharedfile_data     9      N/A               30 TiB          1.1 KiB         0       111 TiB           2        2          0 B        20 B      3.2 KiB&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=222</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=222"/>
				<updated>2018-09-20T12:19:47Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* 40G Mellanox Connectx 4 Driver ve Firmware güncellemesi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi==&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
==40G Mellanox Connectx 4 Driver ve Firmware güncellemesi==&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=220</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=220"/>
				<updated>2018-09-20T12:19:08Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* = 10G Intel Ethernet Kartı Driver Güncellemesi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi==&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
==40G Mellanox Connectx 4 Driver ve Firmware güncellemesi==&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=219</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=219"/>
				<updated>2018-09-20T12:18:58Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* = 10G Intel Ethernet Kartı Driver Güncellemesi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi==&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 &lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
==40G Mellanox Connectx 4 Driver ve Firmware güncellemesi==&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=218</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=218"/>
				<updated>2018-09-20T12:18:46Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* = 10G Intel Ethernet Kartı Driver Güncellemesi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi==&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
&lt;br /&gt;
==40G Mellanox Connectx 4 Driver ve Firmware güncellemesi==&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=217</id>
		<title>CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Paketleri_Kurlum_%C3%96ncesi_Yap%C4%B1lmas%C4%B1_Gerekenler&amp;diff=217"/>
				<updated>2018-09-20T12:17:53Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &amp;quot;== Driver ve Firmware Güncellemleri== === 10G Intel Ethernet Kartı Driver Güncellemesi== Linux çekirdeği ile gelen driver yerine Intel web sayfasından 1...&amp;quot; içeriğiyle yeni sayfa oluşturdu&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Driver ve Firmware Güncellemleri==&lt;br /&gt;
=== 10G Intel Ethernet Kartı Driver Güncellemesi==&lt;br /&gt;
Linux çekirdeği ile gelen driver yerine Intel web sayfasından 10G ethernet kartının güncel driver'larının indirilerek kurulması daha az sorun ve daha yüksek performans almanızı sağlayacaktır.&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe          &lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        4.2.1-k&lt;br /&gt;
&lt;br /&gt;
 apt-get -y install gcc make&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# make install&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/ixgbe-5.3.6/src# modinfo ixgbe&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko&lt;br /&gt;
 version:        5.3.6&lt;br /&gt;
==40G Mellanox Connectx 4 Driver ve Firmware güncellemesi==&lt;br /&gt;
 root@zula202:~# lsmod | grep -i mlx5_core&lt;br /&gt;
  mlx5_core             208896  0&lt;br /&gt;
 root@zula202:~# modinfo mlx5_core&lt;br /&gt;
  filename:       /lib/modules/4.4.0-124-generic/kernel/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko&lt;br /&gt;
  version:        3.0-1&lt;br /&gt;
  license:        Dual BSD/GPL&lt;br /&gt;
  description:    Mellanox Connect-IB, ConnectX-4 core driver&lt;br /&gt;
  author:         Eli Cohen &amp;lt;eli@mellanox.com&amp;gt;&lt;br /&gt;
  srcversion:     B033A1086EAE3BE4103F5B2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# ./install &lt;br /&gt;
 Logs dir: /tmp/mlnx-en.9519.logs&lt;br /&gt;
 General log file: /tmp/mlnx-en.9519.logs/general.log&lt;br /&gt;
&lt;br /&gt;
 Below is the list of mlnx-en packages that you have chosen&lt;br /&gt;
 (some may have been added by the installer due to package dependencies):&lt;br /&gt;
&lt;br /&gt;
 ofed-scripts&lt;br /&gt;
 mlnx-en-utils&lt;br /&gt;
 mlnx-en-dkms&lt;br /&gt;
 mstflint&lt;br /&gt;
&lt;br /&gt;
 This program will install the mlnx-en package on your machine.&lt;br /&gt;
 Note that all other Mellanox, OEM, OFED, RDMA or Distribution IB packages will be removed.&lt;br /&gt;
 Those packages are removed due to conflicts with mlnx-en, do not reinstall them.&lt;br /&gt;
&lt;br /&gt;
 Do you want to continue?[y/N]:y&lt;br /&gt;
&lt;br /&gt;
 Attempting to perform Firmware update...&lt;br /&gt;
 Querying Mellanox devices firmware ...&lt;br /&gt;
&lt;br /&gt;
 Device #1:&lt;br /&gt;
 ----------&lt;br /&gt;
&lt;br /&gt;
  Device Type:      ConnectX4&lt;br /&gt;
  Part Number:      MCX414A-BCA_Ax&lt;br /&gt;
  Description:      ConnectX-4 EN network interface card; 40GbE dual-port QSFP28; PCIe3.0 x8; ROHS R6&lt;br /&gt;
  PSID:             MT_2130110027&lt;br /&gt;
  PCI Device Name:  83:00.0&lt;br /&gt;
  Base GUID:        ec0d9a0300d9ca62&lt;br /&gt;
  Base MAC:         ec0d9ad9ca62&lt;br /&gt;
  Versions:         Current        Available     &lt;br /&gt;
     FW             12.18.1000     12.22.1002    &lt;br /&gt;
     PXE            3.5.0109       3.5.0403      &lt;br /&gt;
     UEFI           N/A            14.15.0019    &lt;br /&gt;
&lt;br /&gt;
  Status:           Update required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# /etc/init.d/mlnx-en.d restart&lt;br /&gt;
 modinfo mlx5_core&lt;br /&gt;
&lt;br /&gt;
 root@zula201:~/calisma/mlnx-en-4.3-1.0.1.0-ubuntu16.04-x86_64# modinfo mlx5_core&lt;br /&gt;
 filename:       /lib/modules/4.4.0-124-generic/updates/dkms/mlx5_core.ko&lt;br /&gt;
 version:        4.3-1.0.1&lt;br /&gt;
 license:        Dual BSD/GPL&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=216</id>
		<title>Anasayfa</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=216"/>
				<updated>2018-09-20T12:14:52Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* CEPH YÖNETİMİ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bu web sayfası, TÜBİTAK ULAKBİM çatısı altında hizmet vermeye devam eden Bulut projesinde çeşitli alanlarda hizmet veren teknolojilerin kurulumu ve yönetimi ile ilgili olarak edinilen tecrübe ve bilgilerin aynı teknolojileri kullanan/kullanmayı planlayan kurumlar ile paylaşılması  amacıyla hazırlanmıştır.&lt;br /&gt;
&lt;br /&gt;
== KURULUM ÖNCESİ HAZIRLIKLAR ==&lt;br /&gt;
==== FİZİKSEL DONANIM ORTAMI ====&lt;br /&gt;
*[[ Donanım Seçimi Kriterleri ]]&lt;br /&gt;
*[[ İhale Şartnamesi ]]&lt;br /&gt;
*[[ Donanım Altyapısı ]]&lt;br /&gt;
*[[ Ağ/Sunucu Bağlantı Topolojisi ]]&lt;br /&gt;
==== ORTA KATMAN HAZIRLAMA ====&lt;br /&gt;
* [[ CEPH Genel Bilgiler | CEPH Bluestore vs Filestore ]]&lt;br /&gt;
== KURULUM ==&lt;br /&gt;
*[[ CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler ]]&lt;br /&gt;
* [[ CEPH Kurulumu | BLUESTORE KURULUM, YAPILANDIRMA ve BENCHMARK TESTLERİ]]&lt;br /&gt;
* [[ FILESTORE KURULUMU | FILESTORE KURULUMU]]&lt;br /&gt;
&lt;br /&gt;
== CEPH BİLEŞENLERİ ve BİLİNMESİ GEREKEN ANA KOMUTLAR ==&lt;br /&gt;
* [[ CEPH Yönetimi | Temel Bileşenler ve Komutlar]]&lt;br /&gt;
== CEPH YÖNETİMİ ==&lt;br /&gt;
* [[ Yönetim Dashboard (OpenAttic) | Yönetim Arayüzü – Dashboard (OpenAttic) ]]&lt;br /&gt;
* [[ HDD ve SSD üzerinde ayrı pool oluşturma | HDD ve SSD üzerinde ayrı pool oluşturma]]&lt;br /&gt;
* [[ RADOSGW Storage Pool Yapilandirma, Optimizasyon ve Testi ]]&lt;br /&gt;
&lt;br /&gt;
== PERFORMANS TESTLERİ VE OPTİMİZASYON ==&lt;br /&gt;
* [[ CEPH_Yönetimi#CEPH_Performans_Optimizasyonu_i.C3.A7in_Ayarlanabilecek_De.C4.9Fi.C5.9Fken_Listesi | CEPH Performans Optimizasyonu için Ayarlanabilecek Değişken Listesi ]]&lt;br /&gt;
* [[ CEPH Performans Optimizasyonu]]&lt;br /&gt;
* [[ CEPH Benchmark ]]&lt;br /&gt;
== GENEL SORUNLAR ve ÇÖZÜM YOLLARI ==&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Pool_.C3.BCzerinde_herhangi_bir_uygulaman.C4.B1n_aktifle.C5.9Ftirilmemesi |  Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Crash_Tunable_Hatas.C4.B1 | Crash Tunable Hatası ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#MON_Servisi_ayakta_ancak_quourum_olarak_eklenemiyorsa | MON Servisi ayakta ancak quourum olarak eklenemiyorsa ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#OSD_Disk_.C3.A7.C4.B1kart.C4.B1p_tekrar_eklemek_i.C3.A7in | OSD Disk çıkartıp tekrar eklemek için ]]&lt;br /&gt;
&lt;br /&gt;
== Hazırlayanlar ==&lt;br /&gt;
* Onur BEKTAŞ&lt;br /&gt;
* Emrah AKKOYUN&lt;br /&gt;
* Ömer Faruk ÇANGIR&lt;br /&gt;
&lt;br /&gt;
==Lisans==&lt;br /&gt;
Bu wiki sayfalarındaki tüm meteryaller Creative Commonss CC BY-SA 4.0 lisansına sahiptir&lt;br /&gt;
&lt;br /&gt;
[[Dosya:Cclisans.png|çerçeveli|sol]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=215</id>
		<title>Anasayfa</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=215"/>
				<updated>2018-09-20T12:13:32Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* KURULUM */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bu web sayfası, TÜBİTAK ULAKBİM çatısı altında hizmet vermeye devam eden Bulut projesinde çeşitli alanlarda hizmet veren teknolojilerin kurulumu ve yönetimi ile ilgili olarak edinilen tecrübe ve bilgilerin aynı teknolojileri kullanan/kullanmayı planlayan kurumlar ile paylaşılması  amacıyla hazırlanmıştır.&lt;br /&gt;
&lt;br /&gt;
== KURULUM ÖNCESİ HAZIRLIKLAR ==&lt;br /&gt;
==== FİZİKSEL DONANIM ORTAMI ====&lt;br /&gt;
*[[ Donanım Seçimi Kriterleri ]]&lt;br /&gt;
*[[ İhale Şartnamesi ]]&lt;br /&gt;
*[[ Donanım Altyapısı ]]&lt;br /&gt;
*[[ Ağ/Sunucu Bağlantı Topolojisi ]]&lt;br /&gt;
==== ORTA KATMAN HAZIRLAMA ====&lt;br /&gt;
* [[ CEPH Genel Bilgiler | CEPH Bluestore vs Filestore ]]&lt;br /&gt;
== KURULUM ==&lt;br /&gt;
*[[ CEPH Paketleri Kurlum Öncesi Yapılması Gerekenler ]]&lt;br /&gt;
* [[ CEPH Kurulumu | BLUESTORE KURULUM, YAPILANDIRMA ve BENCHMARK TESTLERİ]]&lt;br /&gt;
* [[ FILESTORE KURULUMU | FILESTORE KURULUMU]]&lt;br /&gt;
&lt;br /&gt;
== CEPH BİLEŞENLERİ ve BİLİNMESİ GEREKEN ANA KOMUTLAR ==&lt;br /&gt;
* [[ CEPH Yönetimi | Temel Bileşenler ve Komutlar]]&lt;br /&gt;
== CEPH YÖNETİMİ ==&lt;br /&gt;
* [[ Yönetim Dashboard (OpenAttic) | Yönetim Arayüzü – Dashboard (OpenAttic) ]]&lt;br /&gt;
* [[ HDD ve SSD üzerinde ayrı pool oluşturma | HDD ve SSD üzerinde ayrı pool oluşturma]]&lt;br /&gt;
== PERFORMANS TESTLERİ VE OPTİMİZASYON ==&lt;br /&gt;
* [[ CEPH_Yönetimi#CEPH_Performans_Optimizasyonu_i.C3.A7in_Ayarlanabilecek_De.C4.9Fi.C5.9Fken_Listesi | CEPH Performans Optimizasyonu için Ayarlanabilecek Değişken Listesi ]]&lt;br /&gt;
* [[ CEPH Performans Optimizasyonu]]&lt;br /&gt;
* [[ CEPH Benchmark ]]&lt;br /&gt;
== GENEL SORUNLAR ve ÇÖZÜM YOLLARI ==&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Pool_.C3.BCzerinde_herhangi_bir_uygulaman.C4.B1n_aktifle.C5.9Ftirilmemesi |  Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Crash_Tunable_Hatas.C4.B1 | Crash Tunable Hatası ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#MON_Servisi_ayakta_ancak_quourum_olarak_eklenemiyorsa | MON Servisi ayakta ancak quourum olarak eklenemiyorsa ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#OSD_Disk_.C3.A7.C4.B1kart.C4.B1p_tekrar_eklemek_i.C3.A7in | OSD Disk çıkartıp tekrar eklemek için ]]&lt;br /&gt;
&lt;br /&gt;
== Hazırlayanlar ==&lt;br /&gt;
* Onur BEKTAŞ&lt;br /&gt;
* Emrah AKKOYUN&lt;br /&gt;
* Ömer Faruk ÇANGIR&lt;br /&gt;
&lt;br /&gt;
==Lisans==&lt;br /&gt;
Bu wiki sayfalarındaki tüm meteryaller Creative Commonss CC BY-SA 4.0 lisansına sahiptir&lt;br /&gt;
&lt;br /&gt;
[[Dosya:Cclisans.png|çerçeveli|sol]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=214</id>
		<title>Anasayfa</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=214"/>
				<updated>2018-09-20T12:08:56Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bu web sayfası, TÜBİTAK ULAKBİM çatısı altında hizmet vermeye devam eden Bulut projesinde çeşitli alanlarda hizmet veren teknolojilerin kurulumu ve yönetimi ile ilgili olarak edinilen tecrübe ve bilgilerin aynı teknolojileri kullanan/kullanmayı planlayan kurumlar ile paylaşılması  amacıyla hazırlanmıştır.&lt;br /&gt;
&lt;br /&gt;
== KURULUM ÖNCESİ HAZIRLIKLAR ==&lt;br /&gt;
==== FİZİKSEL DONANIM ORTAMI ====&lt;br /&gt;
*[[ Donanım Seçimi Kriterleri ]]&lt;br /&gt;
*[[ İhale Şartnamesi ]]&lt;br /&gt;
*[[ Donanım Altyapısı ]]&lt;br /&gt;
*[[ Ağ/Sunucu Bağlantı Topolojisi ]]&lt;br /&gt;
==== ORTA KATMAN HAZIRLAMA ====&lt;br /&gt;
* [[ CEPH Genel Bilgiler | CEPH Bluestore vs Filestore ]]&lt;br /&gt;
== KURULUM ==&lt;br /&gt;
* [[ CEPH Kurulumu | BLUESTORE KURULUM, YAPILANDIRMA ve BENCHMARK TESTLERİ]]&lt;br /&gt;
* [[ FILESTORE KURULUMU | FILESTORE KURULUMU]]&lt;br /&gt;
&lt;br /&gt;
== CEPH BİLEŞENLERİ ve BİLİNMESİ GEREKEN ANA KOMUTLAR ==&lt;br /&gt;
* [[ CEPH Yönetimi | Temel Bileşenler ve Komutlar]]&lt;br /&gt;
== CEPH YÖNETİMİ ==&lt;br /&gt;
* [[ Yönetim Dashboard (OpenAttic) | Yönetim Arayüzü – Dashboard (OpenAttic) ]]&lt;br /&gt;
* [[ HDD ve SSD üzerinde ayrı pool oluşturma | HDD ve SSD üzerinde ayrı pool oluşturma]]&lt;br /&gt;
== PERFORMANS TESTLERİ VE OPTİMİZASYON ==&lt;br /&gt;
* [[ CEPH_Yönetimi#CEPH_Performans_Optimizasyonu_i.C3.A7in_Ayarlanabilecek_De.C4.9Fi.C5.9Fken_Listesi | CEPH Performans Optimizasyonu için Ayarlanabilecek Değişken Listesi ]]&lt;br /&gt;
* [[ CEPH Performans Optimizasyonu]]&lt;br /&gt;
* [[ CEPH Benchmark ]]&lt;br /&gt;
== GENEL SORUNLAR ve ÇÖZÜM YOLLARI ==&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Pool_.C3.BCzerinde_herhangi_bir_uygulaman.C4.B1n_aktifle.C5.9Ftirilmemesi |  Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Crash_Tunable_Hatas.C4.B1 | Crash Tunable Hatası ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#MON_Servisi_ayakta_ancak_quourum_olarak_eklenemiyorsa | MON Servisi ayakta ancak quourum olarak eklenemiyorsa ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#OSD_Disk_.C3.A7.C4.B1kart.C4.B1p_tekrar_eklemek_i.C3.A7in | OSD Disk çıkartıp tekrar eklemek için ]]&lt;br /&gt;
&lt;br /&gt;
== Hazırlayanlar ==&lt;br /&gt;
* Onur BEKTAŞ&lt;br /&gt;
* Emrah AKKOYUN&lt;br /&gt;
* Ömer Faruk ÇANGIR&lt;br /&gt;
&lt;br /&gt;
==Lisans==&lt;br /&gt;
Bu wiki sayfalarındaki tüm meteryaller Creative Commonss CC BY-SA 4.0 lisansına sahiptir&lt;br /&gt;
&lt;br /&gt;
[[Dosya:Cclisans.png|çerçeveli|sol]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=213</id>
		<title>Anasayfa</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=213"/>
				<updated>2018-09-20T12:08:21Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bu web sayfası TÜBİTAK ULAKBİM çatısı altında hizmet vermeye devam eden Bulut projesinde, çeşitli alanlarda hizmet veren teknolojilerin kurulumu ve yönetimi ile ilgili olarak edinilen bilgilerin aynı teknolojileri kullanan/kullanmayı planlayan kurumlar ile paylaşılması  amacıyla hazırlanmıştır.&lt;br /&gt;
&lt;br /&gt;
== KURULUM ÖNCESİ HAZIRLIKLAR ==&lt;br /&gt;
==== FİZİKSEL DONANIM ORTAMI ====&lt;br /&gt;
*[[ Donanım Seçimi Kriterleri ]]&lt;br /&gt;
*[[ İhale Şartnamesi ]]&lt;br /&gt;
*[[ Donanım Altyapısı ]]&lt;br /&gt;
*[[ Ağ/Sunucu Bağlantı Topolojisi ]]&lt;br /&gt;
==== ORTA KATMAN HAZIRLAMA ====&lt;br /&gt;
* [[ CEPH Genel Bilgiler | CEPH Bluestore vs Filestore ]]&lt;br /&gt;
== KURULUM ==&lt;br /&gt;
* [[ CEPH Kurulumu | BLUESTORE KURULUM, YAPILANDIRMA ve BENCHMARK TESTLERİ]]&lt;br /&gt;
* [[ FILESTORE KURULUMU | FILESTORE KURULUMU]]&lt;br /&gt;
&lt;br /&gt;
== CEPH BİLEŞENLERİ ve BİLİNMESİ GEREKEN ANA KOMUTLAR ==&lt;br /&gt;
* [[ CEPH Yönetimi | Temel Bileşenler ve Komutlar]]&lt;br /&gt;
== CEPH YÖNETİMİ ==&lt;br /&gt;
* [[ Yönetim Dashboard (OpenAttic) | Yönetim Arayüzü – Dashboard (OpenAttic) ]]&lt;br /&gt;
* [[ HDD ve SSD üzerinde ayrı pool oluşturma | HDD ve SSD üzerinde ayrı pool oluşturma]]&lt;br /&gt;
== PERFORMANS TESTLERİ VE OPTİMİZASYON ==&lt;br /&gt;
* [[ CEPH_Yönetimi#CEPH_Performans_Optimizasyonu_i.C3.A7in_Ayarlanabilecek_De.C4.9Fi.C5.9Fken_Listesi | CEPH Performans Optimizasyonu için Ayarlanabilecek Değişken Listesi ]]&lt;br /&gt;
* [[ CEPH Performans Optimizasyonu]]&lt;br /&gt;
* [[ CEPH Benchmark ]]&lt;br /&gt;
== GENEL SORUNLAR ve ÇÖZÜM YOLLARI ==&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Pool_.C3.BCzerinde_herhangi_bir_uygulaman.C4.B1n_aktifle.C5.9Ftirilmemesi |  Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Crash_Tunable_Hatas.C4.B1 | Crash Tunable Hatası ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#MON_Servisi_ayakta_ancak_quourum_olarak_eklenemiyorsa | MON Servisi ayakta ancak quourum olarak eklenemiyorsa ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#OSD_Disk_.C3.A7.C4.B1kart.C4.B1p_tekrar_eklemek_i.C3.A7in | OSD Disk çıkartıp tekrar eklemek için ]]&lt;br /&gt;
&lt;br /&gt;
== Hazırlayanlar ==&lt;br /&gt;
* Onur BEKTAŞ&lt;br /&gt;
* Emrah AKKOYUN&lt;br /&gt;
* Ömer Faruk ÇANGIR&lt;br /&gt;
&lt;br /&gt;
==Lisans==&lt;br /&gt;
Bu wiki sayfalarındaki tüm meteryaller Creative Commonss CC BY-SA 4.0 lisansına sahiptir&lt;br /&gt;
&lt;br /&gt;
[[Dosya:Cclisans.png|çerçeveli|sol]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=212</id>
		<title>Anasayfa</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Anasayfa&amp;diff=212"/>
				<updated>2018-09-20T12:07:19Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bu web sayfası TÜBİTAK ULAKBİM çatısı altında hizmet vermeye devam eden Bulut projesinde, çeşitli alanlarda hizmet veren teknolojilerin kurulumu ve yönetimi ile ilgili olarak edinilen bilgilerin ülkemizde faaliyet gösteren kamu ve özel kurumlara yardımcı olması amacıyla hazırlanmıştır.&lt;br /&gt;
&lt;br /&gt;
== KURULUM ÖNCESİ HAZIRLIKLAR ==&lt;br /&gt;
==== FİZİKSEL DONANIM ORTAMI ====&lt;br /&gt;
*[[ Donanım Seçimi Kriterleri ]]&lt;br /&gt;
*[[ İhale Şartnamesi ]]&lt;br /&gt;
*[[ Donanım Altyapısı ]]&lt;br /&gt;
*[[ Ağ/Sunucu Bağlantı Topolojisi ]]&lt;br /&gt;
==== ORTA KATMAN HAZIRLAMA ====&lt;br /&gt;
* [[ CEPH Genel Bilgiler | CEPH Bluestore vs Filestore ]]&lt;br /&gt;
== KURULUM ==&lt;br /&gt;
* [[ CEPH Kurulumu | BLUESTORE KURULUM, YAPILANDIRMA ve BENCHMARK TESTLERİ]]&lt;br /&gt;
* [[ FILESTORE KURULUMU | FILESTORE KURULUMU]]&lt;br /&gt;
&lt;br /&gt;
== CEPH BİLEŞENLERİ ve BİLİNMESİ GEREKEN ANA KOMUTLAR ==&lt;br /&gt;
* [[ CEPH Yönetimi | Temel Bileşenler ve Komutlar]]&lt;br /&gt;
== CEPH YÖNETİMİ ==&lt;br /&gt;
* [[ Yönetim Dashboard (OpenAttic) | Yönetim Arayüzü – Dashboard (OpenAttic) ]]&lt;br /&gt;
* [[ HDD ve SSD üzerinde ayrı pool oluşturma | HDD ve SSD üzerinde ayrı pool oluşturma]]&lt;br /&gt;
== PERFORMANS TESTLERİ VE OPTİMİZASYON ==&lt;br /&gt;
* [[ CEPH_Yönetimi#CEPH_Performans_Optimizasyonu_i.C3.A7in_Ayarlanabilecek_De.C4.9Fi.C5.9Fken_Listesi | CEPH Performans Optimizasyonu için Ayarlanabilecek Değişken Listesi ]]&lt;br /&gt;
* [[ CEPH Performans Optimizasyonu]]&lt;br /&gt;
* [[ CEPH Benchmark ]]&lt;br /&gt;
== GENEL SORUNLAR ve ÇÖZÜM YOLLARI ==&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Pool_.C3.BCzerinde_herhangi_bir_uygulaman.C4.B1n_aktifle.C5.9Ftirilmemesi |  Pool üzerinde herhangi bir uygulamanın aktifleştirilmemesi ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#Crash_Tunable_Hatas.C4.B1 | Crash Tunable Hatası ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#MON_Servisi_ayakta_ancak_quourum_olarak_eklenemiyorsa | MON Servisi ayakta ancak quourum olarak eklenemiyorsa ]]&lt;br /&gt;
* [[ CEPH_Sorunları_Çözme#OSD_Disk_.C3.A7.C4.B1kart.C4.B1p_tekrar_eklemek_i.C3.A7in | OSD Disk çıkartıp tekrar eklemek için ]]&lt;br /&gt;
&lt;br /&gt;
== Hazırlayanlar ==&lt;br /&gt;
* Onur BEKTAŞ&lt;br /&gt;
* Emrah AKKOYUN&lt;br /&gt;
* Ömer Faruk ÇANGIR&lt;br /&gt;
&lt;br /&gt;
==Lisans==&lt;br /&gt;
Bu wiki sayfalarındaki tüm meteryaller Creative Commonss CC BY-SA 4.0 lisansına sahiptir&lt;br /&gt;
&lt;br /&gt;
[[Dosya:Cclisans.png|çerçeveli|sol]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Kurulumu&amp;diff=211</id>
		<title>CEPH Kurulumu</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Kurulumu&amp;diff=211"/>
				<updated>2018-09-20T12:07:05Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=='''CEPH Kümesi Kurulum ve Yapılandırma'''==&lt;br /&gt;
===Paket Kurulumları===&lt;br /&gt;
Ubuntu 16.04 işletim sistemi üzerinde güncel olan CEPH Mimic (13.2.0) kurulumu burada anlatılmaktadır. &lt;br /&gt;
* Kurulum dökümanı her bir OSD host üzerinde 12 adet fiziksel disk bulunan, ayrıca nvme SSD yer alan 4 ayrı sunucu üzerinde anatılmaktadır (zula209, zula210, zula211 ve zula212). &lt;br /&gt;
* Her bir fiziksel sunucu 10G ve 40G kartlara sahiptir, dolayısıyla client/pulic network 192.168.56.0/24 10G interface üzerinde yapılandırılırken replika vb işlemler için trafiğin daha fazla olacağı cluster network 192.168.200.0/24 40G interface ile yapılandırılacaktır. &lt;br /&gt;
* zula209 ceph-admin olarak seçilip tüm kurulumlar ceph-deploy ile diğer hostlar üzerinde de yapılacaktır. &lt;br /&gt;
* Yönetim ağı ise gigabit interface olup 172.16.2.0/24 networkünde yer almaktadır. &lt;br /&gt;
&lt;br /&gt;
Kurulum için öncelikle repoların düzenlenmesi gerekmektedir. Aşağıdaki komutları tüm depeloma sunucularında çalıştırarak CEPH repolarını ekleyiniz ve ceph-deploy programını kurunuz.&lt;br /&gt;
&lt;br /&gt;
 wget -q -O- 'https://download.ceph.com/keys/release.asc' | sudo apt-key add -&lt;br /&gt;
 # ceph release: mimic, ubuntu release: xenial&lt;br /&gt;
 sudo apt-add-repository 'deb https://download.ceph.com/debian-mimic/ xenial main'&lt;br /&gt;
&lt;br /&gt;
CEPH bileşenlerinin kurulumu ve yapılandırılması ceph-deploy aracı ile tek bir host üzerinden kendi ve diğerleri üzerine gerçekleştirilecektir.&lt;br /&gt;
&lt;br /&gt;
 sudo apt update&lt;br /&gt;
 sudo apt install ceph-deploy&lt;br /&gt;
&lt;br /&gt;
Bunun yanında tüm sunucuların /etc/hosts dosyasına sunucuların IP adreslerini yazınız.&lt;br /&gt;
&lt;br /&gt;
 192.168.56.209  zula209&lt;br /&gt;
 192.168.56.210  zula210&lt;br /&gt;
 192.168.56.211  zula211&lt;br /&gt;
 192.168.56.212  zula212&lt;br /&gt;
&lt;br /&gt;
===CEPH Bileşenleri İndirme ve Yapılandırma===&lt;br /&gt;
Kurulum için bir sunucu kurulum sunucusu olarak seçilmelidir. Biz zula209'u kurulum sunucusu olarak kullanacağız. Kurulumda, ceph-deploy  programı üzerinden tüm sunucularda gerekli paketleri indirmek için ceph-deploy adında bir kullanıcı oluşturulur ve bu kullanıcı üzerinden tüm kurulum işlemleri yapılır.Ceph-deploy kullanıcısına sudo ile root olma yetkisi verilir.Burada dikkat edilecek nokta ceph-deploy kullanıcısının sudo komutunu kullanırken parola istenmeyecek şekilde yapılandırılmasınıdır. Kullanıcı sudo grubuna eklenecek ise  /etc/sudoers dosyası&lt;br /&gt;
&lt;br /&gt;
 %sudo   ALL=(ALL:ALL) NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
şeklinde yapılandırılmalıdır.  Kurulum yapılacak diğer sunucularda da benzer şekilde ceph-deploy kullanıcısı yaratılır ve sudo ile root olabilmesi için gerekli ayarlar yapılır. &lt;br /&gt;
&lt;br /&gt;
Kurulum sunucusundan diğer tüm sunuculara ceph-deploy kullanıcısından erişim şifresiz bir şekilde yapılacak şekilde yapılandırılmalıdır.Bunun için kurulum sunucusundaki ceph-deploy kullanısının ssh key'leri ssh-copy-id komutu ile diğer sunuculara kopyalanmalıdır.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy@zula209:~$ ssh-copy-id ceph-deploy@zula211&lt;br /&gt;
 ceph-deploy@zula209:~$ ssh-copy-id ceph-deploy@zula212&lt;br /&gt;
 ceph-deploy@zula209:~$ ssh-copy-id ceph-deploy@zula213&lt;br /&gt;
&lt;br /&gt;
Kurulum için zula209 sunucusunda ceph-ceploy kullanıcısı ile my-cluster adında bir dizin oluşturulur ve bu dizinde ceph.conf yetki dosyası, yetkilendirme için gerekli keyring dosyaları ve log burada yer alır.&lt;br /&gt;
&lt;br /&gt;
 su - ceph-deploy&lt;br /&gt;
 mkdir my-cluster&lt;br /&gt;
 cd my-cluster&lt;br /&gt;
&lt;br /&gt;
ceph-deploy komutu bir dizi komut serisini çalıştırıp logları ekrana basar. Bu  süreçte bir sorun yaşanır ise program yaptığı işlemleri geri almaya çalışır. Aşağıda böyle bir işlem sonrasında yarım kalan işlerin temizlenmesi için çalıştırılması gereken komutlar gösterilmektedir. (komutlar my-cluster dizin altında çalıştırılmalıdır)&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy purge {ceph-node} [{ceph-node}]&lt;br /&gt;
 ceph-deploy purgedata {ceph-node} [{ceph-node}]&lt;br /&gt;
 ceph-deploy forgetkeys&lt;br /&gt;
 rm ceph.*&lt;br /&gt;
&lt;br /&gt;
# İlgili dizin altında aşağıdaki  komutu calistirilir, ceph.conf dosyasi dizinde olusur. &lt;br /&gt;
 ceph-deploy new zula209&lt;br /&gt;
&lt;br /&gt;
Bu dosyaya cluster ve public ip leri asagidaki sekilde eklenir. Ayrıca yeni bir pool oluşturulduğunda bu pool için default ayarlar burada verilebilir. Örneğin parametre verilmeden oluşturulacak bir pool için replika sayısı 3, pg ve pgp sayısı 64 olarak ayarlanması için kullanınlan ceph.conf dosyası:&lt;br /&gt;
 [global]&lt;br /&gt;
 fsid = ccfe4242-c679-44c2-ba49-88c4234f44e1&lt;br /&gt;
 mon_initial_members = zula209&lt;br /&gt;
 mon_host = 192.168.56.209&lt;br /&gt;
 auth_cluster_required = cephx&lt;br /&gt;
 auth_service_required = cephx&lt;br /&gt;
 auth_client_required = cephx&lt;br /&gt;
 public network = 192.168.56.0/24&lt;br /&gt;
 cluster network = 192.168.200.0/24&lt;br /&gt;
 # the number of replica is 3&lt;br /&gt;
 osd pool default size = 3  # Write an object 3 times.&lt;br /&gt;
 osd pool default min size = 3 # Allow writing two copy in a degraded state.&lt;br /&gt;
 # the number of pg per osd is 100&lt;br /&gt;
 osd pool default pg num = 64&lt;br /&gt;
 osd pool default pgp num = 64&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
osd pg  sayısını hesaplamak için (OSD sayısı * 100) / Replika sayısı  formülü çıkan sonuç en yakın ikini katına yuvarlanarak  kullanılabilir. 48 OSD üç replika için 48 * 100 /4 = 1600. En yakın 2 nin kuvvet 2048 olduğu için 2048 kullanılabilir.&lt;br /&gt;
ceph.conf dosyası düzenlendikten sonra her bir host için kurulum işlemlerine aşağıdaki komutla başlanabilir. Burada dikkat edilmesi gereken paket kurulumları esnasında ekrana basılan loglarda CEPH sürümü ve tüm fiziksel sunuculara ilgili paketlerin kurulumlarının eksiksiz yapılmasıdır.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy install zula209 zula210 zula211 zula212&lt;br /&gt;
&lt;br /&gt;
Kurulumlardan sonra gerekli yetkilendirme dosyalarının dizine aktarılabilmesi için aşağıdaki komut çalıştırılır.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy mon create-initial&lt;br /&gt;
&lt;br /&gt;
 $ ls -ll&lt;br /&gt;
 total 64&lt;br /&gt;
 -rw------- 1 ceph-deploy ceph-deploy   113 Jun  7 07:25 ceph.bootstrap-mds.keyring&lt;br /&gt;
 -rw------- 1 ceph-deploy ceph-deploy   113 Jun  7 07:25 ceph.bootstrap-mgr.keyring&lt;br /&gt;
 -rw------- 1 ceph-deploy ceph-deploy   113 Jun  7 07:25 ceph.bootstrap-osd.keyring&lt;br /&gt;
 -rw------- 1 ceph-deploy ceph-deploy   113 Jun  7 07:25 ceph.bootstrap-rgw.keyring&lt;br /&gt;
 -rw------- 1 ceph-deploy ceph-deploy   151 Jun  7 07:25 ceph.client.admin.keyring&lt;br /&gt;
 -rw-rw-r-- 1 ceph-deploy ceph-deploy   267 Jun  7 07:23 ceph.conf&lt;br /&gt;
 -rw-rw-r-- 1 ceph-deploy ceph-deploy 30148 Jun  7 07:25 ceph-deploy-ceph.log&lt;br /&gt;
 -rw------- 1 ceph-deploy ceph-deploy    73 Jun  7 07:21 ceph.mon.keyring&lt;br /&gt;
 -rw-r--r-- 1 root        root         1645 Oct 15  2015 release.asc&lt;br /&gt;
&lt;br /&gt;
Aşağıdaki komut ile cephcli komutlari bulundugumuz nodda yetkilendirilir. Boylece yetkilendirme istenen ceph komutlari calistirilir. Ornegin zula210 dedigimizde zula209 uzerinde olusturulan anahtarlar ilgili sunucuda /etc/ceph/ceph.client.admin.keyring dosyasina yazilarak erisim yetkisi o sunucuya da taninmis olur. Ayrıca Luminious versiyonu ve sonrası kurulumlar için mgr oluşturulur.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy admin zula209 zula210 zula211 zula212&lt;br /&gt;
 ceph-deploy mgr create zula209&lt;br /&gt;
&lt;br /&gt;
Böylece tüm temel bileşenlerinin kurulumları ve temel seviyede yapılandırılması tamamlanmış olur. Artık '''ceph -s''' veya '''ceph health''' komutları ile ceph kümesinin durumlarına bakılabilir. &lt;br /&gt;
&lt;br /&gt;
   cluster:&lt;br /&gt;
    id:     1521e924-1b18-4192-92b2-448dd9524038&lt;br /&gt;
    health: HEALTH_OK&lt;br /&gt;
 &lt;br /&gt;
  services:&lt;br /&gt;
    mon: 1 daemons, quorum zula209&lt;br /&gt;
    mgr: zula209(active)&lt;br /&gt;
    osd: 0 osds: 0 up, 0 in&lt;br /&gt;
 &lt;br /&gt;
  data:&lt;br /&gt;
    pools:   0 pools, 0 pgs&lt;br /&gt;
    objects: 0  objects, 0 B&lt;br /&gt;
    usage:   0 B used, 0 B / 0 B avail&lt;br /&gt;
    pgs:&lt;br /&gt;
&lt;br /&gt;
===OSD Disk Ekleme ve Yönetimi===&lt;br /&gt;
Yukarıda çalıştırılan komutun çıktısına bakıldığında ayakta ve çalışan osd sayısı sıfır olarak görülmektedir. Dolayısıyla ceph kümesinde kullanılabilir alan ve kapasite de bulunmamaktadır. Bu başlık altında her bir host altında yer alan 12 ayrı HDD disk yapılandırılıp kullanılabilir hale getirilecektir. Burada storage backend olarak sahip olduğu pekçok avantajı nedeniyle Bluestore storage backend olarak kurulacaktır. Mimic versiyonunda default olarak FileStore değil BlueStore artık gelmektedir. Bu storage backendleri ile ilgili bilgiler aşağıdan erişilebilir.&lt;br /&gt;
&lt;br /&gt;
[[CEPH_Genel_Bilgiler]]&lt;br /&gt;
&lt;br /&gt;
İlgili sunucular üzerinde kurulum yapmadan önce eskiden kalan ceph lvm volumeler var ise silinmelidir, diğer türlü hata verecek ve osd diski kümeye eklemeyecektir. Aşağıdaki komut ile tek bir volume bilgisini silebilirsiniz.&lt;br /&gt;
 vgscan&lt;br /&gt;
 vgremove ceph-c6cc6d67-0de2-4cd0-b9fa-384ecbfc6a00&lt;br /&gt;
&lt;br /&gt;
Hepsini silmek için:&lt;br /&gt;
&lt;br /&gt;
 for i in `vgscan | grep Found  | awk -Fgroup '{print $2}' | awk '{print $1}' | sed 's/\&amp;quot;//g' ` ; do  vgremove  $i ; done&lt;br /&gt;
&lt;br /&gt;
Bluestore yapılandırılırken block.db ve block.wal dosyaları performans artırmak için nvme ssd diskler üzerinde (partition) aşağıdaki komut ile tutulabilir, ancak birden fazla osd'nin aynı partition kullanması başlangıçta çalışıyorken ilerleyen zamanlarda bir hata alması durumunda o sunucu üzerindeki tüm OSD'lerin id maplerini karıştırmasi nedeniyle büyük bir soruna neden olabilir. Bu konuda wiki sayfasında ayrıca bir başlıkta bu tecrübelere yer verilecektir.&lt;br /&gt;
&lt;br /&gt;
* block.db ve block.wal islerini nvme ssd diski uzerinde yapabilmek icin sirasiyla 120 ve 240G partition fdisk ile olusturulur. Ardından ceph-deploy komutu ile osd disk oluşturulur.&lt;br /&gt;
 Device             Start       End   Sectors  Size Type&lt;br /&gt;
 /dev/nvme0n1p1      2048 251660287 251658240  120G Linux filesystem&lt;br /&gt;
 /dev/nvme0n1p2 251660288 754976767 503316480  240G Linux filesystem&lt;br /&gt;
 &lt;br /&gt;
  sudo ceph-deploy osd create zula209 --data /dev/sdb --block-db /dev/nvme0n1p1 --block-wal /dev/nvme0n1p2&lt;br /&gt;
&lt;br /&gt;
* block.db ve block.wal eğer block verinin yazılacağı diskte oluşturulacaksa aşağıdaki komut çalıştırılır. Böylece fiziksel sunucu üzerinde yer alan bir fiziksel disk osd disk olarak kümeye eklenir.&lt;br /&gt;
&lt;br /&gt;
 sudo ceph-deploy osd create zula209 --data /dev/sdb&lt;br /&gt;
&lt;br /&gt;
Benzer sekilde diger osd disklerde olusturulur ve ceph osd tree komutu ile durumlarina bakilir. &lt;br /&gt;
 for i in `echo sdc   sdd   sde   sdf   sdg   sdh   sdi   sdj   sdk   sdl   sdm`; do ceph-deploy osd create zula209 --data /dev/$i; done&lt;br /&gt;
&lt;br /&gt;
zula210, zula211 ve zula212'de de benzer komutla diskler olusturulur ve osd'lerin durumuna bakilir. &lt;br /&gt;
&lt;br /&gt;
Var olan osd diskler asagidaki sekilde gorulebilir.&lt;br /&gt;
 $ sudo ceph osd tree&lt;br /&gt;
 ID CLASS WEIGHT  TYPE NAME        STATUS REWEIGHT PRI-AFF &lt;br /&gt;
 -1       7.39459 root default                             &lt;br /&gt;
 -3       7.39459     host zula209                         &lt;br /&gt;
  0   hdd 7.39459         osd.0        up  1.00000 1.00000 &lt;br /&gt;
&lt;br /&gt;
Ayrica ceph dizini sembolik linkleri de asagidaki sekilde kontrol edilmelidir. Bu yapılandırmada .db ve .wal dosyaları ssd üzerinde oluşturulduğundan sembolik linkle bu disk bölümüne bağlanmıştır. type dosyasi icerisinde bluestore yazilidir. Bunun disinda block wal ve db nvme linklidir. vgscan ile bakildiginda ceph-3f... volume grubu olusturulmustur. Ek kontroller icin lsblk ve blkid komutlari da kullanilabilir.&lt;br /&gt;
 $ sudo ls /var/lib/ceph/osd/ceph-0 -ll&lt;br /&gt;
 total 56&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph 189 Jun  7 07:32 activate.monmap&lt;br /&gt;
 lrwxrwxrwx 1 ceph ceph  93 Jun  7 07:32 block -&amp;gt; /dev/ceph-3f44b49a-ff3e-489a-bbf9-af3dd2ffd642/osd-block-ec84a9fa-0b1a-4f33-8ad2-b1a956e4fe4f&lt;br /&gt;
 lrwxrwxrwx 1 root root  14 Jun  7 07:32 block.db -&amp;gt; /dev/nvme0n1p1&lt;br /&gt;
 lrwxrwxrwx 1 root root  14 Jun  7 07:32 block.wal -&amp;gt; /dev/nvme0n1p2&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph   2 Jun  7 07:32 bluefs&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph  37 Jun  7 07:32 ceph_fsid&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph  37 Jun  7 07:32 fsid&lt;br /&gt;
 -rw------- 1 ceph ceph  55 Jun  7 07:32 keyring&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph   8 Jun  7 07:32 kv_backend&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph  21 Jun  7 07:32 magic&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph   4 Jun  7 07:32 mkfs_done&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph  41 Jun  7 07:32 osd_key&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph  15 Jun  7 07:32 path_block.db&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph  15 Jun  7 07:32 path_block.wal&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph   6 Jun  7 07:32 ready&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph  10 Jun  7 07:32 type&lt;br /&gt;
 -rw-r--r-- 1 ceph ceph   2 Jun  7 07:32 whoami&lt;br /&gt;
&lt;br /&gt;
Bu arada sorun olmasi durumunda kalan osd'yi cikarmak icin asagidaki komutlar kullanilir. Ornek id 0'da olan osd icin:&lt;br /&gt;
 sudo ceph osd down 0; sudo ceph osd destroy 0 --yes-i-really-mean-it;ceph osd rm 0&lt;br /&gt;
&lt;br /&gt;
Ayrica  stderr: Device /dev/sdd not found (or ignored by filtering) gibilerinden bir hata almasi durumunda asagidaki islem yapilir. Onceden fdisk ile disk partitionlara bolunup silinse dahi mpt bilgisinin silinmesi gerekiyor. Bu arada osd yapmak istediginiz diskin isletim sisteminin yuklu oldugu root diski olmadigindan emin olmak gerekir.&lt;br /&gt;
 dd if=/dev/zero of=/dev/sdd count=1&lt;br /&gt;
 sudo ceph-deploy osd create zula209 --data /dev/sdd --block-db /dev/nvme0n1p1 --block-wal /dev/nvme0n1p2&lt;br /&gt;
&lt;br /&gt;
Son olarak osd disklerin ve ceph kümesinin durumu aşağıdaki komutlarla kontrol edilip diğer sürece başlanır.&lt;br /&gt;
&lt;br /&gt;
 sudo ceph osd tree&lt;br /&gt;
 ID CLASS WEIGHT    TYPE NAME        STATUS REWEIGHT PRI-AFF &lt;br /&gt;
 -1       354.94043 root default                             &lt;br /&gt;
 -3        88.73511     host zula209                         &lt;br /&gt;
 0   hdd   7.39459         osd.0        up  1.00000 1.00000 &lt;br /&gt;
 1   hdd   7.39459         osd.1        up  1.00000 1.00000 &lt;br /&gt;
 2   hdd   7.39459         osd.2        up  1.00000 1.00000 &lt;br /&gt;
 3   hdd   7.39459         osd.3        up  1.00000 1.00000 &lt;br /&gt;
 4   hdd   7.39459         osd.4        up  1.00000 1.00000 &lt;br /&gt;
 5   hdd   7.39459         osd.5        up  1.00000 1.00000 &lt;br /&gt;
 6   hdd   7.39459         osd.6        up  1.00000 1.00000 &lt;br /&gt;
 7   hdd   7.39459         osd.7        up  1.00000 1.00000 &lt;br /&gt;
 8   hdd   7.39459         osd.8        up  1.00000 1.00000 &lt;br /&gt;
 9   hdd   7.39459         osd.9        up  1.00000 1.00000 &lt;br /&gt;
 10   hdd   7.39459         osd.10       up  1.00000 1.00000 &lt;br /&gt;
 11   hdd   7.39459         osd.11       up  1.00000 1.00000 &lt;br /&gt;
 -5        88.73511     host zula210                         &lt;br /&gt;
 12   hdd   7.39459         osd.12       up  1.00000 1.00000 &lt;br /&gt;
 13   hdd   7.39459         osd.13       up  1.00000 1.00000 &lt;br /&gt;
 14   hdd   7.39459         osd.14       up  1.00000 1.00000 &lt;br /&gt;
 15   hdd   7.39459         osd.15       up  1.00000 1.00000 &lt;br /&gt;
 16   hdd   7.39459         osd.16       up  1.00000 1.00000 &lt;br /&gt;
 17   hdd   7.39459         osd.17       up  1.00000 1.00000 &lt;br /&gt;
 18   hdd   7.39459         osd.18       up  1.00000 1.00000 &lt;br /&gt;
 19   hdd   7.39459         osd.19       up  1.00000 1.00000 &lt;br /&gt;
 20   hdd   7.39459         osd.20       up  1.00000 1.00000 &lt;br /&gt;
 21   hdd   7.39459         osd.21       up  1.00000 1.00000 &lt;br /&gt;
 22   hdd   7.39459         osd.22       up  1.00000 1.00000 &lt;br /&gt;
 23   hdd   7.39459         osd.23       up  1.00000 1.00000 &lt;br /&gt;
 -7        88.73511     host zula211                         &lt;br /&gt;
 24   hdd   7.39459         osd.24       up  1.00000 1.00000 &lt;br /&gt;
 25   hdd   7.39459         osd.25       up  1.00000 1.00000 &lt;br /&gt;
 26   hdd   7.39459         osd.26       up  1.00000 1.00000 &lt;br /&gt;
 27   hdd   7.39459         osd.27       up  1.00000 1.00000 &lt;br /&gt;
 28   hdd   7.39459         osd.28       up  1.00000 1.00000 &lt;br /&gt;
 29   hdd   7.39459         osd.29       up  1.00000 1.00000 &lt;br /&gt;
 30   hdd   7.39459         osd.30       up  1.00000 1.00000 &lt;br /&gt;
 31   hdd   7.39459         osd.31       up  1.00000 1.00000 &lt;br /&gt;
 32   hdd   7.39459         osd.32       up  1.00000 1.00000 &lt;br /&gt;
 33   hdd   7.39459         osd.33       up  1.00000 1.00000 &lt;br /&gt;
 34   hdd   7.39459         osd.34       up  1.00000 1.00000 &lt;br /&gt;
 35   hdd   7.39459         osd.35       up  1.00000 1.00000 &lt;br /&gt;
 -9        88.73511     host zula212                         &lt;br /&gt;
 36   hdd   7.39459         osd.36       up  1.00000 1.00000 &lt;br /&gt;
 37   hdd   7.39459         osd.37       up  1.00000 1.00000 &lt;br /&gt;
 38   hdd   7.39459         osd.38       up  1.00000 1.00000 &lt;br /&gt;
 39   hdd   7.39459         osd.39       up  1.00000 1.00000 &lt;br /&gt;
 40   hdd   7.39459         osd.40       up  1.00000 1.00000 &lt;br /&gt;
 41   hdd   7.39459         osd.41       up  1.00000 1.00000 &lt;br /&gt;
 42   hdd   7.39459         osd.42       up  1.00000 1.00000 &lt;br /&gt;
 43   hdd   7.39459         osd.43       up  1.00000 1.00000 &lt;br /&gt;
 44   hdd   7.39459         osd.44       up  1.00000 1.00000 &lt;br /&gt;
 45   hdd   7.39459         osd.45       up  1.00000 1.00000 &lt;br /&gt;
  46   hdd   7.39459         osd.46       up  1.00000 1.00000 &lt;br /&gt;
 47   hdd   7.39459         osd.47       up  1.00000 1.00000 &lt;br /&gt;
&lt;br /&gt;
===CEPH Servisleri Oluşturma===&lt;br /&gt;
Birden fazla monitör servisinin eklenmesi gerekmektedir, bir tanesi gittiğinde ceph kümesi diğer kalan monitörler üzerinden devam edebilmektedir. Bu örnekte osd hostlar üzerinde birden fazla monitör servisi çalıştırılmaktadır. Ayrı bir sunucu üzerinden çalışması daha iyi olabilecektir. Bunun dışında mgr ve rgw gibi servislerde bu fiziksel sunucular üzerinde yedekli olacak şekilde basitçe yapılandırılmıştır.&lt;br /&gt;
&lt;br /&gt;
 $ sudo ceph -s&lt;br /&gt;
  cluster:&lt;br /&gt;
    id:     b49d69c7-e017-4f9f-b69b-57d3efe7987b&lt;br /&gt;
    health: HEALTH_WARN&lt;br /&gt;
            too few PGs per OSD (2 &amp;lt; min 30)&lt;br /&gt;
 &lt;br /&gt;
  services:&lt;br /&gt;
    mon: 4 daemons, quorum zula209,zula210,zula211,zula212&lt;br /&gt;
    mgr: zula209(active), standbys: zula212&lt;br /&gt;
    osd: 48 osds: 48 up, 48 in&lt;br /&gt;
    rgw: 1 daemon active&lt;br /&gt;
 &lt;br /&gt;
  data:&lt;br /&gt;
    pools:   4 pools, 32 pgs&lt;br /&gt;
    objects: 219  objects, 1.1 KiB&lt;br /&gt;
    usage:   5.7 TiB used, 349 TiB / 355 TiB avail&lt;br /&gt;
    pgs:     32 active+clean&lt;br /&gt;
&lt;br /&gt;
Tum OSD'ler calisiyor ve ayakta. zula210,zula211 ve zula212'ye monitor eklemek icin&lt;br /&gt;
 ceph-deploy mon add zula210&lt;br /&gt;
 ceph-deploy mon add zula211&lt;br /&gt;
 ceph-deploy mon add zula212&lt;br /&gt;
&lt;br /&gt;
mgr ve rgw nodlarini eklemek icin sirasiyla asagidaki komutlar calistirilir.&lt;br /&gt;
 ceph-deploy mgr create zula212&lt;br /&gt;
 ceph-deploy rgw create zula209&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== POOL Oluşturma, PG_NUM ve REPLICA Ayarları ===&lt;br /&gt;
Replika sayisi 3, eger o an PG degraded durumunda ise yine 3 olacak sekilde (degrade durumunda kalan osd sayisi, veri kritik islerde yuksek tutmakta fayda var) conf dosyasi duzenlenir. Ayrica default pg sayisini belirlemek icin her bir osd icin 100 pg onerilmistir. Buna gore pg sayisi (OSD sayisi x100)/replika sayisi yani (4x12x100)/3=1600 olarak verilmistir. 2'nin kati olacak en yakin sayi 2048 oldugundan bu kapasitede bir CEPH kümesi için her pool'a toplamda verilebilecek pg sayısı en fazla 2048 olmalıdır.&lt;br /&gt;
&lt;br /&gt;
 [global]&lt;br /&gt;
 osd pool default size = 3  # Write an object 3 times.&lt;br /&gt;
 osd pool default min size = 3 # Allow writing two copy in a degraded state.&lt;br /&gt;
&lt;br /&gt;
 osd pool default pg num = 64&lt;br /&gt;
 osd pool default pgp num = 64&lt;br /&gt;
&lt;br /&gt;
Her bir pool için defaultta oluşturulacak pg sayısı 64 olarak yukarıda verilmiştir. Sahip olacagimiz toplam pg sayisi ise hesaba göre 2048'dir. Her bir pool icin bu sayiyi dagitmak dikkat isteyen diger bir istir. Bunun icin https://ceph.com/pgcalc/ sayfasinda bir hesaplama araci verilmistir. Buna gore pool'un gelecek yil buyume orani, kapasitenin ne kadarini kullanabilecegi ve replika sayisi gibi parametreler verilmistir. Yeni bir pool olustururken buna dikkat etmekte fayda var.&lt;br /&gt;
&lt;br /&gt;
 NOT: PG sayisi artirilabilir, ancak asla ilgili poolu yok edip olusturmadan azaltilamaz. Degisiklik isleminin cluster performansi uzerinde buyuk etkisi vardır.&lt;br /&gt;
&lt;br /&gt;
Bunlarin disinda sudo ceph -s komutu ile clusterin durumuna bakildiginda:&lt;br /&gt;
  cluster:&lt;br /&gt;
    id:     b49d69c7-e017-4f9f-b69b-57d3efe7987b&lt;br /&gt;
    health: HEALTH_WARN&lt;br /&gt;
            too few PGs per OSD (2 &amp;lt; min 30)&lt;br /&gt;
&lt;br /&gt;
hatasi gorulmektedir. Bu pg sayisinin OSD bazında oldukca az olmasindan kaynaklidir. '''sudo ceph osd lspools komutu''' ile olusturulmus olan pool'lar listelenebilir. &lt;br /&gt;
1 .rgw.root&lt;br /&gt;
2 default.rgw.control&lt;br /&gt;
3 default.rgw.meta&lt;br /&gt;
4 default.rgw.log&lt;br /&gt;
&lt;br /&gt;
Bunlarin pg sayisi ise asagidaki komutla alinir. &lt;br /&gt;
 sudo ceph osd pool get .rgw.root pg_num&lt;br /&gt;
 pg_num: 8&lt;br /&gt;
 sudo ceph osd pool get .rgw.root pgp_num&lt;br /&gt;
 pgp_num: 8&lt;br /&gt;
&lt;br /&gt;
Her bir pool'da pg ve pgp sayisi 64 olacak sekilde asagidaki sekilde guncellendi.&lt;br /&gt;
 sudo ceph osd pool set .rgw.root pg_num 64 &lt;br /&gt;
 set pool 1 pg_num to 64&lt;br /&gt;
 sudo ceph osd pool set .rgw.root pgp_num 64&lt;br /&gt;
 set pool 1 pgp_num to 64&lt;br /&gt;
&lt;br /&gt;
Son olarak block device icin 1024 pg ve pgp sayisina sahip alan olusturuldu. Default'ta replika sayisi(size) 3 oldugundan dokunulmadi.Ancak degraded durumunda sayi 2'den 3'e artirildi.&lt;br /&gt;
 sudo ceph osd pool create rbd 1024&lt;br /&gt;
 sudo ceph osd pool get rbd pgp_num&lt;br /&gt;
 sudo ceph osd pool set rbd min_size 3&lt;br /&gt;
 set pool 5 min_size to 3&lt;br /&gt;
&lt;br /&gt;
cluster durumu tekrar kontrol edildiginde artik OK olarak guncellendi.&lt;br /&gt;
 sudo ceph -s&lt;br /&gt;
  cluster:&lt;br /&gt;
    id:     b49d69c7-e017-4f9f-b69b-57d3efe7987b&lt;br /&gt;
    health: HEALTH_OK&lt;br /&gt;
 &lt;br /&gt;
  services:&lt;br /&gt;
    mon: 4 daemons, quorum zula209,zula210,zula211,zula212&lt;br /&gt;
    mgr: zula209(active), standbys: zula212&lt;br /&gt;
    osd: 48 osds: 47 up, 47 in&lt;br /&gt;
    rgw: 1 daemon active&lt;br /&gt;
 &lt;br /&gt;
  data:&lt;br /&gt;
    pools:   5 pools, 1280 pgs&lt;br /&gt;
    objects: 219  objects, 1.1 KiB&lt;br /&gt;
    usage:   5.6 TiB used, 342 TiB / 348 TiB avail&lt;br /&gt;
    pgs:     1280 active+clean&lt;br /&gt;
&lt;br /&gt;
Böylece 342TB kapasiteli, 48 osd diske ve 1280 pg sayısına sahip bir CEPH kümesi kuruldu ve kullanıma hazır hale getirildi.&lt;br /&gt;
&lt;br /&gt;
=== Block Image Oluşturma/Silme ve Benchmark testi ===&lt;br /&gt;
Kernel'lar arasi sorunu gidermek icin asagidaki komut calistirilir. Block device image map aderken sorun olmasin diye de --image-feature layering ile imaj olusturulur. &lt;br /&gt;
 ceph osd crush tunables legacy &lt;br /&gt;
&lt;br /&gt;
Yukaridaki komut calistirilmadiginda image olusturulsa bile map isleminde hata veriyor. legacy'ye cekildiginde ceph -s komutu ile bakildiginda asagidaki 2 hatayi veriyor.&lt;br /&gt;
            crush map has straw_calc_version=0&lt;br /&gt;
            application not enabled on 2 pool(s)&lt;br /&gt;
Bunlar rbd map islemi sonrasinda sirasiyla duzeltilecek.  &lt;br /&gt;
&lt;br /&gt;
Sonra pg ve pgp_num 128 olan rbdbench adında bir pool oluşturulur. Bu block device üzerinden bir imaj oluşturularak ext4 dosya sistemi üzerine atanır. Son olarak mount edilerek rbd üzerinden kullanılması sağlanır. benchmark testi icin ssd ve hdd poollari icin ayri ayri image olusturulup benchmark testi yapilabilir.&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool create rbdbench 128 128&lt;br /&gt;
 rbd create image01 --size 1024 --pool rbdbench --image-feature layering&lt;br /&gt;
 sudo rbd map image01 --pool rbdbench --name client.admin&lt;br /&gt;
&lt;br /&gt;
 sudo /sbin/mkfs.ext4 -m0 /dev/rbd/rbdbench/image01&lt;br /&gt;
 sudo mkdir /mnt/ceph-block-device&lt;br /&gt;
 sudo mount /dev/rbd/rbdbench/image01 /mnt/ceph-block-device&lt;br /&gt;
&lt;br /&gt;
islem bittikten sonra once optimal'e cekilir. sonra da her bir pool icin application seviyesinde rbd olacak sekilde izin verilir. Sonra ceph -s komutu ile durumu kontrol edilir. Örnek olarak rbdhdd ve rbdssd adında 2 pool oluşturulmuş ve ayarları aşağıda yapılmıştır.&lt;br /&gt;
 ceph osd crush tunables optimal&lt;br /&gt;
 ceph osd pool application enable rbdhdd rbd&lt;br /&gt;
 ceph osd pool application enable rbdssd rbd&lt;br /&gt;
&lt;br /&gt;
 df -h&lt;br /&gt;
 Filesystem      Size  Used Avail Use% Mounted on&lt;br /&gt;
 /dev/rbd0        99G   60M   99G   1% /mnt/ceph-hdd-block-device&lt;br /&gt;
 /dev/rbd1        99G   60M   99G   1% /mnt/ceph-ssd-block-device&lt;br /&gt;
&lt;br /&gt;
* MIMIC oncesi versiyonlarda asagidaki komut kullanilir.&lt;br /&gt;
 rbd bench-write image01 --pool=rbdbench&lt;br /&gt;
&lt;br /&gt;
 rbd: bench-write is deprecated, use rbd bench --io-type write ...&lt;br /&gt;
 bench  type write io_size 4096 io_threads 16 bytes 1073741824 pattern sequential&lt;br /&gt;
  SEC       OPS   OPS/SEC   BYTES/SEC&lt;br /&gt;
    1     24816  21333.36  87381441.21&lt;br /&gt;
    2     51888  25952.03  106299523.23&lt;br /&gt;
    3     88480  29498.70  120826687.85&lt;br /&gt;
    4    130704  32647.39  133723721.53&lt;br /&gt;
    5    176560  35315.24  144651237.79&lt;br /&gt;
    6    221088  40585.66  166238855.38&lt;br /&gt;
 elapsed:     7  ops:   262144  ops/sec: 37427.80  bytes/sec: 153304276.10&lt;br /&gt;
&lt;br /&gt;
* MIMIC ve sonraki versiyonlarda asagidaki komut kullanilir.&lt;br /&gt;
 rbd -p rbdhdd bench imagehdd --io-type write --io-size 8192 --io-threads 256 --io-total 8G --io-pattern seq&lt;br /&gt;
 rbd -p rbdssd bench imagessd --io-type write --io-size 8192 --io-threads 256 --io-total 8G --io-pattern seq&lt;br /&gt;
&lt;br /&gt;
Tüm bu işlemlerden sonra benchmark için oluşturulmuş block pool ve imajlarını kaldırmak için aşağıdaki komutlar çalıştırılır.&lt;br /&gt;
 umount /mnt/ceph-block-device &lt;br /&gt;
 rm -rf /mnt/ceph-block-device/&lt;br /&gt;
 rbd unmap rbdbench/image01&lt;br /&gt;
 rbd rm rbdbench/image01&lt;br /&gt;
&lt;br /&gt;
 '''koruma mekanizmasini devre disi birakmak icin'''&lt;br /&gt;
 ceph tell mon.* injectargs --mon-allow-pool-delete=true&lt;br /&gt;
 ceph osd pool delete rbdbench rbdbench --yes-i-really-really-mean-it&lt;br /&gt;
 ceph tell mon.* injectargs --mon-allow-pool-delete=false&lt;br /&gt;
&lt;br /&gt;
=== Benchmark Ceph Object ===&lt;br /&gt;
RADOS üzerinden object gw ile benchmark testi yapabilmek için yeni kurulan ortamda öncelikle bir kullanıcı oluşturmak, yetkilendirmek ve bu kullanıcının test yapacağı pool oluşturmaktır. Aşağıda python swift kütüphanesi test işleri için kullanılabilir.&lt;br /&gt;
 apt install python-swift swift-bench&lt;br /&gt;
&lt;br /&gt;
benchmark id sinde kullanıcı oluşturmak için:&lt;br /&gt;
 radosgw-admin user create --uid=&amp;quot;benchmark&amp;quot; --display-name=&amp;quot;benchmark&amp;quot; &lt;br /&gt;
 radosgw-admin subuser create --uid=benchmark --subuser=benchmark:swift --access=full&lt;br /&gt;
 radosgw-admin key create --subuser=benchmark:swift --key-type=swift --secret=guessme&lt;br /&gt;
 radosgw-admin user modify --uid=benchmark --max-buckets=0&lt;br /&gt;
&lt;br /&gt;
Yetkilendirme için swift.conf dosyası örnekte olduğu gibi oluşturulur.&lt;br /&gt;
 [bench]&lt;br /&gt;
 auth = http://192.168.56.209:7480/auth/v1.0&lt;br /&gt;
 user = benchmark:swift&lt;br /&gt;
 key = Passw0rd&lt;br /&gt;
 auth_version = 1.0&lt;br /&gt;
&lt;br /&gt;
Son olarak rados ile benchmark testi 10 saniye boyunca 4M, 16 thread ile islem yapmak için aşağıdaki komut çalıştırılır.&lt;br /&gt;
 swift-bench -c 64 -s 4096 -n 1000 -g 100 swift.conf&lt;br /&gt;
&lt;br /&gt;
=== POOL, OSD KULLANIM ve PERFORMANS metrikleri, KOTA Tanimlama ===&lt;br /&gt;
Son olarak yapilan islemi kontrol etmek icin herbir poolun detaylarina bakmak gerekir. Asagidaki komutla crush rule setleri ile birlikte pg ve pgp sayilari kontrol edilebilir.&lt;br /&gt;
 ceph osd pool ls detail&lt;br /&gt;
 pool 13 'rbdssd' replicated size 3 min_size 3 crush_rule 1 object_hash rjenkins pg_num 128 pgp_num 128 last_change 458 flags hashpspool stripe_width 0&lt;br /&gt;
 pool 14 'rbdhdd' replicated size 3 min_size 3 crush_rule 0 object_hash rjenkins pg_num 128 pgp_num 128 last_change 462 flags hashpspool stripe_width 0&lt;br /&gt;
&lt;br /&gt;
Tum bunlarin disinda &lt;br /&gt;
 ceph df detail &lt;br /&gt;
komutu ile her bir pool'a ait kullanim bilgileri izlenebilir. Buna gore rbdssd icin kullanilabilir maksimum alan 471GB iken rbdhdd icin 111TB alan ayrilmistir. Henuz kullanima baslamadigindan herhangi bir kullanim alani gorunmemektedir. Iligli pool'a maksimum atilabilecek obje sayisi ve tutulabilecek en fazla olan kota olarak tanimlanabilir. Ornegin rbdssd pool'i icin en fazla 100K obje, 256 GiB alan ici asagidaki komutlar sirasiyla calistirilabilir,&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool set-quota rbdssd max_objects 100000&lt;br /&gt;
 ceph osd pool set-quota rbdssd max_bytes 274877906944&lt;br /&gt;
&lt;br /&gt;
 ceph df detail&lt;br /&gt;
 GLOBAL:&lt;br /&gt;
    SIZE        AVAIL       RAW USED     %RAW USED     OBJECTS &lt;br /&gt;
    351 TiB     351 TiB       55 GiB          0.02        221  &lt;br /&gt;
 POOLS:&lt;br /&gt;
    NAME                    ID     QUOTA OBJECTS     QUOTA BYTES     USED        %USED     MAX AVAIL     OBJECTS     DIRTY     READ       WRITE      RAW USED &lt;br /&gt;
    .rgw.root               9      N/A               N/A             1.1 KiB         0       111 TiB           4        4        27 B        4 B      3.4 KiB &lt;br /&gt;
    default.rgw.control     10     N/A               N/A                 0 B         0       111 TiB           8        8         0 B        0 B          0 B &lt;br /&gt;
    default.rgw.meta        11     N/A               N/A               362 B         0       111 TiB           2        2         0 B        3 B      1.1 KiB &lt;br /&gt;
    default.rgw.log         12     N/A               N/A                 0 B         0       111 TiB         207      207      45 KiB     30 KiB          0 B &lt;br /&gt;
    rbdssd                  13     100 k             256 GiB             0 B         0       471 GiB           0        0         0 B        0 B          0 B &lt;br /&gt;
    rbdhdd                  14     N/A               N/A                 0 B         0       111 TiB           0        0         0 B        0 B          0 B &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ceph osd df komutu ile de benzer sekilde osd'lere ait kullanimlar listelenebilir. Her bir pool ve osd icin kullanim oranlarinin gosterilmesi yaninda performans metrikleri de incelenebilir. &lt;br /&gt;
 rados df &lt;br /&gt;
komutu her bir pool icin disk iops ve throughput islemini verecektir. watch komutu ile birlikte gercek zamanli cluster'in durumu izlenebilir.&lt;br /&gt;
&lt;br /&gt;
'''ceph pg dump''' komutu da ceph clusterin durumunu izlemek icin kullanisli bir komuttur.&lt;br /&gt;
&lt;br /&gt;
Her bir pool'a ait pg sayisi artirilabilir ancak azaltilamaz. O yuzden pg sayisini belirlerken bu noktaya dikkat etmek gerekir. Onceki ornekte olusturulan rbdssd ve rbhdd icin pg sayilarini 128'den 256'ya cikarmak icin asagidaki komutlar kullanilir. Boylece osd basina en az olmasi gereken pg sayisi 30'un uzerine cikarilmis oldu.&lt;br /&gt;
 ceph osd pool set rbdhdd pg_num 256&lt;br /&gt;
 ceph osd pool set rbdhdd pgp_num 256&lt;br /&gt;
 ceph osd pool set rbdssd pg_num 256&lt;br /&gt;
 ceph osd pool set rbdssd pgp_num 256&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=FILESTORE_KURULUMU&amp;diff=210</id>
		<title>FILESTORE KURULUMU</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=FILESTORE_KURULUMU&amp;diff=210"/>
				<updated>2018-09-20T12:03:46Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Test Sistemi Donanım Bilgileri ==&lt;br /&gt;
6 Adet Dell R815 Sunucu, 5 Adedi data düğümü bir adedi monitör olarak kullanıldı. Data sunucularının özellikleri:&lt;br /&gt;
* 4 x AMD Opteron(tm) Processor 6174 İşlemci&lt;br /&gt;
* 128GByte Bellek&lt;br /&gt;
* 5x500GByte 7200RPM SAS Disk, 1 Adet 240G SSD Disk&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ubuntu# lshw -short -C disk&lt;br /&gt;
 H/W path Device Class Description&lt;br /&gt;
 ============================================================&lt;br /&gt;
 /0/100/4/0/0/0/2.0.0 /dev/sda disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.1.0 /dev/sdb disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.2.0 /dev/sdc disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.3.0 /dev/sdd disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.4.0 /dev/sde disk 239GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.5.0 /dev/sdf disk 499GB PERC H700&lt;br /&gt;
&lt;br /&gt;
* 4 Adet 1Gbps Ethernet kartı&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ubuntu# lshw -short -C network&lt;br /&gt;
 H/W path Device Class Description&lt;br /&gt;
 ============================================================&lt;br /&gt;
 /0/100/2/0 em1 network NetXtreme II BCM5709 Gigabit Ethernet&lt;br /&gt;
 /0/100/2/0.1 em2 network NetXtreme II BCM5709 Gigabit Ethernet &lt;br /&gt;
 /0/100/3/0 em3 network NetXtreme II BCM5709 Gigabit Ethernet&lt;br /&gt;
 /0/100/3/0.1 em4 network NetXtreme II BCM5709 Gigabit Ethernet&lt;br /&gt;
&lt;br /&gt;
Sunucu bağlantıları için ilk olarak  1Gbps arayüz ile Juniper EX4300 Anaharalama cihaz ile yapıldı. Daha sonra Intel 82599 chiptetli 10Gbps ethernet kartları takılarak Cluster ağı 10Gbps olarak bağlandı.&lt;br /&gt;
&lt;br /&gt;
== Test Sistemi Bağlantı Şeması ==&lt;br /&gt;
[[Dosya:Network_conf.png|büyükresim]]&lt;br /&gt;
&lt;br /&gt;
== İşletim Sistemi Yapılandırması ==&lt;br /&gt;
=== İşletim Sistemi Sürümü ===&lt;br /&gt;
İşletim sistemi olarak ubuntu MAAS aracılığı ile ubuntu-14.04 kuruldu. Ubuntu 14.04 ile gelen  3.13.0-48 çekirdeği 3.15 ve üzeri çekirdekler ile gelen xfs dosya sistemindeki değişikleri (boş olan inode’latın takibi için btree desteği) içermediğinden işletim sistemi çekirdeği&lt;br /&gt;
&lt;br /&gt;
 apt-get -y install linux-image-generic-lts-utopic&lt;br /&gt;
&lt;br /&gt;
komutu ile 3.16.0-33 olarak güncellendi.&lt;br /&gt;
&lt;br /&gt;
=== /etc/hosts Dosyasının Düzenlenmesi ===&lt;br /&gt;
Sunucuların birbirinden haberdar olması için /etc/hosts dosyasına sunucu bilgileri eklendi.&lt;br /&gt;
&lt;br /&gt;
 172.16.3.3 ceph1&lt;br /&gt;
 172.16.3.10 ceph2&lt;br /&gt;
 172.16.3.11 ceph3&lt;br /&gt;
 172.16.3.12 ceph4&lt;br /&gt;
 172.16.3.13 ceph5&lt;br /&gt;
 172.16.3.14 cephm&lt;br /&gt;
&lt;br /&gt;
=== NTP ile Saat Senkronizasyonu ===&lt;br /&gt;
Sunucuların saatlerinin senkronize edilmesi için sisteme ntp sunucu kurup gerekli yapılandırma gerçekleştirildi.&lt;br /&gt;
&lt;br /&gt;
=== /etc/security/limits.conf Dosyası Dosya Açma Limitlerinin Arttırılması ===&lt;br /&gt;
Kullanıcıların açabileceği maksimum dosya tanımlayıcısı (file descriptor) sayısını /etc/security/limits.conf dosyasına aşağıdaki satırları ekleyerek arttırıyoruz.&lt;br /&gt;
&lt;br /&gt;
 soft nofile 65000&lt;br /&gt;
 hard nofile 65000&lt;br /&gt;
&lt;br /&gt;
=== SSD Diskler İçin I/0   Scheduler ve Rotation Değerlerinin Değiştirilmesi ===&lt;br /&gt;
SSD disklerin scheduler’i atanmış değerinden SSD diskler için daha uygun olan noop’a değiştirmek için: (SSD disk sde)&lt;br /&gt;
&lt;br /&gt;
 echo noop &amp;gt;  /sys/block/sde/queue/scheduler&lt;br /&gt;
&lt;br /&gt;
yazmak yeterli. SSD diskler klasik diskler gibi dönen hareketli parçalardan oluşmadığı için SSD diskleri kullanan işletim sistemlerinin I/O operasyonlarını bu durumu göz önüne alarak gerçekleştirmeleri gerekiyor. Bu nedenle SSD disklerin rotation değeri 0 olmalı. Mevcut durumu görmek için:&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ceph# cat /sys/block/sde/queue/rotational&lt;br /&gt;
 1&lt;br /&gt;
&lt;br /&gt;
komutunu kullandığımızda değerin 1 olduğunu görüyoruz. Normalde işletim sisteminin diskin SSD olduğunu anlayıp bu değer 0 yapmasını bekliyoruz. Manüel olarak 0 yapmak için:&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;1&amp;quot; &amp;gt; /sys/block/sde/queue/rotational&lt;br /&gt;
&lt;br /&gt;
=== Disk read_ahead değerinin Arttırılması ===&lt;br /&gt;
Disklerin atanmış değerleri olan 128, 2048 olarak değiştirildi. Mevcut değeri görmek için:&lt;br /&gt;
 root@ceph1:/home/ceph# cat /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 128&lt;br /&gt;
&lt;br /&gt;
Yeni değerin atanması:&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ceph# echo 2084 &amp;gt; /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 root@ceph1:/home/ceph# cat /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 2084&lt;br /&gt;
&lt;br /&gt;
OSD diskleri için  değerleri açılışta geçerli kılmak için aşağıdaki satırları /etc/rc.local dosyasına ekleyebilirsiniz.&lt;br /&gt;
&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdb/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdc/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdd/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdf/queue/read_ahead_kb&lt;br /&gt;
&lt;br /&gt;
read_ahead_kb değerinin arttırılması sıralı okuma (sequential read) performansınızı arttıracaktır. I/O örüntünüze göre bu değeri daha arttırarak performans kazanımı sağlayabilirsiniz. Bu değerin arttırılması hafıza kullanımının artmasına neden olacağı için  bellek kullanımı üzerinde bir baskı oluşturabilir.&lt;br /&gt;
&lt;br /&gt;
yazmak yeterli.  Açılışta geçerli olması için echo ile başlayan komutları satırı /etc/rc.local’a ekleyebilirsiniz.&lt;br /&gt;
&lt;br /&gt;
=== Apparmor Yazılımının Kapatılması===&lt;br /&gt;
 invoke-rc.d apparmor kill&lt;br /&gt;
 update-rc.d -f apparmor remove&lt;br /&gt;
&lt;br /&gt;
== XFS Dosya Sistemi Yapılandırması ==&lt;br /&gt;
=== Ceph XFS Dosya Sistemi Yapılandırması ===&lt;br /&gt;
Ceph’te ext4,btrfs ve xfs dosya sistemi olarak kullanılabiliyor. Btrfs’in henüz production için kullanımı önerilmiyor. Ceph belgelerinde production sistemler için xfs kullanımı önerildiği için kurulumu xfs üzerinden gerçekleştiriyoruz.&lt;br /&gt;
Dosya sisteminin ne olacağı, mkfs ve mount opsiyonları ceph.conf dosyasında tanımlanıyor.&lt;br /&gt;
&lt;br /&gt;
===Dosya Sistemi Yaratılması ===&lt;br /&gt;
Disklerin dosya sistemini yaratırken mkfs.xfs programında   ilk olarak size=2048 argümanını kullanıyoruz. Bunun nedeni ceph tarafından kullanılan Extended Attributes (XATTRs)  daha fazla alan açmak. Size argümanı inode büyüklüğü tanımlamak için kullanılıyor. Atanmış değeri (default) 256 ki buda 256Byte’a karşılık geliyor. 512 Byte inode kullanımında ortalama 350 Byte’lık bir  alan xattr kullanımına kalıyor. Bu değeri 2048 yaptığımızda yaklaşık1900 Byte alanı xattr için ayırmış oluyoruz.&lt;br /&gt;
&lt;br /&gt;
mkfs.xfs programına argüman olarak kullandığımız opsiyonlardan bir diğeri finobt=1. Bu argüman xfs’in boş inode’ların takibini btree algoritması ile yapılmasını sağlıyor. Bu özelliği kullanmak için çekirdek sürümünüzün 3.15  xfsprogs sürümünüzün 3.2 ve üzeri olması gerekiyor.&lt;br /&gt;
&lt;br /&gt;
Ubuntu 14.04 ile xfsprogs sürümü 3.1.9 olarak geliyor. xfsprogs 3.2 ve üzerinde gelen finobt argümanının kullanabilmek için  xfsprogs paketini aşağıdaki komutları kullanarak güncelliyoruz.&lt;br /&gt;
&lt;br /&gt;
 wget -c http://mirrors.kernel.org/ubuntu/pool/main/x/xfsprogs/xfsprogs_3.2.1ubuntu1_amd64.deb&lt;br /&gt;
 dpkg -i xfsprogs_3.2.1ubuntu1_amd64.deb&lt;br /&gt;
&lt;br /&gt;
mkfs.xfs programında kullandığımız üçüncü argüman crc=1. Bu argüman xfs’in metadatadaki bozulmaları karcı CRC32 algoritmasını kullanarak denetlemesini sağlıyor. Hepsi bir arada komut sdb diski için dosya sistemi yaratmak istersek:&lt;br /&gt;
&lt;br /&gt;
 mkfs.xfs -m crc=1,finobt=1 -f -i size=2048 /dev/sdb&lt;br /&gt;
halini alıyor.&lt;br /&gt;
&lt;br /&gt;
=== Dosya Sistemi Mount Opsiyonları ===&lt;br /&gt;
Örnek olarak verdiğimizi sdb diskinin fstab’a eklemek için:&lt;br /&gt;
&lt;br /&gt;
 /dev/sdb /disk1 xfs rw,noatime,inode64,logbsize=256k,delaylog 0 1&lt;br /&gt;
&lt;br /&gt;
Kullandığımız mount opsiyonları açıklamaları:&lt;br /&gt;
noatime: Dosya sisteminin en son erişim zamanı bilgisini tutmaması için&lt;br /&gt;
inode64: 1TByte üzeri disklerde kullanılması önerilen ve inode’ların 64 bit olarak tanımlanması&lt;br /&gt;
logbsize=256k : Çok fazla okuma yazma yapan dosya sistemleri için artırılması öneriliyor. Atanmış değeri 32k&lt;br /&gt;
delaylog: Metadata bilgisinin bellekte mümkün olduğunca tutulup yapılan I/O miktarını azaltan bir opsiyon.&lt;br /&gt;
Ceph’te  dosya sistemini yaratılırken hangi opsiyonların kullanılacağını ceph.conf’ta [osd] başlığı altında tanımlıyoruz. Elle mkfs yapmanıza yada mount etmenize gerek yok.&lt;br /&gt;
&lt;br /&gt;
 [osd]&lt;br /&gt;
 osd mkfs type = xfs&lt;br /&gt;
 osd mkfs options xfs = -m crc=1,finobt=1 -f -i size=2048&lt;br /&gt;
 osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog&lt;br /&gt;
&lt;br /&gt;
== Ceph  Yazılımı Kurulumu ==&lt;br /&gt;
İlk olarak tüm sunucularda ceph kullanıcısını açıyoruz.&lt;br /&gt;
&lt;br /&gt;
 root# useradd -d /home/ceph -m ceph&lt;br /&gt;
 root# apt-get install sudo&lt;br /&gt;
 root# echo &amp;quot;ceph ALL = (root) NOPASSWD:ALL&amp;quot; | sudo tee /etc/sudoers.d/ceph&lt;br /&gt;
 root# chmod 0440 /etc/sudoers.d/ceph&lt;br /&gt;
&lt;br /&gt;
Ceph monitor sunucusunda (cephm) ssh anahtarlarını yaratıyoruz:&lt;br /&gt;
&lt;br /&gt;
 ceph@cephm: ssh-keygen -t dsa&lt;br /&gt;
&lt;br /&gt;
Yarattığımız ssh anahtarlarını ceph depolama sunucularına (ceph1,ceph2,ceph3,ceph4,ceph5) kopyalıyoruz:&lt;br /&gt;
&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph1&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph2&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph3&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph4&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph5&lt;br /&gt;
&lt;br /&gt;
Tüm sunucularda Ceph reposunu ekleyip ceph’i kuruyoruz:&lt;br /&gt;
&lt;br /&gt;
 root# wget -q -O- 'https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc' | sudo apt-key add -&lt;br /&gt;
 root# echo deb http://ceph.com/debian-giant/trusty main | sudo tee /etc/apt/sources.list.d/ceph.list&lt;br /&gt;
 root# apt-get update&lt;br /&gt;
 root# apt-get install ceph-deploy&lt;br /&gt;
&lt;br /&gt;
Cephm sunucusunda ceph kullanıcısı ile aşağıdaki komutları çalıştırıyoruz. İlk olarak config isimli bir dizin yaratıp yaptığımız yapılandırmalarının bu dizin altında yer almasını sağlayalım.&lt;br /&gt;
&lt;br /&gt;
 mkdir config&lt;br /&gt;
 cd config&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy ile ilk sunucumuz olan monitor sunucusunu tanımlayalım.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy new cephm&lt;br /&gt;
&lt;br /&gt;
Bu komuttan sonra bulunduğunuz dizinin içinde ceph.mon.keyring dosyası ile ceph.conf dosyasının oluşmuş olması gerekiyor. ceph.conf dosyasına [global] tanımı altına aşağıdaki satırları ekliyoruz:&lt;br /&gt;
&lt;br /&gt;
 #20 disk x 100 / 3 replica = 666&lt;br /&gt;
 osd pool default pg num = 666&lt;br /&gt;
 osd pool default pgp num = 666&lt;br /&gt;
 osd pool default size = 3&lt;br /&gt;
 public network = 172.16.3.0/16&lt;br /&gt;
 cluster network = 10.10.10.0/24&lt;br /&gt;
&lt;br /&gt;
[osd] kısmı altında xfs dosya sistemi yaratılırken ve mount edilirken geçerli olacak argümanları tanımlıyoruz.&lt;br /&gt;
&lt;br /&gt;
 osd mkfs type = xfs&lt;br /&gt;
 osd mkfs options xfs = -m crc=1,finobt=1 -f -i size=2048&lt;br /&gt;
 osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog&lt;br /&gt;
&lt;br /&gt;
ceph.conf dosyamızın son hali aşağıdaki şekilde:&lt;br /&gt;
&lt;br /&gt;
 [global]&lt;br /&gt;
 fsid = 12bee812-a843-4103-9321-febe8c5108e6&lt;br /&gt;
 mon_initial_members = cephm&lt;br /&gt;
 mon_host = 172.16.3.14&lt;br /&gt;
 auth_cluster_required = cephx&lt;br /&gt;
 auth_service_required = cephx&lt;br /&gt;
 auth_client_required = cephx&lt;br /&gt;
 filestore_xattr_use_omap = true&lt;br /&gt;
 #20 disk x 100 / 3 replica = 666&lt;br /&gt;
 osd pool default pg num = 666&lt;br /&gt;
 osd pool default pgp num = 666&lt;br /&gt;
 osd pool default size = 3&lt;br /&gt;
 public network = 172.16.3.0/16&lt;br /&gt;
 cluster network = 10.10.10.0/24&lt;br /&gt;
 [osd]&lt;br /&gt;
 osd mkfs type = xfs&lt;br /&gt;
 osd mkfs options xfs = -m crc=1,finobt=1 -f -i size=2048&lt;br /&gt;
 osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog&lt;br /&gt;
&lt;br /&gt;
Bu aşamdan sonra ceph-deploy ile sunucuların kurulumlarını ve monitör sunucusu tanımlarını yapıyoruz:&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy install cephm ceph1 ceph2 ceph3 ceph4 ceph5&lt;br /&gt;
 ceph-deploy mon create-initial&lt;br /&gt;
&lt;br /&gt;
Bundan sonraki aşamada sunucular üzerinde osd için kullanacağımız diskleri hazırlıyoruz. Zap kumutu disklerde bulunan partition vs bilgisini siliyor. osd prepare’ ile disklerin ceph için hazırlanma işlemleri gerçekleştiriliyor. /dev/sde diski journal için kullanılacak olan SSD diski. Bu nedenle osd prepare komutunda hazırlancak diskten sonra araya : koyararak ekliyoruz.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph1:sdb ceph1:sdc ceph1:sdd ceph1:sde ceph1:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph2:sdb ceph2:sdc ceph2:sdd ceph2:sde ceph2:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph3:sdb ceph3:sdc ceph3:sdd ceph3:sde ceph3:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph4:sdb ceph4:sdc ceph4:sdd ceph4:sde ceph4:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph5:sdb ceph5:sdc ceph5:sdd ceph5:sde ceph5:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
Son olarak admin nodu’u tanımı:&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy admin cephm ceph1 ceph2 ceph3 ceph4 ceph5&lt;br /&gt;
 sudo chmod +r /etc/ceph/ceph.client.admin.keyring&lt;br /&gt;
&lt;br /&gt;
Her şey yolunda giderse:&lt;br /&gt;
&lt;br /&gt;
 ceph health&lt;br /&gt;
&lt;br /&gt;
komutun çıktısı aşağıdaki şekilde olmalı:&lt;br /&gt;
HEALTH_OK&lt;br /&gt;
&lt;br /&gt;
Aşağıdaki hatayı almanız pgs sayısını arttırmanız gerektiği anlamına geliyor:&lt;br /&gt;
&lt;br /&gt;
 HEALTH_WARN too few pgs per osd (3 &amp;lt; min 20)&lt;br /&gt;
&lt;br /&gt;
Sayıyı arttırmak için aşağıdaki komutu kullanabilirsiniz.&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool set rbd pgp_num 666&lt;br /&gt;
 ceph osd pool set rbd pg_num 666&lt;br /&gt;
&lt;br /&gt;
== Ceph Calamari GUI Kurulumu ==&lt;br /&gt;
Calamari  Intank tarafınfan ceph’in izlenmesi için  geliştirilen bir gui uygulaması. Orjinal kurulum belgesi oldukça karışık, İnternette arama yaparken bulduğum  belge üzerinde Ubuntu 14.04 üzerinden calamari kurulumu gerçekleştirdim. Yazıldığı şekilde çalışmadığı için bir kaç ekleme yapmak gerekti.  Kurulum için ilk olarak gerekli olan deb paketlerini hazırlamanız gerekiyor. &lt;br /&gt;
&lt;br /&gt;
=== Calamari Kurulum için Gerekli Paketler ===&lt;br /&gt;
echo &amp;quot;deb http://ppa.launchpad.net/saltstack/salt/ubuntu trusty main&amp;quot;&lt;br /&gt;
 &amp;gt; /etc/apt/sources.list.d/saltstack.list&lt;br /&gt;
&lt;br /&gt;
wget -q -O- &amp;quot;http://keyserver.ubuntu.com:11371/pks/lookup?op=get&amp;amp;&lt;br /&gt;
search=0x4759FA960E27C0A6&amp;quot; | sudo apt-key add -&lt;br /&gt;
&lt;br /&gt;
apt-get update&lt;br /&gt;
apt-get install salt-master salt-minion salt-syndic&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main&amp;quot; &lt;br /&gt;
&amp;gt;  /etc/apt/sources.list.d/pgdg.list&lt;br /&gt;
&lt;br /&gt;
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc&lt;br /&gt;
 | sudo apt-key add -&lt;br /&gt;
&lt;br /&gt;
apt-get update &amp;amp;&amp;amp; sudo apt-get upgrade&lt;br /&gt;
apt-get install -y curl build-essential openssl libssl-dev apache2 &lt;br /&gt;
libapache2-mod-wsgi libcairo2 supervisor python-cairo libpq5 &lt;br /&gt;
postgresql python-m2crypto python-virtualenv git python-dev swig&lt;br /&gt;
libzmq-dev g++ postgresql-9.1 postgresql-server-dev-9.1 libcairo2-dev&lt;br /&gt;
python-pip libpq-dev ruby debhelper python-mock python-configobj &lt;br /&gt;
cdbs gem ruby1.9.1 ruby1.9.1-dev make devscripts &lt;br /&gt;
software-properties-common python-support&lt;br /&gt;
&lt;br /&gt;
cd ~&lt;br /&gt;
git clone https://github.com/joyent/node.git&lt;br /&gt;
cd node&lt;br /&gt;
git checkout v0.10.10&lt;br /&gt;
./configure&lt;br /&gt;
make -j4&lt;br /&gt;
make install&lt;br /&gt;
&lt;br /&gt;
mkdir ~/npm&lt;br /&gt;
cd ~/npm&lt;br /&gt;
wget --no-check-certificate https://npmjs.org/install.sh&lt;br /&gt;
sh install.sh&lt;br /&gt;
&lt;br /&gt;
npm install -g bower&lt;br /&gt;
npm install -g coffee-script&lt;br /&gt;
npm install -g grunt-cli&lt;br /&gt;
npm install -g grunt-legacy-util&lt;br /&gt;
npm install -g grunt-legacy-log&lt;br /&gt;
npm install -g dateformat&lt;br /&gt;
npm install -g eventemitter2&lt;br /&gt;
npm install -g glob&lt;br /&gt;
npm install -g minimatch&lt;br /&gt;
npm install -g findup-sync&lt;br /&gt;
npm install -g js-yaml&lt;br /&gt;
npm install -g rimraf&lt;br /&gt;
npm install -g iconv-lite&lt;br /&gt;
npm install -g nopt&lt;br /&gt;
npm install -g grunt-lib-contrib&lt;br /&gt;
npm install -g uglify-js&lt;br /&gt;
npm install -g filesize&lt;br /&gt;
npm install -g optipng-bin&lt;br /&gt;
npm install -g jpegtran-bin&lt;br /&gt;
gem install compass&lt;br /&gt;
gem install sass&lt;br /&gt;
&lt;br /&gt;
=== Calamari Server Kurulumu Paketi Hazırlanması ===&lt;br /&gt;
&lt;br /&gt;
cd ~&lt;br /&gt;
git clone https://github.com/ceph/calamari.git&lt;br /&gt;
cd calimari&lt;br /&gt;
cd debian&lt;br /&gt;
mv source source.old&lt;br /&gt;
cd ..&lt;br /&gt;
dpkg-buildpackage&lt;br /&gt;
&lt;br /&gt;
Bu işlemlerden sonra bir alt dizinde aşağıdaki dosyalar oluşacak:&lt;br /&gt;
&lt;br /&gt;
calamari-server_1.0.0-1_amd64.deb calamari_1.0.0-1.tar.gz&lt;br /&gt;
&lt;br /&gt;
=== Diamond Kurulumu Paketi Hazırlanması ===&lt;br /&gt;
git clone https://github.com/ceph/Diamond.git&lt;br /&gt;
cd Diamond&lt;br /&gt;
git checkout calamari&lt;br /&gt;
dpkg-buildpackage&lt;br /&gt;
cd ..&lt;br /&gt;
ls diam*&lt;br /&gt;
diamond_3.1.0_all.deb diamond_3.1.0_amd64.changes diamond_3.1.0.dsc &lt;br /&gt;
diamond_3.1.0.tar.gz&lt;br /&gt;
&lt;br /&gt;
Tüm işlemler bitinde yaratılan tüm dosyaları bir dizin altına toplayın. Buraya kadar olan  derleme kısmı sonunda elinizde bulunması gereken dosyalar:&lt;br /&gt;
&lt;br /&gt;
ceph@cephm:~/CEPH$ ls -al&lt;br /&gt;
total 40176&lt;br /&gt;
drwxrwxr-x  2 ceph ceph     4096 Apr  3 07:06 .&lt;br /&gt;
drwxr-xr-x 15 ceph ceph     4096 Apr  6 09:20 ..&lt;br /&gt;
-rwxr-xr-x  1 root root 23263443 Apr  2 09:14 calamari_1.0.0-1.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root   319104 Apr  2 14:45 calamari-admin.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root   563767 Apr  2 14:45 calamari-dashboard.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root   338871 Apr  2 14:45 calamari-login.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root   491400 Apr  2 14:45 calamari-manage.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root 11027912 Apr  2 09:21 calamari-server_1.0.0-1_amd64.deb&lt;br /&gt;
-rwxr-xr-x  1 ceph ceph   231674 Apr  2 14:46 diamond_3.1.0_all.deb&lt;br /&gt;
-rwxr-xr-x  1 ceph ceph     1123 Apr  2 14:46 diamond_3.1.0_amd64.changes&lt;br /&gt;
-rwxr-xr-x  1 ceph ceph      711 Apr  2 14:46 diamond_3.1.0.dsc&lt;br /&gt;
-rwxr-xr-x  1 ceph ceph  4874357 Apr  2 14:46 diamond_3.1.0.tar.gz&lt;br /&gt;
&lt;br /&gt;
=== CALAMARİ Sunucusu Kurulumu ===&lt;br /&gt;
Kurulumu cephm sunucusunda yapım. Kurulum için gerekli olan dosyaları /home/ceph/CEPH dizini altında.&lt;br /&gt;
&lt;br /&gt;
mkdir -p /opt/calamari/webapp/content&lt;br /&gt;
cd /opt/calamari/webapp/content/&lt;br /&gt;
mkdir dashboard&lt;br /&gt;
cd dashboard/&lt;br /&gt;
tar -xzvf /home/ceph/CEPH/calamari-dashboard.tar.gz&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir login&lt;br /&gt;
mkdir manage&lt;br /&gt;
mkdir admin&lt;br /&gt;
cd login&lt;br /&gt;
tar -xzvf /home/ceph/CEPH/calamari-login.tar.gz&lt;br /&gt;
cd ..&lt;br /&gt;
cd manage&lt;br /&gt;
tar -xzvf /home/ceph/CEPH/calamari-manage.tar.gz&lt;br /&gt;
cd ..&lt;br /&gt;
cd admin&lt;br /&gt;
tar -xzvf /home/ceph/CEPH/calamari-admin.tar.gz&lt;br /&gt;
cd ..&lt;br /&gt;
cd /home/ceph/CEPH&lt;br /&gt;
&lt;br /&gt;
aptitute install python-twisted python-txamqp python-greenlet &lt;br /&gt;
python-sqlalchemy python-gevent&lt;br /&gt;
&lt;br /&gt;
dpkg -i ./calamari-server_1.0.0-1_amd64.deb&lt;br /&gt;
&lt;br /&gt;
En son komutun çıktısı:&lt;br /&gt;
&lt;br /&gt;
root@cephm:/home/ceph/CEPH# dpkg -i ./calamari-server_1.0.0-1_amd64.deb&lt;br /&gt;
(Reading database ... 100135 files and directories currently installed.)&lt;br /&gt;
Preparing to unpack .../calamari-server_1.0.0-1_amd64.deb ...&lt;br /&gt;
Unpacking calamari-server (1.0.0-1) over (1.0.0-1) ...&lt;br /&gt;
Setting up calamari-server (1.0.0-1) ...&lt;br /&gt;
ERROR: Module version does not exist!&lt;br /&gt;
salt-master stop/waiting&lt;br /&gt;
salt-master: no process found&lt;br /&gt;
salt-master start/running, process 52801&lt;br /&gt;
Stopping supervisor: supervisord.&lt;br /&gt;
Starting supervisor: supervisord.&lt;br /&gt;
* Stopping web server apache2 *&lt;br /&gt;
* Starting web server apache2 *&lt;br /&gt;
Thank you for installing Calamari.&lt;br /&gt;
&lt;br /&gt;
Please run 'sudo calamari-ctl initialize' to complete the installation.&lt;br /&gt;
&lt;br /&gt;
Diamond paketini de kuruyoruz:&lt;br /&gt;
&lt;br /&gt;
dpkg -i ./diamond_3.1.0_all.deb&lt;br /&gt;
&lt;br /&gt;
Salt Minion paketini kurup gerekli ayarları yapıyoruz:&lt;br /&gt;
&lt;br /&gt;
apt-get install salt-minion&lt;br /&gt;
&lt;br /&gt;
/etc/salt/minion dosyasında master ile başlayan tanıma sunucu kurulumunun yaptığımız sunucunun ismini yazıyoruz:&lt;br /&gt;
&lt;br /&gt;
master: cephm&lt;br /&gt;
&lt;br /&gt;
diamond ve salt-minion servislerini restart ediyoruz.&lt;br /&gt;
&lt;br /&gt;
service diamond restart&lt;br /&gt;
service salt-minion restart&lt;br /&gt;
&lt;br /&gt;
En son olarak sunucu tarafından calamari programının başlatılması için gerekli komutu yazıyoruz. Bu aşamada size web arayüzü için kullanıcı adı ve parola soracak.&lt;br /&gt;
&lt;br /&gt;
calamari-ctl initialize&lt;br /&gt;
&lt;br /&gt;
=== CALAMARİ İstemcileri  Kurulumu ===&lt;br /&gt;
ceph1,ceph2,ceph3,ceph4,ceph5 sunucularına istemci kurulumlarını yapıyoruz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
aptitude install python-support&lt;br /&gt;
dpkg -i ./diamond_3.1.0_all.deb&lt;br /&gt;
cd /etc/diamond/&lt;br /&gt;
cp diamond.conf.example diamond.conf&lt;br /&gt;
apt-get -y install salt-minion&lt;br /&gt;
&lt;br /&gt;
/etc/salt/minion dosyasında master ile başlayan tanıma sunucu kurulumunun yaptığımız sunucunun ismini yazıyoruz.&lt;br /&gt;
&lt;br /&gt;
master: cephm&lt;br /&gt;
&lt;br /&gt;
diamond ve salt-minion servislerini restart ediyoruz.&lt;br /&gt;
&lt;br /&gt;
service diamond restart&lt;br /&gt;
service salt-minion restart&lt;br /&gt;
&lt;br /&gt;
İstemcilerde salt-minion’u restart ettikten 30sn-1dk içinde sunucu web arayüzünde istemci adı ile birlikte calamari için register edilmeye hazır olarak gözüküyorlar. Ekran görüntüsünü aşağıda:&lt;br /&gt;
[[Dosya:Calamari_installation.png|büyükresim]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Dosya:Calamari_installation.png&amp;diff=209</id>
		<title>Dosya:Calamari installation.png</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Dosya:Calamari_installation.png&amp;diff=209"/>
				<updated>2018-09-20T11:59:55Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Dosya:Network_conf.png&amp;diff=208</id>
		<title>Dosya:Network conf.png</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Dosya:Network_conf.png&amp;diff=208"/>
				<updated>2018-09-20T11:59:45Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=FILESTORE_KURULUMU&amp;diff=207</id>
		<title>FILESTORE KURULUMU</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=FILESTORE_KURULUMU&amp;diff=207"/>
				<updated>2018-09-20T11:58:38Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Test Sistemi Donanım Bilgileri ==&lt;br /&gt;
6 Adet Dell R815 Sunucu, 5 Adedi data düğümü bir adedi monitör olarak kullanıldı. Data sunucularının özellikleri:&lt;br /&gt;
* 4 x AMD Opteron(tm) Processor 6174 İşlemci&lt;br /&gt;
* 128GByte Bellek&lt;br /&gt;
* 5x500GByte 7200RPM SAS Disk, 1 Adet 240G SSD Disk&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ubuntu# lshw -short -C disk&lt;br /&gt;
 H/W path Device Class Description&lt;br /&gt;
 ============================================================&lt;br /&gt;
 /0/100/4/0/0/0/2.0.0 /dev/sda disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.1.0 /dev/sdb disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.2.0 /dev/sdc disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.3.0 /dev/sdd disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.4.0 /dev/sde disk 239GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.5.0 /dev/sdf disk 499GB PERC H700&lt;br /&gt;
&lt;br /&gt;
* 4 Adet 1Gbps Ethernet kartı&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ubuntu# lshw -short -C network&lt;br /&gt;
 H/W path Device Class Description&lt;br /&gt;
 ============================================================&lt;br /&gt;
 /0/100/2/0 em1 network NetXtreme II BCM5709 Gigabit Ethernet&lt;br /&gt;
 /0/100/2/0.1 em2 network NetXtreme II BCM5709 Gigabit Ethernet &lt;br /&gt;
 /0/100/3/0 em3 network NetXtreme II BCM5709 Gigabit Ethernet&lt;br /&gt;
 /0/100/3/0.1 em4 network NetXtreme II BCM5709 Gigabit Ethernet&lt;br /&gt;
&lt;br /&gt;
Sunucu bağlantıları için ilk olarak  1Gbps arayüz ile Juniper EX4300 Anaharalama cihaz ile yapıldı. Daha sonra Intel 82599 chiptetli 10Gbps ethernet kartları takılarak Cluster ağı 10Gbps olarak bağlandı.&lt;br /&gt;
&lt;br /&gt;
== Test Sistemi Bağlantı Şeması ==&lt;br /&gt;
IMAGE&lt;br /&gt;
&lt;br /&gt;
== İşletim Sistemi Yapılandırması ==&lt;br /&gt;
=== İşletim Sistemi Sürümü ===&lt;br /&gt;
İşletim sistemi olarak ubuntu MAAS aracılığı ile ubuntu-14.04 kuruldu. Ubuntu 14.04 ile gelen  3.13.0-48 çekirdeği 3.15 ve üzeri çekirdekler ile gelen xfs dosya sistemindeki değişikleri (boş olan inode’latın takibi için btree desteği) içermediğinden işletim sistemi çekirdeği&lt;br /&gt;
&lt;br /&gt;
 apt-get -y install linux-image-generic-lts-utopic&lt;br /&gt;
&lt;br /&gt;
komutu ile 3.16.0-33 olarak güncellendi.&lt;br /&gt;
&lt;br /&gt;
=== /etc/hosts Dosyasının Düzenlenmesi ===&lt;br /&gt;
Sunucuların birbirinden haberdar olması için /etc/hosts dosyasına sunucu bilgileri eklendi.&lt;br /&gt;
&lt;br /&gt;
 172.16.3.3 ceph1&lt;br /&gt;
 172.16.3.10 ceph2&lt;br /&gt;
 172.16.3.11 ceph3&lt;br /&gt;
 172.16.3.12 ceph4&lt;br /&gt;
 172.16.3.13 ceph5&lt;br /&gt;
 172.16.3.14 cephm&lt;br /&gt;
&lt;br /&gt;
=== NTP ile Saat Senkronizasyonu ===&lt;br /&gt;
Sunucuların saatlerinin senkronize edilmesi için sisteme ntp sunucu kurup gerekli yapılandırma gerçekleştirildi.&lt;br /&gt;
&lt;br /&gt;
=== /etc/security/limits.conf Dosyası Dosya Açma Limitlerinin Arttırılması ===&lt;br /&gt;
Kullanıcıların açabileceği maksimum dosya tanımlayıcısı (file descriptor) sayısını /etc/security/limits.conf dosyasına aşağıdaki satırları ekleyerek arttırıyoruz.&lt;br /&gt;
&lt;br /&gt;
 soft nofile 65000&lt;br /&gt;
 hard nofile 65000&lt;br /&gt;
&lt;br /&gt;
=== SSD Diskler İçin I/0   Scheduler ve Rotation Değerlerinin Değiştirilmesi ===&lt;br /&gt;
SSD disklerin scheduler’i atanmış değerinden SSD diskler için daha uygun olan noop’a değiştirmek için: (SSD disk sde)&lt;br /&gt;
&lt;br /&gt;
 echo noop &amp;gt;  /sys/block/sde/queue/scheduler&lt;br /&gt;
&lt;br /&gt;
yazmak yeterli. SSD diskler klasik diskler gibi dönen hareketli parçalardan oluşmadığı için SSD diskleri kullanan işletim sistemlerinin I/O operasyonlarını bu durumu göz önüne alarak gerçekleştirmeleri gerekiyor. Bu nedenle SSD disklerin rotation değeri 0 olmalı. Mevcut durumu görmek için:&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ceph# cat /sys/block/sde/queue/rotational&lt;br /&gt;
 1&lt;br /&gt;
&lt;br /&gt;
komutunu kullandığımızda değerin 1 olduğunu görüyoruz. Normalde işletim sisteminin diskin SSD olduğunu anlayıp bu değer 0 yapmasını bekliyoruz. Manüel olarak 0 yapmak için:&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;1&amp;quot; &amp;gt; /sys/block/sde/queue/rotational&lt;br /&gt;
&lt;br /&gt;
=== Disk read_ahead değerinin Arttırılması ===&lt;br /&gt;
Disklerin atanmış değerleri olan 128, 2048 olarak değiştirildi. Mevcut değeri görmek için:&lt;br /&gt;
 root@ceph1:/home/ceph# cat /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 128&lt;br /&gt;
&lt;br /&gt;
Yeni değerin atanması:&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ceph# echo 2084 &amp;gt; /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 root@ceph1:/home/ceph# cat /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 2084&lt;br /&gt;
&lt;br /&gt;
OSD diskleri için  değerleri açılışta geçerli kılmak için aşağıdaki satırları /etc/rc.local dosyasına ekleyebilirsiniz.&lt;br /&gt;
&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdb/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdc/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdd/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdf/queue/read_ahead_kb&lt;br /&gt;
&lt;br /&gt;
read_ahead_kb değerinin arttırılması sıralı okuma (sequential read) performansınızı arttıracaktır. I/O örüntünüze göre bu değeri daha arttırarak performans kazanımı sağlayabilirsiniz. Bu değerin arttırılması hafıza kullanımının artmasına neden olacağı için  bellek kullanımı üzerinde bir baskı oluşturabilir.&lt;br /&gt;
&lt;br /&gt;
yazmak yeterli.  Açılışta geçerli olması için echo ile başlayan komutları satırı /etc/rc.local’a ekleyebilirsiniz.&lt;br /&gt;
&lt;br /&gt;
=== Apparmor Yazılımının Kapatılması===&lt;br /&gt;
 invoke-rc.d apparmor kill&lt;br /&gt;
 update-rc.d -f apparmor remove&lt;br /&gt;
&lt;br /&gt;
== XFS Dosya Sistemi Yapılandırması ==&lt;br /&gt;
=== Ceph XFS Dosya Sistemi Yapılandırması ===&lt;br /&gt;
Ceph’te ext4,btrfs ve xfs dosya sistemi olarak kullanılabiliyor. Btrfs’in henüz production için kullanımı önerilmiyor. Ceph belgelerinde production sistemler için xfs kullanımı önerildiği için kurulumu xfs üzerinden gerçekleştiriyoruz.&lt;br /&gt;
Dosya sisteminin ne olacağı, mkfs ve mount opsiyonları ceph.conf dosyasında tanımlanıyor.&lt;br /&gt;
&lt;br /&gt;
===Dosya Sistemi Yaratılması ===&lt;br /&gt;
Disklerin dosya sistemini yaratırken mkfs.xfs programında   ilk olarak size=2048 argümanını kullanıyoruz. Bunun nedeni ceph tarafından kullanılan Extended Attributes (XATTRs)  daha fazla alan açmak. Size argümanı inode büyüklüğü tanımlamak için kullanılıyor. Atanmış değeri (default) 256 ki buda 256Byte’a karşılık geliyor. 512 Byte inode kullanımında ortalama 350 Byte’lık bir  alan xattr kullanımına kalıyor. Bu değeri 2048 yaptığımızda yaklaşık1900 Byte alanı xattr için ayırmış oluyoruz.&lt;br /&gt;
&lt;br /&gt;
mkfs.xfs programına argüman olarak kullandığımız opsiyonlardan bir diğeri finobt=1. Bu argüman xfs’in boş inode’ların takibini btree algoritması ile yapılmasını sağlıyor. Bu özelliği kullanmak için çekirdek sürümünüzün 3.15  xfsprogs sürümünüzün 3.2 ve üzeri olması gerekiyor.&lt;br /&gt;
&lt;br /&gt;
Ubuntu 14.04 ile xfsprogs sürümü 3.1.9 olarak geliyor. xfsprogs 3.2 ve üzerinde gelen finobt argümanının kullanabilmek için  xfsprogs paketini aşağıdaki komutları kullanarak güncelliyoruz.&lt;br /&gt;
&lt;br /&gt;
 wget -c http://mirrors.kernel.org/ubuntu/pool/main/x/xfsprogs/xfsprogs_3.2.1ubuntu1_amd64.deb&lt;br /&gt;
 dpkg -i xfsprogs_3.2.1ubuntu1_amd64.deb&lt;br /&gt;
&lt;br /&gt;
mkfs.xfs programında kullandığımız üçüncü argüman crc=1. Bu argüman xfs’in metadatadaki bozulmaları karcı CRC32 algoritmasını kullanarak denetlemesini sağlıyor. Hepsi bir arada komut sdb diski için dosya sistemi yaratmak istersek:&lt;br /&gt;
&lt;br /&gt;
 mkfs.xfs -m crc=1,finobt=1 -f -i size=2048 /dev/sdb&lt;br /&gt;
halini alıyor.&lt;br /&gt;
&lt;br /&gt;
=== Dosya Sistemi Mount Opsiyonları ===&lt;br /&gt;
Örnek olarak verdiğimizi sdb diskinin fstab’a eklemek için:&lt;br /&gt;
&lt;br /&gt;
 /dev/sdb /disk1 xfs rw,noatime,inode64,logbsize=256k,delaylog 0 1&lt;br /&gt;
&lt;br /&gt;
Kullandığımız mount opsiyonları açıklamaları:&lt;br /&gt;
noatime: Dosya sisteminin en son erişim zamanı bilgisini tutmaması için&lt;br /&gt;
inode64: 1TByte üzeri disklerde kullanılması önerilen ve inode’ların 64 bit olarak tanımlanması&lt;br /&gt;
logbsize=256k : Çok fazla okuma yazma yapan dosya sistemleri için artırılması öneriliyor. Atanmış değeri 32k&lt;br /&gt;
delaylog: Metadata bilgisinin bellekte mümkün olduğunca tutulup yapılan I/O miktarını azaltan bir opsiyon.&lt;br /&gt;
Ceph’te  dosya sistemini yaratılırken hangi opsiyonların kullanılacağını ceph.conf’ta [osd] başlığı altında tanımlıyoruz. Elle mkfs yapmanıza yada mount etmenize gerek yok.&lt;br /&gt;
&lt;br /&gt;
 [osd]&lt;br /&gt;
 osd mkfs type = xfs&lt;br /&gt;
 osd mkfs options xfs = -m crc=1,finobt=1 -f -i size=2048&lt;br /&gt;
 osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog&lt;br /&gt;
&lt;br /&gt;
== Ceph  Yazılımı Kurulumu ==&lt;br /&gt;
İlk olarak tüm sunucularda ceph kullanıcısını açıyoruz.&lt;br /&gt;
&lt;br /&gt;
 root# useradd -d /home/ceph -m ceph&lt;br /&gt;
 root# apt-get install sudo&lt;br /&gt;
 root# echo &amp;quot;ceph ALL = (root) NOPASSWD:ALL&amp;quot; | sudo tee /etc/sudoers.d/ceph&lt;br /&gt;
 root# chmod 0440 /etc/sudoers.d/ceph&lt;br /&gt;
&lt;br /&gt;
Ceph monitor sunucusunda (cephm) ssh anahtarlarını yaratıyoruz:&lt;br /&gt;
&lt;br /&gt;
 ceph@cephm: ssh-keygen -t dsa&lt;br /&gt;
&lt;br /&gt;
Yarattığımız ssh anahtarlarını ceph depolama sunucularına (ceph1,ceph2,ceph3,ceph4,ceph5) kopyalıyoruz:&lt;br /&gt;
&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph1&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph2&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph3&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph4&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph5&lt;br /&gt;
&lt;br /&gt;
Tüm sunucularda Ceph reposunu ekleyip ceph’i kuruyoruz:&lt;br /&gt;
&lt;br /&gt;
 root# wget -q -O- 'https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc' | sudo apt-key add -&lt;br /&gt;
 root# echo deb http://ceph.com/debian-giant/trusty main | sudo tee /etc/apt/sources.list.d/ceph.list&lt;br /&gt;
 root# apt-get update&lt;br /&gt;
 root# apt-get install ceph-deploy&lt;br /&gt;
&lt;br /&gt;
Cephm sunucusunda ceph kullanıcısı ile aşağıdaki komutları çalıştırıyoruz. İlk olarak config isimli bir dizin yaratıp yaptığımız yapılandırmalarının bu dizin altında yer almasını sağlayalım.&lt;br /&gt;
&lt;br /&gt;
 mkdir config&lt;br /&gt;
 cd config&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy ile ilk sunucumuz olan monitor sunucusunu tanımlayalım.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy new cephm&lt;br /&gt;
&lt;br /&gt;
Bu komuttan sonra bulunduğunuz dizinin içinde ceph.mon.keyring dosyası ile ceph.conf dosyasının oluşmuş olması gerekiyor. ceph.conf dosyasına [global] tanımı altına aşağıdaki satırları ekliyoruz:&lt;br /&gt;
&lt;br /&gt;
 #20 disk x 100 / 3 replica = 666&lt;br /&gt;
 osd pool default pg num = 666&lt;br /&gt;
 osd pool default pgp num = 666&lt;br /&gt;
 osd pool default size = 3&lt;br /&gt;
 public network = 172.16.3.0/16&lt;br /&gt;
 cluster network = 10.10.10.0/24&lt;br /&gt;
&lt;br /&gt;
[osd] kısmı altında xfs dosya sistemi yaratılırken ve mount edilirken geçerli olacak argümanları tanımlıyoruz.&lt;br /&gt;
&lt;br /&gt;
 osd mkfs type = xfs&lt;br /&gt;
 osd mkfs options xfs = -m crc=1,finobt=1 -f -i size=2048&lt;br /&gt;
 osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog&lt;br /&gt;
&lt;br /&gt;
ceph.conf dosyamızın son hali aşağıdaki şekilde:&lt;br /&gt;
&lt;br /&gt;
 [global]&lt;br /&gt;
 fsid = 12bee812-a843-4103-9321-febe8c5108e6&lt;br /&gt;
 mon_initial_members = cephm&lt;br /&gt;
 mon_host = 172.16.3.14&lt;br /&gt;
 auth_cluster_required = cephx&lt;br /&gt;
 auth_service_required = cephx&lt;br /&gt;
 auth_client_required = cephx&lt;br /&gt;
 filestore_xattr_use_omap = true&lt;br /&gt;
 #20 disk x 100 / 3 replica = 666&lt;br /&gt;
 osd pool default pg num = 666&lt;br /&gt;
 osd pool default pgp num = 666&lt;br /&gt;
 osd pool default size = 3&lt;br /&gt;
 public network = 172.16.3.0/16&lt;br /&gt;
 cluster network = 10.10.10.0/24&lt;br /&gt;
 [osd]&lt;br /&gt;
 osd mkfs type = xfs&lt;br /&gt;
 osd mkfs options xfs = -m crc=1,finobt=1 -f -i size=2048&lt;br /&gt;
 osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog&lt;br /&gt;
&lt;br /&gt;
Bu aşamdan sonra ceph-deploy ile sunucuların kurulumlarını ve monitör sunucusu tanımlarını yapıyoruz:&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy install cephm ceph1 ceph2 ceph3 ceph4 ceph5&lt;br /&gt;
 ceph-deploy mon create-initial&lt;br /&gt;
&lt;br /&gt;
Bundan sonraki aşamada sunucular üzerinde osd için kullanacağımız diskleri hazırlıyoruz. Zap kumutu disklerde bulunan partition vs bilgisini siliyor. osd prepare’ ile disklerin ceph için hazırlanma işlemleri gerçekleştiriliyor. /dev/sde diski journal için kullanılacak olan SSD diski. Bu nedenle osd prepare komutunda hazırlancak diskten sonra araya : koyararak ekliyoruz.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph1:sdb ceph1:sdc ceph1:sdd ceph1:sde ceph1:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph2:sdb ceph2:sdc ceph2:sdd ceph2:sde ceph2:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph3:sdb ceph3:sdc ceph3:sdd ceph3:sde ceph3:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph4:sdb ceph4:sdc ceph4:sdd ceph4:sde ceph4:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph5:sdb ceph5:sdc ceph5:sdd ceph5:sde ceph5:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
Son olarak admin nodu’u tanımı:&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy admin cephm ceph1 ceph2 ceph3 ceph4 ceph5&lt;br /&gt;
 sudo chmod +r /etc/ceph/ceph.client.admin.keyring&lt;br /&gt;
&lt;br /&gt;
Her şey yolunda giderse:&lt;br /&gt;
&lt;br /&gt;
 ceph health&lt;br /&gt;
&lt;br /&gt;
komutun çıktısı aşağıdaki şekilde olmalı:&lt;br /&gt;
HEALTH_OK&lt;br /&gt;
&lt;br /&gt;
Aşağıdaki hatayı almanız pgs sayısını arttırmanız gerektiği anlamına geliyor:&lt;br /&gt;
&lt;br /&gt;
 HEALTH_WARN too few pgs per osd (3 &amp;lt; min 20)&lt;br /&gt;
&lt;br /&gt;
Sayıyı arttırmak için aşağıdaki komutu kullanabilirsiniz.&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool set rbd pgp_num 666&lt;br /&gt;
 ceph osd pool set rbd pg_num 666&lt;br /&gt;
&lt;br /&gt;
== Ceph Calamari GUI Kurulumu ==&lt;br /&gt;
Calamari  Intank tarafınfan ceph’in izlenmesi için  geliştirilen bir gui uygulaması. Orjinal kurulum belgesi oldukça karışık, İnternette arama yaparken bulduğum  belge üzerinde Ubuntu 14.04 üzerinden calamari kurulumu gerçekleştirdim. Yazıldığı şekilde çalışmadığı için bir kaç ekleme yapmak gerekti.  Kurulum için ilk olarak gerekli olan deb paketlerini hazırlamanız gerekiyor. &lt;br /&gt;
&lt;br /&gt;
=== Calamari Kurulum için Gerekli Paketler ===&lt;br /&gt;
echo &amp;quot;deb http://ppa.launchpad.net/saltstack/salt/ubuntu trusty main&amp;quot;&lt;br /&gt;
 &amp;gt; /etc/apt/sources.list.d/saltstack.list&lt;br /&gt;
&lt;br /&gt;
wget -q -O- &amp;quot;http://keyserver.ubuntu.com:11371/pks/lookup?op=get&amp;amp;&lt;br /&gt;
search=0x4759FA960E27C0A6&amp;quot; | sudo apt-key add -&lt;br /&gt;
&lt;br /&gt;
apt-get update&lt;br /&gt;
apt-get install salt-master salt-minion salt-syndic&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main&amp;quot; &lt;br /&gt;
&amp;gt;  /etc/apt/sources.list.d/pgdg.list&lt;br /&gt;
&lt;br /&gt;
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc&lt;br /&gt;
 | sudo apt-key add -&lt;br /&gt;
&lt;br /&gt;
apt-get update &amp;amp;&amp;amp; sudo apt-get upgrade&lt;br /&gt;
apt-get install -y curl build-essential openssl libssl-dev apache2 &lt;br /&gt;
libapache2-mod-wsgi libcairo2 supervisor python-cairo libpq5 &lt;br /&gt;
postgresql python-m2crypto python-virtualenv git python-dev swig&lt;br /&gt;
libzmq-dev g++ postgresql-9.1 postgresql-server-dev-9.1 libcairo2-dev&lt;br /&gt;
python-pip libpq-dev ruby debhelper python-mock python-configobj &lt;br /&gt;
cdbs gem ruby1.9.1 ruby1.9.1-dev make devscripts &lt;br /&gt;
software-properties-common python-support&lt;br /&gt;
&lt;br /&gt;
cd ~&lt;br /&gt;
git clone https://github.com/joyent/node.git&lt;br /&gt;
cd node&lt;br /&gt;
git checkout v0.10.10&lt;br /&gt;
./configure&lt;br /&gt;
make -j4&lt;br /&gt;
make install&lt;br /&gt;
&lt;br /&gt;
mkdir ~/npm&lt;br /&gt;
cd ~/npm&lt;br /&gt;
wget --no-check-certificate https://npmjs.org/install.sh&lt;br /&gt;
sh install.sh&lt;br /&gt;
&lt;br /&gt;
npm install -g bower&lt;br /&gt;
npm install -g coffee-script&lt;br /&gt;
npm install -g grunt-cli&lt;br /&gt;
npm install -g grunt-legacy-util&lt;br /&gt;
npm install -g grunt-legacy-log&lt;br /&gt;
npm install -g dateformat&lt;br /&gt;
npm install -g eventemitter2&lt;br /&gt;
npm install -g glob&lt;br /&gt;
npm install -g minimatch&lt;br /&gt;
npm install -g findup-sync&lt;br /&gt;
npm install -g js-yaml&lt;br /&gt;
npm install -g rimraf&lt;br /&gt;
npm install -g iconv-lite&lt;br /&gt;
npm install -g nopt&lt;br /&gt;
npm install -g grunt-lib-contrib&lt;br /&gt;
npm install -g uglify-js&lt;br /&gt;
npm install -g filesize&lt;br /&gt;
npm install -g optipng-bin&lt;br /&gt;
npm install -g jpegtran-bin&lt;br /&gt;
gem install compass&lt;br /&gt;
gem install sass&lt;br /&gt;
&lt;br /&gt;
=== Calamari Server Kurulumu Paketi Hazırlanması ===&lt;br /&gt;
&lt;br /&gt;
cd ~&lt;br /&gt;
git clone https://github.com/ceph/calamari.git&lt;br /&gt;
cd calimari&lt;br /&gt;
cd debian&lt;br /&gt;
mv source source.old&lt;br /&gt;
cd ..&lt;br /&gt;
dpkg-buildpackage&lt;br /&gt;
&lt;br /&gt;
Bu işlemlerden sonra bir alt dizinde aşağıdaki dosyalar oluşacak:&lt;br /&gt;
&lt;br /&gt;
calamari-server_1.0.0-1_amd64.deb calamari_1.0.0-1.tar.gz&lt;br /&gt;
&lt;br /&gt;
=== Diamond Kurulumu Paketi Hazırlanması ===&lt;br /&gt;
git clone https://github.com/ceph/Diamond.git&lt;br /&gt;
cd Diamond&lt;br /&gt;
git checkout calamari&lt;br /&gt;
dpkg-buildpackage&lt;br /&gt;
cd ..&lt;br /&gt;
ls diam*&lt;br /&gt;
diamond_3.1.0_all.deb diamond_3.1.0_amd64.changes diamond_3.1.0.dsc &lt;br /&gt;
diamond_3.1.0.tar.gz&lt;br /&gt;
&lt;br /&gt;
Tüm işlemler bitinde yaratılan tüm dosyaları bir dizin altına toplayın. Buraya kadar olan  derleme kısmı sonunda elinizde bulunması gereken dosyalar:&lt;br /&gt;
&lt;br /&gt;
ceph@cephm:~/CEPH$ ls -al&lt;br /&gt;
total 40176&lt;br /&gt;
drwxrwxr-x  2 ceph ceph     4096 Apr  3 07:06 .&lt;br /&gt;
drwxr-xr-x 15 ceph ceph     4096 Apr  6 09:20 ..&lt;br /&gt;
-rwxr-xr-x  1 root root 23263443 Apr  2 09:14 calamari_1.0.0-1.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root   319104 Apr  2 14:45 calamari-admin.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root   563767 Apr  2 14:45 calamari-dashboard.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root   338871 Apr  2 14:45 calamari-login.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root   491400 Apr  2 14:45 calamari-manage.tar.gz&lt;br /&gt;
-rwxr-xr-x  1 root root 11027912 Apr  2 09:21 calamari-server_1.0.0-1_amd64.deb&lt;br /&gt;
-rwxr-xr-x  1 ceph ceph   231674 Apr  2 14:46 diamond_3.1.0_all.deb&lt;br /&gt;
-rwxr-xr-x  1 ceph ceph     1123 Apr  2 14:46 diamond_3.1.0_amd64.changes&lt;br /&gt;
-rwxr-xr-x  1 ceph ceph      711 Apr  2 14:46 diamond_3.1.0.dsc&lt;br /&gt;
-rwxr-xr-x  1 ceph ceph  4874357 Apr  2 14:46 diamond_3.1.0.tar.gz&lt;br /&gt;
&lt;br /&gt;
=== CALAMARİ Sunucusu Kurulumu ===&lt;br /&gt;
Kurulumu cephm sunucusunda yapım. Kurulum için gerekli olan dosyaları /home/ceph/CEPH dizini altında.&lt;br /&gt;
&lt;br /&gt;
mkdir -p /opt/calamari/webapp/content&lt;br /&gt;
cd /opt/calamari/webapp/content/&lt;br /&gt;
mkdir dashboard&lt;br /&gt;
cd dashboard/&lt;br /&gt;
tar -xzvf /home/ceph/CEPH/calamari-dashboard.tar.gz&lt;br /&gt;
cd ..&lt;br /&gt;
mkdir login&lt;br /&gt;
mkdir manage&lt;br /&gt;
mkdir admin&lt;br /&gt;
cd login&lt;br /&gt;
tar -xzvf /home/ceph/CEPH/calamari-login.tar.gz&lt;br /&gt;
cd ..&lt;br /&gt;
cd manage&lt;br /&gt;
tar -xzvf /home/ceph/CEPH/calamari-manage.tar.gz&lt;br /&gt;
cd ..&lt;br /&gt;
cd admin&lt;br /&gt;
tar -xzvf /home/ceph/CEPH/calamari-admin.tar.gz&lt;br /&gt;
cd ..&lt;br /&gt;
cd /home/ceph/CEPH&lt;br /&gt;
&lt;br /&gt;
aptitute install python-twisted python-txamqp python-greenlet &lt;br /&gt;
python-sqlalchemy python-gevent&lt;br /&gt;
&lt;br /&gt;
dpkg -i ./calamari-server_1.0.0-1_amd64.deb&lt;br /&gt;
&lt;br /&gt;
En son komutun çıktısı:&lt;br /&gt;
&lt;br /&gt;
root@cephm:/home/ceph/CEPH# dpkg -i ./calamari-server_1.0.0-1_amd64.deb&lt;br /&gt;
(Reading database ... 100135 files and directories currently installed.)&lt;br /&gt;
Preparing to unpack .../calamari-server_1.0.0-1_amd64.deb ...&lt;br /&gt;
Unpacking calamari-server (1.0.0-1) over (1.0.0-1) ...&lt;br /&gt;
Setting up calamari-server (1.0.0-1) ...&lt;br /&gt;
ERROR: Module version does not exist!&lt;br /&gt;
salt-master stop/waiting&lt;br /&gt;
salt-master: no process found&lt;br /&gt;
salt-master start/running, process 52801&lt;br /&gt;
Stopping supervisor: supervisord.&lt;br /&gt;
Starting supervisor: supervisord.&lt;br /&gt;
* Stopping web server apache2 *&lt;br /&gt;
* Starting web server apache2 *&lt;br /&gt;
Thank you for installing Calamari.&lt;br /&gt;
&lt;br /&gt;
Please run 'sudo calamari-ctl initialize' to complete the installation.&lt;br /&gt;
&lt;br /&gt;
Diamond paketini de kuruyoruz:&lt;br /&gt;
&lt;br /&gt;
dpkg -i ./diamond_3.1.0_all.deb&lt;br /&gt;
&lt;br /&gt;
Salt Minion paketini kurup gerekli ayarları yapıyoruz:&lt;br /&gt;
&lt;br /&gt;
apt-get install salt-minion&lt;br /&gt;
&lt;br /&gt;
/etc/salt/minion dosyasında master ile başlayan tanıma sunucu kurulumunun yaptığımız sunucunun ismini yazıyoruz:&lt;br /&gt;
&lt;br /&gt;
master: cephm&lt;br /&gt;
&lt;br /&gt;
diamond ve salt-minion servislerini restart ediyoruz.&lt;br /&gt;
&lt;br /&gt;
service diamond restart&lt;br /&gt;
service salt-minion restart&lt;br /&gt;
&lt;br /&gt;
En son olarak sunucu tarafından calamari programının başlatılması için gerekli komutu yazıyoruz. Bu aşamada size web arayüzü için kullanıcı adı ve parola soracak.&lt;br /&gt;
&lt;br /&gt;
calamari-ctl initialize&lt;br /&gt;
&lt;br /&gt;
=== CALAMARİ İstemcileri  Kurulumu ===&lt;br /&gt;
ceph1,ceph2,ceph3,ceph4,ceph5 sunucularına istemci kurulumlarını yapıyoruz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
aptitude install python-support&lt;br /&gt;
dpkg -i ./diamond_3.1.0_all.deb&lt;br /&gt;
cd /etc/diamond/&lt;br /&gt;
cp diamond.conf.example diamond.conf&lt;br /&gt;
apt-get -y install salt-minion&lt;br /&gt;
&lt;br /&gt;
/etc/salt/minion dosyasında master ile başlayan tanıma sunucu kurulumunun yaptığımız sunucunun ismini yazıyoruz.&lt;br /&gt;
&lt;br /&gt;
master: cephm&lt;br /&gt;
&lt;br /&gt;
diamond ve salt-minion servislerini restart ediyoruz.&lt;br /&gt;
&lt;br /&gt;
service diamond restart&lt;br /&gt;
service salt-minion restart&lt;br /&gt;
&lt;br /&gt;
İstemcilerde salt-minion’u restart ettikten 30sn-1dk içinde sunucu web arayüzünde istemci adı ile birlikte calamari için register edilmeye hazır olarak gözüküyorlar. Ekran görüntüsünü aşağıda:&lt;br /&gt;
[IMAGE]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Genel_Bilgiler&amp;diff=206</id>
		<title>CEPH Genel Bilgiler</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=CEPH_Genel_Bilgiler&amp;diff=206"/>
				<updated>2018-09-20T11:51:56Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* CEPH Bluestore &amp;amp; Filestore */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== CEPH Bluestore &amp;amp; Filestore ==&lt;br /&gt;
===Filestore===&lt;br /&gt;
İlk olarak şunu söyleyerek başlayayım, bluestore yeni depolama backend. Dolayısı ile güncel bir sürüm kullanıyor iseniz (Luminous v12.2.z sonrası) zaten atanmış değer olarak bluestore kullanıyor olacaksınız (filestore kullanma seçeneğiniz hala mevcut) &lt;br /&gt;
&lt;br /&gt;
Filestore ve Bluestore farkını anlamak için ilk olarak ilk olarak eski sistem olan filestore’u inceleyerek başlıyalım.  CEPH objeleri eğer  Filestore kullanırsanız bir  POSIX uyumlu bir dosya sistemi üzerinde (genellikle XFS) dosya olarak saklanmakta. Bu durumun avantajlarını/dezavantajlarını sıralayacak olur isek filestore:&lt;br /&gt;
&lt;br /&gt;
* Uzun zamandır kullanıldığı için kararlı&lt;br /&gt;
* Metadata (anahtar/değer çifletleri)  dosya sisteminde levelDB üzerine tutuluyor.&lt;br /&gt;
* PG’ler dizin, nesneler dosya olarak map edilmiş durumda&lt;br /&gt;
* Çok fazla kişi tarafından kullanıldığı için bir sorun çıktığında çözüm bulma olasılığınız fazla&lt;br /&gt;
&lt;br /&gt;
* Veriler iki kez yazıldığı için yavaş (bluestore ile karşılaştırıldığına)&lt;br /&gt;
* Enumaration problemleri var. CEPH nesne isimlendirmesini 32-bitlik hash olarak tutuyor, Posix readdir() dizin içindeki dosyaları sıralı vermediği için çok fazla dosya yaratılıp okunduğunda performans sorunlarına neden oluyor. Bunun direkt etkisi cluster obje sayısı  arttıkça  performansın yavaşlaması. &lt;br /&gt;
* Yüksek CPU gücü gerektirmesi&lt;br /&gt;
 &lt;br /&gt;
Peki filestore kullandığınızda veri nasıl okuyup yazılıyor ?&lt;br /&gt;
&lt;br /&gt;
#Ceph veriyi ilk olarak journal olarak tanımlanan diskin ayrı bir bölümüne yazar&lt;br /&gt;
#Veri daha sonra journal’dan OSD’ye sıralı (sequential) kopyalanır&lt;br /&gt;
##Journal olarak SSD kullanımı ile hızlandırılabilir.&lt;br /&gt;
##Rastgele I/O istekleri SSD ile karşılanıp SSD’den OSD’ye yazılır&lt;br /&gt;
#Veri ilk olarak birincil (Primary) PG’ye yazılır, oradan diğer (non-primary) PG’lere kopyalanır.&lt;br /&gt;
&lt;br /&gt;
Bu yazdıklarımızın grafiksel olarak aşağıdaki şekilde gösterebiliriz.&lt;br /&gt;
[[Dosya:Filestorewrite.png|çerçeveli|orta]]&lt;br /&gt;
&lt;br /&gt;
Bu durumun en bariz problemi verinin iki kez (bir kez disk journal kısmına bir kez de yazılması). Atanmış değer olarak iki kopya daha tuttuğunuz düşünüldüğünde  tek bir yazma işlemi için toplamda kopyalar ile yapılan işlemler ile birlikte 6 işlem yapmış olmanız gerekiyor!. Bu durumu hızlandırmak için journal olarak mümkün olduğu sürece ayrı SSD diskler kullanmanız tavsiye ediliyor. Yapılandırma sırasında bir 5 veya 6 dönen disk başına 1 SSD journal disk olarak bıraklıp bu dezavantaj giderilmeye çalışılıyor. Peki 5 veya 6  rakamı  nereden geliyor diye soracaksınız. 1 adet diskin yazma hızının oralama 100MByte/saniye olduğu düşünüldüğünde SSD okuma hızlarıda 500-600MByte/saniye. Tüm diskleri aynı anda tam kapasite ile yazmak isterseniz 6 disk önerilen değer bu neden ile. Peki 8 disk takarsak ne olur ? IOPS ta bir sıkışma olmaz ama througputh açısından bir diska yazabileceğiniz maksimum anlıkveri miktarını 600/8 = 75MByte ile sınırlamış olursunuz.&lt;br /&gt;
&lt;br /&gt;
===Bluestore (Block + NewStore) ===&lt;br /&gt;
Bluestore tasarlanırken Filestore’da karşılaşılan problemlerin yaşanmaması için bazı değişikliklere gidilmiş.Filestore’dan en  önemli farkının posix uyumlu bir dosya sistemi kullanılmaması&lt;br /&gt;
&lt;br /&gt;
* Yeni nesi daha hızlı NVM-e benzeri diskler düşünülerek tasarlandı&lt;br /&gt;
* Veri artık dosya sistemine değil raw olarak blok device’a yazılıyor. Dolayısı ile verileri yazmak için xfs benzeri bir dosya sistemine ihtiyaç duymuyorsunuz.&lt;br /&gt;
* Metadata verisinin tutulması için  LevelDB yerinde RocksDB  kullanılıyor&lt;br /&gt;
* RocksDB verisini yazmak için dosya sistemi benzeri bir yapıya ihtiyaç duyduğu için metadata verisinin tutulması için BlueFS isminde sadece gerekli dosya sistemi fonksiyonların implemente edildiği bir dosya sistemi tasarlanmış.&lt;br /&gt;
* Data ve metadata normal şartlarda aynı diskte saklanıyor, istenirse metadata kısmı başka bir alanda tutulabiliyor. (DB ve WAL kısmı ayrılabiliyor)&lt;br /&gt;
* Data Sıkıştırma desteği geliyor&lt;br /&gt;
* Okuma isteklerine checksum desteği geliyor. (Filestore da diske yazılan verinin bozlup bozulmadığını pahalı bir operasyon olan scrub ile takip ediliyordu)&lt;br /&gt;
&lt;br /&gt;
Blurstore'un grafiksel göstermi aşağıdaki şekilde.&lt;br /&gt;
[[Dosya:Bluestore.png|çerçeveli|orta]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Se%C3%A7imi_Kriterleri&amp;diff=205</id>
		<title>Donanım Seçimi Kriterleri</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Se%C3%A7imi_Kriterleri&amp;diff=205"/>
				<updated>2018-09-20T11:50:43Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* Okuma (read) / Yazma (write) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Giriş==&lt;br /&gt;
Hazır  depolama kutu çözümleri sizin için en performanslı ve maliyet olarak en uygun olduğunu düşündükleri  donanım çözümlerini broşürler halinde size güzel model numaralı çözümler ile sunarlar ve arasından seçim yapmanız isterler. Kendiniz bir sistem tasarladığınızda bir çok farklı yazılım ve donanım isterlerini aynı anda düşünüp maliyet maliyet etkin bir çözüm oluşturması için çalışmanız gerekecek.&lt;br /&gt;
&lt;br /&gt;
Burada anlatmaya çalıştığımız mimarı dizayn parametrelerin biraz daha iyi anlaşılması için bir kaç tanım yapmak gerekecek. İlk olarak çokça duyduğumuz IOPS (Input Operation per second) ile başlayalım. &lt;br /&gt;
&lt;br /&gt;
===IOPS===&lt;br /&gt;
Bu değer temel olarak diskiniz (veya toplam olarak depolama cihazının) saniyede yapacağı toplam girdi/çıktı operasyonu sayısını vermekte. Burada girdi çıktı operasyonundan kastımız yazma(write) ve  okuma(read) operasyonlarıdır. SSD disklerde, dönen disklere göre bu değerler oldukça fazla olduğu için reklam amaçlı şu kadar bin IOPS yapıyor şeklinde reklam ifadelerini görmüşsünüzdür. Büyük kafalı dönen (rotational) disklerde bu değerler kafanın hangi hızda döndüğü ile doğru orantılı olarak değişmektedir. 7200rpm dönen diskin IOPS sayısı 10000rpm dönen diske göre daha düşük kalıyor düz mantıkla.&lt;br /&gt;
&lt;br /&gt;
===Rastgele (random) /Ardışık (sequential) Erişim===&lt;br /&gt;
IOPS’un ne olduğunu anladıktan sonra diğer iki kavramın ne olduğuna geçelim. Veriler depolama sistemine yazarken yada okurken sıralı veya rastgele olarak okumak mümkün. SSD diskler ile birlikte  bu kavramların eskisi kadar önemi kalmadı. Bunu anlatmak için bir benzetme kullanmakta fayda var. &lt;br /&gt;
&lt;br /&gt;
Elinize fırça verip 100m uzunluğunda bir yola ara vermeden  yol çizgilerini çizmenizin istediğini düşünün.Yol boş,  en kolay ve hızlı yol  0. metreden bağlayarak fırçayı hiç kaldırmadan 100m boyunca gidip tek seferde bütün yolu boyamak olur. &lt;br /&gt;
&lt;br /&gt;
Fakat diyelim ki 30-35, 65-75m arasını zaten boyanmış. Siz bu nedenle o aralığı boyayamıyorsunuz. Siz elinizde kova ve fırça ile 50m den başladınız. Bu durumda 0. metreye gidip  ilk olarak 30m boyamamız sonra fırçayı kaldırıp 5 m elinizde fırça ile  gitmeniz sonra tekrar 30m boyayıp sonra fırçayı tekrar kaldırıp 5m daha gidip boyamaya devam etmeniz gerekecek. (Problemin bir kaç çözümü daha var, en uygununu disk denetleyici algoritması bulur siz kafanızı fazla yormayın)&lt;br /&gt;
&lt;br /&gt;
İlk durum sıralı erişime ikincisi de tam olmasa da rastgele erişime örnek olarak düşünülebilir.  Dönen kafalı disklerde kafa, disk silindirine disk üzerinde başka bir konuma gitmek için kafayı kaldırmadan ne kadar çok veri okuyabilir/yazabilir ise  o kadar iyi. O  nedenle,veriyi ardışık okuyup yazmak rastgele olmasına göre çok daha hızlı oluyor. Üreticiler de değerler fazla gözüksün diye genelde ardışık değerleri veriyorlar.&lt;br /&gt;
&lt;br /&gt;
IOPS olarak bakacak olur isek ilk durumda disk kafası sadece 1 kez hareket edip 1 IOPS(yazma) yaparken,  ikinci durumda disk kafası 5 kez hareket edip 3 IOPS(yazma) yapmış oluyor.&lt;br /&gt;
&lt;br /&gt;
===Okuma (read) / Yazma (write)===&lt;br /&gt;
Okuma yazmanın açıklamasından çok size verilen  performans değerlerin okuma mı yazma olduğuna dikkat etmekte fayda var. Üreticiler değerleri verirken &lt;br /&gt;
*Rastgele okuma&lt;br /&gt;
*Rastgele yazma&lt;br /&gt;
*Ardışık okuma&lt;br /&gt;
*Ardışık yazma&lt;br /&gt;
olarak ayrı ayrı da verebiliyorlar, iki ürünü karşılaştırırken elma ile armutu karşılaştırmamak  için hangi erişim için olduğuna dikkat etmekte fayda var.  Diğer dikkat edilmesi gereken değer Toplam olarak verilenler, toplam değerinde genelde %70 okuma %30 yazma olarak veriyor üreticiler ama mutlaka teyit edin.&lt;br /&gt;
&lt;br /&gt;
===IO Büyüklüğü (IOSIZE/Block Size)===&lt;br /&gt;
Bu değer yapılan IO operasyonun büyüklüğünü belirtiyor. Diğer bir deyişle tek bir IO operasyonu için yazdığını yada okuduğunu veri büyüklüğünü ifade ediyor. Bir önceki örnekten gidecek olursak ilk durumda IO büyüklüğü tek seferde 100m boyadığımız için 100, ikinci durumda 30,30,25 oluyor.  &lt;br /&gt;
&lt;br /&gt;
Ortalama IO büyüklüğü birinci durum için 100, ikinci durum için (30+30+25)/3 = 28.3 oluyor. Normalde IO Blok değerleri 4’ün katları olacak şekilde 4K,8K,16K,32K şeklinde veriliyor.&lt;br /&gt;
&lt;br /&gt;
===Hızı (Throughput)===&lt;br /&gt;
Diskin hızı işlemin yapıldığı IO büyüklüğüne göre değişiyor. Diyelim ki bir disk aldınız üzerinde 150read/write IOPS yapabildiği yazıyor. Diskin okuma yazma değerlerini aşağıdaki formül ile hesaplayabilirsiniz &lt;br /&gt;
&lt;br /&gt;
Hız = IO Büyüklüğü x IOPS miktarı &lt;br /&gt;
&lt;br /&gt;
Bu durumda 4K IO büyüklüğü ile diskten alabileceğiniz maksimum okuma ve yazma değerleri&lt;br /&gt;
&lt;br /&gt;
 4Kx150 = 600KByte&lt;br /&gt;
 4Kx125 = 500Kbyte&lt;br /&gt;
&lt;br /&gt;
===Gecikme (Latency)===&lt;br /&gt;
Depolama cihazında veya diskte yapacağınız tüm IO işlemlerinin tamamlanması için zamana ihtiyaç var. Bu değere geçikme diyoruz. Gecikme değerleri normalde milisaniye (ms) olarak verilir ve mümkün olduğu kadar az olması istenir. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==İşlemci==&lt;br /&gt;
==Diskler==&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=FILESTORE_KURULUMU&amp;diff=204</id>
		<title>FILESTORE KURULUMU</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=FILESTORE_KURULUMU&amp;diff=204"/>
				<updated>2018-09-20T11:48:55Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &amp;quot;== Test Sistemi Donanım Bilgileri == 6 Adet Dell R815 Sunucu, 5 Adedi data düğümü bir adedi monitör olarak kullanıldı. Data sunucularının özellikle...&amp;quot; içeriğiyle yeni sayfa oluşturdu&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Test Sistemi Donanım Bilgileri ==&lt;br /&gt;
6 Adet Dell R815 Sunucu, 5 Adedi data düğümü bir adedi monitör olarak kullanıldı. Data sunucularının özellikleri:&lt;br /&gt;
* 4 x AMD Opteron(tm) Processor 6174 İşlemci&lt;br /&gt;
* 128GByte Bellek&lt;br /&gt;
* 5x500GByte 7200RPM SAS Disk, 1 Adet 240G SSD Disk&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ubuntu# lshw -short -C disk&lt;br /&gt;
 H/W path Device Class Description&lt;br /&gt;
 ============================================================&lt;br /&gt;
 /0/100/4/0/0/0/2.0.0 /dev/sda disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.1.0 /dev/sdb disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.2.0 /dev/sdc disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.3.0 /dev/sdd disk 499GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.4.0 /dev/sde disk 239GB PERC H700&lt;br /&gt;
 /0/100/4/0/0/0/2.5.0 /dev/sdf disk 499GB PERC H700&lt;br /&gt;
&lt;br /&gt;
* 4 Adet 1Gbps Ethernet kartı&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ubuntu# lshw -short -C network&lt;br /&gt;
 H/W path Device Class Description&lt;br /&gt;
 ============================================================&lt;br /&gt;
 /0/100/2/0 em1 network NetXtreme II BCM5709 Gigabit Ethernet&lt;br /&gt;
 /0/100/2/0.1 em2 network NetXtreme II BCM5709 Gigabit Ethernet &lt;br /&gt;
 /0/100/3/0 em3 network NetXtreme II BCM5709 Gigabit Ethernet&lt;br /&gt;
 /0/100/3/0.1 em4 network NetXtreme II BCM5709 Gigabit Ethernet&lt;br /&gt;
&lt;br /&gt;
Sunucu bağlantıları için ilk olarak  1Gbps arayüz ile Juniper EX4300 Anaharalama cihaz ile yapıldı. Daha sonra Intel 82599 chiptetli 10Gbps ethernet kartları takılarak Cluster ağı 10Gbps olarak bağlandı.&lt;br /&gt;
&lt;br /&gt;
== Test Sistemi Bağlantı Şeması ==&lt;br /&gt;
IMAGE&lt;br /&gt;
&lt;br /&gt;
== İşletim Sistemi Yapılandırması ==&lt;br /&gt;
=== İşletim Sistemi Sürümü ===&lt;br /&gt;
İşletim sistemi olarak ubuntu MAAS aracılığı ile ubuntu-14.04 kuruldu. Ubuntu 14.04 ile gelen  3.13.0-48 çekirdeği 3.15 ve üzeri çekirdekler ile gelen xfs dosya sistemindeki değişikleri (boş olan inode’latın takibi için btree desteği) içermediğinden işletim sistemi çekirdeği&lt;br /&gt;
&lt;br /&gt;
 apt-get -y install linux-image-generic-lts-utopic&lt;br /&gt;
&lt;br /&gt;
komutu ile 3.16.0-33 olarak güncellendi.&lt;br /&gt;
&lt;br /&gt;
=== /etc/hosts Dosyasının Düzenlenmesi ===&lt;br /&gt;
Sunucuların birbirinden haberdar olması için /etc/hosts dosyasına sunucu bilgileri eklendi.&lt;br /&gt;
&lt;br /&gt;
 172.16.3.3 ceph1&lt;br /&gt;
 172.16.3.10 ceph2&lt;br /&gt;
 172.16.3.11 ceph3&lt;br /&gt;
 172.16.3.12 ceph4&lt;br /&gt;
 172.16.3.13 ceph5&lt;br /&gt;
 172.16.3.14 cephm&lt;br /&gt;
&lt;br /&gt;
=== NTP ile Saat Senkronizasyonu ===&lt;br /&gt;
Sunucuların saatlerinin senkronize edilmesi için sisteme ntp sunucu kurup gerekli yapılandırma gerçekleştirildi.&lt;br /&gt;
&lt;br /&gt;
=== /etc/security/limits.conf Dosyası Dosya Açma Limitlerinin Arttırılması ===&lt;br /&gt;
Kullanıcıların açabileceği maksimum dosya tanımlayıcısı (file descriptor) sayısını /etc/security/limits.conf dosyasına aşağıdaki satırları ekleyerek arttırıyoruz.&lt;br /&gt;
&lt;br /&gt;
 soft nofile 65000&lt;br /&gt;
 hard nofile 65000&lt;br /&gt;
&lt;br /&gt;
=== SSD Diskler İçin I/0   Scheduler ve Rotation Değerlerinin Değiştirilmesi ===&lt;br /&gt;
SSD disklerin scheduler’i atanmış değerinden SSD diskler için daha uygun olan noop’a değiştirmek için: (SSD disk sde)&lt;br /&gt;
&lt;br /&gt;
 echo noop &amp;gt;  /sys/block/sde/queue/scheduler&lt;br /&gt;
&lt;br /&gt;
yazmak yeterli. SSD diskler klasik diskler gibi dönen hareketli parçalardan oluşmadığı için SSD diskleri kullanan işletim sistemlerinin I/O operasyonlarını bu durumu göz önüne alarak gerçekleştirmeleri gerekiyor. Bu nedenle SSD disklerin rotation değeri 0 olmalı. Mevcut durumu görmek için:&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ceph# cat /sys/block/sde/queue/rotational&lt;br /&gt;
 1&lt;br /&gt;
&lt;br /&gt;
komutunu kullandığımızda değerin 1 olduğunu görüyoruz. Normalde işletim sisteminin diskin SSD olduğunu anlayıp bu değer 0 yapmasını bekliyoruz. Manüel olarak 0 yapmak için:&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;1&amp;quot; &amp;gt; /sys/block/sde/queue/rotational&lt;br /&gt;
&lt;br /&gt;
=== Disk read_ahead değerinin Arttırılması ===&lt;br /&gt;
Disklerin atanmış değerleri olan 128, 2048 olarak değiştirildi. Mevcut değeri görmek için:&lt;br /&gt;
 root@ceph1:/home/ceph# cat /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 128&lt;br /&gt;
&lt;br /&gt;
Yeni değerin atanması:&lt;br /&gt;
&lt;br /&gt;
 root@ceph1:/home/ceph# echo 2084 &amp;gt; /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 root@ceph1:/home/ceph# cat /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 2084&lt;br /&gt;
&lt;br /&gt;
OSD diskleri için  değerleri açılışta geçerli kılmak için aşağıdaki satırları /etc/rc.local dosyasına ekleyebilirsiniz.&lt;br /&gt;
&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdb/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdc/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdd/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sde/queue/read_ahead_kb&lt;br /&gt;
 echo 2084 &amp;gt; /sys/block/sdf/queue/read_ahead_kb&lt;br /&gt;
&lt;br /&gt;
read_ahead_kb değerinin arttırılması sıralı okuma (sequential read) performansınızı arttıracaktır. I/O örüntünüze göre bu değeri daha arttırarak performans kazanımı sağlayabilirsiniz. Bu değerin arttırılması hafıza kullanımının artmasına neden olacağı için  bellek kullanımı üzerinde bir baskı oluşturabilir.&lt;br /&gt;
&lt;br /&gt;
yazmak yeterli.  Açılışta geçerli olması için echo ile başlayan komutları satırı /etc/rc.local’a ekleyebilirsiniz.&lt;br /&gt;
&lt;br /&gt;
=== Apparmor Yazılımının Kapatılması===&lt;br /&gt;
 invoke-rc.d apparmor kill&lt;br /&gt;
 update-rc.d -f apparmor remove&lt;br /&gt;
&lt;br /&gt;
== XFS Dosya Sistemi Yapılandırması ==&lt;br /&gt;
=== Ceph XFS Dosya Sistemi Yapılandırması ===&lt;br /&gt;
Ceph’te ext4,btrfs ve xfs dosya sistemi olarak kullanılabiliyor. Btrfs’in henüz production için kullanımı önerilmiyor. Ceph belgelerinde production sistemler için xfs kullanımı önerildiği için kurulumu xfs üzerinden gerçekleştiriyoruz.&lt;br /&gt;
Dosya sisteminin ne olacağı, mkfs ve mount opsiyonları ceph.conf dosyasında tanımlanıyor.&lt;br /&gt;
&lt;br /&gt;
===Dosya Sistemi Yaratılması ===&lt;br /&gt;
Disklerin dosya sistemini yaratırken mkfs.xfs programında   ilk olarak size=2048 argümanını kullanıyoruz. Bunun nedeni ceph tarafından kullanılan Extended Attributes (XATTRs)  daha fazla alan açmak. Size argümanı inode büyüklüğü tanımlamak için kullanılıyor. Atanmış değeri (default) 256 ki buda 256Byte’a karşılık geliyor. 512 Byte inode kullanımında ortalama 350 Byte’lık bir  alan xattr kullanımına kalıyor. Bu değeri 2048 yaptığımızda yaklaşık1900 Byte alanı xattr için ayırmış oluyoruz.&lt;br /&gt;
&lt;br /&gt;
mkfs.xfs programına argüman olarak kullandığımız opsiyonlardan bir diğeri finobt=1. Bu argüman xfs’in boş inode’ların takibini btree algoritması ile yapılmasını sağlıyor. Bu özelliği kullanmak için çekirdek sürümünüzün 3.15  xfsprogs sürümünüzün 3.2 ve üzeri olması gerekiyor.&lt;br /&gt;
&lt;br /&gt;
Ubuntu 14.04 ile xfsprogs sürümü 3.1.9 olarak geliyor. xfsprogs 3.2 ve üzerinde gelen finobt argümanının kullanabilmek için  xfsprogs paketini aşağıdaki komutları kullanarak güncelliyoruz.&lt;br /&gt;
&lt;br /&gt;
 wget -c http://mirrors.kernel.org/ubuntu/pool/main/x/xfsprogs/xfsprogs_3.2.1ubuntu1_amd64.deb&lt;br /&gt;
 dpkg -i xfsprogs_3.2.1ubuntu1_amd64.deb&lt;br /&gt;
&lt;br /&gt;
mkfs.xfs programında kullandığımız üçüncü argüman crc=1. Bu argüman xfs’in metadatadaki bozulmaları karcı CRC32 algoritmasını kullanarak denetlemesini sağlıyor. Hepsi bir arada komut sdb diski için dosya sistemi yaratmak istersek:&lt;br /&gt;
&lt;br /&gt;
 mkfs.xfs -m crc=1,finobt=1 -f -i size=2048 /dev/sdb&lt;br /&gt;
halini alıyor.&lt;br /&gt;
&lt;br /&gt;
=== Dosya Sistemi Mount Opsiyonları ===&lt;br /&gt;
Örnek olarak verdiğimizi sdb diskinin fstab’a eklemek için:&lt;br /&gt;
&lt;br /&gt;
 /dev/sdb /disk1 xfs rw,noatime,inode64,logbsize=256k,delaylog 0 1&lt;br /&gt;
&lt;br /&gt;
Kullandığımız mount opsiyonları açıklamaları:&lt;br /&gt;
noatime: Dosya sisteminin en son erişim zamanı bilgisini tutmaması için&lt;br /&gt;
inode64: 1TByte üzeri disklerde kullanılması önerilen ve inode’ların 64 bit olarak tanımlanması&lt;br /&gt;
logbsize=256k : Çok fazla okuma yazma yapan dosya sistemleri için artırılması öneriliyor. Atanmış değeri 32k&lt;br /&gt;
delaylog: Metadata bilgisinin bellekte mümkün olduğunca tutulup yapılan I/O miktarını azaltan bir opsiyon.&lt;br /&gt;
Ceph’te  dosya sistemini yaratılırken hangi opsiyonların kullanılacağını ceph.conf’ta [osd] başlığı altında tanımlıyoruz. Elle mkfs yapmanıza yada mount etmenize gerek yok.&lt;br /&gt;
&lt;br /&gt;
 [osd]&lt;br /&gt;
 osd mkfs type = xfs&lt;br /&gt;
 osd mkfs options xfs = -m crc=1,finobt=1 -f -i size=2048&lt;br /&gt;
 osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog&lt;br /&gt;
&lt;br /&gt;
== Ceph  Yazılımı Kurulumu ==&lt;br /&gt;
İlk olarak tüm sunucularda ceph kullanıcısını açıyoruz.&lt;br /&gt;
&lt;br /&gt;
 root# useradd -d /home/ceph -m ceph&lt;br /&gt;
 root# apt-get install sudo&lt;br /&gt;
 root# echo &amp;quot;ceph ALL = (root) NOPASSWD:ALL&amp;quot; | sudo tee /etc/sudoers.d/ceph&lt;br /&gt;
 root# chmod 0440 /etc/sudoers.d/ceph&lt;br /&gt;
&lt;br /&gt;
Ceph monitor sunucusunda (cephm) ssh anahtarlarını yaratıyoruz:&lt;br /&gt;
&lt;br /&gt;
 ceph@cephm: ssh-keygen -t dsa&lt;br /&gt;
&lt;br /&gt;
Yarattığımız ssh anahtarlarını ceph depolama sunucularına (ceph1,ceph2,ceph3,ceph4,ceph5) kopyalıyoruz:&lt;br /&gt;
&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph1&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph2&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph3&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph4&lt;br /&gt;
 ceph@cephm: ssh-copy-id -i .ssh/id_dsa.pub ceph@ceph5&lt;br /&gt;
&lt;br /&gt;
Tüm sunucularda Ceph reposunu ekleyip ceph’i kuruyoruz:&lt;br /&gt;
&lt;br /&gt;
 root# wget -q -O- 'https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc' | sudo apt-key add -&lt;br /&gt;
 root# echo deb http://ceph.com/debian-giant/trusty main | sudo tee /etc/apt/sources.list.d/ceph.list&lt;br /&gt;
 root# apt-get update&lt;br /&gt;
 root# apt-get install ceph-deploy&lt;br /&gt;
&lt;br /&gt;
Cephm sunucusunda ceph kullanıcısı ile aşağıdaki komutları çalıştırıyoruz. İlk olarak config isimli bir dizin yaratıp yaptığımız yapılandırmalarının bu dizin altında yer almasını sağlayalım.&lt;br /&gt;
&lt;br /&gt;
 mkdir config&lt;br /&gt;
 cd config&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy ile ilk sunucumuz olan monitor sunucusunu tanımlayalım.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy new cephm&lt;br /&gt;
&lt;br /&gt;
Bu komuttan sonra bulunduğunuz dizinin içinde ceph.mon.keyring dosyası ile ceph.conf dosyasının oluşmuş olması gerekiyor. ceph.conf dosyasına [global] tanımı altına aşağıdaki satırları ekliyoruz:&lt;br /&gt;
&lt;br /&gt;
 #20 disk x 100 / 3 replica = 666&lt;br /&gt;
 osd pool default pg num = 666&lt;br /&gt;
 osd pool default pgp num = 666&lt;br /&gt;
 osd pool default size = 3&lt;br /&gt;
 public network = 172.16.3.0/16&lt;br /&gt;
 cluster network = 10.10.10.0/24&lt;br /&gt;
&lt;br /&gt;
[osd] kısmı altında xfs dosya sistemi yaratılırken ve mount edilirken geçerli olacak argümanları tanımlıyoruz.&lt;br /&gt;
&lt;br /&gt;
 osd mkfs type = xfs&lt;br /&gt;
 osd mkfs options xfs = -m crc=1,finobt=1 -f -i size=2048&lt;br /&gt;
 osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog&lt;br /&gt;
&lt;br /&gt;
ceph.conf dosyamızın son hali aşağıdaki şekilde:&lt;br /&gt;
&lt;br /&gt;
 [global]&lt;br /&gt;
 fsid = 12bee812-a843-4103-9321-febe8c5108e6&lt;br /&gt;
 mon_initial_members = cephm&lt;br /&gt;
 mon_host = 172.16.3.14&lt;br /&gt;
 auth_cluster_required = cephx&lt;br /&gt;
 auth_service_required = cephx&lt;br /&gt;
 auth_client_required = cephx&lt;br /&gt;
 filestore_xattr_use_omap = true&lt;br /&gt;
 #20 disk x 100 / 3 replica = 666&lt;br /&gt;
 osd pool default pg num = 666&lt;br /&gt;
 osd pool default pgp num = 666&lt;br /&gt;
 osd pool default size = 3&lt;br /&gt;
 public network = 172.16.3.0/16&lt;br /&gt;
 cluster network = 10.10.10.0/24&lt;br /&gt;
 [osd]&lt;br /&gt;
 osd mkfs type = xfs&lt;br /&gt;
 osd mkfs options xfs = -m crc=1,finobt=1 -f -i size=2048&lt;br /&gt;
 osd mount options xfs = rw,noatime,inode64,logbsize=256k,delaylog&lt;br /&gt;
&lt;br /&gt;
Bu aşamdan sonra ceph-deploy ile sunucuların kurulumlarını ve monitör sunucusu tanımlarını yapıyoruz:&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy install cephm ceph1 ceph2 ceph3 ceph4 ceph5&lt;br /&gt;
 ceph-deploy mon create-initial&lt;br /&gt;
&lt;br /&gt;
Bundan sonraki aşamada sunucular üzerinde osd için kullanacağımız diskleri hazırlıyoruz. Zap kumutu disklerde bulunan partition vs bilgisini siliyor. osd prepare’ ile disklerin ceph için hazırlanma işlemleri gerçekleştiriliyor. /dev/sde diski journal için kullanılacak olan SSD diski. Bu nedenle osd prepare komutunda hazırlancak diskten sonra araya : koyararak ekliyoruz.&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph1:sdb ceph1:sdc ceph1:sdd ceph1:sde ceph1:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph1:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph2:sdb ceph2:sdc ceph2:sdd ceph2:sde ceph2:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph2:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph3:sdb ceph3:sdc ceph3:sdd ceph3:sde ceph3:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph3:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph4:sdb ceph4:sdc ceph4:sdd ceph4:sde ceph4:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph4:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy disk zap ceph5:sdb ceph5:sdc ceph5:sdd ceph5:sde ceph5:sdf&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdb:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdc:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdd:/dev/sde&lt;br /&gt;
 ceph-deploy osd prepare ceph5:sdf:/dev/sde&lt;br /&gt;
&lt;br /&gt;
Son olarak admin nodu’u tanımı:&lt;br /&gt;
&lt;br /&gt;
 ceph-deploy admin cephm ceph1 ceph2 ceph3 ceph4 ceph5&lt;br /&gt;
 sudo chmod +r /etc/ceph/ceph.client.admin.keyring&lt;br /&gt;
&lt;br /&gt;
Her şey yolunda giderse:&lt;br /&gt;
&lt;br /&gt;
 ceph health&lt;br /&gt;
&lt;br /&gt;
komutun çıktısı aşağıdaki şekilde olmalı:&lt;br /&gt;
HEALTH_OK&lt;br /&gt;
&lt;br /&gt;
Aşağıdaki hatayı almanız pgs sayısını arttırmanız gerektiği anlamına geliyor:&lt;br /&gt;
&lt;br /&gt;
 HEALTH_WARN too few pgs per osd (3 &amp;lt; min 20)&lt;br /&gt;
&lt;br /&gt;
Sayıyı arttırmak için aşağıdaki komutu kullanabilirsiniz.&lt;br /&gt;
&lt;br /&gt;
 ceph osd pool set rbd pgp_num 666&lt;br /&gt;
 ceph osd pool set rbd pg_num 666&lt;br /&gt;
&lt;br /&gt;
== Ceph Calamari GUI Kurulumu ==&lt;br /&gt;
Calamari  Intank tarafınfan ceph’in izlenmesi için  geliştirilen bir gui uygulaması. Orjinal kurulum belgesi oldukça karışık, İnternette arama yaparken bulduğum  belge üzerinde Ubuntu 14.04 üzerinden calamari kurulumu gerçekleştirdim. Yazıldığı şekilde çalışmadığı için bir kaç ekleme yapmak gerekti.  Kurulum için ilk olarak gerekli olan deb paketlerini hazırlamanız gerekiyor. &lt;br /&gt;
&lt;br /&gt;
=== Calamari Kurulum için Gerekli Paketler ===&lt;br /&gt;
echo &amp;quot;deb http://ppa.launchpad.net/saltstack/salt/ubuntu trusty main&amp;quot;&lt;br /&gt;
 &amp;gt; /etc/apt/sources.list.d/saltstack.list&lt;br /&gt;
&lt;br /&gt;
wget -q -O- &amp;quot;http://keyserver.ubuntu.com:11371/pks/lookup?op=get&amp;amp;&lt;br /&gt;
search=0x4759FA960E27C0A6&amp;quot; | sudo apt-key add -&lt;br /&gt;
&lt;br /&gt;
apt-get update&lt;br /&gt;
apt-get install salt-master salt-minion salt-syndic&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main&amp;quot; &lt;br /&gt;
&amp;gt;  /etc/apt/sources.list.d/pgdg.list&lt;br /&gt;
&lt;br /&gt;
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc&lt;br /&gt;
 | sudo apt-key add -&lt;br /&gt;
&lt;br /&gt;
apt-get update &amp;amp;&amp;amp; sudo apt-get upgrade&lt;br /&gt;
apt-get install -y curl build-essential openssl libssl-dev apache2 &lt;br /&gt;
libapache2-mod-wsgi libcairo2 supervisor python-cairo libpq5 &lt;br /&gt;
postgresql python-m2crypto python-virtualenv git python-dev swig&lt;br /&gt;
libzmq-dev g++ postgresql-9.1 postgresql-server-dev-9.1 libcairo2-dev&lt;br /&gt;
python-pip libpq-dev ruby debhelper python-mock python-configobj &lt;br /&gt;
cdbs gem ruby1.9.1 ruby1.9.1-dev make devscripts &lt;br /&gt;
software-properties-common python-support&lt;br /&gt;
&lt;br /&gt;
cd ~&lt;br /&gt;
git clone https://github.com/joyent/node.git&lt;br /&gt;
cd node&lt;br /&gt;
git checkout v0.10.10&lt;br /&gt;
./configure&lt;br /&gt;
make -j4&lt;br /&gt;
make install&lt;br /&gt;
&lt;br /&gt;
mkdir ~/npm&lt;br /&gt;
cd ~/npm&lt;br /&gt;
wget --no-check-certificate https://npmjs.org/install.sh&lt;br /&gt;
sh install.sh&lt;br /&gt;
&lt;br /&gt;
npm install -g bower&lt;br /&gt;
npm install -g coffee-script&lt;br /&gt;
npm install -g grunt-cli&lt;br /&gt;
npm install -g grunt-legacy-util&lt;br /&gt;
npm install -g grunt-legacy-log&lt;br /&gt;
npm install -g dateformat&lt;br /&gt;
npm install -g eventemitter2&lt;br /&gt;
npm install -g glob&lt;br /&gt;
npm install -g minimatch&lt;br /&gt;
npm install -g findup-sync&lt;br /&gt;
npm install -g js-yaml&lt;br /&gt;
npm install -g rimraf&lt;br /&gt;
npm install -g iconv-lite&lt;br /&gt;
npm install -g nopt&lt;br /&gt;
npm install -g grunt-lib-contrib&lt;br /&gt;
npm install -g uglify-js&lt;br /&gt;
npm install -g filesize&lt;br /&gt;
npm install -g optipng-bin&lt;br /&gt;
npm install -g jpegtran-bin&lt;br /&gt;
gem install compass&lt;br /&gt;
gem install sass&lt;br /&gt;
=== Calamari Server Kurulumu Paketi Hazırlanması ===&lt;br /&gt;
&lt;br /&gt;
cd ~&lt;br /&gt;
git clone https://github.com/ceph/calamari.git&lt;br /&gt;
cd calimari&lt;br /&gt;
cd debian&lt;br /&gt;
mv source source.old&lt;br /&gt;
cd ..&lt;br /&gt;
dpkg-buildpackage&lt;br /&gt;
&lt;br /&gt;
Bu işlemlerden sonra bir alt dizinde aşağıdaki dosyalar oluşacak:&lt;br /&gt;
&lt;br /&gt;
calamari-server_1.0.0-1_amd64.deb calamari_1.0.0-1.tar.gz&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=203</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=203"/>
				<updated>2018-09-20T11:48:26Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)==&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
== 1 Adet Raid Denetleyici MR 9260-8i (İşletim Sistemi Disklerini RAID-1 yapılandırması için) == &lt;br /&gt;
== 1 Adet SAS Denetleyicisi (12 Adet Depolama disklerinin yapılandırması için)==&lt;br /&gt;
  product: SAS3008 PCI-Express Fusion-MPT SAS-3&lt;br /&gt;
  vendor: LSI Logic / Symbios Logic&lt;br /&gt;
&lt;br /&gt;
== 12 Adet 8TByte NLSAS Disk ==&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
&lt;br /&gt;
==2 Adet 120G SSD Disk (İşletim Sistemi Kurlumu için)==&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;br /&gt;
== 1 Adet 2 Portlu  Intel X520 Ethernet Kartı (SFP+) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet 10G 2P X520 Adapter&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
== 2 Adet 10G Intel X540 On Board Ethernet  Portu (10GBase-T) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet Controller 10-Gigabit X540-AT2&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
==1 Adet 2 Portlu Mellanox ConnectX4 40GbpsEthernet Kartı==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: MT27700 Family [ConnectX-4]&lt;br /&gt;
 vendor: Mellanox Technologies&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=202</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=202"/>
				<updated>2018-09-20T11:47:36Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)==&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
== 1 Adet Raid Denetleyici MR 9260-8i (İşletim Sistemi Disklerini RAID-1 yapılandırması için) == &lt;br /&gt;
== 1 Adet SAS Denetleyicisi  SAS3008 HBA (12 Adet Depolama disklerinin yapılandırması için)==&lt;br /&gt;
== 12 Adet 8TByte NLSAS Disk ==&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
&lt;br /&gt;
==2 Adet 120G SSD Disk (İşletim Sistemi Kurlumu için)==&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;br /&gt;
== 1 Adet 2 Portlu  Intel X520 Ethernet Kartı (SFP+) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet 10G 2P X520 Adapter&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
== 2 Adet 10G Intel X540 On Board Ethernet  Portu (10GBase-T) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet Controller 10-Gigabit X540-AT2&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
==1 Adet 2 Portlu Mellanox ConnectX4 40GbpsEthernet Kartı==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: MT27700 Family [ConnectX-4]&lt;br /&gt;
 vendor: Mellanox Technologies&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=201</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=201"/>
				<updated>2018-09-20T11:44:53Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)==&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
== 12 Adet 8TByte NLSAS Disk ==&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
&lt;br /&gt;
==2 Adet 120G SSD Disk (İşletim Sistemi Kurlumu için)==&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;br /&gt;
== 1 Adet 2 Portlu  Intel X520 Ethernet Kartı (SFP+) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet 10G 2P X520 Adapter&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
== 2 Adet 10G Intel X540 On Board Ethernet  Portu (10GBase-T) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet Controller 10-Gigabit X540-AT2&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
==1 Adet 2 Portlu Mellanox ConnectX4 40GbpsEthernet Kartı==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: MT27700 Family [ConnectX-4]&lt;br /&gt;
 vendor: Mellanox Technologies&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=200</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=200"/>
				<updated>2018-09-20T11:41:09Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* 1 Adet 2 Portlu Mellanox ConnectX4 40Gpsd Ethernet Kartı */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)==&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
== 12 Adet 8TByte NLSAS Disk ==&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;br /&gt;
== 1 Adet 2 Portlu  Intel X520 Ethernet Kartı (SFP+) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet 10G 2P X520 Adapter&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
== 2 Adet 10G Intel X540 On Board Ethernet  Portu (10GBase-T) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet Controller 10-Gigabit X540-AT2&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
==1 Adet 2 Portlu Mellanox ConnectX4 40GbpsEthernet Kartı==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: MT27700 Family [ConnectX-4]&lt;br /&gt;
 vendor: Mellanox Technologies&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=199</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=199"/>
				<updated>2018-09-20T11:40:55Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* 2 Adet 10G Intel X540 Etehernet Portu (10GBase-T) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)==&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
== 12 Adet 8TByte NLSAS Disk ==&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;br /&gt;
== 1 Adet 2 Portlu  Intel X520 Ethernet Kartı (SFP+) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet 10G 2P X520 Adapter&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
== 2 Adet 10G Intel X540 On Board Ethernet  Portu (10GBase-T) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet Controller 10-Gigabit X540-AT2&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
==1 Adet 2 Portlu Mellanox ConnectX4 40Gpsd Ethernet Kartı==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: MT27700 Family [ConnectX-4]&lt;br /&gt;
 vendor: Mellanox Technologies&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=198</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=198"/>
				<updated>2018-09-20T11:40:36Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* 2 Portlu  Intel X520 Ethernet Kartı (SFP+) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)==&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
== 12 Adet 8TByte NLSAS Disk ==&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;br /&gt;
== 1 Adet 2 Portlu  Intel X520 Ethernet Kartı (SFP+) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet 10G 2P X520 Adapter&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
&lt;br /&gt;
== 2 Adet 10G Intel X540 Etehernet Portu (10GBase-T) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet Controller 10-Gigabit X540-AT2&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
==1 Adet 2 Portlu Mellanox ConnectX4 40Gpsd Ethernet Kartı==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: MT27700 Family [ConnectX-4]&lt;br /&gt;
 vendor: Mellanox Technologies&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=197</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=197"/>
				<updated>2018-09-20T11:40:24Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* NLSAS Disk (12 Adet 8TByte) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)==&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
== 12 Adet 8TByte NLSAS Disk ==&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;br /&gt;
==2 Portlu  Intel X520 Ethernet Kartı (SFP+) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet 10G 2P X520 Adapter&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
== 2 Adet 10G Intel X540 Etehernet Portu (10GBase-T) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet Controller 10-Gigabit X540-AT2&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
==1 Adet 2 Portlu Mellanox ConnectX4 40Gpsd Ethernet Kartı==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: MT27700 Family [ConnectX-4]&lt;br /&gt;
 vendor: Mellanox Technologies&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=196</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=196"/>
				<updated>2018-09-20T11:39:50Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)==&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
==NLSAS Disk (12 Adet 8TByte)==&lt;br /&gt;
&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;br /&gt;
==2 Portlu  Intel X520 Ethernet Kartı (SFP+) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet 10G 2P X520 Adapter&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
== 2 Adet 10G Intel X540 Etehernet Portu (10GBase-T) ==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: Ethernet Controller 10-Gigabit X540-AT2&lt;br /&gt;
 vendor: Intel Corporation&lt;br /&gt;
==1 Adet 2 Portlu Mellanox ConnectX4 40Gpsd Ethernet Kartı==&lt;br /&gt;
 description: Ethernet interface&lt;br /&gt;
 product: MT27700 Family [ConnectX-4]&lt;br /&gt;
 vendor: Mellanox Technologies&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=195</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=195"/>
				<updated>2018-09-20T11:31:40Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)==&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
==NLSAS Disk (12 Adet 8TByte)==&lt;br /&gt;
&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=194</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=194"/>
				<updated>2018-09-20T11:31:26Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* Sunucular */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
==2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci==&lt;br /&gt;
==Bellek (128G)&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
==NLSAS Disk (12 Adet 8TByte)==&lt;br /&gt;
&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=193</id>
		<title>Donanım Altyapısı</title>
		<link rel="alternate" type="text/html" href="http://bulutwiki.ulakbim.gov.tr/index.php?title=Donan%C4%B1m_Altyap%C4%B1s%C4%B1&amp;diff=193"/>
				<updated>2018-09-20T11:30:51Z</updated>
		
		<summary type="html">&lt;p&gt;Admin: /* Sunucular */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sunucular=&lt;br /&gt;
2 adet Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz İşlemci&lt;br /&gt;
==Bellek (128G)&lt;br /&gt;
 RAM: 131920300&lt;br /&gt;
       vendor: American Megatrends Inc.&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
          product: HMA84GR7AFR4N-UH&lt;br /&gt;
          vendor: SK Hynix&lt;br /&gt;
          size: 31GiB&lt;br /&gt;
          clock: 2400MHz (0.4ns)&lt;br /&gt;
==NLSAS Disk (12 Adet 8TByte)==&lt;br /&gt;
&lt;br /&gt;
 Product:              ST8000NM0075&lt;br /&gt;
 Revision:             E003&lt;br /&gt;
==NVMe Disk (1 Adet 400G Intel PC3700)==&lt;br /&gt;
  Node             SN                   Model                                    Namespace Usage                      Format           FW Rev  &lt;br /&gt;
 ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------&lt;br /&gt;
 /dev/nvme0n1     CVFT738300PT400BGN   INTEL SSDPEDMD400G4                      1         400.09  GB / 400.09  GB    512   B +  0 B   8DV10171&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>