このトピックでは、AnalyticDB for MySQL Data Lakehouse Edition (V3.0) のSparkアプリケーションに必要なパブリックネットワーク環境を設定して、自己管理データベースまたはサードパーティのクラウドサービスにアクセスする方法について説明します。
背景情報
インターネットNATゲートウェイは、パブリックアドレス変換機能を提供します。 仮想プライベートクラウド (VPC) 用のインターネットNATゲートウェイを作成して、VPC内のすべてのインスタンスまたはクラスターがインターネットにアクセスし、インターネットに接続するサービスを提供できるようにすることができます。 詳細については、「」をご参照ください。インターネットNATゲートウェイとは
使用上の注意
自己管理型データベースまたはサードパーティのクラウドサービスがファイアウォールやIPアドレスホワイトリストなどのネットワークセキュリティ設定を提供する場合、SNATエントリまたはvSwitch CIDRブロックの作成時に指定されたパブリックIPアドレスをネットワークセキュリティ設定に追加する必要があります。 これにより、Sparkアプリケーションはデータソースにアクセスできます。
手順
インターネットNATゲートウェイを作成します。 詳細については、「インターネットNATゲートウェイの作成」をご参照ください。
インターネットNATゲートウェイは、AnalyticDB for MySQLクラスターと同じリージョンに存在する必要があります。
elastic IPアドレス (EIP) をインターネットNATゲートウェイに関連付けます。 詳細については、「EIPとインターネットNATゲートウェイの関連付け」をご参照ください。
SNATエントリを作成します。 詳細については、「SNATエントリの作成」をご参照ください。
SNATエントリに [vSwitchの指定] を選択することを推奨します。
Sparkアプリケーションで次のキーパラメーターを設定します。 例:
{ "comments": ["-これはSparkPiのほんの一例です。 コンテンツを変更し、sparkプログラムを実行します。"] 、 "args": ["1000"] 、 "file": "local:/// tmp/spark-examples.jar" 、 "name": "SparkPi" 、 "className": "org.apache.spark.examples.SparkPi" 、 "conf": { "spark.driver.resourceSpec": "small" 、 "spark.exe cutor.instances": 1、 "spark.exe cutor.resourceSpec": "small" 、 "spark.adb.eni.enabled": "true" 、 "spark.adb.eni.vswitchId": "vsw-bp1ghmwrkeaw3xvnd ****" 、 "spark.adb.eni.securityGroupId": "sg-bp1airvjxl5vpr2 ****" } }
パラメーター:
キーパラメーター
説明
spark.adb.eni.enabled
外部テーブルを使用して外部データソースにアクセスするときにElastic Network Interface (ENI) を有効にするかどうかを指定します。 このパラメーターを
true
に設定します。spark.adb.eni.vswitchId
ENIのvSwitch ID。 このパラメーターを、SNATエントリの作成時に指定するvSwitch IDに設定します。
spark.adb.eni.securityGroupId
ENIのセキュリティグループID。 このパラメーターを、インターネットNATゲートウェイのVPCに属するセキュリティグループのIDに設定します。
Sparkアプリケーションの詳細については、「Sparkアプリケーション開発の概要」をご参照ください。