API Kılavuzu. Çıktı örnekli ve kodlu API isteklerinin kapsamlı tanımı.



Benzer belgeler
1. Kılavuz Hakkında Cloudturk e Genel Bakış Gösterge Panosu Kullanıcı Profili API Anahtarı...6

Cisco 881 Router ve AirLink ES4X0, WAN Failover Tanımı

vsphere Client(viClient) ile ESXI Kontrolü


Disk tabanlı bir çözümdür ve bu yapısından dolayı kullanılması kolaydır. Ayrıca hızlı bir şekilde yedekleme ve geri dönüş sağlar.

DHCP kurulumu için Client/Server mimarisine sahip bir ağ ortamı olmalıdır ki bu da ortamda bir Domain Controller olmasını zorunlu kılar.

Kolay Kurulum Kılavuzu

SERVİS MENÜSÜ KULLANIM REHBERİ

Interact API v2.0 Belge sürümü : 2.0.0

FreeBSD Üzerinde VLAN Kullanımı

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2

Windows Şablon Oluşturma Kılavuzu. Cloudturk içerisinde dağıtmak üzere Windows SM şablonlarınızı oluşturma rehberi.

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2. İçerik. IP ICMP MAC Tracert

EFT-POS ÖZELLİKLİ MALİ YAZAR KASA CİHAZ EŞLEŞTİRME İŞLEM AKIŞLARI

SMS API. KobiKom Telekomunikasyon A.Ş. SMS API Kullanım Bilgilerini İçerir. Tel: Fax:

Lab7-Dinamik Yönlendirme ve RIP

%20dolor%20sit%20amet&receipents= , &sender=PROAKTIF

DRAYTEK VIGOR 3300V. Login(Oturum Açma)

TC KİMLİK NO SMS GÖNDERİM XML API

um%20dolor%20sit%20amet&receipents= , &sender=ILETICELL İstekte gönderilen parametrelerin açıklamaları aşağıdaki gibidir:

BuluthanPS Kurumsal Dosya Paylaşım Uygulaması

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı EKi Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU

Useroam Kurulum Rehberi

FreeBSD Üzerinde VLAN Kullanımı

HTTP/HTTPS API v2.0 Belge sürümü : 2.0.0

Global Haberleşme API Kullanıcı Notları

Free Cooling (Tibbo Ethernet Modüllü)

Hızlı Kurulum Kılavuzu

Đçindekiler. Paket Đçeriği

AntiKor Güvenlik Sunucumu nereye yerleştirmeliyim?

SAMURAİ FRAMEWORK İLE HACKİNG-1 (FOOTPRINTING)

Ağ Temelleri. Murat Ozdemir Ondokuz Mayıs Üniversitesi Bilgi İşlem Daire Başkanı 15 Ocak Ref: HNet.23

Tel : 0(532) Web : E-Posta : info@kayikcioglugrup.com. İLETİ PAKETİ API (Entegrason) Dökümanı

FortiMail Gateway Modunda Kurulum. v4.00-build /08

2332 NX4RT 4 KANAL TRIPLEX NETWORK DVR CİHAZI KOLAY KURULUM KILAVUZU

Yönlendiriciler ve Yönlendirme Temelleri

Useroam Cloud Kurulum Rehberi

BİLGİ & İLETİŞİM TEKNOLOJİLERİ

5651 ve 5070 Sayılı Kanun Tanımlar Yükümlülükler ve Sorumluluklar Logix v2.3 Firewall. Rekare Bilgi Teknolojileri

Veri Tabanı-I 1.Hafta

MESS BULUT SİSTEMİ ÜYE PORTALI KULLANIM KILAVUZU

JAVA API v2.0 Belge sürümü: 2.0.2

PocketRest Kullanımı

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı EKi Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU

Useroam Sonicwall Kurulum Rehberi

Quedra L MON Log Yönetim ve Güvenli Kayıt Yazılımı

CELAL BAYAR ÜNİVERSİTESİ KÜTÜPHANE VERİTABANLARINA ÜNİVERSİTE DIŞINDAN ERİŞİM

ELEKTRONİK SAĞLIK KAYITLARI GÜVENLİĞİNDE IEEE 802.1x STANDARDININ KULLANILMASI

Computer and Network Security Cemalettin Kaya Güz Dönemi

Bilgisayar Programcılığı

Linux altında komut satırında...

Useroam Kurulum Rehberi

-Floating, Wan ve Lan arayüzleri için ayrı kural yazma alanı vardır.

Aktarımı Çalıştırmak/Geri Almak 146 Alan Seçenekleri 148 Veri Tabanı Şeması 150 Veri Tabanı ile İlgili Bazı Rake Görevleri 162 Modeller 164

PHP (II) Formlar. Dosya İşlemleri. 2002, Sanem SARIEL PHP Ders Notları 2 1. Formlar

CLR-232-ES RS232 - Seri Ethernet Çevirici

Belgenin yeni sürümlerine adresinden ulaşabilirsiniz.

INTERRA SIP SERVER KULLANIM KLAVUZU

Paloalto LDAP Yapılandırılması LDAP: Lightweight Directory Access Protocol DAP (Directory Access Protocol) API (Application Programming Interface)

Yeni Nesil Felaket Kurtarma Merkezi ve Buluta Geçiş. Ahmet TOPRAKÇI Ezgi CAN Hakan MARANGOZ

ĐZLEME(MONITORING) HĐZMETĐ

Google Cloud Print Kılavuzu

.com. Kurumsal Java. Özcan Acar com

Basit Bir Ofis PBX Sisteminin TekSIP ve TekIVR ile Oluşturulması

XML API. İçindekiler. Toplu SMS Sistemlerinde Güvenilir Çözüm Ortağınız 1. AMAÇ KULLANIM ŞEKLİ Genel Hata Kodları.

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması

YAYGIN OLARAK KULLANILAN ADSL MODEMLER VE ROUTER AYARLARI

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI

Firewall Log Server. Kurulum Kılavuzu

AĞ KULLANIM KILAVUZU. Yazdırma Günlüğünü Ağa Kaydetme. Sürüm 0 TUR

NicProxy Registrar WHMCS Modül Kurulumu Versiyon 1.0

Fibridge F9-120-xxx, F9-240-xxx, F9-480-xxx serisi PDH Multiplexer cihazlarının network yönetimi, web üzerinden olduğu

AKUVOX E10 KAPI ÖNÜ ZİL PANELİ KULLANICI KILAVUZU

.: Linux Kullanıcıları Derneği. III. Linux ve Özgür Yazılım Şenliği Mayıs Milli Kütüphane Ankara :.

KULLANIM KILAVUZU NFH-0115 VIP KONTROL SİSTEMLERİ HABERLEŞME ÜNİTESİ

300 BANT KABLOSUZ ERİŞİM NOKTASI YÖNLENDİRİCİ

Yazılım Tanımlı Ağlar Ders 2 Kontrol ve Veri Düzlemlerinin Ayrılması. Mehmet Demirci

Clonera Bütünleşik İş Sürekliliği Gereksinimler ve Kurulum Dökümanı

Bir port aynı anda bir process tarafından dinlenebilir. Fakat bir process birden fazla portu dinleyebilir.

Useroam Cloud Kurulum Rehberi Cyberoam

CHAPTER 3. ZAMANLANMIŞ GÖREVLER (Automated Tasks)

Exchange Server 2013 Kurulum Sonrası Yapılandırmalar

MODBUS GATEWAY KONFİGÜRASYON YAZILIMI

Gökhan AKIN İTÜ/BİDB Ağ Grubu Başkanı - ULAK/CSIRT

Kurumsal Güvenlik ve Web Filtreleme

FOUR FAİTH ROUTER LARDA IPSEC GÜVENLİ HABERLEŞME KILAVUZU

ANET YAZILIM LOG YÖNETİMİ. Karşılaştırma Tablosu ANET YAZILIM

Başlama Rehberi Resmi ResellerClub WHMCS Modülleri

Gökhan AKIN ĐTÜ/BĐDB Ağ Grubu Başkanı ULAK/CSIRT. Sınmaz KETENCĐ ĐTÜ/BĐDB Ağ Uzmanı

Sun Solaris Jumpstart Sistemi

Bacula Yedekleme Sistemi

AHTAPOT Merkezi Güvenlik Duvarı Yönetim Sistemi Kontrol Paneli

MOBILEPAX ENTERPRISE API (WEB SERVİS)

ANET YAZILIM LOG YÖNETİMİ. Karşılaştırma Tablosu ANET YAZILIM

Kurumsal Güvenlik ve Web Filtreleme

Bu dökümantasyon DomainNameAPI bayiliğinize ait alanadı işlemlerinizi, PHP ile API yi nasıl kullanmanız gerektiğini anlatmaktadır.

Sanal IPv6 Balküpü Ağı Altyapısı: KOVAN. Yavuz Gökırmak, Onur Bektaş, Murat Soysal, Serdar Yiğit

