<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Huawei Developers - Türkiye - Medium]]></title>
        <description><![CDATA[HUAWEI Geliştiricileri olarak, Huawei ekosistemi ve güncel teknolojilerin kullanımı hakkında bilgi paylaştığımız Medium kanalımız - Medium]]></description>
        <link>https://medium.com/huawei-developers-tr?source=rss----cff1a46a0f08---4</link>
        <image>
            <url>https://cdn-images-1.medium.com/proxy/1*TGH72Nnw24QL3iV9IOm4VA.png</url>
            <title>Huawei Developers - Türkiye - Medium</title>
            <link>https://medium.com/huawei-developers-tr?source=rss----cff1a46a0f08---4</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Fri, 13 Nov 2026 04:36:19 GMT</lastBuildDate>
        <atom:link href="https://medium.com/feed/huawei-developers-tr" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Huawei’nin Sessiz Devrimi: HarmonyOS Neden Önemli?]]></title>
            <link>https://medium.com/huawei-developers-tr/huaweinin-sessiz-devrimi-harmonyos-neden-%C3%B6nemli-11f2de7fe029?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/11f2de7fe029</guid>
            <category><![CDATA[huawei]]></category>
            <category><![CDATA[android]]></category>
            <category><![CDATA[politics]]></category>
            <category><![CDATA[google]]></category>
            <category><![CDATA[technology]]></category>
            <dc:creator><![CDATA[Görkem Orhan Uysal]]></dc:creator>
            <pubDate>Wed, 02 Jul 2025 11:43:17 GMT</pubDate>
            <atom:updated>2025-07-02T11:43:17.282Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/800/1*btdRbWKtA3Uc8VHnqQXLrg.gif" /></figure><p>Birçoğumuzun akıllı telefon tercihleri yıllardır ya Android ya da iOS arasında dönüp duruyor. Sanki başka bir seçenek hiç olmamış gibi… Ama arka planda sessizce büyüyen bir üçüncü oyuncu var: Huawei’nin geliştirdiği <strong>HarmonyOS</strong>.</p><p>İlk başta bir “yaptırımın yan ürünü” gibi görünse de, bugün baktığımızda HarmonyOS’un yalnızca bir mobil işletim sistemi değil, <strong>bambaşka bir dijital yaklaşımın</strong> kapısını araladığını görüyoruz. Huawei, Google’sız da bir dünya mümkün diyerek sadece yazılımda değil, <strong>dijital egemenlik, veri güvenliği ve cihazlar arası bütünleşme</strong> gibi çok katmanlı bir vizyonla ilerliyor.</p><p>Bu yazıda HarmonyOS’un neden sadece bir “Huawei işi” değil, aslında <strong>teknoloji dünyasında ciddi bir paradigma kaymasına</strong> işaret ettiğini anlatacağım. Yani sessiz gibi görünen ama etkisi çok daha büyük olan bir devrimden bahsedeceğiz.</p><p>Çünkü bu sistemin yükselişi sadece Çin’i değil, <strong>hepimizi</strong> ilgilendiriyor.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*bcr7wwINtp-YNMi0" /></figure><h3>ABD Yaptırımları: Zorunluluktan Doğan Fırsat</h3><p>2019 yılını hatırlıyor musun? Huawei bir anda ABD’nin kara listesine girdi. Google, artık Huawei cihazlara Android lisansı veremeyeceğini açıkladı.<br> O gün milyonlarca kişi “Huawei bitti” dedi. Telefonlar Google servisleri olmadan ne işe yarardı ki?</p><p>Ama işte tam da orada ilginç bir şey oldu.</p><p>Huawei pes etmek yerine <strong>“madem dışarıdan alamıyoruz, biz de kendimiz yaparız”</strong> dedi. İşte HarmonyOS’un hikâyesi tam burada başlıyor. Bu sadece teknik bir hamle değil, aynı zamanda <strong>Huawei’nin bağımsızlık ilanıydı</strong>. Dışarıya olan bağımlılığın riskini doğrudan yaşamış bir şirket olarak, kendi yazılım altyapısını kurmak artık bir seçenek değil, bir zorunluluktu.</p><p>Bu karar, aslında Çin’in genel teknoloji politikasına da çok uygundu. Çin yıllardır “Made in China”dan “Created in China”ya geçiş yapmayı hedefliyordu. HarmonyOS, tam anlamıyla bu geçişin <strong>yumuşak ama güçlü</strong> bir adımı oldu.</p><p>Elbette kolay olmadı. İlk sürümler karışıktı, kullanıcılar tereddütlüydü, uygulama mağazası zayıftı. Ama Huawei geri adım atmadı.<br> Ve en önemlisi: Bu sistem sadece bir alternatif değil, <strong>farklı bir felsefeyle</strong> inşa edilmeye başlandı.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*ciBSQf1VguoMRUtD.jpg" /></figure><h3>Android’den Farklı Bir Yol: HarmonyOS’un Temel Felsefesi</h3><p>HarmonyOS’a bakıp da “Bu da Android gibi bir şey işte” demek çok kolay. Çünkü ilk sürümleri gerçekten Android’e fazlasıyla benziyordu. Hatta teknik olarak Android tabanlı bazı katmanlar da içeriyordu.<br> Ama işin aslı şu: Huawei’nin hedefi Android’in kopyası olmak değil, <strong>onun ötesine geçmek</strong>.</p><p>HarmonyOS’un temel felsefesi, “tek cihaz, tek sistem” anlayışını yıkmak. Android ve iOS büyük ölçüde <strong>telefon odaklı</strong> sistemler. Saatler, tabletler, televizyonlar, hatta otomobiller için bu sistemler genelde ayrı ayrı optimize edilir.<br> Ama HarmonyOS baştan aşağı “çoklu cihazlar” için tasarlanmış. Yani bir telefonla başlayan deneyim, bir anda saatinize, televizyonunuza hatta akıllı ev cihazlarınıza sorunsuz bir şekilde <strong>dağılabiliyor</strong>.</p><p>Bir örnekle anlatalım: Telefonundaki bir videoyu televizyonda izlemek istiyorsun. Android’de bu süreç biraz zahmetli olabilir. Ama HarmonyOS’ta cihazlar birbirlerini otomatik tanıyor. Tek tıklamayla geçiş yapabiliyorsun. Aynı şekilde bir kulaklığı hem bilgisayara hem telefona aynı anda bağlayabiliyorsun.<br> Bu tarz geçişler, HarmonyOS’un “<strong>Super Device</strong>” dediği teknoloji sayesinde mümkün oluyor.</p><p>Bu arada sistemin temelinde Android değil, <strong>mikro-kernel tabanlı bir yapı</strong> var. Android’in büyük ve karmaşık monolitik çekirdeği yerine, daha küçük, daha güvenli ve daha modüler bir mimari düşünülmüş. Bu da sistemin daha kararlı çalışmasına ve hızlı güncellenmesine imkân tanıyor.</p><p>Yani özetle: Huawei Android’i taklit etmiyor. Tam tersine, Android’in sınırlarını aşmayı deniyor.<br> Ve bu yüzden, HarmonyOS sadece bir alternatif değil, <strong>yeni bir sistem anlayışının temsilcisi</strong> olabilir.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*NccGTt-Fo1pkGrtO.jpg" /></figure><h3>Huawei’nin Ekosistem Vizyonu: Telefonun Ötesi</h3><p>Bugün bir telefon alırken artık sadece “kamerası nasıl?”, “ekranı iyi mi?” diye sormuyoruz. Asıl soru şu: <strong>Bu cihaz diğer cihazlarla ne kadar iyi anlaşıyor?</strong><br> Apple bunu yıllardır başarıyla yapıyor. iPhone, MacBook, Apple Watch ve AirPods birbiriyle neredeyse telepatik düzeyde haberleşiyor. İşte Huawei’nin HarmonyOS’la yapmak istediği şey de tam olarak bu: <strong>Kendi süper ekosistemini kurmak.</strong></p><p>Ama Huawei bunu sadece kendi cihazları arasında değil, çok daha geniş bir evren için düşünüyor:<br> Televizyonlar, akıllı saatler, buzdolapları, arabalar, hoparlörler, kameralar…<br> Hepsi <strong>aynı işletim sisteminde çalışacak</strong>, hepsi <strong>birbiriyle konuşabilecek</strong>.</p><p>Bu vizyonun adı: <strong>“1+8+N” stratejisi.</strong></p><ul><li>“1” = telefon</li><li>“8” = saat, kulaklık, TV, otomobil, bilgisayar gibi tamamlayıcı cihazlar</li><li>“N” = sonsuz sayıda IoT cihazı (akıllı ev, sağlık cihazları, vs.)</li></ul><p>Huawei bu yapıyla sadece bir telefon üreticisi olmaktan çıkıp, <strong>kendi dijital evrenini inşa eden bir platform oyuncusuna</strong> dönüşmek istiyor.</p><p>HarmonyOS sayesinde, telefonundaki bir belgeyi doğrudan dizüstü bilgisayarına sürükleyip bırakabiliyorsun. Saatinden müziği hoparlöre aktarabiliyorsun.<br> Üstelik bu geçişler sadece “uyumlu” değil; <strong>doğal ve hızlı</strong>. Yani sistem seni uğraştırmıyor, nereye geçmen gerekiyorsa oraya kendiliğinden akıyor.</p><p>Kulağa biraz “gelecekten gelen teknoloji” gibi gelse de, Çin’de milyonlarca kişi bunu <strong>bugün kullanıyor</strong>. Belki de bu vizyonu önce Çin’de kusursuzlaştırıp sonra dünyaya açma niyetindeler.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*cjoamW-pVVcpl5KpGXKRHQ.png" /></figure><h3>Dijital Egemenlik Perspektifi: Teknolojiyle Bağımsızlık</h3><p>Bugün interneti kullanırken fark etmesek de, hayatımızın büyük kısmı <strong>birkaç Amerikan şirketinin yazılımlarına</strong> bağlı.<br> Google, Apple, Microsoft, Amazon, Meta… Bunlar dünya çapında milyarlarca insanın dijital yaşamına yön veriyor.<br> Ama peki ya bir ülke, bu dijital bağımlılığı <strong>kırmak isterse</strong>?</p><p>İşte HarmonyOS’un arkasındaki asıl mesele tam olarak bu: <strong>dijital egemenlik</strong>.<br> Huawei’nin bu işletim sistemini geliştirmesi sadece teknik değil, <strong>jeopolitik bir refleks</strong>. Çünkü ABD’nin uyguladığı yaptırımlar Çin’e, dijital dünyada ne kadar dışa bağımlı olduğunu çok net gösterdi.</p><p>Google servislerine erişimin engellenmesi, yalnızca bir şirketin değil, bir ülkenin teknoloji altyapısını etkiledi. Huawei gibi bir dev bile bir sabah uyanıp uygulama mağazası, harita hizmeti, bulut servisi olmadan kaldıysa… bu, Çin için büyük bir kırılmaydı.</p><p>HarmonyOS bu anlamda, sadece bir işletim sistemi değil:<br> 🔹 <strong>Ulusal strateji</strong>,<br> 🔹 <strong>Veri güvenliği</strong>,<br> 🔹 <strong>Teknolojik özerklik</strong> hedeflerinin bir yansıması.</p><p>Ve bu sadece Çin’e özgü değil. Türkiye, Hindistan, Rusya gibi birçok ülke de artık dijital altyapılarını yerelleştirme ve kontrolü dışarıya bırakmama eğiliminde.<br> Yani “teknolojik bağımsızlık” sadece donanım üretmekle değil, <strong>yazılımı da senin kontrol etmenle</strong> başlıyor.</p><p>Huawei’nin HarmonyOS hamlesi, işte tam bu noktada örnek bir model olabilir.<br> Kendi mağazan, kendi servislerin, kendi sistemin varsa, biri fişi çektiğinde ayakta kalabiliyorsun.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*RHLz61uMoZx7Z3g5.jpeg" /></figure><p>Huawei’nin HarmonyOS hamlesi, dışarıdan bakıldığında sadece yeni bir işletim sistemi gibi durabilir. Ama aslında bu adım, teknoloji dünyasında çok daha derin bir dönüşümün sinyallerini veriyor.<br> Bir şirketin, baskılarla karşılaştığında geri çekilmek yerine, <strong>kendi dijital yolunu çizmeye karar vermesi</strong>, sıradan bir tepki değil; bu bir vizyon meselesi.</p><p>HarmonyOS yalnızca Android’in yerine geçmiyor. Aynı zamanda cihazlar arası entegrasyonu, güvenliği, veri egemenliğini ve bağımsızlığı önceleyen <strong>yeni bir yaklaşımı</strong> temsil ediyor.<br> Belki bugün hala dünya genelinde Android ve iOS’un gölgesinde. Ama Çin’de milyonlarca cihazda çalışıyor, her geçen gün gelişiyor ve sınırlarını zorluyor.</p><p>Bu yazıda HarmonyOS’un çıkış noktasından, mimarisine ve stratejik vizyonuna kadar geniş bir resme baktık.<br> Sonuç olarak diyebiliriz ki:</p><blockquote><em>HarmonyOS’un başarısı, sadece Huawei’nin değil; dijital dünyada alternatiflere yer açmak isteyen herkesin kazanımı olabilir.</em></blockquote><h3>✨ Okuduğunuz için teşekkür ederim!</h3><p>Eğer yazıyı beğendiysen, yorumlarda düşüncelerini duymak beni mutlu eder.<br> HarmonyOS hakkında ne düşünüyorsun? Sence gerçek bir alternatif olabilir mi?</p><p>Takip etmeyi ve Medium’da desteklemeyi unutma!</p><p><a href="https://tr.linkedin.com/in/gorkem-orhan-uysal">https://tr.linkedin.com/in/gorkem-orhan-uysal</a></p><p>Görkem Orhan Uysal</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=11f2de7fe029" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/huaweinin-sessiz-devrimi-harmonyos-neden-%C3%B6nemli-11f2de7fe029">Huawei’nin Sessiz Devrimi: HarmonyOS Neden Önemli?</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Huawei Cloud’un Gizli Silahı: Kunpeng ve Ascend ile Heterojen Bilişim Devrimi]]></title>
            <link>https://medium.com/huawei-developers-tr/huawei-cloudun-gizli-silah%C4%B1-kunpeng-ve-ascend-ile-heterojen-bili%C5%9Fim-devrimi-1bc57cafaec0?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/1bc57cafaec0</guid>
            <category><![CDATA[huawei]]></category>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[cloud]]></category>
            <category><![CDATA[edge]]></category>
            <category><![CDATA[performance]]></category>
            <dc:creator><![CDATA[Görkem Orhan Uysal]]></dc:creator>
            <pubDate>Wed, 02 Jul 2025 11:42:56 GMT</pubDate>
            <atom:updated>2025-07-02T11:42:56.339Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/800/1*QD4jvU-PgXlv26IgRwEv9A.jpeg" /></figure><h3>Bulut Savaşlarının Yeni Cephesi</h3><p>Son birkaç yıldır bulut bilişim sektörü neredeyse “teknolojinin kalbi” haline geldi. Eskiden sadece veri yedeklemek ya da birkaç uygulamayı ayağa kaldırmak için kullanılan bu altyapılar, bugün yapay zekâdan 5G’ye, oyunlardan devlet sistemlerine kadar her şeyin temelini oluşturuyor.</p><p>Doğal olarak, <strong>büyük oyuncuların savaşı da iyice kızıştı</strong>: AWS, Azure, Google Cloud derken Huawei Cloud da bu sahneye kendi tarzıyla çıktı — ama sadece yazılım hizmeti sunmakla değil, işin donanımına da el atarak.</p><p>Özellikle 2024 ve 2025&#39;te, yapay zekâ modellerinin büyüklüğü patlama yaşayınca bu platformların “ne kadar güçlü donanım sunabildiği” belirleyici hale geldi. Şirketler artık sadece “hızlı sunucu” istemiyor, aynı zamanda enerji verimli, AI’ya uygun ve esnek altyapı istiyor.</p><p>Burada Huawei, “Ben sadece yazılım sunmuyorum; kendi işlemcimi de üretiyorum” diyerek rekabette dikkatleri üzerine çekti. Ve evet, Kunpeng ve Ascend çipleriyle bunu ciddi ciddi başarıyorlar.</p><p>Yani artık bulutta rekabet sadece yazılım hizmetleriyle değil, <strong>“donanımı kim daha iyi kontrol ediyor?”</strong> sorusuyla şekilleniyor.</p><h3>Artık sadece yazılım değil, donanım da fark yaratıyor</h3><p>Bir dönem bulut hizmetlerinde sadece yazılım konuşuluyordu. Kim daha kolay arayüz sunuyor? Kim daha fazla servis entegre ediyor? Kim daha hızlı ölçeklenebiliyor? Ama 2023’ten sonra, özellikle yapay zekânın dev modelleri (GPT-4, Llama, Claude vs.) ortalığı kasıp kavururken, başka bir gerçek ortaya çıktı:<br> <strong>Donanımı kontrol edemeyen, rekabeti sürdüremiyor.</strong></p><p>Çünkü artık işler sadece “sunucu çalışıyor mu?” seviyesinde değil. Bir yapay zekâ modelini eğitmek günler sürebiliyor, binlerce işlemci saatine, müthiş enerjiye ve yüksek aktarım hızlarına ihtiyaç var. İşte tam bu noktada altyapının kalitesi, yani donanımın kendisi devreye giriyor.</p><p>Bu yüzden büyük oyuncular kendi çiplerini üretmeye başladı:</p><ul><li><strong>Amazon</strong> → Graviton</li><li><strong>Google</strong> → TPU</li><li><strong>Huawei</strong> → Kunpeng (CPU) ve Ascend (NPU)</li></ul><p>Ancak Huawei burada diğerlerinden biraz daha farklı bir noktada duruyor:<br> <strong>Sadece yazılım hizmeti değil, çipten bulut hizmetine kadar tüm zinciri kendi inşa ediyor.</strong><br> Yani veriyi işleyen donanım da onların, bu verinin üzerinde koşan yapay zekâ çerçevesi de (MindSpore), ve elbette sunulan hizmetler de…</p><p>Bu yaklaşım, özellikle performansın, güvenliğin ve yerelleştirmenin kritik olduğu bölgelerde Huawei’ye ciddi bir avantaj sağlıyor. Ve bu da sektörde “donanım sahibi olmak” kavramının yeniden tanımlandığı bir döneme işaret ediyor.</p><h3>Huawei’nin bu yarıştaki benzersiz konumu</h3><p>Huawei, bulut pazarındaki rekabetin kurallarını biraz farklı yazıyor. AWS, Azure ve Google gibi rakipler genellikle “yazılım hizmeti + kiralık donanım” formülünü izlerken, Huawei bunun çok ötesine geçmiş durumda: <strong>Kendi işlemcisini, kendi yapay zekâ çipini ve kendi bulut ekosistemini geliştiriyor.</strong></p><p>Bu şu demek:</p><ul><li>Sunucuların içinde çalışan işlemciler <strong>Huawei’nin kendi üretimi (Kunpeng)</strong></li><li>AI iş yüklerini taşıyan NPU’lar <strong>yine Huawei’nin kendi tasarımı (Ascend)</strong></li><li>Yapay zekâ modelleri için sunduğu platformlar da <strong>Huawei’nin geliştirdiği (ModelArts, MindSpore)</strong></li></ul><p>Yani sistemin her parçası aynı üreticiden çıkıyor ve birbirine tam uyumlu şekilde optimize ediliyor. Bu tür <strong>uçtan uca entegrasyon</strong>, sadece performans anlamında değil, <strong>güvenlik, veri egemenliği</strong> ve <strong>maliyet kontrolü</strong> gibi konularda da çok ciddi avantajlar sağlıyor.</p><p>Dahası, Huawei bu yaklaşımıyla sadece “bir alternatif” değil, özellikle <strong>gelişmekte olan ülkelerde bağımsızlık arayan devletler ve kurumlar için stratejik bir tercih</strong> haline geliyor.</p><h3>Heterojen Bilişim Nedir ve Neden Önemlidir?</h3><p>Teknoloji dünyasında son zamanlarda sıkça duyduğumuz bir terim var: <strong>heterojen bilgi işlem</strong>. Peki bu tam olarak ne anlama geliyor?</p><p>Kısaca anlatmak gerekirse, heterojen bilgi işlem; farklı türde işlem birimlerinin — yani sadece CPU değil, aynı zamanda GPU, NPU (neural processing unit) ve hatta FPGA gibi özel işlemcilerin — <strong>birlikte çalışarak görevleri daha verimli şekilde yerine getirdiği bir mimari yapıdır</strong>.</p><p>Düşün ki bir bilgisayarda sadece bir çeşit beyin var ve her işi o yapmaya çalışıyor — mantıklı ama verimsiz. Heterojen yapı ise farklı “beyinleri” uzmanlıklarına göre görevlendiriyor:</p><ul><li><strong>CPU (merkezi işlem birimi)</strong> → genel işler, mantıksal hesaplamalar</li><li><strong>GPU (grafik işlemci)</strong> → paralel işlem gereken görevler, örneğin görüntü işleme</li><li><strong>NPU (sinir ağı işlemcisi)</strong> → yapay zekâ, derin öğrenme çıkarımı</li></ul><p>Yani iş yüküne göre “en doğru işlemci tipi” devreye giriyor. Böylece hem <strong>performans artıyor</strong>, hem de <strong>enerji tasarrufu sağlanıyor</strong>.</p><p>Huawei, bu yapının gücünü erken fark eden firmalardan biri. Kunpeng (ARM CPU) ve Ascend (AI NPU) ile kendi heterojen bilgi işlem altyapısını kurarak klasik “her işi CPU ile yap” anlayışını geride bırakıyor.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/800/0*TGjUR-GHmw2LXjjx" /></figure><h3>Farklı çip türlerinin görevleri (CPU, GPU, NPU)</h3><p>Her işlemci türü farklı bir “uzmanlık alanına” sahiptir. Hepsi bir şeyler hesaplar, ama nasıl ve ne kadar verimli hesapladıkları çok farklıdır. Hadi bunları basitçe tanıyalım:</p><h3>CPU (Central Processing Unit) — Genel Uzman</h3><p>CPU, bilgisayarın klasik işlemcisidir. Her işten biraz anlar ama hiçbir işte uzman değildir.</p><ul><li><strong>Ne yapar?</strong><br> Web sunucularını, veritabanlarını, dosya işlemlerini, işletim sistemlerini çalıştırır.</li><li><strong>Avantajı:</strong> Esnektir, çok yönlüdür.</li><li><strong>Dezavantajı:</strong> Paralel işlemde zayıf kalır.</li></ul><h3>GPU (Graphics Processing Unit) — Paralel İşlem Ustası</h3><p>GPU, görüntü işlemeden doğdu ama zamanla yapay zekâ, bilimsel hesaplama ve video işleme gibi alanlara kaydı.</p><ul><li><strong>Ne yapar?</strong><br> Aynı anda binlerce küçük işlemi yapar; özellikle büyük matris hesaplamalarında (AI modelleri gibi) çok hızlıdır.</li><li><strong>Avantajı:</strong> Yüksek paralellik sayesinde büyük veri işlerinde süper hızlıdır.</li><li><strong>Dezavantajı:</strong> Esneklik düşer, her iş için uygun değildir.</li></ul><h3>NPU (Neural Processing Unit) — Yapay Zekâ Uzmanı</h3><p>NPU, yapay zekâ çıkarımı (inference) ve sinir ağı işlemleri için özel tasarlanmış bir çip türüdür.</p><ul><li><strong>Ne yapar?</strong><br> Bir modelin eğitimi sırasında veya özellikle gerçek zamanlı karar vermede (örneğin bir kamera görüntüsünde kişi tanıma) çok etkilidir.</li><li><strong>Avantajı:</strong> AI için optimize edilmiş işlem gücü ve enerji verimliliği sağlar.</li><li><strong>Dezavantajı:</strong> Diğer genel işler için kullanılamaz; sadece AI görevlerine uygundur.</li></ul><p>Huawei, bu üç tip işlemciyi bir araya getirerek uygulamaları hem hızlı, hem verimli, hem de AI destekli çalıştırabilecek bir altyapı sunuyor. İşte bu yüzden heterojen bilgi işlem yalnızca bir teknoloji değil, yeni nesil bulut altyapısının temel taşı.</p><h3>Performans, verimlilik ve maliyet avantajları</h3><p>Farklı çip türlerini bir arada kullanmak sadece “teknolojik olarak havalı” bir şey değil, <strong>çok net avantajlar sağlıyor</strong>: daha hızlı çalışan sistemler, daha düşük enerji tüketimi ve sonuç olarak daha az maliyet.</p><p>İşte nasıl çalıştığını birkaç örnekle anlatalım:</p><h3>Performans: Doğru iş, doğru çipe</h3><p>Bir AI modelini klasik CPU ile eğitmeye kalkarsan bu günler sürer. Ama aynı modeli GPU veya NPU ile eğitirsen işlem süresi saatlere inebilir. Heterojen mimari sayesinde sistem, hangi işi hangi çipin yapacağını bilir ve ona göre yönlendirir.</p><blockquote><em>Huawei’nin Ascend 910 çipi, AI eğitimi için NVIDIA V100’e benzer performans sunuyor ama enerji tüketimi çok daha düşük.</em></blockquote><h3>Verimlilik: Daha az enerji, daha çok iş</h3><p>Her işi CPU’ya yıkmak hem enerji israfı, hem de gereksiz yavaşlık demektir. Oysa GPU ve NPU’lar belirli görevlerde hem daha hızlı çalışır hem de <strong>daha az enerji tüketir</strong>. Bu da hem karbon ayak izini azaltır hem veri merkezi faturanı.</p><blockquote><em>Huawei Cloud, heterojen mimaride çalıştırılan uygulamalarda </em><strong><em>%30’a kadar daha düşük enerji tüketimi</em></strong><em> raporluyor.</em></blockquote><h3>Maliyet: Daha az donanım, daha az masraf</h3><p>Daha verimli çalışan sistem, <strong>daha az fiziksel donanıma ihtiyaç duyar</strong>. Bu da hem donanım yatırımı, hem de soğutma, bakım gibi operasyonel giderleri azaltır. Ayrıca iş yükü daha kısa sürede tamamlandığı için kullanıcı da <strong>daha az saatlik ücret</strong> öder.</p><blockquote><em>Huawei’nin Kunpeng temelli bulut sunucuları, bazı iş yüklerinde </em><strong><em>Intel’e göre %20’ye varan maliyet avantajı</em></strong><em> sunuyor.</em></blockquote><p>Kısacası heterojen bilgi işlem; yalnızca daha güçlü değil, aynı zamanda daha <strong>ekonomik ve sürdürülebilir bir altyapı</strong> sunuyor. Özellikle AI, büyük veri ve IoT gibi ağır iş yüklerinde bu fark çarpıcı şekilde hissediliyor.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PlaIfegLNv1Z8aWv9tUBIQ.png" /></figure><h3>Modern iş yükleri için neden kritik hale geldi?</h3><p>Bugünün iş yükleri artık “birkaç veri al, biraz hesap yap” seviyesinde değil. Özellikle yapay zekâ, büyük veri, görüntü işleme, gerçek zamanlı analiz gibi uygulamalar klasik CPU mimarilerinin sınırlarını zorluyor.</p><h3>İş yükleri artık çok daha karmaşık</h3><ul><li>Bir e-ticaret uygulamasında; kullanıcı öneri sistemleri çalışıyor (AI), arka planda ödeme sistemleri güvenlik kontrolü yapıyor (kriptografi), bir yandan da binlerce kullanıcı aynı anda işlem yapıyor (yüksek erişilebilirlik).</li><li>Tüm bu işlemleri <strong>sadece CPU</strong> ile yapmaya kalkmak verimliliği düşürüyor, maliyeti artırıyor.</li></ul><h3>Hız artık lüks değil, şart</h3><p>AI modelleri saniyeler içinde cevap vermeli. Gerçek zamanlı görüntü işleme, ses tanıma ya da kredi skorlama sistemleri gecikmeye tahammül edemez. İşte bu yüzden, işi GPU veya NPU’ya devretmek gerekiyor.<br> <strong>Hangi işi kimin daha iyi yapacağını bilmek = zaman ve kalite kazanmak.</strong></p><h3>Donanım ihtiyacı sadece büyük şirketlerde değil</h3><p>Eskiden bu tarz hesaplamalar sadece dev kurumların derdiydi ama artık orta ve küçük ölçekli şirketler de AI çözümleri, büyük veri analitiği, hatta edge computing yapıyor. Bu da heterojen yapıyı, herkese lazım hale getiriyor.</p><h3>Huawei burada ne yapıyor?</h3><p>Huawei Cloud, Kunpeng + Ascend altyapısıyla <strong>bu modern iş yüklerine özel, optimize çözümler</strong> sunuyor. Yani ihtiyaca göre CPU, GPU, NPU kullanılacak şekilde iş yükü otomatik dağıtılıyor. Bu da daha <strong>hızlı, verimli ve ölçeklenebilir</strong> bir sistem anlamına geliyor.</p><h3>Kunpeng: Huawei’nin ARM Tabanlı Bulut İşlemcisi</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/650/0*Xs_wCuRbEmYLjn9c.png" /></figure><h3>Kunpeng çip mimarisi ve teknik özellikleri</h3><p>Huawei’nin “sıfırdan kendi işlemcisini üretme” kararı kulağa çılgınca gelebilir ama Kunpeng mimarisiyle bunun hiç de öyle olmadığını kanıtladılar.</p><p>Kunpeng işlemciler, ARM mimarisi üzerine inşa edildi. Yani klasik x86 mimarisine alternatif olarak, daha <strong>verimli, modüler ve esnek</strong> bir yapı sunuyor. Özellikle enerji tüketiminin kritik olduğu bulut veri merkezlerinde bu mimari çok büyük avantaj sağlıyor.</p><h3>Peki teknik olarak Kunpeng neler sunuyor?</h3><p>En çok bilinen versiyonu olan <strong>Kunpeng 920</strong>, ilk kez 2019’da tanıtıldı ama hala güçlü bir oyuncu. Şöyle bir genel bakış yapalım:</p><ul><li><strong>İşlemci çekirdek sayısı:</strong> 64 çekirdek (2.6 GHz)</li><li><strong>Mimari:</strong> ARMv8</li><li><strong>Transistör teknolojisi:</strong> 7nm (TSMC üretimi)</li><li><strong>Bellek desteği:</strong> DDR4 8 kanallı</li><li><strong>PCIe:</strong> 40 PCIe hattı, yani yüksek I/O destekli</li><li><strong>Güç tüketimi:</strong> 100–150W civarı (x86 muadillerine göre daha az)</li></ul><p>Huawei bu çipleri sadece kendi bulut veri merkezlerinde değil, aynı zamanda <strong>TaiShan sunucuları</strong> aracılığıyla donanım müşterilerine de sunuyor.</p><h3>Neden bu önemli?</h3><p>Kunpeng, klasik x86 sistemlerinin “yüksek performans = yüksek enerji tüketimi” denklemine karşı daha <strong>yeşil ve ölçeklenebilir bir çözüm</strong> sunuyor. Ayrıca ARM ekosisteminin açık yapısı sayesinde geliştiriciler için de daha esnek bir ortam sağlıyor.</p><h3>ARM tabanlı mimarinin avantajları</h3><p>Eskiden işlemci denince herkesin aklına <strong>Intel veya AMD’nin x86</strong> mimarisi gelirdi. Ancak artık işler değişti. Mobil cihazlardan veri merkezlerine kadar birçok alanda <strong>ARM mimarisi</strong> öne çıkıyor. Huawei de bu değişimi erkenden fark edip Kunpeng işlemcilerini ARM tabanlı geliştirdi. Peki neden?</p><h3>Enerji Verimliliği</h3><p>ARM mimarisi, düşük güç tüketimiyle meşhur. Bu da veri merkezlerinde <strong>daha az elektrik</strong> ve <strong>daha az soğutma maliyeti</strong> demek. Büyük ölçekli bulut sistemlerinde bu fark ciddi tasarrufa dönüşüyor.</p><h3>Yüksek Çekirdek Sayısı</h3><p>ARM işlemciler, aynı çip alanı içinde daha fazla çekirdek barındırabiliyor. Bu da <strong>yüksek paralellik</strong> gerektiren iş yüklerinde (örneğin mikroservis mimarileri, çoklu kullanıcı senaryoları) büyük avantaj sağlıyor.</p><h3>Modüler ve Ölçeklenebilir Tasarım</h3><p>ARM mimarisi lisanslanabilir olduğu için üreticiler, kendi ihtiyaçlarına göre işlemciler tasarlayabiliyor. Huawei de bu özgürlüğü kullanarak Kunpeng’i özel optimize etti. Yani ihtiyaç odaklı tasarım mümkün.</p><h3>Ekosistem Esnekliği</h3><p>ARM artık sadece telefonlarda değil, sunucularda, yapay zekâ çözümlerinde ve hatta süper bilgisayarlarda kullanılıyor. Linux, Kubernetes, Docker gibi araçların ARM desteği artık yaygın. Yani geliştiriciler için taşınabilirlik sorunu neredeyse kalmadı.</p><h3>Bağımsızlık ve Jeopolitik Güç</h3><p>Huawei gibi kendi donanımını geliştirmek isteyen bir şirket için ARM, Intel ve AMD gibi ABD merkezli üreticilere bağımlı olmamak demek. Özellikle Çin pazarında bu <strong>stratejik bir bağımsızlık</strong> anlamına geliyor.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*qQaYXeiXmIqyuBCB.jpeg" /></figure><h3>Huawei Cloud’da Kunpeng destekli hizmetler</h3><p>Huawei’nin Kunpeng işlemcileri sadece “vitrine konmuş teknolojiler” değil. Gerçek dünyada, Huawei Cloud üzerinde <strong>aktif olarak çalışan</strong> servislerin kalbinde bu çipler var. Özellikle bulut sunucular (ECS — Elastic Cloud Server) tarafında Kunpeng temelli çözümler hızla yayılıyor.</p><h3>Kunpeng ECS (Elastic Cloud Server)</h3><p>Huawei Cloud, <strong>Kunpeng920 işlemcili ECS instance’ları</strong> ile piyasadaki geleneksel x86 sunuculara alternatif sunuyor. Bunlar şu amaçlarla kullanılıyor:</p><ul><li>Web sunucuları</li><li>Uygulama barındırma (Node.js, Java, Python)</li><li>Veritabanı sunucuları</li><li>Lightweight AI iş yükleri</li></ul><blockquote><em>📌 Örnek instance serisi: </em><em>kc1.large, </em><em>kc1.4xlarge gibi adlarla bulunabiliyor.</em></blockquote><h3>Performans/Kapasite Karşılaştırması</h3><p>Huawei’ye göre Kunpeng tabanlı sunucular:</p><ul><li>x86 muadillerine göre <strong>%20 daha iyi fiyat/performans oranı</strong> sunuyor</li><li>CPU kullanımında <strong>daha kararlı ve istikrarlı çalışma</strong> sağlıyor</li><li>Özellikle <strong>çok çekirdekli paralel işlerde</strong> ciddi avantaj yaratıyor</li></ul><h3>Yeşil Bilişim: Enerji Verimliliği</h3><p>Kunpeng tabanlı sunucular, <strong>daha az enerji</strong> harcıyor. Bu da:</p><ul><li>Daha düşük fatura</li><li>Daha düşük karbon salımı</li><li>Daha az soğutma ihtiyacı<br> anlamına geliyor. Büyük ölçekli işletmeler için bu fark, yılda milyonlarca dolar tasarruf anlamına gelebiliyor.</li></ul><h3>Uygulama Desteği</h3><p>Kunpeng sunucuları, Huawei Cloud’un en yaygın hizmetleriyle tam entegre çalışıyor:</p><ul><li><strong>ModelArts (AI geliştirme platformu)</strong></li><li><strong>GaussDB (Huawei’nin dağıtık veritabanı)</strong></li><li><strong>Cloud Container Engine (CCE)</strong></li></ul><p>Yani yalnızca donanım değil, <strong>tüm yazılım ekosistemi</strong> ARM tabanlı işlemcilere optimize edilmiş durumda.</p><h3>Ascend: Huawei’nin AI İşlemcisi</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*1cZIjhU8RHG1FbGm.jpg" /></figure><h3>Ascend mimarisi ve donanım özellikleri</h3><p>Yapay zekâ sadece yazılımla değil, donanımla da hız kazanıyor. Özellikle büyük dil modelleri, görüntü işleme, ses tanıma gibi işlemler artık klasik CPU ve GPU’ların sınırlarını zorluyor. İşte bu noktada <strong>NPU (Neural Processing Unit)</strong> dediğimiz, yapay zekâ için özel üretilmiş işlemciler devreye giriyor.</p><p>Huawei’nin bu alandaki cevabı: <strong>Ascend serisi çipler.</strong></p><h3>Ascend nedir?</h3><p>Ascend, Huawei’nin kendi tasarladığı <strong>AI işlemci ailesi</strong>. Bu çipler, veri merkezlerinden edge cihazlara kadar farklı senaryolar için optimize ediliyor. En bilineni: <strong>Ascend 910</strong>.</p><h3>Ascend 910 Teknik Özellikler (Vurgulanan Noktalar)</h3><ul><li><strong>İşlem Gücü (FP16):</strong> 256 TFLOPS</li><li><strong>INT8 Performansı:</strong> 512 TOPS</li><li><strong>Bellek Bant Genişliği:</strong> 800 GB/s</li><li><strong>Üretim Teknolojisi:</strong> 7nm (TSMC)</li><li><strong>Enerji Tüketimi:</strong> Yaklaşık 350W</li><li><strong>AI Framework Desteği:</strong> MindSpore, TensorFlow, PyTorch (Huawei uyumlu çevirilerle)</li></ul><blockquote><em>Huawei, Ascend 910’un NVIDIA V100’le benzer performansı daha az güç tüketerek sunduğunu iddia ediyor.</em></blockquote><h3>Mimarinin Özelliği</h3><p>Ascend sadece “güçlü” değil, aynı zamanda <strong>AI iş yükleri için optimize edilmiş</strong>. Çip mimarisi içinde yer alan “Da Vinci Architecture”, matris çarpımları gibi AI hesaplamalarını donanım seviyesinde hızlandırıyor.</p><p>Yani işlemci AI görevini “öğrenmiş gibi” çalışıyor. Bu da model çıkarımı (inference) sırasında müthiş bir hız ve verimlilik sağlıyor.</p><h3>Uygulama Alanları</h3><ul><li>Büyük dil modeli çıkarımı (LLM inference)</li><li>Görüntü/ses tanıma</li><li>Gerçek zamanlı analiz sistemleri (örneğin akıllı şehir çözümleri)</li><li>Edge AI cihazları (örneğin kameralı sensör sistemleri)</li></ul><h3>AI iş yüklerinde Ascend’in farkı</h3><p>AI iş yükü dendiğinde akla gelen ilk şey “büyük işlem gücü” oluyor ama konu sadece ham güç değil. Gerçek hayatta, bir çipin <strong>ne kadar hızlı</strong>, <strong>ne kadar verimli</strong> ve <strong>ne kadar uyumlu</strong> çalıştığı çok daha önemli.</p><p>Huawei’nin Ascend çipleri tam da bu noktada fark yaratıyor.</p><h3>Inference (Çıkarım) Performansı</h3><p>Çoğu AI modeli eğitildikten sonra asıl iş yükü inference tarafında olur. Yani modeli kullanıcıdan gelen veriye uygulamak. Ascend 910, bu konuda müthiş hızlı çünkü:</p><ul><li>Matris hesaplamaları için özel donanım modülleri var (Da Vinci mimarisi)</li><li>Bellek bant genişliği yüksek → gecikme düşük</li><li>Saniyede <strong>milyonlarca çıkarım işlemi</strong> yapabiliyor</li></ul><blockquote><em>Ascend 910, bir ResNet-50 modeli ile NVIDIA V100’den </em><strong><em>yaklaşık %20 daha hızlı çıkarım</em></strong><em> yapabiliyor.</em></blockquote><h3>Enerji Verimliliği</h3><p>AI eğitimi veya çıkarımı çok enerji tüketir. Ascend burada çok avantajlı:</p><ul><li>350W enerji ile yüksek performans</li><li>Aynı seviyedeki GPU çözümlerine göre <strong>%30’a kadar daha düşük güç tüketimi</strong></li></ul><p>Bu da büyük veri merkezlerinde <strong>daha az karbon salımı</strong> ve <strong>daha düşük fatura</strong> demek.</p><h3>Yazılım Uyumu ve Geliştirici Dostu Ekosistem</h3><p>Ascend sadece çip değil, aynı zamanda bir yazılım dünyasıyla birlikte geliyor:</p><ul><li><strong>MindSpore</strong>: Huawei’nin açık kaynak AI çerçevesi</li><li>TensorFlow, PyTorch gibi framework’lerle de uyumlu</li><li>Eğitim + çıkarım için eksiksiz bir geliştirme seti</li></ul><p>Yani bir geliştirici olarak Ascend’e geçmek için sıfırdan her şeyi öğrenmek zorunda değilsin. Çoğu AI iş akışı doğrudan destekleniyor.</p><h3>Gerçek Dünya Kullanım Örnekleri</h3><ul><li><strong>Akıllı şehir kameraları</strong>: Gerçek zamanlı insan/tanımaya yönelik çıkarım</li><li><strong>Akıllı fabrika sistemleri</strong>: Hata tespiti, kalite kontrol</li><li><strong>Finans sektörü</strong>: Anomali algılama, sahtekarlık tespiti</li><li><strong>LLM çıkarımı</strong>: Huawei’nin kendi büyük modelleri de Ascend üzerinde koşuyor</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*kStusECGurJapJ_r.jpg" /></figure><h3>ModelArts ve MindSpore ile yazılım entegrasyonu</h3><p>Bir AI çipi ne kadar güçlü olursa olsun, onu kullanmak <strong>zor</strong> ya da <strong>sınırlı</strong> olursa bir anlamı kalmaz. Huawei bu konuda oldukça akıllıca bir strateji izliyor:<br> <strong>Donanım ve yazılımı birlikte tasarlıyor.</strong></p><p>Ascend çiplerini besleyen iki önemli yazılım katmanı var:<br> <strong>MindSpore</strong> ve <strong>ModelArts</strong></p><h3>MindSpore — Huawei’nin AI Framework’ü</h3><p>MindSpore, Huawei’nin açık kaynak yapay zekâ framework’ü.<br> TensorFlow veya PyTorch gibi çalışan bir eğitim ve çıkarım platformu ama Ascend çiplerine özel <strong>optimizasyonlarla</strong> dolu.</p><h4>Özellikleri:</h4><ul><li>Ascend, GPU, CPU üzerinde çalışabiliyor (heterojen destek)</li><li>Eğitim sırasında sadece önemli parametreleri hesaplayarak <strong>daha az bellek kullanıyor</strong></li><li>Gizliliğe duyarlı (privacy-preserving AI) uygulamaları destekliyor</li><li>Python ile yazılabiliyor, geliştiriciye tanıdık geliyor</li></ul><blockquote><em>MindSpore, Huawei’nin Pangu LLM modeli de dahil birçok kurumsal projede kullanılıyor.</em></blockquote><h3>ModelArts — AI Geliştirme Platformu (PaaS)</h3><p>ModelArts, Huawei Cloud üzerinde çalışan, “AI geliştirmeyi kolaylaştıran” bir platform.<br> Hiç kod yazmadan model eğitebilir, veri etiketleyebilir, dağıtım yapabilirsin.<br> Aynı zamanda MindSpore, TensorFlow, PyTorch gibi framework’leri destekliyor.</p><h4>Neler sunuyor?</h4><ul><li>Otomatik ML (AutoML)</li><li>Veri etiketleme araçları</li><li>GPU/NPU destekli eğitim ortamları</li><li>Tek tıkla dağıtım (CI/CD AI için)</li><li>Ascend donanımı ile entegre inference altyapısı</li></ul><h3>Bu entegrasyon neyi sağlıyor?</h3><ul><li>Donanım ile yazılım <strong>birbirine tam uyumlu</strong>, yani performans kaybı yaşanmıyor</li><li>Geliştiriciler için <strong>daha az sürpriz hata</strong>, daha az konfigürasyon çilesi</li><li>AI geliştirme süreci <strong>hızlı, sade, ekonomik</strong> hale geliyor</li><li>Ascend çipiyle çalışan modeller, Huawei Cloud ortamında sorunsuz biçimde canlıya alınabiliyor</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/732/0*j2LUDjdDyIT7bT1h.png" /></figure><h3>Bu yazıda Huawei Cloud’un sunduğu Kunpeng ve Ascend mimarilerinin nasıl çalıştığını, neden farklı olduklarını ve bu teknolojilerin gerçek dünyada nasıl karşılık bulduğunu birlikte keşfettik.</h3><p>Artık bulut bilişim sadece “sunucu kiralamak” değil — altyapıdan yazılıma, AI çiplerinden geliştirici araçlarına kadar <strong>uçtan uca bir teknoloji stratejisi</strong> haline geldi. Huawei Cloud’un bu stratejiyi ne kadar ciddiye aldığını ve ne kadar farklı bir yolda ilerlediğini görmek gerçekten ilham verici.</p><p>Eğer bu teknolojiler seni de heyecanlandırdıysa, belki de sıradaki büyük projen <strong>heterojen mimaride</strong> çalışacak, ya da bir sonraki AI modelin <strong>Ascend üzerinde</strong> eğitilecek. Kim bilir?</p><p><strong>Faydalı bulduysan paylaşmayı, soruların varsa yorum bırakmayı unutma.</strong><br> Gelecekte daha fazla teknik içerikte görüşmek dileğiyle!</p><p><a href="https://tr.linkedin.com/in/gorkem-orhan-uysal">https://tr.linkedin.com/in/gorkem-orhan-uysal</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1bc57cafaec0" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/huawei-cloudun-gizli-silah%C4%B1-kunpeng-ve-ascend-ile-heterojen-bili%C5%9Fim-devrimi-1bc57cafaec0">Huawei Cloud’un Gizli Silahı: Kunpeng ve Ascend ile Heterojen Bilişim Devrimi</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[“Benim Bilgisayarımda Çalışıyordu!” Docker Bu Lafı Neden Tarihe Gömdü?]]></title>
            <link>https://medium.com/huawei-developers-tr/benim-bilgisayar%C4%B1mda-%C3%A7al%C4%B1%C5%9F%C4%B1yordu-docker-bu-laf%C4%B1-neden-tarihe-g%C3%B6md%C3%BC-5437b89b2f65?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/5437b89b2f65</guid>
            <category><![CDATA[containers]]></category>
            <category><![CDATA[docker]]></category>
            <category><![CDATA[software-engineering]]></category>
            <category><![CDATA[development]]></category>
            <category><![CDATA[software-development]]></category>
            <dc:creator><![CDATA[Görkem Orhan Uysal]]></dc:creator>
            <pubDate>Wed, 02 Jul 2025 11:42:36 GMT</pubDate>
            <atom:updated>2025-07-02T11:42:36.424Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/800/0*DINeOC6h8Ot_4zob.jpeg" /></figure><p>Yazılım ekiplerinin içinde en çok tekrar eden cümlelerden biri olabilir. Özellikle kod bir ortamda çalışıp başka bir yerde patladığında kendini gösterir.</p><p>Sen uygulamanı geliştirirsin, testlerini yaparsın, her şey sorunsuz görünür. Ama aynı kod başka birinin bilgisayarında ya da sunucuda çalışmaz. Ve o tanıdık cümle gelir: <em>“Ama bende gayet iyi çalışıyordu.”</em></p><p>Bu tür durumlar, genellikle kodun değil, çalıştığı ortamın farklı olmasından kaynaklanır. Kütüphane sürümleri, işletim sistemi, yapılandırmalar… Küçük gibi görünen bu farklar, beklenmedik hatalara yol açabilir.</p><p>İşte tam bu noktada <strong>Docker</strong> devreye giriyor.<br> Uygulamaları, tüm bağımlılıklarıyla birlikte kapsülleyerek her ortamda aynı şekilde çalışmasını sağlıyor. Geliştiriciler için büyük bir rahatlık, ekipler için ise ciddi bir zaman tasarrufu.</p><p>Bu yazıda Docker’ın ne olduğunu, neden bu kadar işe yaradığını ve “Benim bilgisayarımda çalışıyordu” cümlesini nasıl tarihe gömdüğünü adım adım birlikte inceleyeceğiz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/220/0*yE-VGQgasEcJYMd4.gif" /></figure><h3>“Çalışma Ortamı” Ne Demek, Neden Farklılık Yaratır?</h3><p>Kod yazmak işin görünen kısmı. Asıl mesele, o kodun hangi ortamda çalıştığı.<br> Yani: işletim sistemi, kurulu yazılımlar, kütüphane sürümleri, ortam değişkenleri gibi birçok teknik detay, bir uygulamanın doğru şekilde çalışıp çalışmamasını doğrudan etkiler.</p><p>Senin bilgisayarında yüklü olan bir kütüphane, başka bir bilgisayarda yüklü olmayabilir.<br> Ya da senin sistemin Python 3.10 kullanırken, test ekibinin makinesinde 3.8 olabilir.<br> İşte o zaman aynı kod, farklı ortamlarda farklı sonuçlar verir.</p><p>Bu farklar yüzünden çalışan bir uygulamanın, başka bir ortamda hata vermesi gayet normal.<br> Sorun kodda değil, ortamda. Ama çoğu zaman bu fark geç fark edilir ve çözüm süreci uzar.</p><p>Kısacası, “çalışma ortamı” dediğimiz şey; kodun çalıştığı arka plan koşullarıdır.<br> Bu koşullar birbirinden farklıysa, alınan sonuçlar da farklı olabilir.<br> Ve bu farkları manuel olarak yönetmek zor, hatta ekip büyüdükçe imkansıza yakın hale gelir.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/360/0*I22aCUssyX1bn3li" /></figure><h3>Uygulamanız Çalışmıyor Değil, Ortamınız Tutarsız</h3><p>Çoğu zaman bir uygulama aslında hatalı değildir. Sadece içinde çalıştığı ortamla uyumlu değildir.<br> Geliştirici ortamında düzgün çalışan bir uygulama, test veya üretim ortamında beklenmedik hatalar verebilir. Çünkü ortamlar arasında küçük farklar bile büyük sorunlara yol açabilir.</p><p>Örneğin senin bilgisayarında bir kütüphane kurulu olabilir ama test ortamında eksik olabilir.<br> Veya senin sistemin Linux, diğer kişinin sistemi Windows’tur ve dosya yolları yüzünden bir şeyler bozuluyordur.<br> Hatta bazen sadece bir locale ayarının bile çıktıyı tamamen değiştirdiği görülür.</p><p>Bu sorunları çözmeye çalışmak genellikle şu şekilde başlar:</p><ul><li>“Bende çalışıyor, sen bir de şöyle dene…”</li><li>“Şu kütüphaneyi yükledin mi?”</li><li>“Hangi sürüm kullanıyorsun?”<br> Ve zamanla bu diyaloglar projeyi yavaşlatır, ekibi yorar.</li></ul><p>Yani ortada bozuk bir kod değil, tutarsız bir çalışma ortamı vardır.<br> Ve bu farklar elle yönetildikçe, sorunlar tekrar etmeye devam eder.</p><h3>Klasik Çözüm Denemeleri Neden Yetersiz?</h3><p>Bu sorun yıllardır var olduğu için, geliştiricilerin geliştirdiği geçici çözümler de oldukça fazla.<br> Ama çoğu, zamanla yetersiz kalıyor ve sürdürülebilir olmaktan uzaklaşıyor.</p><p>En yaygın denemelerden biri: <strong>README dosyaları</strong>.<br> Uygulamanın nasıl kurulacağını, hangi sürümlerin gerektiğini yazarsın. Güzel bir başlangıçtır ama genelde eksik kalır. Çünkü kimse o dosyayı tam okumaz. Veya sistemde yazdığı gibi olmayan bir şey mutlaka çıkar.</p><p>Bir diğeri: <strong>manuel kurulum komutları</strong>.<br> “Önce bunu yükle, sonra şu komutu çalıştır, sonra config dosyasını düzenle…”<br> Her adımda hata riski vardır. Hatalar zincirleme büyür. En sonunda biri sorar: <em>“Ya bu neden bu kadar karmaşık?”</em></p><p>Bir başka yaklaşım: <strong>virtualenv gibi araçlarla izole ortamlar kurmak.</strong><br> İşe yarar, ama bu da geliştirme sürecini herkes için standardize etmez. Herkesin sanal ortamı farklı şekillerde kurulabilir.</p><p>Yani bu yöntemler iyi niyetlidir ama her ekipte, her ortamda ve her projede aynı sonucu garanti etmez.</p><p>Sorun şurada: Bu çözümler ortamı tarif eder, ama ortamı <strong>paketlemez</strong>.<br> Docker ise sadece tarif etmekle kalmaz, ortamı gerçekten yanına alır. Tıpkı bir uygulamanın yanında çalışan her şeyi bir kutuya koymak gibi.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/400/0*NQfLiv-JGmDvJbQK.gif" /></figure><h3>Docker Bu Problemi Nasıl Çözüyor?</h3><p>Docker’ı ilk duyduğunda karmaşık bir şeymiş gibi gelebilir. Ama temelinde oldukça sade bir fikre dayanır:<br> Bir uygulamanın çalışması için ne gerekiyorsa — kod, kütüphaneler, sistem ayarları, işletim sistemi bileşenleri — hepsini bir araya toplayıp küçük bir <strong>paket</strong> haline getirir.</p><p>Bu paketlere <strong>container</strong> (kapsayıcı) denir.</p><p>Container’lar sayesinde uygulaman bir bilgisayarda nasıl çalışıyorsa, başka bir bilgisayarda da aynı şekilde çalışır.<br> Üstelik bunun için karşı tarafın sistemini kurcalamana, “şunu da yükle, bunu da ayarla” demene gerek kalmaz.</p><p>Docker, bu süreçleri otomatikleştiren ve standart hale getiren bir araçtır.<br> Sen bir defa çalışacak ortamı tarif edersin, Docker onu her seferinde aynı şekilde oluşturur.</p><p>Böylece:</p><ul><li>Kurulum hataları azalır</li><li>“Ben de çalışıyordu” tartışmaları biter</li><li>Herkes aynı ortamda çalışır</li></ul><p>Kısacası Docker, yazılım geliştirmede en sık yaşanan problemlerden birini <strong>ortam farklarını</strong> temelden çözer.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*5mnxpBFNHj9kQbxu.gif" /></figure><h3>Docker Nasıl Ortam Bağımsızlığı Sağlar?</h3><p>Bir uygulamanın farklı bilgisayarlarda ya da sunucularda aynı şekilde çalışmasını sağlamak, çoğu zaman düşündüğümüzden daha zordur.<br> Docker bu zorluğu, ortamı kodla birlikte paketleyerek çözer.</p><p>Docker’da ortamı tarif etmek için kullanılan dosyanın adı <strong>Dockerfile</strong>.<br> Bu dosya, uygulamanın çalışması için gereken her şeyi adım adım tanımlar:</p><ul><li>Hangi işletim sistemi baz alınacak?</li><li>Hangi kütüphaneler yüklenecek?</li><li>Hangi dosyalar kopyalanacak?</li><li>Uygulama hangi komutla başlatılacak?</li></ul><p>Sen bu Dockerfile’ı bir kere yazarsın ve Docker onu alıp bir <strong>image</strong> (kalıp) oluşturur.<br> Bu image, uygulamanla birlikte o uygulamanın çalışması için ihtiyaç duyduğu her şeyi içerir.</p><p>Ardından bu image’tan bir <strong>container</strong> (kapsayıcı) oluşturulur.<br> Bu container, nerede çalıştırılırsa çalıştırılsın <strong>aynı ortamda</strong> açılır.<br> Yani senin bilgisayarında da aynı, başka bir geliştiricinin sisteminde de, bir sunucuda da. Hiçbir fark yok.</p><p>Bu sayede:</p><ul><li>Ortam ayarlamaya harcanan zaman azalır</li><li>“Sende neden çalışmadı?” sorusu tarihe karışır</li><li>Geliştirme, test ve dağıtım süreçleri standart hale gelir</li></ul><p>Docker, uygulamayı çalıştıran ortamı da uygulamayla birlikte taşır.<br> İşte ortam bağımsızlığı tam olarak budur.</p><h3>“Benim Bilgisayarımda Çalışıyordu” Dememek İçin Dockerfile Örneği</h3><p>eoriyi konuşmak güzel ama asıl fark yaratan şey, Docker’ın ne kadar <strong>basit</strong> ve <strong>uygulanabilir</strong> olması.</p><p>Diyelim ki küçük bir Flask uygulaman var. Python ile yazılmış, birkaç endpoint’i olan temel bir API.<br> Normalde bu uygulamayı çalıştırmak için şunları yapman gerekir:</p><ul><li>Python yüklü mü kontrol et</li><li>Gerekli kütüphaneleri pip install ile kur</li><li>Ortam değişkenlerini ayarla</li><li>python app.py komutuyla başlat</li></ul><p>Bu adımların her biri sorun çıkarabilir. Ama Docker ile tüm bu adımları <strong>tek bir dosyada</strong> tarif edebilirsin.</p><p>İşte sade bir örnek Dockerfile:</p><pre># Temel Python imajı<br>FROM python:3.10<br><br># Uygulama dosyalarını container içine kopyala<br>WORKDIR /app<br>COPY . /app<br><br># Gerekli kütüphaneleri yükle<br>RUN pip install -r requirements.txt<br><br># Uygulamayı başlat<br>CMD [&quot;python&quot;, &quot;app.py&quot;]</pre><p>Bu kadar.<br> Şimdi bu dosya sayesinde aynı uygulamayı, ister sen ister bir ekip arkadaşın, ister bir sunucu her kim çalıştırırsa çalıştırsın sonuç <strong>birebir aynı</strong> olur.</p><p>Kullanılacak komutlar da oldukça basit:</p><pre>docker build -t flask-uygulama .<br>docker run -p 5000:5000 flask-uygulama</pre><p>İşte artık “kütüphane eksik”, “versiyon uyumsuz”, “niye bende çalışıyor ama sende bozuluyor” gibi tartışmaların bir anlamı kalmaz.</p><p>Docker ortamı senin yerine tarif etmekle kalmaz, onu <strong>uygulamanın bir parçası haline getirir.</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/723/0*QU9gSkYC0RNAxXM2.gif" /></figure><h3>Gerçek Hayatta Docker’ın Faydaları</h3><p>Docker sadece teorik olarak değil, günlük yazılım geliştirme süreçlerinde de <strong>çok somut avantajlar</strong> sunar.<br> İşte ekip içinde, gerçek dünyada fark yarattığı birkaç alan:</p><h3>1. Zaman Kazancı</h3><p>Her yeni geliştirici geldiğinde “projeyi nasıl ayağa kaldıracağım” sorusu ortadan kalkar.<br> Docker imajı hazırsa, tek komutla sistem ayağa kalkar.<br> Bu da onboarding süresini kısaltır, vakit kaybını önler.</p><h3>2. Test Ortamlarının Standartlaşması</h3><p>Testler, geliştirici ortamında geçip CI/CD pipeline’ında çöküyorsa, muhtemelen ortam farklarından kaynaklanıyordur.<br> Docker ile testler, aynı ortamda her seferinde tutarlı sonuç verir.</p><h3>3. Üretim (production) Ortamında Sürpriz Yok</h3><p>“Sunucuda neden hata verdi?”<br> Docker sayesinde artık böyle bir soru pek kalmaz. Çünkü geliştirici ne görüyorsa, üretim de onu görür.<br> Her ortam birebir aynı olduğunda, sürprizler minimuma iner.</p><h3>4. Taşınabilirlik</h3><p>İster kendi bilgisayarında, ister bir AWS sunucusunda, ister bir Raspberry Pi üzerinde çalıştır Docker ile her yerde aynı imajı kullanabilirsin.<br> Tekrar kurulum, yapılandırma, ayar yapma derdi yok.</p><h3>5. Versiyonlama ve Geri Dönüş Kolaylığı</h3><p>Bir imajı versiyonlayabilirsin. Hatalı bir deploy mu yaptın? Önceki versiyona dönmek sadece bir komut uzağında.</p><p>Docker, yazılım ekiplerine <strong>süreç kontrolü</strong>, <strong>güven</strong> ve <strong>hız</strong> kazandırır.<br> Küçük projelerden büyük dağıtımlara kadar her ölçekte iş görür.</p><p>Ve en önemlisi:<br> Artık kimseye “niye sende çalışmadı acaba?” demek zorunda kalmazsın.</p><h3>✨ Okuduğunuz için teşekkür ederim!</h3><p>Eğer bu yazı kafanda bir şeyleri daha anlamlı hale getirdiyse, amacına ulaşmış demektir.<br>Docker’la ilgili kendi deneyimlerinizi veya düşüncelerinizi yorumlarda paylaşmanız beni gerçekten mutlu eder.</p><p><strong>Takip etmeyi ve Medium’da desteklemeyi unutma!</strong><br> Yazılım dünyasındaki gelişmeleri ve deneyimlerimi paylaşmaya devam edeceğim.</p><p><a href="https://tr.linkedin.com/in/gorkem-orhan-uysal">https://tr.linkedin.com/in/gorkem-orhan-uysal</a></p><p><strong>Görkem Orhan Uysal</strong></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=5437b89b2f65" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/benim-bilgisayar%C4%B1mda-%C3%A7al%C4%B1%C5%9F%C4%B1yordu-docker-bu-laf%C4%B1-neden-tarihe-g%C3%B6md%C3%BC-5437b89b2f65">“Benim Bilgisayarımda Çalışıyordu!” Docker Bu Lafı Neden Tarihe Gömdü?</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Huawei Cloud APIG: Kimlik Doğrulama Yöntemlerine Pratik Bir Giriş]]></title>
            <link>https://medium.com/huawei-developers-tr/huawei-cloud-apig-kimlik-do%C4%9Frulama-y%C3%B6ntemlerine-pratik-bir-giri%C5%9F-a1680ec012a7?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/a1680ec012a7</guid>
            <category><![CDATA[cloud]]></category>
            <category><![CDATA[api]]></category>
            <category><![CDATA[gateway]]></category>
            <category><![CDATA[huawei]]></category>
            <category><![CDATA[cloud-computing]]></category>
            <dc:creator><![CDATA[Yagiz Karakus]]></dc:creator>
            <pubDate>Mon, 23 Jun 2025 07:37:23 GMT</pubDate>
            <atom:updated>2025-06-23T07:37:23.541Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*J3ktbB1aM4mdj3-C.jpeg" /></figure><h3>Giriş</h3><p>Bu rehberde, <strong>Huawei Cloud API Gateway (APIG)</strong> hizmetinde kullanılabilen beş farklı kimlik doğrulama yöntemini keşfedeceğiz. Basit AppCode kullanımından, gelişmiş FunctionGraph tabanlı özel yetkilendirmeye kadar çeşitli senaryoları ele alacağız.</p><h3>1️⃣ AppKey ve AppSecret ile Uygulama Tabanlı Kimlik Doğrulama</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*JKNBtM06r8F3T22y.png" /></figure><h3>📌 Adım 1: Kimlik Bilgilerini Oluşturma</h3><p>APIG servisinde <strong>Kimlik Bilgileri (Credentials)</strong> bölümüne gidin.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/172/0*MGIz6J56opDq5bhZ.png" /></figure><p><strong>Create Credentials</strong> butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*P08Im4YmRe0j2LJ1.png" /></figure><p>İsterseniz AppKey ve AppSecret değerlerini kendiniz girebilir veya boş bırakarak otomatik oluşturulmasını sağlayabilirsiniz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*f_3BfltKcMhR2oyo.png" /></figure><p>Kimlik bilgileri oluşturulduktan sonra, bunları API’lerle eşleştirmek için ya <strong>Credentials</strong> sayfasını ya da doğrudan <strong>API</strong> sayfasını kullanabilirsiniz:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*q1iVcFA025sFrO2p.png" /></figure><h3>📦 Canonical Request (Standart İstek)</h3><p>Uygulama tabanlı kimlik doğrulama, öncelikle bir <strong>canonical request</strong> oluşturulmasıyla başlar:</p><pre>CanonicalRequest =<br>    HTTPRequestMethod + &#39;\n&#39; +<br>    CanonicalURI + &#39;\n&#39; +<br>    CanonicalQueryString + &#39;\n&#39; +<br>    CanonicalHeaders + &#39;\n&#39; +<br>    SignedHeaders + &#39;\n&#39; +<br>    HexEncode(Hash(RequestPayload))</pre><h4>📘 Örnek</h4><pre>GET<br>/app1/<br>a=1&amp;b=2<br>host:api.example.com<br>x-sdk-date:20191111T093443Z<br><br>host;x-sdk-date<br>e3b0c44298fc...</pre><h4>⚠️ Header Biçimlendirme Kuralları</h4><ul><li>Tüm başlıklar küçük harfe çevrilir ve kenar boşlukları kaldırılır.</li><li>Başlıklar alfabetik sıraya göre sıralanır.</li></ul><p><strong>Örnek:</strong></p><pre>content-type:application/json;charset=utf8<br>host:api.example.com<br>my-header1:a   b   c<br>my-header2:&quot;a   b   c&quot;<br>x-sdk-date:20191111T093443Z</pre><h3>🔐 İmzalanacak Dize (String to Sign)</h3><pre>StringToSign =<br>    Algorithm + &#39;\n&#39; +<br>    RequestDateTime + &#39;\n&#39; +<br>    HashedCanonicalRequest</pre><p><strong>Örnek:</strong></p><pre>SDK-HMAC-SHA256<br>20191111T093443Z<br>af71c5a7ef...</pre><h3>🧾 İmza Oluşturma</h3><p>AppSecret anahtarıyla yukarıdaki dizeyi imzalayın:</p><pre>signature = HexEncode(HMAC(APP secret, string to sign))</pre><p><strong>Yetkilendirme Başlığı Örneği:</strong></p><pre>Authorization: SDK-HMAC-SHA256 Access=&lt;AppKey&gt;, SignedHeaders=host;token;x-sdk-date, Signature=3be6e4...</pre><h3>🧪 cURL Örneği</h3><pre>curl -X GET &quot;https://api.valdez.org.pe/hello5?test=user%40123&quot; \<br>  -H &quot;token: Basic dXNlcjE6cGFzc3dvcmQ=&quot; \<br>  -H &quot;X-Sdk-Date: 20250602T193535Z&quot; \<br>  -H &quot;host: api.valdez.org.pe&quot; \<br>  -H &quot;Authorization: SDK-HMAC-SHA256 Access=20e085..., SignedHeaders=host;token;x-sdk-date, Signature=3be</pre><h3>🧰 Postman İçin Ön İstek Scripti</h3><p>Aşağıdaki JavaScript koduyla imza sürecini otomatikleştirebilirsiniz:</p><pre>const appKey = &#39;&#39;; // APP_KEY&#39;inizi girin<br>const appSecret = &#39;&#39;; // APP_SECRET&#39;inizi girin<br>const algorithm = &#39;SDK-HMAC-SHA256&#39;;<br>const method = pm.request.method;<br>const date = new Date();<br>const sdkDate = date.toISOString().replace(/[-:.]/g, &#39;&#39;).slice(0, 15) + &#39;Z&#39;;<br>const parsedUrl = new URL(pm.request.url.toString());<br>const canonicalURI = parsedUrl.pathname.endsWith(&#39;/&#39;) ? parsedUrl.pathname : parsedUrl.pathname + &#39;/&#39;;<br>const queryParams = pm.request.url.query<br>  .filter(q =&gt; !q.disabled)<br>  .sort((a, b) =&gt; a.key.localeCompare(b.key))<br>  .map(q =&gt; `${encodeURIComponent(q.key)}=${encodeURIComponent(q.value)}`).join(&#39;&amp;&#39;);<br>const host = pm.request.url.getHost();<br>pm.request.headers.upsert({ key: &#39;x-sdk-date&#39;, value: sdkDate });<br>pm.request.headers.upsert({ key: &#39;host&#39;, value: host });<br>let headerMap = {};<br>pm.request.headers.each(header =&gt; {<br>  if (!header.disabled) headerMap[header.key.toLowerCase()] = header.value.trim();<br>});<br>const signedHeaders = Object.keys(headerMap).sort().join(&#39;;&#39;);<br>const canonicalHeaders = Object.keys(headerMap).sort().map(k =&gt; `${k}:${headerMap[k]}`).join(&#39;\n&#39;) + &#39;\n&#39;;<br>let payload = &#39;&#39;;<br>if ([&#39;POST&#39;, &#39;PUT&#39;].includes(method)) {<br>  payload = pm.request.body.raw || &#39;&#39;;<br>}<br>const payloadHash = CryptoJS.SHA256(payload).toString(CryptoJS.enc.Hex);<br>const canonicalRequest = [method, canonicalURI, queryParams, canonicalHeaders, signedHeaders, payloadHash].join(&#39;\n&#39;);<br>const stringToSign = [algorithm, sdkDate, CryptoJS.SHA256(canonicalRequest).toString(CryptoJS.enc.Hex)].join(&#39;\n&#39;);<br>const signature = CryptoJS.HmacSHA256(stringToSign, appSecret).toString(CryptoJS.enc.Hex);<br>const authorization = `${algorithm} Access=${appKey}, SignedHeaders=${signedHeaders}, Signature=${signature}`;<br>pm.request.headers.upsert({ key: &#39;Authorization&#39;, value: authorization });</pre><p>💡 Ayrıca curl komutlarını oluşturmak için JS SDK veya tarayıcı araçlarını da kullanabilirsiniz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*LH3IkErWyumpn99M.png" /></figure><h3>2️⃣ AppCode ile Basit Kimlik Doğrulama</h3><p>API ayarlarında <strong>Simple Authentication</strong> özelliğini etkinleştirin:</p><p><strong>Credentials &gt; Your Credential</strong> yoluna gidin ve <strong>Create AppCode</strong> butonuna tıklayın:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*-GX4Bt0D0_ybig8_.png" /></figure><p>İsteğinize aşağıdaki gibi bir başlık ekleyin:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*5mLU7Ae9cDfMgzD5.png" /></figure><pre>X-Apig-AppCode: sizin_app_code</pre><h3>3️⃣ IAM ile Kimlik Doğrulama</h3><p>API ayarlarında<strong> IAM Authenticationı seçin</strong>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*R1SxUU6MRMYGgU4g.png" /></figure><p>Aşağıdaki adrese POST isteği gönderin:</p><pre>https://iam.{region}.myhuaweicloud.com/v3/auth/tokens</pre><h3>İstek Gövdesi:</h3><pre>{<br>  &quot;auth&quot;: {<br>    &quot;identity&quot;: {<br>      &quot;methods&quot;: [&quot;password&quot;],<br>      &quot;password&quot;: {<br>        &quot;user&quot;: {<br>          &quot;domain&quot;: { &quot;name&quot;: &quot;{{tenant_name}}&quot; },<br>          &quot;name&quot;: &quot;{{username}}&quot;,<br>          &quot;password&quot;: &quot;{{password}}&quot;<br>        }<br>      }<br>    },<br>    &quot;scope&quot;: {<br>      &quot;project&quot;: {<br>        &quot;id&quot;: &quot;project-id&quot;,<br>        &quot;name&quot;: &quot;la-south-2&quot;<br>      }<br>    }<br>  }<br>}</pre><p>Yanıtta X-Subject-Token başlığında bir token dönecektir.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*zrNFXrYE4wyZ01BE.png" /></figure><p>Bunu isteklerınızde Header olarak şu şekilde kullanın:</p><pre>x-auth-token: sizin_token</pre><h3>4️⃣ AppKey + Özel 2 Faktörlü Doğrulayıcı ile Kimlik Doğrulama</h3><h3>✅ Adım 1: FunctionGraph Oluşturun</h3><p>Aşağıdaki parametrelerle yeni bir FunctionGraph fonksiyonu oluşturun:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/379/1*fRkhUnPaGJS0VkF1ryRKJA.png" /></figure><p>Ortam değişkenleri olarak şunları ekleyin:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*FLstAS2yycl_UsVM.png" /></figure><pre>token=örnek_token<br>test=beklenen_parametre</pre><p>Aşağıdaki Python fonksiyonunu kullanın:</p><pre>def handler(event, context):<br>    token = context.getUserData(&#39;token&#39;)<br>    test = context.getUserData(&#39;test&#39;)<br>    if event[&quot;headers&quot;].get(&quot;token&quot;) == token and event[&quot;queryStringParameters&quot;].get(&quot;test&quot;) == test:<br>        return json.dumps({&#39;statusCode&#39;: 200, &#39;body&#39;: json.dumps({&quot;status&quot;: &quot;allow&quot;})})<br>    else:<br>        return json.dumps({&#39;statusCode&#39;: 401, &#39;body&#39;: json.dumps({&quot;status&quot;: &quot;deny&quot;})})</pre><h3>✅ Adım 2: APIG’de Özel Yetkilendirici Tanımlayın</h3><p><strong>API Policies &gt; Custom Authorizers</strong> kısmından yeni bir yetkilendirici oluşturun:</p><p>AlanDeğerTürFrontendFunction URNOluşturduğunuz fonksiyonKimlik KaynaklarıHeader: token, Query: test</p><p>API ayarlarında bu yetkilendiriciyi seçin ve isteklerinize şu alanları eklemeyi unutmayın:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*CnQuM8vhCoxw6zEC.png" /></figure><ul><li>AppKey/AppSecret ile kimlik doğrulama</li><li>token ve test alanları</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*48OBT2CEOx4ppy75.png" /></figure><h3>5️⃣ AppCode + Özel 2FA</h3><p>Appcode ve 2FA birlestirme.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*aMt4beJVuqaCMkKA.png" /></figure><ul><li>4. bölümdeki adımları izleyerek FunctionGraph oluşturun</li><li>API üzerinde <strong>Simple Authentication</strong> özelliğini etkinleştirin</li><li>AppCode kimlik bilgisi oluşturun</li></ul><p>Artık aşağıdaki gibi istekler gönderebilirsiniz:</p><pre>X-Apig-AppCode: sizin_app_code<br>token: sizin_token<br>test: beklenen_deger</pre><h3>✅ Sonuç</h3><p>Huawei APIG, uygulamanızın güvenlik ihtiyaçlarını karşılamak üzere esnek ve çok yönlü kimlik doğrulama yöntemleri sunar. Hızlı entegrasyon için AppCode kullanabilir, kurumsal senaryolarda IAM veya özel FunctionGraph çözümleri ile daha gelişmiş denetimler sağlayabilirsiniz.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=a1680ec012a7" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/huawei-cloud-apig-kimlik-do%C4%9Frulama-y%C3%B6ntemlerine-pratik-bir-giri%C5%9F-a1680ec012a7">Huawei Cloud APIG: Kimlik Doğrulama Yöntemlerine Pratik Bir Giriş</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[ Huawei Cloud CodeArts ile ModelArts Üzerinde MLOps Otomasyonu Kurmak]]></title>
            <link>https://medium.com/huawei-developers-tr/huawei-cloud-codearts-ile-modelarts-%C3%BCzerinde-mlops-otomasyonu-kurmak-d08a6cdfbf98?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/d08a6cdfbf98</guid>
            <category><![CDATA[huawei]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[huawei-cloud-developers]]></category>
            <category><![CDATA[mlops]]></category>
            <category><![CDATA[cloud]]></category>
            <dc:creator><![CDATA[Yagiz Karakus]]></dc:creator>
            <pubDate>Mon, 23 Jun 2025 07:35:26 GMT</pubDate>
            <atom:updated>2025-06-23T07:35:26.465Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*St82rs4wp6y8ICn4.jpeg" /></figure><h3>Giriş</h3><p>Bu yazıda, <strong>Huawei Cloud ModelArts</strong> kullanarak eksiksiz bir MLOps boru hattının nasıl kurulacağını adım adım göstereceğim. Eğitimden dağıtıma, otomasyonu ise <strong>CodeArts</strong> ile sağlayacağız. Bu kombinasyon sayesinde veriyi alıp modeli eğitmek, dağıtmak ve kestirim yapmak gibi işlemleri tamamen kodla yönetebilirsiniz.</p><h3>🧰 Kullanılan Araçlar ve Servisler</h3><ul><li><strong>ModelArts SDK</strong> — Veri kümesi oluşturma, eğitim işleri ve dağıtım işlemlerini programatik olarak kontrol eder.</li><li><strong>OBS (Object Storage Service)</strong> — Veri kümeleri, modeller ve loglar için saklama alanı.</li><li><strong>CodeArts Pipeline &amp; Repo</strong> — Otomasyon ve kaynak kod yönetimi sağlar.</li><li><strong>CodeArts Build &amp; Eklentiler</strong> — Veri yükleme ve model eğitimi işlemlerini otomatikleştirir.</li></ul><h3>📁 Klasör Yapısı</h3><p>Aşağıdaki arşivleri indirerek bu kılavuzu takip etmek için gerekli dosya yapısını oluşturabilirsin:</p><ul><li><a href="https://labfiles-singapore.obs.ap-southeast-3.myhuaweicloud.com/modelarts/train.zip">Eğitim dosyaları</a></li><li><a href="https://labfiles-singapore.obs.ap-southeast-3.myhuaweicloud.com/modelarts/deploy.zip">Dağıtım dosyaları</a></li></ul><p><strong>Proje Yapısı:</strong></p><pre>mlops-modelarts-project/<br>├── CreateOBS.py<br>├── TrainModelArts.py<br>├── DeployModel.py<br>├── modelarts-latest-py2.py3-none-any.whl<br>├── food_10c/               # Örnek veri kümesi<br>├── train/                  # Eğitim mantığı<br>│   ├── dataset/<br>│   ├── models/<br>│   ├── utils/<br>│   ├── infer.py<br>│   └── run.py<br>└── deploy/                 # Dağıtım mantığı<br>    ├── model/<br>    ├── config.json<br>    └── customize_service.py</pre><h3>🔐 Ortam Değişkenlerini Ayarlayın</h3><p>Bütün CodeArts build ortamlarınızda aşağıdaki değişkenleri tanımlayın:</p><ul><li>HUAWEICLOUD_SDK_AK</li><li>HUAWEICLOUD_SDK_SK</li><li>REGION</li><li>BUCKET_NAME</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*jD-KvSvXjybvUbRZ.png" /><figcaption>Parameters</figcaption></figure><h3>1️⃣ Veri Girişi (Data Ingestion)</h3><h3>🪣 OBS Bucket Oluşturma</h3><p>CreateOBS.py script’i ile logs/ ve output/ klasörleri dahil bir OBS bucket oluşturabilirsiniz.</p><pre>pip install modelarts-latest-py2.py3-none-any.whl<br>pip install futures==3.1.1 esdk-obs-python<br>python CreateOBS.py</pre><p>📸 Örnek Build Adımı:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*9JvF3nAP4Za2fBOg.png" /><figcaption>Build task</figcaption></figure><h3>📦 Veri Kümesini İndirme</h3><p>Build adımına aşağıdaki komutları ekleyin:</p><pre>wget https://koolabsfiles.obs.ap-southeast-3.myhuaweicloud.com/20230302/foods_10c.tar.gz<br>tar -zxvf foods_10c.tar.gz</pre><p>📸 Örnek:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*oGByTswlSzH-MJ2l.png" /><figcaption>Download dataset</figcaption></figure><h3>☁️ OBS’a Yükleme</h3><p>CodeArts OBS Upload Action’ı kullanarak veri kümesini yükleyin:</p><ul><li><strong>Build Directory:</strong> ./</li><li><strong>Bucket Name:</strong> ${BUCKET_NAME}</li><li><strong>OBS Directory:</strong> ./</li><li><strong>Upload Folder:</strong> yes</li></ul><p>📸 Yükleme Ayarı:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*87TPS_EdbxTqCw72.png" /><figcaption>OBS Upload Task</figcaption></figure><p>✅ Build başarıyla tamamlandığında eğitim aşamasına geçmeye hazırsınız.</p><h3>2️⃣ Model Eğitimi (Training) — ModelArts ile</h3><p>Modeli eğitmek için TrainModelArts.py script’ini kullanabilirsiniz.</p><h3>🧠 Opsiyonel: Dataset Oluşturmak</h3><p>OBS’ten doğrudan veri kullanabilirsiniz. Ancak dilerseniz SDK ile ModelArts içinde versiyonlu bir veri kümesi de oluşturabilirsiniz.</p><h3>🚀 Eğitim Script’i Özeti</h3><p>Aşağıda ModelArts Estimator kullanarak bir eğitim işinin nasıl başlatıldığını gösteren örnek:</p><pre>estimator = Estimator(<br>  session=session,<br>  training_files=TrainingFiles(code_dir=f&quot;obs://{bucket_name}/train/&quot;, boot_file=&quot;run.py&quot;),<br>  outputs=[OutputData(obs_path=f&quot;obs://{bucket_name}/deploy/&quot;, name=&quot;train_url&quot;)],<br>  parameters=[{&quot;name&quot;: &quot;train_epochs&quot;, &quot;value&quot;:2}],<br>  framework_type=&#39;PyTorch&#39;,<br>  framework_version=&#39;pytorch_1.8.0-cuda_10.2-py_3.7-ubuntu_18.04-x86_64&#39;,<br>  train_instance_type=&quot;modelarts.vm.gpu.v100NV32&quot;,<br>  log_url=f&quot;obs://{bucket_name}/logs/&quot;,<br>  job_description=&#39;This is an image net train job&#39;<br>)<br>job_instance = estimator.fit(<br>  inputs=[InputData(obs_path=f&quot;obs://{bucket_name}/food_10c/&quot;, name=&quot;data_url&quot;)],<br>  job_name=&quot;job_name_1&quot;<br>)</pre><h3>🛠️ CodeArts Build ile Eğitim</h3><pre>pip install modelarts-latest-py2.py3-none-any.whl<br>pip install futures==3.1.1 esdk-obs-python<br>python TrainModelArts.py</pre><p>📸 Eğitim Görevi:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*0tX9sE4A__WqVajW.png" /></figure><h3>3️⃣ Gerçek Zamanlı Dağıtım (Deployment)</h3><p>Modelinizi gerçek zamanlı bir servis olarak dağıtmak için DeployModel.py script’ini kullanın.</p><h3>🔧 Dağıtım Script’i Özeti</h3><pre>model_instance = Model(<br>  session,<br>  model_name=&quot;Orange-Food-Classification&quot;,<br>  model_version=&quot;1.0.0&quot;,<br>  source_location=f&quot;obs://{bucket_name}/deploy&quot;,<br>  execution_code=f&quot;obs://{bucket_name}/deploy/customize_service.py&quot;,<br>  runtime=&quot;pytorch_1.8.0-cuda_10.2-py_3.7-ubuntu_18.04-x86_64&quot;,<br>  model_type=&quot;PyTorch&quot;<br>)<br>predictor_instance = model_instance.deploy_predictor(<br>  service_name=&quot;service_predictor_name&quot;,<br>  infer_type=&quot;real-time&quot;,<br>  configs=[ServiceConfig(model_id=model_instance.model_id, weight=&quot;100&quot;, instance_count=1, specification=&quot;modelarts.vm.cpu.2u&quot;)],<br>  schedule=[Schedule(op_type=&#39;stop&#39;, time_unit=&#39;HOURS&#39;, duration=1)]<br>)</pre><h3>🛠️ CodeArts Build ile Dağıtım</h3><pre>pip install modelarts-latest-py2.py3-none-any.whl<br>pip install futures==3.1.1 esdk-obs-python<br>python DeployModel.py</pre><p>📸 Dağıtım Görevi:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*eS79nTmv1mL09yMS.png" /></figure><h3>✅ Sonuçlar (Yakında)</h3><p>Model başarıyla dağıtıldığında, kestirimleri HTTP istekleri ya da ModelArts UI ile test edebilirsiniz. Bir sonraki güncellemede gerçek tahmin sonuçları ve doğruluk oranlarını paylaşacağım.</p><p>Tahmin Servisi sayfasında bir görsel yükleyip test işlemini gerçekleştirin. Aşağıdaki adımları izleyin:</p><ol><li><strong>Tahmin (Predict)</strong> sekmesini açın.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*Z0BL7__77PtYdU56.png" /><figcaption>tahmin</figcaption></figure><p>2.<strong> Yükle (Upload)</strong> butonuna tıklayarak test etmek istediğiniz resmi seçin.</p><p>3. Ardından <strong>Tahmin Et (Predict)</strong> butonuna tıklayın.</p><p>4. Test sonucunu sayfanın sağ tarafında görüntüleyebilirsiniz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/560/0*Gqk-vr_qBveEwtWj.jpg" /><figcaption>sonuc</figcaption></figure><h3>💬 Son Söz</h3><p>Bu pratik MLOps iş akışı ile:</p><p>✅ CodeArts ile boru hattınızı otomatikleştirdiniz<br> ✅ ModelArts SDK ile modeli eğitip dağıttınız<br> ✅ Tüm süreci tamamen kodla yönetilebilir hale getirdiniz</p><p>Huawei Cloud sayesinde yapay zeka yaşam döngünüzü tam anlamıyla kontrol edebilirsiniz.<br>Faydalı bulduysanız veya kestirim testiyle ilgili bir rehber isterseniz yorumlarda belirtin!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d08a6cdfbf98" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/huawei-cloud-codearts-ile-modelarts-%C3%BCzerinde-mlops-otomasyonu-kurmak-d08a6cdfbf98">🚀 Huawei Cloud CodeArts ile ModelArts Üzerinde MLOps Otomasyonu Kurmak</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[HCCDA Tech Essentials Sertifikası Hazırlık ve Eğitim Rehberi — Bölüm 2]]></title>
            <link>https://medium.com/huawei-developers-tr/hccda-tech-essentials-sertifikas%C4%B1-haz%C4%B1rl%C4%B1k-ve-e%C4%9Fitim-rehberi-b%C3%B6l%C3%BCm-2-c51e2e206129?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/c51e2e206129</guid>
            <category><![CDATA[techessentials]]></category>
            <category><![CDATA[huawei]]></category>
            <category><![CDATA[cloud-computing]]></category>
            <category><![CDATA[huawei-cloud]]></category>
            <dc:creator><![CDATA[Enes Cıkcık]]></dc:creator>
            <pubDate>Tue, 17 Jun 2025 19:05:52 GMT</pubDate>
            <atom:updated>2025-06-17T19:05:51.749Z</atom:updated>
            <content:encoded><![CDATA[<h3>HCCDA Tech Essentials Sertifikası Hazırlık ve Eğitim Rehberi — Bölüm 2</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*JM-sYe_ZcbYsnFUeL8QWdg.png" /><figcaption>“This illustration was AI-generated.”</figcaption></figure><h3>GİRİŞ 🚀</h3><p>Bu yazı serisinin 2. bölümünde, <strong>HCCDA — Tech Essentials Sertifikası</strong> sınavına hazırlanan adaylar için Huawei Cloud’un Ağ (Network) ve Veritabanı (Database) hizmetlerini detaylı şekilde ele alıyoruz. İçerikler; <strong>Cloud Hızlandırma Programı</strong>, <strong>HCCDA — Tech Essentials eğitim dokümanları</strong> ve sınavda başarıyla deneyim kazanmış öğrencilerin katkılarıyla oluşturulmuştur.</p><p>Bu bölümde, güvenli ve ölçeklenebilir bulut altyapısının temel taşları olan sanal ağ yapılandırmaları, trafik yönetimi, VPN bağlantıları ve veri tabanı çözümlerini adım adım öğreneceğiz. Huawei Cloud’un sunduğu VPC, ELB, VPN, RDS, GaussDB ve Cloud-Native yaklaşımlarla sınava hazırlanırken teorik bilgileri uygulamalı senaryolarla pekiştireceğiz.</p><p>Hazırsanız, HCCDA sınavına giden yolculuğumuzun ikinci adımına geçiyoruz! ☁️🔥</p><p>Merhaba Teknoloji Tutkunları! 🔥</p><p>Bulut bilişimde güçlü bir altyapı oluşturmanın en önemli bileşenlerinden biri ağ ve veritabanı yönetimidir. Güvenli, ölçeklenebilir ve yüksek performanslı bir ağ altyapısı, bulut ortamında çalışan uygulamaların sorunsuz çalışmasını sağlar. Benzer şekilde, veritabanı hizmetleri büyük miktarda verinin hızlı ve güvenilir bir şekilde depolanmasını ve işlenmesini sağlar.</p><p>Huawei Cloud tarafından sunulan gelişmiş ağ ve veritabanı çözümlerini ayrıntılı olarak inceleyeceğiz. Sanal özel bulut (VPC), yük dengeleme (ELB) ve trafik yönetimi gibi ağ hizmetlerinin nasıl çalıştığını öğreneceğiz ve veritabanı yönetim sistemlerini (MySQL, PostgreSQL, MongoDB) ve veri depolama stratejilerini keşfedeceğiz. Gerçek dünya senaryoları aracılığıyla, bulut tabanlı bir uygulamada ağ yapılandırmasının nasıl gerçekleştirildiğini ve veritabanı yönetiminin kritik rolünü anlayacağız.</p><p>Yolculuğumuza Huawei Cloud tarafından sunulan gelişmiş ağ ve veritabanı hizmetlerine bir göz atarak başlayalım! 🚀</p><p>Güçlü bir altyapının temel bileşenleri olan bu hizmetleri inceledikten sonra sistem yönetimi (O&amp;M) ve konteyner tabanlı uygulama yönetimine geçeceğiz.</p><h3>🌐Huawei Cloud Ağ (Network) Servisleri</h3><h4>🛠️Virtual Private Cloud (VPC)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/385/0*wUjujpq0d1dd2TDf.png" /><figcaption><a href="https://tudip.com/blog-post/introduction-of-virtual-private-cloud-vpc/"><strong>Virtual Private Cloud (VPC)</strong></a></figcaption></figure><p><strong>Virtual Private Cloud (VPC)</strong>, mantıksal olarak izole edilmiş sanal bir ağdır. VPC, Huawei Cloud içinde belirli bir bölge (region) içinde yer alan kullanılabilirlik alanlarını (availability zone) kapsayan özel bir alan oluşturur.</p><p>VPC servisini, evinizdeki odalara benzetebilirsiniz. Her oda, evinizin içinde farklı amaçlar için ayrılmış, özel ve bağımsız bir alan sunar. VPC ile oluşturduğunuz sanal ağlar da benzer mantıkla birbirlerinden tamamen ayrıdır ve farklı uygulamalarınızı veya verilerinizi ayrı tutmanıza olanak tanır.</p><h4><strong>VPC’nin Başlıca Avantajları</strong></h4><p><strong>Sorunsuz Bağlantı</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/537/0*E61kenJH04TDkbl8.png" /><figcaption><a href="https://cloud.tencent.com/developer/article/1840314"><strong>VPC Peering</strong></a></figcaption></figure><ul><li>İnternete bağlanmak için birden fazla yöntem sunar.</li><li>Bir VPC eşleme bağlantısı (<strong>VPC Peering</strong>), iki farklı VPC’nin özel IP adresleri ile kendi aralarında doğrudan iletişim kurmasını sağlar. Tıpkı iki ayrı odanın arasındaki özel bir geçiş kapısı gibi düşünülebilir.</li></ul><p><strong>Güvenlik ve Güvenilirlik</strong></p><ul><li>%100 mantıksal izolasyon sağlar.</li><li>Kapsamlı güvenlik hizmetleriyle desteklenir.</li></ul><p><strong>Yüksek Hızlı Erişim:</strong></p><ul><li>Çoklu taşıyıcı üzerinden dinamik BGP erişimi sağlar.</li><li>Otomatik devralma ile yüksek erişilebilirlik sunar.</li></ul><p><strong>Esnek Yapılandırma</strong></p><ul><li>Kullanıcı tanımlı ağ yapısı.</li><li>ECS’leri farklı AZ’lere dağıtabilme imkânı.</li></ul><h4>VPC’de Alt Ağlar (Subnet)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/752/1*2OA2jooZQv49LBHar9_4KQ.png" /><figcaption><strong>Subnet</strong></figcaption></figure><p>VPC, her zaman varsayılan bir alt ağ (subnet) ile gelir. Ancak, ihtiyacınıza göre yeni alt ağlar oluşturabilirsiniz.</p><p>Bir apartman düşünün; apartmanın tamamı VPC olarak adlandırılabilir, her daire ise bir alt ağdır. Daireler (alt ağlar), apartman (VPC) içinde farklı IP aralıklarında bulunur ve belirli kurallara göre yönetilir.</p><p><strong>Alt Ağ Özellikleri</strong></p><ul><li>Her <strong>alt ağ</strong>, VPC içinde benzersiz bir <strong>CIDR bloğu</strong> (IP aralığı) ile tanımlanır.</li><li>Varsayılan olarak <strong>DHCP</strong> (Dynamic Host Configuration Protocol) ile yapılandırılır.</li><li>Bir <strong>ECS başlatıldığında</strong>, otomatik olarak <strong>DHCP kullanarak</strong> bir IP adresi alır.</li><li>Bir <strong>alt ağ oluşturulduktan sonra</strong> CIDR bloğu <strong>değiştirilemez</strong>.</li></ul><p>Alt ağlar, belirli kullanılabilirlik bölgelerinde (AZ) bulunur ve <strong>yüksek erişilebilirlik sağlayabilmek için farklı AZ’lere yayılabilir</strong>.</p><h4>VPC’nin İnternetle Bağlantısı (Elastic IP — EIP)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/565/0*aKzvF0Pirds_E5kT.png" /><figcaption><a href="https://cloud.tencent.com/developer/article/1840314"><strong>Elastic IP — EIP</strong></a></figcaption></figure><p>Normalde VPC’nin internete bağlantısı yoktur. İnternetle bağlantı kurmak için, VPC’deki kaynaklara EIP atamalısınız. EIP, statik genel IP adresleri sağlar ve bunları bulut kaynaklarınıza (örneğin ECS, BMS, Load Balancer, NAT Gateway) bağlayabilirsiniz.</p><h4>Rota Tablosu (Route Table)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/655/0*xN117TGs3iNtRdy-.png" /><figcaption><a href="https://medium.com/huawei-developers/vpc-cheatsheet-how-to-create-virtual-private-cloud-and-related-services-on-huawei-cloud-9c5dd2fdb8d3"><strong>Route Table</strong></a></figcaption></figure><p>Bir VPC içindeki ağ trafiğinin yönünü belirlemek için rotalar içerir. Bu tablo, birden fazla alt ağ ile ilişkilendirilebilir, ancak her alt ağ yalnızca tek bir rota tablosuna bağlanır.</p><h4>Security Group (Güvenlik Grubu)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/574/0*Ks_onF52Yh8gq1G6.png" /><figcaption><a href="https://support.huaweicloud.com/eu/function-vpc/index.html"><strong>Security Group</strong></a></figcaption></figure><p>Security Group, VPC içindeki bulut sunucularına gelen ve giden trafiği kontrol etmek için kullanılan bir erişim kontrol mekanizmasıdır. Aynı güvenlik kurallarına sahip bulut sunucularınızı bir araya getirerek, dış dünyayla nasıl iletişim kuracaklarını belirleyebilirsiniz. Her hesap, <strong>varsayılan bir güvenlik grubu</strong> ile gelir. Ancak, ihtiyacınıza göre yeni güvenlik grupları oluşturabilirsiniz.</p><p>Security Group’ları bir bina girişinde bulunan güvenlik kapıları gibi düşünebilirsiniz. Binaya giriş yapmak isteyen herkesin kimliği kontrol edilir, sadece yetkili olanların geçmesine izin verilir. Aynı şekilde, güvenlik grubu kuralları belirleyerek hangi trafiğin bulut sunucularınıza erişmesine izin verileceğini tanımlayabilirsiniz.</p><p><strong>Security Group Kuralları</strong>:</p><ul><li>İzin Ver (Allow): Belirli bir port üzerinden trafiğe izin verir.</li><li>Engelle (Deny): Belirtilen IP veya port üzerinden gelen trafiği durdurur.</li></ul><p><strong>Önemli Portlar</strong>:</p><ul><li>Linux makinelerine bağlanmak için: SSH (22 numaralı port)</li><li>Windows makinelerine bağlanmak için: RDP (3389 numaralı port)</li></ul><p>Security Group’lar, instance seviyesinde erişim kontrolü sağlar ve varsayılan olarak tüm gelen trafiği engeller. Ancak, belirli IP’lere veya servislere erişim sağlamak için izin kuralları ekleyebilirsiniz.</p><h4>🌍Network ACL (Ağ Erişim Kontrol Listesi)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/506/0*mo6tz3sJsUiW7nBJ.png" /><figcaption><a href="https://support.huaweicloud.com/eu/function-vpc/index.html"><strong>Network ACL</strong></a></figcaption></figure><p>VPC içindeki alt ağlarınızın giriş ve çıkış trafiğini kontrol etmek için kullandığınız erişim kurallarını belirler. Güvenlik grupları sunucu düzeyinde koruma sağlarken, Network ACL subnet seviyesinde koruma sağlar.</p><h4>📡L2CG (Layer 2 Cloud Gateway) — Sanal Tünel Ağ Geçidi</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/812/1*Grllnk6nASCGEW1b7ynCfA.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/admin-vpn/vpn_admin_0016.html"><strong>L2CG</strong></a></figcaption></figure><p>L2CG, <strong>bulut ve şirket içi ağlar arasında doğrudan bir bağlantı kurmak için kullanılan bir sanal tünel ağ geçididir</strong>.</p><p>Bunu, iki farklı şehirde bulunan iki ofisiniz arasında özel bir güvenli tünel oluşturmak gibi düşünebilirsiniz. L2CG, bu ofisleri sanal olarak birbirine bağlayarak verilerin güvenli bir şekilde taşınmasını sağlar.</p><p><strong>L2CG’nin Avantajları:</strong></p><ul><li><strong>Ağ adreslerini değiştirmeye gerek kalmaz:</strong> Şirket içi veri merkezinizi doğrudan Huawei Cloud’a bağlayabilirsiniz.</li><li><strong>VPN’den daha yüksek performans sunar:</strong> Direct Connect (özel bağlantı) veya VPN ile birlikte çalışabilir.</li><li><strong>Daha uygun maliyetlidir:</strong> VPN’den daha düşük maliyetle yüksek hızlı bağlantılar sunabilir.</li></ul><p><strong>L2CG Kullanım Alanları:</strong></p><ul><li>Şirket içi veri merkezleri ile bulut arasındaki <strong>güvenli veri transferleri</strong> için kullanılır.</li><li>Hibrit bulut mimarilerinde <strong>fiziksel veri merkezleri</strong> ile <strong>Huawei Cloud altyapısını</strong> birbirine bağlamak için tercih edilir.</li></ul><h4>Senaryo Örneği — VPC Kullanımı</h4><p>Bir şirketin üretim ortamı ile test ortamını düşünün. Bu iki ortamın verileri ve uygulamaları birbirini etkilememelidir. Bu nedenle şirket, üretim ve test sistemlerini ayrı iki farklı VPC’de tutarak tamamen mantıksal izolasyon sağlayabilir.</p><h4>⚖️Elastic Load Balance (ELB)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/649/0*Qc7FAVXcT7fASFNU.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/tr-central-201-usermanual-elb/Elastic%20Load%20Balance%20usermanual%20VDF-pdf.pdf"><strong>Elastic Load Balance (ELB)</strong></a></figcaption></figure><p>ELB, gelen ağ trafiğini, oluşturduğunuz kurallar doğrultusunda birden fazla arka uç sunucusuna otomatik olarak dağıtır. ELB, yüksek kullanılabilirlik sağlar ve tek hata noktalarını (SPOF) ortadan kaldırır.</p><p>Bir marketteki kasa sistemini düşünelim. Yoğunluk arttığında, yeni kasalar açılarak müşterilerin daha hızlı ve beklemeden işlemlerini tamamlaması sağlanır. İşte ELB de ağ trafiğini bu şekilde yönetir.</p><p><strong>ELB Avantajları:</strong></p><ul><li>Güçlü performans (100 milyon eşzamanlı bağlantıya kadar)</li><li>Yüksek kullanılabilirlik (AZ’ler arasında otomatik trafiğin dağıtılması)</li><li>Esnek ölçeklenebilirlik (AS servisi ile otomatik ölçeklenebilir)</li></ul><h4>ELB’nin Temel Bileşenleri</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/903/0*TOCYK3vX8-tuj20j.png" /><figcaption><strong>ELB Architecture</strong></figcaption></figure><p>ELB <strong>üç ana bileşenden</strong> oluşur</p><p><strong>Yük Dengeleyici (Load Balancer)</strong></p><ul><li>Gelen trafiği birden çok arka uç sunucusuna (backend server) yönlendirir.</li><li>Hem <strong>genel (public)</strong> hem de <strong>özel (private)</strong> ağlarda çalışabilir.</li><li><strong>Genel ELB:</strong> İnternetten gelen talepleri işler.</li><li><strong>Özel ELB:</strong> Yalnızca VPC içindeki sunucular arasındaki trafiği yönetir.</li></ul><p><strong>Dinleyici (Listener)</strong></p><ul><li><strong>İstemcilerden gelen istekleri dinler</strong> ve belirlenen kurallara göre yönlendirir.</li><li>Hangi protokollerin ve portların kullanılacağını belirler.</li></ul><p><strong>Arka Uç Sunucu Grubu (Backend Server Group)</strong></p><ul><li>Aynı özelliklere sahip birden fazla bulut sunucusundan (ECS) oluşur.</li><li>Gelen trafiği dengeli bir şekilde dağıtarak uygulamaların <strong>kesintisiz çalışmasını</strong> sağlar.</li></ul><p><strong>ELB’nin Çalışma Mantığı ve Sağlık Kontrolleri</strong></p><ul><li>ELB, arka uç sunucularının sağlığını düzenli olarak kontrol etmek için kalp atışı (health check) mesajları gönderir.</li><li>Eğer bir sunucu sağlıksız hale gelirse (örneğin çökerse), ELB otomatik olarak trafiği sağlıklı sunuculara yönlendirir.</li><li>Bu sayede sistemde kesinti yaşanmaz ve hizmet sürekliliği sağlanır.</li></ul><h4>ELB’de Kullanılan Protokoller (Listening Protocols)</h4><p>ELB, <strong>Katman 4 (Layer 4) ve Katman 7 (Layer 7)</strong> olmak üzere iki farklı seviyede yük dengeleme yapabilir.</p><p><strong>Katman 4 (Layer 4) Yük Dengeleme (Transport Layer — TCP/UDP)</strong></p><p><strong>TCP (Transmission Control Protocol)</strong></p><ul><li><strong>Bağlantı odaklıdır</strong>, yani karşı tarafın yanıt vermesi beklenir.</li><li><strong>Örneğin:</strong> Web siteleri, e-ticaret siteleri gibi sürekli bağlantı gerektiren uygulamalarda kullanılır.</li></ul><p><strong>UDP (User Datagram Protocol)</strong></p><ul><li><strong>Bağlantı gerektirmez</strong>, yani karşıdan yanıt alınıp alınmadığı önemli değildir.</li><li><strong>Örneğin:</strong> Canlı yayınlar, video akışları ve çevrim içi oyunlar için idealdir.</li></ul><p><strong>Katman 7 (Layer 7) Yük Dengeleme (Application Layer — HTTP/HTTPS)</strong></p><p><strong>HTTP (Hypertext Transfer Protocol)</strong></p><ul><li><strong>Güvensizdir</strong>, çünkü veriler şifrelenmeden iletilir.</li></ul><p><strong>HTTPS (Hypertext Transfer Protocol Secure)</strong></p><ul><li><strong>Şifreli ve güvenlidir</strong>, hassas verileri korur (örneğin online bankacılık ve e-ticaret siteleri).</li></ul><p>Layer 4 ve Layer 7 farkını, <strong>telefon görüşmesi ve mektup gönderme</strong> arasındaki fark gibi düşünebilirsiniz</p><ul><li><strong>Layer 4 (TCP/UDP) — Telefon görüşmesi:</strong> Bağlantı devam ederken anlık iletişim sağlanır.</li><li><strong>Layer 7 (HTTP/HTTPS) — Mektup gönderme:</strong> Gönderdiğiniz bilgiler belirli kurallar çerçevesinde işlenir ve alıcıya ulaşır.</li></ul><h4>ELB Yapılandırma Süreci (Adım Adım Kurulum)</h4><p>ELB’yi Huawei Cloud üzerinde kullanmak için aşağıdaki adımları izleyebilirsiniz:</p><p><strong>1. Yük Dengeleyici Oluşturma</strong></p><ul><li>Huawei Cloud Konsoluna giriş yapın.</li><li>ELB satın alın.</li><li>Genel (public) veya özel (private) ELB türünü seçin.</li><li>Ağ ayarlarını yapılandırın.</li></ul><p><strong>2. Dinleyici Ekleme</strong></p><ul><li>Oluşturulan yük dengeleyiciyi seçin.</li><li>Dinleyici protokolünü (TCP, UDP, HTTP, HTTPS) belirleyin.</li><li>İlgili portları ve yönlendirme kurallarını tanımlayın.</li></ul><p><strong>3. Arka Uç Sunucu Grubu Ekleme</strong></p><ul><li>Arka uç sunucularını belirleyin.</li><li>Yük dengeleme algoritmasını seçin (Round Robin, Least Connections vb.).</li><li>Sağlık kontrolü (health check) yapılandırmasını ekleyin.</li></ul><h4>🔗Virtual Private Network (VPN)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/672/0*70D7F141Yu-_jaVK.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/ae-ad-1-usermanual-vpn/vpn-ae-ad-1-usermanual.pdf"><strong>Virtual Private Network (VPN)</strong></a></figcaption></figure><p>VPN, şirket içindeki veri merkeziniz ile Huawei Cloud üzerindeki VPC’niz arasında internet üzerinden şifreli, güvenli bir bağlantı sağlar.</p><p>Bunu, <strong>şifreli bir tünel</strong> olarak düşünebilirsiniz. Bir şirketin iki farklı şehirdeki ofisleri arasında özel bir tünel kazıldığını hayal edin. Bu tünel sayesinde <strong>veriler güvende kalır, dış tehditlerden korunur ve sadece yetkili kişiler bu tünel üzerinden geçebilir</strong>. VPN, internet üzerinden <strong>şifreli ve güvenli veri aktarımı sağlayarak</strong> aynı mantıkla çalışır.</p><p><strong>VPN Avantajları</strong></p><ul><li>Güvenli iletişim (IKE ve IPsec protokolleri ile güçlü şifreleme)</li><li>Maliyeti düşük bağlantı sağlar.</li><li>Basit yapılandırılır ve kolay yönetilir.</li></ul><h4>VPN Ağ Oluşturma</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/648/1*9tvD1jhGDPNHOP0t9wempg.png" /><figcaption><strong>VPN Ağ Oluşturma</strong></figcaption></figure><p>Bir <strong>VPN bağlantısı</strong> aşağıdaki iki ana bileşenden oluşur</p><p><strong>VPN Ağ Geçidi (VPN Gateway)</strong></p><ul><li>VPC içinde oluşturulan bir ağ geçididir.</li><li>Şirket içi veri merkezinize bağlanarak <strong>bulut üzerindeki kaynaklarınıza internet üzerinden güvenli erişim sağlar</strong>.</li></ul><p><strong>VPN Bağlantısı (VPN Connection)</strong></p><ul><li><strong>VPN ağ geçidini</strong> uzak ağ geçidine bağlar.</li><li>Bu bağlantı, <strong>VPC ile şirket içi veri merkezi arasında güvenli bir hibrit bulut oluşturur</strong>.</li></ul><h4>VPN Bağlantı Türleri</h4><p><strong>Site-to-Site (Siteler Arası) VPN Bağlantısı</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/910/1*l9ReLNjVIqTbqPeotiVTrw.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/ae-ad-1-usermanual-vpn/vpn-ae-ad-1-usermanual.pdf">Site-to-Site</a></figcaption></figure><ul><li>Şirket içi veri merkezinizi bir VPC’ye bağlamak için kullanılır.</li><li>Böylece, <strong>fiziksel veri merkezi ile bulut arasında sürekli ve güvenli bir ağ bağlantısı</strong> oluşturulur.</li></ul><p><strong>Kullanım Senaryosu:</strong></p><ul><li>Bir finans şirketinin yerel sunucularında tuttuğu verileri bulut yedekleme için Huawei Cloud’a göndermesi gerekiyorsa, site-to-site VPN kullanarak bu işlemi güvenli hale getirebilir.</li></ul><p><strong>Hub-and-Spoke VPN Bağlantısı</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/698/1*cL8QY-DAB_z98h7yHiYA3A.png" /><figcaption><strong>Hub-and-Spoke</strong></figcaption></figure><ul><li>Birden fazla şirket içi veri merkezini <strong>tek bir VPC’ye bağlamak</strong> için kullanılır.</li><li>Merkez (Hub) olarak bir ana VPC seçilir, diğer ofisler (Spoke) bu ağa bağlanır.</li><li>Tüm trafiğin merkezi bir noktadan yönetilmesini sağlar.</li></ul><p><strong>Kullanım Senaryosu:</strong></p><ul><li>Bir perakende şirketi, farklı şehirlerdeki mağazalarını <strong>Huawei Cloud’da bulunan merkezi bir ERP sistemine bağlamak</strong> istiyorsa <strong>Hub-and-Spoke VPN kullanabilir</strong>.</li></ul><h4>IPsec VPN</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/666/0*RjPb7rzbf14Vui6s.png" /><figcaption><strong>IPsec VPN</strong></figcaption></figure><p><strong>IPsec VPN (Internet Protocol Security VPN)</strong>, farklı ağlar arasında <strong>şifrelenmiş ve güvenli iletişim</strong> sağlayan bir protokoldür.</p><p><strong>VPN Neden IPsec Kullanır?</strong></p><p><strong>Veri Güvenliği:</strong> Tüm iletişim <strong>şifrelenmiş</strong> olarak aktarılır.</p><p><strong>Kimlik Doğrulama:</strong> Alıcı ve gönderici <strong>yetkilendirilmiş mi</strong> kontrol edilir.</p><p><strong>Veri Bütünlüğü:</strong> Aktarılan verilerin değiştirilmediği doğrulanır.</p><h4>VPN Yapılandırma Süreci (Adım Adım Kurulum)</h4><p><strong>1. VPN Ağ Geçidi Oluşturma</strong></p><ul><li>Huawei Cloud Konsolu’na giriş yapın.</li><li>Yeni bir VPN Gateway (Ağ Geçidi) oluşturun.</li><li>Bölge ve ağ yapılandırmasını belirleyin.</li></ul><p><strong>2. VPN Bağlantısı Ekleme</strong></p><ul><li>VPN ağ geçidini seçin.</li><li>Şirket içi ağ geçidinin IP adresini girin.</li><li>IPsec şifreleme protokolünü belirleyin.</li></ul><p><strong>3. Trafik Kurallarını Belirleme</strong></p><ul><li>İzin verilecek IP aralıklarını tanımlayın.</li><li>Güvenlik grubu kurallarını oluşturun.</li></ul><p><strong>4. Bağlantıyı Test Etme</strong></p><ul><li>Ping veya traceroute komutları kullanarak bağlantıyı doğrulayın.</li><li>VPN bağlantısı üzerinden VPC içindeki kaynaklara erişildiğini kontrol edin.</li></ul><h4>NAT Gateway</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/397/0*C41EIp-FaJ_d8L78.png" /><figcaption><a href="https://forum.huawei.com/enterprise/intl/fr/thread/Services-de-mise-en-r%C3%A9seau-de-Huawei-CLOUD-Tout-ce-que-vous-devez-savoir-Partie-1/667494551230758912?blogId=667494551230758912"><strong>NAT Gateway</strong></a></figcaption></figure><p>NAT Gateway, buluttaki kaynaklarınızın internete çıkması için ortak IP adreslerini paylaşarak uygun maliyetli bağlantı sağlar. Böylece IP adresleriniz tükenmez ve maliyetleriniz azalır.</p><h4>🔍Ağ Servisleri Uygulama Senaryoları</h4><p>Bulut ağları, farklı iş gereksinimlerine uyum sağlayacak şekilde özelleştirilebilir. <strong>Farklı kullanım senaryolarına göre nasıl konfigüre edileceğini anlamak</strong>, bulut teknolojilerini daha verimli kullanmanıza yardımcı olacaktır.</p><ol><li><strong>Bulut Üzerindeki Ayrılmış Ağlar (VPC İzolasyonu)</strong></li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/809/1*Fq-f79xAmuLHHPaSottGgA.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/productdesc-vpc/overview_0004.html"><strong>VPC İzolasyonu</strong></a></figcaption></figure><p><strong>Senaryo:</strong><br> Bir şirketin <strong>üretim (production) ve test (staging/test) ortamlarını birbirinden tamamen ayırması</strong> gerekir.</p><p><strong>Çözüm:</strong></p><ul><li>Her hizmet sistemi için ayrı VPC’ler oluşturulur.</li><li>Üretim ortamı ve test ortamı mantıksal olarak izole edilir.</li><li>Veri sızıntıları ve sistem hatalarının birbirini etkilemesi önlenir.</li></ul><p><strong>2. Web Uygulaması/Web Sitesi Barındırma</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/758/1*6IDFZ5WAuUNePSSUYyeGyA.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/productdesc-vpc/overview_0004.html"><strong>Web Sitesi</strong></a></figcaption></figure><p><strong>Senaryo:</strong><br> Bir şirket, <strong>web uygulamalarını veya web sitesini Huawei Cloud üzerinde barındırmak</strong> istiyor.</p><p><strong>Çözüm:</strong></p><ul><li>VPC içinde bir ağ ortamı oluşturulur.</li><li>EIP (Elastic IP) veya NAT Gateway kullanılarak sunucular internete bağlanır.</li><li>ELB (Elastic Load Balancer) ile trafiğin birden fazla ECS sunucusuna dağıtılması sağlanır.</li></ul><p><strong>3. Web Uygulaması Erişim Kontrolü</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/529/1*gjwcB2yQm-sAHC2xybACpQ.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/productdesc-vpc/overview_0004.html">Network</a></figcaption></figure><p><strong>Senaryo:</strong><br> Bir banka, <strong>web sunucularını herkese açık hale getirirken, veritabanlarını sadece iç ağdan erişilebilir kılmak istiyor</strong>.</p><p><strong>Çözüm:</strong></p><ul><li>Web sunucuları herkese açık bir alt ağa (public subnet) yerleştirilir.</li><li>Veritabanları ise özel bir alt ağda (private subnet) tutulur.</li><li>Güvenlik grupları ve ağ ACL’leri ile erişim kuralları belirlenir.</li></ul><p><strong>4. VPC Bağlantı Seçenekleri</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/882/1*zUMgyEmEwG4jeGuOnKtg4g.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/productdesc-vpc/overview_0004.html">Vpc</a></figcaption></figure><p><strong>Senaryo:</strong><br> İki farklı veri merkezi arasındaki <strong>iletişimi güvenli hale getirmek</strong> istiyoruz.</p><p><strong>Çözüm:</strong></p><ul><li><strong>VPC Peering</strong> kullanarak <strong>iki VPC arasında doğrudan bağlantı kurabiliriz</strong>.</li><li><strong>VPN veya Direct Connect</strong> ile şirket içi veri merkezimizi Huawei Cloud VPC’sine bağlayabiliriz.</li></ul><p><strong>5. Hibrit Bulut Dağıtımı</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/956/1*MmISzrrXCdfnVD779Xq6VQ.png" /><figcaption>Hybrid cloud</figcaption></figure><p><strong>Senaryo:</strong><br> Bir şirket, <strong>tüm iş yüklerini tamamen buluta taşımak istemiyor</strong>, ancak <strong>bazı kritik verileri şirket içi sunucularda tutmak istiyor</strong>.</p><p><strong>Çözüm:</strong></p><ul><li>Şirket içi veri merkezi, Huawei Cloud’a VPN veya Direct Connect ile bağlanır.</li><li>Hassas veriler şirket içi sunucularda saklanırken, uygulamalar bulutta çalıştırılır.</li></ul><p><strong>6. Yoğun Trafikli Uygulamalar (Load Balancing ile Performans Artışı)</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/553/1*1Imm6IibY5CY_a9QXq__nw.png" /><figcaption><strong>Load Balancing</strong></figcaption></figure><p><strong>Senaryo:</strong><br> Bir e-ticaret platformu, <strong>Black Friday gibi yüksek trafikli kampanya dönemlerinde web sitesinin kesintisiz çalışmasını sağlamak istiyor</strong>.</p><p><strong>Çözüm:</strong></p><ul><li>ELB (Elastic Load Balancer) ile trafiğin birden fazla sunucuya dengeli dağıtılması sağlanır.</li><li>Auto Scaling (AS) ile talebe göre dinamik olarak sunucu sayısı artırılır.</li></ul><p><strong>7. Trafik Dalgalanmalarına Uyum Sağlama</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/417/1*n1CSQuAYMROtNZlEA7biqA.png" /><figcaption>ELB</figcaption></figure><p><strong>Senaryo:</strong><br> Bir şirketin <strong>trafik yoğunluğu belirli dönemlerde artış gösteriyor</strong> (örneğin, dönemsel kampanyalar, haber sitelerinin anlık ziyaretçi artışları).</p><p><strong>Çözüm:</strong></p><ul><li>Auto Scaling ile trafiğe bağlı olarak yeni sunucular otomatik olarak eklenir.</li><li>ELB, kullanıcıları aktif sunuculara yönlendirerek yükü dengeler.</li></ul><p><strong>8. SPOF (Tek Nokta Hatası) Riskini Ortadan Kaldırma</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/403/1*t2RsHMj-I57ePRUTtKyhaQ.png" /><figcaption>ELB</figcaption></figure><p><strong>Senaryo:</strong><br> Bir bankanın web sitesi, <strong>tek bir sunucuya bağımlı olmadan kesintisiz çalışmalıdır</strong>.</p><p><strong>Çözüm:</strong></p><ul><li>ELB ile trafik, farklı sunuculara yönlendirilerek tek bir sunucuya bağımlılık ortadan kaldırılır.</li><li>Sunucu sağlığı periyodik olarak kontrol edilir, sorun yaşanırsa trafiğin başka bir sunucuya aktarılması sağlanır.</li></ul><p><strong>9. Çapraz AZ (Availability Zone) Yük Dengeleme</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/574/1*_Qb3IcJssVWwvoWo7pV0Ig.png" /><figcaption>ELB</figcaption></figure><p><strong>Senaryo:</strong><br> Bir sigorta şirketi, <strong>bir bölgede yaşanabilecek doğal afet gibi olaylardan etkilenmeden hizmetlerini sürdürebilmek istiyor</strong>.</p><p><strong>Çözüm:</strong></p><ul><li>ELB, farklı bölgelerde bulunan veri merkezlerine (AZ’ler) trafiği yönlendirecek şekilde konumlandırılır.</li><li>Bir bölgede sorun yaşanırsa, ELB diğer bölgelerdeki sunuculara yönlendirerek hizmetin devam etmesini sağlar.</li></ul><h3>🗄️Database (Veritabanı) Hizmetleri — Huawei Cloud Database Services</h3><p>Veritabanı (Database), belirli bir model kullanılarak düzenlenen <strong>verileri depolayan ve yöneten</strong> bir dosya koleksiyonudur. Veritabanları, verileri organize ederek <strong>erişimi kolaylaştırır, sorguları hızlandırır ve büyük veri işleme süreçlerini verimli hale getirir</strong>.</p><p>Veritabanını <strong>büyük bir kütüphane</strong> gibi düşünebilirsiniz. Kitaplar (veriler), belirli bir <strong>kategoriye (tablo)</strong> göre düzenlenir. Kullanıcılar (sorgular), bir katalog (SQL) aracılığıyla ihtiyaç duydukları bilgilere erişirler.</p><h4>Database Instance Nedir?</h4><p>Instance, arka planda çalışan süreçler ve bellek yapıları içeren bir veritabanı yönetim sistemidir.<br> Kullanıcılar ile işletim sistemi arasındaki bağlantıyı sağlayarak veritabanının çalışmasını kontrol eder.</p><p>Database instance, <strong>restoran mutfağı</strong> gibidir.</p><ul><li>Veritabanı, <strong>siparişlerin alındığı menü (database)</strong>,</li><li>Instance, <strong>siparişlerin hazırlandığı mutfak (veri işleme süreci)</strong>,</li><li>Kullanıcılar ise <strong>müşteriler (veriye erişmek isteyen sorgular)</strong> olarak düşünülebilir.</li></ul><p>Instance, mutfağın verimli çalışmasını sağlayan <strong>aşçılar, ocaklar ve depolar</strong> gibi, <strong>veritabanının düzgün çalışmasını sağlayan bir yapıdır</strong>.</p><h4>📌Veritabanı Türleri (Database Types)</h4><p>Veritabanları <strong>iki ana kategoriye ayrılır</strong>:</p><p><strong>Relational Database (İlişkisel Veritabanı — RDBMS)</strong></p><ul><li>Verileri ilişkisel bir modelde düzenler (ACID prensiplerine uyar).</li><li>Veriler satır (row) ve sütun (column) şeklinde saklanır.</li><li>SQL (Structured Query Language) kullanarak sorgular çalıştırılır.</li><li>Depolama alanı sınırı kullanılan veritabanı motoruna bağlıdır.</li></ul><p>İlişkisel veritabanlarını, <strong>elektronik bir tablo (Excel gibi) ile organize edilmiş veriler</strong> olarak düşünebilirsiniz.</p><p><strong>Örnek: </strong>Bir e-ticaret sitesinde müşteri bilgileri ve sipariş bilgileri farklı tablolarda tutulur. Ancak, müşteri kimliği (ID) üzerinden iki tablo birbiriyle ilişkilendirilebilir.</p><p><strong>Popüler Relational Database Türleri:</strong></p><ul><li>MySQL</li><li>PostgreSQL</li><li>GaussDB (Huawei Cloud’un ilişkisel veritabanı çözümü)</li></ul><p><strong>Non-Relational Database (İlişkisel Olmayan Veritabanı — NoSQL)</strong></p><ul><li>ACID kurallarına uymaz (tutarlılığı garanti etmez, ancak daha esnektir).</li><li>Büyük miktarda veri depolayabilir ve çok sayıda eşzamanlı isteği işleyebilir.</li><li>SQL yerine farklı veri yapılarını kullanır (JSON, Key-Value, Columnar, Graph, vb.).</li><li>Depolama alanı sınırı, düğüm (node) sayısına bağlı olarak ölçeklenebilir.</li></ul><p>İlişkisel olmayan veritabanlarını, <strong>kitapları konularına göre gruplandıran bir kitaplık sistemi</strong> gibi düşünebilirsiniz.<br>Veriler, <strong>belirli bir yapı olmadan esnek bir şekilde saklanabilir</strong>.</p><p><strong>Popüler Non-Relational Database Türleri:</strong></p><ul><li>MongoDB (Doküman tabanlı)</li><li>Cassandra (Dağıtılmış veritabanı)</li><li>Redis (Anahtar-değer depolama)</li><li>InfluxDB (Zaman serisi veritabanı — IoT verileri için ideal)</li></ul><p><strong>Relational Database vs Non-Relational Database</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*a3_e6fJ6Fgm7aa9pfgrE8Q.png" /><figcaption><strong>Relational Database vs Non-Relational Database Table</strong></figcaption></figure><p><strong>Önemli Not:</strong></p><p><strong>Cloud Database (Bulut Veritabanları), geleneksel veritabanlarına göre avantajlıdır</strong>.</p><p>-&gt;Daha düşük yönetim maliyeti</p><p>-&gt;Yüksek performans ve ölçeklenebilirlik</p><ul><li>&gt;Otomatik yedekleme ve veri güvenliği</li></ul><h4>🔹Huawei Cloud Database Portfolio (Veritabanı Portföyü)</h4><p>Huawei Cloud, hem <strong>ilişkisel hem de ilişkisel olmayan veritabanı hizmetleri sunar</strong>.</p><p><strong>İlişkisel Veritabanı Hizmetleri (RDS — Relational Database Services):</strong></p><ul><li>MySQL</li><li>PostgreSQL</li></ul><p><strong>İlişkisel Olmayan Veritabanı Hizmetleri (NoSQL):</strong></p><ul><li><strong>GaussDB:</strong> MongoDB, Cassandra, Redis, InfluxDB destekler.</li></ul><p><strong>Veritabanı Yönetim Araçları:</strong></p><ul><li><strong>Data Replication Service (DRS)</strong> → Veri replikasyonu sağlar.</li><li><strong>Data Admin Service (DAS)</strong> → Yönetim süreçlerini kolaylaştırır.</li><li><strong>Distributed Database Middleware (DDM)</strong> → Depolama ve işlem kaynaklarını ayırarak ölçeklenebilirliği artırır.</li><li><strong>Database and Application Migration (UGO)</strong> → Veri tabanı ve uygulama taşıma hizmeti.</li></ul><p><strong>RDS Mimarisi ve Avantajları (Relational Database Service)</strong></p><p>RDS (Relational Database Service), <strong>yönetimi kolay, güvenilir ve ölçeklenebilir bir bulut veritabanı hizmetidir</strong>.</p><p><strong>Yüksek Kullanılabilirlik &amp; Dayanıklılık.</strong></p><p>Otomatik yedekleme ve replikasyon ile <strong>veri kaybını önler</strong>.</p><p>Sunucu hatalarında otomatik devreye girerek <strong>hizmet kesintisini önler</strong>.</p><p><strong>Daha Fazla Esneklik &amp; Daha Düşük Maliyet:</strong></p><ul><li>İhtiyaca göre ölçeklenebilir, gereksiz kaynak tüketimini azaltır.</li><li>Geleneksel veritabanlarına kıyasla daha düşük bakım maliyetleri sunar.</li></ul><p><strong>Güçlü Performans &amp; Güvenlik:</strong></p><ul><li>Gelişmiş şifreleme ve erişim kontrolü ile veri güvenliği sağlar.</li><li>DDoS ve SQL Injection saldırılarına karşı koruma mekanizmaları içerir.</li></ul><p>RDS’yi, <strong>büyük bir restoranın sipariş sistemini otomatikleştiren bir yönetim yazılımı</strong> olarak düşünebiliriz.</p><ul><li>Siparişleri optimize eder,</li><li>Önceliklendirme yapar,</li><li>Hatalara karşı otomatik çözümler sunar.</li></ul><h4>🐬RDS MySQL — Huawei Cloud Relational Database Service</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*udoCPiQN9XGi5crEUIS5SQ.png" /><figcaption><strong>RDS for MySQL</strong></figcaption></figure><p><strong>MySQL</strong>, dünyanın en popüler <strong>açık kaynaklı ilişkisel veritabanlarından (Relational Database — RDBMS) biridir</strong>.</p><p>Huawei Cloud’un <strong>RDS MySQL hizmeti</strong>, <strong>yüksek kullanılabilirlik (HA), düşük maliyet ve kolay yönetim</strong> avantajları sunarak <strong>kurumsal ve bireysel kullanıcılara güçlü bir veritabanı çözümü sağlar</strong>.</p><p>MySQL’i <strong>büyük bir dijital kütüphane</strong> gibi düşünebiliriz.</p><ul><li><strong>Kitaplar (veriler)</strong> raflarda düzenli bir şekilde saklanır.</li><li><strong>Okuyucular (kullanıcılar)</strong>, kütüphane sistemini (SQL) kullanarak istedikleri kitabı sorgular ve okurlar.</li><li>Kütüphane yöneticisi (RDS), kitapların güvende kalmasını ve hızlı erişilebilir olmasını sağlar.</li></ul><p><strong>RDS MySQL ve LAMP Modeli</strong></p><p>MySQL, <strong>Linux, Apache, MySQL ve PHP/Python/Perl</strong>’den oluşan <strong>LAMP modeli</strong> ile tam uyumlu çalışır.<br> Bu model, <strong>yüksek verimli web çözümleri oluşturmak için yaygın olarak kullanılır</strong>.</p><p>LAMP modeli, <strong>bir mutfağın çalışmasını sağlayan dört temel bileşen</strong> gibi düşünülebilir:</p><ul><li><strong>Linux (İşletim Sistemi)</strong> → Mutfağın temeli</li><li><strong>Apache (Web Sunucusu)</strong> → Yemeklerin servis edildiği tezgah</li><li><strong>MySQL (Veritabanı)</strong> → Malzemelerin saklandığı depo</li><li><strong>PHP/Python/Perl (Programlama Dili)</strong> → Yemeklerin hazırlanmasını sağlayan aşçılar</li></ul><p>LAMP modeli, <strong>dinamik web uygulamalarının güçlü ve verimli çalışmasını sağlar</strong>.</p><p><strong>RDS MySQL’in Avantajları</strong></p><p>Huawei Cloud RDS MySQL, <strong>tam yönetimli bir bulut veritabanı çözümü</strong> sunar.</p><p><strong>Kolay Yönetim</strong></p><ul><li>RDS konsolunda tüm görevleri kod yazmaya gerek kalmadan yönetebilirsiniz.</li><li>Veritabanı kurulumu, bakım ve güncellemeler otomatik olarak gerçekleştirilir.</li></ul><p><strong>Yüksek Kullanılabilirlik (HA — High Availability)</strong></p><ul><li>Cross-AZ HA mimarisi ile saniyeler içinde geçiş desteği.</li><li>Primary (birincil) — Standby (yedek) veri merkezi replikasyonu ile veri kaybı yaşanmaz.</li></ul><p><strong>Otomatik Yedekleme ve Kurtarma</strong></p><ul><li>Otomatik yedekleme mekanizması sayesinde veriler 2 yıl boyunca saklanır.</li><li>Veri kaybı yaşanmaz, gerektiğinde eski verilere geri dönülebilir.</li></ul><p><strong>Yüksek Performans</strong></p><ul><li>Huawei tarafından geliştirilen MySQL çekirdeği (HWSQL), yüksek eşzamanlılık senaryolarında 3 kat daha fazla performans sağlar.</li></ul><h4><strong>RDS MySQL’in Cross-AZ HA (High Availability) Özellikleri</strong></h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/495/1*YgLKWv94keOLOkZPqFjlvA.png" /><figcaption><a href="https://blog.csdn.net/2501_91363073/article/details/146979473">RDS MySQL</a></figcaption></figure><ul><li>Cross-AZ HA, <strong>sistem arızası durumunda otomatik geçiş yaparak hizmet kesintilerini önler</strong>.</li><li>Saniyeler içinde geçiş desteği sağlar.</li><li>Okuma trafiğini optimize etmek için en fazla 5 okuma kopyası (read replica) oluşturabilir.</li><li>Read replicas (okuma kopyaları), yalnızca primary database için oluşturulur.</li><li>Tek başına bir okuma kopyası kullanılamaz, primary veya standby ile çalışmalıdır.</li><li>Okuma/yazma işlemleri için uygulamalar, yeniden yapılandırma gerektirmeden aynı adresi kullanır.</li><li>Okuma replikaları için salt okunur (read-only) izinleri yapılandırılabilir.</li></ul><p>Cross-AZ HA’yı, <strong>bir hastanenin farklı binalarda bulunan acil servisleri</strong> gibi düşünebilirsiniz.</p><ul><li>Bir serviste (Primary Database) yoğunluk veya arıza yaşanırsa, hastalar otomatik olarak <strong>diğer servislere (Read Replicas) yönlendirilir</strong>.</li><li>Hizmet devam eder, sistem kesintiye uğramaz.</li></ul><p><strong>RDS MySQL Kullanım Senaryoları</strong></p><p><strong>1.Veritabanı Geçişi (Migration)</strong></p><p>Farklı cloud servis sağlayıcılarında bulunan MySQL veritabanlarını Huawei Cloud RDS MySQL’e taşıyabilirsiniz.</p><p><strong>2. Start-Up’lar ve Küçük İşletmeler</strong></p><p>Düşük maliyetli olması nedeniyle hızla büyüyen girişimler (start-up’lar) için idealdir.</p><p>Otomatik bakım ve ölçeklenebilirlik avantajları sayesinde yönetim yükünü azaltır.</p><p><strong>3. E-Ticaret ve Oyun İşletmeleri</strong></p><p>Sipariş verileri, müşteri bilgileri ve ödeme işlemlerinin hızlı ve güvenli bir şekilde işlenmesini sağlar.</p><p>Yüksek eşzamanlı işlemler için ölçeklenebilir mimari sunar.</p><p><strong>4. IoT (Nesnelerin İnterneti) İşletmeleri</strong></p><p>IoT cihazlarından gelen büyük veri akışını yönetebilir.</p><p>Gerçek zamanlı analiz ve işlem kapasitesi sunar.</p><h4>🐘RDS PostgreSQL — Huawei Cloud Relational Database Service</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/258/1*cA4mtvod7P91jIvfiB9TLw.png" /><figcaption><strong>RDS PostgreSQL</strong></figcaption></figure><p><strong>PostgreSQL</strong>, veri güvenilirliği, bütünlüğü ve genişletilebilirliği ile öne çıkan <strong>açık kaynaklı bir ilişkisel veritabanıdır (RDBMS)</strong>.</p><p>Huawei Cloud <strong>RDS PostgreSQL</strong>, yüksek erişilebilirlik, gelişmiş güvenlik özellikleri ve geniş eklenti desteğiyle <strong>kurumsal uygulamalar, coğrafi konum sistemleri, finansal analiz ve büyük veri işlemleri</strong> gibi alanlarda güçlü bir çözümdür.</p><p>PostgreSQL’i <strong>modüler ve genişletilebilir bir akıllı bina</strong> gibi düşünebilirsiniz.</p><ul><li><strong>Ana yapı (Veritabanı Motoru)</strong> güçlü ve esnektir.</li><li><strong>Odalar (Tablolar ve Diziler)</strong> farklı veri tiplerini barındırabilir.</li><li><strong>Eklentiler (Extensions)</strong>, yapıyı yeni ihtiyaçlara göre şekillendirebilir.</li></ul><p><strong>RDS PostgreSQL’in Kullanım Alanları</strong></p><ul><li>İnternet ve E-Ticaret Sistemleri</li><li>Coğrafi Konum Tabanlı Uygulamalar</li><li>Finansal Sigorta Sistemleri</li><li>Büyük Veri ve Karmaşık Veri Nesnesi İşleme</li></ul><p><strong>Örnek:</strong></p><p>PostgreSQL, <strong>Google Maps gibi harita tabanlı uygulamalarda sıkça kullanılır</strong>.</p><p>Harita üzerindeki noktaların, yolların ve alanların <strong>hızlı analiz edilmesini sağlar</strong></p><h4>🔥GaussDB — Huawei’nin Dağıtılmış İlişkisel Veritabanı</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/244/1*YFvBUr4hvZVZWlqH7fu6gg.png" /><figcaption><strong>GaussDB</strong></figcaption></figure><p>GaussDB, Huawei tarafından geliştirilen yüksek performanslı, dağıtılmış bir ilişkisel veritabanıdır.<br> Geleneksel merkezi veritabanlarından farklı olarak, yüksek ölçeklenebilirlik, veri bütünlüğü ve sıfır veri kaybı garantisi sunar.</p><p>GaussDB’yi <strong>büyük bir lojistik ağı</strong> gibi düşünebiliriz.</p><ul><li>Merkezî bir depo (geleneksel veritabanı) yerine,</li><li>Şehirler arasında dağıtılmış çok sayıda depo (dağıtılmış veritabanı mimarisi) bulunur.<br> Bu sayede, verilere daha hızlı erişilir ve sistem herhangi bir arıza durumunda kesintiye uğramaz.</li></ul><p><strong>GaussDB’nin Temel Özellikleri</strong></p><p><strong>Şehir İçi AZ’ler Arasında Dağıtım (Zero Data Loss — Sıfır Veri Kaybı)</strong></p><ul><li>Veriler, farklı erişim bölgeleri (AZ — Availability Zone) arasında yedeklenebilir.</li><li>Sistem çökmesi veya donanım hatası gibi durumlarda bile veri kaybı yaşanmaz.</li><li>İş sürekliliği korunur.</li></ul><p><strong>Petabayt Ölçeğinde Depolama &amp; Yüksek Performans</strong></p><ul><li>Dağıtılmış mimarisi sayesinde petabayt seviyesinde veri depolayabilir.</li><li>Her veritabanı bulut sunucusu, 1.000’den fazla düğüm içerebilir.</li></ul><p><strong>Hızlı Dağıtım ve Yönetim</strong></p><ul><li>Veri yedekleme, geri yükleme, izleme ve alarm raporlama gibi işlemler kolayca yönetilebilir.</li></ul><p><strong>GaussDB’nin Avantajları</strong></p><p><strong>Performans (TPC-H Benchmark Test Sonuçları)</strong></p><ul><li>32 düğümlü bir GaussDB kümesi, 15 milyon TPMC (Transactions per Minute) işlem kapasitesine ulaşabilir.</li><li>Geleneksel merkezi veritabanlarına göre çok daha yüksek hızda çalışır.</li></ul><p><strong>Erişebilirlik (Availability &amp; Fault Tolerance)</strong></p><p>Veri tabanı tek bir AZ’de, AZ’ler arasında veya bölgeler arasında dağıtılabilir.</p><p>RPO=0 (Recovery Point Objective), yani veri kaybı olmaz.</p><p>RTO &lt; 10 saniye (Recovery Time Objective), sistem kesintisi olmadan hızlı bir geri dönüş sağlar.</p><p><strong>Ölçeklendirme (Scalability &amp; Distributed Processing)</strong></p><p>GaussDB, dağıtılmış işlemlerle performans darboğazlarını ortadan kaldırır.</p><p>Klasik merkezi veritabanlarına göre çok daha hızlı ölçeklenebilir.</p><p><strong>Güvenlik (Security)</strong></p><p>Erişim kontrolü ve şifreleme kimlik doğrulaması ile veri güvenliği sağlar.</p><p>Veritabanı denetimi, dinamik veri maskeleme ve “Always Encrypted” özellikleri ile hassas verileri korur.</p><p><strong>Güçlü Bilgi İşlem Kapasitesi (High Computing Power)</strong></p><p>6. nesil Intel Core işlemciler ve Kunpeng işlemcilerle optimize edilmiştir.</p><p>Yoğun işlem gücü gerektiren uygulamalar için ideal performans sunar.</p><p><strong>Çevrimiçi Ölçeklendirme (Online Scaling)</strong></p><p>Yeni düğümler sisteme eklendiğinde, otomatik olarak veri dağılımı optimize edilir.</p><p>Bu sayede hizmet kesintisi olmadan ölçeklenebilir.</p><p><strong>Güvenlik ve Güvenilirlik (Fault Tolerance &amp; Service Continuity)</strong></p><p>Servis hataları otomatik olarak algılanır ve düzeltilir.</p><p>Kesintisiz hizmet garantisi sunar.</p><p><strong>Otomatik Paylaşım (Automatic Sharding &amp; GTM Lite Technology)</strong></p><p>GTM Lite teknolojisi, merkezi düğümdeki performans darboğazlarını ortadan kaldırarak işlemlerde güçlü tutarlılık sağlar.</p><h3>Huawei Cloud O&amp;M Hizmetleri ve Konteyner Yönetimi</h3><p>Ağ ve veritabanı hizmetleriyle güçlü bir bulut altyapısının temellerini oluşturduk. Ancak bu altyapının güvenli, kararlı ve sürdürülebilir bir şekilde çalışabilmesi için etkili operasyon ve bakım süreçlerine ihtiyaç duyulur. Bulut ortamlarında yalnızca kaynak sağlamak yeterli değildir; bu kaynakların sürekli olarak izlenmesi, optimize edilmesi ve gerektiğinde müdahale edilmesi büyük önem taşır. Huawei Cloud’un Operasyon ve Bakım (O&amp;M) hizmetleri, sistem yönetimini büyük ölçüde otomatikleştirerek hem güvenilirliği artırır hem de iş yüklerini daha verimli hale getirir. İzleme, güvenlik yönetimi ve performans takibi gibi temel operasyonel süreçler, bu araçlar sayesinde merkezi ve kontrollü bir şekilde yürütülebilir.</p><p>Altyapının istikrarlı çalışması, modern uygulama geliştirme ihtiyaçlarını da doğrudan etkiler. Esneklik, taşınabilirlik ve hızlı dağıtım gibi ihtiyaçlar doğrultusunda, geleneksel mimarilerin yerini konteyner tabanlı çözümler almaktadır. Huawei Cloud’un Kubernetes tabanlı Cloud Container Engine (CCE) hizmeti, uygulamaların dinamik olarak yönetilmesini, otomatik olarak ölçeklenmesini ve hızlı bir şekilde güncellenmesini mümkün kılar. Cloud-Native yaklaşımı sayesinde, mikroservis mimarileriyle geliştirilen uygulamalar çok daha çevik, dayanıklı ve yönetilebilir hale gelir.</p><p>Bu doğrultuda, Huawei Cloud’un sunduğu O&amp;M hizmetlerinin nasıl çalıştığını, sistemlerin güvenli ve verimli bir şekilde nasıl izlenip yönetilebileceğini ve Kubernetes ile konteyner tabanlı modern uygulamaların nasıl dağıtıldığını adım adım inceleyerek; yalnızca bir bulut altyapısı kurmakla kalmayıp, onu uzun vadede sürdürülebilir ve güçlü bir yapıya dönüştürmenin yollarını da keşfetmiş olacağız.</p><h3>🛠️O&amp;M Services — Operasyon ve Bakım Hizmetleri</h3><p>O&amp;M (Operation &amp; Maintenance), BT sistemlerinin kesintisiz çalışmasını sağlamak için operasyonların yönetilmesi ve bakım süreçlerinin yürütülmesini ifade eder.</p><p>Bir bilgi işlem altyapısı (cloud, ağ, sunucular, veritabanları) doğru yönetilmezse, maliyetler artabilir, sistemler kararsız hale gelebilir ve hizmet kalitesi düşebilir.<br> O&amp;M hizmetleri, bu riskleri en aza indirmek ve sistemlerin güvenli, optimize ve verimli çalışmasını sağlamak için kritik bir rol oynar.</p><p>O&amp;M hizmetlerini <strong>uçak bakımı</strong> gibi düşünebiliriz.</p><ul><li>Pilot (BT Yöneticisi), uçağı (Sistemleri) çalıştırır.</li><li>Teknik ekip (O&amp;M ekibi), motorları, yakıt seviyesini ve uçuş sistemlerini düzenli olarak kontrol eder.</li><li>Herhangi bir sorun tespit edilirse, hızlı bir şekilde çözüm üretir ve güvenliği sağlar.</li></ul><p><strong>O&amp;M Hizmetlerinin Önemi</strong></p><p><strong>Sistemlerin Kararlı Çalışmasını Sağlar</strong></p><ul><li>Kritik hizmetlerin kesintiye uğramadan çalışmasını sağlar.</li><li>Hataları ve sistem arızalarını tespit edip önlem alır.</li></ul><p><strong>Verimliliği Artırır ve Maliyetleri Düşürür</strong></p><ul><li>Donanım ve yazılım kaynaklarını verimli bir şekilde kullanarak gereksiz masrafları önler.</li></ul><p><strong>Güvenliği Artırır</strong></p><ul><li>Sistemlerin tehditlere karşı izlenmesini ve korunmasını sağlar.</li></ul><p><strong>Yaşam Döngüsü Yönetimini Optimize Eder</strong></p><ul><li>Sunucular, ağlar ve uygulamalar yaşam döngülerinin her aşamasında sürekli yönetilir ve güncellenir.</li></ul><p>📌<strong>O&amp;M Sınıflandırılması (O&amp;M Türleri)</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*g9iKof-0XOQ3BJe8i8MSFg.png" /><figcaption><strong>O&amp;M Türleri</strong></figcaption></figure><p>BT sistemleri geliştikçe, <strong>O&amp;M hizmetleri de uzmanlaşmıştır</strong>.<br> Huawei Cloud, farklı ihtiyaçlara yönelik <strong>beş temel O&amp;M alanı</strong> sunar:</p><p><strong>Hardware O&amp;M (Donanım Operasyonu ve Bakımı)</strong></p><ul><li>Sunucular, depolama cihazları ve ağ ekipmanlarının bakımını kapsar.</li><li>Arızaların erken tespit edilmesi için donanım izleme sistemleri kullanılır.</li></ul><p><strong>System O&amp;M (İşletim Sistemi Yönetimi ve Bakımı)</strong></p><ul><li>İşletim sistemlerinin (Linux, Windows) güncellenmesi, güvenlik yamalarının uygulanması ve kaynak kullanımının izlenmesini kapsar.</li></ul><p><strong>Database O&amp;M (Veritabanı Yönetimi ve Bakımı)</strong></p><ul><li>Veritabanlarının (RDS, GaussDB, PostgreSQL, MySQL) düzenli olarak yedeklenmesi, optimize edilmesi ve güvenliğinin sağlanmasını içerir.</li><li>Ayrıca performans izleme ve hata tespiti süreçlerini de kapsar.</li></ul><p><strong>Application O&amp;M (Uygulama Yönetimi ve Bakımı)</strong></p><ul><li>Web, mobil ve kurumsal uygulamaların çalışma durumunu izler.</li><li>Uygulamalarda meydana gelen hataları tespit edip düzeltir.</li></ul><p><strong>Network O&amp;M (Ağ Yönetimi ve Bakımı)</strong></p><ul><li>Şirket içi ve bulut ağlarının performansını ve güvenliğini yönetir.</li><li>Ağ trafiği, veri akışı ve güvenlik duvarları sürekli olarak izlenir.</li></ul><h4>🚀Huawei Cloud O&amp;M Servisleri</h4><p>Huawei Cloud, <strong>O&amp;M yönetimini optimize etmek için güçlü araçlar sunar</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/910/1*KjrDRDgEJSyNykeGl082jw.png" /><figcaption><a href="https://blog.csdn.net/2501_91363073/article/details/146979473"><strong>Huawei Cloud O&amp;M Servisleri</strong></a></figcaption></figure><ul><li><strong>CTS</strong>; uyumluluk denetimi ve güvenlik analizi</li><li><strong>Cloud Eye</strong>; gerçek zamanlı izleme (real-time monitoring) ve çoklu bildirim türleri</li><li><strong>LTS</strong>; günlük arama ve istatistik analizi</li></ul><h4>👁️‍🗨️Cloud Eye — Huawei Cloud İzleme (Monitoring) Servisi</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/296/1*A4MnKluQP6ciKjZXsXCedA.png" /><figcaption><strong>Cloud Eye</strong></figcaption></figure><p>Cloud Eye, bulut kaynaklarını gerçek zamanlı olarak izlemek, güvenlik tehditlerini tespit etmek ve sistem performansını optimize etmek için kullanılan çok boyutlu bir izleme hizmetidir.</p><p>Bulut sistemlerinde hata veya performans düşüklüğü yaşanmadan önce önlem almak için izleme yapmak kritik bir gerekliliktir. Cloud Eye, olası riskleri belirleyerek sistem yöneticilerini zamanında bilgilendirir ve kesintisiz hizmet sağlar.</p><p>Cloud Eye’ı <strong>bir fabrikanın üretim bandına yerleştirilen sensörler</strong> gibi düşünebiliriz.</p><ul><li>Makinaların sıcaklığı, enerji tüketimi ve performansı sürekli izlenir.</li><li>Herhangi bir aşırı ısınma veya hata algılandığında, teknisyenler hemen müdahale edebilir.</li></ul><p><strong>Cloud Eye Neden Önemlidir?</strong></p><p><strong>Gerçek Zamanlı İzleme (Real-Time Monitoring):</strong></p><ul><li>Cloud Eye, tüm sistem kaynaklarını sürekli olarak izler ve anlık durum raporları oluşturur.</li></ul><p><strong>Otomatik Bildirim ve Alarm Mekanizması:</strong></p><ul><li>Risk tespit edildiğinde, sistem yöneticilerine anında bildirim gönderir.</li><li>Sorunlara hızlı müdahale edilmesini sağlar.</li></ul><p><strong>Kaynak Verimliliğini Artırır:</strong></p><ul><li>Sistem bileşenlerinin performansını optimize ederek kaynak tüketimini dengeler.</li></ul><p><strong>Güvenlik Risklerini Minimize Eder:</strong></p><ul><li>Potansiyel tehditleri önceden tespit eder ve hizmet kesintilerini önler.</li></ul><p><strong>Cloud Eye’ın Temel Fonksiyonları</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/970/1*kAU8I3w9RtP5hute6PeqWA.png" /><figcaption><strong>Cloud Eye Architecture</strong></figcaption></figure><p>Cloud Eye, izleme ve yönetim süreçlerini <strong>daha verimli hale getiren</strong> çeşitli fonksiyonlar sunar:</p><p><strong>Otomatik İzleme (Automatic Monitoring)</strong></p><p>CPU, bellek, ağ trafiği ve diğer kaynakları sürekli takip eder.</p><p>Kullanıcı müdahalesi olmadan anlık durum raporları oluşturur.</p><p><strong>Gerçek Zamanlı Bildirimler (Real-Time Notifications)</strong></p><p>Sistem yöneticilerine anlık e-posta, SMS veya platform içi bildirim gönderir.</p><p>Sorunlar erken tespit edilerek hızla müdahale edilir.</p><p><strong>Paneller (Dashboards &amp; Panels)</strong></p><p>Sistem yöneticileri için özelleştirilebilir paneller sunar.</p><p>Tüm izleme metrikleri tek bir ekranda görüntülenebilir.</p><p><strong>Kaynak Grupları (Resource Groups)</strong></p><p>Benzer kaynakları tek bir grup altında yönetme imkanı sunar.</p><p>Farklı projelerde kullanılan kaynakları kolayca izlemek için idealdir.</p><p><strong>İzleme Verisinin OBS’ye Aktarılması (Monitoring Data Transfer to OBS)</strong></p><p>Cloud Eye verilerini Huawei Cloud Object Storage Service (OBS)’ye aktararak uzun süreli analiz yapılmasını sağlar.</p><p><strong>Cloud Eye’da İzleme Metrikleri (Monitoring Metrics)</strong></p><p>Metric, belirli bir kaynağın performans durumunu ölçmek için kullanılan niceliksel bir değerdir.</p><ul><li>Örneğin, CPU kullanımı, bellek tüketimi, ağ trafiği gibi sistem kaynaklarının değişimini ölçer.</li><li>Bu göstergeler sayesinde, aracın durumu anlık olarak kontrol edilir.</li></ul><p><strong>Cloud Eye Kullanımı: Huawei Cloud Konsolu Üzerinden İzleme</strong></p><p>Huawei Cloud Eye, sunucu ve sistem izleme süreçlerini kolaylaştırmak için çeşitli özellikler sunar.</p><p><strong>Sunucu İzleme (Server Monitoring)</strong></p><ul><li>ECS (Elastic Cloud Server) ve diğer sistem kaynaklarını anlık olarak takip eder.</li></ul><p><strong>Alarm Oluşturma (Alarm Creation)</strong></p><ul><li>Örneğin, CPU kullanımı %80’i aşarsa bir alarm tetiklenebilir.</li></ul><p><strong>CPU Yük Kontrolü (CPU Load Monitoring)</strong></p><ul><li>Sistem performansının aşırı yük altında olup olmadığını analiz eder.</li></ul><p><strong>Stres Testi için Alarm Bildirimi (Stress Test Alerting)</strong></p><ul><li>Sistem stres testleri sırasında anlık bildirimler sağlar.</li></ul><p><strong>Bildirim Aboneliği Oluşturma (Notification Subscription)</strong></p><ul><li>İzleme verileri hakkında düzenli olarak bilgi almak için bildirim aboneliği oluşturulabilir.</li></ul><h4>📜Log Tank Service (LTS) — Huawei Cloud Günlük Yönetim Hizmeti</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/141/1*VjWrFnmajEavvuW2YGNRAg.png" /><figcaption><strong>Log Tank Service (LTS)</strong></figcaption></figure><p>Log’lar, sistem işlemleri tarafından oluşturulan ve önemli sistem bilgilerini kaydeden dosyalardır.<br> LTS (Log Tank Service), sistem ve uygulama loglarını merkezi bir şekilde toplayarak analiz etmeyi, saklamayı ve sistem performansını optimize etmeyi sağlar.</p><p>LTS, arıza tespiti, güvenlik analizi, O&amp;M süreçleri ve veri odaklı karar alma mekanizmalarında kritik rol oynar.</p><p>LTS’yi <strong>trafik kameraları ve radar sistemleri</strong> gibi düşünebiliriz.</p><ul><li>Trafik akışı sürekli olarak izlenir ve kaydedilir.</li><li>Olası bir kaza veya ihlal anında, sistem kayıtları incelenerek hatalar tespit edilir.</li><li>Bu veriler, gelecekte daha güvenli yollar tasarlamak için kullanılabilir.</li></ul><p><strong>Log Tank Service (LTS) Neden Önemlidir?</strong></p><p><strong>Merkezi Log Yönetimi (Centralized Logging System):</strong></p><ul><li>Tüm log’ları tek bir yerden yönetmeyi sağlar.<strong> (One-Stop Management)</strong></li><li>Farklı sistemlerden gelen log’ları anlık olarak toplar ve analiz eder.</li></ul><p><strong>Hata Tespiti ve O&amp;M Verimliliği:</strong></p><ul><li>Sistem hatalarını erken tespit edip düzeltmeyi sağlar.</li><li>Operasyon ve bakım (O&amp;M) süreçlerini kolaylaştırır.</li></ul><p><strong>Gerçek Zamanlı Log Analizi:</strong></p><ul><li>Canlı olarak logları analiz eder ve sorunları hızlıca belirler.</li></ul><p><strong>Güvenlik ve Uyumluluk:</strong></p><ul><li>Güvenlik olaylarını kaydeder ve anomali tespiti yapar.</li></ul><p><strong>Uygun Maliyetli (Cost-Effective):</strong></p><ul><li>Gereksiz kaynak tüketimini önleyerek operasyon maliyetlerini düşürür.</li></ul><p><strong>Büyük Ölçek ve Yüksek Hız:</strong></p><ul><li>Günde 200 terabayta kadar log işleyebilir.</li><li>Yüksek hızda log analizi yaparak zaman kaybını önler.</li></ul><p><strong>Log Tank Service (LTS) Temel Fonksiyonları</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/961/0*z4wnJD7zwQd4wvkk.png" /><figcaption><strong>Log Tank Service (LTS) Temel Fonksiyonları</strong></figcaption></figure><p>LTS, <strong>sistem izleme ve yönetim süreçlerini kolaylaştıran dört ana fonksiyon sunar</strong>:</p><p><strong>Gerçek Zamanlı Log Toplama (Real-Time Log Collection)</strong></p><p>Sistemler, sunucular, uygulamalar ve bulut servislerinden log’ları anlık olarak toplar.</p><p>Sistem yöneticileri, logları düzenli olarak takip edebilir.</p><p><strong>Log Sorgulama ve Gerçek Zamanlı Analiz (Log Query &amp; Real-Time Analysis)</strong></p><p>Özel sorgular oluşturarak logların içeriğini analiz edebilirsiniz.</p><p>Gerçek zamanlı analizlerle sistem performansını anlık olarak takip edebilirsiniz.</p><p><strong>Log İzleme ve Alarmlar (Log Monitoring &amp; Alarms)</strong></p><p>Belirli sistem olaylarına (örneğin, CPU aşırı yüklenmesi, başarısız giriş denemeleri) bağlı olarak alarm tetiklenebilir.</p><p>Olası bir güvenlik tehdidi veya sistem hatası anında tespit edilerek yöneticilere bildirilir.</p><p><strong>Log Transferi (Log Transfer &amp; Storage)</strong></p><p>Toplanan log’lar, uzun süreli saklama ve analiz için Huawei Cloud OBS’ye (Object Storage Service) aktarılabilir.</p><p>Bu sayede büyük hacimli log verileri sistem performansını etkilemeden yönetilir.</p><p><strong>LTS Kullanımı: Huawei Cloud Konsolunda Sunucu Günlüğü Yönetimi</strong></p><p>Huawei Cloud LTS ile log yönetimi süreçleri kolayca gerçekleştirilebilir.</p><p><strong>ECS için Günlük Grubu Oluşturma (Creating a Log Group for ECS)</strong></p><ul><li>Sunucu günlükleri belirli gruplara ayrılarak yönetilebilir.</li></ul><p><strong>Ana Bilgisayar Yönetiminde AK/SK ile ICTagent’ı Yükleme</strong></p><ul><li>Erişim kontrolleri ve güvenlik protokolleriyle sistem güvenliği sağlanır.</li></ul><p><strong>Log Alımı ve Log İzleme</strong></p><ul><li>Belirli sunucular veya uygulamalar için log kaydı başlatılabilir.</li></ul><p><strong>Log Kaydını Gözlemlemek İçin Temel Komutlar</strong></p><ul><li>CLI veya API aracılığıyla loglar izlenebilir ve analiz edilebilir.</li></ul><h4>🛡️Cloud Trace Service (CTS) — Huawei Cloud Denetim ve İzleme Servisi</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/637/0*m2i2zlLIv6IPKLP3.png" /><figcaption><a href="https://www.huaweicloud.com/intl/tr-tr/product/cts.html"><strong>Cloud Trace Service (CTS)</strong></a></figcaption></figure><p>Cloud Trace Service (CTS), Huawei Cloud üzerindeki kaynak işlemlerini gerçek zamanlı olarak kaydeden bir denetim ve izleme servisidir.</p><p>Sistem yöneticileri, güvenlik analizi yapmak, kaynak değişikliklerini takip etmek, uyumluluk denetimleri gerçekleştirmek ve hata tespiti için CTS’yi kullanabilir.</p><p>CTS’yi <strong>bir havalimanındaki uçuş kayıt sistemi</strong> gibi düşünebiliriz.</p><ul><li>Her uçağın kalkış ve iniş saatleri, uçuş rotası ve yolcu hareketleri detaylı olarak kaydedilir.</li><li>Olası bir sorun durumunda, bu kayıtlar incelenerek olayın kaynağı bulunur.</li><li>Bu sayede güvenlik ve düzen sağlanır.</li></ul><p><strong>CTS’nin Temel Fonksiyonları</strong></p><p><strong>Operasyon İzleme ve Kayıt (Real-Time Operation Logging)</strong></p><p>Bulut kaynakları üzerindeki tüm işlemleri gerçek zamanlı olarak kaydeder.</p><p>Sistem yöneticileri, kullanıcılar veya uygulamalar tarafından gerçekleştirilen tüm hareketleri loglar.</p><p>Manuel bir çabaya gerek kalmadan tam otomatik denetim sağlar.</p><p><strong>Güvenlik Analizi ve Uyumluluk Denetimi (Security &amp; Compliance Auditing)</strong></p><p>Şüpheli hareketleri analiz ederek güvenlik tehditlerini belirler.</p><p>Uyumluluk gereksinimlerine uygunluğu denetler.</p><p><strong>Kaynak Değişikliklerini Takip Etme (Resource Change Tracking)</strong></p><p>Bulut ortamında oluşturulan, değiştirilen veya silinen tüm kaynakları kaydeder.</p><p>Sunucu, veritabanı, güvenlik grupları gibi kritik bileşenlerde yapılan değişiklikleri takip eder.</p><p><strong>Olay Analizi ve Hata Tespiti (Event Analysis &amp; Troubleshooting)</strong></p><p>Sistem hatalarının nedenlerini anlamak için geçmiş işlemleri analiz eder.</p><p>Yönetici hatalarından kaynaklanan olayları tespit ederek hızlı çözüm sağlar.</p><p><strong>İzleme Verilerini OBS’ye Aktarma (Log Transfer to OBS)</strong></p><p>CTS izlerini uzun vadeli saklamak için Huawei Cloud OBS’ye (Object Storage Service) aktarabilir.</p><p>Büyük hacimli log kayıtları sistem performansını etkilemeden yönetilebilir.</p><p><strong>CTS Kullanımı: Huawei Cloud Konsolunda İzleme ve Denetim</strong></p><p>Huawei Cloud CTS, yönetim süreçlerini kolaylaştıran birçok özellik sunar.</p><p><strong>Cloud Console Üzerinden İzleme ve Log Kaydı</strong></p><ul><li>Kaynak hareketleri gerçek zamanlı olarak görüntülenebilir.</li></ul><p><strong>Kaynak Değişikliklerini Takip Etme</strong></p><ul><li>Sistem üzerinde yapılan tüm değişikliklerin detaylı kaydı tutulur.</li></ul><p><strong>Log Analizi ve Güvenlik Raporları</strong></p><ul><li>CTS, potansiyel tehditleri analiz etmek ve uyumluluk denetimleri için raporlar üretmek için kullanılabilir.</li></ul><p><strong>OBS’ye Log Transferi</strong></p><ul><li>Veri kaybı olmadan geçmiş kayıtları saklamak için log’lar OBS’ye yedeklenebilir.</li></ul><h3>🚀Huawei Cloud CCE ve Cloud-Native — Konteyner Yönetimi ve Kubernetes</h3><h4>⚓Kubernetes Nedir?</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*mJcXn9WMIAP2qBAI.png" /><figcaption><a href="https://kubernetes.io/"><strong>Kubernetes</strong></a></figcaption></figure><p>Kubernetes (K8S), Google tarafından geliştirilen açık kaynaklı bir konteyner düzenleme (orchestration) aracıdır.</p><ul><li>Farklı dağıtım ortamlarında (on-premise, cloud, hybrid) konteyner tabanlı uygulamaları yönetmek için kullanılır.</li><li>Otomatik ölçeklenebilirlik, yük dengeleme, hata toleransı ve yüksek erişilebilirlik sağlar.</li></ul><p>Kubernetes’i <strong>bir limanda çalışan otomatik bir vinç sistemi</strong> gibi düşünebiliriz.</p><ul><li><strong>Her bir konteyner (yük), belirli kurallara göre uygun gemiye (sunucuya) yerleştirilir.</strong></li><li><strong>Yükler (uygulamalar) limanda organize bir şekilde yönetilir ve taşınır.</strong></li></ul><p><strong>Neden Kubernetes’e İhtiyaç Duyulur?</strong></p><p>Geleneksel Monolith mimariden Microservices mimariye geçiş nedeniyle konteyner kullanımı arttı ve bunları yönetmek için Kubernetes gibi bir düzenleme aracına ihtiyaç duyuldu.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*aOZnlakN5Xz7fcY_uq3Lsw.png" /><figcaption><a href="https://kubernetes.io/"><strong>Monolith Mimari ve Microservices Mimari</strong></a></figcaption></figure><p><strong>Monolith Mimari</strong></p><ul><li>Tüm uygulamalar tek bir makinede çalışır.</li><li>Eğer sistemde bir hata olursa, tüm uygulama etkilenir.</li><li>Dezavantajı: Büyük ve karmaşık sistemlerde yönetilmesi zordur.</li><li>Avantajı: Daha hızlıdır.</li></ul><p><strong>Microservices Mimari</strong></p><ul><li>Uygulamalar birbirinden bağımsız küçük hizmetlere (services) ayrılır.</li><li>Her servis ayrı konteynerler içinde çalışır.</li><li>Dezavantajı: Daha karmaşıktır.</li><li>Avantajı: High Availability (HA) sağlar, ölçeklenebilirdir.</li></ul><p><strong>Monolith bir otobüs, Microservices ise birçok küçük araç gibidir.</strong></p><ul><li>Otobüs bozulursa tüm yolcular etkilenir.</li><li>Bireysel araçlar bozulursa, diğerleri sorunsuz devam eder.</li></ul><p><strong>Kubernetes’in Sağladığı Avantajlar</strong></p><p>Yüksek Kullanılabilirlik (High Availability)</p><p>Kesinti Yok (No Downtime)</p><p>Otomatik Ölçeklenebilirlik ve Yüksek Performans</p><p>Felaket Kurtarma (Disaster Recovery) — Yedekleme (Backup) ve Geri Yükleme (Restore)</p><h4>🏗️Kubernetes Mimarisi</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_8-DLiXkHNubw3kkSPzS5w.png" /><figcaption><strong>Kubernetes Mimarisi</strong></figcaption></figure><p>Kubernetes kümesi (cluster), <strong>bir ana kontrol düğümü (Control Plane — Master Node) ve işçi düğümlerden (Worker Nodes) oluşur</strong>.</p><p><strong>Control Plane (K8S Master Node) — Yönetim Katmanı</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ZWqGepextE5mUnl5W_raCw.png" /><figcaption><strong>Control Plane (K8S Master Node)</strong></figcaption></figure><p>Kubernetes kümesini yönetir ve kontrol eder.</p><p>Pod’ların (içindeki konteynerleri çalıştıran en küçük birimler) uygun düğümlere yerleşmesini sağlar.</p><p><strong>Ana Bileşenleri:</strong></p><ul><li><strong>API Server:</strong> Kullanıcı ve sistemlerden gelen istekleri yönetir.</li><li><strong>Controller Manager:</strong> Kaynak durumlarını kontrol eder ve otomatik düzeltmeler yapar.</li><li><strong>Scheduler:</strong> Pod’ları uygun Worker Node’lara atar.</li><li><strong>etcd:</strong> Kümedeki tüm verileri key-value şeklinde saklayan dağıtılmış bir veritabanıdır.</li></ul><p><strong>Not!</strong><br><strong>Kubelet</strong> — Master Node ile Worker Node’lar arasında bağlantı kurar.</p><p><strong>Kube-proxy</strong> — Pod’lara IP adresi atar.</p><p><strong>Worker Nodes — İşçi Düğümleri</strong></p><p>Pod’ları çalıştıran düğümlerdir.</p><p>Her düğümde Docker veya containerd çalışır.</p><p>Kubernetes kümesini <strong>bir orkestranın yönetimi gibi düşünebiliriz</strong>.</p><ul><li>Control Plane, orkestra şefi gibi çalışarak tüm müzisyenlerin (Worker Node’ların) uyum içinde performans göstermesini sağlar.</li></ul><h4>🧩Kubernetes Temel Bileşenleri</h4><p><strong>Node &amp; Pod</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*DGYBe5-CWkIb48WajYWpDw.png" /><figcaption><a href="https://kubernetes.io/"><strong>Node &amp; Pod</strong></a></figcaption></figure><p>Pod, Kubernetes’teki en küçük dağıtım birimidir.</p><p>Her pod kendi IP adresini alır ve geçicidir.</p><p><strong>Deployment &amp; StatefulSet</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*x3XeL3FW3UOsOQzh4cR7Lg.png" /><figcaption><strong>Deployment &amp; StatefulSet</strong></figcaption></figure><p>Deployment → Stateless uygulamalar için (durumsuz uygulamalar).</p><p>StatefulSet → Stateful uygulamalar için (veritabanları gibi durumu olan uygulamalar).</p><p>Deployment ile yapacağımız replica işlemleri sırasında master olarak ayarlanan pod çökerse deployment bu pod’u farklı bir isim ile yeniden oluşturur. Worker pod’lar bu yeni master pod’un ismini bilmediği için replica işlemine devam edemiyor.</p><p>StatefulSet ise yeni oluşturulan pod’un ismi eskisi ile aynıdır. Replica işlemlerine devam edebilir.</p><ul><li><strong>Deployment → Günübirlik çalışan bir ofis (geçici).</strong></li><li><strong>StatefulSet → Uzun vadeli çalışan bir şirket (kalıcı).</strong></li></ul><p><strong>Services</strong></p><p>Pod’lar arasında iletişimi sağlar ve dış dünyaya açar.</p><p>Kalıcı bir IP adresi vardır.</p><p><strong>3 farklı türde çalışabilir:</strong></p><ul><li><strong>NodePort:</strong> Dış dünyadan erişim sağlar.</li><li><strong>LoadBalancer:</strong> Yük dengeleme yapar.</li><li><strong>ClusterIP:</strong> Pod’ların kendi aralarında iletişim kurmasını sağlar.</li></ul><p><strong>ConfigMap &amp; Secret</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*jY4Br4smel-5xjicGtTUeQ.png" /><figcaption><strong>ConfigMap &amp; Secret</strong></figcaption></figure><p>ConfigMap: Hassas olmayan bilgileri saklar (örneğin, konfigürasyon dosyaları).</p><p>Secret: Hassas bilgileri (şifreler, API anahtarları) saklar. Secretdaki tüm veriler base64 ile kodlanır.</p><ul><li><strong>ConfigMap → Şirket içi çalışma rehberi.</strong></li><li><strong>Secret → Şirket kasasındaki gizli belgeler.</strong></li></ul><p><strong>Volume</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*-V8V8YjNCnPRQpGVp4Z7Tw.png" /><figcaption><strong>Volume</strong></figcaption></figure><p>Pod’ların veri saklamak için kullandığı alanları ifade eder.</p><p>Yerel (Local) veya uzak (Remote) olabilir.</p><p>Yerel (local) olduğu zaman makinede depolama</p><p>Remote olduğu zaman K8S cluster dışından bağladığımız depolama.</p><h4>☁️Huawei Cloud — Cloud-Native Servisleri</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*1XT6WJdi_a2iRHFIfrXxfA.png" /><figcaption><strong>Huawei Cloud — Cloud-Native Servisleri</strong></figcaption></figure><p>Huawei Cloud, <strong>Kubernetes ve bulut yerel (cloud-native) çözümlerini destekleyen birçok servis sunar</strong>.</p><p><strong>Container Services</strong></p><ul><li><strong>CCE (Cloud Container Engine)</strong> — Yönetilen Kubernetes servisi.</li><li><strong>SWR (SoftWare Repository for Containers)</strong> — Konteyner imajlarını saklar.</li><li><strong>CCI (Cloud Container Instance)</strong> — Sunucusuz konteyner hizmeti.</li></ul><p><strong>Serverless Computing</strong></p><ul><li><strong>FGS (FunctionGraph Service)</strong> — Serverless (sunucusuz) işlev çalıştırma hizmeti.</li><li><strong>APIG (API Gateway)</strong> — API yönetimi ve güvenliği sağlar.</li></ul><p><strong>Microservices Yönetimi</strong></p><ul><li><strong>ServiceStage</strong> — Mikroservis yönetim platformu.</li><li><strong>CSE (Cloud Service Engine)</strong> — Mikroservis entegrasyonu.</li><li><strong>Redis (DCS), Kafka, RabbitMQ</strong> — Dağıtık veri yönetimi için kullanılır.</li></ul><p><strong>DevOps Çözümleri</strong></p><ul><li><strong>CodeArts</strong> — Yazılım geliştirme ve CI/CD süreçlerini yönetmek için kullanılır.</li></ul><h4>🎯Uygulamalı Ödev</h4><p>Huawei Cloud ücretsiz hesabınızla <a href="https://lab.huaweicloud.com/intl/en-us/experiment-list?ticket=ST-846017-pQFesYspXmfUzxGaxTHQsQGd-sso"><strong>Koolabs</strong></a> üzerinden <strong>Deploying Enterprise Web</strong> laboratuvar çalışmasını yaparak öğrendiklerinizi pekiştirebilir ve uygulayabilirsiniz. Ayrıca bu laboratuvar çalışması sınav için benzer bir çalışmadır.</p><h3>Neler Öğrendik?</h3><p>Bu hafta, <strong>Huawei Cloud’un Operasyon &amp; Bakım (O&amp;M) hizmetleri ve Cloud Native teknolojileri</strong> hakkında derinlemesine bilgiler edindik.</p><p><strong>Huawei Cloud’un ağ (network) ve veritabanı (database) hizmetlerine</strong> derinlemesine bir bakış attık.</p><p>✅ O&amp;M hizmetlerinin BT sistemlerinin kesintisiz çalışması ve güvenliği açısından neden kritik olduğunu öğrendik.<br>✅ Cloud Eye, LTS ve CTS gibi güçlü izleme ve log yönetimi araçlarını keşfettik.<br>✅ Cloud Container Engine (CCE) ile Kubernetes’in nasıl çalıştığını ve konteyner yönetiminin avantajlarını inceledik.<br>✅ Microservices mimarisi, container yönetimi ve serverless çözümler gibi Cloud-Native yaklaşımları öğrendik.</p><p>✅ Virtual Private Cloud (VPC), Elastic Load Balancer (ELB), Virtual Private Network (VPN) ve NAT Gateway gibi ağ hizmetlerinin bulut altyapısındaki kritik rolünü öğrendik.<br>✅ İlişkisel (SQL) ve ilişkisel olmayan (NoSQL) veritabanları arasındaki farkları keşfettik.<br>✅ Huawei Cloud’un sunduğu RDS (MySQL, PostgreSQL) ve NoSQL çözümlerini inceledik.<br>✅ GaussDB’nin sunduğu dağıtılmış veritabanı yapısının avantajlarını ve kullanım senaryolarını öğrendik.</p><h3>Referanslar</h3><ul><li><a href="https://tudip.com/blog-post/introduction-of-virtual-private-cloud-vpc/">Blog: Introduction of Virtual Private Cloud (VPC) | Tudip</a></li><li><a href="https://cloud.tencent.com/developer/article/1840314">快速搭建PGSQL for Serverless-腾讯云开发者社区-腾讯云</a></li><li><a href="https://medium.com/huawei-developers/vpc-cheatsheet-how-to-create-virtual-private-cloud-and-related-services-on-huawei-cloud-9c5dd2fdb8d3">☁️VPC-Cheatsheet / How to Create Virtual Private Cloud and Related Services on HUAWEI CLOUD</a></li><li><a href="https://support.huaweicloud.com/eu/function-vpc/index.html">Function Overview_Virtual Private Cloud-Huawei Cloud</a></li><li><a href="https://support.huaweicloud.com/intl/en-us/admin-vpn/vpn_admin_0016.html">Doc-detail-HUAWEI CLOUD</a></li></ul><iframe src="https://drive.google.com/viewerng/viewer?url=https%3A//support.huaweicloud.com/intl/en-us/tr-central-201-usermanual-elb/Elastic%2520Load%2520Balance%2520usermanual%2520VDF-pdf.pdf&amp;embedded=true" width="600" height="780" frameborder="0" scrolling="no"><a href="https://medium.com/media/9c2b8b03a0867621ec887a2221bf914f/href">https://medium.com/media/9c2b8b03a0867621ec887a2221bf914f/href</a></iframe><iframe src="https://drive.google.com/viewerng/viewer?url=https%3A//support.huaweicloud.com/intl/en-us/ae-ad-1-usermanual-vpn/vpn-ae-ad-1-usermanual.pdf&amp;embedded=true" width="600" height="780" frameborder="0" scrolling="no"><a href="https://medium.com/media/3f3edbe216d51b25042996b2a1690d91/href">https://medium.com/media/3f3edbe216d51b25042996b2a1690d91/href</a></iframe><p><a href="https://forum.huawei.com/enterprise/intl/fr/thread/Services-de-mise-en-r%C3%A9seau-de-Huawei-CLOUD-Tout-ce-que-vous-devez-savoir-Partie-1/667494551230758912?blogId=667494551230758912">https://forum.huawei.com/enterprise/intl/fr/thread/Services-de-mise-en-r%C3%A9seau-de-Huawei-CLOUD-Tout-ce-que-vous-devez-savoir-Partie-1/667494551230758912?blogId=667494551230758912</a></p><p><a href="https://blog.csdn.net/2501_91363073/article/details/146979473">https://blog.csdn.net/2501_91363073/article/details/146979473</a></p><p><a href="https://kubernetes.io/">Production-Grade Container Orchestration</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c51e2e206129" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/hccda-tech-essentials-sertifikas%C4%B1-haz%C4%B1rl%C4%B1k-ve-e%C4%9Fitim-rehberi-b%C3%B6l%C3%BCm-2-c51e2e206129">HCCDA Tech Essentials Sertifikası Hazırlık ve Eğitim Rehberi — Bölüm 2</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[☁️Huawei Cloud FunctionGraph Kullanarak API’den Kafka’ya Sunucusuz Veri Akışı]]></title>
            <link>https://medium.com/huawei-developers-tr/%EF%B8%8Fhuawei-cloud-functiongraph-kullanarak-apiden-kafka-ya-sunucusuz-veri-ak%C4%B1%C5%9F%C4%B1-3feb8c1d75a2?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/3feb8c1d75a2</guid>
            <dc:creator><![CDATA[Ertugrul Basar]]></dc:creator>
            <pubDate>Tue, 17 Jun 2025 10:52:50 GMT</pubDate>
            <atom:updated>2025-06-17T10:52:50.446Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*5BFg2k6pKkNXbqLucbuLiA.jpeg" /><figcaption>API — FG — Kafka</figcaption></figure><h3>Giriş</h3><p>Herkese merhaba, bugünkü yazımızda Huawei Cloud FunctionGraph servisinin bir özelliği olan flow’a (akış) odaklanacağız. Sunucusuz (serverless) fonksiyonların nasıl oluşturulacağını ve bu fonksiyonların FunctionGraph ile nasıl orkestre edileceğini adım adım anlatacağım. Örnek senaryomuzda, dış bir API üzerinden döviz kuru verilerini alıp Huawei Cloud üzerinde barındırılan bir Kafka sunucusuna göndereceğiz. İster FunctionGraph’a yeni başlıyor olun, ister bulut tabanlı iş akışları konusundaki bilginizi derinleştirmek isteyin; bu rehber, hızlı ve verimli bir başlangıç yapmanız için size pratik bilgiler sunacak.</p><p>Başlamadan önce, FunctionGraph ve DMS for Kafka servislerine kısaca göz atmak istiyorum.</p><p><strong>FunctionGraph: </strong>FunctionGraph, Huawei Cloud’un Function-as-a-Service (FaaS) platformudur. Sunucu sağlama veya yönetme ihtiyacı olmadan kod çalıştırmanıza olanak tanır. Yapmanız gereken tek şey fonksiyon kodunuzu yüklemek, tetikleyiciyi tanımlamak ve gerisini FunctionGraph’in yürütmesine bırakmaktır. Birden fazla programlama dilini destekler ve diğer Huawei Cloud servisleriyle kolayca entegre çalışır. Bu özellikleriyle, olay tabanlı ve sunucusuz uygulamalar geliştirmek için ideal bir çözümdür.</p><p><strong>DMS for Kafka: </strong>DMS (Distributed Message Service) for Kafka, Apache Kafka tabanlı, tamamen yönetilen ve yüksek performanslı bir mesajlaşma servisidir. Gerçek zamanlı veri akışı sağlar ve veri üreticileri ile tüketicileri arasında gevşek bağlı (decoupled) bir yapı kurulmasına olanak tanır. DMS for Kafka sayesinde, altyapı kurulumunu veya bakımını dert etmeden güvenilir, ölçeklenebilir ve verimli veri işleme hatları oluşturabilirsiniz.</p><h3>Demo</h3><p><strong>Adım 1: Kafka Sunucusu Oluşturma</strong></p><p>Daha önce de belirttiğimiz gibi, fonksiyon akışı bir API aracılığıyla döviz kuru verilerini alacak ve bu verileri Kafka’ya gönderecek. Bu senaryoyu gerçekleştirebilmek için öncelikle bir Kafka sunucusuna ihtiyacımız var.</p><p>DMS for Kafka sayfasına gittikten sonra, <strong>“Kafka Sunucusu Satın Al”</strong> seçeneğini tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*8HrRU7Tbllj80V3c6qGHNQ.png" /><figcaption>Kafka Konsolu</figcaption></figure><p>Sonraki adımda, aşağıdaki özelliklere sahip bir sunucu satın alacağım.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*9Y-IO6L40vgXOKv84JX_JQ.png" /><figcaption>Kafka Sunucu Spesifikasyonları</figcaption></figure><p>Kafka tarafında yapılandırmamız gereken son şey ise bir konudur (topic). Ben, <strong>“exchange-rates”</strong> adında bir konu oluşturacağım.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*9Ggl_rPkq1YZaN0wl074jQ.png" /><figcaption>Kafka Konu Oluşturma</figcaption></figure><p><strong>Adım 2: FunctionGraph Üzerinde Fonksiyon Oluşturma</strong></p><p>Kafka sunucusunu oluşturduktan sonra, FunctionGraph servisinde iki fonksiyon yaratma zamanı geldi — biri veriyi almak için, diğeri ise veriyi Kafka’ya göndermek için olacak.</p><p>İlk olarak, döviz kuru verilerini alacak fonksiyonu oluşturarak başlayalım.</p><p>FunctionGraph konsoluna girdikten sonra, <strong>“Fonksiyon Oluştur”</strong> butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*7-Z-uUNIfoDJi3mOOz62hw.png" /><figcaption>FunctionGraph Konsolu</figcaption></figure><p>Sonraki adımda, fonksiyon için bir isim belirleyeceğim, gerekliyse bir yetki ajansı (agency) seçeceğim ve çalışma zamanı ortamı olarak Python 3.10’u tercih edeceğim.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*nQtygc0iBhB3GS_wUXm-XA.png" /><figcaption>Fonksiyon Oluşturma</figcaption></figure><p>Şimdi kodu konsola yapıştıracağım, bir test çalıştırıp çıktıyı inceleyeceğim. İşlem başarılı olursa, döviz kuru verilerini Kafka’ya gönderecek ikinci fonksiyona geçebiliriz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*maYlUqSTtB2gJ4XKHE9KAg.png" /><figcaption>Fonksiyon Testi</figcaption></figure><p>Fonksiyonda kullanmış olduğum kod:</p><pre>import json<br>import datetime<br>import requests<br><br>def handler(event, context):<br>    try:<br>        response = requests.get(&quot;https://openexchangerates.org/api/latest.json?app_id=d8f8d555438f4abd898c242ae0f4a0180&quot;)<br>        data = response.json()<br><br>        return {<br>            &quot;base_currency&quot;: &quot;USD&quot;,<br>            &quot;timestamp&quot;: datetime.datetime.utcnow().isoformat() + &quot;Z&quot;,<br>            &quot;rates&quot;: data[&quot;rates&quot;]<br>        }<br><br>    except Exception as e:<br>        return {<br>            &quot;error&quot;: f&quot;Failed to fetch exchange rates: {str(e)}&quot;<br>        }</pre><p>İkinci fonksiyonun yapılandırması da benzer olacak. Buna ek olarak, FunctionGraph’in VPC ve Kafka kaynaklarına erişimini sağlayacak bir yetki ajansı (agency) seçeceğim.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*vo0unwlbywIqdn4ulQfQSg.png" /><figcaption>Fonksiyon Oluşturma</figcaption></figure><p>Sonraki adımda, fonksiyonu test etmeden önce Kafka modülünü bağımlılık olarak eklemem gerekiyor çünkü FunctionGraph altyapı sunucularında bu modül varsayılan olarak bulunmuyor. (FunctionGraph’a bağımlılık nasıl eklenir, öğrenmek için bu bağlantıya bakabilirsiniz.)</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*uvj_-ZIqHlQUrSJRPf3p4A.png" /><figcaption>Fonksiyon Bağımlılığı Ekleme</figcaption></figure><p>Ayrıca, <strong>Configurations &gt; Network</strong> bölümünde <strong>“VPC Access”</strong> seçeneğini etkinleştirecek ve Kafka’nın barındığı VPC ile alt ağı (subnet) seçeceğim.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*TKSfrjdXZvix5ULytOh8-A.png" /><figcaption>Fonksiyon Konfigürasyonları</figcaption></figure><p>Son olarak, ikinci fonksiyonu test edebiliriz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*_UWAP4OVuiX0F_b_uT2C-g.png" /><figcaption>Fonksiyon Testi</figcaption></figure><p>Fonksiyonda kullanmış olduğum kod:</p><pre>import json<br>import os<br>from kafka import KafkaProducer<br><br># Kafka ayarları - ortam değişkenleri olarak girilmesi önerilir<br>KAFKA_BROKER = &quot;192.168.0.212:9092&quot; <br>KAFKA_TOPIC = &quot;exchange-rates&quot;<br><br># Kafka producer oluşturuluyor<br>producer = KafkaProducer(<br>    bootstrap_servers=KAFKA_BROKER,<br>    value_serializer=lambda v: json.dumps(v).encode(&quot;utf-8&quot;)<br>)<br><br>def handler(event, context):<br>    try:<br>        print(&quot;Gönderilen mesaj:&quot;, event)<br>        # Gelen veri filtrelenip Kafka&#39;ya gönderiliyor<br>        rates_only = event.get(&quot;event&quot;, {}).get(&quot;rates&quot;, {})<br>        producer.send(KAFKA_TOPIC, value=rates_only)<br>        producer.flush()<br>        return {<br>            &quot;status&quot;: &quot;success&quot;,<br>            &quot;message&quot;: &quot;Exchange rates published to Kafka.&quot;<br>        }<br>    except Exception as e:<br>        return {<br>            &quot;status&quot;: &quot;error&quot;,<br>            &quot;message&quot;: str(e)<br>        }</pre><p><strong>Adım 3: Fonksiyon Akışını Oluşturma</strong></p><p>Akış için gerekli iki fonksiyonu oluşturduk, şimdi sıra fonksiyon akışını kendisini kurmaya geldi.</p><p>FunctionGraph konsolunda <strong>Flows</strong> (Akışlar) bölümüne gidin ve <strong>Standard Flow</strong> (Standart Akış) oluşturun.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*7uWmYasucmjjtLH4qmAmBA.png" /><figcaption>Fonksiyon Akış Konsolu</figcaption></figure><p>Akış mimarisi yapılandırıldıktan sonra, tetikleyiciyle başlayarak adımları benim yaptığım gibi ayarlamaya devam edin. Bu örnekte, tetikleyici türü olarak <strong>“Timer”</strong> (Zamanlayıcı) seçip, cron ifadesi olarak da 0 0/1 * * * ? kullanacağım.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*u6JttSLrcqVWDrwVQra1hQ.png" /><figcaption>Fonksiyon Akış Adımları</figcaption></figure><p>Sonraki adımda, veriyi alan (fetch) fonksiyonu seçin ve aşağıdaki yapılandırmayı uygulayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*rLk-orpZPSucg1oAbsQcAg.png" /><figcaption>Fonksiyon Akış Adımları</figcaption></figure><p>Yayınlama (publish) fonksiyonuna da aynı yapılandırmaları uygulayın. Bu fonksiyon, fetch fonksiyonunun çıktısını temsil eden bir nesne olan <strong>event</strong> adlı bir parametre alacak.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*9fPw5LGB0dwaZQjfikXulA.png" /><figcaption>Fonksiyon Akış Adımları</figcaption></figure><p>Son olarak, akışı kaydedebiliriz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*HLeI8k2ljt29cWXkbfqi8w.png" /><figcaption>Fonksiyon Akış Kaydetme</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*Yu7i2zusdxUqnaPJ0mrIJg.png" /><figcaption>Fonksiyon Akış Kaydetme</figcaption></figure><p>Akışı kaydettikten sonra, bu akış her dakika otomatik olarak çalışacaktır. Ayrıca, her iki fonksiyonun giriş ve çıkış verileriyle birlikte çalıştırma geçmişini de görüntüleyebilirsiniz.</p><p>Aşağıdaki ekran görüntüsünde görebileceğiniz gibi, akış başarıyla çalışıyor.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*zuocIgCJcwcJa6-TFmQ3BQ.png" /><figcaption>Fonksiyon Akış Çalıştırma Sonuçları</figcaption></figure><p>Kontrol etmemiz gereken son nokta Kafka tarafı. Sunucu sayfasındaki <strong>“Message Query”</strong> (Mesaj Sorgulama) bölümüne gidin ve mesajlardan birinin içeriğine bakın. Döviz kuru mesajının, mesaj gövdesinde doğru şekilde göründüğünü net bir şekilde görebiliriz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*vTexbm13B5edweJxMdydsQ.png" /><figcaption>Mesaj Kuyruğu Örnek Mesaj</figcaption></figure><h3>Sonuç</h3><p>Bu rehberi takip ederek, Huawei Cloud üzerinde bir Kafka sunucusu kurduk, FunctionGraph ile döviz kuru verilerini almak ve yayınlamak için sunucusuz fonksiyonlar oluşturduk ve dakikada bir çalışan otomatik bir akış inşa ettik. Bu örnek, bulut tabanlı sunucusuz fonksiyonların güçlü ve esnek yapısını, Kafka gibi sağlam bir mesaj akış platformuyla birleştirmenin avantajlarını göstermektedir. Bu temel üzerinde, farklı gerçek zamanlı veri kaynaklarını işlemek, sorunsuz ölçeklendirmek ve uygulamanızın ihtiyaçlarına uygun şekilde diğer servislerle entegre olmak için çözümlerinizi genişletebilirsiniz. Sizleri bu tür olay tetiklemeli mimarileri daha fazla keşfetmeye ve projelerinizi bu yaklaşımlarla güçlendirmeye teşvik ediyorum.</p><h3>Referanslar</h3><p><a href="https://support.huaweicloud.com/intl/en-us/usermanual-functiongraph/functiongraph_01_0309.html">Doc-detail-HUAWEI CLOUD</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=3feb8c1d75a2" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/%EF%B8%8Fhuawei-cloud-functiongraph-kullanarak-apiden-kafka-ya-sunucusuz-veri-ak%C4%B1%C5%9F%C4%B1-3feb8c1d75a2">☁️Huawei Cloud FunctionGraph Kullanarak API’den Kafka’ya Sunucusuz Veri Akışı</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[HCCDA Tech Essentials Sertifikası Hazırlık ve Eğitim Rehberi — Bölüm 1]]></title>
            <link>https://medium.com/huawei-developers-tr/hccda-tech-essentials-sertifikas%C4%B1-haz%C4%B1rl%C4%B1k-ve-e%C4%9Fitim-rehberi-b%C3%B6l%C3%BCm-1-232ce82b82b1?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/232ce82b82b1</guid>
            <category><![CDATA[cloud-computing]]></category>
            <category><![CDATA[techessentials]]></category>
            <category><![CDATA[huawei-cloud]]></category>
            <category><![CDATA[huawei]]></category>
            <dc:creator><![CDATA[Enes Cıkcık]]></dc:creator>
            <pubDate>Mon, 16 Jun 2025 12:09:53 GMT</pubDate>
            <atom:updated>2025-06-16T12:09:53.839Z</atom:updated>
            <content:encoded><![CDATA[<h3>HCCDA Tech Essentials Sertifikası Hazırlık ve Eğitim Rehberi — Bölüm 1</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*JM-sYe_ZcbYsnFUeL8QWdg.png" /><figcaption>“This illustration was AI-generated.”</figcaption></figure><h3>GİRİŞ 🚀</h3><p>Bu yazı serisi, <strong>HCCDA — Tech Essentials Sertifikası</strong> sınavına hazırlanacak öğrenciler için rehber niteliğinde hazırlanmıştır. İçerik; <strong>Cloud Hızlandırma Programı</strong>, <strong>HCCDA — Tech Essentials eğitim dokümanları</strong> ve sınavda başarı göstermiş öğrencilerin gerçek deneyimlerinden yararlanılarak oluşturulmuştur.</p><p>Serinin ilk bölümünde, bulut bilişimin temel kavramlarını ve Huawei Cloud ekosisteminin sunduğu hizmetleri adım adım ele alıyoruz. Hem sınava hazırlanmak hem de bulut dünyasında sağlam bir temel atmak için hazırsanız, başlayalım! ☁️</p><p>Bulut teknolojileri artık modern yazılım geliştirmenin vazgeçilmez bir parçası. Huawei Cloud ekosistemi de bu alanda sunduğu çözümlerle öne çıkıyor. Huawei Cloud’un temel hizmetlerini öğrenmek, kendinizi bu alanda bir geliştirici olarak sertifikalandırmak ve küresel geçerliliğe sahip bir belgeye sahip olmak istiyorsanız, HCCDA — Tech Essentials Sertifikasyonu tam size göre.</p><h3>Bölüm 1: Bulut Bilişim ve Huawei Bulut Ekosistemine Giriş</h3><p><strong>Merhaba Teknoloji Tutkunları! 🚀</strong></p><p>Bulut bilişim, zamanımızın en güçlü ve en hızlı gelişen teknolojilerinden biri haline geldi. Peki, bulut bilişim tam olarak nedir ve neden bu kadar önemlidir? Huawei Cloud tarafından sunulan hizmetler bireyler ve büyük ölçekli işletmeler için hangi avantajları sağlar?</p><p>Bulut bilişimin temel kavramlarını ele alacağız, Huawei Cloud ekosistemini tanıtacağız ve buluttaki hesaplama ve depolama hizmetlerini inceleyeceğiz. Bu süreçte adım adım ilerleyerek Huawei Cloud Tech Essential sınavına hazırlanacağız. Hazırsanız, bulut bilişim dünyasına ilk adımı atalım! 🌍☁️</p><h4>🌍Bulut Bilişim Nedir?</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/750/0*EVm-_3Iz-CwY706e" /><figcaption><a href="https://inegolteknikservis.com/blog/bulut-teknolojisi">Cloud Computing</a></figcaption></figure><p>Bulut bilişim, depolama, sunucular, veritabanları, ağlar, yazılımlar ve analitik hizmetler gibi bilişim kaynaklarının internet üzerinden sağlanmasıdır.</p><h4>💡Bulut Bilişimin Faydaları</h4><p>Düşük Maliyet: Fiziksel donanıma yapılan yatırım azalır.<br>Hızlı Kaynak Yönetimi: Gerekli kaynaklar hızlı bir şekilde oluşturulabilir veya silinebilir.</p><p>Kolay Yönetim: Kullanıcı dostu arayüzlerle sistem ve kaynaklar kolayca yönetilebilir.<br>Yüksek Kapasite: Yetersiz kaynak sorunu yoktur; kapasite ihtiyaç duyulduğunda otomatik olarak artırılır veya azaltılır.</p><p>Esneklik: Coğrafi sınırlar olmaksızın farklı bölgelerde operasyonlar gerçekleştirilebilir.<br>📌Örneğin; e-ticaret siteleri, bulut bilişim sayesinde yoğun kampanya dönemlerinde ihtiyaç duydukları kapasiteyi otomatik olarak artırarak müşteri yoğunluğunu kolayca yönetebilirler.</p><h3>☁️Huawei Cloud nedir?</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/920/0*MJcPUcEH7VKTU4WW.jpg" /><figcaption><a href="https://egirisim.com/2023/07/12/huaweiin-ilk-yerel-bulut-servisi-huawei-cloud-bugun-tanitildi/"><strong>Huawei Cloud</strong></a></figcaption></figure><p>Huawei Cloud, 30 yılı aşkın ICT deneyiminden yararlanan ve çok sayıda dijital dönüşüm projesiyle desteklenen Huawei’nin bulut bilişim platformudur. Piyasadaki en kapsamlı ve uygun maliyetli bulut hizmeti portföylerinden birini sunar.</p><h4>Huawei Cloud’un Genel Özellikleri</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*NqmEvikwUINB7l_fiTaYjA.png" /><figcaption><a href="https://developer.huawei.com/consumer/cn/forum/topic/0209124726043116002"><strong>Huawei Cloud Services</strong></a></figcaption></figure><ul><li>200&#39;den fazla bulut hizmeti<br>190&#39;dan fazla genel ve endüstri çözümü<br>30 farklı bölge (Bölgeler), 85 kullanılabilirlik alanı (AZ), dünya çapında 2500&#39;den fazla CDN noktası<br>Modüler T3+ standart veri merkezleri<br>7000&#39;den fazla iş ortağı, 3500&#39;den fazla kullanıcı ve geliştirici, 600&#39;den fazla e-devlet ve 200&#39;den fazla finans sektörü müşterisi</li></ul><h4>🗺️Huawei Bulut Fiziksel Altyapısı ve Kavramları</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*RWZxTt3ZEOrgKMd9OX402Q.png" /><figcaption><strong>Huawei Cloud Fiziksel Altyapı Örneği</strong></figcaption></figure><p><strong>Region (Bölge)</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/696/1*7lvfJ6kyWIvO9qTKoOh1Lg.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/productdesc-vpc/overview_region.html"><strong>Region</strong></a></figcaption></figure><p>Bir bölge, coğrafi olarak ayrılmış ve ağ gecikmesini en aza indirecek şekilde konumlandırılmış veri merkezleri grubudur. Bir bölgedeki ağ gecikmesi genelde 1–10 ms arasındadır. Örneğin; Singapur, Bangkok ve Johannesburg farklı bölgelerdir.</p><p>Bir region birden fazla AZ içermektedir</p><p><strong>Availability Zone (Kullanılabilirlik Alanı — AZ)</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/537/1*uvGFOU49LAnQq33NLGBt_w.png" /><figcaption><a href="https://support.huaweicloud.com/intl/en-us/productdesc-vpc/overview_region.html"><strong>Availability Zone (AZ)</strong></a></figcaption></figure><p><strong>AZ</strong>’ler, bir bölge içinde fiziksel olarak izole edilmiş alanlardır ve her biri bağımsız güç kaynağı, yangın söndürme sistemi ve soğutma sistemine sahiptir. Bir bölgede en az 1, en fazla 6 AZ bulunabilir. Bir bölgedeki AZ’ler birbirinden izole edilmiş olsa da iletişim sağlayabilirler. AZ’ler arasındaki ağ gecikmesi genellikle 2 ms’den azdır.</p><p>Bir AZ birden fazla veri merkezi içerebilmektedir</p><p>Örneğin; Bangkok bölgesi içinde AZ1, AZ2 ve AZ3 şeklinde birden fazla kullanılabilirlik alanı bulunabilir.</p><p><strong>Veri Merkezi (Data Center — DC)</strong></p><p><strong>Veri merkezleri (DC)</strong>, fiziksel olarak bulunan, sunucu ve depolama donanımlarının barındırıldığı tesislerdir. Bir veri merkezi, bir veya daha fazla Layer-2 ağı içerir. DC içindeki katman-2 ağ gecikmesi AZ içindeki ile aynıdır.</p><p><strong>Teslimat Noktaları (Point of Delivery — POD)</strong></p><p><strong>Teslimat noktaları (POD)</strong>, belirli bir hizmeti sunmak için gerekli küçük kaynak gruplarıdır. Bir POD katman-2 ağına dağıtıldığında ağ gecikmesi AZ içindeki gecikme ile aynıdır.</p><p><strong>VPC (Virtual Private Cloud)</strong></p><p><strong>VPC</strong>’ler, kullanıcıların ağlarını diğer kullanıcılardan izole etmesini sağlayan özel bulut ağlarıdır. Bir VPC içindeki ağ gecikmesi, AZ içindeki gecikme ile aynıdır.</p><h4>🛠️Bulut Mimarisi Tasarım Prensipleri</h4><p>Huawei Cloud mimarisinin temel prensipleri şunlardır:</p><ul><li><strong>Güvenlik:</strong> Ağ, veri ve uç nokta güvenliği</li><li><strong>Yüksek Erişilebilirlik (HA) ve Felaket Kurtarma (DR):</strong> Tek AZ üzerinden erişilebilirlik, Cross-AZ (bölgeler arası) felaket kurtarma çözümleri</li><li><strong>Maliyet Optimizasyonu:</strong> Kaynakların maliyetini en aza indirecek şekilde kullanılması</li><li><strong>Performans Yönetimi:</strong> Performans takibi ve optimizasyonu</li><li><strong>Ölçeklenebilirlik:</strong> Yatay ve dikey olarak kapasiteyi artırabilme esnekliği</li></ul><h4>⚙️ Bulut Servis Modelleri</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*WXug_a8FI3xSzRjO.jpg" /><figcaption><strong>Bulut Servis Modelleri</strong></figcaption></figure><p>Bulut servis modelleri sürekli gelişmektedir. Genel olarak <strong>üç ana model</strong> bulunmaktadır:</p><p><strong>Infrastructure as a Service (IaaS) — Hizmet Olarak Altyapı</strong></p><ul><li><strong>Kimler İçin?</strong> Kurumsal müşteriler ve bazı bireysel kullanıcılar</li><li><strong>Ne Sunar?</strong> Sanal makineler, depolama cihazları, ağ hizmetleri</li><li><strong>Örnekler:</strong> <strong>AWS, Google Cloud, Azure, OpenStack, Huawei Cloud ECS &amp; EVS</strong></li></ul><p><strong>Platform as a Service (PaaS) — Hizmet Olarak Platform</strong></p><ul><li><strong>Kimler İçin?</strong> Yazılım geliştiriciler</li><li><strong>Ne Sunar?</strong> Veritabanı ara yazılımları, geliştirme ortamları (MySQL, MongoDB, Java)</li><li><strong>Örnekler:</strong> <strong>Cloud Foundry, OpenShift, Huawei Cloud ModelArts</strong></li></ul><p><strong>Software as a Service (SaaS) — Hizmet Olarak Yazılım</strong></p><ul><li><strong>Kimler İçin?</strong> Kurumsal ve bireysel kullanıcılar</li><li><strong>Ne Sunar?</strong> E-posta, anlık mesajlaşma, kurumsal uygulamalar</li><li><strong>Örnekler:</strong> <strong>Google Workspace, Microsoft 365, Salesforce, Huawei Cloud WeLink</strong></li></ul><p>📌 <strong>Örnek:</strong> Bir geliştiriciyseniz, uygulamanızı oluşturmak için <strong>PaaS</strong> hizmetlerinden faydalanabilirsiniz. Eğer yalnızca e-posta ve iş uygulamaları kullanıyorsanız, <strong>SaaS</strong> sizin için uygundur. Sunucu ve depolama yönetmek istiyorsanız, <strong>IaaS</strong> hizmetlerine ihtiyacınız olabilir.</p><h4>HA (High Availability — Yüksek Erişilebilirlik)</h4><p><strong>HA</strong>, sistemdeki sunucu veya servislerde oluşan arızaları otomatik olarak tespit edip, sistemleri otomatik yapılandırarak hizmet sürekliliğini sağlar. Örneğin; bir e-ticaret sitesinde sistem arızası yaşandığında yedek sistemin otomatik olarak devreye girip hizmetlerin kesintisiz sürmesini sağlar.</p><h4>DR (Disaster Recovery — Felaket Kurtarma)</h4><p><strong>DR</strong>, beklenmedik olaylar sonucu hizmetin aksaması durumunda verilerin ve uygulamaların başka bir lokasyondaki yedek veri merkezinden hızlıca kurtarılmasını sağlar. Örneğin; deprem sonrası veri merkezinde yaşanan fiziksel zararlar nedeniyle sistem devre dışı kalırsa, DR çözümü ile yedek sistem kısa sürede devreye girerek hizmet devamlılığını sağlar.</p><h4>📌Bulut Mimarisi Tasarımında Dikkat Edilmesi Gerekenler</h4><ul><li><strong>Performans:</strong> Uygulamaların hızlı çalışması ve veriye hızlı erişim sağlanmalıdır.</li><li><strong>Maliyet Verimliliği:</strong> Bulut kullanımı, işletme maliyetlerini azaltmalı ve bakım masraflarını düşürmelidir.</li><li><strong>Güvenlik:</strong> Veri merkezleri, erişim kontrolü, ağ ve depolama güvenliği sağlanmalıdır.</li><li><strong>Erişilebilirlik:</strong> Hizmetlerin her durumda erişilebilir ve çalışır durumda olması gerekir.</li></ul><h3>🚀Huawei Cloud Bilgi İşlem (Compute) Servisleri</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*SMDJZkcjb9RAZOjAYlZStg.png" /><figcaption><a href="https://support.huawei.com/enterprise/en/doc/EDOC1100372275/4838a01a/elastic-cloud-server-ecs"><strong>Huawei Cloud Compute Services</strong></a></figcaption></figure><p>Huawei Cloud, farklı ihtiyaçlara yönelik çeşitli bilgi işlem servisleri sunmaktadır. Bu servisler <strong>Elastic Cloud Server (ECS)</strong>, <strong>Bare Metal Server (BMS)</strong>, <strong>Image Management Service (IMS)</strong>, <strong>Auto Scaling (AS)</strong>, <strong>Cloud Container Engine (CCE)</strong>,<strong> Dedicated Host (DeH)</strong>, <strong>FunctionGraph</strong> ve <strong>GPU</strong> veya <strong>FPGA</strong> hızlandırmalı sunucuları kapsamaktadır.</p><h4>💻Elastic Cloud Server (ECS)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/404/1*FRzkA3ZlgH8DJN-gtuwiCw.png" /><figcaption><a href="https://support.huawei.com/enterprise/en/doc/EDOC1100372275/4838a01a/elastic-cloud-server-ecs"><strong>Elastic Cloud Server (ECS)</strong></a></figcaption></figure><p><strong>Elastic Cloud Server (ECS)</strong>, bulut ortamında esnek olarak yapılandırılabilen sanal sunucular oluşturmanızı sağlar. Yerel bir sunucuda gerçekleştirilen her işlem ECS üzerinde de yapılabilir. ECS, kullanıcı ihtiyaçlarına göre işlemci, bellek, disk gibi kaynakların özelleştirilmesini sağlar.</p><p>ECS’yi, gerektiğinde büyüyüp küçülebilen esnek bir çalışma alanına benzetebiliriz. İş hacminiz arttığında kaynakları otomatik olarak genişletebilir, azaldığında ise küçültebilirsiniz.</p><p><strong>ECS’nin Temel Özellikleri:</strong></p><ul><li>Esnek provizyonlama ve ölçeklendirme</li><li>Kullandığın kadar öde modeli</li><li>%99,95 hizmet sürekliliği</li><li>Çoklu veri kopyalama ile %99,99995 veri kalıcılığı</li><li>İzole ağ ve güvenlik grup yönetimi</li></ul><p><strong>ECS Oluşturma Adımları:</strong></p><ol><li><strong>Temel Ayarlar:</strong> Faturalama modu, bölge ve AZ seçimi, CPU mimarisi, instance türü, boot image ve EVS disk.</li><li><strong>Ağ Ayarları:</strong> VPC, subnet ayarları, güvenlik grubu seçimi, EIP (dış IP) ataması.</li><li><strong>Gelişmiş Ayarlar:</strong> Sunucu adı, yedekleme ayarları ve gelişmiş seçenekler.</li></ol><p>Örneğin; Yerel sunucunuzda gerçekleştirdiğiniz tüm işlemleri ECS üzerinden yapabilirsiniz. Bellek, işlemci, disk boyutu gibi özellikleri ihtiyaçlarınıza göre belirleyebilir, bu sunucuları tamamen yönetebilirsiniz.</p><h4>🖥️Bare Metal Server (BMS)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*CmJM-g5E2YSjgyCK3iSe6A.png" /><figcaption><strong>Bare Metal Server (BMS)</strong></figcaption></figure><p><strong>Bare Metal Server (BMS)</strong>, bulut ortamında paylaşımsız fiziksel sunucular sağlar. Kritik uygulamalar, yüksek performans gerektiren işlemler (HPC) ve büyük veri analizi gibi durumlarda tercih edilir.</p><p>BMS’i, sadece size ait, performansı yüksek ve güvenilir bir özel çalışma ortamı olarak düşünebilirsiniz.</p><p><strong>BMS Kullanım Senaryoları:</strong></p><ul><li>Core veritabanları</li><li>Kritik finansal işlemler</li><li>Yüksek performanslı hesaplamalar</li></ul><p><strong>Örnek Senaryo:</strong> Bazı kritik veritabanı hizmetleri sanal makinelerde dağıtılamaz ve özel kaynaklara, izole ağlara ve garantili performansa sahip fiziksel sunucularda çalıştırılmalıdır. BMS, ayrılmış yüksek performanslı fiziksel sunucular sağlayarak bu tür kritik veritabanı hizmetlerinin gereksinimlerini karşılar.</p><h4>🖼️Image Management Service (IMS)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/283/1*vL9sKnfLtg7KGnqJ4d5nxA.png" /><figcaption><a href="https://www.huaweicloud.com/intl/tr-tr/product/ims.html"><strong>Image Management Service (IMS)</strong></a></figcaption></figure><p><strong>IMS</strong>, sunucu imagelarının (görüntülerinin) oluşturulması, yönetilmesi ve dağıtılması süreçlerini kolaylaştırır.</p><p>IMS’i, hızlıca çoğaltılabilen standart ve güvenilir bir kurulum şablonu gibi görebilirsiniz.</p><p><strong>Image Türleri:</strong></p><ul><li><strong>Public Image:</strong> Herkes tarafından kullanılabilir (Windows, Linux vb.).</li><li><strong>Private Image:</strong> Kullanıcıların kendilerine özel oluşturduğu imagelar.</li><li><strong>Shared Image:</strong> Başka kullanıcıların paylaştığı özel imagelar.</li><li><strong>Marketplace Image:</strong> Üçüncü taraflar tarafından sunulan hazır imagelar.</li></ul><p><strong>IMS’nin Avantajları:</strong></p><ul><li>Merkezi ve self-servis yönetim</li><li>Güvenli ve şifreli image depolama</li><li>Farklı platformlarda tutarlı kullanım</li></ul><p>Örneğin; İş yüklerini buluta taşımayı kolaylaştırmak için mevcut bir bulut sunucusundan veya harici bir image dosyasından özel bir image oluşturabilirsiniz.</p><h4>📊Auto Scaling (AS)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Kw3f6H_gxZvlCBoPjVy-vQ.png" /><figcaption><a href="https://www.huaweicloud.com/intl/tr-tr/product/as.html"><strong>Auto Scaling (AS)</strong></a></figcaption></figure><p><strong>AS</strong>, uygulamaların kaynaklarını talebe göre otomatik ayarlar ve ECS örneklerini dinamik olarak yönetir.</p><p>AS’i, yoğun saatlerde otomatik olarak ek gişeler açarak trafiği rahatlatan ve trafik azaldığında tekrar küçülen akıllı bir otoyol sistemi gibi düşünebiliriz.</p><p><strong>AS Temel Özellikleri:</strong></p><ul><li>Yüksek hata toleransı (arızalı ECS’lerin otomatik yenilenmesi)</li><li>Dinamik kaynak ölçeklendirme (örneğin CPU kullanımı, bellek kullanımına göre)</li><li>Esnek maliyet yönetimi (yalnızca ihtiyaç duyulan kaynaklar için ödeme yapılır)</li></ul><p><strong>Örnek Senaryo:</strong> E-ticaret sitelerinde büyük promosyon dönemlerinde artan trafik yükünü yönetmek için AS, ECS örneklerini ve bant genişliğini dakikalar içinde otomatik olarak ölçeklendirerek web sitesinin sorunsuz bir şekilde çalışmasını sağlar.</p><h4>🚢Cloud Container Engine (CCE)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/843/0*XMdVlQ-ZEnzkiHJa.png" /><figcaption><a href="https://www.youtube.com/watch?v=MKF_o25MLJ4"><strong>Cloud Container Engine (CCE)</strong></a></figcaption></figure><p><strong>CCE</strong>, Kubernetes tabanlı, konteynerli uygulamaları bulut ortamında kolayca yönetmenizi sağlar.</p><p>CCE’yi, uygulamalarınızı paketleyip tek noktadan hızlıca dağıtmanızı sağlayan lojistik bir merkez olarak düşünebilirsiniz.</p><p><strong>CCE Özellikleri:</strong></p><ul><li>Kolay ve hızlı kurulum</li><li>Yüksek performans ve güvenilirlik</li><li>Çoklu AZ desteği ve felaket kurtarma</li></ul><p><strong>CCE Temel Kavramları:</strong></p><ul><li><strong>Cluster:</strong> Konteynerlerin çalıştırıldığı kaynak grubu.</li><li><strong>Pod:</strong> Bir veya birden fazla konteynerin bir arada olduğu yapı.</li><li><strong>Node:</strong> Konteynerlerin çalıştırıldığı ECS veya BMS.</li><li><strong>Service:</strong> Mantıksal pod gruplarını temsil eden yapı.</li></ul><p>Örneğin; Kubernetes uygulamalarını Huawei Cloud üzerinde kolayca yönetebilir, ölçeklendirebilir ve uygulamalarınızın sürekliliğini sağlayabilirsiniz.</p><h4>🏢Dedicated Host (DeH)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*z3KNnv0xbkoxc0C1HoY6vg.png" /><figcaption><strong>Dedicated Host (DeH)</strong></figcaption></figure><p><strong>DeH</strong>, kullanıcıya özel fiziksel sunuculardır ve ECS gibi paylaşımlı değildir. Sunucuyu doğrudan yönetmenize ve sanallaştırmanıza olanak sağlar.</p><p>DeH’i, tamamen kontrolü sizde olan ve kimseyle paylaşmadığınız özel bir alan gibi görebilirsiniz.</p><h4>⚡FunctionGraph</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/738/0*rGaW-GKRBlqonSnM.png" /><figcaption><strong>FunctionGraph</strong></figcaption></figure><p><strong>FunctionGraph</strong>, sunucusuz (serverless) bir mimari sağlayarak kullanıcıların yalnızca kullandıkları kadar ödeme yapmalarını sağlar.</p><p>FunctionGraph’ı, sadece ihtiyaç anında çalışan, işi bittiğinde maliyet yaratmayan ekonomik ve pratik bir sistem olarak düşünebilirsiniz.</p><p>Örneğin; Sunucu yönetimi olmadan, yalnızca kullanılan kaynak için ödeme yaparak, kodunuzu yüksek erişilebilirlik ve ölçeklenebilirlik ile çalıştırabilirsiniz.</p><h4>🎯Uygulamalı Ödev</h4><p>Huawei Cloud ücretsiz hesabınızla <a href="https://lab.huaweicloud.com/intl/en-us/experiment-list?ticket=ST-846017-pQFesYspXmfUzxGaxTHQsQGd-sso"><strong>Koolabs</strong></a> üzerinden <a href="https://lab.huaweicloud.com/intl/en-us/experiment-detail_1771"><strong>Compute Services Practice</strong></a> laboratuvar çalışmasını yaparak öğrendiklerinizi pekiştirebilir ve uygulayabilirsiniz.</p><h3>💾Huawei Cloud Depolama (Storage) Servisleri</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*sU1dZ7X0TlUHm0IVqe6qiQ.png" /><figcaption><a href="https://infosyte.com/demystify-huawei-cloud/"><strong>Huawei Cloud Storage Services</strong></a></figcaption></figure><p>Huawei Cloud, verilerinizi güvenli, performanslı ve esnek bir şekilde depolamanızı sağlayan çeşitli depolama servisleri sunmaktadır. Bu servisler arasında Elastic Volume Service (EVS), Object Storage Service (OBS) ve Scalable File Service (SFS) bulunmaktadır.</p><h4>📦Elastic Volume Service (EVS)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/309/1*bmqPn2nQo7YbCL3eNR5P4A.png" /><figcaption><a href="https://doc.hcs.huawei.com/productdesc/evs/evs_1.html"><strong>Elastic Volume Service (EVS)</strong></a></figcaption></figure><p><strong>EVS</strong>, bulut sunucuları (ECS veya BMS) için yüksek performanslı ve ölçeklenebilir blok depolama servisleri sağlar. EVS diskleri, bilgisayarlardaki sabit disklere benzer şekilde çalışır ve kullanılması için bir sunucuya bağlanmaları gerekir.</p><p><strong>EVS Temel Özellikleri:</strong></p><ul><li>Yüksek güvenilirlik ve performans</li><li>Esnek ölçeklendirme (kapasite artırımı)</li><li>%99,9999999 dayanıklılık</li><li>Gerçek zamanlı izleme (Cloud Eye)</li><li>Şifreleme, yedekleme ve snapshot gibi veri koruma özellikleri</li><li>Aylık/yıllık veya kullanım bazlı ödeme seçenekleri</li><li>Paylaşımlı EVS diskleri birden fazla sunucuya bağlanabilir</li></ul><p>EVS’yi gerektiğinde büyütebildiğiniz ama küçültemediğiniz genişleyebilen bir dolaba benzetebiliriz; ihtiyacınız arttığında rahatça genişletirsiniz ama küçültmek için dikkatlice plan yapmanız gerekir.</p><h4><strong>EVS Disk Yedekleme ve Snapshot Karşılaştırması</strong></h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*w2aLBCxEd0CcGVFVvqTXuw.png" /><figcaption><strong>EVS Disk Yedekleme ve Snapshot Karşılaştırılması</strong></figcaption></figure><p><strong>EVS Kullanım Senaryoları:</strong></p><ul><li>Dağıtık dosya sistemleri</li><li>Geliştirme ve test ortamları</li><li>Veri ambarı uygulamaları</li><li>Yüksek performanslı bilgi işlem (HPC)</li></ul><h4>☁️Object Storage Service (OBS)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/425/1*XPP9wbo1v3pIXrPWlfk4zw.png" /><figcaption><a href="https://www.huaweicloud.com/intl/tr-tr/product/obs.html"><strong>Object Storage Service (OBS)</strong></a></figcaption></figure><p><strong>OBS</strong>, büyük miktarda veriyi uygun maliyetle ve yüksek erişilebilirlikle depolamanızı sağlayan bulut tabanlı bir nesne depolama servisidir. Bucket (kova) yapısı kullanılarak veriler düzenlenir ve paylaşılır. Nesneleri OBS’de depolamak için önce bir bucket (kova) oluşturmanız gerekir. Bucket (kova), OBS’nin bir yönetim birimidir.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/648/1*d1u7btFbK4VWtchgB4c9Pw.png" /><figcaption><a href="https://www.huaweicloud.com/intl/tr-tr/product/obs.html"><strong>OBS Bucket</strong></a></figcaption></figure><p><strong>OBS Temel Özellikleri:</strong></p><ul><li>Yüksek dayanıklılık ve erişilebilirlik</li><li>%99,99999999999 güvenilirlik</li><li>Sınırsız depolama (tek bir nesnenin 48 TB’a kadar yüklenmesine izin verir)</li><li>REST API ve SDK’larla kolay entegrasyon</li><li>Çok katmanlı güvenlik ve yetkilendirme</li><li>Uygun maliyet (kullanıma göre ödeme)</li><li>OBS’e erişebilmek için OBS Browser+, OBS console, APIs &amp; SDKs, obsutil, obsfs kullanılabilir.</li></ul><p>OBS’i dev bir kütüphane gibi düşünebilirsiniz; tüm veriler düzenli şekilde saklanır ve ihtiyacınız olduğunda kolayca erişip paylaşabilirsiniz.</p><p><strong>OBS Kullanım Senaryoları: </strong>OBS, sıfır servis kesintisi ile yüksek performans sağlayan, ucuz büyük veri çözümleri sunar. Bu tür çözümler aşağıdaki senaryolarda idealdir:</p><ul><li>Büyük miktarda verinin depolanması ve analizi</li><li>Tarihsel veri ayrıntılarının sorgulanması</li><li>Çok sayıda davranış logunun analizi</li><li>Transaction analizi ve istatistik toplama</li></ul><p><strong>OBS Bucket Erişim Kuralları:</strong></p><ul><li><strong>Private:</strong> Sadece yetkilendirilen kullanıcılar erişebilir.</li><li><strong>Public read:</strong> Herkes okuyabilir.</li><li><strong>Public read &amp; write:</strong> Herkes okuyabilir, silebilir ve ekleme yapabilir.</li></ul><h4>📁Scalable File Service (SFS)</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/536/1*cdHoUF0M_RrgLvcK_lEEZg.png" /><figcaption><strong>Scalable File Service (SFS)</strong></figcaption></figure><p><strong>SFS</strong>, Huawei Cloud üzerinde paylaşılan, ölçeklenebilir ve yüksek performanslı dosya depolama hizmeti sunar. Birden fazla ECS, BMS ve konteyner arasında aynı dosya sistemini paylaşmanıza olanak tanır.</p><p><strong>SFS Temel Özellikleri:</strong></p><ul><li>Paylaşımlı erişim (çoklu sunucu ve konteyner erişimi)</li><li>Yüksek performans ve güvenilirlik</li><li>Kolay yapılandırma ve kullanım</li></ul><p>SFS’i ortak bir çalışma masası gibi düşünebilirsiniz; birden fazla ekip üyesi aynı anda kolaylıkla erişip ortak dosyalar üzerinde çalışabilir.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*qBHhxIhGO8v1NKRt.png" /><figcaption><a href="https://medium.com/@bruhhmx/huawei-cloud-storage-services-7d9f24f5830c"><strong>SFS Kullanımı</strong></a></figcaption></figure><h4><strong>SFS Yapılandırma Adımları:</strong></h4><ol><li>Dosya sistemi oluşturun.</li><li>Dosya sistemi ve sunucuların aynı VPC’de olduğundan emin olun.</li><li>Dosya sistemlerini Linux ve Windows sunucularınıza bağlayın (mount edin).</li></ol><p><strong>SFS Kullanım Senaryoları:</strong></p><ul><li>Çok sayıda sunucu veya konteyner tarafından ortak erişim gereken ortamlar</li><li>Paylaşılan uygulama geliştirme ortamları</li></ul><h4>Depolama Çözümleri Arasındaki Karşılaştırmalar</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_ehNgPJYBQ5qp_2Pgpp90g.png" /><figcaption><strong>Depolama Çözümleri Arasındaki Karşılaştırmalar</strong></figcaption></figure><h4>🎯Uygulamalı Ödev</h4><p>Huawei Cloud ücretsiz hesabınızla <a href="https://lab.huaweicloud.com/intl/en-us/experiment-list?ticket=ST-846017-pQFesYspXmfUzxGaxTHQsQGd-sso"><strong>Koolabs</strong></a> üzerinden <a href="https://lab.huaweicloud.com/intl/en-us/experiment-detail_1844"><strong>Storage Practice</strong></a> laboratuvar çalışmasını yaparak öğrendiklerinizi pekiştirebilir ve uygulayabilirsiniz.</p><h3>SONUÇ</h3><h3>Neler Öğrendik?</h3><p>✅ Bulut bilişim nedir ve neden önemlidir?<br>✅ Huawei Cloud’un sunduğu hizmetler ve küresel altyapısı<br>✅ Huawei Cloud Compute Servisleri (ECS, BMS, CCE, Auto Scaling vb.)<br>✅ Huawei Cloud Storage Servisleri (EVS, OBS, SFS) ve kullanım senaryoları</p><p>Önümüzdeki bölümde, Huawei Cloud’un Ağ (Network) ve Veri Tabanı (Database) hizmetlerini kapsamlı bir şekilde ele alacağız. Bulut bilişimde güvenli ve ölçeklenebilir bir ağ altyapısı nasıl oluşturulur, Huawei Cloud’un veritabanı servisleri işletmelere hangi avantajları sunar gibi sorulara odaklanacağız. Bunun yanı sıra, Huawei Cloud’un Operasyon ve Bakım (O&amp;M) hizmetleri, Cloud Container Engine (CCE) ve Kubernetes tabanlı uygulama yönetimi konularını da detaylı olarak inceleyeceğiz.</p><h3>Referanslar</h3><p><a href="https://connect.huaweicloud.com/intl/en-us/courses/learn/C101692237687889160/about/sp:cloudEdu_en?ticket=ST-846623-uxdv4eXYhVgOMFpQjOKwFtxb-sso&amp;locale=en-us">https://connect.huaweicloud.com/intl/en-us/courses/learn/C101692237687889160/about/sp:cloudEdu_en?ticket=ST-846623-uxdv4eXYhVgOMFpQjOKwFtxb-sso&amp;locale=en-us</a></p><ul><li><a href="https://medium.com/@bruhhmx/huawei-cloud-storage-services-7d9f24f5830c">Huawei Cloud Storage Services</a></li><li><a href="https://www.huaweicloud.com/intl/tr-tr/product/obs.html">Object Storage Service (OBS) | Huawei Cloud</a></li><li><a href="https://www.huaweicloud.com/intl/tr-tr/product/obs.html">Object Storage Service (OBS) | Huawei Cloud</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=232ce82b82b1" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/hccda-tech-essentials-sertifikas%C4%B1-haz%C4%B1rl%C4%B1k-ve-e%C4%9Fitim-rehberi-b%C3%B6l%C3%BCm-1-232ce82b82b1">HCCDA Tech Essentials Sertifikası Hazırlık ve Eğitim Rehberi — Bölüm 1</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[☁️Huawei Cloud’da VPC Endpoint ile Farklı VPC’lerdeki CCE ve RDS Arasında Güvenli Bağlantı Kurulumu]]></title>
            <link>https://medium.com/huawei-developers-tr/%EF%B8%8Fhuawei-cloudda-cce-den-vpcep-ile-farkl%C4%B1-vpc-deki-rds-e-g%C3%BCvenli-eri%C5%9Fim-4c4a109c5b2c?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/4c4a109c5b2c</guid>
            <dc:creator><![CDATA[Eren Fidan]]></dc:creator>
            <pubDate>Fri, 13 Jun 2025 10:39:26 GMT</pubDate>
            <atom:updated>2025-06-13T10:39:26.705Z</atom:updated>
            <content:encoded><![CDATA[<h4>VPCEP ve VPCEP Service Kullanarak VPC’ler Arası Haberleşme</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*rja4wnh14fsa3-VWbXI_bw.png" /></figure><h3>Giriş</h3><p>Bulut ortamında mikroservisler yaygınlaştıkça, Kubernetes tabanlı çözümlerin (Huawei Cloud CCE gibi) farklı VPC’lerdeki veritabanı servislerine izole ve güvenli şekilde erişimi büyük önem taşıyor. Bu yazıda, Huawei Cloud üzerinde <strong>CCE (Cloud Container Engine)</strong> üzerinde çalışan bir servisin, başka bir VPC’de yer alan <strong>RDS for MySQL</strong> veritabanına <strong>VPC Endpoint Service (VPCEP)</strong> kullanarak nasıl güvenli şekilde erişebileceğini, adım adım kendi deneyimimle paylaşacağım.</p><p>Bu süreçte, iki VPC arasındaki bağlantının güvenli ve yönetilebilir olması için VPCEP ve arka tarafta ELB gibi altyapı servisleri kullanılacak; ancak odak noktamız CCE’den başlatılan bağlantının, hiçbir şekilde doğrudan public erişime açılmadan, private bir yol üzerinden RDS’ye nasıl ulaştırılacağı olacak.</p><h3>Mimari ve Amaç</h3><p>Senaryomuzda iki farklı VPC bulunuyor:</p><ul><li><strong>VPC-A:</strong> RDS MySQL veritabanı ve ELB burada bulunuyor.</li><li><strong>VPC-B:</strong> CCE servisi ve VPCEP endpoint burada.</li><li><strong>Amaç:</strong> CCE pod’undan, VPCEP üzerinden, ELB aracılığıyla RDS’ye güvenli erişim sağlamak.</li></ul><p>Aşağıda özet bir mimari diyagramı görebilirsiniz:</p><pre>[CCE Pod] --(VPC-B)--&gt; [VPCEP Endpoint] ---(VPCEP Service)---&gt; [ELB] --(VPC-A)--&gt; [RDS for MySQL]</pre><h3>1. RDS (MySQL) ve ELB Kurulumu</h3><p>İlk adımda, <strong>VPC-A</strong> içerisinde bir RDS MySQL veritabanı oluşturuyoruz. Oluşturma sırasında şu ayarlara dikkat ediyoruz:</p><ul><li><strong>Erişim Türü:</strong> Sadece private erişim (public erişim kapalı).</li><li><strong>Port:</strong> 3306 (MySQL varsayılan portu).</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*GUKMp1F2EgxP-2IHLeBYOQ.png" /><figcaption>Console üzerinden, öncelikle sol taraftaki Services menüsünden ‘Relational Database Service’ yazıp RDS’e ulaştıktan sonra, Instances kısmından ‘Buy DB Instance’a tıklıyoruz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PXnfRcWANkzlmq_R0NKpKg.png" /><figcaption>Burada Pay-per-use seçtikten sonra istediğimiz instance türünü seçebiliriz, deneme MySQL üzerinden yapıldığı için bu türü seçebiliriz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*dANPdTRt_zyB25eMMoaKfg.png" /><figcaption>Burada VPC-A olarak vpc-rds-test seçili durumda. Hemen aşağısında ise Database Port ve ardından Security Group seçimlerini yapıyoruz. Seçilen portun security group içinde izin verilmiş olması gerektiğini hatırlatalım. Sonrasında Buy’a tıklıyoruz ve RDS işlemini tamamlıyoruz.</figcaption></figure><p>Daha sonra aynı VPC’de, <strong>TCP protokolü ile çalışan bir ELB (Elastic Load Balancer)</strong> oluşturuyoruz:</p><ul><li><strong>Frontend Port:</strong> 3306</li><li><strong>Backend Port:</strong> 3306</li><li><strong>Backend Pool’a</strong> RDS for MySQL IP’si eklenir.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*8zS20g5N1rI3b1NOPmvXtg.png" /><figcaption>Console üzerinden, öncelikle sol taraftaki Services menüsünden ‘Elastic Load Balance’ yazıp ELB’ye ulaştıktan sonra, ‘Buy Elastic Load Balance’a tıklıyoruz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*fSraWgXn6KFNjFcJQSnqQg.png" /><figcaption>Biraz aşağıda ‘Specifications’ kısmında Load Balancer türlerini seçmek önemli. Bu işlemi etkilememesi için iki türü de aktif edip devam edebiliriz, ama normalde Network tipini kesinlikle seçmek gerekirken, tek başına Application türü Layer 7 network’ten ötürü bu işlem için yetersiz kalacaktır.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*MZmb_8_Ar3BeGnOOrYIXuA.png" /><figcaption>Daha aşağıda, VPC ve Subnet seçerken, RDS ile aynı olmasına dikkat ediyoruz. Devamında ise IP as a Backend’i aktif ederek, RDS oluştuktan sonraki Private IP’yi Listener olarak ekleyebileceğiz. Daha sonrasında ise EIP kısmında ‘Not Required’ seçerek ‘Buy Now’ diyoruz ve satın alımı onaylıyoruz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*R8q1fi54Xhqv8hZ-fg5Ubg.png" /><figcaption>ELB oluştuktan sonra, Listener ekleyebiliriz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*J3N33eK8RLOaF83q9N7bFQ.png" /><figcaption>Frontend Protocol kısmının TCP seçili olduğundan emin oluyoruz. Sonrasında Frontend Port’unu RDS port’u ile giriyoruz ve sonraki aşamaya geçiyoruz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*mzSUAlqbKRGp5s5AAYAN_A.png" /><figcaption>Backend Server Group seçilmesi istendiğinde, bu işlemi ilk kez yapıyorsak Create New’a tıklıyoruz. Sonrasında Forward to Same Port özelliğini aktif ederek, Backend portunu tekrar girmek zorunda kalmıyoruz. Bunlardan sonra ise sonraki aşamaya geçiyoruz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4HSA1Tx1eLKZOpmMs9h_YA.png" /><figcaption>Burada ise, ‘IP as Backend Servers’ seçeneğini seçip, RDS instance’ı ile oluşan Private IP’yi veriyoruz. ‘Forward to Same Port’u seçtiğimiz için Health Check port’u hata verecektir, onu da aynı portu giriyoruz ve en son onaylıyoruz.</figcaption></figure><h3>2. VPCEP Servisinin Oluşturulması (Sağlayıcı Taraf)</h3><p>Şimdi, VPC-A üzerinde bir <strong>VPC Endpoint Service (VPCEP Servisi)</strong> oluşturuyoruz. Bu servis, ELB’ye yönlendirme yapacak şekilde ayarlanır:</p><ul><li><strong>Backend Servis Tipi:</strong> ELB seçilir.</li><li><strong>Port Mapping (Bağlantı Noktası Eşlemesi):</strong></li><li>Hizmet Portu (Service Port): 3306</li><li>Terminal Portu: 3306 (ELB’nin dinlediği port)</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*kqKTSEDmqL60q7-Xy5RRdg.png" /><figcaption>Console üzerinden, öncelikle sol taraftaki Services menüsünden ‘VPCEP’ yazıp VPCEP servisine ulaştıktan sonra, soldan ‘VPC Endpoint Services’e tıklayıp, ardından ‘Create VPC Endpoint Service’e tıklıyoruz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_e_KRO1UoHIZs307jXPaEg.png" /><figcaption>Burada ‘Region’ı belirledikten sonra, RDS’ın olduğu VPC’yi seçiyoruz. Ardından port kısımlarına 3306 yani MySQL için gerekli olan portları giriyoruz (İsterseniz portların ayarlamasını yaparak özelleştirebilirsiniz). En sonda ise ayarlamasını yaptığımız Load Balancer’ı seçiyoruz ve ‘Create Now’a tıklıyoruz.</figcaption></figure><h3>3. VPCEP Endpoint’in Oluşturulması (Tüketici Taraf)</h3><p>Şimdi, VPC-B üzerinde bir <strong>VPC Endpoint (VPCEP Endpoint)</strong> oluşturuyoruz.<br> Bu endpoint, az önce oluşturduğumuz VPCEP servisine bağlanır.</p><ul><li><strong>Bağlantılı Servis:</strong> VPCEP Service’in adını seçiyoruz.</li><li><strong>Oluşan Endpoint’in Private IP’sini</strong> bir yere not ediyoruz. (Bağlantı bu IP üzerinden olacak)</li><li><strong>Servis Paylaşımı:</strong> VPCEP Service’te CCE’nin bulunduğu VPC-B’nin erişimine izin verilecek şekilde whitelist ayarlanır.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*IhiFql-Og9n4RqzCTRWJSA.png" /><figcaption>VPCEP’e geri dönüp, ‘Buy VPC Endpoint’e tıklıyoruz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*H70uB5i2eXCPSA-vaola8A.png" /><figcaption>‘Region’ı belirledikten sonra, ‘Service Category’i ‘Fınd a service by name’ olarak seçip, alttaki kısma VPCEP Service’in adını yapıştırıyoruz. VPC ve Subnet olarak da CCE Cluster’ındaki Pod’ların yer aldığı VPC ve Subnet’i seçip VPCEP’i oluşturuyoruz.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hA6sq0XXQlcQisQo9U_oAQ.png" /><figcaption>Daha sonrasında, oluşturduğumuz VPCEP Service’e tıklayıp, VPCEP bağlantı isteğini onaylayarak whitelist’e ekliyoruz.</figcaption></figure><h3>4. Güvenlik Grubu ve Ağ Ayarları</h3><p>Bağlantının sorunsuz gerçekleşmesi için aşağıdaki ağ ve güvenlik ayarlarını kontrol etmelisin:</p><ul><li><strong>RDS’in güvenlik grubuna</strong>, ELB’nin backend subnet’inin 3306 portundan erişimine izin verilir.</li><li><strong>ELB’nin güvenlik grubuna</strong>, VPCEP’ten gelen bağlantılara 3306 portu açılır.</li><li><strong>VPCEP Service için whitelist/izinler</strong>, endpoint’in bulunduğu VPC’yi kapsar.</li><li><strong>İnternet erişimi kapalı tutulur</strong> (tüm trafik private).</li></ul><p>Bunlar için, kullandığınız Security Group’u kontrol edebilirsiniz.</p><h3>5. Şifre Sıfırlama ve Kullanıcı Ayarları</h3><p><strong>Not:</strong> Bu adım, sonraki adımda yapacağımız test işlemi için gerekmektedir. Eğer ki şifreyi biliyorsanız bu adımı atlayabilirsiniz.</p><p>RDS MySQL oluşturulurken yönetici şifresi zorunlu olarak belirlenir.<br>Eğer şifreyi hatırlamıyorsan, <strong>Huawei Cloud Console üzerinden RDS &gt; Hesap Yönetimi &gt; root/admin kullanıcısı için Şifre Sıfırla</strong> işlemini yapabilirsin.<br>Yeni şifreyle tekrar bağlantı sağlayabilirsin.</p><h3>6. CCE Üzerinden Bağlantı Testi</h3><p>Şimdi sıra, CCE pod’u üzerinden bağlantıyı test etmeye geldi. Bunun için VPC-B üzerinde oluşturulmuş bir CCE cluster’ı olması gerekiyor. Bunu CCE servisi ekranı üzerinden hızlıca oluşturabilirsiniz.<br>Cluster oluştuktan sonra, üzerinde MySQL client bulunan bir test pod’u başlatabiliriz:</p><pre>kubectl run mysql-client --rm -i --tty --image=swr.tr-west-1.myhuaweicloud.com/cce-cloud/mysql:8 -- bash</pre><p>Bu işlemin sağlıklı yapılabilmesi için cluster’ın internete erişimi olması gerekmekte, yani NAT Gateway içerisinde SNAT kuralının ilgili VPC veya Subnet’i kapsayacak şekilde tanımlı olması gerekiyor.<br>Pod içinde aşağıdaki komutla bağlantıyı test edebiliriz:</p><pre>mysql -h &lt;VPCEP_PRIVATE_IP&gt; -P 3306 -u &lt;RDS_KULLANICI_ADI&gt; -p</pre><p>Burada &lt;VPCEP_PRIVATE_IP&gt;, endpoint’in private IP’si, &lt;RDS_KULLANICI_ADI&gt; ise RDS’te tanımlı kullanıcı adıdır.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*3k-qbggs9K5PkGRaj-MvUQ.png" /></figure><p>Görüldüğü üzere, bağlantıyı sağlamış ve işlemi başarılı şekilde tamamlamış olduk.</p><h3>7. Karşılaşılabilecek Sorunlar ve Çözüm Yöntemleri</h3><p><strong>Bağlantı zaman aşımı:</strong></p><ul><li>Güvenlik grupları ve whitelist ayarlarını kontrol et.</li><li>Endpoint’in “bağlandı” durumunda olduğundan emin ol.</li></ul><p><strong>Erişim reddedildi (Access Denied):</strong></p><ul><li>Kullanıcı adı/şifre veya veritabanı izinlerini tekrar kontrol et.</li></ul><p><strong>ELB veya RDS health check hatası:</strong></p><ul><li>ELB’nin backend’e (RDS) ulaşabildiğinden emin ol.</li></ul><h3>8. Sonuç</h3><p>Bu yazıda, Huawei Cloud üzerinde farklı VPC’lerde yer alan servislerin <strong>VPCEP ve ELB</strong> ile nasıl izole ve güvenli şekilde birbirine erişebileceğini detaylı olarak gösterdim.<br>Bu yöntem, mikroservis mimarilerinde ve çoklu VPC senaryolarında hem güvenliği artırır hem de altyapı yönetimini kolaylaştırır.</p><h3>Referanslar</h3><ul><li><a href="https://www.huaweicloud.com/intl/en-us/product/cce.html">Cloud Container Engine (CCE) - Kubernetes Service | Huawei Cloud</a></li><li><a href="https://www.huaweicloud.com/intl/en-us/product/mysql.html">RDS for MySQL - Fully Managed Database | Huawei Cloud</a></li><li><a href="https://www.huaweicloud.com/intl/en-us/product/vpcep.html">VPC Endpoint - Private Connection | Huawei Cloud</a></li><li><a href="https://www.huaweicloud.com/intl/en-us/product/elb.html">Elastic Load Balance (ELB) - Load Balancing | Huawei Cloud</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=4c4a109c5b2c" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/%EF%B8%8Fhuawei-cloudda-cce-den-vpcep-ile-farkl%C4%B1-vpc-deki-rds-e-g%C3%BCvenli-eri%C5%9Fim-4c4a109c5b2c">☁️Huawei Cloud’da VPC Endpoint ile Farklı VPC’lerdeki CCE ve RDS Arasında Güvenli Bağlantı Kurulumu</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[☁️GitHub Access Token ile CodeArts Pipeline Kullanımı]]></title>
            <link>https://medium.com/huawei-developers-tr/%EF%B8%8Fgithub-access-token-ile-codearts-pipeline-kullan%C4%B1m%C4%B1-8f7edde18798?source=rss----cff1a46a0f08---4</link>
            <guid isPermaLink="false">https://medium.com/p/8f7edde18798</guid>
            <category><![CDATA[code]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[cloud]]></category>
            <category><![CDATA[github]]></category>
            <category><![CDATA[huawei]]></category>
            <dc:creator><![CDATA[Ertugrul Basar]]></dc:creator>
            <pubDate>Wed, 11 Jun 2025 08:04:09 GMT</pubDate>
            <atom:updated>2025-06-11T08:04:08.971Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*39lxS8F3Kem7wp3Sf9G1XQ.jpeg" /><figcaption>CodeArts — GitHub</figcaption></figure><h3>Giriş</h3><p>Herkese merhaba! Bugünkü makalemizde, popüler kod deposu GitHub ile Huawei Cloud’un DevSecOps platformu CodeArts üzerinde odaklanacağız. Bu uygulamada, daha önceki makalelerde gösterdiğimiz gibi CodeArts Pipeline kullanarak süreçleri otomatikleştirmeyi deneyeceğiz. Ancak bu sefer kaynak kodumuz olarak bir GitHub deposunu kullanacağız ve bu depoda yaptığımız commit’ler pipeline’ın tetikleyicisi olacak. Ayrıca, bu makalede kodun derlenmesi ve dağıtımı gibi diğer aşamalardan çok, GitHub tetikleme özelliğine vurgu yapmak istiyorum.</p><p>Demo’ya başlamadan önce, bu servisleri zaten bildiğinizi varsaysam da kısaca ECS, CodeArts ve GitHub hakkında bir özet geçeceğim:</p><p>1️⃣ <strong>ECS (Elastic Cloud Server)</strong>: Kullanıcıların bulutta sanal sunucular oluşturup yönetmelerine olanak tanıyan, esnek ve ölçeklenebilir bir bulut bilişim hizmetidir.</p><p>2️⃣ <strong>CodeArts</strong>: Yazılım yaşam döngüsü boyunca ihtiyaç tesliminden, kod commit ve kontrolüne, derleme, doğrulama, dağıtım ve yayına kadar uçtan uca bulut tabanlı DevSecOps platformudur. İçinde şu servisleri barındırır:</p><ul><li>Req (Proje Yönetimi)</li><li>Repo (Kod Barındırma)</li><li>Check (Kod Kalitesi)</li><li>Build (Kod Derleme)</li><li>Artifact (Derleme Barındırma)</li><li>Deploy (Dağıtım)</li><li>Pipeline (Sürekli Teslimat)</li><li>TestPlan (Dağıtım Testi)</li></ul><p>3️⃣ <strong>GitHub</strong>: Kod yazmak, depolamak ve başkalarıyla birlikte çalışmak için kullanılan bulut tabanlı bir platformdur. GitHub’daki “repository” (depo) sayesinde kodunuzu saklayabilir, paylaşabilir, değişiklikleri takip edip yönetebilir ve ekip olarak ortak projelerde çalışabilirsiniz.</p><h3>Demo</h3><p><strong>Ön Hazırlıklar</strong></p><p>⚡️<strong>ECS’nin Temel Kaynaklara Eklendiği CodeArts Projesi</strong></p><p>Uygulamamızı deploy edeceğimiz bir ECS sunucusuna ihtiyacımız var. Ayrıca, uygulamamızın internetten erişilebilir olmasını istiyorsak, sunucunun genel IP adresi olması için bir Elastic IP (EIP) ilişkilendirmemiz gerekiyor. Eğer nasıl ECS sunucusu oluşturacağınızdan emin değilseniz, <a href="https://medium.com/huawei-developers/%EF%B8%8F-how-to-buy-an-ecs-instance-on-huawei-cloud-e82db401cb17">bu rehbere</a> bakabilirsiniz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*G7zw1pAorRdvPPOzzagYEA.png" /><figcaption>ECS Sunucusu</figcaption></figure><p>Projemizde ECS’yi kullanabilmek için, onu temel kaynak olarak eklememiz gerekiyor. Projeyi oluşturduktan sonra, ‘Settings &gt; General &gt; Basic Resources’ bölümüne giderek bir host kümesi oluşturuyoruz. Bu işlem, oluşturduğumuz ECS sunucularını projeye dahil etmemizi sağlar. Küme oluşturulduktan sonra, bu proje içinde ECS’yi temel kaynak olarak eklemeye devam edebilirsiniz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*k6kpwxPLY6e021UfN4S1Xg.png" /><figcaption>Temel Kaynaklar</figcaption></figure><p>⚡️ <strong>GitHub repository</strong></p><p>GitHub’da yapılan commitleri izleyeceğimiz için, kodumuzu depolayacak bir repository’e ihtiyacımız var. Bu çalışma için ben aşağıdaki repository’i kullanacağım, siz de dilerseniz <a href="https://github.com/ertbasar/git-trigger">aynı repository’i</a> kullanabilirsiniz. (Ayrıca, CodeArts Repo içinde ‘Java Web Demo’ adıyla bir şablon olarak da bulabilirsiniz.)</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*8fVLKd_rpdT2qEuBYkU13A.png" /></figure><p><strong>Adım 1️⃣: GitHub erişim token’ı oluşturun ve bunu CodeArts projesinde bir servis uç noktası (service endpoint) olarak ekleyin</strong></p><p>Bu adım, bu çalışma için belki de en kritik olanıdır. Normalde, CodeArts diğer Git sağlayıcılarındaki özel repolarınıza erişemez. Ancak, bir token’ı servis uç noktası (service endpoint) olarak kullanarak, CodeArts GitHub’daki repolarınıza erişim kazanabilir. Bu yüzden, GitHub üzerinde şu yolu takip etmeliyiz: Settings &gt; Developer settings &gt; Personal access tokens &gt; Fine-grained tokens Buraya ulaştığınızda, Generate new token butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*kAFeKs_ORWKjYq-6-t8Pjw.png" /><figcaption>Token — 1</figcaption></figure><p>Sonraki adımda token’ımıza bir isim veriyoruz. Varsayılan olarak token’ın geçerlilik süresi 30 gündür, ben bunu koruyacağım ama isterseniz süresini özelleştirebilirsiniz. Ardından, repository erişim ayarlarını yapmamız gerekiyor; bu ayarlar, token’ın hesap üzerindeki yetkilerini belirler. Burada token’ın sadece açık (public) repolara mı, tüm repolara mı, yoksa yalnızca seçilen repolara mı erişebileceğini seçebilirsiniz. Bu çalışmada, sadece kullanacağımız repoyu seçiyorum. Ayrıca, token’a gerekli tüm izinlerin verildiğinden emin olun.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*S7pN4NWBre9LyMvYXATBQw.png" /><figcaption>Token — 2</figcaption></figure><p>Token oluşturulduktan sonra, sizi token’ın gösterildiği bir sayfaya yönlendirecek. Bu aşamada token’ınızı kopyalayıp güvenli bir yere kaydetmeniz çok önemli, çünkü GitHub bu token’ı bir daha göstermek istemez ve erişiminizi kaybedebilirsiniz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*skntEzfg_cM8VjXbwRPLFw.png" /><figcaption>Token — 3</figcaption></figure><p>Token’ı oluşturduğumuza göre, şimdi bunu CodeArts projemizde kullanabiliriz. Projenizde ‘Settings &gt; General &gt; Service Endpoints’ kısmına gidin ve ardından ‘Create Endpoint’ butonuna tıklayın. Açılan açılır menüden ‘GitHub’ seçeneğini seçin.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*X36d6NmTGL3M4WMGVTdo5g.png" /><figcaption>Servis Uç Noktası — 1</figcaption></figure><p>Karşınıza bir pop-up penceresi açılacak; burada kimlik doğrulama yöntemi olarak ‘Access token’ı seçin ve az önce oluşturduğunuz token’ı buraya yapıştırın. Ardından ‘Verify and OK’ butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*DfXwTNY3fulfa3wu-tx4dQ.png" /><figcaption>Servis Uç Noktası — 2</figcaption></figure><p>Doğrulama tamamlandıktan sonra, aşağıdaki ekran görüntüsünde olduğu gibi, oluşturduğunuz endpoint’i görebileceksiniz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*79CqEm2ACzYl__DDGNi5lg.png" /><figcaption>Servis Uç Noktası — 3</figcaption></figure><p><strong>Adım 2️⃣: Build (Derleme) Görevi Oluşturma</strong></p><p>Artık GitHub deposunu CodeArts projemizle ilişkilendirdiğimize göre, uygulamayı oluşturmaya geçebiliriz. Menüden CICD &gt; Build yolunu izleyin ve ardından Create Task (Görev Oluştur) butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*JncUHar840pZzm-Pu_ZhwQ.png" /><figcaption>Build Task — 1</figcaption></figure><p>Daha sonra, göreve bir isim vermemiz ve kaynak kodunu seçmemiz gerekiyor. Kodu GitHub’dan içe aktardığımız için, GitHub’ı kaynak kodu olarak seçmeliyiz. Ardından, daha önce oluşturduğumuz servis uç noktasını (endpoint) seçeceğiz. Sonrasında ise, kaynak kodu deposunu ve ilgili dalı (branch) seçebiliriz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*BGMJm3FuApD08r9e_r3Dig.png" /><figcaption>Build Task — 2</figcaption></figure><p>Sonrasında, Maven şablonunu seçeceğiz ve ‘İleri (Next)’ butonuna tıklayacağız. Bu şablon, göreve gerekli adımları otomatik olarak ekleyecektir.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*_CS5OkonKbPRVnYGBCy6aw.png" /><figcaption>Build Task — 3</figcaption></figure><p>Burada, Maven projesi için otomatik olarak yapılandırılmış adımları görebiliriz. Bu, her adımı tek tek yapılandırma gerekliliğini ortadan kaldırarak süreci basitleştirir. Artık sadece ‘Oluştur ve Çalıştır (Create and Run)’ butonuna tıklamamız yeterli.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*epdfpJYmMxnG4dc8XNo2nA.png" /><figcaption>Build Task — 4</figcaption></figure><p>Ardından, logları gerçek zamanlı olarak izleyebileceğiniz yeni bir sayfa açılacaktır. Gördüğünüz gibi, görevimiz bir dakikadan kısa sürede başarıyla tamamlandı.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*yen0ZUfur-zjf83_QVAQJA.png" /><figcaption>Build Task — 5</figcaption></figure><p>Derleme (build) sonucunu CodeArts Artifact üzerinden de görüntüleyebilirsiniz. Bunun için “Artifact &gt; Release Repos” bölümüne giderek, oluşturulan yapı görevinden üretilen paketi inceleyebilirsiniz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*2_t-aH2ydhVnTHQPbhLpCg.png" /><figcaption>Derleme Pakedi</figcaption></figure><p><strong>Adım 3️⃣: Bir Dağıtım (Deploy) Görevi Oluşturma</strong></p><p>Derleme görevini tamamladık ve paketi elde ettik. Şimdi ise uygulamamızı internete açık hale getirmek için bir dağıtım (deploy) görevi oluşturalım. Bunun için CICD &gt; Deploy menüsüne gidin ve “Create Application” (Uygulama Oluştur) butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*D7wtJgrcd445jZ9jdxJTAA.png" /><figcaption>Deploy Task — 1</figcaption></figure><p>Burada, görevin adını belirleyin ve ardından ‘İleri’ye tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*XM14YMBuzfwWj3-R71g3Aw.png" /><figcaption>Deploy Task — 2</figcaption></figure><p>Sonraki adımda, ‘Deploy a Spring Boot Application’ adlı bir şablon seçeceğiz ve tıpkı build görevi gibi, bu şablon görevimizdeki bazı adımları otomatik olarak yapılandıracaktır.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*ER9FtRyRNCLTqrDCqDpvsQ.png" /><figcaption>Deploy Task — 3</figcaption></figure><p>Deploy görev sayfası açıldıktan sonra, “Environment Management” (Ortam Yönetimi) seçeneğine tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*dkw2X8wddTyEBO0cRYDtsQ.png" /><figcaption>Deploy Task — 4</figcaption></figure><p>Ortam yönetimi sayfasında, bir ortam oluşturmak için ‘Create Environment’ (Ortam Oluştur) butonuna tıklayın ve ECS sunucusunu bu ortama ekleyin. Eklendikten sonra aşağıdaki ekran görüntüsüne benzer bir görünüm elde edeceksiniz. Konfigürasyonu tamamladıktan sonra ‘Parameters’ (Parametreler) butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*fIJ2d1AastPjIyUOUk5_bg.png" /><figcaption>Deploy Task — 5</figcaption></figure><p>Bu Spring Boot şablonunda bazı parametrelerin doldurulması gerekiyor. Parametre ayarlarını aşağıdaki ekran görüntüsünde gösterildiği şekilde düzenleyin. Ardından, ‘Deployment Actions’ (Dağıtım İşlemleri) butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*2QzDqM1XBcCiAiDQu2Qiqg.png" /><figcaption>Deploy Task — 6</figcaption></figure><blockquote>Bu adımlarda, benimle aynı ayarları adım adım yapın.</blockquote><p>JDK Kurulumu: Burada herhangi bir değişiklik yapmıyoruz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*WTFRtJRulhgBUflAfuU_Cg.png" /><figcaption>Deploy Task — 7</figcaption></figure><p>Dağıtım Kaynağı Seçin: Burada kaynak olarak ‘Build task’ı seçeceğiz. Ardından, daha önce oluşturduğumuz build task’ı seçin. İndirme yolu için ‘/usr/local’ kullanılabilir.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*g53LMMpgE429EkhZ3-7EeQ.png" /><figcaption>Deploy Task — 8</figcaption></figure><p>SpringBoot’u Durdur: Bu adımda aynı mutlak yolun kullanıldığından emin olun.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*a5D_juGjQFB2Ui0xn8ezDg.png" /><figcaption>Deploy Task — 9</figcaption></figure><p>SpringBoot’u Başlat: Bu adımda aynı mutlak yolun kullanıldığından emin olun.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*LW85oos1N1qGtFlx5dMq1w.png" /><figcaption>Deploy Task — 10</figcaption></figure><p>URL Üzerinden Sağlık Kontrolü: Bu egzersizde bu adımı devre dışı bırakacağız.</p><p>Tüm yapılandırmalar tamamlandıktan sonra, ‘Save &amp; Deploy’ butonuna tıklayabiliriz ve bir pop-up açılacaktır. Aşağıdaki ekran görüntüsünde gösterildiği gibi boş formu doldurup ardından ‘OK’ butonuna tıklayacağız.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*EGsMO73mxLBRvHuFqA7aiQ.png" /><figcaption>Deploy Task — 11</figcaption></figure><p>Build task’ta yaptığımız gibi, burada da gerçek zamanlı logları izleyebiliriz. Gördüğünüz gibi, görev sadece yaklaşık bir dakika içinde başarıyla tamamlandı.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*4BxUH3w9td9FYbweSzBEgw.png" /><figcaption>Deploy Task — 12</figcaption></figure><p>Aşağıdaki ekran görüntüsüne de bakabilir ve uygulamaya İnternet üzerinden erişebildiğimizi görebilirsiniz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*JFOzmIIuawo4jXsXlnM2cg.png" /><figcaption>Uygulama Sayfası — 1</figcaption></figure><p><strong>Adım 4️⃣: Bir pipeline görevi oluşturma</strong></p><p>Uygulama yayında, şimdi bu build ve deploy görevlerini kullanarak nasıl pipeline oluşturabileceğimizi görelim. ‘CICD &gt; Pipeline’ menüsüne gidin ve ‘Create Pipeline’ butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*kt9ZqjnbsZ5FIeoU5ALULw.png" /><figcaption>Pipeline Task — 1</figcaption></figure><p>Burada pipeline’a bir isim vereceğiz ve ardından build task oluştururken yaptığımız gibi repository’yi seçeceğiz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*7pzt9xtSkcIPz5bToud-1g.png" /><figcaption>Pipeline Task — 2</figcaption></figure><p>Burada boş şablon ile devam edeceğiz.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*8PODYKMl_WL_PM7Ei9fXBw.png" /><figcaption>Pipeline Task — 3</figcaption></figure><p>Pipeline hazır, şimdi yapılandıracağız. Pipeline’ı aşağıdaki ekran görüntüsünde gösterildiği gibi yapılandırın ve ardından ‘Execution Parameters’ butonuna tıklayın.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*VgtcutQYxp1zGp15Wool0w.png" /><figcaption>Pipeline Task — 4</figcaption></figure><p>Burada, GitHub repository’mizde commit yaptığımızda bu pipeline’ın çalışması için code commit seçeneğini etkinleştireceğiz. ‘Save’ butonuna tıklayın ve ardından GitHub’a geçelim.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*kUaNXKldIK1-ZlgiFNavmw.png" /><figcaption>Pipeline Task — 5</figcaption></figure><p>Sonraki adımda küçük bir değişiklik yapıp ardından commit edeceğim.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*XQljvziRX7IPTjBc0VSOaw.png" /><figcaption>Pipeline Task — 6</figcaption></figure><p>Commit yaptıktan sonra pipeline herhangi bir gecikme olmadan otomatik olarak başlar. İşte bu, bu egzersizle başarmak istediğimiz şeydi.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*7fHUA_iJILH9ejtzEQkpfw.png" /><figcaption>Pipeline Task — 7</figcaption></figure><p>Şimdi, değişiklikleri tarayıcıdan inceleyelim. Pipeline başarıyla tamamlandı, peki herhangi bir fark var mı? Hadi bakalım… Aşağıdaki ekran görüntüsünde gösterildiği gibi, farklar görünür durumda ve egzersizimiz artık tamamlanmış oldu.</p><figure><img alt="" src="https://cdn-images-1.medium.com/proxy/1*cFB1Fs6PlYVpkiK71tRhIw.png" /><figcaption>Uygulama Sayfası — 2</figcaption></figure><h3>Sonuç</h3><p>Bu egzersizde, GitHub erişim token’ı oluşturduk ve bunu CodeArts projesinde bir servis uç noktası olarak entegre ettik. Böylece repository’yi CodeArts içinde kullanabilmiş ve commit’leri izleyerek pipeline’ı tetikleyebilmiş olduk. Bu senaryo, kaynak kodunuzu GitHub’da tutarken aynı zamanda CodeArts servislerinden yararlanmanız gerektiğinde özellikle faydalı olabilir. (Ek tetikleme seçenekleri gibi avantajlar için kodunuzu CodeArts Repo’da da tutmanızı öneririm.) Bu makale temel bir rehber niteliğindedir; görevlerinize ve iş ihtiyaçlarınıza göre uyarlayabilir ve özelleştirebilirsiniz. Bir sonraki makaleye kadar, kendinize iyi bakın!</p><h4>Referanslar</h4><ul><li><a href="https://support.huaweicloud.com/intl/en-us/usermanual-pipeline/pipeline_01_0011.html">Service Endpoints_CodeArts Pipeline_User Guide</a></li><li><a href="https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens">Managing your personal access tokens - GitHub Docs</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8f7edde18798" width="1" height="1" alt=""><hr><p><a href="https://medium.com/huawei-developers-tr/%EF%B8%8Fgithub-access-token-ile-codearts-pipeline-kullan%C4%B1m%C4%B1-8f7edde18798">☁️GitHub Access Token ile CodeArts Pipeline Kullanımı</a> was originally published in <a href="https://medium.com/huawei-developers-tr">Huawei Developers - Türkiye</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>