Takip et

Amazon EKS’de Uygulama Dağıtımı: Başlangıç Rehberi

Amazon EKS’de Uygulama Dağıtımı: Başlangıç Rehberi

Merhaba! Fatih Soysal burada. Bu rehberde, Amazon Elastic Kubernetes Service (EKS) kullanarak uygulamalarınızı nasıl dağıtacağınızı adım adım öğreneceksiniz. Kubernetes kavramına yeniyseniz bile, bu rehber sizi baştan sona taşıyacaktır. Öncelikle, Kubernetes’in ne olduğunu ve neden EKS’yi tercih etmeniz gerektiğini anlamamız gerekiyor.

Kubernetes Nedir ve Neden EKS?

Kubernetes, container’larınızı (Docker gibi) yönetim ve ölçeklendirme için kullanılan açık kaynaklı bir platformdur. Uygulamalarınızı birçok sunucuya yayarak yüksek erişilebilirlik ve esneklik sağlar. Ancak, Kubernetes’i kendi başınıza kurup yönetmek oldukça karmaşıktır. İşte tam burada Amazon EKS devreye giriyor. EKS, Kubernetes’in yönetimini Amazon’a bırakarak size kolaylık ve güvenilirlik sunan, tam yönetimli bir servistir. Bu sayede altyapı yönetimiyle uğraşmadan, uygulamanızın dağıtımına odaklanabilirsiniz.

EKS ile Uygulama Dağıtımı: Adım Adım

Şimdi, pratik bir uygulama ile EKS’de uygulama dağıtımını inceleyelim. Örneğin, basit bir Node.js uygulaması dağıtacağız. Öncelikle, bir Dockerfile oluşturup uygulamanızı Docker image’ına dönüştürmemiz gerekiyor. Ardından, bu image’ı Amazon Elastic Container Registry (ECR) adlı bir depoya yükleriz.

1. Dockerfile Oluşturma:


FROM node:16

WORKDIR /app

COPY package*.json ./

RUN npm install

COPY . .

CMD [ "node", "index.js" ]

Bu Dockerfile, Node.js 16 tabanlı bir image oluşturur, bağımlılıkları yükler ve uygulamanızı çalıştırır. Daha sonra, bu Dockerfile’ı kullanarak bir image oluşturabilir ve ECR’ye yükleyebilirsiniz.

2. ECR’ye Image Yükleme:

ECR’ye image yüklemek için AWS CLI’ı kullanabilirsiniz. Ayrıntılı komutlar için AWS dokümantasyonuna bakabilirsiniz. AWS ECR Dokümantasyonu Bu adımda, image’ınızın ECR’de güvenli bir şekilde depolanmasını sağlıyoruz.

3. Kubernetes Deployment Oluşturma:

Sonrasında, Kubernetes Deployment’ı oluşturarak uygulamanızı EKS’de dağıtabilirsiniz. Bu Deployment, uygulamanızın replika sayısını, image’ını ve diğer konfigürasyonlarını tanımlar. Aşağıda örnek bir Deployment manifest dosyası gösterilmiştir:


apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-node-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: my-node-app
  template:
    metadata:
      labels:
        app: my-node-app
    spec:
      containers:
      - name: my-node-app
        image: <your-ecr-image-uri>
        ports:
        - containerPort: 3000

Bu dosyayı kubectl apply -f deployment.yaml komutu ile EKS kümenize uygulayabilirsiniz. Uygulamanız artık EKS’de çalışıyor! Bu deployment, uygulamanızın 3 replikasını çalıştıracaktır. Yani, bir sunucu arızası durumunda uygulamanız kesintisiz çalışmaya devam edecektir. Ayrıca, ihtiyaç duyduğunuzda kolayca ölçeklendirebilirsiniz.

4. Uygulamanın Ölçeklendirilmesi ve Yönetimi

EKS, uygulamanızı kolayca ölçeklendirmenize olanak tanır. Trafiğiniz arttığında, replika sayısını artırarak daha fazla kaynak sağlayabilirsiniz. Aynı şekilde, trafiğiniz azaldığında replika sayısını azaltarak maliyetleri düşürebilirsiniz. Uygulamanızın durumunu izlemek ve yönetmek için kubectl komutlarını ve AWS konsolunu kullanabilirsiniz. EKS yönetimi için daha derinlemesine bilgi için, web sitemi ziyaret edebilirsiniz. Bu konuda daha fazla içerik paylaşmayı planlıyorum.

Bu rehber, EKS’de uygulama dağıtımına giriş yapmanıza yardımcı oldu. Ancak, daha karmaşık senaryolar ve Kubernetes konseptleri hakkında daha fazla bilgi edinmeniz gerekebilir. Örneğin, Servis keşfi, ConfigMaps, Secrets ve Ingress gibi konular uygulama dağıtımınızı optimize etmenize yardımcı olacaktır. Öğrenmeye devam edin ve bulut yolculuğunuza devam edin!

#Etiketler: Amazon EKS, Kubernetes, Uygulama Dağıtımı, Docker, Container, Bulut Bilişim, ECR, Deployment, kubectl, Ölçeklendirme, Node.js, Fatih Soysal


Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.