Yerel olarak geliştirdiğiniz bir Spring Cloud veya Dubbo uygulamasını SAE üzerinde barındırdığınızda, SAE tarafından sağlanan yerleşik hizmet kayıt defterini kullanabilir veya hizmet kaydı ve keşfi için kendi yönettiğiniz bir Nacos örneği kurabilirsiniz. Bu konu, SAE konsolunda uygulamanız için Nacos tabanlı hizmet kaydı ve keşfinin nasıl yapılandırılacağını açıklar.
Öneriler
Çok sayıda mikroservis uygulamanız varsa, öneri düzeyine göre azalan sırada listelenen aşağıdaki hizmet kayıt defteri türlerinden birini kullanabilirsiniz:
MSE Nacos kayıt defteri
Kendi yönettiğiniz hizmet kayıt defteri
SAE yerleşik hizmet kayıt defteri
SAE, Java mikroservisleri için otomatik adresleme destekleyen yerleşik bir Nacos sunucusu sağlar. Bunu, SAE özelliklerinden olan Service Registration and Discovery özelliğini kullanarak yapılandırabilirsiniz.
Ön koşullar
yum komutu yüklüdür.
Uygulamayı çalıştırmadan önce, 8848 gibi Nacos hizmet kayıt defterinin erişim bağlantı noktasının bir güvenlik grubuna eklendiğinden emin olun. Daha fazla bilgi için bkz. Güvenlik grubu kuralı ekleme.
Adım 1: Nacos sunucusunu yapılandırma
Bu adımda, kendi yönettiğiniz bir Nacos örneğini yükleyip başlatırsınız. Nacos, bir Java ortamı gerektirir. Nacos'u kaynak koddan derleyip çalıştırıyorsanız bir Maven ortamı da yapılandırmanız gerekir.
Yönergeler için bkz. Nacos Hızlı Başlangıç. Nacos yüklendikten ve başlatıldıktan sonra hizmet kaydı ve keşfi sağlar. Ardından uygulama tarafında hizmet kayıt defterini belirtmeniz gerekir. Uygulama çalıştıktan sonra sistem, belirtilen hizmet kayıt defterine göre hizmet kaydı ve keşfini otomatik olarak gerçekleştirir.
Adım 2: SAE'de hizmet kaydı ve keşfini yapılandırma
Bu konuda yalnızca temel adımlar açıklanmaktadır. Bir uygulama oluşturmaya ilişkin tam yordam için ilgili belgelere bakın.
Giriş noktası senaryonuzlara göre değişir:
Uygulama oluşturma
SAE konsolu üzerinden oturum açın. Sol gezinme bölmesinde Application Management > Application List seçeneğini belirleyin. Hedef bölgeyi ve hedef ad alanını seçin, ardından Create Application düğmesini tıklayın.
Basic Information sihirbaz sayfasında parametreleri yapılandırın ve ardından Next: Advanced Settings düğmesini tıklayın.
Çalışan bir uygulamayı değiştirme
Bir uygulamayı yeniden dağıttıktan sonra uygulama yeniden başlatılır. İş kesintisi gibi öngörülemeyen hataları önlemek için uygulamaları yoğun olmayan saatlerde dağıtmanızı öneririz.
SAE konsolu üzerinden oturum açın. Sol gezinme bölmesinde Application Management > Application List seçeneğini belirleyin. Hedef bölgeyi ve hedef ad alanını seçin, ardından hedef uygulamanın adını tıklayın.
Hedef uygulamanın Basic Information sayfasında Deploy Application düğmesini tıklayın.
Durdurulmuş bir uygulamayı değiştirme
SAE konsolu üzerinden oturum açın. Sol gezinme bölmesinde Application Management > Application List seçeneğini belirleyin. Hedef bölgeyi ve hedef ad alanını seçin, ardından hedef uygulamanın adını tıklayın.
Hedef uygulamanın Basic Information sayfasında Modify Application Configuration seçeneğini tıklayın.
Gereksinimlerinize bağlı olarak Nacos'a bağlanmak için aşağıdaki yöntemlerden birini kullanın:
Yöntem 1: Hizmet kaydı ve keşfini yapılandırma
Service Registration and Discovery bölümünü bulun ve genişletin. Nacos-based Registry Service and Discovery ayarını Self-managed Registry (Nacos, ZK, etc.) olarak belirleyin.
Self-managed Registry (Nacos, ZK, etc.) seçeneğini belirledikten sonra, uygulama içindeki hizmet kayıt defteri adresini manuel olarak yapılandırmanız ve uygulamanın ağ üzerinden hizmet kayıt defterine bağlanabildiğinden emin olmanız gerekir.
Yöntem 2: Başlangıç parametrelerini yapılandırma
Başlangıç parametrelerini kullanırken aşağıdaki öğeleri onaylayın:
SAE ağının, kendi yönettiğiniz Nacos örneğinizin ağı ile iletişim kurabildiğinden emin olun.
-
-Dve-XXparametrelerinin alternatif olarak kullanılmadığından emin olun. Aksi takdirde komut etkili olmayabilir. Aşağıdaki örnek, değişiklik öncesi ve sonrası bir başlangıç komutunu göstermektedir:-
Değişiklikten önce:
java -Dalicloud.deployment.mode=EDAS_MANAGED -XX:+UseContainerSupport -XX:InitialRAMPercentage=70.0 -XX:MaxRAMPercentage=70.0 -XX:+UnlockExperimentalVMOptions -XX:+UseWisp2 -Dio.netty.transport.noNative=true -XX:+UseG1GC -Dspring.profiles.active=yace -Dnacos.use.endpoint.parsing.rule=false -Dnacos.use.cloud.namespace.parsing=false -jar /home/admin/app/xx-server.jar -
Değişiklikten sonra:
java -XX:+UseContainerSupport -XX:InitialRAMPercentage=70.0 -XX:MaxRAMPercentage=70.0 -XX:+UnlockExperimentalVMOptions -XX:+UseWisp2 -Dio.netty.transport.noNative=true -XX:+UseG1GC -Dspring.profiles.active=yace -Dnacos.use.endpoint.parsing.rule=false -Dnacos.use.cloud.namespace.parsing=false -jar /home/admin/app/xx-server.jar
Tek fark, değiştirilen komutta
-Dalicloud.deployment.mode=EDAS_MANAGEDparametresinin kaldırılmış olmasıdır. -
-
En iyi uygulama olarak, uygulamayı bir görüntü veya JAR paketi kullanarak dağıtın ve
-Dnacos.use.endpoint.parsing.rule=falseile-Dnacos.use.cloud.namespace.parsing=falsebaşlangıç parametrelerini yapılandırın.Önemli
Başlangıç parametreleri
-jaröncesinde yer almalıdır. Aksi takdirde uygulamanız, SAE yerleşik hizmet kayıt defteri dışındaki bir kayıt defterini kullanamayabilir. -
Uygulamayı bir görüntü kullanarak dağıtıyorsanız, görüntü dosyasındaki uygulama başlangıç komutunda
-Dnacos.use.endpoint.parsing.rule=falseve-Dnacos.use.cloud.namespace.parsing=falseparametrelerini yapılandırın. Docker görüntüsü oluşturma hakkında daha fazla bilgi için bkz. Görüntü oluşturma.Aşağıdaki kod bir örneği göstermektedir:
RUN echo 'eval exec java -Dnacos.use.endpoint.parsing.rule=false -Dnacos.use.cloud.namespace.parsing=false -jar $CATALINA_OPTS /home/admin/app/hello-edas-0.0.1-SNAPSHOT.jar'> /home/admin/start.sh && chmod +x /home/admin/start.sh Uygulamayı bir JAR paketi kullanarak dağıtıyorsanız, konsoldaki Startup Command Settings bölümüne gidin ve Options Settings metin kutusuna
-Dnacos.use.endpoint.parsing.rule=false -Dnacos.use.cloud.namespace.parsing=falsegirin. Daha fazla bilgi için bkz. Başlangıç komutu ayarlama.