💻
Cheet Sheets
  • 🦁Başlarken
  • 🟧DevOps Pre-Requisite
    • ❤️Why Linux? | Linux Basics #1
    • 💛Vi Editor | Linux Basics #2
    • 💙Basics Commands | Linux Basics #3
    • 🧡Package Managers | Linux Basics #4
    • 💚Services | Linux Basics #5
    • 💛Networking Basics
    • 🤎DNS Basics
    • 🩶Applications Basics
    • 🟨Java introduction
    • 🟩NodeJS Introduction
    • 🟦Python Introduction
    • 🟪GIT Introduction
    • 🟧Apache Web Server Introduction
    • ⬛Apache Tomcat
    • 🟫Python Flask
    • 🟥Node.js Express App
    • 🟨Databases
    • 🟩MySQL
    • 🟪MongoDB
    • 🟨SSL & TLS
    • 🟦YAML & JSON - JSON Path
    • ⬛Labs Resources
  • 🍎Kubernetes
    • 🍏Kubernetes: Nedir ?
    • 🍒Bileşenler
    • 🍵Kubectl ve Versiyon
    • ❤️Pod
    • 🏷️Label ve Selector
    • 🔎Annotation
    • 📲Namespaces
    • 📦Deployments
    • 🔁ReplicaSet
    • 🔙Rollout & Rollback
    • 🌐Networking - 1
    • 🌏Service
    • 🛠️Liveness Probe & Readiness Probe
    • 🥐Resource Limits
    • 💰Environment Variables
    • 📃Ephemeral Volumes
    • 🔑Secrets
    • 🌂ConfigMap
    • 🖥️Node Affinity
    • 🔌Pod Affinity
    • ✍️Taint and Toleration
    • 🔦DaemonSet
    • 🧀PV/PVC
    • 🌜Storage Class
    • 🗿StatefulSet
    • 🕹️Job & Cronjob
    • 🔐Authentication
    • 📏Role-based access control (RBAC)
    • 🈷️Service Account
    • 📈Ingress
    • 📂ImagePullPolicy & ImageSecret
    • 📖Static Pods
    • 🌐Network Policy
    • 🫐Helm Nedir?
    • 📽️Prometheus Stack - Monitoring
    • 💼EFK Stack - Monitoring
    • 🥳CRD & Operator
  • 🧑‍⚕️GIT & GITHUB
    • 👉Girizgah
    • 🌴Branch
    • 🤝Merge
    • 🤔Conflict - Rebase
    • 🇸🇴Alias
    • 🛑Gitignore
    • 🥢Diff
    • ◀️Checkout
    • 🔦Stash
    • 👉Other
  • ☁️AWS
    • 🪣S3
    • 🚙EC2
    • ⚖️ELB
    • 🤝Auto Scaling
    • 🗄️EFS
    • 🔐VPC
    • 🎆CloudFront
    • ❤️Route53
    • 🦈RDS
    • 🏢ElastiCache
    • 🔭CloudWatch
    • 👀CloudTrail
    • 📃CloudFormation
    • 🔕SNS
    • 📬SQS
    • 🎇SWF
    • 📧SES
    • 📦Kinesis
    • 📐AWSConfig
    • 👩‍🏭OpsWork
    • 🚀Lambda - Api Gateway
    • 📌ECS - EKS
    • 🔑KMS
    • 📂Directory Service
    • 🏐Snowball
    • 💾Storage Gateway
    • 💽Volume Gateway
    • 📼Tape Gateway
    • 🏠Organizations
    • 🔙Backup-Transfer-CloudShell
    • 🆔IAM
    • 📀DataSync
    • 🗃️FSx
    • 🎒Aurora Serverless
    • 🌐Global Accelerator
    • 💪HPC
    • 🎰Outposts
    • 🗼Others
  • 👨‍🔬Ansible
    • 👉Girizhah
    • 📔YAML
    • ⚙️Komponentler
    • 🎒Inventory
    • 🏑ad-hoc
    • ▶️Playbook
  • 👨‍⚕️PROMETHEUS
    • 📈Terminoloji
    • 🦯Ubuntu 20.04 Prometheus Kurulum
    • 🗒️prometheus.yml dosyasına ilk bakış:
    • 🧭promQL up query
    • 📇Exporters
    • 🔦promQL Data Types
    • 🦯Selectors & Matchers
    • 🔢Binary Operators
    • 💀ignoring and on
    • ✍️Aggregation Operators
    • 🧠Functions
    • 🖊️Alıştırma
    • 💻Client Libraries
    • 🐍Examining the data of our Python application
    • 🐐Examining the data of our GO application
    • ⏺️Recording Rules
    • 💡rate functions
    • ⏰Alerting
    • ⌚Alert Routing
    • ⏰Slack integration with Prometheus
    • 🤯PagerDuty integration with Prometheus
    • ◼️BlackBox exporter
    • 📍Push Gateway
    • 🪒Service Discovery
    • 🧊kube cadvisor with external prometheus
    • 👉aws with prometheus
    • ☁️CloudWatch Exporter
    • 👨‍🚒mysql exporter
    • 🛃Custom exporter with Python
    • ⚙️Prometheus with HTTP API
    • 🤖Prometheus Federation For Kubernetes
    • 📺Grafana
    • ⁉️Prometheus: Ne zaman kullanılmalı? Ne zaman kullanılmamalıdır?
  • 🍪Sheets
    • 🛳️Docker Sheets
    • 🐐Kube Sheets
  • 🔢12 Factor APP
    • 🏗️Introduction
    • 1️⃣Codebase
    • 2️⃣Dependencies
    • 3️⃣Concurrency
    • 4️⃣Processes
    • 5️⃣Backing Services
    • 6️⃣Config
    • 7️⃣Build, release, run
    • 8️⃣Port binding
    • 9️⃣Disposability
    • 🔟Dev/prod parity
    • 🕚Logs
    • 🕛Admin processes
  • ☁️Azure 104
    • 👨‍👨‍👧‍👧Azure Active Directory ( Entra ID )
    • 💰Subscriptions
    • 🌎Virtual Network (VNET)
    • 💻Virtual Machines
    • 🧑‍🌾Load Balancing
    • 🥍Network Advanced
    • 🪡Automating Deployment and Configuration
    • 💂Securing Storage
    • 📓Administering Azure Blobs and Azure Files
    • 🔧Managing Storage
    • 🎁App Service
    • 🛳️Azure Container
    • 🥇Backup And Recovery
    • 🪐Network Watcher
    • ⏰Resource Monitoring And Alerts
  • ⛅AZURE 305
    • 🆔identity and access management
    • 💼Desing Azure AD (Entra ID)
    • 👨‍💼Desing for Azure B2B
    • 🛃Desing for Azure B2C
    • 💳Design for MFA and Conditional Access
    • ⛑️Design for Identity Protection
    • 🚶Access Reviews
    • 🚦Managed identity Demostration
    • 🔐Key Vault Demostration
    • 👑Governance hierarchy
    • 💠Design for Management Groups
    • 🔑Desing for Subscriptions
    • 🍇Desing for resource groups
    • 📟Design for resource tags
    • 🚷Azure Policy & RBAC
    • 🫐Desing For Blueprints
    • 🪡Desing for Virtual Networks
    • 🛫Design for on-premises connectivity to Azure
    • 🔽Design for network connectivity
    • 📦Design for application delivery
    • 🥞Design for network security and application protection
    • 📕Choose a compute solution
    • 🌊Design for virtual machines
    • 🔋Azure Batch Demostration
    • 🛰️Design for Azure App Service
    • ⛲Design for Azure Container Instances
    • 🎢Design for Azure Kubernetes Service
    • 📠Azure Functions Demostration
    • 💪Azure Logic Apps Demostration
    • 🧑‍💼Design for data storage
    • 🎞️Design for Azure storage accounts
    • 🌟Choose the storage replication
    • 📹Azure blob storage - Lifecycle & immutable demo
    • 🥌Azure Files Demostration
    • 🕸️Design Azure disks
    • 🦼Design for storage security
    • 🔮Azure Table Storage And Cosmos DB Demostration
    • 🟧Azure SQL Solutions
    • 🎡Azure SQL Database - Purchasing models
    • 🕯️Database availability
    • 📜Data security strategy
    • 🧮Azure SQL Edge
    • 🚲Azure Data Factory
    • 🔅Azure Data Lake Storage
    • 🧘‍♂️Azure Databricks
    • 🎒Azure Synapse Analytics
    • 🅰️Azure Stream Analytics
    • 📼Data flow strategy
    • 🍥Cloud Adoption Framework
    • ☣️Azure Migration Framework
    • 🦿Assessing workloads
    • 🪡Migration tools
    • 🤖Azure Database migration
    • 👥Storage migration
    • 👜Azure Backup
    • ⏲️Azure Blob Backup and Recovery
    • 💈Azure files backup and recovery
    • 🎞️Azure VM backup and recovery
    • 🧺Azure SQL backup and recovery
    • ⏰Azure Site Recovery
    • 📩Differentiate event and message
    • ✈️Azure messaging solutions
    • 🚜Event Hub
    • 🥍Application optimization solution
    • 🎁Application lifecycle
    • 📺Azure Monitor
    • 🅱️Log Analytics
    • 👥Azure workbooks and Insights
    • 🚌Azure Data Explorer
  • Github Actions
    • Github Actions Nedir?
    • Workflow & Schedule Triggers
    • Single and Multiple Events
    • Manuel Events
    • Webhook Events
    • Conditional Keywords For Steps
    • Expressions - 1
    • Expressions - 2
    • Runners
    • Workflow Commands
    • Workflow Context
    • Dependent Jobs
    • Encrypted Secrets
    • Configuration Variables
    • Default & Custom Env Varb
    • Set Env Varb with Workflow Commands
    • Github Token Secret
    • Add Script to workflow
    • Push Package #1
    • Push Package #2 Docker
    • Service Containers
    • Routing workflow to runner
    • CodeQL Step
    • Caching Package and Dependency Files
    • Remove workflow Artifact
    • Workflow Status Badge
    • Env Protection
    • Job Matrix Configuration
    • Disable & Delete Workflows
    • Actions type for Action
    • Inputs and Outputs for actions
    • Action Versions
    • Files and Directories for Actions
    • Exit Codes
    • Reusable Workflow & Reuse Templates for Actions and Workflows
    • Configure Self Hosted Runners for Enterprise
  • Loki
    • What is Loki?
    • Architecture of Loki
    • Install Loki For Ubuntu
    • Install Promtail For Ubuntu
    • Querying Logs
    • Loki in Kubernetes
    • Deploying Loki in Kubernetes
    • Connecting to Grafana
    • Viewing Kubernetes logs
    • Promtail Customize & Pipeline
  • Ansible
    • Ansible Introduction
    • Introduction to Ansible Configuration Files
    • Ansible Inventory
    • Inventory Formats
    • Ansible Variables
    • Variable Types
    • Registering Variables and Variable Precedence
    • Variable Scoping
    • Magic Variables
    • Ansible Facts
    • Ansible Playbooks
    • Verifying Playbooks
    • Ansible lint
    • Ansible Conditionals
    • Ansible Conditionals based on facts, variables, re-use
    • Ansible Loops
    • Ansible Modules
    • Introduction to Ansible Plugins
    • Modules and Plugins Index
    • Introduction to Handlers
    • Ansible Roles
    • Ansible Collections
    • Introduction to Templating
    • Jinja2 Templates for Dynamic Configs
  • 🅰️Ansible Advanced
    • Playbook run options
    • Facts
    • Configuration files