1 WINDOWS SERVER 2012 GENEL BAKIŞ 1 Giriş 1 Bu Kitapta 5 Çıkış Hikâyesi 6 Sürümler 7

Virtual Router Redundancy Protocol (VRRP)

Transkript:

APIKılavuzu ÇıktıörneklivekodluAPIisteklerininkapsamlıtanımı.

İçindekiler 1. Giriş... 4 1.1SıkçaSorulanSorular... 5 2. SM leriçingüvenlikduvarı... 5 2.1Güvenlikduvarıkuralarınınlistesinialma... 5 2.2Güvenlikduvarıkuralıdüzenleme... 6 2.3Güvenlikduvarıkuralıekleme... 7 2.4Güvenlikduvarıkuralısilme... 8 2.5Varsayılangüvenlikduvarıkuralıbelirleme... 9 3. Ağlar...10 3.1Ağlarınlistesinialma...10 3.2Ağdetaylarınıalma...11 3.3Ağıdüzenleme...11 3.4SMağınıyenidenkurma...12 3.5Ağekleme...13 3.6Ağsilme...13 4. AğArayüzleri...14 4.1SMağarayüzlerininlistesinialma...14 4.2Ağarayüzünündetaylarınıalma...15 4.3Ağarayüzünüdüzenleme...15 4.4SM yeağarayüzüekleme...16 4.5Ağarayüzüsilme...16 5. IPAdresleri...17 5.1AğIPadreslerininlistesinialma...17 6. IPadresekleme...18 6.1EklenenIPadreslerigörüntülemekiçin...19 6.2SM yeipadrestahsisetme...20 6.3SM denipadressilme...20 7. Diskler...21 7.1Disklerinlistesinialma...21 7.2SMdiklerininlistesinialma...22 7.3Yenidiskekleme...23 7.4Diskidüzenleme...24 7.5Disksilme...24 7.6IOPS(SaniyedekiGiriş/Çıkışİşlemleri)diskigörüntüleme...25 1

7.7Diskoluşturma...26 7.8Diskinkilidiniaçma...27 7.10Diskiçinotomatikyedeklemeyidevredışıbırakma...28 7.11Diskplanlamalistesinialma...28 7.12Diskeplanekleme...29 7.13Disktemevcutolanyedeklemelistesinial...30 8. Şablonlar...32 8.1Sistemşablonlarınınlistesinialma...32 9. SanalMakineler...34 9.1SM lerinlistesinialma...34 9.2SMdetaylarınıalma...37 9.3SMyaratma...37 9.4SMoluşturma...39 9.5SMdüzenleme...40 9.6Rootşifresinisıfırlama...41 9.7SSHanahtarıbelirleme...41 9.8SM yiimhaetme...42 9.9SM yiyenidenboyutlandırma...42 9.10SM ninkilidiniaçma...43 9.11SM yibaşlatma...43 9.12SM yikapatma...44 9.13SM yidurdurma...44 9.14SM yiyenidenbaşlatmakiçin...45 9.15Kurtarmadurumundayenidenbaşlatma...45 9.16SMkonsoluaçma...46 10. SMotomatikölçeklendirme...46 10.1SMiçinotomatikölçeklendirmekurallarılistesinialma...46 10.2SMiçinotomatikölçeklendirmekuralıyaratma...47 10.3SM ninotomatikölçeklendirmekuralınıdüzenleme...48 10.4Otomatikölçeklendirmekurallarınısilme...49 11. Yükdengeleyiciler...49 11.1Yükdengeleyicikümlerininlistesinialma...50 11.2Yükdenegeleyicikümesinidetaylarınıalma...54 11.3Yükdenegeleyicikümesiekleme...56 11.4Kümeürünedüğümekleme...59 2

11.5Kümetüründendüğümçıkarma...60 11.6Otomatikölçeklendirmetürünüyapılandırma...60 11.7Yükdengelemekümesisilme...61 11.8Yükdengeleyicilerinlistesinialma...62 11.9Yükdengeleyicidetaylarınıalma...64 11.10Yükdengeleyicidüzenleme...66 11.11Yükdengeleyicibaşlatma...66 11.12Yükdengeleyicidurdurma...67 11.13Yükdengeleyicikapatma...67 11.14Yükdengeleyicikilidiniaçma...68 11.15Yükdengeleyiciyiyenidenoluşturma...68 11.16Yükdengeleyiciyiaskıyaalma...69 11.17Yükdengeleyicininödemeistatistiklerinigörüntüleme...69 12. Yedeklemeler...74 12.1SMyedeklerininlistesinialma...74 12.2Diskinyedeğiniyaratma...75 12.3Yedeğişablonadönüştürme...76 12.4Yedeğiyenidenkurma...76 12.5Yedeğisilme...77 13. Otomatikyedeklemeyiöncedenayarlama...77 13.1Öncedenayarlanmışotomatikyedeklemelistesinialma...77 13.2Öncedenayarlanmışotomatikyedeklemedetaylarınıalma...79 13.3Öncedenayarlanmışotomatikyedeklemeyidüzenleme...79 14. Planlar...80 14.1Planlamalarınlistesinialma...80 14.2Planlamadetayınıalma...82 14.3Planlamayıdüzenleme...83 14.4Planlamasilme...84 15. İstatistikler...84 16. İşlemler...85 16.1SM niişlemlerininlistesinialma...85 17. Günlükler...87 17.1Günlüköğelerininkimliğinialma...87 3

1. Giriş APIaracılığıilebulutunuzunbütündurumunuyönetebilirsiniz. CloudturkAPI sirahattır. BütünişlevçağrılarıxmlveJSONisteklerineyanıtvermektedirler. Bütünişlevçağrılarıkimlikdoğrulamagerektirmektedir(TemelHTTPveAPIanahtarı). Temel HTTP kullanarak kimlik denetlemek için sadece kullanıcı adı/şifre kombinasyonunuzu kullanın.curlörneği: curl uuser:userpass API anahtarını kullanarak kimlik denetlemek için sunucuya hesap mailinizi(giriş yapmadan) ve anahtarıyükleyin. XMLörneği curl uuser:userpass H'Accept:application/xml' H'Content type:application/xml' http://cp.cloudturk.net/virtual_machines.xml Jsonörneği curl udemouser@cp.cloudturk.net:88c3d9ecfa2de8497e038cb5a1a5e2ce62ba0e755 H 'Accept: application/json' H'Content type:application/json'http://cp.cloudturk.net/users.json Tümörneklerde: user:userpass kullanıcıadı:şifrekombinasyonuanlamınagelmektedir. cp.cloudturk.net KontrolPaneli nizinbulunduğuadresitemsiletmektedir. Zorunlu parametreler kılavuzda yıldız (*) ile belirtilmiştir. Opsiyonel parametreler isteğe bağlı olduğuiçinatlanabilir. API,heristekiçinuygunbirHTTPdurumkodudönmektedir: 200OKİstekbaşarıylatamalandı. 201Planlanmış(Scheduled)İstekkabuledildiveişlenmesiiçinplanlandı. 403Yasaklanmış(Forbidden)İstekdoğru;fakatişlemetabitutulamadı. 404Bulunamadı(NotFound)İstenilenURLyanlışveyakaynakyok. 4

422İşlenemezVarlık(UnprocessableEntity)Gönderilenparametrelerhatalı. 500İçSunucuHatası(InternalServerError)Birhataoluştu.Lütfendestekileiletişimegeçin. 1.1SıkçaSorulanSorular S:HttpüzerindenAPIerişimisağlamakmümkünmü? C:Hayır.Güvenliknedenlerindendolayısizleresadecehttpsüzerindenerişimsağlıyoruzvesize debunutavsiyeediyoruz. S:Şifrelernasılsaklanıyor düzmetinolarakmı? C: Hayır, şifreler düz metin olarak saklanmaz. Bir giriş ve şifre kombinasyonu dışında, API ile girişinizi yetkilendirmek için email + API anahtarı kombinasyonunu kullanabilirsiniz. API anahtarları profiliniz sayfasından kolayca oluşturulabilir ve değiştirilebilir. Güvenlik sebebiyle kullanılıcılaradoğrulamayıgirişveşifreiledeğil,apianahatarıyoluylayapmalarınıtavsiyeederiz. S:Hangiparametrelerzorunluhangileriopsiyoneldir? C:Zorunluparametrelerkılavuzdayıldızlı(*)olarakbelirtilmiştir. 2. SM leriçingüvenlikduvarı Güvenlikduvarıkuralları,bulutunuzdakiSM lerinağarayüzelerinegelenyetkisizveistenmeyen taleplereengelolmakiçinuygulanmaktadır.güvenlikduvarınızıkabul/kesistektürlerişeklinde yapılandırabilirsiniz.bütünyöntemlerbusınıfiçinuygundur. 2.1Güvenlikduvarıkuralarınınlistesinialma SM yeatanangüvenlikduvarıkurallarınılistelemekiçinaşağıdakiistekkullanılmalıdır: GET/virtual_machines/:virtual_machine_id/firewall_rules.xml GET/virtual_machines/:virtual_machine_id/firewall_rules.json 5

