{"id":30919,"date":"2025-10-03T11:32:24","date_gmt":"2025-10-03T08:32:24","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/"},"modified":"2025-10-03T11:32:24","modified_gmt":"2025-10-03T08:32:24","slug":"openstack-devops-baslangic-microstack-ile-el-ele","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/","title":{"rendered":"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele"},"content":{"rendered":"<p><!-- OpenStack ve DevOps d\u00fcnyas\u0131na ad\u0131m atmak isteyenler i\u00e7in MicroStack ile pratik bir rehber. Bulut altyap\u0131n\u0131z\u0131 kolayca y\u00f6netin, otomasyonu \u00f6\u011frenin ve modern yaz\u0131l\u0131m geli\u015ftirmeye ba\u015flay\u0131n. --><\/p>\n<p>Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde h\u0131z, esneklik ve \u00f6l\u00e7eklenebilirlik, i\u015fletmelerin en \u00f6nemli beklentilerinden biri haline geldi. Bu beklentileri kar\u015f\u0131laman\u0131n anahtar\u0131 ise DevOps pratiklerini g\u00fc\u00e7l\u00fc bir bulut altyap\u0131s\u0131yla birle\u015ftirmekten ge\u00e7iyor. Peki, karma\u015f\u0131k bulut teknolojilerinden biri olan OpenStack&#8217;i DevOps d\u00fcnyas\u0131na yeni ad\u0131m atan birisi olarak nas\u0131l \u00f6\u011frenebilirsiniz? \u0130\u015fte tam da bu noktada, OpenStack&#8217;in hafif ve kullan\u0131m\u0131 kolay bir versiyonu olan MicroStack devreye giriyor. Bu makalede, OpenStack&#8217;in temel prensiplerini, DevOps k\u00fclt\u00fcr\u00fcndeki yerini ve MicroStack ile nas\u0131l pratik deneyim kazanabilece\u011finizi ad\u0131m ad\u0131m ke\u015ffedece\u011fiz. Haz\u0131r m\u0131s\u0131n\u0131z? Gelin, bulut altyap\u0131n\u0131z\u0131 kendi ellerinizle y\u00f6netmenin keyfini \u00e7\u0131karal\u0131m!<\/p>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn dijital d\u00fcnyas\u0131nda, yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7leri hi\u00e7 olmad\u0131\u011f\u0131 kadar h\u0131zl\u0131 ve dinamik. Bu dinamizmin merkezinde yer alan iki temel kavram ise OpenStack ve DevOps k\u00fclt\u00fcr\u00fcd\u00fcr. Ancak, &#8220;Bu iki kavram birbiriyle nas\u0131l \u00f6rt\u00fc\u015f\u00fcyor ve neden birlikte kullan\u0131lmalar\u0131 bu kadar \u00f6nemli?&#8221; diye merak ediyor olabilirsiniz. Gelin, bu sorunun yan\u0131t\u0131n\u0131 daha yak\u0131ndan inceleyelim.<\/p>\n<h3>OpenStack Nedir ve Ne \u0130\u015fe Yarar?<\/h3>\n<p>OpenStack, asl\u0131nda bir dizi a\u00e7\u0131k kaynakl\u0131 yaz\u0131l\u0131m projesinin birle\u015fimiyle ortaya \u00e7\u0131km\u0131\u015f, bulut bili\u015fim altyap\u0131s\u0131 (IaaS &#8211; Infrastructure as a Service) olu\u015fturmak ve y\u00f6netmek i\u00e7in kullan\u0131lan g\u00fc\u00e7l\u00fc bir platformdur. Yani, sanal makineler, depolama alanlar\u0131, a\u011f kaynaklar\u0131 ve di\u011fer temel bili\u015fim altyap\u0131s\u0131 bile\u015fenlerini sanalla\u015ft\u0131r\u0131lm\u0131\u015f bir ortamda sunman\u0131z\u0131 sa\u011flar. B\u00fcy\u00fck veri merkezlerinden k\u00fc\u00e7\u00fck geli\u015ftirici ortamlar\u0131na kadar geni\u015f bir kullan\u0131m alan\u0131na sahiptir. Peki, bu platform tam olarak ne anlama geliyor? \u015e\u00f6yle d\u00fc\u015f\u00fcn\u00fcn: Normalde fiziksel sunucularla u\u011fra\u015fmak yerine, OpenStack size sanal bir veri merkezi sunar. Bu sayede, ihtiyac\u0131n\u0131z olan kaynaklar\u0131 an\u0131nda olu\u015fturabilir, de\u011fi\u015ftirebilir veya silebilirsiniz. \u00d6zellikle b\u00fcy\u00fck \u00f6l\u00e7ekli ve da\u011f\u0131t\u0131k sistemler i\u00e7in vazge\u00e7ilmez bir ara\u00e7t\u0131r.<\/p>\n<p>OpenStack&#8217;in \u00e7ekirdek bile\u015fenleri aras\u0131nda \u015funlar bulunur:<\/p>\n<ul>\n<li><strong>Nova (Compute):<\/strong> Sanal makinelerinizi (Compute Instances) olu\u015fturur ve y\u00f6netir. Bilgisayar g\u00fcc\u00fcn\u00fcn anahtar\u0131d\u0131r.<\/li>\n<li><strong>Neutron (Networking):<\/strong> Sanal a\u011flar\u0131, alt a\u011flar\u0131 ve IP adreslerini yap\u0131land\u0131r\u0131r. Makinelerinizin birbirleriyle ve d\u0131\u015f d\u00fcnyayla g\u00fcvenli bir \u015fekilde ileti\u015fim kurmas\u0131n\u0131 sa\u011flar.<\/li>\n<li><strong>Cinder (Block Storage):<\/strong> Sanal makinelere ba\u011fl\u0131 kal\u0131c\u0131 blok depolama alanlar\u0131 (volume) sa\u011flar. Verilerinizin g\u00fcvenli bir \u015fekilde saklanmas\u0131n\u0131 garantiler.<\/li>\n<li><strong>Glance (Image Service):<\/strong> Sanal makineler i\u00e7in disk imajlar\u0131n\u0131 (i\u015fletim sistemi \u015fablonlar\u0131) depolar ve y\u00f6netir. \u0130\u015fletim sistemlerini h\u0131zl\u0131ca da\u011f\u0131tman\u0131z\u0131 m\u00fcmk\u00fcn k\u0131lar.<\/li>\n<li><strong>Keystone (Identity Service):<\/strong> Kullan\u0131c\u0131 kimlik do\u011frulama, yetkilendirme ve servis katalo\u011fu sa\u011flar. G\u00fcvenli eri\u015fimin temelidir.<\/li>\n<li><strong>Horizon (Dashboard):<\/strong> T\u00fcm OpenStack hizmetlerini y\u00f6netebilece\u011finiz web tabanl\u0131 bir aray\u00fczd\u00fcr. Kullan\u0131c\u0131 dostu bir deneyim sunar ve mobil uyumlu tasar\u0131m\u0131 sayesinde farkl\u0131 cihazlardan eri\u015fim kolayl\u0131\u011f\u0131 sa\u011flar.<\/li>\n<\/ul>\n<p>Bu bile\u015fenler, bir araya gelerek size fiziksel donan\u0131m detaylar\u0131ndan soyutlanm\u0131\u015f, esnek ve programlanabilir bir altyap\u0131 sunar. Dolay\u0131s\u0131yla, bir geli\u015ftirici veya DevOps m\u00fchendisi olarak, donan\u0131m sat\u0131n alma, kurma veya bak\u0131m yapma gibi zaman al\u0131c\u0131 i\u015flerle u\u011fra\u015fmak yerine, do\u011frudan uygulaman\u0131za odaklanabilirsiniz. \u00d6rne\u011fin, yeni bir test ortam\u0131na m\u0131 ihtiyac\u0131n\u0131z var? Sadece birka\u00e7 t\u0131klamayla veya bir komutla yeni bir sanal makineyi aya\u011fa kald\u0131rabilirsiniz. Bu da sizi geleneksel altyap\u0131 y\u00f6netiminin getirdi\u011fi k\u0131s\u0131tlamalardan kurtar\u0131r ve daha h\u0131zl\u0131 hareket etmenizi sa\u011flar. OpenStack&#8217;in mod\u00fcler yap\u0131s\u0131 sayesinde, sadece ihtiyac\u0131n\u0131z olan bile\u015fenleri kullanarak kendi bulut \u00e7\u00f6z\u00fcm\u00fcn\u00fcz\u00fc olu\u015fturabilirsiniz.<\/p>\n<h3>DevOps K\u00fclt\u00fcr\u00fc Nedir ve OpenStack ile Nas\u0131l Entegre Olur?<\/h3>\n<p>DevOps, sadece bir ara\u00e7 veya teknoloji y\u0131\u011f\u0131n\u0131 de\u011fil, asl\u0131nda bir k\u00fclt\u00fcrd\u00fcr. Geli\u015ftirme (Development) ve Operasyon (Operations) ekipleri aras\u0131ndaki i\u015fbirli\u011fini, ileti\u015fimi ve otomasyonu te\u015fvik eden bir yakla\u015f\u0131md\u0131r. Temel amac\u0131, yaz\u0131l\u0131m teslimat s\u00fcre\u00e7lerini h\u0131zland\u0131rmak, kalitesini art\u0131rmak ve daha istikrarl\u0131 sistemler olu\u015fturmakt\u0131r. &#8220;Peki, bu k\u00fclt\u00fcr\u00fc OpenStack ile nas\u0131l birle\u015ftirebiliriz?&#8221; Cevap olduk\u00e7a basit: Otomasyon ve Altyap\u0131 Kodu (Infrastructure as Code &#8211; IaC).<\/p>\n<div class=\"expert-tip\">Uzman \u0130pucu: DevOps felsefesinde &#8220;her \u015feyi otomatikle\u015ftir&#8221; ilkesi esast\u0131r. OpenStack&#8217;in zengin API odakl\u0131 yap\u0131s\u0131, bu ilkeyi ger\u00e7e\u011fe d\u00f6n\u00fc\u015ft\u00fcrmek i\u00e7in m\u00fckemmel bir zemin sunar. Bu sayede insan kaynakl\u0131 hatalar\u0131 minimuma indirebilirsiniz.<\/div>\n<p>OpenStack, zengin bir API (Uygulama Programlama Aray\u00fcz\u00fc) setine sahiptir. Bu, geli\u015ftiricilerin ve operasyon ekiplerinin altyap\u0131y\u0131 kod arac\u0131l\u0131\u011f\u0131yla otomatize etmelerine olanak tan\u0131r. Yani, sanal makineleri, a\u011f yap\u0131land\u0131rmalar\u0131n\u0131, depolama birimlerini manuel olarak kurmak veya yap\u0131land\u0131rmak yerine, Python, YAML veya JSON gibi dillerle yaz\u0131lm\u0131\u015f betikler (scriptler) veya yap\u0131land\u0131rma dosyalar\u0131 (manifestler) arac\u0131l\u0131\u011f\u0131yla olu\u015fturabilir, g\u00fcncelleyebilir ve silebilirsiniz. \u0130\u015fte bu, Infrastructure as Code (IaC) prensibinin ta kendisidir. Altyap\u0131y\u0131 kod olarak y\u00f6netmek, s\u00fcr\u00fcm kontrol sistemlerinde saklanabilen, test edilebilir ve tekrar kullan\u0131labilir altyap\u0131 bile\u015fenleri olu\u015fturman\u0131z\u0131 sa\u011flar.<\/p>\n<p>Bir DevOps ekibi i\u00e7in bu ne anlama gelir? \u00d6rne\u011fin, yeni bir uygulama s\u00fcr\u00fcm\u00fc da\u011f\u0131t\u0131laca\u011f\u0131nda, geleneksel yakla\u015f\u0131mlarla altyap\u0131n\u0131n manuel olarak haz\u0131rlanmas\u0131 haftalar s\u00fcrebilirken, OpenStack ile IaC kullanarak bu s\u00fcre\u00e7 dakikalara indirilebilir. Bir geli\u015ftirici, kodunu Git deposuna g\u00f6nderdi\u011finde, CI\/CD (S\u00fcrekli Entegrasyon\/S\u00fcrekli Da\u011f\u0131t\u0131m) boru hatt\u0131 (pipeline) otomatik olarak tetiklenir, testleri \u00e7al\u0131\u015ft\u0131r\u0131r ve OpenStack \u00fczerinde yeni bir sanal ortam olu\u015fturup uygulamay\u0131 oraya da\u011f\u0131tabilir. Bu sayede, hem geli\u015ftirme h\u0131z\u0131 artar hem de insan hatalar\u0131 minimize edilir. Ayr\u0131ca, bu yakla\u015f\u0131m, ortamlar aras\u0131 tutarl\u0131l\u0131\u011f\u0131 garanti alt\u0131na al\u0131r, \u00e7\u00fcnk\u00fc altyap\u0131 her zaman ayn\u0131 koddan t\u00fcretilir.<\/p>\n<p><strong>\u00d6rnek bir senaryo:<\/strong> Bir e-ticaret uygulamas\u0131n\u0131n geli\u015ftirilmesi s\u0131ras\u0131nda, her yeni \u00f6zellik eklemede veya hata d\u00fczeltmede, geli\u015ftiricilerin kendi izole test ortamlar\u0131na ihtiya\u00e7 duydu\u011funu varsayal\u0131m. OpenStack ve DevOps pratikleri sayesinde, geli\u015ftiriciler kendi kendine servis portal\u0131ndan (Horizon) veya basit bir komut sat\u0131r\u0131 arac\u0131yla, \u00f6nceden tan\u0131mlanm\u0131\u015f bir \u015fablon (Heat template veya Terraform plan\u0131) kullanarak saniyeler i\u00e7inde yeni bir OpenStack sanal makinesi (instance) olu\u015fturabilir. Bu makine, uygulaman\u0131n \u00e7al\u0131\u015fmas\u0131 i\u00e7in gerekli t\u00fcm yaz\u0131l\u0131mlar\u0131 ve ba\u011f\u0131ml\u0131l\u0131klar\u0131 otomatik olarak i\u00e7erecektir. \u0130\u015fleri bittikten sonra da kolayca bu ortam\u0131 silebilirler. Bu esneklik, geli\u015ftirme d\u00f6ng\u00fclerini k\u0131salt\u0131r ve \u00fcr\u00fcn\u00fcn piyasaya s\u00fcr\u00fclme s\u00fcresini (Time-to-Market) \u00f6nemli \u00f6l\u00e7\u00fcde azalt\u0131r. K\u0131sacas\u0131, OpenStack, DevOps ekiplerine ihtiya\u00e7 duyduklar\u0131 esnek, programlanabilir ve \u00f6l\u00e7eklenebilir bulut altyap\u0131s\u0131n\u0131 sunarken; DevOps k\u00fclt\u00fcr\u00fc de bu altyap\u0131y\u0131 en verimli \u015fekilde kullanmak i\u00e7in gerekli otomasyon, i\u015fbirli\u011fi ve s\u00fcrekli iyile\u015ftirme felsefesini sa\u011flar. Bu iki g\u00fc\u00e7 birle\u015fti\u011finde, ekipler daha h\u0131zl\u0131, daha g\u00fcvenilir ve daha yenilik\u00e7i yaz\u0131l\u0131mlar ortaya koyabilirler.<\/p>\n<h2>MicroStack Nedir ve Yeni Ba\u015flayanlar \u0130\u00e7in Neden \u0130dealdir?<\/h2>\n<p>OpenStack&#8217;in g\u00fcc\u00fc tart\u0131\u015f\u0131lmaz olsa da, kurulumu ve y\u00f6netimi, \u00f6zellikle yeni ba\u015flayanlar i\u00e7in g\u00f6z korkutucu olabilir. Karma\u015f\u0131k da\u011f\u0131t\u0131k mimarisi ve bir\u00e7ok bile\u015feni, \u00f6\u011frenme e\u011frisini olduk\u00e7a dik hale getirebilir. \u0130\u015fte tam da bu noktada, &#8220;OpenStack d\u00fcnyas\u0131na daha kolay bir giri\u015f yolu var m\u0131?&#8221; sorusu akla geliyor. Cevap: Evet, MicroStack!<\/p>\n<h3>MicroStack&#8217;in Fark\u0131 Nedir? Neden MicroStack Kullanmal\u0131y\u0131z?<\/h3>\n<p>MicroStack, Canonical taraf\u0131ndan geli\u015ftirilen, OpenStack&#8217;in hafif (lightweight) ve tek d\u00fc\u011f\u00fcml\u00fc (single-node) bir da\u011f\u0131t\u0131m\u0131d\u0131r. OpenStack&#8217;in t\u00fcm temel \u00f6zelliklerini sunarken, kurulum ve y\u00f6netim karma\u015f\u0131kl\u0131\u011f\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde azalt\u0131r. &#8220;Peki, bu ne anlama geliyor?&#8221; diye sorabilirsiniz. Geleneksel bir OpenStack da\u011f\u0131t\u0131m\u0131, \u00fcretim ortamlar\u0131nda genellikle birden fazla sunucuya yay\u0131lm\u0131\u015f onlarca bile\u015feni i\u00e7erirken, MicroStack tek bir Linux sunucusu veya hatta bir geli\u015ftirici diz\u00fcst\u00fc bilgisayar\u0131 \u00fczerinde \u00e7al\u0131\u015facak \u015fekilde tasarlanm\u0131\u015ft\u0131r. Bu, onu \u00f6\u011frenme, geli\u015ftirme ve k\u00fc\u00e7\u00fck \u00f6l\u00e7ekli test ortamlar\u0131 i\u00e7in ideal bir \u00e7\u00f6z\u00fcm haline getirir. Esas\u0131nda MicroStack, Juju ve Snap teknolojilerinin g\u00fcc\u00fcn\u00fc kullanarak OpenStack&#8217;i son derece eri\u015filebilir k\u0131lar.<\/p>\n<p>MicroStack&#8217;i \u00f6zel k\u0131lan temel \u00f6zellikler \u015funlard\u0131r:<\/p>\n<ul>\n<li><strong>Basit Kurulum:<\/strong> MicroStack, Snap paketi olarak da\u011f\u0131t\u0131l\u0131r. Bu, onu Ubuntu, Debian gibi Snap destekleyen Linux da\u011f\u0131t\u0131mlar\u0131na tek bir komutla kurabilece\u011finiz anlam\u0131na gelir. Kurulum s\u00fcreci, geleneksel OpenStack kurulumlar\u0131na g\u00f6re \u00e7ok daha h\u0131zl\u0131 ve hatas\u0131zd\u0131r. Bu, yeni ba\u015flayanlar\u0131n kurulum karma\u015f\u0131kl\u0131\u011f\u0131yla bo\u011fu\u015fmadan do\u011frudan \u00f6\u011frenmeye odaklanmas\u0131n\u0131 sa\u011flar.<\/li>\n<li><strong>Tek D\u00fc\u011f\u00fcm Mimarisi:<\/strong> T\u00fcm OpenStack bile\u015fenlerini tek bir makine \u00fczerinde \u00e7al\u0131\u015ft\u0131r\u0131r. Bu, altyap\u0131 karma\u015f\u0131kl\u0131\u011f\u0131n\u0131 azalt\u0131r ve kaynak gereksinimlerini d\u00fc\u015f\u00fcr\u00fcr. Bu sayede, orta d\u00fczey bir diz\u00fcst\u00fc bilgisayarda bile tam fonksiyonel bir OpenStack ortam\u0131 \u00e7al\u0131\u015ft\u0131rabilirsiniz.<\/li>\n<li><strong>Tam OpenStack Uyumlu:<\/strong> Temel OpenStack API&#8217;lerini ve Horizon paneli gibi ara\u00e7lar\u0131 destekler. Bu sayede MicroStack \u00fczerinde \u00f6\u011frendi\u011finiz bilgiler ve geli\u015ftirdi\u011finiz betikler, daha b\u00fcy\u00fck ve \u00fcretim seviyesi OpenStack da\u011f\u0131t\u0131mlar\u0131na kolayca aktar\u0131labilir. \u00d6\u011frenme deneyiminiz &#8220;ger\u00e7ek&#8221; OpenStack&#8217;ten uzak kalmaz.<\/li>\n<li><strong>H\u0131zl\u0131 Prototipleme:<\/strong> Geli\u015ftiricilerin OpenStack ortamlar\u0131n\u0131 h\u0131zla olu\u015fturup y\u0131kmalar\u0131na olanak tan\u0131r. Yeni bir fikir mi denemek istiyorsunuz? MicroStack ile saniyeler i\u00e7inde bir bulut ortam\u0131n\u0131z haz\u0131r! Bu, &#8220;h\u0131zl\u0131 ba\u015far\u0131s\u0131z ol, h\u0131zl\u0131 \u00f6\u011fren&#8221; DevOps prensibini destekler.<\/li>\n<li><strong>D\u00fc\u015f\u00fck Kaynak T\u00fcketimi:<\/strong> \u00d6zellikle ba\u015flang\u0131\u00e7 seviyesi i\u00e7in tasarland\u0131\u011f\u0131ndan, bir diz\u00fcst\u00fc bilgisayar veya sanal makine \u00fczerinde bile rahatl\u0131kla \u00e7al\u0131\u015fabilir. Bu, herkesin OpenStack ile pratik yapmas\u0131n\u0131 m\u00fcmk\u00fcn k\u0131lar, b\u00fcy\u00fck donan\u0131m yat\u0131r\u0131mlar\u0131 yapmaya gerek kalmaz.<\/li>\n<\/ul>\n<p>Bir vaka analizi olarak d\u00fc\u015f\u00fcnelim: Bir yaz\u0131l\u0131m geli\u015ftirme ekibi, kendi uygulamalar\u0131n\u0131n bulut ortam\u0131nda nas\u0131l performans g\u00f6sterdi\u011fini test etmek istiyor. Ancak, ger\u00e7ek bir OpenStack k\u00fcmesi kurmak veya halka a\u00e7\u0131k bulut sa\u011flay\u0131c\u0131lar\u0131nda s\u00fcrekli test yapmak maliyetli ve zaman al\u0131c\u0131 olabilir. MicroStack ile ekip, her geli\u015ftiricinin kendi yerel makinesinde veya payla\u015f\u0131lan k\u00fc\u00e7\u00fck bir sunucuda ba\u011f\u0131ms\u0131z bir OpenStack ortam\u0131 kurabilir. Bu ortamda uygulamalar\u0131n\u0131 da\u011f\u0131tabilir, farkl\u0131 sanal makine yap\u0131land\u0131rmalar\u0131n\u0131 deneyebilir ve otomatik testlerini \u00e7al\u0131\u015ft\u0131rabilirler. Bu sayede, hem geli\u015ftirme d\u00f6ng\u00fcs\u00fc h\u0131zlan\u0131r hem de ger\u00e7ek bulut ortam\u0131na ge\u00e7i\u015f \u00f6ncesi olas\u0131 sorunlar \u00f6nceden tespit edilebilir. MicroStack, OpenStack&#8217;in karma\u015f\u0131k d\u00fcnyas\u0131na yumu\u015fak bir ini\u015f yapman\u0131z\u0131 sa\u011flar. Temel konseptleri \u00f6\u011frenmek, API&#8217;lerle etkile\u015fim kurmak ve bulut altyap\u0131s\u0131 y\u00f6netimini pratik bir \u015fekilde deneyimlemek isteyen DevOps yeni ba\u015flayanlar\u0131 i\u00e7in m\u00fckemmel bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r. OpenStack&#8217;in sundu\u011fu t\u00fcm esneklik ve otomasyon potansiyelini, minimum \u00e7abayla ke\u015ffetmenizi sa\u011flar. Bu sayede, daha b\u00fcy\u00fck ve karma\u015f\u0131k OpenStack da\u011f\u0131t\u0131mlar\u0131na ge\u00e7i\u015f yapt\u0131\u011f\u0131n\u0131zda, sa\u011flam bir temel bilgi birikimine sahip olursunuz.<\/p>\n<h2>Ad\u0131m Ad\u0131m MicroStack Kurulumu ve \u0130lk Sanal Makinenizi Olu\u015fturma<\/h2>\n<p>Art\u0131k MicroStack&#8217;in ne oldu\u011funu ve neden \u00f6nemli oldu\u011funu anlad\u0131\u011f\u0131m\u0131za g\u00f6re, s\u0131ra geldi ellerimizi kirletmeye! &#8220;MicroStack&#8217;i bilgisayar\u0131ma nas\u0131l kurar\u0131m ve ilk bulut sanal makinemi nas\u0131l \u00e7al\u0131\u015ft\u0131r\u0131r\u0131m?&#8221; sorusunun cevab\u0131n\u0131 ad\u0131m ad\u0131m ke\u015ffedece\u011fiz. Unutmay\u0131n, bu s\u00fcre\u00e7 olduk\u00e7a basittir ve sizi k\u0131sa s\u00fcrede OpenStack d\u00fcnyas\u0131na ta\u015f\u0131yacakt\u0131r.<\/p>\n<h3>1. MicroStack Kurulumu: Haz\u0131rl\u0131k ve Komutlar<\/h3>\n<p>MicroStack&#8217;i kurmak i\u00e7in ihtiyac\u0131n\u0131z olan tek \u015fey bir Linux da\u011f\u0131t\u0131m\u0131d\u0131r (Ubuntu \u00f6nerilir) ve internet ba\u011flant\u0131s\u0131d\u0131r. \u00d6ncelikle, Snapd&#8217;nin sisteminizde kurulu oldu\u011fundan emin olun. Ubuntu&#8217;da varsay\u0131lan olarak gelir. E\u011fer farkl\u0131 bir da\u011f\u0131t\u0131m kullan\u0131yorsan\u0131z, Snapd&#8217;yi kurman\u0131z gerekebilir.<\/p>\n<p>Kuruluma ba\u015flamadan \u00f6nce, sisteminizin g\u00fcncel oldu\u011fundan emin olmak her zaman iyi bir pratiktir:<\/p>\n<pre><code>\nsudo apt update && sudo apt upgrade -y\n<\/pre>\n<p><\/code><\/p>\n<p>\u015eimdi, MicroStack'i kurabiliriz. Tek bir komutla, t\u00fcm OpenStack bile\u015fenleri Snap paketi olarak sisteminize y\u00fcklenecektir:<\/p>\n<pre><code>\nsudo snap install microstack --devmode --beta\n<\/pre>\n<p><\/code><\/p>\n<p><code>--devmode<\/code> ve <code>--beta<\/code> bayraklar\u0131, geli\u015ftirme ama\u00e7l\u0131 ve en g\u00fcncel beta s\u00fcr\u00fcm\u00fcn\u00fc kullanman\u0131z\u0131 sa\u011flar. Bu, en yeni \u00f6zelliklere ve d\u00fczeltmelere eri\u015fmenizi sa\u011flar. Kurulum biraz zaman alabilir, internet h\u0131z\u0131n\u0131za ve sisteminizin performans\u0131na ba\u011fl\u0131 olarak 5-15 dakika kadar s\u00fcrebilir. Kurulum tamamland\u0131ktan sonra, MicroStack'i ba\u015flatman\u0131z ve temel yap\u0131land\u0131rmas\u0131n\u0131 yapman\u0131z gerekir:<\/p>\n<pre><code>\nsudo microstack init --auto --control\n<\/pre>\n<p><\/code><\/p>\n<p><code>--auto<\/code> parametresi, otomatik olarak varsay\u0131lan a\u011f ve depolama ayarlar\u0131n\u0131 yap\u0131land\u0131rmas\u0131n\u0131 sa\u011flar. <code>--control<\/code> ise bu d\u00fc\u011f\u00fcm\u00fcn kontrol d\u00fczlemi g\u00f6revini \u00fcstlenece\u011fini belirtir, yani t\u00fcm OpenStack servislerini bu sunucuda \u00e7al\u0131\u015ft\u0131r\u0131r. Bu komutun \u00e7al\u0131\u015fmas\u0131 da birka\u00e7 dakika s\u00fcrebilir. Ba\u015far\u0131l\u0131 bir kurulumun ard\u0131ndan, MicroStack ortam\u0131n\u0131z kullan\u0131ma haz\u0131r olacakt\u0131r. Durumunu kontrol etmek i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabilirsiniz:<\/p>\n<pre><code>\nmicrostack.openstack status\n<\/pre>\n<p><\/code><\/p>\n<p>Bu komut, OpenStack servislerinin durumunu size g\u00f6sterecektir. Her \u015fey yolundaysa, t\u00fcm servislerin \"running\" (\u00e7al\u0131\u015f\u0131yor) durumda oldu\u011funu g\u00f6rmelisiniz. Ayr\u0131ca, OpenStack CLI (Komut Sat\u0131r\u0131 Aray\u00fcz\u00fc) ara\u00e7lar\u0131n\u0131 kullanabilmek i\u00e7in \u00e7evresel de\u011fi\u015fkenleri ayarlaman\u0131z gerekir. Bu, OpenStack komutlar\u0131n\u0131n MicroStack ortam\u0131n\u0131zla do\u011fru \u015fekilde etkile\u015fim kurmas\u0131n\u0131 sa\u011flar:<\/p>\n<pre><code>\nsource \/snap\/microstack\/common\/etc\/microstack.rc\n<\/pre>\n<p><\/code><\/p>\n<p>Bu komutu her yeni terminal oturumunda \u00e7al\u0131\u015ft\u0131rman\u0131z gerekecektir. \u0130sterseniz, bu sat\u0131r\u0131 <code>.bashrc<\/code> veya <code>.zshrc<\/code> dosyan\u0131za ekleyerek kal\u0131c\u0131 hale getirebilirsiniz. B\u00f6ylece her terminal a\u00e7t\u0131\u011f\u0131n\u0131zda bu komutu tekrar yazmak zorunda kalmazs\u0131n\u0131z.<\/p>\n<h3>2. \u0130lk Sanal Makinenizi (Instance) Olu\u015fturma: Ad\u0131m Ad\u0131m Rehber<\/h3>\n<p>Kurulumu tamamlad\u0131k! \u015eimdi en heyecan verici k\u0131sma ge\u00e7elim: \u0130lk sanal makinenizi olu\u015fturmak. Bu s\u00fcre\u00e7, birka\u00e7 temel ad\u0131mdan olu\u015fur ve size bir bulut ortam\u0131nda sanal makine y\u00f6netiminin nas\u0131l yap\u0131ld\u0131\u011f\u0131n\u0131 g\u00f6sterecektir.<\/p>\n<h4>Ad\u0131m 2.1: SSH Anahtar\u0131 Olu\u015fturma<\/h4>\n<p>Sanal makinenize g\u00fcvenli bir \u015fekilde eri\u015fmek i\u00e7in bir SSH anahtar \u00e7iftine ihtiyac\u0131m\u0131z var. E\u011fer zaten bir SSH anahtar\u0131n\u0131z varsa, onu kullanabilirsiniz. Yoksa, terminalinizde a\u015fa\u011f\u0131daki komutla yeni bir anahtar olu\u015fturabilirsiniz:<\/p>\n<pre><code>\nssh-keygen -t rsa -b 4096 -C \"microstack_key\"\n<\/pre>\n<p><\/code><\/p>\n<p>Komut, anahtar dosyas\u0131n\u0131n kaydedilece\u011fi yeri ve iste\u011fe ba\u011fl\u0131 bir parola isteyecektir. Varsay\u0131lan konum ve bo\u015f parola ile devam edebilirsiniz. Olu\u015fturulan genel anahtar\u0131n\u0131z\u0131 (public key) OpenStack'e aktarman\u0131z gerekir:<\/p>\n<pre><code>\nopenstack keypair create --public-key ~\/.ssh\/id_rsa.pub mykey\n<\/pre>\n<p><\/code><\/p>\n<p>Burada <code>mykey<\/code>, anahtar \u00e7iftinize verdi\u011finiz isimdir. <code>~\/.ssh\/id_rsa.pub<\/code> ise olu\u015fturdu\u011funuz genel anahtar dosyan\u0131z\u0131n yoludur. Bu ad\u0131m, sanal makinelerinize \u015fifre kullanmadan g\u00fcvenli eri\u015fim sa\u011flaman\u0131n temelini olu\u015fturur.<\/p>\n<h4>Ad\u0131m 2.2: Kullan\u0131lacak Bir Sanal Makine \u0130maj\u0131 Ekleme<\/h4>\n<p>Sanal makinenizi ba\u015flatmak i\u00e7in bir i\u015fletim sistemi imaj\u0131na ihtiyac\u0131m\u0131z var. MicroStack, ba\u015flang\u0131\u00e7ta baz\u0131 imajlarla gelir, ancak genellikle Ubuntu Cloud Image gibi g\u00fcncel bir imaj\u0131 kullanmak istersiniz. \u00d6rne\u011fin, Ubuntu 20.04 (Focal Fossa) imaj\u0131n\u0131 indirelim ve OpenStack'e ekleyelim:<\/p>\n<pre><code>\nwget https:\/\/cloud-images.ubuntu.com\/focal\/current\/focal-server-cloudimg-amd64.img\nopenstack image create \"Ubuntu Focal\" --file focal-server-cloudimg-amd64.img --disk-format qcow2 --container-format bare --public\n<\/pre>\n<p><\/code><\/p>\n<p>Bu komut, Ubuntu 20.04 imaj\u0131n\u0131 indirir ve <code>Ubuntu Focal<\/code> ad\u0131yla OpenStack'inize kaydeder. <code>qcow2<\/code> disk format\u0131 ve <code>bare<\/code> container format\u0131, bulut imajlar\u0131 i\u00e7in yayg\u0131n olarak kullan\u0131lan standartlard\u0131r.<\/p>\n<h4>Ad\u0131m 2.3: A\u011f ve G\u00fcvenlik Kurallar\u0131 (Security Group) Ayarlama<\/h4>\n<p>Sanal makinenizin d\u0131\u015f d\u00fcnya ile ileti\u015fim kurabilmesi ve SSH ile eri\u015filebilmesi i\u00e7in g\u00fcvenlik kurallar\u0131n\u0131 ayarlamam\u0131z gerekiyor. Varsay\u0131lan <code>default<\/code> g\u00fcvenlik grubuna SSH (port 22) eri\u015fimine izin veren bir kural ekleyelim. Ayr\u0131ca, ping g\u00f6ndermenize izin veren ICMP trafi\u011fi i\u00e7in de bir kural eklemek faydal\u0131 olacakt\u0131r:<\/p>\n<pre><code>\nopenstack security group rule create default --proto tcp --dst-port 22:22 --remote-ip 0.0.0.0\/0\nopenstack security group rule create default --proto icmp\n<\/pre>\n<p><\/code><\/p>\n<p>Bu kurallar, herhangi bir IP adresinden sanal makinenize SSH yapman\u0131za ve ping g\u00f6ndermenize izin verir. \u00dcretim ortamlar\u0131nda <code>0.0.0.0\/0<\/code> yerine belirli IP aral\u0131klar\u0131 kullanmak daha g\u00fcvenlidir. Bu ad\u0131m, bulut ortam\u0131n\u0131zda temel a\u011f g\u00fcvenli\u011fini sa\u011flaman\u0131n ilk ad\u0131m\u0131d\u0131r.<\/p>\n<h4>Ad\u0131m 2.4: Sanal Makineyi Ba\u015flatma<\/h4>\n<p>\u015eimdi her \u015fey haz\u0131r! Sanal makinenizi ba\u015flatabiliriz. Bir <code>flavor<\/code> (donan\u0131m profili) se\u00e7meniz gerekecek. <code>m1.tiny<\/code> genellikle testler i\u00e7in yeterlidir ve d\u00fc\u015f\u00fck kaynak t\u00fcketimi sa\u011flar.<\/p>\n<pre><code>\nopenstack flavor list\n<\/pre>\n<p><\/code><\/p>\n<p>Size mevcut flavor'lar\u0131 listeleyecektir. \u00d6rne\u011fin <code>m1.tiny<\/code> kullanal\u0131m. Sanal makinenizi \u015fu komutla ba\u015flat\u0131n:<\/p>\n<pre><code>\nopenstack server create --image \"Ubuntu Focal\" --flavor m1.tiny --key-name mykey --network public --wait my-first-instance\n<\/pre>\n<p><\/code><\/p>\n<p><code>--network public<\/code> OpenStack'in otomatik olarak olu\u015fturdu\u011fu varsay\u0131lan d\u0131\u015f a\u011fa ba\u011flanmas\u0131n\u0131 sa\u011flar. <code>my-first-instance<\/code> ise sanal makinenizin ad\u0131d\u0131r. <code>--wait<\/code> komutu, makine ba\u015flat\u0131lana kadar bekler ve size s\u00fcrecin tamamland\u0131\u011f\u0131na dair bilgi verir.<\/p>\n<div class=\"expert-tip\">Uzman \u0130pucu: OpenStack Dashboard (Horizon) ile de bu i\u015flemleri grafik aray\u00fcz \u00fczerinden yapabilirsiniz. Horizon'a eri\u015fmek i\u00e7in taray\u0131c\u0131n\u0131zdan <code>https:\/\/<MicroStack_IP_Adresi>\/horizon<\/code> adresine gidin. Kullan\u0131c\u0131 ad\u0131 ve \u015fifrenizi bulmak i\u00e7in <code>microstack.openstack config | grep 'OS_USERNAME\\|OS_PASSWORD'<\/code> komutunu kullanabilirsiniz. Ayr\u0131ca, Horizon'un modern aray\u00fcz\u00fc, mobil cihazlardan da kolayca y\u00f6netilebilir, bu da bulut kaynaklar\u0131n\u0131za her yerden eri\u015fmenizi sa\u011flar.<\/div>\n<h4>Ad\u0131m 2.5: Sanal Makineye Ba\u011flanma<\/h4>\n<p>Sanal makineniz ba\u015flad\u0131ktan sonra, ona atanm\u0131\u015f IP adresini \u00f6\u011frenmemiz gerekiyor:<\/p>\n<pre><code>\nopenstack server list --name my-first-instance -c Networks -f value\n<\/pre>\n<p><\/code><\/p>\n<p>Bu komut size sanal makinenizin IP adresini verecektir (\u00f6rne\u011fin, <code>10.20.20.123<\/code> gibi bir IP adresi). Art\u0131k SSH ile ba\u011flanabilirsiniz:<\/p>\n<pre><code>\nssh -i ~\/.ssh\/id_rsa ubuntu@<SANAL_MAK\u0130NE_IP_ADRES\u0130>\n<\/pre>\n<p><\/code><\/p>\n<p>Varsay\u0131lan kullan\u0131c\u0131 ad\u0131 genellikle <code>ubuntu<\/code> veya kulland\u0131\u011f\u0131n\u0131z imaja ba\u011fl\u0131 olarak <code>cloud-user<\/code> gibi bir isimdir. Tebrikler! \u0130lk OpenStack sanal makinenizi ba\u015far\u0131yla olu\u015fturdunuz ve ona ba\u011fland\u0131n\u0131z. Bu, OpenStack ile DevOps yolculu\u011funuzda \u00f6nemli bir ad\u0131md\u0131r. Bu deneyim, bulut altyap\u0131s\u0131 y\u00f6netimine dair size paha bi\u00e7ilmez bir ilk elden deneyim sunar.<\/p>\n<h2>DevOps Pratiklerinde OpenStack ve MicroStack Kullan\u0131m Senaryolar\u0131<\/h2>\n<p>MicroStack ile OpenStack'in temellerini \u00f6\u011frenmek ve ilk sanal makinenizi olu\u015fturmak harika bir ba\u015flang\u0131\u00e7. Peki, bu bilgileri ger\u00e7ek d\u00fcnya DevOps pratiklerine nas\u0131l entegre edebilirsiniz? \"MicroStack ve OpenStack'i DevOps d\u00f6ng\u00fcs\u00fcn\u00fcn hangi a\u015famalar\u0131nda kullanabiliriz?\" sorusunun yan\u0131t\u0131, asl\u0131nda platformun esnekli\u011finde yat\u0131yor. Gelin, birka\u00e7 farkl\u0131 senaryoyu inceleyelim.<\/p>\n<h3>Geli\u015ftirme Ortamlar\u0131n\u0131n Otomasyonu ve H\u0131zl\u0131 Kurulum<\/h3>\n<p>Bir geli\u015ftirme ekibinin, yeni bir \u00f6zellik \u00fczerinde \u00e7al\u0131\u015f\u0131rken veya bir hata giderirken kendi izole test ortamlar\u0131na ihtiya\u00e7 duydu\u011funu d\u00fc\u015f\u00fcn\u00fcn. Geleneksel yakla\u015f\u0131mlar, bu ortamlar\u0131n manuel olarak kurulmas\u0131n\u0131 gerektirebilir ki bu da zaman al\u0131c\u0131 ve hataya a\u00e7\u0131k bir s\u00fcre\u00e7tir. DevOps felsefesi ve OpenStack burada devreye girer. Altyap\u0131n\u0131n kod olarak y\u00f6netilmesi (IaC) sayesinde, bu s\u00fcre\u00e7ler tamamen otomatikle\u015ftirilebilir.<\/p>\n<p><strong>Vaka Analizi: Yeni Nesil Web Uygulamas\u0131 Geli\u015ftirme<\/strong><\/p>\n<p>Bir yaz\u0131l\u0131m \u015firketi, modern bir mikro hizmet tabanl\u0131 web uygulamas\u0131 geli\u015ftiriyor. Her mikro hizmetin kendi ba\u011f\u0131ml\u0131l\u0131klar\u0131 ve veritaban\u0131 gereksinimleri var. Geli\u015ftiricilerin her biri, kendi kod de\u011fi\u015fikliklerini test etmek i\u00e7in uygulaman\u0131n tam bir kopyas\u0131na ihtiya\u00e7 duyuyor. MicroStack kullanarak, her geli\u015ftirici kendi diz\u00fcst\u00fc bilgisayar\u0131nda hafif bir OpenStack ortam\u0131 kurabilir. Bu ortamda:<\/p>\n<ol>\n<li>Geli\u015ftirici, \u00f6nceden tan\u0131mlanm\u0131\u015f bir OpenStack \u015fablonu (\u00f6rne\u011fin Heat template veya Terraform ile olu\u015fturulmu\u015f bir yap\u0131land\u0131rma) kullanarak uygulaman\u0131n t\u00fcm mikro hizmetlerini i\u00e7eren sanal makineler, a\u011flar ve depolama birimlerini otomatik olarak olu\u015fturabilir.<\/li>\n<li>Bu \u015fablonlar, uygulaman\u0131n farkl\u0131 katmanlar\u0131 (\u00f6rne\u011fin, web sunucusu, uygulama sunucusu, veritaban\u0131) i\u00e7in ayr\u0131 sanal makineler olu\u015fturabilir ve bunlar\u0131n birbirleriyle g\u00fcvenli bir \u015fekilde ileti\u015fimini sa\u011flayan g\u00fcvenlik gruplar\u0131n\u0131 yap\u0131land\u0131rabilir.<\/li>\n<li>Geli\u015ftirici, kodunu bu sanal ortamda da\u011f\u0131t\u0131r, testlerini \u00e7al\u0131\u015ft\u0131r\u0131r ve de\u011fi\u015fikliklerinin entegrasyonu hakk\u0131nda an\u0131nda geri bildirim al\u0131r.<\/li>\n<li>\u0130\u015fleri bittikten sonra, tek bir komutla t\u00fcm bu ortam\u0131 silebilir ve kaynaklar\u0131 serbest b\u0131rakabilir.<\/li>\n<\/ol>\n<pre><code>\n# \u00d6rnek bir Terraform beti\u011fi ile OpenStack \u00fczerinde sanal makine olu\u015fturma\nresource \"openstack_compute_instance_v2\" \"dev_vm\" {\n  name        = \"my-dev-instance\"\n  image_name  = \"Ubuntu Focal\"\n  flavor_name = \"m1.small\"\n  key_pair    = \"mykey\"\n  network {\n    name = \"public\"\n  }\n  security_groups = [\"default\"]\n  user_data = <<-EOF\n    #!\/bin\/bash\n    sudo apt update\n    sudo apt install -y nginx\n    echo \"<h1>Merhaba MicroStack DevOps D\u00fcnyas\u0131!<\/h1>\" | sudo tee \/var\/www\/html\/index.nginx-debian.html\n  EOF\n}\n<\/pre>\n<p><\/code><\/p>\n<p>Bu senaryo, geli\u015ftirme ortamlar\u0131n\u0131n \"altyap\u0131 kodu\" olarak ele al\u0131nmas\u0131n\u0131 ve otomasyonunu sa\u011flar. Geli\u015ftiriciler, altyap\u0131 kurulumuyla u\u011fra\u015fmak yerine do\u011frudan kod yazmaya odaklanabilirler, bu da verimlili\u011fi art\u0131r\u0131r ve zaman kazand\u0131r\u0131r. Ayr\u0131ca, ortamlar aras\u0131 tutarl\u0131l\u0131k garantilenir, \u00e7\u00fcnk\u00fc her geli\u015ftirici ayn\u0131 yap\u0131land\u0131rmaya sahip bir ortam kullan\u0131r.<\/p>\n<h3>CI\/CD Boru Hatlar\u0131nda (Pipelines) Dinamik Test Ortamlar\u0131<\/h3>\n<p>S\u00fcrekli Entegrasyon\/S\u00fcrekli Da\u011f\u0131t\u0131m (CI\/CD) boru hatlar\u0131, modern DevOps s\u00fcre\u00e7lerinin bel kemi\u011fidir. Her kod de\u011fi\u015fikli\u011fi, bir dizi otomatik testten ge\u00e7er. Bu testlerin ger\u00e7ek\u00e7i bir ortamda yap\u0131lmas\u0131 kritik \u00f6neme sahiptir. MicroStack, bu dinami\u011fi sa\u011flamak i\u00e7in m\u00fckemmel bir ara\u00e7t\u0131r, \u00e7\u00fcnk\u00fc h\u0131zl\u0131 ve hafif bir test ortam\u0131 sa\u011flar.<\/p>\n<p><strong>Vaka Analizi: Otomatik U\u00e7tan Uca Test Ortam\u0131<\/strong><\/p>\n<p>Bir ekip, uygulamalar\u0131 i\u00e7in her kod g\u00f6nderimiyle birlikte \u00e7al\u0131\u015fan kapsaml\u0131 u\u00e7tan uca (end-to-end) testlere sahip. Bu testler, uygulaman\u0131n farkl\u0131 bile\u015fenlerinin ve entegrasyonlar\u0131n\u0131n do\u011fru \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak i\u00e7in ger\u00e7ek bir ortamda y\u00fcr\u00fct\u00fclmelidir. CI\/CD sunucusu (\u00f6rne\u011fin Jenkins, GitLab CI) a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 otomatik olarak ger\u00e7ekle\u015ftirebilir:<\/p>\n<ol>\n<li>Yeni bir kod g\u00f6nderimi alg\u0131lad\u0131\u011f\u0131nda, MicroStack API'lerini kullanarak tamamen yeni bir test ortam\u0131n\u0131 (birden fazla sanal makine, \u00f6zel a\u011f, veritaban\u0131 sunucusu vb.) dinamik olarak olu\u015fturur.<\/li>\n<li>Bu sanal makineler \u00fczerine uygulaman\u0131n en son s\u00fcr\u00fcm\u00fcn\u00fc otomatik olarak da\u011f\u0131t\u0131r. Bu da\u011f\u0131t\u0131m i\u00e7in Ansible, Chef veya Puppet gibi yap\u0131land\u0131rma y\u00f6netim ara\u00e7lar\u0131 kullan\u0131labilir.<\/li>\n<li>U\u00e7tan uca testleri bu yeni ortamda \u00e7al\u0131\u015ft\u0131r\u0131r. Test sonu\u00e7lar\u0131, CI\/CD panosunda raporlan\u0131r.<\/li>\n<li>Testler tamamland\u0131ktan sonra (ba\u015far\u0131l\u0131 veya ba\u015far\u0131s\u0131z), kaynak israf\u0131n\u0131 \u00f6nlemek i\u00e7in t\u00fcm test ortam\u0131n\u0131 otomatik olarak siler. Bu \"d\u00f6n\u00fc\u015ft\u00fcr\u00fclebilir altyap\u0131\" (cattle not pets) yakla\u015f\u0131m\u0131n\u0131 destekler.<\/li>\n<\/ol>\n<pre><code>\n# CI\/CD beti\u011finden \u00e7a\u011fr\u0131labilecek bir OpenStack CLI \u00f6rne\u011fi\n# Yeni bir sanal makine ba\u015flat\nopenstack server create --image \"Ubuntu Test Image\" --flavor m1.medium --key-name ci_key --network public --wait ci-test-vm\n# Sanal makine IP adresini al\nTEST_VM_IP=$(openstack server show ci-test-vm -c addresses -f value | grep -oE \"\\b([0-9]{1,3}\\.){3}[0-9]{1,3}\\b\")\n# Uygulamay\u0131 da\u011f\u0131t ve testleri \u00e7al\u0131\u015ft\u0131r (\u00f6rne\u011fin Ansible ile)\necho \"Uygulama da\u011f\u0131t\u0131l\u0131yor ve testler \u00e7al\u0131\u015ft\u0131r\u0131l\u0131yor: $TEST_VM_IP\"\n# ansible-playbook -i \"$TEST_VM_IP,\" deploy_and_test.yaml\n# Testler bittikten sonra sanal makineyi sil\nopenstack server delete ci-test-vm\n<\/pre>\n<p><\/code><\/p>\n<p>Bu yakla\u015f\u0131m, test ortamlar\u0131n\u0131n tutarl\u0131 olmas\u0131n\u0131, kaynaklar\u0131n etkin kullan\u0131lmas\u0131n\u0131 ve geli\u015ftirme ekiplerinin h\u0131zl\u0131 geri bildirim almas\u0131n\u0131 sa\u011flar. MicroStack, bu t\u00fcr senaryolar i\u00e7in h\u0131zl\u0131 ve yerel bir \"kum havuzu\" g\u00f6revi g\u00f6r\u00fcr, ger\u00e7ek \u00fcretim bulut ortamlar\u0131na benzer ko\u015fullar sunar.<\/p>\n<h3>\u00d6l\u00e7eklenebilirli\u011fi ve Esnekli\u011fi Deneme<\/h3>\n<p>OpenStack'in en b\u00fcy\u00fck avantajlar\u0131ndan biri, altyap\u0131y\u0131 h\u0131zla \u00f6l\u00e7ekleyebilme yetene\u011fidir. DevOps ekipleri, uygulamalar\u0131n\u0131n farkl\u0131 y\u00fckler alt\u0131nda nas\u0131l davrand\u0131\u011f\u0131n\u0131 ve otomatik \u00f6l\u00e7eklendirme mekanizmalar\u0131n\u0131n do\u011fru \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 test etmek isteyebilirler.<\/p>\n<p><strong>Vaka Analizi: Otomatik \u00d6l\u00e7eklendirme Testleri<\/strong><\/p>\n<p>Bir e-ticaret platformu, Kara Cuma gibi yo\u011fun d\u00f6nemlerde ani trafik art\u0131\u015flar\u0131yla ba\u015fa \u00e7\u0131kmak zorunda. Ekip, uygulaman\u0131n y\u00fck alt\u0131nda nas\u0131l tepki verdi\u011fini ve \u00f6nceden belirlenmi\u015f \u00f6l\u00e7eklendirme kurallar\u0131n\u0131n (\u00f6rne\u011fin CPU kullan\u0131m\u0131 %70'i a\u015ft\u0131\u011f\u0131nda yeni bir sanal makine ekle) do\u011fru \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak istiyor. MicroStack \u00fczerinde, bu t\u00fcr senaryolar\u0131 sim\u00fcle edebilirler:<\/p>\n<ol>\n<li>MicroStack'te bir temel uygulama ortam\u0131 olu\u015fturulur (bir web sunucusu, bir uygulama sunucusu).<\/li>\n<li>Y\u00fck testi ara\u00e7lar\u0131 (\u00f6rne\u011fin JMeter, Locust) kullan\u0131larak bu ortam \u00fczerine sahte trafik g\u00f6nderilir.<\/li>\n<li>Uygulama \u00fczerindeki y\u00fck artt\u0131k\u00e7a, OpenStack'in otomatik \u00f6l\u00e7eklendirme hizmetleri (\u00f6rne\u011fin Heat ile Orchestration ve Ceilometer\/Gnocchi ile Monitoring) taraf\u0131ndan izlenen metrikler, yeni sanal makinelerin otomatik olarak ba\u015flat\u0131lmas\u0131n\u0131 tetikler.<\/li>\n<li>Ekip, bu s\u00fcrecin sorunsuz i\u015fledi\u011fini ve uygulaman\u0131n performans\u0131n\u0131n korundu\u011funu do\u011frular.<\/li>\n<\/ol>\n<p>Bu senaryolar, MicroStack'in sadece bir \u00f6\u011frenme arac\u0131 olman\u0131n \u00f6tesinde, ger\u00e7ek d\u00fcnya DevOps zorluklar\u0131n\u0131 \u00e7\u00f6zmek i\u00e7in nas\u0131l kullan\u0131labilece\u011fini g\u00f6steriyor. OpenStack'in API odakl\u0131 yap\u0131s\u0131 ve MicroStack'in kolayl\u0131\u011f\u0131 sayesinde, geli\u015ftiriciler ve operasyon uzmanlar\u0131, bulut altyap\u0131s\u0131n\u0131 kodla y\u00f6netme ve otomasyon becerilerini h\u0131zla geli\u015ftirebilirler. Bu da, modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde rekabet avantaj\u0131 sa\u011flaman\u0131n anahtar\u0131d\u0131r.<\/p>\n<h2>Sonu\u00e7: OpenStack ve DevOps D\u00fcnyas\u0131nda \u0130lk Ad\u0131mlar\u0131n\u0131z<\/h2>\n<p>Bu makale boyunca, OpenStack ve DevOps d\u00fcnyas\u0131na MicroStack ile nas\u0131l ad\u0131m atabilece\u011finizi, temel kavramlar\u0131, kurulumu ve pratik kullan\u0131m senaryolar\u0131n\u0131 detayl\u0131 bir \u015fekilde inceledik. Amac\u0131m\u0131z, karma\u015f\u0131k g\u00f6r\u00fcnen bu teknolojileri sizin i\u00e7in anla\u015f\u0131l\u0131r ve ula\u015f\u0131labilir k\u0131lmakt\u0131. Unutmay\u0131n, modern yaz\u0131l\u0131m geli\u015ftirme ekosisteminde bulut bili\u015fim ve otomasyon, art\u0131k bir se\u00e7enek de\u011fil, bir zorunluluktur. MicroStack ise bu zorunlulu\u011fu keyifli bir \u00f6\u011frenme deneyimine d\u00f6n\u00fc\u015ft\u00fcren harika bir ara\u00e7t\u0131r.<\/p>\n<p>\u00d6zetle, OpenStack'in bir IaaS platformu olarak sundu\u011fu esneklik, \u00f6l\u00e7eklenebilirlik ve programlanabilirlik, DevOps k\u00fclt\u00fcr\u00fcn\u00fcn otomasyon, i\u015fbirli\u011fi ve s\u00fcrekli teslimat prensipleriyle birle\u015fti\u011finde ortaya inan\u0131lmaz bir potansiyel \u00e7\u0131kar. Geli\u015ftiriciler ve operasyon ekipleri, altyap\u0131y\u0131 kod olarak y\u00f6neterek daha h\u0131zl\u0131 \u00fcr\u00fcn teslimat\u0131 yapabilir, daha az hatayla kar\u015f\u0131la\u015f\u0131r ve inovasyona daha fazla zaman ay\u0131rabilirler. MicroStack, bu yolculu\u011fa ba\u015flamak i\u00e7in ideal bir \"e\u011fitim alan\u0131\" sa\u011flar; tam te\u015fekk\u00fcll\u00fc bir OpenStack deneyimini, masa\u00fcst\u00fc veya diz\u00fcst\u00fc bilgisayar\u0131n\u0131z\u0131n konforunda sunar.<\/p>\n<p>Bu s\u00fcre\u00e7te edindi\u011finiz bilgiler ve pratik deneyimler, sizi sadece MicroStack uzman\u0131 yapmakla kalmayacak, ayn\u0131 zamanda OpenStack'in daha b\u00fcy\u00fck ve \u00fcretim odakl\u0131 da\u011f\u0131t\u0131mlar\u0131na ge\u00e7i\u015finizde size sa\u011flam bir temel sunacakt\u0131r. Altyap\u0131y\u0131 kodla y\u00f6netme becerisi, modern DevOps m\u00fchendislerinin ve bulut mimarlar\u0131n\u0131n en de\u011ferli yetkinliklerinden biridir. Bu makaledeki ad\u0131mlar\u0131 takip ederek, bu yetkinli\u011fi kazanma yolunda \u00f6nemli bir ad\u0131m att\u0131n\u0131z. Art\u0131k kendi bulut altyap\u0131n\u0131z\u0131 kurmak ve y\u00f6netmek i\u00e7in gerekli temel bilgi ve becerilere sahipsiniz.<\/p>\n<p>\u015eimdi s\u0131ra sizde! Edindi\u011finiz bu bilgilerle deneyler yapmaya devam edin, farkl\u0131 OpenStack komutlar\u0131n\u0131 ve Horizon aray\u00fcz\u00fcn\u00fc ke\u015ffedin. Unutmay\u0131n, pratik yapmak, \u00f6\u011frenmenin en iyi yoludur. Ba\u015far\u0131lar dileriz!<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<dl>\n<dt>OpenStack \u00f6\u011frenmeye neden MicroStack ile ba\u015flamal\u0131y\u0131m?<\/dt>\n<dd>OpenStack'in tam bir da\u011f\u0131t\u0131m\u0131 karma\u015f\u0131k ve kaynak yo\u011fun olabilir. MicroStack, OpenStack'in t\u00fcm temel \u00f6zelliklerini tek bir makinede, kolay kurulum ve d\u00fc\u015f\u00fck kaynak t\u00fcketimi ile sunar. Bu, \u00f6\u011frenme ve geli\u015ftirme i\u00e7in ideal, d\u00fc\u015f\u00fck bariyerli bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r. Kurulum s\u00fcreci \u00e7ok daha basittir ve sizi temel konseptlere odaklanmaya te\u015fvik eder.<\/dd>\n<dt>MicroStack'i \u00fcretim ortamlar\u0131nda kullanabilir miyim?<\/dt>\n<dd>Hay\u0131r, MicroStack temel olarak \u00f6\u011frenme, test ve geli\u015ftirme ortamlar\u0131 i\u00e7in tasarlanm\u0131\u015ft\u0131r. Tek d\u00fc\u011f\u00fcml\u00fc mimarisi nedeniyle y\u00fcksek kullan\u0131labilirlik, hata tolerans\u0131 ve \u00f6l\u00e7eklenebilirlik gerektiren \u00fcretim ortamlar\u0131 i\u00e7in uygun de\u011fildir. \u00dcretim i\u00e7in tam te\u015fekk\u00fcll\u00fc OpenStack da\u011f\u0131t\u0131mlar\u0131 veya halka a\u00e7\u0131k bulut sa\u011flay\u0131c\u0131lar\u0131 tercih edilmelidir.<\/dd>\n<dt>OpenStack CLI ve Horizon (Dashboard) aras\u0131ndaki fark nedir?<\/dt>\n<dd>OpenStack CLI (Komut Sat\u0131r\u0131 Aray\u00fcz\u00fc), komut sat\u0131r\u0131 \u00fczerinden OpenStack kaynaklar\u0131n\u0131 y\u00f6netmenizi sa\u011flayan bir ara\u00e7t\u0131r. Otomasyon, betik yazma ve tekrarlanabilir g\u00f6revler i\u00e7in m\u00fckemmeldir. Horizon ise web tabanl\u0131, grafiksel bir kullan\u0131c\u0131 aray\u00fcz\u00fcd\u00fcr (Dashboard). Kaynaklar\u0131 g\u00f6rsel olarak izlemek, manuel y\u00f6netim yapmak ve yeni ba\u015flayanlar i\u00e7in daha kullan\u0131c\u0131 dostu bir deneyim sunar. Her ikisi de OpenStack y\u00f6netiminde \u00f6nemli roller oynar ve genellikle birlikte kullan\u0131l\u0131rlar.<\/dd>\n<dt>MicroStack'i kurarken veya kullan\u0131rken bir hata al\u0131rsam ne yapmal\u0131y\u0131m?<\/dt>\n<dd>\u00d6ncelikle, hata mesaj\u0131n\u0131 dikkatlice okuyun. Genellikle hata mesaj\u0131 sorunun ne oldu\u011funu veya nas\u0131l \u00e7\u00f6z\u00fclece\u011fini g\u00f6sterir. \u0130nternette hata mesaj\u0131n\u0131 aratmak, \u00e7o\u011fu zaman benzer sorunlarla kar\u015f\u0131la\u015fm\u0131\u015f di\u011fer kullan\u0131c\u0131lar\u0131n \u00e7\u00f6z\u00fcmlerine ula\u015fman\u0131z\u0131 sa\u011flar. MicroStack'in GitHub sayfas\u0131 veya Ubuntu topluluk forumlar\u0131 da iyi kaynaklard\u0131r. Ayr\u0131ca, kurulum s\u0131ras\u0131nda <code>--devmode<\/code> ve <code>--beta<\/code> parametrelerini kulland\u0131\u011f\u0131n\u0131zdan ve \u00e7evresel de\u011fi\u015fkenleri (<code>source \/snap\/microstack\/common\/etc\/microstack.rc<\/code>) ayarlad\u0131\u011f\u0131n\u0131zdan emin olun.<\/dd>\n<dt>MicroStack'i kurdu\u011fumda sanal makinelerimde internete eri\u015fimde sorun ya\u015f\u0131yorum, ne yapmal\u0131y\u0131m?<\/dt>\n<dd>MicroStack varsay\u0131lan olarak <code>public<\/code> ad\u0131nda bir a\u011f olu\u015fturur ve sanal makinelerinize NAT (Network Address Translation) \u00fczerinden internet eri\u015fimi sa\u011flar. E\u011fer sorun ya\u015f\u0131yorsan\u0131z, host makinenizin internet ba\u011flant\u0131s\u0131n\u0131 ve MicroStack'in a\u011f servislerinin (Neutron) durumunu kontrol edin. Bazen g\u00fcvenlik duvar\u0131 ayarlar\u0131 (ufw) veya DNS yap\u0131land\u0131rmas\u0131 sorunlara yol a\u00e7abilir. <code>sudo ufw status<\/code> komutuyla g\u00fcvenlik duvar\u0131 durumunu kontrol edebilir, gerekirse MicroStack i\u00e7in gerekli portlar\u0131 a\u00e7abilirsiniz. Ayr\u0131ca, sanal makinenizin a\u011f aray\u00fczlerinin do\u011fru IP adresi ald\u0131\u011f\u0131ndan emin olmak i\u00e7in <code>openstack server show <instance_name><\/code> komutunu kullanabilirsiniz.<\/dd>\n<\/dl>\n","protected":false},"excerpt":{"rendered":"Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde h\u0131z, esneklik ve \u00f6l\u00e7eklenebilirlik, i\u015fletmelerin en \u00f6nemli beklentilerinden biri haline geldi. Bu beklentileri kar\u015f\u0131laman\u0131n&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1400],"tags":[],"class_list":{"0":"post-30919","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-devops","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele<\/title>\n<meta name=\"description\" content=\"Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde h\u0131z, esneklik ve \u00f6l\u00e7eklenebilirlik, i\u015fletmelerin en \u00f6nemli beklentilerinden biri haline geldi. Bu beklentileri kar\u015f\u0131laman\u0131n anahtar\u0131 ise DevOps pratiklerini g\u00fc\u00e7l\u00fc bir bulut altyap\u0131s\u0131yla birle\u015ftirmekten ge\u00e7iyor. Peki, karma\u015f\u0131k bulut teknolojilerinden biri olan OpenStack&#039;i DevOps d\u00fcnyas\u0131na yeni ad\u0131m atan birisi olarak nas\u0131l \u00f6\u011frenebilirsiniz? \u0130\u015fte tam da bu noktada, OpenStack&#039;in hafif ve kullan\u0131m\u0131 kolay bir versiyonu olan MicroStack devreye giriyor. Bu makalede, OpenStack&#039;in temel prensiplerini, DevOps k\u00fclt\u00fcr\u00fcndeki yerini ve MicroStack ile nas\u0131l pratik deneyim kazanabilece\u011finizi ad\u0131m ad\u0131m ke\u015ffedece\u011fiz. Haz\u0131r m\u0131s\u0131n\u0131z? Gelin, bulut altyap\u0131n\u0131z\u0131 kendi ellerinizle y\u00f6netmenin keyfini \u00e7\u0131karal\u0131m!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele\" \/>\n<meta property=\"og:description\" content=\"Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde h\u0131z, esneklik ve \u00f6l\u00e7eklenebilirlik, i\u015fletmelerin en \u00f6nemli beklentilerinden biri haline geldi. Bu beklentileri kar\u015f\u0131laman\u0131n anahtar\u0131 ise DevOps pratiklerini g\u00fc\u00e7l\u00fc bir bulut altyap\u0131s\u0131yla birle\u015ftirmekten ge\u00e7iyor. Peki, karma\u015f\u0131k bulut teknolojilerinden biri olan OpenStack&#039;i DevOps d\u00fcnyas\u0131na yeni ad\u0131m atan birisi olarak nas\u0131l \u00f6\u011frenebilirsiniz? \u0130\u015fte tam da bu noktada, OpenStack&#039;in hafif ve kullan\u0131m\u0131 kolay bir versiyonu olan MicroStack devreye giriyor. Bu makalede, OpenStack&#039;in temel prensiplerini, DevOps k\u00fclt\u00fcr\u00fcndeki yerini ve MicroStack ile nas\u0131l pratik deneyim kazanabilece\u011finizi ad\u0131m ad\u0131m ke\u015ffedece\u011fiz. Haz\u0131r m\u0131s\u0131n\u0131z? Gelin, bulut altyap\u0131n\u0131z\u0131 kendi ellerinizle y\u00f6netmenin keyfini \u00e7\u0131karal\u0131m!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-03T08:32:24+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"17 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele\",\"datePublished\":\"2025-10-03T08:32:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/\"},\"wordCount\":4735,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Devops\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/\",\"name\":\"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-03T08:32:24+00:00\",\"description\":\"Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde h\u0131z, esneklik ve \u00f6l\u00e7eklenebilirlik, i\u015fletmelerin en \u00f6nemli beklentilerinden biri haline geldi. Bu beklentileri kar\u015f\u0131laman\u0131n anahtar\u0131 ise DevOps pratiklerini g\u00fc\u00e7l\u00fc bir bulut altyap\u0131s\u0131yla birle\u015ftirmekten ge\u00e7iyor. Peki, karma\u015f\u0131k bulut teknolojilerinden biri olan OpenStack'i DevOps d\u00fcnyas\u0131na yeni ad\u0131m atan birisi olarak nas\u0131l \u00f6\u011frenebilirsiniz? \u0130\u015fte tam da bu noktada, OpenStack'in hafif ve kullan\u0131m\u0131 kolay bir versiyonu olan MicroStack devreye giriyor. Bu makalede, OpenStack'in temel prensiplerini, DevOps k\u00fclt\u00fcr\u00fcndeki yerini ve MicroStack ile nas\u0131l pratik deneyim kazanabilece\u011finizi ad\u0131m ad\u0131m ke\u015ffedece\u011fiz. Haz\u0131r m\u0131s\u0131n\u0131z? Gelin, bulut altyap\u0131n\u0131z\u0131 kendi ellerinizle y\u00f6netmenin keyfini \u00e7\u0131karal\u0131m!\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele","description":"Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde h\u0131z, esneklik ve \u00f6l\u00e7eklenebilirlik, i\u015fletmelerin en \u00f6nemli beklentilerinden biri haline geldi. Bu beklentileri kar\u015f\u0131laman\u0131n anahtar\u0131 ise DevOps pratiklerini g\u00fc\u00e7l\u00fc bir bulut altyap\u0131s\u0131yla birle\u015ftirmekten ge\u00e7iyor. Peki, karma\u015f\u0131k bulut teknolojilerinden biri olan OpenStack'i DevOps d\u00fcnyas\u0131na yeni ad\u0131m atan birisi olarak nas\u0131l \u00f6\u011frenebilirsiniz? \u0130\u015fte tam da bu noktada, OpenStack'in hafif ve kullan\u0131m\u0131 kolay bir versiyonu olan MicroStack devreye giriyor. Bu makalede, OpenStack'in temel prensiplerini, DevOps k\u00fclt\u00fcr\u00fcndeki yerini ve MicroStack ile nas\u0131l pratik deneyim kazanabilece\u011finizi ad\u0131m ad\u0131m ke\u015ffedece\u011fiz. Haz\u0131r m\u0131s\u0131n\u0131z? Gelin, bulut altyap\u0131n\u0131z\u0131 kendi ellerinizle y\u00f6netmenin keyfini \u00e7\u0131karal\u0131m!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/","og_locale":"tr_TR","og_type":"article","og_title":"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele","og_description":"Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde h\u0131z, esneklik ve \u00f6l\u00e7eklenebilirlik, i\u015fletmelerin en \u00f6nemli beklentilerinden biri haline geldi. Bu beklentileri kar\u015f\u0131laman\u0131n anahtar\u0131 ise DevOps pratiklerini g\u00fc\u00e7l\u00fc bir bulut altyap\u0131s\u0131yla birle\u015ftirmekten ge\u00e7iyor. Peki, karma\u015f\u0131k bulut teknolojilerinden biri olan OpenStack'i DevOps d\u00fcnyas\u0131na yeni ad\u0131m atan birisi olarak nas\u0131l \u00f6\u011frenebilirsiniz? \u0130\u015fte tam da bu noktada, OpenStack'in hafif ve kullan\u0131m\u0131 kolay bir versiyonu olan MicroStack devreye giriyor. Bu makalede, OpenStack'in temel prensiplerini, DevOps k\u00fclt\u00fcr\u00fcndeki yerini ve MicroStack ile nas\u0131l pratik deneyim kazanabilece\u011finizi ad\u0131m ad\u0131m ke\u015ffedece\u011fiz. Haz\u0131r m\u0131s\u0131n\u0131z? Gelin, bulut altyap\u0131n\u0131z\u0131 kendi ellerinizle y\u00f6netmenin keyfini \u00e7\u0131karal\u0131m!","og_url":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-03T08:32:24+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"17 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele","datePublished":"2025-10-03T08:32:24+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/"},"wordCount":4735,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Devops"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/","url":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/","name":"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-03T08:32:24+00:00","description":"Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde h\u0131z, esneklik ve \u00f6l\u00e7eklenebilirlik, i\u015fletmelerin en \u00f6nemli beklentilerinden biri haline geldi. Bu beklentileri kar\u015f\u0131laman\u0131n anahtar\u0131 ise DevOps pratiklerini g\u00fc\u00e7l\u00fc bir bulut altyap\u0131s\u0131yla birle\u015ftirmekten ge\u00e7iyor. Peki, karma\u015f\u0131k bulut teknolojilerinden biri olan OpenStack'i DevOps d\u00fcnyas\u0131na yeni ad\u0131m atan birisi olarak nas\u0131l \u00f6\u011frenebilirsiniz? \u0130\u015fte tam da bu noktada, OpenStack'in hafif ve kullan\u0131m\u0131 kolay bir versiyonu olan MicroStack devreye giriyor. Bu makalede, OpenStack'in temel prensiplerini, DevOps k\u00fclt\u00fcr\u00fcndeki yerini ve MicroStack ile nas\u0131l pratik deneyim kazanabilece\u011finizi ad\u0131m ad\u0131m ke\u015ffedece\u011fiz. Haz\u0131r m\u0131s\u0131n\u0131z? Gelin, bulut altyap\u0131n\u0131z\u0131 kendi ellerinizle y\u00f6netmenin keyfini \u00e7\u0131karal\u0131m!","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/openstack-devops-baslangic-microstack-ile-el-ele\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"OpenStack DevOps Ba\u015flang\u0131\u00e7: MicroStack ile El-ele"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/30919","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=30919"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/30919\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=30919"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=30919"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=30919"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}