Powered by GitBook
On this page
  • Azure Container Instances;
  • Container groups;
  • Azure Kubernetes Services;
  • AKS Networking;
  • AKS Storage;
  • AKS Scaling;
  • AKS Bursting;

Was this helpful?

  1. Azure 104

Azure Container

PreviousApp ServiceNextBackup And Recovery

Last updated 1 year ago

Was this helpful?

Sanal Makineler:

  • Sanal makineler, tam teşekküllü bir işletim sistemi gerektirirler; her biri kendi işletim sistemine (Guest OS), kütüphanelerine ve bağımsız uygulamalarına sahiptir.

  • Bu yapılar, fiziksel donanım üzerinde hypervisor adı verilen bir aracı yazılım tarafından ayrılır ve yönetilir. Bu, her bir sanal makinenin kendi içinde tamamen izole edilmiş bir ortam oluşturmasını sağlar.

  • Sanal makinelerin her biri, fiziksel kaynakları (örneğin CPU, bellek) kendi aralarında bölüşür ve bu kaynaklar genellikle sabittir.

Containerlar:

  • Containerlar, işletim sistemini paylaşır ve böylelikle ayrı ayrı işletim sistemlerine (Guest OS) ihtiyaç duymazlar. Bunun yerine, her bir container sadece uygulamanın çalıştırılması için gerekli olan kütüphaneleri ve bağımsız dosyaları (Libs/Bin) içerir.

  • Container runtime (örneğin Docker), containerların yönetimi ve izolasyonu için kullanılır ve bu yapılar daha hafif ve esnektir.

  • Containerlar daha hızlı başlatılır ve daha az kaynak kullanır çünkü birden fazla container aynı işletim sistemi çekirdeğini paylaşabilir ve gerektiğinde kaynakları dinamik olarak alıp bırakabilir.

