Skip to content

Commit

Permalink
Merge pull request #2907 from cncf/dev-tr
Browse files Browse the repository at this point in the history
[tr] Merging the `dev-tr` branch into main branch
  • Loading branch information
seokho-son authored Feb 24, 2024
2 parents 9339e72 + fa499f5 commit 1ba241f
Show file tree
Hide file tree
Showing 38 changed files with 1,369 additions and 0 deletions.
8 changes: 8 additions & 0 deletions config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,14 @@ weight = 13
[languages.ja.params]
description = "CNCF クラウドネイティブ用語集プロジェクトは、クラウドネイティブアプリケーションについて話すときに使われる一般的な用語のリファレンスとして使用することを目的としています。"

[languages.tr]
title = "Cloud Native Sözlüğü"
description = "CNCF Cloud Native Sözlüğü projesi, cloud native uygulamalardan bahsederken kullanılan yaygın terimler için bir referans olarak kullanılmak üzere tasarlanmıştır."
languageName ="Türkçe (Turkish)"
contentDir = "content/tr"
# Weight used for sorting.
weight = 14

[markup]
[markup.goldmark]
[markup.goldmark.renderer]
Expand Down
41 changes: 41 additions & 0 deletions content/tr/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
title: "Cloud Native Sözlüğü"
status: Completed
---

# Cloud Native Sözlüğü

Cloud Native Sözlüğü, karmaşıklığı ile ünlü olan cloud native alanının yalnızca teknoloji uzmanları için değil, herkes için anlaşılabilir olmasını hedeflemektedir. Basitliğe odaklanan sözlük, CNCF Business Value Subcommittee (BVS) tarafından yönetilen bir projedir.

<p><img class="mt-3" src="/images/homepage/kubecon.jpg" alt="Kubecon sunumu izleyen insanlar"></p>

## Katkıda Bulunma

Cloud Native Sözlüğü, ekleme, değişiklik veya iyileştirme yaparak katkıda bulunmak isteyen herkese açıktır. Paylaşılan sözlüğün iyileştirilmesi ve geliştirilmesi için CNCF tarafından yönetilen topluluk odaklı bir süreç benimsenmiştir. Bu sözlük, cloud native teknolojileri çerçevesinde ortak bir kelime dağarcığı oluşturmak amacıyla şirketlerden bağımsız bir platform sağlar. Projenin amacına ve tüzüğüne bağlı kalan tüm katılımcıların katkıları memnuniyetle karşılanmaktadır.