<?xmlversion="1.0"encoding="utf 8"?> <firewall_rules> <firewall_rule> <position>1</position> <address></address> <created_at>2011 04 20T12:52:10+03:00</created_at> <command>accept</command> <updated_at>2011 04 20T12:52:10+03:00</updated_at> <port>21</port> <protocol>tcp</protocol> <id>1</id> <network_interface_id>5</network_interface_id> </firewall_rule> </firewall_rules> Burada: position kuralönceliği address kuralınaktifolacağıipadres.eğerhiçbiripbelirtilmezse,bütünip lerbukuralatabi olacaktır. created_at kaydınveritabanındaoluşturulduğutarih command address parametresitarafındanbelirlenenipilegerçekleştirilecekolaneylem updated_at kaydınveritabanındagüncellendiğitarih port bukuralınaktifolduğuport.eğeralanboşise,kuralbütünportlarauygulanacaktır. protocol bukuralınaktifolduğubiripprotokolü(tcpveyaudp) id bukaydınkimliği network_interface_id bukuralınuygulanacağıağarayüzününkimliği 2.2Güvenlikduvarıkuralıdüzenleme Güvenlikduvarıkurallınıdüzenlemekiçinaşağıdakiistekkullanılmalıdır: PUT/virtual_machines/:virtual_machine_id/firewall_rules/:id.xml PUT/virtual_machines/:virtual_machine_id/firewall_rules/:id.json XMLİstekörneği 6

curl i XPUT H'Accept:application/xml' H'Content type:application/xml' u user:userpass d '<firewall_rule><address>192.168.128.133</address><command>accept</command><port> 70</p ort><protocol>tcp</protocol><network_interface_id>105</network_interface_id></firewall _rule>'http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/firewall_rules/:id JSONİstekörneği curl i XPUT H'Accept:application/json' H'Content type:application/json' u user:userpass d '{"firewall_rule":{"address":"192.168.128.133","command":"accept","port":"70","protoco l":"tcp","network_interface_id":"105"}}' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/firewall_rules/:id.json Aşağıdakiparametreleridüzenleyebilirsiniz: address BukuralınaktifolduğuIPadresinibelirleyin BukuralıbütünIP lereuygulamakiçinboşalanbırakın KuralıbirIParalığınauygulamakiçintireileayrılmışIP lergirin(örn:192.168.1.1 192.168.1.10) Kuralı CIDR e (Sınıfsız alanlar arası yönlendirme) uygulamak için eğik çizgili IP ler girin (örn: 192.168.1.1/24) command yukarıdabelirtilenip lerinkabuletveyakeskomutunubelirler port portadresinibelirler Bukuralıbütünportlarauygulamakiçinboşalanbırakın Kuralıbirportaralığınauygulamakiçinikinoktaileayrılmışportlarıgirin(örn:1024:1028) Kuralıbirportlistesineuygulamakiçinvirgülileayrılmışportlarıgirin(örn:80,443,21) protocol protokoltipi(tcporudp) network_interface_id ağarayüzü 2.3Güvenlikduvarıkuralıekleme Güvenlikduvarıkuralıeklemekiçinaşağıdakiistekkullanılmalıdır: POST/virtual_machines/:virtual_machine_id/firewall_rules.xml POST/virtual_machines/:virtual_machine_id/firewall_rules.json XMLİstekörneği 7

curl i XPOST H'Accept:application/xml' H'Content type:application/xml' u user:userpass d'<?xmlversion="1.0"encoding="utf 8"?><firewall_rule><address></address><command>DROP</command><port></port><proto col>tc P</protocol><network_interface_id>105</network_interface_id></firewall_rule>' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/firewall_rules.xml JSONİstekörneği curl i XPOST H'Accept:application/json' H'Content type:application/json' u user:userpass d '{"firewall_rule":{"command":"drop","protocol":"tcp","network_interface_id":"105"}}' urlhttp://cp.cloudturk.net/virtual_machines/:virtual_machine_id/firewall_rules.json Aşağıdakiparametrelerigönderin: address BukuralınaktifolduğuIPadresinibelirleyin. BukuralıbütünIP lereuygulamakiçinboşalanbırakın KuralıbirIParalığınauygulamakiçintireileayrılmışIP lergirin(örn:192.168.1.1 192.168.1.10) Kuralı CIDR e (Sınıfsız alanlar arası yönlendirme) uygulamak için eğik çizgili IP ler girin (örn: 192.168.1.1/24) command* yukarıdabelirtilenip lerinkabuletveyakeskomutunubelirler port portadresinibelirler Bukuralıbütünportlarauygulamakiçinboşalanbırakın Kuralıbirportaralığınauygulamakiçinikinoktaileayrılmışportlarıgirin(örn:1024:1028) Kuralıbirportlistesineuygulamakiçinvirgülileayrılmışportlarıgirin(örn:80,443,21) protocol* protokoltipi(tcporudp) network_interface_id* ağarayüzü 2.4Güvenlikduvarıkuralısilme Güvenlikduvarıkuralınısilmekiçinaşağıdakiistekkullanılmalıdır: DELETE/virtual_machines/:virtual_machine_id/firewall_rules/:id.xml DELETE/virtual_machines/:virtual_machine_id/firewall_rules/:id.json XMLİstekörneği curl i XDELETE H'Accept:application/xml' H'Content type:application/xml' u user:userpass url 8

http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/firewall_rules/:id.xml JSONİstekörneği curl i XDELETE H'Accept:application/json' H'Content type:application/json' u user:userpass url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/firewall_rules/:id.json 2.5Varsayılangüvenlikduvarıkuralıbelirleme SM yevarsayılangüvenlikduvarıkurallarınıayarlamakiçin(kesveyakabuletolarak),sm nin kullandığıherbirağarayüzünekuralıbelirtmenizgerekmektedir.bunuyapmakiçin,ağarayüzü kimliğinikontroledinveaşağıdakiisteğiuygulayın: POST/virtual_machines/:virtual_machine_id/network_interfaces/:id.xml POST/virtual_machines/:virtual_machine_id/network_interfaces/:id.json XMLİstekörneği curl i XPUT uuser:userpass H'Accept:application/xml' H'Content type: application/xml' d '<network_interface><default_firewall_rule>accept</default_firewall_rule></network_int erface>' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/network_interfaces/:network _int erface_id.xml JSONİstekörneği curl i XPUT uuser:userpass H'Accept:application/json' H'Content type: application/json' d'{"network_interface":{"default_firewall_rule":"drop"}}' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/network_interfaces/:network _int erface_id.json Burada: default_firewall_rule* belirlibirsmağarayüzünevarsayılangüvenlikduvarıkurallarınıayarlar KESveyaKABULETolarak 9

3. Ağlar Bu sınıf, Ağ yapılandırılmalarının değiştirilmesine imkân tanır. Bütün buluttaki ağ kaynakları, sistem Kontrol Paneli nden veya API aracılığıyla yapılandırılabilir. Belirli ağ kaynakları manuel olarakveyasmyaratılmasıesnasındaotomatikolarakdüzenlenebilir. 3.1Ağlarınlistesinialma GET/settings/networks.xml GET/settings/networks.json XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <networkstype="array"> <network> <label>publicnetwork</label> <created_attype="datetime">2011 02 11T12:46:09+02:00</created_at> <network_group_idtype="integer">3</network_group_id> <updated_attype="datetime">2011 02 11T13:20:09+02:00</updated_at> <idtype="integer">1</id> <vlantype="integer"nil="true"/> <identifier>4ikgi2ges03kma</identifier> </network> </networks> Burada: created_at [YYYY][AA][GG]T[ss][dd][ss]Zformatındatarih Id ağ Label isteğebağlıağetiketi updated_at [YYYY][AA][GG]T[ss][dd][ss]Zformatındaağıngüncellendiğitarih Vlan buağınaitolduğuvlan network_group_id buağınbağlıolduğuağbölgesininkimliği 10

3.2Ağdetaylarınıalma GET/settings/networks/:id.xml GET/settings.networks/:id.json XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <network> <label>public</label> <created_attype="datetime">2010 10 28T19:55:40+07:00</created_at> <updated_attype="datetime">2010 12 29T22:31:15+07:00</updated_at> <network_group_idtype="integer">2</network_group_id> <vlantype="integer">391</vlan> <idtype="integer">1</id> <identifier>hc9fut4iogxt7p</identifier> </network> Burada: label isteğebağlıağetiketi created_at [YYYY][AA][GG]T[ss][dd][ss]Zformatındatarih updated_at [YYYY][AA][GG]T[ss][dd][ss]Zformatındaağıngüncellendiğitarih network_group_id buağınbağlıolduğuağbölgesininkimliği id ağ vlan buağınaitolduğuvlan identifier ağtanımlayıcısı 3.3Ağıdüzenleme PUT/settings/networks/:id.xml PUT/settings/networks/:id.json XMLİstekörneği 11