Azure Container Instances;

Azure Container Instances (ACI), Microsoft Azure'un, kullanımı kolay ve yönetim gerektirmeyen bir container hizmetidir. ACI, herhangi bir sanal makine ya da ekstra konfigürasyon olmaksızın Azure'da container'ları çalıştırmanızı sağlar.

  • ACI, sanal makinelerin aksine containerları saniyeler içinde başlatma yeteneğine sahiptir, bu da uygulamalarınızı çok daha hızlı bir şekilde çalıştırmanıza olanak tanır.

  • ACI, dış dünya 'ya açık uygulamalar için idealdir çünkü Public IP ve DNS name desteği sunar, bu sayede container uygulamalarınızı internete kolayca açabilirsiniz.

  • Containerlar, aynı container host üzerinde dahi olsalar birbirlerinden izole edilmiş şekilde çalışır. Bu, uygulamalarınızın birbirlerinin çalışmalarını etkilemeyecek şekilde güvenli bir ortamda çalıştırılmasını sağlar.

  • ACI, kaynak gereksinimlerinize göre özel boyutlar seçmenize olanak tanır, böylece ihtiyaç duyduğunuz kaynak miktarını tam olarak belirleyebilir ve aralarında geçiş yapabilirsiniz.

  • ACI, Azure Files kullanarak kalıcı depolama oluşturmanıza imkan tanır. Container depolaması geçicidir ancak Azure Files ile verilerinizi kalıcı hale getirebilirsiniz.

  • ACI, doğrudan sanal ağlara (VNet) deploy edilebilir ve hem Windows hem de Linux containerlarını destekler, bu da uygulamanın çalışması için esneklik sağlar.

