Microservices Engine (MSE) マイクロサービスレジストリの共通インスタンスには、Professional Edition と Developer Edition の 2 つのエディションがあります。Basic Edition は販売終了となり、更新されなくなりました。MSE Nacos には独自のエンジンバージョンがあります。このトピックでは、Nacos エンジンバージョンをアップグレードする方法について説明します。
背景情報
より良いサービスを提供し、エディション選択を簡素化するために、MSE マイクロサービスレジストリ Basic Edition は廃止され、インスタンスリソースは 2025 年 3 月 3 日 12:00 (UTC + 08:00) にリリースされました。その時点から、コンソールまたはクライアントを使用して廃止されたインスタンスにアクセスすることはできません。Basic Edition インスタンスのテクニカルサポートとチケットサービスは、2025 年 3 月 3 日 12:00 (UTC + 08:00) まで引き続き利用可能です。詳細については、「MSE マイクロサービスレジストリ Basic Edition インスタンスの廃止に関するお知らせ」をご参照ください。
アップグレードの準備
エディションの選択: アップグレード前に、インスタンスタイプとインスタンスエディションの選択を参照して、Developer Edition または Professional Edition をアップグレード先のエディションとして選択します。異なるエディションの課金については、共通インスタンスの課金概要を参照してください。
仕様の見積もり: データの整合性とアップグレードプロセスの安定性を確保するために、MSE Nacos はアップグレード中に登録済みサービスのデータに対してダブルライト操作を実行します。エディションをアップグレードする前に、MSE インスタンスに登録されているプロバイダーの数が、Basic Edition の関連仕様でサポートされているプロバイダーの最大数よりも少ないことを確認する必要があります。これにより、アップグレード中のダブルライト操作がビジネスに悪影響を与えることを防ぎます。詳細については、「共通インスタンスの機能の見積もり」をご参照ください。
エンジンバージョンの確認: Nacos 1.2.1.0 以降を使用する MSE エンジンのみ、Basic Edition から Professional Edition または Developer Edition にアップグレードできます。MSE エンジンが Nacos 1.1.3.x を使用している場合は、エディションをアップグレードする前に、Nacos エンジンのバージョンを 1.2.1 にアップグレードする必要があります。詳細については、「Nacos バージョンのアップグレード」をご参照ください。
エンジンバージョンの互換性: MSE Nacos エンジンの異なるエディションでサポートされている機能の詳細については、MSE Nacos エンジンのリリースノートを参照してください。システムの安定性を確保するために、推奨されていないバージョンの Nacos SDK を使用しないことをお勧めします。原因と解決策については、「MSE Nacos SDK と推奨されていないバージョンの Nacos SDK の適用」をご参照ください。
Eureka エンジン: Eureka エンジンは、MSE では管理されなくなりました。MSE Nacos は Eureka プロトコルをサポートし、Eureka クライアントと互換性があります。Eureka Basic Edition インスタンスを MSE Nacos Professional Edition または Developer Edition インスタンスに移行することをお勧めします。
アップグレードの影響
アップグレードプロセスには約 10 分かかります。アップグレード中は、MSE コンソールでインスタンスに対する操作を実行できません。ビジネスの継続性を確保するために、オフピーク時にアップグレード操作を実行することをお勧めします。
3 つ以上のノードを含むインスタンスの場合、ノードに対してローリングデプロイメントが実行され、アップグレード中にデータがこれらのノードに自動的に同期されます。アップグレード中、ビジネスは中断されません。
1 つまたは 2 つのノードを含むインスタンスの場合、インスタンスは高可用性を提供できず、アップグレード中にビジネスが中断される可能性があります。
ビジネス運用に関しては、アップグレードによって中断は発生しませんが、ネットワーク接続が再確立される場合があります。その結果、インスタンスの再起動により、接続の再確立ログが生成され、モニタリングデータが短時間変動します。
Eureka を Nacos Professional Edition または Development Edition にアップグレードする場合:
アプリケーションコードを変更する必要はありません。
アップグレード中にネットワークが再接続された場合、ごく少数の登録済みインスタンスからのハートビートリクエストが失敗する可能性があります。Eureka クライアントは、次のハートビートリクエストプロセス中に登録を自動的に再試行し、通常のサーバーノードに接続した後に自動的に再開します。
デフォルトでは、Eureka Basic Edition の移行先の Nacos Developer Edition または Professional Edition のサービスエンジンバージョンは 2.1.2.2 です。Nacos Developer Edition または Professional Edition を最新バージョンにアップグレードする方法の詳細については、「Nacos バージョンのアップグレード」をご参照ください。
アップグレードパス
Nacos 1.2.1.0 以降を使用する MSE エンジンのみ、Basic Edition から Professional Edition または Developer Edition にアップグレードできます。MSE エンジンが Nacos 1.1.3.x を使用している場合は、エディションをアップグレードする前に Nacos エンジンのバージョンを 1.2.1 にアップグレードする必要があります。詳細については、「Nacos バージョンのアップグレード」をご参照ください。
Nacos バージョンのアップグレード
Nacos 1.1.3 は廃止されました。Nacos エンジンがこのバージョンの場合、できるだけ早く Nacos エンジンを 1.2.1 以降にアップグレードすることをお勧めします。
Nacos バージョンがアップグレードされた後、MSE コンソールではバージョンのロールバックはサポートされていません。ご質問がある場合は、テクニカルサポートのために DingTalk グループ (43525005207) に参加してください。
MSE コンソール にログインし、上部のナビゲーションバーでリージョンを選択します。
左側のナビゲーションウィンドウで、マイクロサービスの登録 > インスタンス を選択します。
次のいずれかの方法を使用して、コンソールでアップグレードを実行します。
説明インスタンスが最新バージョンの場合、インスタンスの エンジンバージョン 列に [アップグレード可能] は表示されません。
方法 1
[インスタンス] ページで、目的のインスタンスを見つけ、[エンジンバージョン] 列の [アップグレード可能] をクリックします。
方法 2
[インスタンス] ページで、目的のインスタンスの名前をクリックします。[基本情報] ページで、[エンジンバージョン] の横にある [手動アップグレード] をクリックします。
[クラスタのアップグレード] メッセージで、[OK] をクリックします。
Nacos または Eureka エンジンを Basic Edition から Professional Edition または Developer Edition にアップグレードする
MSE コンソール にログインし、上部のナビゲーションバーでリージョンを選択します。
インスタンス ページで、MSE インスタンスを見つけ、操作 列の [詳細] をクリックします。
サブスクリプションインスタンスの場合は、ビジネス要件に基づいて Upgrade または Downgrade を選択します。
従量課金インスタンスの場合は、Upgrade/Downgrade を選択します。
表示されるページで、ビジネス要件に基づいて [エディション] を選択します。
単一ノードインスタンスの場合は、Developer Edition を選択します。
複数ノードインスタンスの場合は、Professional Edition を選択します。
重要[製品エディション] を変更する場合は、次の制限事項に注意してください。
[Basic Edition] インスタンスを [Developer Edition] インスタンスまたは [Professional Edition] インスタンスにアップグレードできます。
以前のバージョンの [Developer Edition] インスタンスを、新しいバージョンの [Developer Edition] インスタンスにアップグレードできます。Developer Edition インスタンスを [Professional Edition] インスタンスにアップグレードすることはできません。
以前のバージョンの [Professional Edition] インスタンスを新しいバージョンの [Professional Edition] インスタンスにアップグレードできます。Professional Edition インスタンスを [Developer Edition] インスタンスにダウングレードすることはできません。
ページの右下隅にある [エンジンスペック]、[ノード数]、および金額を確認します。次に、[今すぐ購入] をクリックします。
アップグレードに関する FAQ
クライアントバージョンに関連する問題
Q: インスタンスが Professional Edition Nacos 2.0.0 にアップグレードされた後、2.0.0 より前のバージョンの Nacos クライアントはサポートされますか?
A: アップグレード後、MSE Nacos 構成センターはバージョン 1.0.0 以降の Nacos クライアントと互換性があります。サービス検出機能は、バージョン 1.2.0 以降の Nacos クライアントと互換性があります。ただし、1.x.x の Nacos クライアントは持続的接続機能を提供していません。バージョン 2.0.0 以降の Nacos クライアントを使用することをお勧めします。
Q: Spring Cloud Alibaba または Dubbo を使用している場合、Nacos クライアントのバージョンを更新するにはどうすればよいですか?
Spring Cloud Alibaba
A: Spring Cloud Alibaba を使用している場合は、特定のバージョンの Nacos クライアントを指定します。次のコードは例を示しています。
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>${springcloudalibaba.version}</version>
<exclusions>
<exclusion>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>${springcloudalibaba.version}</version>
<exclusions>
<exclusion>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
<version>2.0.2</version>
</dependency>Dubbo
Dubbo を使用している場合は、特定のバージョンの Nacos クライアントを指定します。次のコードは例を示しています。
Dubbo 2.7.8 を使用している場合、Nacos クライアントに多数のインスタンスが作成されます。その結果、接続数とスレッド数が急増します。したがって、Nacos クライアントのバージョンをアップグレードする前に、Dubbo バージョンをアップグレードする必要があります。詳細については、この問題に関する 詳細 を参照してください。
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-registry-nacos</artifactId>
<version>${dubbo.version}</version>
<exclusions>
<exclusion>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
<version>2.0.2</version>
</dependency>バージョンアップグレード後にエラーが報告された場合はどうすればよいですか?
Connection is unregistered または Client not connected,current status:STARTING が報告される
問題の説明: MSE インスタンスのマイクロサービスレジストリエディションが Professional Edition にアップグレードされ、Nacos クライアントバージョンが更新された後、
Connection is unregisteredまたはClient not connected,current status:STARTINGが報告されます。原因: gRPC クライアントがサーバーに接続できません。問題のトラブルシューティングを行うには、次の手順を実行します。
telnet ${nacos.server.address}:9848を使用してネットワーク接続をテストします。アプリケーションが存在するネットワークが MSE と同じ VPC にあるかどうかを確認します。
MSE インスタンスのネットワークタイプがインターネットの場合、インスタンスの IP アドレスホワイトリストを構成する必要があります。IP アドレスホワイトリストを構成する方法の詳細については、「パブリック IP アドレスホワイトリストの構成」をご参照ください。
ポート 8848 は、Nacos クライアントからアプリケーションにアクセスするために使用されます。ポート番号を変更する必要はありません。Nacos クライアントは、gRPC ベースの接続に使用されるポート番号を自動的に計算します。
Nacos cluster is running with 1.X mode, can't accept gRPC request temporarily. が報告される
問題の説明: MSE インスタンスのエディションが Professional Edition にアップグレードされ、アプリケーションの Nacos クライアントがアップグレードされた後、
"Nacos cluster is running with 1.X mode, can't accept gRPC request temporarily.”が報告されます。原因: 前述のエラーメッセージが表示されるのは、MSE Nacos Professional Edition インスタンスがデータのダブルライト操作を実行し、データの整合性をチェックしているためです。これにより、アップグレード前後の MSE Nacos インスタンスのデータの整合性が確保されます。この場合、整合性チェックが完了する前にバージョン 2.0.0 の Nacos クライアントからのリクエストは拒否されますが、1.x.x の Nacos クライアントからのリクエストと MSE コンソールへのアクセスリクエストは影響を受けません。データのダブルライトと整合性チェックが完了すると、MSE Professional Edition インスタンスはサービスを提供します。データのダブルライトと整合性チェックに必要な時間は、MSE インスタンスの容量によって異なります。ほとんどの場合、操作には 5 ~ 20 分かかります。
提案: 問題が発生した場合は、しばらく待ってから Nacos クライアントを再起動してください。