I’m working in the DevOps team of KoçSistem. The company has many products and projects of its own. And as the DevOps team, we are designing the DevOps cycle for all our projects and products.

We are using Azure DevOps for our pipelines. And we decided to use SonarQube to measure the code quality for all our projects. We have been using both for about three years now. Our SonarQube setup is an on-premise setup running with docker-compose and it’s been running smoothly.

Recently, we wanted to enable SSL on our SonarQube for security measures. I checked the official documents…


Modern dünyada web uygulamaları hayatımızın her yerinde. Market, giyim, oyun vb. hemen her şeyin alışverişini online yapabiliyoruz. Alışveriş dışında okul, haber, kitap gibi temel günlük ihtiyaçlarımızı da online karşılamaya başladık. Taksi çağırma, araba kiralama, dava durumunu kontrol etme gibi detay işler bile online yapılabiliyor.

Web uygulamaları hayatımızın içine bu kadar çok girince ve bu kadar büyük kitlelere yayılınca kesintilerin maliyetleri de artmaya başladı. Bugün çoğu büyük yazılım firması uygulama geçişlerinde kesinti yaşatmamak için zero downtime deployment’a geçmiş durumda.

Bu yazıda size Azure Kubernetes Service üzerinde bir zero downtime türü olan canary release’i nasıl yapabileceğinizi anlatacağım. …


Photo by Tobias Tullius on Unsplash

2. Bölüm — Cluster Güvenliği

Erişim

  • Cluster güvenliği konusundaki en önemli konulardan biri API Server’a erişimin kısıtlanmasıdır. Eğer API Server’ı dışarıya tamamen kapatmak istiyorsanız private bir cluster kurarsınız. Private cluster, private link’e ait tüm kısıtlamalara tabidir. Bunun dışında farklı kısıtlamaları da vardır. İkinci yöntem ise public bir cluster kurup API Server erişiminin yalnızca belirli ip’lerden yapılmasına izin vermektir. Böylece, örneğin şirket network’ünüz dışından cluster’ınızın API Server’ına erişilmesini engelleyebilirsiniz.
  • API Server’a erişirken herhangi bir IP kısıtlaması yapmak istemiyorsunuz, cluster’ınızı da public kurdunuz fakat API Server erişimini Active Directory ile yapmak istiyorsunuz diyelim. Azure Active Directory ile Kubernetes RBAC’i entegre ederseniz API Server erişimini kolayca kısıtlayabilirsiniz. …


Photo by frank mckenna on Unsplash

Azure Kubernetes Service (AKS) container orchestration konusunda de-facto hale gelmiş Kubernetes aracının Azure tarafından yönetilen servisine verilen isim. Bu makalede AKS kurulumu ve kullanımı sırasında dikkat edilmesi gereken püf noktalara, Microsoft’un kendi kaynaklarından ve yaşanmış tecrübelerden edindiğim bilgilerle değinmeye çalışacağım.

1. Bölüm — Cluster İzolasyonu ve Yetki Yönetimi

Genelde şirketler uygulamalarını cloud üzerine taşırken pilot olarak seçtikleri uygulamayı düşünürler ve platformları ona göre dizayn ederler. Fakat hem cloud genelinde hem de AKS özelinde uygulamalarınızı taşırken birden fazla uygulamanızın cloud’a taşınacağını varsayıp, bu uygulamaların fiziksel veya mantıksal olarak nasıl ayrılacağını hesaba katmanız gerekir.

Benzer şekilde, aynı uygulamada çalışan onlarca farklı takım, her takımın Dev-Test-Prod ortamları olacaktır. …


Photo by Ludovic Charlet on Unsplash

Kubernetes container dünyası için de-facto haline gelmiş open source bir yönetim platformu. Birçok şirket tüm uygulamalarını on-premise, cloud veya hybrid cloud üzerinde koşan Kubernetes cluster’larında çalıştırıyor.

Birden fazla uygulamayı aynı Kubernetes cluster’ı üzerinde çalıştırıyorsanız bu uygulamaların birbirlerini etkilemediklerinden, cluster’ın kaynaklarını doğru bir şekilde kullandıklarından emin olmak zorundasınız. Aksi halde bir uygulamada yaşanacak sorun diğer tüm uygulamaları etkileyebilir. Bu yazıda Kubernetes üzerinde koşan pod ve container’ların memory, CPU kullanımlarını nasıl yönetebileceğinizi anlatmaya çalışacağım.

Kubernetes’te container’ların kaynak kullanım sınırları request ve limitlerle belirlenir.

Request

Request, bir container’ın kubernetes cluster üzerinde ayağa kalkması için ihtiyacı olan minimum kaynağı belirler. Örneğin, 3 node’lu bir cluster…


Photo by Hussain Badshah on Unsplash

Istio Kubernetes üzerine Istioctl ile, Helm ile, Operator olarak veya Multicluster kurulumu ile yüklenebiliyor. Kurulum çok detaylı ve konfigüre edilebilir olmakla beraber, yeni başlayanlar için istioctl ve demo profili ile kurulması tavsiye ediliyor. Mevcut profiller aşağıdaki gibi:

Not: Istio’nun dokümanında 1.4 versiyonunun Kubernetes 1.13, 1.14 ve 1.15 versiyonlarıyla denendiği belirtilmiş. Dolayısıyla 1.12 ve önceki Kubernetes sürümlerinde Istio’nun önceki versiyonlarına dönmek gerekebilir.

Istioctl Kurulumu

Istioctl Windows’a kurulabiliyor fakat orijinal doküman Linux scriptleriyle çalıştığı için Linux kurulumunu takip ediyoruz. Istioctl’in son release’ini kurmak için aşağıdaki komutu çalıştırmak yeterli:

curl -L https://istio.io/downloadIstio | sh -

Alternatif olarak, istediğiniz versiyonu aşağıdaki gibi bir komutla kurabilirsiniz:

curl…

Bartu Gözet

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store