Azure Container Registry (ACR), Azure 'da konteyner imajlarınızı depolamanıza ve yönetmenize olanak tanıyan bir servistir. Docker konteyner imajlarınızı ACR'ye yükleyebilir ve buradan Azure Kubernetes Service (AKS) veya Azure Container Instances gibi hizmetlere kolayca dağıtabilirsiniz. ACR, güvenilir bir şekilde imaj saklama, sürüm kontrolü ve imajlara erişim için entegre kimlik doğrulama mekanizmaları sunar.

Container groups;

Container grupları, birden fazla container'ın tek bir container host üzerinde bir arada çalıştığı bir yapıdır. Bu yapı, tüm container'ların kaynakları (CPU, bellek), ağ yapılandırmasını (IP adresleri, portlar) ve depolama alanlarını paylaşmalarını sağlar. Bu sayede, aynı görevi yerine getiren ya da birbiriyle iletişim halinde olan uygulamaları gruplayarak yönetmek ve çalıştırmak kolaylaşır. Bir container grubu genellikle bir public IP adresi üzerinden erişilebilir ve belirli portlar üzerinden dış dünyaya hizmet sunar. Bu gruplar ARM şablonları veya YAML dosyaları kullanılarak kolayca deploy edilebilir, ve kaynak kullanımları her bir container'ın ihtiyaçlarına göre topluca hesaplanır. Bu da, yönetilebilir container tabanlı uygulamalar oluşturmanızı sağlar.

