Alibaba Cloud Service Mesh (ASM), gelen trafiği tek bir sunucusuz giriş ağ geçidi üzerinden aynı Virtual Private Cloud (VPC) içindeki birden çok Kubernetes kümesine dağıtılmış uygulama hizmetlerine yönlendirir. Bu mimari hizmet kullanılabilirliğini artırır ve bilişim kaynağı maliyetlerini düşürür.
Ön koşullar
-
Aynı VPC içinde iki Container Service for Kubernetes (ACK) kümesi oluşturun. Bu öğreticide
m1c1vem1c2adlı kümeler kullanılır. Daha fazla bilgi için bkz. ACK özel kümesi oluşturma (kullanımdan kaldırıldı) veya ACK yönetilen kümesi oluşturma.NotKüme oluştururken basitleştirilmiş küme arası iletişim için gelişmiş güvenlik gruplarını kullanın.
v1.18.0.139 veya sonraki bir sürüme sahip bir ASM örneğine sahip olun. Bu öğreticide
mesh1adlı bir ASM örneği kullanılır. Daha fazla bilgi için bkz. ASM örneği oluşturma.
Adım 1: Küme arası iletişimi doğrulayın
Her ikisi de gelişmiş güvenlik grupları kullandığında aynı VPC içindeki iki küme varsayılan olarak birbirleriyle iletişim kurar. Kümelerden biri temel bir güvenlik grubu kullanıyorsa veya iki güvenlik grubu arasında iletişim sağlanamıyorsa aralarında trafiğe izin vermek için güvenlik grubu kurallarını yapılandırın. Daha fazla bilgi için bkz. Güvenlik grubu kurallarını yönetme.
Adım 2: Kümeleri ASM örneğine ekleyin ve sunucusuz bir giriş ağ geçidi oluşturun
Her iki kümeyi de ASM örneğine ekleyin ardından sunucusuz bir giriş ağ geçidi oluşturun.
İki kümeyi ASM örneğine ekleyin. Daha fazla bilgi için bkz. ASM örneğine küme ekleme.
-
Aşağıdaki YAML yapılandırmasını kullanarak sunucusuz bir giriş ağ geçidi oluşturun. Daha fazla bilgi için bkz. Giriş ağ geçidi oluşturma.
Adım 3: Bookinfo uygulamasını kümeler arasında dağıtın
Bookinfo mikro hizmetlerini her iki kümeye de dağıtın. m1c2 kümesi çoğu hizmeti (details, ratings, reviews v1/v2 ve productpage) çalıştırırken m1c1 kümesi reviews mikro hizmetinin v3 sürümünü ve ratings hizmetini çalıştırır.
-
Aşağıdaki içeriği
bookinfo-m1c2.yamladlı bir dosyaya kaydedin.Notreviewsmikro hizmetinin v3 sürümü derecelendirmeleri kırmızı yıldızlar olarak gösterir. -
Bookinfo uygulamasını (v3
reviewsmikro hizmeti olmadan)m1c2kümesine dağıtın:kubectl apply -f bookinfo-m1c2.yaml -
Aşağıdaki içeriği
bookinfo-m1c1.yamladlı bir dosyaya kaydedin. -
v3
reviewsmikro hizmetini veratingshizmetinim1c1kümesine dağıtın:kubectl apply -f bookinfo-m1c1.yaml
Adım 4: Sanal hizmet ve Istio ağ geçidi ekleyin
-
ASM örneğinin
defaultad alanındabookinfoadlı bir sanal hizmet oluşturun. Daha fazla bilgi için bkz. Sanal hizmetleri yönetme. -
ASM örneğinin
defaultad alanındabookinfo-gatewayadlı bir Istio ağ geçidi oluşturun. Daha fazla bilgi için bkz. Istio ağ geçitlerini yönetme. Bir tarayıcı açın ve
http://{sunucusuz giriş ağ geçidinin IP adresi}/productpageadresine gidin. Sayfayı birkaç kez yenileyin. Trafikreviewsmikro hizmetinin üç sürümü (v1, v2 ve v3) arasında yaklaşık 1:1:1 oranında dağıtılır. v3 sürümü diğer mikro hizmetlerden farklı bir kümede çalışsa da normal şekilde çalışır.
(İsteğe bağlı) Adım 5: Tüm trafiği v3 reviews mikro hizmetine yönlendirin
Tüm istekleri reviews mikro hizmetinin v3 sürümüne yönlendirmek için bir hedef kuralı ve bir sanal hizmet tanımlayın.
-
ASM örneğinin
defaultad alanındareviewsadlı bir hedef kuralı oluşturun. Daha fazla bilgi için bkz. Hedef kurallarını yönetme. -
ASM örneğinin
defaultad alanındareviewsadlı bir sanal hizmet oluşturun. Daha fazla bilgi için bkz. Sanal hizmetleri yönetme. -
Bir tarayıcı açın ve
http://{sunucusuz giriş ağ geçidinin IP adresi}/productpageadresine gidin. Sayfayı birkaç kez yenileyin. Artık tüm isteklerreviewsmikro hizmetinin v3 sürümüne yönlendirilir. Derecelendirmeler kırmızı yıldızlar olarak görünür.