Tüm Ürünler
Search
Belge Merkezi

Alibaba Cloud Service Mesh:Ek Açıklamalar Kullanarak Sidecar Proxy'yi Yapılandırın

Son Güncelleme:Oct 07, 2026

ASM, ek açıklamalar kullanarak Sidecar proxy kaynaklarını ve yapılandırmasını değiştirmeyi destekler. Bu konuda, kaynak ek açıklamaları ekleyerek ve ProxyConfig alanını kullanarak Sidecar Proxy'nin nasıl yapılandırılacağı açıklanmaktadır.

Ön Koşullar

Kaynak Ek Açıklamaları Ekleme

ASM, bir pod'a ek açıklamalar ekleyerek Sidecar proxy kaynaklarının değiştirilmesini destekler. Bu örnekte, Sidecar proxy bellek isteğinin nasıl değiştirileceği gösterilmektedir. Diğer ek açıklamalar hakkında daha fazla bilgi için bkz. Ek A: Istio kaynak ek açıklamaları.

  1. Varsayılan ad alanı için otomatik Sidecar mesh proxy enjeksiyonunu etkinleştirin. Daha fazla bilgi için bkz. Otomatik enjeksiyonu etkinleştirme.

  2. Varsayılan ad alanında bir uygulama dağıtın. Daha fazla bilgi için bkz. ASM örneğiyle ilişkilendirilmiş bir kümede uygulama dağıtma.

  3. Sidecar proxy için minimum bellek isteğini değiştirin.

    1. ClustersACK konsolu oturum açın. Sol gezinme bölmesinde Clusters seçeneğine tıklayın.

    2. On the Clusters page, click the name of your cluster. In the left navigation pane, click Workloads > Deployments.

    3. On the Deployments page, find your target application and click More > View in YAML in the Actions column.

    4. In the Edit YAML dialog box, add the following content under the template parameter, then click Update.

      annotations:
        sidecar.istio.io/proxyMemory: 14Mi
      template:
          metadata:
            annotations:
              sidecar.istio.io/proxyMemory: 14Mi
            labels:
              app: details
              version: v1
  4. Sidecar proxy bellek değişikliğinin başarılı olduğunu doğrulayın.

    1. Küme yönetimi sayfasının sol gezinme bölmesinde Workload > Pods yolunu izleyin.

    2. On the Pods page, find your target application pod and click Details in the Actions column.

    3. On the Containers tab, click istio-proxy.

      istio-proxy'nin 14 Mi bellek istediğini görebilirsiniz. Tıkladıktan sonra kayıt defteri adresi, görüntü çekme ilkesi (IfNotPresent) ve Istio Sidecar ile ilgili ortam değişkenleri dahil olmak üzere istio-proxy konteynerinin ayrıntılarını görüntüleyebilirsiniz. Requested Resources altında geçerli bellek ayarının Memory: 14Mi olarak göründüğünü fark edeceksiniz.

ProxyConfig Alanını Ayarlama

ASM, bir pod'daki ProxyConfig alanını değiştirerek Sidecar proxy yapılandırmasını tanımlamayı destekler. ProxyConfig alanının kullanımı hakkında daha fazla bilgi için bkz. Ek B: ProxyConfig alanları.

Not

proxy.istio.io/config değerleri YAML veya JSON formatında olabilir.

ProxyConfig alanını ayarlama yordamı, kaynak ek açıklamaları ekleme işlemiyle aynıdır. Bu bölümde yaygın ProxyConfig alanı örnekleri sunulmaktadır. Adımlar için önceki bölüme bakın.

Örnek 1: Sonlandırma boşaltma süresini ayarlama

terminationDrainDuration alanını kullanarak sonlandırma boşaltma süresini değiştirin. Bu süre, bir uygulama konteyneri sonlandıktan sonra Istio Proxy'nin bekleyeceği maksimum süreyi tanımlar.

Istio Proxy'nin uygulama konteyneri sonlandıktan sonra en fazla 3 saniye beklemesini sağlamak için uygulama YAML dosyanıza aşağıdaki içeriği ekleyin.

annotations:
  proxy.istio.io/config: |
    terminationDrainDuration: 3s
type: RollingUpdate
  template:
    metadata:
      annotations:
        proxy.istio.io/config: |
          terminationDrainDuration: 3s
      labels:
        app: details

Pods sayfasında hedef uygulama pod'unuzu bulun ve Actions sütununda Details seçeneğine tıklayın. Containers sekmesinde istio-proxy öğesine tıklayın. Sonlandırma boşaltma süresinin 3 sn olarak ayarlandığını göreceksiniz. Yapılandırma etkili olduktan sonra, Pod'un konteyner sayfasında istio-proxy konteyner ayrıntılarını görüntüleyin. PROXY_CONFIG ortam değişkeninde, terminationDrainDuration değeri 3s olarak ayarlanmıştır.