Sidecar container, ana uygulama containerının yanında çalışan ve ona yardımcı olan bir containerdır. Genellikle ana uygulamanın yapmadığı yardımcı işlevleri üstlenir.

Azure Kubernetes Services;

Bu servis, Kubernetes cluster'ınızı Azure üzerinde yönetmenize olanak tanır ve iki ana tür node'dan oluşur:

  1. Azure Managed Node (Master): Bu, Kubernetes Master node'unu temsil eder ve AKS tarafından otomatik olarak yönetilir. Cluster oluşturulduğunda bu node otomatik olarak oluşturulur ve kullanıcı tarafından görülemez. Kubernetes'in çekirdek bileşenlerini (API sunucusu, etcd, denetleyici yöneticisi, planlayıcı vb.) çalıştırır.

  2. Customer Managed Nodes: Bunlar, kendi uygulamalarınızın ve servislerinizin çalıştırıldığı nodelardır. Bu nodelar üzerinde konteynerlerinizi ve pod'larınızı planlamak ve çalıştırmak için kendi kaynaklarınızı (CPU, bellek, disk) kullanırsınız ve bu nodeların sayısı üzerinden ücretlendirilirsiniz.

Bileşenler:

  • kubelet: Bu, her bir müşteri tarafından yönetilen node üzerinde çalışır ve Azure yönetim node'undan (master) gelen konteyner planlama taleplerini alır.

  • kube-proxy: Ağ trafiğini yönlendirir ve pod'ların ve servislerin IP adreslerini yönetir.

  • vNIC (Sanal Ağ Arabirimi): Sanal bir ağ kartıdır ve node'un ağ ile iletişim kurmasını sağlar.

  • Container Runtime: Konteynerlerin oluşturulmasına ve ağ ile depolama bileşenleriyle etkileşime girmesine izin veren ortamı sağlar.

  • Containers: Uygulamalarınızın ve servislerinizin çalıştığı konteynerlerdir.

Bu bileşenler, Kubernetes cluster'ınızın sağlıklı ve verimli bir şekilde çalışmasını sağlamak için bir arada çalışır. AKS'nin kullanımı, bu karmaşık bileşenleri yönetme yükünü azaltır ve uygulama dağıtımını, ölçeklendirmeyi ve yönetimini kolaylaştırır.