Katkıda bulunmak isteyen herkes, bir GitHub issue veya pull request oluşturabilir. Lütfen [Stil Kılavuzu](/tr/style-guide/)'nu inceleyip takip ettiğinizden, [Nasıl Katkı Yapabilirim?](/tr/contribute/) dokümanını okuduğunuzdan, [CNCF'in Slack topluluğuna](https://communityinviter.com/apps/cloud-native/cncf) katıldığınızdan ve [#glossary](https://cloud-native.slack.com/archives/C02TX20MQBB) kanalına dahil olduğunuzdan emin olun. Ayrıca Cloud Native Sözlüğü'nü kendi ana diline çevirmek isteyenler için [#glossary-localizations](https://cloud-native.slack.com/archives/C02N2RGFXDF) isimli bir kanal da bulunmaktadır. Türkçe çeviriye katkıda bulunmak için [#glossary-localizations-turkish](https://cloud-native.slack.com/archives/C05ATBGLHJ7) kanalına dahil olabilirsiniz.

## Teşekkürler

Cloud Native Sözlüğü, CNCF Pazarlama Komitesi (Business Value Subcommittee) tarafından başlatılmıştır ve
[Catherine Paganini](https://www.linkedin.com/in/catherinepaganini/en/),
[Chris Aniszczyk](https://www.linkedin.com/in/caniszczyk/),
[Daniel Jones](https://www.linkedin.com/in/danieljoneseb/),
[Jason Morgan](https://www.linkedin.com/in/jasonmorgan2/),
[Katelin Ramer](https://www.linkedin.com/in/katelinramer/),
[Mike Foster](https://www.linkedin.com/in/mfosterche/)
ve daha pek çok kişinin katkılarını içermektedir.
Katkıda bulunanların tam listesini [bu GitHub sayfasından](https://github.com/cncf/glossary/graphs/contributors) görebilirsiniz.

Projenin Türkçe yerelleştirilmesi
[Ali Ok](https://www.linkedin.com/in/aliok/),
[Halil Bugöl](https://www.linkedin.com/in/halilbugol/),
[Batuhan Apaydın](https://www.linkedin.com/in/bthnapydin/),
[Emin Alemdar](https://www.linkedin.com/in/emin-alemdar/),
[Şeyma Demir](https://www.linkedin.com/in/seymademir/)
ve [Oğuzhan Özdemir](https://www.linkedin.com/in/aoguzhanozdemir) tarafından yürütülmektedir.

## Lisans

Tüm kod katkıları Apache 2.0 lisansı kapsamındadır.
Dokümantasyon CC BY 4.0 altında dağıtılmaktadır.
16 changes: 16 additions & 0 deletions content/tr/abstraction.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
title: Soyutlama
status: Completed
category: Nitelik
tags: ["temel kavram", "", ""]
---

Bilişimde soyutlama (abstraction), bir hizmet kullanıcısından (bu bir program veya insan olabilir) ayrıntıları gizleyip, bir sistemi daha genelleyici ve kolay anlaşılır hale getiren bir temsildir.
Bilgisayarlarımızın işletim sistemi buna iyi bir örnektir; bilgisayarın nasıl çalıştığına dair tüm ayrıntıları soyutlar.
İşlemci, bellek ve programların nasıl yönetildiği hakkında bir şey bilmenize gerek yoktur.
Yapılması gereken sadece işletim sistemini çalıştırmaktır, detaylarla işletim sistemi ilgilenir.
Tüm bu detaylar işletim sistemi "perdesi" ya da diğer adıyla soyutlamanın arkasına gizlenmiştir.

Tipik olarak sistemler birden fazla soyutlama katmanına sahiptir ve bu durum geliştirmeyi büyük ölçüde basitleştirir.
Programlama esnasında geliştiriciler, belirli bir soyutlama katmanıyla uyumlu bileşenler oluştururlar ve bunu yaparlarken farklı yapıdaki temel özellikler hakkında endişelenmelerine de gerek yoktur.
Arka planda ne olursa olsun, soyutlama katmanıyla çalışıyorsa sistemle birlikte de çalışacaktır.
26 changes: 26 additions & 0 deletions content/tr/agile-software-development.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
title: Çevik Yazılım Geliştirme
status: Completed
category: concept
tags: ["yöntem", "", ""]
---

## Nedir

Çevik yazılım geliştirme, tekrarlayan geliştirme döngülerini ve kendi kendini organize eden ekipleri vurgulayan bir dizi uygulamadır.
Değerin yalnızca projenin sonunda üretildiği şelale tarzı projelerin aksine, çevik yazılım geliştirme,
değerin sürekli ve kademeli olarak sunulmasına ve sürecin kendisinin evrimsel olarak gelişimine odaklanır.

## Hangi Sorunları Çözer

Bir yazılım projesindeki tüm paydaşlar için  gereksinimleri tanımlamak, iletmek ve anlamak imkansız olmasa da çok zordur.
Yine de müşteriler yazılım projelerinin zamanında, iyi kalitede, bütçe ve kapsama uygun olarak teslim edilmesini isterler.
Döngüsel doğasıyla çevik yazılım geliştirme, şelale tarzı stratejilerin aksine gereksinimlerin sürekli uyarlanması
ve diğer tüm koşullara daha hızlı adaptasyonu sağlar. 

## Nasıl Yardımcı Olur

Çevik yazılım geliştirme, gereksinim mühendisliği, planlama, uygulama, gözden geçirme, test etme ve teslim etme gibi geleneksel stratejilerin (şelale tarzı) tüm aşamalarını içerir.
En büyük fark, bir yazılım projesinin tüm zaman diliminin, her biri tüm bu aşamaları içeren tekrarlara bölünmesidir.
Her tekrardan sonra, yaratılan değer müşteri ile birlikte gözden geçirilebilir ve gereksinimler hedefe doğru ayarlanabilir.
Ek olarak, geliştirme ekibi sürecin kendisini iyileştirmek için hangi adımların atılacağını geriye dönük olarak inceler.
18 changes: 18 additions & 0 deletions content/tr/api-gateway.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
title: API Geçidi
status: Completed
category: Teknoloji
tags: ["ağ", "", ""]
---

## Nedir

[API](../application-programming-interface/) geçidi, benzersiz uygulama API’lerini bir araya toplayarak hepsinin tek bir yerde kullanılabilir olmasını sağlayan bir araçtır. Organizasyonların kimlik doğrulama, yetkilendirme ve istek sayısını sınırlandırma gibi temel işlevlerin merkezi bir konumdan yönetilmesini sağlar. Bir API geçidi, API tüketicilerine yönelik ortak bir arayüz işlevi görür.

## Hangi Sorunları Çözer

API’leri harici kullanıcıların kullanımına sunuyorsanız tüm erişimi yönetmek ve kontrol etmek için tek bir giriş noktası istersiniz. Ayrıca bu etkileşimlere işlevsellik uygulamaya ihtiyaç duyuyorsanız bir API geçidi, uygulamada kod değişikliği gerektirmeden trafiğe eşit şekilde uygulamanızı sağlar.

## Nasıl Yardımcı Olur

Bir uygulamadaki çeşitli API’ler için tek bir erişim noktası sağlayan API geçitleri, organizasyonların birbiriyle kesişen iş veya güvenlik mantığını merkezi bir konumdan uygulamasını kolaylaştırır. Ek olarak API’ler uygulama tüketicilerin ihtiyaçları için tek bir adrese başvurmalarına olanak sağlar. API geçidi, sistemdeki tüm web servislerine yönelik istekler için tek bir erişim noktası sağlayarak güvenlik ve gözlemlenebilirlik gibi işlemsel kaygıları basitleştirir. Tüm istekler API geçidi üzerinden geçtiği için metrik toplama, hız sınırlama ve yetkilendirme gibi işlevlerin eklenebileceği tek bir yer sunar.
21 changes: 21 additions & 0 deletions content/tr/application-programming-interface.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---

title: Uygulama Geliştirme Arayüzü (API)
status: Completed
category: Teknoloji
tags: ["mimari", "temel kavram", ""]
---

## Nedir

API, bilgisayar programlarının birbirleriyle etkileşime girmesinin bir yoludur. İnsanların bir web sitesiyle web sayfası aracılığıyla etkileşime girmesi gibi bilgisayar programları API aracılığıyla birbirleriyle etkileşime girer. İnsan etkileşimlerinin aksine, API’lerin kendilerinden ne istenip ne istenmeyeceği konusunda sınırlamaları vardır. Bu sınırlamalar, programlar arasındaki iletişimin istikrarlı ve işlevsel olmasına yardımcı olur.

## Hangi Sorunları Çözer

Uygulamalar karmaşıklaştıkça küçük kod değişikliklerinin diğer işlevler üzerinde ciddi etkileri olabilir. Uygulamalar hem büyüyüp hem de istikrarlarını sürdürebilmeleri için modüler bir yaklaşıma ihtiyaç duyarlar. API’ler olmadan, uygulamalar arasındaki etkileşim için yapı eksikliği söz konusudur. Paylaşılan bir yapı olmadan uygulamaların ölçeklenebilmesi ve entegre edilmesi zordur.

## Nasıl Yardımcı Olur

API’ler, bilgisayar programlarının veya uygulamaların etkileşime girmesine ve tanımlanmış ve anlaşılır biçimde bilgi paylaşımına izin verir. Modern uygulamaların yapı taşlarıdır ve geliştiricilere uygulamaları birbirlerine entegre etme yolu sağlar. Mikroservislerin birlikte çalıştığını duyduğunuzda, bunların bir API aracılığıyla etkileşime girdiği sonucunu çıkarabilirsiniz.


30 changes: 30 additions & 0 deletions content/tr/blue-green-deployment.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
title: Blue Green Deployment
status: Completed
category: concept
tags: ["yöntem", "uygulama", ""]
---

## Nedir

Blue green deployment, çalışan bilgisayar sistemlerini minimum sistem kesintisiyle güncellemeye yönelik bir stratejidir. Operatör, “blue” ve “green” olarak adlandırılan iki ortamın devamlılığını sağlar.
Biri canlı trafiğe hizmet ederken (tüm kullanıcıların o an kullandığı sürüm), diğeri güncellenir.
Aktif olmayan (green) ortamda testler tamamlandıktan sonra, canlı trafiğe geçilir (genellikle bir yük dengeleyici kullanarak).
Blue-green deployment genellikle birçok servisten oluşan tüm ortamların tek seferde değiştirilmesi anlamına gelir.
Kafa karıştırıcı bir şekilde, bu terim bazen bir sistem içindeki tekil servisler için de kullanılmaktadır.
Bu belirsizliği önlemek için, tekil bileşenlere atıfta bulunurken sıfır sistem kesintili dağıtım (zero-downtime deployment) terimi tercih edilmelidir.


## Hangi Sorunları Çözer

Blue-green deployment, geriye dönük uyumluluk eksikliği nedeniyle “birbirine bağlı olarak” değiştirilmesi gereken yazılımları güncellerken minimum sistem kesintisi sağlar.
Örneğin, bir web sitesi ve güncellenmesi gereken bir veritabanından oluşan bir çevrimiçi mağaza için blue-green deployment uygun olacaktır.
Ancak, veritabanının yeni sürümü web sitesinin eski sürümüyle çalışmaz veya bunun tersi de geçerlidir.
Bu durumda, her ikisinin de aynı anda değiştirilmesi gerekir.
Eğer bu canlı ortamda yapılsaydı, müşteriler sistem kesintisini fark ederdi.


## Nasıl Yardımcı Olur

Blue-green deployment, minimum sistem kesintisiyle güncellenmesi gereken cloud native olmayan yazılımlar için uygun bir stratejidir.
Bununla birlikte, kullanımı eski yazılımın bileşenlerinin ayrı ayrı güncellenebilmesi için yeniden tasarlanması gerektiğinin bir göstergesidir.
28 changes: 28 additions & 0 deletions content/tr/canary-deployment.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
title: Canary Deployment
status: Completed
category: concept
tags: ["yöntem", "uygulama", ""]
---

## Nedir

Canary deployment, biri canlı trafiğe sahip orijinal kodu diğeri ise canlı trafik olmadan güncellenmiş kodu içeren iki ortamla başlayan bir dağıtım stratejisidir.
Trafik, uygulamanın orijinal sürümünden güncellenmiş sürümüne kademeli olarak taşınır.
Canlı trafiğin %1’ini taşıyarak başlanabilir, sonrasında %10, %25 gibi kademeli artışlarla tüm trafik güncellenmiş sürümde çalışana kadar böyle devam edilebilir.
Organizasyonlar yazılımın yeni sürümünü üretimde test edebilir, geri bildirim alabilir, hataları teşhis edebilir ve gerekirse hızlı bir şekilde kararlı sürüme geri dönebilir.

“Canary” terimi, madencileri güvende tutmak için kanaryaların kömür madenine götürüldüğü “kömür madenindeki kanarya” uygulamasına atıfta bulunmaktadır.
Bu uygulamada eğer kokusuz, zararlı gazlar ortamda mevcut ise kanarya ölür ve madenciler hızlı bir şekilde madeni tahliye etmeleri gerektiğini bilirler.
Benzer şekilde, güncellenen kodda bir sorun çıkarsa, canlı trafik orijinal sürüme geri aktarılır.

## Hangi Sorunları Çözer

Test stratejisi ne kadar kapsamlı olursa olsun, üretimde her zaman bazı hatalar bulunur.
Trafiğin %100’ünü bir uygulamanın bir sürümünden diğerine kaydırmak daha etkili hatalara neden olabilir.

## Nasıl Yardımcı Olur

Canary deployment, organizasyonların büyük ölçekte trafiği yeni sürüme taşımadan önce yazılımın gerçekte oluşabilecek senaryolarda nasıl davrandığını görmelerini sağlar.
Bu strateji, organizasyonların sistem kesintisini en aza indirmesini ve yeni dağıtımla ilgili sorunlar olması durumunda hızla önceki sürüme geri dönmesini sağlar.
Ayrıca, genel kullanıcı deneyimi üzerinde önemli bir etkisi olmadan derinlemesine üretim uygulaması testine olanak tanır.
27 changes: 27 additions & 0 deletions content/tr/client-server-architecture.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
title: İstemci-Sunucu Mimarisi
status: Completed
category: concept
tags: ["mimari", "temel kavram", ""]
---

## Nedir

İstemci-sunucu mimarisinde, bir uygulamayı oluşturan mantık (veya kod) iki veya daha fazla bileşen arasında bölünür.
Bunlar, işin yapılmasını isteyen bir istemci (örn. web tarayıcınızda çalışan Gmail web uygulaması) ve bu isteği karşılayan bir veya daha fazla sunucudur (örn. Google’ın buluttaki bilgisayarlarında çalışan “e-posta gönder” servisi).
Bu örnekte, yazdığınız e-postalar istemci (web tarayıcınızda çalışan uygulaması) tarafından bir sunucuya (Gmail’in giden e-postalarınızı alıcılarına ileten bilgisayarları) gönderilir.

Bu, tüm işi tek bir yerde yapan bağımsız uygulamaların (masaüstü uygulamaları gibi) tersidir.
Örneğin, Microsoft Word gibi bir kelime işleme programı bilgisayarınıza kurulabilir ve tamamen bilgisayar üzerinden çalıştırılabilir.

## Hangi Sorunları Çözer

İstemci-sunucu mimarisi, bağımsız uygulamaların karşılaştığı büyük bir zorluğu çözer: düzenli güncellemeler.
Bağımsız bir uygulamada, kullanıcıların her güncelleme için en son sürümü indirip yüklemesi gerekir.
Göz atabilmek için Amazon’un tüm ürün kataloğunu kendi bilgisayarınıza indirmek zorunda kaldığınızı hayal edin!

## Nasıl Yardımcı Olur

Uygulama mantığını uzak bir sunucu ya da serviste uygulayarak, operatörler istemci tarafındaki mantığı değiştirmeye gerek kalmadan bunu güncelleyebilirler.
Bu, güncellemelerin çok daha sık yapılabileceği anlamına gelir. Verilerin sunucuda depolanması, birçok istemcinin aynı verileri görmesini ve paylaşmasını sağlar.
Çevrimdışı bir kelime işleme programına kıyasla çevrimiçi bir kelime işleme programı kullanmak arasındaki farkı düşünün. Çevrimiçi programda, dosyalarınız sunucu tarafında bulunur ve bunları sunucudan indiren diğer kullanıcılarla paylaşılabilir. Oysa geçmişte, dosyaların çıkarılabilir medyaya (disketlere!) kopyalanması ve onun aracılığıyla paylaşılması gerekiyordu.
19 changes: 19 additions & 0 deletions content/tr/cloud-computing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: Bulut Bilişim
status: Completed
category: Kavram
tags: ["altyapı", "temel kavram", ""]
---

## Nedir

Bulut bilişim, internet üzerinden isteğe bağlı olarak CPU, ağ ve disk kapasiteleri gibi bilişim kaynaklarının sunulduğu, kullanıcıların uzaktaki fiziksel bir konumda bilgi işlem gücüne erişebildiği ve kullanabildiği bir hizmettir.
Genellikle, bulut altyapısının bir organizasyona ayrılmış olup olmadığına veya genele açık hizmetlerde paylaşılıp paylaşılmadığına bağlı olarak, özel veya genel bulut şeklinde bir ayrım yapılır.

## Hangi Sorunları Çözer

Organizasyonlar, bilgi işlem gücünü genişletmeye çalışırken geleneksel olarak iki temel zorlukla karşılaşır. Ya fiziksel sunucularını ve ağlarını barındırmak için yeni tesisler satın alır ve tasarlarlar, ya da mevcut tesislerini genişletip desteklerler. Bulut bilişim, organizasyonların bilgi işlem ihtiyaçlarının bir kısmını dış kaynak olarak kullanma imkanı tanıyarak bu zorluğu çözer.

## Nasıl Yardımcı Olur

Bulut sağlayıcıları, organizasyonların isteğe bağlı olarak bilişim kaynaklarını kiralama ve kullanımı için ödeme yapmasına izin vererek iki önemli avantaj sağlar. İlk olarak, organizasyonlar yeni fiziksel altyapı için beklemek, planlamak ve kaynak harcamak zorunda kalmadan ürün veya hizmetlerine odaklanabilirler. İkincisi, ihtiyaç duyuldukça talep üzerine kolayca ölçekleme imkanı elde ederler. Bulut bilişim, organizasyonların ihtiyaçlarına göre istedikleri kadar altyapıyı kullanmalarına olanak tanır.
23 changes: 23 additions & 0 deletions content/tr/cloud-native-apps.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
title: Cloud Native Uygulamalar
status: Completed
category: Kavram
tags: ["uygulama", "temel kavram", ""]
---

Cloud native uygulamaları, [bulut bilişimdeki](/cloud-computing/) yeniliklerden yararlanmak için özel olarak tasarlanmıştır.
Bu uygulamalar, bulutun kaynaklarından ve [ölçeklendirme](/scalability/) yeteneklerinden yararlanarak kendi bulut mimarileriyle kolayca entegre olurlar.
Ayrıca, bulut bilişim tarafından yönlendirilen altyapıdaki yeniliklerden yararlanan uygulamaları da ifade eder.
Günümüzde cloud native uygulamaları, bir bulut sağlayıcısının veri merkezinde ve şirket içi cloud native platformlarında çalışan uygulamaları içerir.

## Hangi Sorunları Çözer

Geleneksel olarak, şirket içi ortamlar bilişim kaynaklarını oldukça kişiye özel bir şekilde sağlardı.
Her veri merkezi, genellikle [sanal makineler](/virtual-machine/) ve servisler gibi altyapı için büyük ölçüde manuel tedariğe dayanan, uygulamaları belirli ortamlara [sıkı bir şekilde bağlayan servislere](/tightly-coupled-architectures/) sahipti.
Bu da geliştiricileri ve uygulamalarını belirli bir veri merkeziyle sınırlıyordu.
Bulut için tasarlanmayan uygulamalar, bir bulut ortamının esnekliğinden ve ölçeklendirme yeteneklerinden yararlanamıyordu.
Örneğin, doğru şekilde başlatmak için manuel müdahale gerektiren uygulamalar otomatik olarak ölçeklenemez ve bir arıza durumunda otomatik olarak yeniden başlatılamaz.

## Nasıl Yardımcı Olur

Cloud native uygulamalarına giden yolların "herkese uygun" olmasa da, bazı ortak yönleri vardır. Cloud native uygulamalar esnektir, yönetilebilir ve kendilerine eşlik eden bulut hizmetleri paketi tarafından desteklenir. Çeşitli bulut hizmetleri, kullanıcıların sorunları büyümeden önce tespit etmesini ve ele almasını sağlayan yüksek derecede [gözlemlenebilirlik](/observability/) sağlar. Etkin otomasyonla birleştiğinde, mühendislerin yüksek etkili değişiklikleri sık sık, öngörülebilir bir şekilde ve minimum zahmetle yapmalarına olanak tanır.
Loading

0 comments on commit 1ba241f

Please sign in to comment.