Örnek 2: Istio Proxy başlangıç sırasını ayarlama

By default, ASM globally sets holdApplicationUntilProxyStarts to true. This ensures the Istio Proxy starts successfully before the application container starts. If the application container becomes ready before the Istio Proxy is ready, the pod fails to accept traffic.

holdApplicationUntilProxyStarts is a configuration option that controls application container startup behavior after Sidecar proxy injection. When holdApplicationUntilProxyStarts is set to true, Istio CNI or the Sidecar injector configures the Kubernetes pod to prevent the application container from starting until the proxy container is ready and begins receiving traffic. This ensures all traffic flows through the proxy before the pod receives any traffic, enabling immediate enforcement of traffic management, monitoring, and security policies. In most cases, set holdApplicationUntilProxyStarts to true to ensure proper traffic handling. Set it to false only in specific scenarios where appropriate.

Pods sayfasında hedef uygulama pod'unuzu bulun ve Actions sütununda Details seçeneğine tıklayın. Events sekmesine tıklayın. Uygulama konteynerinin önce, ardından Istio Proxy'nin başladığını göreceksiniz. Pod'un Events sekmesinde, details-v1 pod olay listesi; Pod zamanlaması (Scheduled), görüntü çekme (Pulled), konteyner oluşturma (Created) ve konteyner başlatma (Started) dahil olmak üzere tam konteyner başlatma sırasını gösterir. Başlatılan konteynerler şu sırada görünür: init konteyneri istio-init, uygulama konteyneri details ve Sidecar konteyneri istio-proxy. Başlatılan konteyner olayları vurgulanmıştır ve bu durum holdApplicationUntilProxyStarts yapılandırması tarafından zorlanan başlatma sırasını doğrular.

Ek A: Istio Kaynak Ek Açıklamaları


Ek Açıklama


Açıklama


proxy.istio.io/config


Bu proxy için proxy yapılandırmasını geçersiz kılar.


readiness.status.sidecar.istio.io/applicationPorts


Uygulama konteyneri tarafından açıklanan bağlantı noktası listesini belirtin. Sidecar proxy hazırlık yoklaması tarafından proxy'nin yapılandırıldığını ve trafiği almaya hazır olduğunu belirlemek için kullanılır.


readiness.status.sidecar.istio.io/failureThreshold


Sidecar proxy hazırlık yoklaması için hata eşik değerini belirtin.


readiness.status.sidecar.istio.io/initialDelaySeconds


Sidecar proxy hazırlık yoklaması için ilk gecikmeyi (saniye cinsinden) belirtin.


readiness.status.sidecar.istio.io/periodSeconds


Sidecar proxy hazırlık yoklaması için periyodu (saniye cinsinden) belirtin.


sidecar.istio.io/componentLogLevel


Sidecar proxy için bileşen günlük düzeyini belirtin.


sidecar.istio.io/enableCoreDump


Sidecar proxy'nin core dump özelliğini etkinleştirip etkinleştirmeyeceğini belirtin.


sidecar.istio.io/extraStatTags


Istio Proxy telemetrisinden çıkarılan ek etiketlerin listesi. Her ek etiket bu listede yer almalıdır.


sidecar.istio.io/inject


Sidecar otomatik enjeksiyonunun kullanılıp kullanılmayacağını belirtin.


sidecar.istio.io/interceptionMode


Gelen trafiği Envoy'a yönlendirmek için kullanılan modu (REDIRECT veya TPROXY) belirtin.


sidecar.istio.io/logLevel


Sidecar proxy için günlük düzeyini ayarlayın.


sidecar.istio.io/proxyCPU


Sidecar proxy için istenen CPU ayarını belirtin.


sidecar.istio.io/proxyCPULimit


Sidecar proxy için CPU sınırını belirtin.


sidecar.istio.io/proxyMemory


Sidecar proxy için istenen bellek ayarını belirtin.


sidecar.istio.io/proxyMemoryLimit


Sidecar proxy için bellek sınırını belirtin.


sidecar.istio.io/rewriteAppHTTPProbers


HTTP hazırlık ve canlılık yoklamalarını Sidecar proxy'ye yönlendirin.


status.sidecar.istio.io/port


Sidecar proxy için HTTP durum bağlantı noktasını belirtin. Sıfır olarak ayarlanırsa Sidecar durum sağlamaz.


traffic.sidecar.istio.io/excludeInboundPorts


Sidecar proxy'ye yönlendirmeden hariç tutulan gelen bağlantı noktalarının virgülle ayrılmış listesi. Yalnızca tüm gelen trafik (yani “*”) yönlendirildiğinde geçerlidir.