Azure Kubernetes Service terminolojisi;

  • Pools: Pools, benzer konfigürasyona sahip node'ların mantıksal gruplandırılmasıdır. Örneğin, belli bir performansa veya göreve sahip olan VM'ler (sanal makineler) bir pool oluşturabilir.

  • Nodes: Node'lar, konteynerize uygulamaların çalıştığı VM'lerdir. Kubernetes içinde bu node'lar, Kubernetes master node'u tarafından yönetilir ve son kullanıcıya görünmez.

  • Pods: Podlar, Kubernetes'te dağıtımın en küçük birimidir. Bir pod, uygulamanızın tek bir örneğini temsil eden bir veya daha fazla konteyner içerebilir.

  • Deployment: Deployment, podunuzun bir veya daha fazla aynı kopyasını yaratmanızı sağlar. Bu sayede uygulamanızı ölçeklendirebilir ve güncellemeleri yönetebilirsiniz.

  • Manifest: Manifest, Kubernetes'te bir YAML veya JSON dosyasıdır ve pod, service, volume ve diğer Kubernetes objelerinin nasıl oluşturulacağını tanımlar.

AKS Networking;

  • ClusterIP: Bu, sadece Kubernetes cluster'ı içinde iletişim kurmak için kullanılan varsayılan bir servis türüdür. Dış dünyadan doğrudan erişilemez ve yalnızca cluster içindeki diğer uygulamalar veya servisler tarafından erişilebilir.

  • NodePort: Bu servis türü, bir AKS node'undaki belirli bir porta (örneğin 31000 ila 32767 arasında bir port) gelen trafiği, hizmete bağlı bir pod'a yönlendirir. Bu sayede, dış dünyadan bir Kubernetes servisine erişim sağlanabilir. NodePort, belirli bir port üzerinden dış dünyadan direkt trafiğin AKS node'larına ulaşmasına olanak tanır.

  • LoadBalancer: Bir Azure Yük Dengeleyici oluşturur ve dış trafikten gelen istekleri uygun servislere yönlendirir. Genellikle, uygulamalarınızı internet üzerinden erişilebilir kılmak için kullanılan standart bir yöntemdir. Bu servis türü, gelen non-direct trafiği alır ve otomatik olarak bir public IP adresi atayarak, AKS içindeki hizmetlere yük dağıtımı yapar.

Azure Kubernetes Service (AKS) cluster'ı oluştururken karşılaşabileceğiniz ağ yapılandırma seçeneği bulunmaktadır. İki temel ağ seçeneği bulunmaktadır: kubenet ve Azure CNI (Container Network Interface).

  • Kubenet: Bu, Kubernetes'in varsayılan ağ eklentisidir. Kubenet, her bir node için bir VNet (Sanal Ağ) oluşturur. Kubenet ile, podlar node bazında izole edilmiş ağlar kullanır ve birbirleriyle ve dış dünya ile iletişim kurabilmek için NAT (Network Address Translation) üzerinden geçer.

  • Azure CNI: Azure CNI, pod'ların doğrudan Azure Sanal Ağ'ına (VNet) bağlandığı ve her pod'a bir IP adresi atandığı daha gelişmiş bir ağ yapılandırmasıdır. Bu sayede pod'lar sanal ağdaki diğer servislerle ve kaynaklarla doğrudan etkileşime girebilir. Azure CNI, özellikle gelişmiş ağ senaryoları ve güvenlik gereksinimleri için tercih edilir çünkü her pod, sanal ağın yerel özelliklerini ve güvenlik politikalarını kullanabilir.

AKS Storage;

  • Volumes: Kubernetes'te, volume'lar veri saklamak, almak ve kalıcı hale getirmek için kullanılır. Lokal depolama hızlı ve kullanımı kolaydır fakat Kubernetes pod'ları geçici (ephemeral) olarak ele alır. Eğer kalıcı depolama ihtiyacınız varsa, Azure Files veya Azure Managed Disk kullanarak kalıcı volume'lar oluşturabilirsiniz.

  • Persistent Volumes (PV): PV, pod ile birlikte yaratılır ve pod silindiğinde normalde onunla birlikte silinen depolama alanını, pod silinse bile verileri koruyacak şekilde kalıcı hale getirir.

  • Storage Class: Storage Class 'lar, oluşturulacak depolamanın türünü tanımlamak için kullanılır. Performans ihtiyaçlarına göre Premium veya Standard gibi farklı depolama katmanları seçilebilir. reclaimPolicy parametresi ile depolamanın silinip silinmeyeceğini belirleyebilirsiniz.

  • Persistent Volume Claims (PVC): PVC'ler, pod'lar tarafından kullanılmak üzere Azure Managed Disk veya Azure File gibi belirli bir depolama kaynağından yer istemek için kullanılır. PVC'ler, boyut, erişim modu ve StorageClass gibi özelliklere göre ne tür depolamanın tahsis edileceğini belirtir.