curl i XPUT uuser:userpass H'Accept:application/xml' H'Content type: application/xml' d'<network><label>networkapi test</label><network_group_id>3</network_group_id><vlan>1</vlan></network>' url http://cp.cloudturk.net/settings/networks/:id.xml JSONİstekörneği curl i XPUT uuser:userpass H'Accept:application/json' H'Content type: application/json' d'{"network":{"label":"networkapi TEST","network_group_id":15,"vlan":2}}' url http://cp.cloudturk.net/settings/networks/:id.json Parametreler: id ağkimliği label ağismi vlan buağınaitolduğuvlan network_group_id buağınbağlıolduğuağbölgesininkimliği 3.4SMağınıyenidenkurma BelirlibirSM ninağınıyenidenkurmakiçinaşağıdakiistekkullanılmalıdır: POST/virtual_machines/:virtual_machine_id/rebuild_network.xml POST/virtual_machines/:virtual_machine_id/rebuild_network.json XMLİstekörneği curl XPOST uuser:userpass http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/rebuild_network.xml H 'Accept: application/xml' H'Content type:application/xml' JSONİstekörneği curl XPOST uuser:userpass http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/rebuild_network.json H 'Accept:application/json' H'Content type:application/json' 12

3.5Ağekleme POST/settings/networks.xml POST/settings/networks.json XMLİstekörneği curl i XPOST uuser:userpass H'Accept:application/xml' H'Content type: application/xml' d'<network><label>networkapitest 34</label><network_group_id>15</network_group_id><vlan>34</vlan></network>' url http://cp.cloudturk.net/settings/networks.xml JSONİstekörneği curl i XPOST uuser:userpass H'Accept:application/json' H'Content type: application/json' d'{"network":{"label":"networkapitest 2","network_group_id":3,"vlan":true}}' urlhttp://cp.cloudturk.net/settings/networks.json Parametreler: label* ağismi vlan buağınaitolduğuvlan network_group_id buağınbağlıolduğuağbölgesininkimliği 3.6Ağsilme DELETE/settings/networks/:id.xml DELETE/settings/networks/:id.json XMLİstekörneği curl i XDELETE uuser:userpass urlhttp://cp.cloudturk.net/settings/networks/:id.xml JSONİstekörneği curl i XDELETE uuser:userpass urlhttp://cp.cloudturk.net/settings/networks/:id.json 13

4. AğArayüzleri Bu sınıf, Ağ Arayüzlerini yönetmek için gerekli metodları anlatır. Ağ arayüzleri SM lere ağlarla bağladır.sm yebirdenfarklıağarayüzleriatayabilirsiniz. 4.1SMağarayüzlerininlistesinialma BelirlibirSM yetahsisedilenağarayüzlerininlistesinialmakiçin: GET/virtual_machines/:virtual_machine_id/network_interfaces.xml GET/virtual_machines/:virtual_machine_id/network_interfaces.json Çıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <network_interfacestype="array"> <network_interface> <label>eth0</label> <usagenil="true"></usage> <created_attype="datetime">2011 03 18T17:45:07+07:00</created_at> <updated_attype="datetime">2011 04 08T18:57:20+07:00</updated_at> <primarytype="boolean">true</primary> <usage_month_rolled_atnil="true"></usage_month_rolled_at> <idtype="integer">502</id> <mac_address>00:16:3e:50:35:52</mac_address> <usage_last_reset_atnil="true"></usage_last_reset_at> <default_firewall_rule>drop</default_firewall_rule> <rate_limittype="integer">0</rate_limit> <virtual_machine_idtype="integer">518</virtual_machine_id> <network_join_idtype="integer">4</network_join_id> <identifier>pdfjrtpkday9e1</identifier> </network_interface>... <network_interface></network_interface>... </network_interfaces> Burada: label ağarayüzüismi created_at veritabanındakibuağarayüzününyaratıldığıtarihbilgisi 14

updated_at veritabanındakibuağarayüzününgüncellendiğitarihbilgisi primary eğerağarayüzübirincilisedoğru,değilseyanlışolarakbelirler id ağarayüzününkimliği mac_address ağarayüzümacadresi rate_limit Mbpscinsindenporthızı identifier ağarayüzününveritabanındakitanımlayıcısı network_join_id buağınbağlıolduğuağarayüzününkimliği virtual_machine_id buağarayüzünebağlıolansanalmakineninkimliği 4.2Ağarayüzünündetaylarınıalma Belirliağarayüzünündetaylarıalmakiçin: GET/virtual_machines/:virtual_machine_id/network_interfaces/:id.xml GET/virtual_machines/:virtual_machine_id/network_interfaces/:id.json Buistek,birağarayüzünündetaylarınıverir.Alanlarınınaçıklaması, SMağarayüzlerininlistesini alma metodlarınınalanlarıylaaynıdır. 4.3Ağarayüzünüdüzenleme Ağarayüzünüdüzenlemekiçin: PUT/virtual_machines/:virtual_machine_id/network_interfaces/:id.xml PUT/virtual_machines/:virtual_machine_id/network_interfaces/:id.json XMLİstekörneği curl i XPUT uuser:userpass H'Accept:application/xml' H'Content type: application/xml' d '<network_interface><label>eth0(test)</label><rate_limit>64</rate_limit><primary>true< /primary></network_interface>' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/network_interfaces/:id.xml JSONİstekörneği curl i XPUT uuser:userpass H'Accept:application/json' H'Content type: 15

application/json' d'{"network_interface":{"label":"eth0(test 2)","rate_limit":"32","primary":"false"}}' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/network_interfaces/:id.json rate_limitvelabelparametrelerinideğiştirebilirsiniz. 4.4SM yeağarayüzüekleme Ağarayüzüeklemekiçin: POST/virtual_machines/:virtual_machine_id/network_interfaces.xml POST/virtual_machines/:virtual_machine_id/network_interfaces.json XMLİstekörneği curl i XPOST uuser:userpass H'Accept:application/xml' H'Content type: application/xml' d '<network_interface><label>qwert</label><rate_limit>64</rate_limit><network_join_id>3< /network_join_id></network_interface>' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/network_interfaces.xml JSONİstekörneği curl i XPOST uuser:userpass H'Accept:application/json' H'Content type: application/json' d '{"network_interface":{"label":"qwert","rate_limit":"64","network_join_id":"3"}}' urlhttp://cp.cloudturk.net/virtual_machines/:virtual_machine_id/network_interfaces.json Burada: label* eklemekistediğinizbirağarayüzüetiketiverir rate_limit* eklemekistediğinizbirağarayüzününporthızınıbelirler network_join_id* buağarayüzünübağlamakiçinkullananfizikselağınkimliğiniayarlar primary* eğerarayüzbirincilse1,değilseyanlışolarakbelirler 4.5Ağarayüzüsilme Sanalmakinedenağarayüzüsilmekiçin: 16

DELETE/virtual_machines/:virtual_machine_id/network_interfaces/:id.xml DELETE/virtual_machines/:virtual_machine_id/network_interfaces/:id.json XMLİstekörneği curl i XDELETE uuser:userpass url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/network_interfaces/:id.xml JSONİstekörneği curl i XDELETE uuser:userpass url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/network_interfaces/:id.json Eğer ağ arayüzü silinirse, HTTP 200 yanıtını döner ya da belirtilen kimlikli ağ arayüzü bulunamazsaveyaistenilenurlyanlışise,http404yanıtınıdöner. 5. IPAdresleri Bu sınıf, bulutunuzdaki bütün IP adreslerini yansıtmaktadır. Aşağıdaki metodları kullanarak bulutunuzdakiipadresleridüzenleyebilir,yeniipyaratabilirvevarolanısilebilirsiniz. 5.1AğIPadreslerininlistesinialma GET/settings/networks/:network_id/ip_addresses.xml GET/settings/networks/:network_id/ip_addresses.json XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <ip_addressestype="array"> <ip_address> <netmask>255.255.255.240</netmask> <disallowed_primarytype="boolean">true</disallowed_primary> <address>83.170.81.179</address> <created_attype="datetime">2010 10 28T19:56:50+07:00</created_at> 17

