Merhabalar herkese, AWS ‘nin Container servislerinden biri olan ECS (Elastic Container Service) ile ilgili uzun bir yazı serisine başlıyorum. Hem teorik hem uygulamalı olarak planladığım bu yazı serisinde sadece ECS değil bir çok AWS servisini kullanıyor olacağız. Yaptıklarımı genelde not olarak tutmaya üşenen, şu detaya sonra bir ara bakarım diyip…

Bu yazımızda artık ECS için bir CI/CD sürecinin ilk aşaması olan CI için AWS CodeBuild servisini kullanacağız. Bir önceki yazımızda uygulamamızın kaynak kodlarını CodeCommit servisinde bir repository oluşturarak oraya taşımıştık. …

Bu bölümde ECS yazı dizisi boyunca kullandığımız daha önce GitHub linkini paylaştığım uygulamamızı AWS CodeCommit’de yeni bir repo oluşturup oraya taşıyacağız.

CodeCommit Dashbordundan Create Repository diyerek geçiş sürecini başlatalım.

Reponuza bir isim vererek repoyu oluşturalım. Repoyu oluşturduktan sonra sizi Connection Steps sayfası karşılayacak. Amazon burda yapılmasını gerekenleri çok güzel özetlemiş…

CI/CD süreçlerine geçmeden önce kullanacağımız iki adet deployment tipinden bahsedeceğim.

1- Rolling Update

ECS Servicelerinde rolling update tipinde dağıtım kullanıldığında, yeni bir service dağıtımı başlatıldığında ECS service zamanlayıcı, o anda çalışan taskları yeni tasklarla değiştirir.ECS’ in bir rolling update dağıtımı sırasında ECS service’e eklediği veya ECS service’den çıkarttığı taskların sayısı deployment configuration tarafından…

Application Load Balancer, application katmanında (HTTP/HTTPS) yönlendirme kararları alır, path-based routing’i destekler. Gelen istekleri clusterdaki bir veya daha fazla taskın bağlantı noktasına yönlendirir.

Biz de bu bölümde bir application load balancer oluşturup gelen istekleri ECS Servislerinde çalışan tasklara böleceğiz. Yazı serisinde kullandığımız uygulamanın faydasını da burada göreceğiz. Kullandığımız uygulama bize…

Bu bölümde [ ECS — V] ECS Fargate Task Definition Oluşturma yazısında oluşturduğumuz task definition ile fargate tipinde bir ECS service’i nasıl oluşturacağımızı inceleyeceğiz.

Service oluşturmaya başlamadan önce bu service nedir tasktan farkı nelerdir bunlara biraz değinelim. …

Bu bölümde bir cluster oluşturup bir önceki yazıda oluşturduğumuz task definition ile bir taskı nasıl oluşturacağımızı inceleyeceğiz.

Containerlarımızı Fargate ile sunucusuz bir clusterda oluşturacağız. Böylece yönetmek zorunda olduğumuz EC2 instance olmayacak. ECS servisinin dashbordundan create cluster diyerek başlayalım.

Task definitionlar, ECS’e bir Docker containerın nasıl çalıştıracağını söyleyen Json formatında meta verilerdir. Bizde bu bölümde bir önceki yazıda ECR reposuna göndermiş olduğumuz image ile bir task definition oluşturup detaylarını inceleyeceğiz.

ECS servisinin consolunda sağ tarafta bulunan task definitions sekmesine gidip “Create new Task Definition” dedikten sonra açılan sayfada fargate…

Bu yazımızda ECR servisinde bir repository oluşturarak imagelarımızı nasıl saklayacağımızı göreceğiz.

Linux için Docker Kurulumu
Dockerfile dosyalarının build edilip image oluşturabilmemiz için docker kurumu yapmamız gerekiyor.

Herhangi bir yükleme işleminden önce APT’yi yükseltin ve güncelleyin.

sudo apt update;sudo apt upgradesudo apt install docker.io

Docker’ı başlatır ve sistem her yeniden…

ECS
Amazon Elastic Container Service (Amazon ECS), bir clusterdaki containerları çalıştırmayı, durdurmayı ve yönetmeyi kolaylaştıran, oldukça ölçeklenebilir, hızlı bir container yönetim hizmetidir. Containerlarınız, taskları çalıştırmak için kullandığınız bir task definitionda tanımlanır. Tasklarınızı ve ECS Servicelerinizi AWS Fargate tarafından yönetilen sunucusuz bir altyapı üzerinde çalıştırabilirsiniz. Alternatif olarak, altyapınız üzerinde daha fazla kontrol…

Tahacan Atak

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