traffic.sidecar.istio.io/excludeOutboundIPRanges


Yönlendirmeden hariç tutulan CIDR formatındaki IP aralıklarının virgülle ayrılmış listesi. Yalnızca tüm giden trafik (yani “*”) yönlendirildiğinde geçerlidir.


traffic.sidecar.istio.io/excludeOutboundPorts


Giden trafiğin Sidecar proxy'ye yönlendirilmesini engelleyen dize bağlantı noktalarının virgülle ayrılmış listesi.


traffic.sidecar.istio.io/includeInboundPorts


Trafiği Sidecar proxy'ye yönlendirilen gelen bağlantı noktalarının virgülle ayrılmış listesi. Tüm bağlantı noktaları için yönlendirmeyi yapılandırmak amacıyla joker karakter “*” kullanın. Boş bir liste, tüm gelen trafik için yönlendirmeyi devre dışı bırakır.


traffic.sidecar.istio.io/includeOutboundIPRanges


Sidecar proxy'ye yönlendirilen CIDR formatındaki IP aralıklarının virgülle ayrılmış listesi. Tüm giden trafiği yönlendirmek için joker karakter “*” kullanın. Boş bir liste, tüm giden trafik için yönlendirmeyi devre dışı bırakır.


traffic.sidecar.istio.io/includeOutboundPorts


Hedef IP'den bağımsız olarak trafiği Sidecar proxy'ye yönlendirilen giden trafik bağlantı noktası dizelerinin virgülle ayrılmış listesi.


traffic.sidecar.istio.io/kubevirtInterfaces


Gelen trafiği giden trafik olarak işlenen sanal arabirimlerin virgülle ayrılmış listesi.

Ek B: ProxyConfig Alanları


Alan


Tür


Açıklama


configPath


Dize


Oluşturulan yapılandırma dosyalarının depolandığı dizinin yolu. Proxy aracısı gerçek yapılandırmayı oluşturur ve bu dizinde saklar.


statsdUdpAddress


Dize


Statsd UDP dinleyicisinin IP adresi ve bağlantı noktası.


proxyAdminPort


Int32


Envoy'un yönetimsel komutları dinlediği bağlantı noktası. Varsayılan bağlantı noktası 15000'dir.


controlPlaneAuthPolicy


AuthenticationPolicy


AuthenticationPolicy, proxy'nin kontrol düzlemine bağlanırken nasıl kimlik doğrulaması yapacağını tanımlar. Varsayılan değer MUTUAL_TLS şeklindedir.


concurrency


Int32Value


Çalıştırılacak iş parçacığı sayısı. Ayarlanmazsa bu değer, CPU isteklerine ve sınırlarına göre otomatik olarak belirlenir. 0 olarak ayarlanırsa makinedeki tüm çekirdekler kullanılır. Varsayılan değer 2 iş parçacığıdır.


interceptionMode


InboundInterceptionMode


Gelen trafiği Sidecar proxy'ye yönlendirmek için modu ayarlayın.


tracing


Tracing


Sidecar proxy tarafından kullanılan izleme yapılandırması.


sds


SDS


Proxy tarafından kullanılan Secret Discovery Service (SDS) yapılandırması.


proxyMetadata


Map<string, string>


Proxy için ek ortam değişkenleri. ISTIO_META_ ile başlayan adlar oluşturulan bootstrap yapılandırmasına dahil edilir ve XDS sunucusuna gönderilir.


statusPort


Map<string, string>


Proxy'nin dinlediği yönetimsel (örneğin, hazırlık yoklaması) bağlantı noktası. Varsayılan değer 15020 numaralı bağlantı noktasıdır.


terminationDrainDuration


Duration


Proxy kapatılması sırasında bağlantıların tamamlanması için izin verilen süre. SIGTERM veya SIGINT sinyalini aldığında istio-agent, aktif Sidecar proxy'sine boşaltma işlemini başlatmasını talimat verir; bu işlem yeni bağlantıları engeller ve mevcut olanların tamamlanmasına izin verir. Ardından kalan tüm aktif Envoy işlemlerini kapatmadan önce termination_drain_duration süresi kadar bekler. Ayarlanmazsa varsayılan 5sn değeri uygulanır.


holdApplicationUntilProxyStarts


BoolValue


holdApplicationUntilProxyStarts davranışını etkinleştirmek veya devre dışı bırakmak için Boolean bayrağı. Bu özellik, belirli başlangıç yarış durumu koşullarını azaltmak amacıyla pod proxy'si trafiği kabul etmeye hazır olana kadar uygulama başlangıcını geciktiren kancalar ekler.