<updated_attype="datetime">2011 05 17T17:53:23+07:00</updated_at> <network_idtype="integer">1</network_id> <network_address>83.170.81.176</network_address> <broadcast>83.170.81.191</broadcast> <idtype="integer">2</id> <gateway>83.170.81.177</gateway> <freetype="boolean">false</free> </ip_address>... <ip_address></ip_address>... </ip_addresses> Burada: ip_addresses seçilenağdakiipadresleriilebirdizi netmask IPadresiçinağmaskesi disallowed_primary birincilolarakkullanılmasınaizinverilmemişsedoğru(smoluşturmakiçin), değilseyanlış address IPadres created_at [YYYY][AA][GG]T[ss][dd][ss]Zformatındatarih updated_at [YYYY][AA][GG]T[ss][dd][ss]Zformatındaağıngüncellendiğitarih network_id ağkimliği network_address ağadresi broadcast yayınadresi id IPadreskimliği gateway ağgeçidiadresi free eğerserbestisedoğru,değilseyanlış 6. IPadresekleme IPadresekleme,SM yeipadrestahsisetmedir.bulutunuzdakiipadreslerigörüntülemek,tahsis etmekvesilmekiçinaşağıdakimetodlarıkullanın. 18

6.1EklenenIPadreslerigörüntülemekiçin BelirlibirSM yetahsisedilenipadreslerininlistesinialmakiçin: GET/virtual_machines/:virtual_machine_id/ip_addresses.xml GET/virtual_machines/:virtual_machine_id/ip_addresses.json IPadresleribirdizidöner: <?xmlversion="1.0"encoding="utf 8"?> <ip_address_joinstype="array"> <ip_address_join> <ip_address_idtype="integer">5</ip_address_id> <created_attype="datetime">2011 07 19T12:29:10Z</created_at> <updated_attype="datetime">2011 07 19T12:29:10Z</updated_at> <ip_address> <netmask>255.255.255.240</netmask> <disallowed_primarytype="boolean">false</disallowed_primary> <address>109.123.105.182</address> <created_attype="datetime">2011 07 14T15:43:09Z</created_at> <updated_attype="datetime">2011 07 14T15:43:09Z</updated_at> <network_idtype="integer">1</network_id> <network_address>109.123.105.176</network_address> <broadcast>109.123.105.191</broadcast> <idtype="integer">5</id> <freetype="boolean">false</free> <gateway>109.123.105.177</gateway> </ip_address> <idtype="integer">46</id> <network_interface_idtype="integer">34</network_interface_id> </ip_address_join> </ip_address_joins> Burada: ip_address_joins SM yeatananbütünipadreslerinindizini ip_address_id IPadreskimliği created_at veritabanındakibukaydınyaratıldığıtarihbilgisi updated_at veritabanındakibukaydıngüncellendiğitarihbilgisi ip_address SM yeatananipadresdizini(detaylıbilgiiçinağipadreslerininlistesinialma bölümünebakın) 19

id eklenenipadresininkimliği network_interface_id IPadresineatanmasıgerekenağarayüzününkimliği 6.2SM yeipadrestahsisetme SanalmakineyeIPadrestahsisetmekiçinaşağıdakisınıflarıkullanın: POST/virtual_machines/:virtual_machine_id/ip_addresses.xml POST/virtual_machines/:virtual_machine_id/ip_addresses.json XMLİstekörneği curl i XPOST H'Accept:application/xml' H'Content type:application/xml' u user:userpass d '<ip_address_join><ip_address_id>13</ip_address_id><network_interface_id>84</network_i nterface_id></ip_address_join>' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/ip_addresses.xml JSONİstekörneği curl i XPOST H'Accept:application/json' H'Content type:application/json' u user:userpass d '{"ip_address_join":{"ip_address_id":"13","network_interface_id":"84"}}' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/ip_addresses.json Burada: ip_address_id*sm yeeklemekistediğinizip ninkimliğinigirin network_interface_id*ipadresinetahsisedilecekolanağarayüzününkimliğinibelirleyin 6.3SM denipadressilme BelirlisanalmakineyeatanmışolanIPadresisilmekiçin: DELETE/virtual_machines/:virtual_machine_id/ip_addresses/:id.xml DELETE/virtual_machines/:virtual_machine_id/ip_addresses/:id.json 20

XMLİstekörneği curl i XDELETE uuser:userpass url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/ip_addresses/:id.xml JSONİstekörneği curl i XDELETE uuser:userpass url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/ip_addresses/:id.json 7. Diskler Diskler,sanalmakineverileriiçinalansağlar.Disk,belirlisanalmakineyetahsisedilenveri depolamanınbirbölümüdür.bütüncrud(yaratma,okuma,güncellemevesilme)işlemleri diskleriçinuygundur. 7.1Disklerinlistesinialma GET/settings/disks.xml GET/settings/disks.json XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <diskstype="array"> <disk> <has_autobackupstype="boolean">false</has_autobackups> <created_attype="datetime">2011 07 19T12:29:10Z</created_at> <updated_attype="datetime">2011 07 19T12:34:46Z</updated_at> <disk_sizetype="integer">5</disk_size> <add_to_linux_fstabnil="true"></add_to_linux_fstab> <primarytype="boolean">true</primary> <idtype="integer">64</id> <data_store_idtype="integer">1</data_store_id> <mount_pointnil="true"></mount_point> <is_swaptype="boolean">false</is_swap> <disk_vm_numbertype="integer">1</disk_vm_number> <virtual_machine_idtype="integer">34</virtual_machine_id> 21

<identifier>c719u80sv5mwdi</identifier> <lockedtype="boolean">false</locked> <builttype="boolean">true</built> </disk>... <disk></disk>... </disks> Burada: created_at [YYYY][MM][DD]T[hh][mm][ss]Zformatındadiskinyaratıldığıtarih disk size diskboyutu updated_at [YYYY][MM][DD]T[hh][mm][ss]Zformatındadiskingüncellendiğitarih primary diskbirincilisedoğru,değilseyanlış data_store_id diskinkonumlandığıveridepolamakimliği Id thediskid disk_vm_number diskkullanansanalmakinelerinsayısı is_swap eğertakas(swap)diskisedoğru,değilseyanlış virtual_machine_id budiskikullanansanalmakinelerinkimliği built diskoluşursadoğru,oluşmazsayanlış locked diskkilitliysedoğru,değilseyanlış has_autobackups diskinotomatikyedeklemekurulumuvarsadoğru,yoksayanlış 7.2SMdiklerininlistesinialma BelirlibirSM nindisklerininlistesinialmakiçin: GET/virtual_machines/:virtual_machine_id/disks.xml GET/virtual_machines/:virtual_machine_id/disks.json XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <diskstype="array"> <disk> <created_attype="datetime">2011 07 19T12:29:10Z</created_at> <updated_attype="datetime">2011 07 19T12:34:46Z</updated_at> <disk_sizetype="integer">5</disk_size> 22

<add_to_linux_fstabnil="true"></add_to_linux_fstab> <primarytype="boolean">true</primary> <idtype="integer">64</id> <data_store_idtype="integer">1</data_store_id> <has_autobackupstype="boolean">false</has_autobackups> <mount_pointnil="true"></mount_point> <is_swaptype="boolean">false</is_swap> <disk_vm_numbertype="integer">1</disk_vm_number> <virtual_machine_idtype="integer">34</virtual_machine_id> <identifier>c719u80sv5mwdi</identifier> <lockedtype="boolean">false</locked> <builttype="boolean">true</built> </disk>... <disk></disk>... </disks> DönenverininaçıklamasıDisklerinlistesinialmabölümündebahsedilmektedir. 7.3Yenidiskekleme POST/virtual_machines/:virtual_machine_id/disks.xml POST/virtual_machines/:virtual_machine_id/disks.json XMLİstekörneği curl i XPOSThttp://cp.cloudturk.net/virtual_machines/:virtual_machine_id/disks.xml d <disk><disk_size>disk_size</disk_size><data_store_id>store_id</data_store_id><mount_p oint></mount_point><is_swap></is_swap><add_to_linux_fstab></add_to_linux_fstab></dis k> uuser:userpass H'Accept:application/xml' H'Content type:application/xml' JSONİstekörneği curl i XPOSThttp://cp.cloudturk.net/virtual_machines/:virtual_machine_id/disks.json d {disk:{disk_size: disk_size,data_store_id: data_store_id, mount_point: mount_point,is_swap:,add_to_linux_fstab: }} uuser:userpass H 'Accept:application/json' H'Content type:application/json' Yenibirdiskeklemekiçinaşağıdakigerekliparametrelerigönderin: data_store_id* diskinkonumlandığıveridepolamakimliği 23

