Topik ini menjelaskan cara mengonfigurasi aplikasi Spark di AnalyticDB for MySQL agar dapat mengakses sumber daya publik, seperti database yang dikelola sendiri atau layanan data dari penyedia cloud lainnya.
Latar Belakang
Internet NAT Gateway menyediakan Network Address Translation (NAT). Anda dapat membuat Internet NAT Gateway untuk Virtual Private Cloud (VPC) agar instans dalam VPC tersebut dapat mengakses internet. Untuk informasi selengkapnya, lihat Apa itu Internet NAT gateway?.
Catatan Penggunaan
Jika sumber data eksternal Anda menggunakan kontrol keamanan jaringan, seperti firewall atau daftar IP yang diizinkan (IP allowlist), Anda harus menambahkan alamat IP publik dari entri SNAT atau blok CIDR IP dari vSwitch ke dalam kontrol tersebut. Jika tidak, aplikasi Spark tidak dapat mengakses sumber data tersebut.
Prosedur
-
Internet NAT Gateway harus berada di wilayah yang sama dengan instans AnalyticDB for MySQL Anda.
-
Kami menyarankan membuat entri SNAT di Select vSwitch. Anda dapat memilih vSwitch apa pun untuk entri tersebut.
-
Di aplikasi Spark Anda, konfigurasikan parameter kunci berikut seperti pada contoh di bawah ini.
CatatanKonfigurasi ini tidak diperlukan jika Anda mengembangkan pekerjaan Spark di Notebook.
{ "comments": ["-- Berikut ini hanya contoh SparkPi. Ubah kontennya dan jalankan program spark Anda."], "args": ["1000"], "file": "local:///tmp/spark-examples.jar", "name": "SparkPi", "className": "org.apache.spark.examples.SparkPi", "conf": { "spark.driver.resourceSpec": "small", "spark.executor.instances": 1, "spark.executor.resourceSpec": "small", "spark.adb.eni.enabled": "true", "spark.adb.eni.vswitchId": "vsw-bp1ghmwrkeaw3xvnd****", "spark.adb.eni.securityGroupId": "sg-bp1airvjxl5vpr2****" } }Tabel berikut menjelaskan parameter kunci tersebut.
Parameter
Deskripsi
spark.adb.eni.enabled
Menentukan apakah akan menggunakan elastic network interface (ENI) untuk mengakses sumber data eksternal melalui tabel eksternal. Atur parameter ini ke
true.spark.adb.eni.vswitchId
ID vSwitch untuk elastic network interface. Atur parameter ini ke vSwitch ID yang ditentukan dalam SNAT entry.
spark.adb.eni.securityGroupId
ID security group untuk elastic network interface. Atur parameter ini ke ID security group di VPC tempat Internet NAT gateway berada.
Untuk informasi selengkapnya tentang aplikasi Spark, lihat Ikhtisar pengembangan aplikasi Spark.