AKS Scaling;

  • Manual Scale: Manuel ölçeklendirme, ihtiyaçlara bağlı olarak kullanıcı tarafından el ile yapılan bir ayarlama işlemidir. Bu, pod replikalarının sayısını veya node'ların (sunucuların) sayısını artırarak gerçekleştirilebilir.

  • Cluster Autoscaler: Cluster Autoscaler, AKS cluster'ındaki node sayısını otomatik olarak talebe göre artırabilir veya azaltabilir. Kubernetes API, her 10 saniyede bir cluster'ı kontrol eder ve node sayısını ayarlamak gerekip gerekmediğini belirler.

  • Horizontal Pod Autoscaler (HPA): HPA, pod replikalarının sayısını otomatik olarak artırır veya azaltır. Bu karar, belirli performans metriklerine (örneğin, CPU veya memory kullanımı) dayanır. Metrics API, her 30 saniyede bir metrikleri kontrol eder ve replika sayısında bir değişiklik yapılması gerekip gerekmediğine karar verir.

AKS Bursting;

AKS Bursting, Azure Kubernetes Service (AKS) içinde yüksek talep anlarında kaynakların dinamik olarak artırılabilmesi için kullanılan bir özelliktir. Bu özellik, AKS cluster'ınızın birden fazla node üzerinde yüksek talebi karşılayamadığı durumlarda ek kaynak sağlar.

Yukarıda, AKS cluster'ında Cluster Autoscaler ve Horizontal Pod Autoscaler'ın yanı sıra bir "Virtual Node" gösterilmektedir. Virtual Node, Azure Container Instance (ACI) ile entegredir. Burada olan şu:

  • Cluster ve Horizontal Pod Autoscaler'lar, AKS içindeki node ve pod sayısını artırarak ölçeklendirme yapar.

  • Talep arttığında ve mevcut node'lar yeterli olmadığında, Virtual Node devreye girer.

  • Virtual Node, ACI tarafından sağlanan kaynaklardır ve AKS cluster'ınıza neredeyse sınırsız ölçeklendirme kapasitesi ekler.

  • Bu ölçeklendirme işlemi sırasında, yeni pod'lar ACI üzerinde hızla başlatılabilir, bu da anlık yük artışlarını yönetmek için idealdir.

  • Cluster Autoscaler: AKS'de, talebe göre otomatik olarak fiziksel node sayısını artırır veya azaltır. Uzun süreli ve düzenli kaynak ihtiyacı olan durumlar için idealdir.

  • Horizontal Pod Autoscaler (HPA): Bir servisin veya uygulamanın pod sayısını, örneğin CPU ya da bellek kullanımı gibi belirli metriklere dayanarak otomatik olarak ayarlar.

  • Virtual Node: Azure Container Instances (ACI) ile entegre edilmiş bir özelliktir ve AKS cluster'ınızın ölçeklendirme kapasitesini genişletir. Ani ve yüksek talepler için, fiziksel sunucuların başlatılması ve yapılandırılmasını beklemeden hızlı ölçeklendirme sağlar. Cluster Autoscaler ve HPA, genel ölçeklendirme gereksinimleri için kullanılırken, Virtual Node özellikle ani yük artışları, kısa süreli iş yükleri vb senaryolar için tercih edilir.

☁️
🛳️
Azure Kubernetes Service (AKS) documentationMicrosoftLearn
Logo