disk size* GBcinsindendiskalanı is_swap Eğertakas(swap)diskisedoğruolarakbelirle mount_point rootdosyayapısıolarakkullanılandiskbölümüiçindekifizikselyer add_to_linux_fstab eklemekiçindoğruolarakbelirleyin require_format_disk diskibiçimlendirmekiçindoğruolarakbelirleyin 7.4Diskidüzenleme PUT/settings/disks/:id.xml PUT/settings/disks/:id.json XMLİstekörneği curl i XPUThttp://cp.cloudturk.net/virtual_machines/:VM_id/disks/:disk_id.xml d <disk><disk_size>new_disk_size</disk_size></disk> uuser:userpass H'Accept: application/xml' H'Content type:application/xml' JSONİstekörneği curl i XPUThttp://cp.cloudturk.net/virtual_machines/:VM_id/disks/disk_id.json d {disk:{disk_size: new_disk_size }} uuser:userpass H'Accept:application/json' H 'Content type:application/json' Şuanda size parametresinidüzenleyebilirsiniz. AyrıcabaşkabirURLüzerindendiskdüzenleyebilirsiniz: cp.cloudturk.net/virtual_machines/:virtual_machines_id/disks/:id 7.5Disksilme DELETE/settings/disks/:id.xml DELETE/settings/disks/:id.json XMLİstekörneği curl i XDELETE 24

http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/disks/:disk_id.xml u user:userpass H'Accept:application/xml' H'Content type:application/xml' JSONİstekörneği curl i XDELETE http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/disks/:disk_id.json u user:userpass H'Accept:application/json' H'Content type:application/json' Başarılısilmeişleminde,HTTP200yanıtınıdöneryadabelirtilenkimliklediskbulunamazsaveya istenilenurlyanlışise,http404yanıtınıdöner. 7.6IOPS(SaniyedekiGiriş/Çıkışİşlemleri)diski görüntüleme DiskinizinGiriş/Çıkışistatistiklerinigörüntülemekiçin,aşağıdakiyöntemlerkullanılmalıdır: GET/settings/disks/:id/usage.xml GET/settings/disks/:id/usage.json XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <disk_hourly_statstype="array"> <disk_hourly_stat> <disk_idtype="integer">64</disk_id> <created_attype="datetime">2011 07 19T13:00:10Z</created_at> <updated_attype="datetime">2011 07 19T13:00:10Z</updated_at> <writes_completedtype="integer">345685</writes_completed> <stat_timetype="datetime">2011 07 19T13:00:00Z</stat_time> <data_writtentype="integer">11061920</data_written> <data_readtype="integer">53840</data_read> <idtype="integer">1028</id> <user_idtype="integer">13</user_id> <virtual_machine_idtype="integer">34</virtual_machine_id> <reads_completedtype="integer">1684</reads_completed> </disk_hourly_stat>... <disk_hourly_stat></disk_hourly_stat>... </disk_hourly_stats> 25

Burada: disk_id diskkimliği created_at veritabanındabukaydınyaratıldığıtarihbilgisi updated_at veritabanındabukaydıngüncenlendiğitarihbilgisi data_read disktenokunanverininmiktarı data_written diskeyazılanverininmiktarı stat_time istatistiklerinüretilmişolduğutarih writes_completed tamamlananyazmaişlemlerininsayısı reads_completed tamamlananokumaişlemlerininsayısı user_id budiskikullanansanalmakinekullanıcısınınkimliği virtual_machine_id budiskikullanansm ninkimliği 7.7Diskoluşturma Diskoluşturmakiçin,aşağıdakiyöntemlerkullanılmalıdır: POST/settings/disks/:id/build.xml POST/settings/disks/:id/build.json XMLİstekörneği curl i XPOSThttp://cp.cloudturk.net/settings/disks/:disk_id/build.xml uuser:userpass H'Accept:application/xml' H'Content type:application/xml' JSONİstekörneği curl i XGEThttp://cp.cloudturk.net/settings/disks/:disk_id/build.json uuser:userpass H'Accept:application/json' H'Content type:application/json' Burada: :disk_id* oluşturmakistediğinizdiskinkimliği 26

7.8Diskinkilidiniaçma Birdiskinkilidiniaçmakiçin,aşağıdakiyöntemlerkullanılmalıdır: POST/settings/disks/:disk_id/unlock.xml POST/settings/disks/:disk_id/unlock.json XMLİstekörneği curl i XPOSThttp://cp.cloudturk.net/settings/disks/:disk_id/unlock.xml uuser:userpass H'Accept:application/xml' H'Content type:application/xml' JSONİstekörneği curl i XPOSThttp://cp.cloudturk.net/settings/disks/:disk_id/unlock.json uuser:userpass H'Accept:application/json' H'Content type:application/json' 7.9Diskiçinotomatikyedeklemeyietkinleştirme Aşağıdakiyöntemlerkullanılarak,birdiskiçinotomatikyedeklemeetkinleştirilebilir: POST/settings/disks/:disk_id/autobackup_enable.xml POST/settings/disks/:disk_id/autobackup_enable.json XMLİstekörneği curl i XPOSThttp://cp.cloudturk.net/settings/disks/:disk_id/autobackup_enable.xml u user:userpass H'Accept:application/xml' H'Content type:application/xml' JSONİstekörneği curl i XPOSThttp://cp.cloudturk.net/settings/disks/:disk_id/autobackup_enable.json u user:userpass H'Accept:application/json' H'Content type:application/json' Burada: :disk_id* otomatikyedeklemeyietkinleştirmekistediğinizdiskinkimliği 27

7.10Diskiçinotomatikyedeklemeyidevredışıbırakma Aşağıdakiyöntemlerkullanılarak,otomatikyedeklemedevredışıbırakılabilir: POST/settings/disks/:id/autobackup_disable.xml POST/settings/disks/:id/autobackup_disable.json XMLİstekörneği curl i XPOSThttp://cp.cloudturk.net/settings/disks/:disk_id/autobackup_disable.xml u user:userpass H'Accept:application/xml' H'Content type:application/xml' Burada: :disk_id* otomatikyedeklemeyidevredışıbırakmakistediğinizdiskinkimliği 7.11Diskplanlamalistesinialma Belirlibirdiskinplanlamalistesinialmakiçinaşağıdakiyöntemlerkullanılmalıdır: GET/settings/disks/:disk_id/schedules.xml GET/settings/disks/:disk_id/schedules.json XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <schedules> <schedule> <duration>1</duration> <created_at>2011 07 20T15:16:16Z</created_at> <target_id>112</target_id> <updated_at>2011 07 27T15:16:18Z</updated_at> <period>days</period> <action>autobackup</action> <start_at>2011 07 28T15:16:16Z</start_at> <id>33</id> <user_id>1</user_id> <schedule_logs> <schedule_log> <created_at>2011 07 27T15:16:18Z</created_at> <updated_at>2011 07 27T15:16:18Z</updated_at> <schedule_id>33</schedule_id> <id>10</id> 28

<log_output></log_output> <status>complete</status> </schedule_log>... <schedule_log></schedule_log>... <paramsnil="true"></params> <failure_count>0</failure_count> <status>enabled</status> <target_type>disk</target_type> </schedule>... <schedule></schedule> </schedules> Burada: duration yedeklemeninnesıklıklaalınacağınıbelirten target_id hedefeyleminkimliği period zamanperiyodu(günler,haftalar,aylarveyayıllar) action gerçekleştirileneylem start_at eyleminbaşladığızaman id planlamakimliği user_id kullanıcıdiskinin(hedefeylem)kimliği schedule_logs planlamagünlükleridetayıilebirliktedizin,burada schedule_id planlamakimliği id planlamagünlüklerininkimliği log_output günlükdetaylarıilebirdizin status eylemindurumu(tamamlandı,başarız,vs.) failure_count eylemsırasındakihatalarınsayısı status plandurumu(etkinveyadevredışı) target_type hedeftürü 7.12Diskeplanekleme Aşağıdakiyöntemlerkullanılarak,diskeplanekleyebilirsiniz: POST/settings/disks/:disk_id/schedules.xml 29

POST/settings/disks/:disk_id/schedules.json XMLİstekörneği curl i XPOSThttp://cp.cloudturk.net/settings/disks/:disk_id/schedules.xml d <schedule><action>autobackup</action><duration>1</duration><period>days</period></sc h edule> uuser:userpass H'Accept:application/xml' H'Content type: application/xml' JSONİstekörneği curl i XPOSThttp://cp.cloudturk.net/settings/disks/:disk_id/schedules.json d {schedule:{action: autobackup,duration: 1,period: days }} uuser:userpass H 'Accept:application/json' H'Content type:application/json' Burada: action*yedeklemeplanınıeklemekiçinotomatikyedeklemeyiayarlayın duration*süreyibelirler period*zamanaralığıbelirler(günlük/haftalık/aylık) 7.13Disktemevcutolanyedeklemelistesinial Birdisktemevcutolanyedeklemelistesinialmakiçin,aşağıdakiyöntemlerkullanılmalıdır: GET/settings/disks/:disk_id/backups.xml GET/settings/disks/:disk_id/backups.json Yedeklerinbirdizini,detaylarıilebirlikte,başarıdurumundadöner. XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <backupstype="array"> <backup> <disk_idtype="integer">112</disk_id> <built_attype="datetime">2011 07 27T15:19:47Z</built_at> <operating_system_distro>rhel</operating_system_distro> <created_attype="datetime">2011 07 27T15:16:18Z</created_at> <template_idtype="integer">1</template_id> 30

<operating_system>linux</operating_system> <updated_attype="datetime">2011 07 27T15:19:47Z</updated_at> <backup_type>days autobackup</backup_type> <allowed_swaptype="boolean">true</allowed_swap> <allow_resize_without_reboottype="boolean">true</allow_resize_without_reboot> <idtype="integer">12</id> <allowed_hot_migratetype="boolean">true</allowed_hot_migrate> <backup_size>315552</backup_size> <min_disk_sizetype="integer">5</min_disk_size> <identifier>ytfgbj2drbs2d7</identifier> <lockedtype="boolean">false</locked> <builttype="boolean">true</built> </backup>... <backup></backup>... </backups> Burada: backup yedekdetaylarınındizini disk_id diskinkimliği built_at diskinoluşturulduğuzaman operating_system_distro işletimsistemidağıtımı template_id SM yetahsisetmekiçinkullanılanşablonunkimliği operating_system diskeayrılansanalmakineninişletimsistemi backup_type yedeklemtipi(çeşidi)(periyodtipi:günlük/haftalık/aylık/yıllık) allowed_swap eğerbutakas(swap)diskisedoğru,değilseyanlış allow_resize_without_reboot eğeryenidenbaşlamagerekmeden,işlemcivebellekyeniden boyutlandırılabiliyorsadoğru,değilseyanlış id yedeklemeninkimliği allowed_hot_migrate boşbırakılmalıdır backup_size kilobaytcinsindenyedeklemeboyutu min_disk_size GBcinsindengerekliolanminimumdiskboyutu identifier veritabanındakitanımlayıcı locked eğerdiskkilitliyse,doğru built eğerdiskoluşturulmuşsa,doğru 31

8. Şablonlar Şablon, bir işletim sisteminin kök dizinini içeren, tamamen önceden yapılandırılmış bir işletim sistemigörüntüsü.ikitürşablonbulunmaktadır:sistemşablonlarıvekullanıcışablonları.sistem şablonları online kütüphaneden indirilir. Kullanıcı şablonları, mevcut sanal makinenin yedeğini alarakveyedeğişablonadönüştürülerekyaratılır. 8.1Sistemşablonlarınınlistesinialma GET/templates.xml GET/templates.json Sistemşablolarınınbirdizinigeridöner.Eğerhiçbirşablonyoksa,boşbirdizingeridöner. XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <image_templatestype="array"> <image_template> <parent_template_idnil="true"></parent_template_id> <label>ubuntu10.04.1lts</label> <operating_system_distro>ubuntu</operating_system_distro> <operating_system_arch>x64</operating_system_arch> <created_attype="datetime">2010 08 25T22:41:29+07:00</created_at> <operating_system_tailnil="true"></operating_system_tail> <operating_system>linux</operating_system> <min_memory_sizenil="true"></min_memory_size> <updated_attype="datetime">2011 05 16T15:47:48+07:00</updated_at> <operating_system_editionnil="true"></operating_system_edition> <allowed_swaptype="boolean">true</allowed_swap> <allow_resize_without_rebootnil="true"></allow_resize_without_reboot> <virtualization>xen,kvm</virtualization> <idtype="integer">7</id> <file_name>ubuntu 10.04 x64 1.1.tar.gz</file_name> <checksum>dc406603695a5c98dfc7fb00b531c930</checksum> <version>1.0</version> <user_idnil="true"></user_id> <template_sizenil="true"></template_size> <allowed_hot_migratetype="boolean">true</allowed_hot_migrate> <min_disk_sizetype="integer">5</min_disk_size> 32

<state>active</state> <cdntype="boolean">false</cdn> <disk_target_device> xen:sdakvm:hd</disk_target_device> </image_template>... <image_template></image_templates>... </image_templates> Burada: image_templates bütünsistemşablonlarınınvedetaylarınındizini parent_template_id sistemşablonuysadoğru label şablonbaşlığı operating_system_distro işletimsistemidağıtımı operating_system_arch işletimsistemimimarisi created_at [YYYY][MM][DD]T[hh][mm][ss]Zformatındatarih operating_system_tail işletimsistemininkuyruğu operating_system işletimsistemininadı min_memory_size eğerminimumbellekgerekiyorsa updated_at [YYYY][MM][DD]T[hh][mm][ss]Zformatındaağıngüncellendiğitarih operating_system_edition işletimsistemisürümü allowed_swap eğertakasa(swap)izinverilmişsedoğru,değilseyanlış allowed_resize_without_reboot eğeryenidenbaşlamagerekmeden,yenidenboyutlandırma mümkünsedoğru,değilseyanlış virtualization boşbırakılmalıdır id şablonkimliği file_name şablondosyasıadı checksum dosyadoğrulama version dosyanınversiyonu allowed_hot_migrate boşbırakılmalıdır min_disk_size buşablondaoluşturulacakolansmiçingerekliolanminimumdiskboyutu(gb) state şablonundurumu(etkin,etkindeğil) cdn boşbırakılmalıdır 33

(Eğerbuşablonkenarsunucularoluşturulmaküzerekullanılıyorsadoğru,değilseyanlış) disk_target_device boşbırakılmalıdır 9. SanalMakineler Cloudturk teki sanal makineler şablona dayanır. SM ler kendi root hesaplarına sahiptirler, böylecesmsahiplerimakinelerinitamolarakkontroledebilir,yapılandırabilirveyönetebilirler. Bütün CRUD (yaratma, okuma, güncelleme ve silme) işlemleri sanal makinelerin sınıfı için mümkündür. 9.1SM lerinlistesinialma SMlistesinialmakiçin,aşağıdakiistekkullanılmalıdır: GET/virtual_machines.xml GET/virtual_machines.json XMLÇıkışörneği <?xmlversion="1.0"encoding="utf 8"?> <virtual_machines> <virtual_machine> <add_to_marketplacenil="true"></add_to_marketplace> <aflexi_idnil="true"></aflexi_id> <admin_notenil="true"></admin_note> <allow_resize_without_reboottype="boolean">true</allow_resize_without_reboot> <allowed_hot_migratetype="boolean">true</allowed_hot_migrate> <allowed_swaptype="boolean">true</allowed_swap> <bootedtype="boolean">true</booted> <builttype="boolean">true</built> <cpu_sharestype="integer">1</cpu_shares> <cpustype="integer">1</cpus> <created_attype="datetime">2011 11 01T17:11:58+03:00</created_at> <enable_autoscaletype="boolean">true</enable_autoscale> <enable_monitistype="boolean">true</enable_monitis> <hostname>autobackup</hostname> 34

<hypervisor_idtype="integer">2</hypervisor_id> <idtype="integer">373</id> <identifier>iskngs9dve0hdg</identifier> <initial_root_password>791791</initial_root_password> <label>yr_autobackup</label> <local_remote_access_porttype="integer">5903</local_remote_access_port> <lockedtype="boolean">false</locked> <max_memorytype="integer">2048</max_memory> <memorytype="integer">128</memory> <min_disk_sizetype="integer">5</min_disk_size> <notenil="true"></note> <operating_system>linux</operating_system> <operating_system_distro>rhel</operating_system_distro> <recovery_modetype="boolean">false</recovery_mode> <remote_access_password>os3ajolb1buj</remote_access_password> <state>new</state> <strict_virtual_machine_idnil="true"></strict_virtual_machine_id> <suspendedtype="boolean">false</suspended> <template_idtype="integer">8</template_id> <template_label>centos5.6x86</template_label> <update_billing_stattype="boolean">false</update_billing_stat> <xen_idtype="integer">12</xen_id> <ip_addressestype="array"> <ip_address><created_attype="datetime">2011 10 10T12:31:12+03:00</created_at> <disallowed_primarytype="boolean">false</disallowed_primary> <idtype="integer">2</id> <network_idtype="integer">1</network_id> <updated_attype="datetime">2011 11 01T17:39:13+03:00</updated_at> <user_idnil="true"></user_id> <freetype="boolean">false</free> <address>109.123.105.180</address> <gateway>109.123.105.177</gateway> <network_address>109.123.105.176</network_address> <broadcast>109.123.105.191</broadcast> <netmask>255.255.255.240</netmask> </ip_address> </ip_addresses> <monthly_bandwidth_usedtype="integer">2613</monthly_bandwidth_used> <total_disk_sizetype="integer">6</total_disk_size> </virtual_machine>... <virtual_machine></virtual_machine>... </virtual_machine> <updated_attype="datetime">2011 11 04T13:22:25+03:00</updated_at> <user_idtype="integer">5</user_id> <vipnil="true"></vip> 35

Burada: add_to_marketplace boşbırakılmalıdır aflexi_id boşbırakılmalıdır admin_note boşbırakılmalıdır allow_resize_without_reboot eğeryenidenbaşlamagerekmedenyenidenboyutlandırma mümkünsedoğru,değilseyanlış allowed_hot_migrate boşbırakılmalıdır allowed_swap eğertakas(swap)diskeizinverilmişsedoğru(sm ninoluşturulduğuşablona bağlı),değilseyanlış booted eğersmçalışıyorsadoğru,değilseyanlış built eğersmkurulmuşsadoğru,değilseyanlış cpus tahsisedilenişlemciçekirdeğisayısı cpu_shares boşbırakılmalıdır created_at [YYYY][MM][DD]T[hh][mm][ss]Zformatındatarih enable_autoscale eğerbusmiçinotomatikölçeklenmeyeizinverilmişsedoğru hostname makinenizinadı hypervisor_id boşbırakılmalıdır id SMkimliği identifier SMtanımlayıcısı initial_root_password SMrootşifresi ip_addresses busm yeatananipadreslerinindizinivedetayları label SMetiketi local_remote_access_port konsolerişimiiçinportkimliği locked eğersmkilitliysedoğru,değilseyanlış max_memory SM yetahsisedilenmaksimumbellekmiktarı memory busmiçintahsisedilenbellekboyutu min_disk_size belirlenmişşablondanoluşturulacakolansmiçingerekliolanminimumdisk boyutu(gb) monthly_bandwidth_used buaykullanılanbantgenişliği note kullanıcıhesabındanyapılan,smiçinopsiyonelhatırlatıcı operating_system SMtarafındankullanılanişletimsistemi 36

operating_system_distro busm ninoluştuğuişletimsisteminindağıtımı recovery_mode eğerkurtarmamodumümkünsedoğru,değilseyanlış remote_access_password uzaktanerişimiçinşifre state ileridekullanmakiçinayrılanparametre strict_virtual_machine_id boşbırakılmalıdır suspended boşbırakılmalıdır template_id SM nindayandığışablonunkimliği template_label busm ninoluştuğuşablonunismi total_disk_size SM yeayrılmışbütündiskleringbcinsindendiskboyutu updated_at [YYYY][MM][DD]T[hh][mm][ss]ZformatındaSM ningüncellenmiştarihi user_id busm yetahsisedilenkullanıcınınkimliği vip boşbırakılmalıdır xen_id boşbırakılmalıdır 9.2SMdetaylarınıalma GET/virtual_machines/:id.xml GET/virtual_machines/:id.json SM lerinlistesinialmaisteğindetanımlanmışolansm ninaynıözelliklerinigösterir. 9.3SMyaratma POST/virtual_machines.xml POST/virtual_machines.json XMLİstekörneği curl i XPOST H'Accept:application/xml' H'Content type:application/xml' u user:userpass d'<?xmlversion="1.0"encoding="utf 8"?><virtual_machine><cpu_shares>10</cpu_shares><cpus>1</cpus><hostname>aptest2</h ostn ame><hypervisor_id>1</hypervisor_id><initial_root_password>qwe123</initial_root_passw o 37

rd><memory>256</memory><template_id>1</template_id><primary_disk_size>5</primary_ disk_ size><label>aptest2</label><swap_disk_size>1</swap_disk_size><primary_network_id>1</p r imary_network_id><required_automatic_backup>1</required_automatic_backup><rate_limi t>n one</rate_limit><required_ip_address_assignment>1</required_ip_address_assignment><re q uired_virtual_machine_build>0</required_virtual_machine_build><admin_note>admin comment</admin_note><note>note</note><hypervisor_group_id>2</hypervisor_group_id> </vir tual_machine>' urlhttp://cp.cloudturk.net/virtual_machines.xml JSONİstekörneği curl i XPOST H'Accept:application/json' H'Content type:application/json' u user:userpass d '{"virtual_machine":{"cpu_shares":"10","cpus":"1","hostname":"aptest2","hypervisor_id" :"1","initial_root_password":"qwe123","memory":"256","template_id":"1","primary_disk_s ize":"5","label":"aptest5","swap_disk_size":"1","primary_network_id":"1","required_aut omatic_backup":"1","rate_limit":"none","required_ip_address_assignment":"1","required_ virtual_machine_build":"0","admin_note":"admin comment","note":"note","allowed_hot_migrate":"true","hypervisor_group_id":"2"}}' url http://cp.cloudturk.net/virtual_machines.json Aşağıdakiparametrelergönderilmelidir: Memory*SM yeatananbelleğinmiktarı. cpus*sm yeatananişlemcilerinsayısı. cpu_shares*1ile100arasındabirdeğergirilmelidir. Hostname*BuSMiçinmakineadıbelirler. label*kullanıcıuyumlusmaçıklaması. primary_disk_size*busmiçindiskalanıbelirler. swap_disk_size*takas(swap)alanıbelirler.windowstabanlısm leriçintakasdiskyoktur. primary_network_id Birincliağınkimliği.Opsiyonelparametre. required_automatic_backup eğerotomatikyedeklemeyeihtiyacınızvarsa,1belirleyin rate_limit maximumporthızıbelirleyin.opsiyonelparametre:eğerhiçbirşeybelirlenmediyse, sistemporthızınılimitsizolarakbelirler. required_ip_address_assignment*sisteminip yiotomatikatamasınıistiyorsanız1belirleyin required_virtual_machine_build*sm ninotomatikyaratılmasıiçin1belirleyin 38

admin_note boşbırakılmalıdır Note KullanıcınınVM eekleyebileceğikısabiraçıklama. template_id*sm ninoluşturulmasıgerekenşablonunkimliği hypervisor_group_id boşbırakılmalıdır hypervisor_id boşbırakılmalıdır initial_root_password BirSMiçinrootşifresi.Opsiyonel,eğerhiçbirşeybelirlenmemişse, sistemrastgelebirşifresağlayacak.6 32karakterlerden,harflerden[A Za z],sayılardan[0 9], kısaçizgi[ ]vealtçizgiden[_]oluşabilir.küçükvebüyükharfkullanabilirsiniz. 9.4SMoluşturma BirSMoluşturmakyadayenidenoluşturmakiçinaşağıdakiyöntemlerkullanılır: POST/virtual_machines/:virtual_machine_id/build.xml POST/virtual_machines/:virtual_machine_id/build.json XMLİstekörneği curl i XPOST H'Accept:application/xml' H'Content type:application/xml' u user:userpass d'<?xmlversion="1.0"encoding="utf 8"?><virtual_machine><template_id>1</template_id><required_startup>1</required_startu p ></virtual_machine>' url http://cp.cloudturk.net/virtual_machines/:virtual_machine_id/build.xml JSONİstekörneği curl i XPOST H'Accept:application/json' H'Content type:application/json' u user:userpass d'{"virtual_machine":{"template_id":"1","required_startup":"1"}}' urlhttp://cp.cloudturk.net/virtual_machines/:virtual_machine_id/build.json Burada: template_id*sm ninoluşturulmasıgerekenşablonunkimliği required_startupsmyaratıldıktansonraotomatikbaşlamasıiçin1,başlamamasıiçin0belirleyin. Sanalmakinekimliğiyerine(:virtual_machine_id),sanalmakinebelirleyicinikullanabilirsiniz 39

(:virtual_machine_identifier). 9.5SMdüzenleme PUT/virtual_machines/:id.xml PUT/virtual_machines/:id.json XMLİstekörneği curl i XPUT H'Accept:application/xml' H'Content type:application/xml' u user:userpass d'<?xmlversion="1.0"encoding="utf 8"?><virtual_machine><label>Test_API_Edit</label><memory>512</memory><cpu_shares>4 0</c pu_shares><cpus>4</cpus><allow_migration>1</allow_migration><allow_cold_resize>1</all o w_cold_resize></virtual_machine>' urlhttp://cp.cloudturk.net/virtual_machines/:id.xml JSONİstekörneği curl i XPUT H'Accept:application/json' H'Content type:application/json' u user:userpass d '{"virtual_machine":{"label":"test_api_edit","memory":"512","cpu_shares":"40","cpus":" 4","allow_migration":"1","allow_cold_resize":"1"}}' url http://cp.cloudturk.net/virtual_machines/:id.json Aşağıdakiparametreleridüzenleyebilirsiniz: label SMadı memory MbcinsindenbuSM yetahsisedilenbellekmiktarı cpus buvm inişlemcisayısı cpu_shares boşbırakılmalıdır allow_migration boşbırakılmalıdır allow_cold_resize sıcakyenidenboyutlandırmabaşarısızoluduğuzamansoğukyeniden boyutlandırmayageçmesiiçin1belirleyin EğerSMbaşarılıbirşekildedeğiştirilirse,HTTP201yanıtıdöner.Eğerdeğişikliklerinplanlaması başarısızolursa,http422yanıtıdöner. 40