Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server di Windows
Azure SQL Managed Instance
Artikel ini menyediakan referensi untuk berbagai pengaturan konfigurasi yang memengaruhi konektivitas PolyBase ke Hadoop. Untuk panduan tentang cara menggunakan PolyBase dengan Hadoop, lihat Mengonfigurasi PolyBase untuk mengakses data eksternal di Hadoop.
Catatan
Mulai SQL Server 2022 (16.x), Hadoop tidak lagi didukung di PolyBase.
Pengaturan perlindungan Hadoop.rpc
Cara umum untuk mengamankan komunikasi dalam klaster Hadoop adalah dengan mengubah hadoop.rpc.protection konfigurasi menjadi Privacy atau Integrity. Secara default, PolyBase mengasumsikan konfigurasi diatur ke Authenticate. Untuk mengambil alih default ini, tambahkan properti berikut ke core-site.xml file . Mengubah konfigurasi ini memungkinkan transfer data yang aman antar node Hadoop dan koneksi TLS ke SQL Server.
<!-- RPC Encryption information, PLEASE FILL THESE IN ACCORDING TO HADOOP CLUSTER CONFIG -->
<property>
<name>hadoop.rpc.protection</name>
<value></value>
</property>
Untuk menggunakan Privacy atau Integrity untuk hadoop.rpc.protection, versi instance SQL Server harus setidaknya SQL Server 2016 SP1 CU7, SQL Server 2016 SP2, atau SQL Server 2017 CU3.
Contoh file XML untuk klaster CDH 5.x
yarn-site.xml dengan konfigurasi yarn.application.classpath dan mapreduce.application.classpath.
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>yarn.resourcemanager.connect.max-wait.ms</name>
<value>40000</value>
</property>
<property>
<name>yarn.resourcemanager.connect.retry-interval.ms</name>
<value>30000</value>
</property>
<!-- Applications' Configuration-->
<property>
<description>CLASSPATH for YARN applications. A comma-separated list of CLASSPATH entries</description>
<!-- Please set this value to the correct yarn.application.classpath that matches your server side configuration -->
<!-- For example, $HADOOP_CONF_DIR,$HADOOP_COMMON_HOME/share/hadoop/common/*,$HADOOP_COMMON_HOME/share/hadoop/common/lib/*,$HADOOP_HDFS_HOME/share/hadoop/hdfs/*,$HADOOP_HDFS_HOME/share/hadoop/hdfs/lib/*,$HADOOP_YARN_HOME/share/hadoop/yarn/*,$HADOOP_YARN_HOME/share/hadoop/yarn/lib/* -->
<name>yarn.application.classpath</name>
<value>$HADOOP_CLIENT_CONF_DIR,$HADOOP_CONF_DIR,$HADOOP_COMMON_HOME/*,$HADOOP_COMMON_HOME/lib/*,$HADOOP_HDFS_HOME/*,$HADOOP_HDFS_HOME/lib/*,$HADOOP_YARN_HOME/*,$HADOOP_YARN_HOME/lib/,$HADOOP_MAPRED_HOME/*,$HADOOP_MAPRED_HOME/lib/*,$MR2_CLASSPATH*</value>
</property>
<!-- kerberos security information, PLEASE FILL THESE IN ACCORDING TO HADOOP CLUSTER CONFIG
<property>
<name>yarn.resourcemanager.principal</name>
<value></value>
</property>
-->
</configuration>
Jika Anda memilih untuk memecah dua pengaturan konfigurasi Anda menjadi mapred-site.xml dan yarn-site.xml, maka filenya adalah sebagai berikut:
Untuk yarn-site.xml:
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>yarn.resourcemanager.connect.max-wait.ms</name>
<value>40000</value>
</property>
<property>
<name>yarn.resourcemanager.connect.retry-interval.ms</name>
<value>30000</value>
</property>
<!-- Applications' Configuration-->
<property>
<description>CLASSPATH for YARN applications. A comma-separated list of CLASSPATH entries</description>
<!-- Please set this value to the correct yarn.application.classpath that matches your server side configuration -->
<!-- For example, $HADOOP_CONF_DIR,$HADOOP_COMMON_HOME/share/hadoop/common/*,$HADOOP_COMMON_HOME/share/hadoop/common/lib/*,$HADOOP_HDFS_HOME/share/hadoop/hdfs/*,$HADOOP_HDFS_HOME/share/hadoop/hdfs/lib/*,$HADOOP_YARN_HOME/share/hadoop/yarn/*,$HADOOP_YARN_HOME/share/hadoop/yarn/lib/* -->
<name>yarn.application.classpath</name>
<value>$HADOOP_CLIENT_CONF_DIR,$HADOOP_CONF_DIR,$HADOOP_COMMON_HOME/*,$HADOOP_COMMON_HOME/lib/*,$HADOOP_HDFS_HOME/*,$HADOOP_HDFS_HOME/lib/*,$HADOOP_YARN_HOME/*,$HADOOP_YARN_HOME/lib/*</value>
</property>
<!-- kerberos security information, PLEASE FILL THESE IN ACCORDING TO HADOOP CLUSTER CONFIG
<property>
<name>yarn.resourcemanager.principal</name>
<value></value>
</property>
-->
</configuration>
Untuk mapred-site.xml:
Perhatikan properti mapreduce.application.classpath. Di CDH 5.x, Anda dapat menemukan nilai konfigurasi di bawah konvensi penamaan yang sama di Ambari.
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration xmlns:xi="http://www.w3.org/2001/XInclude">
<property>
<name>mapred.min.split.size</name>
<value>1073741824</value>
</property>
<property>
<name>mapreduce.app-submission.cross-platform</name>
<value>true</value>
</property>
<property>
<name>mapreduce.application.classpath</name>
<value>$HADOOP_MAPRED_HOME/*,$HADOOP_MAPRED_HOME/lib/*,$MR2_CLASSPATH</value>
</property>
<!--kerberos security information, PLEASE FILL THESE IN ACCORDING TO HADOOP CLUSTER CONFIG
<property>
<name>mapreduce.jobhistory.principal</name>
<value></value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value></value>
</property>
-->
</configuration>
Konfigurasi Kerberos
Ketika PolyBase melakukan autentikasi ke klaster yang diamankan dengan Kerberos, PolyBase mengharapkan setelan hadoop.rpc.protection bernilai Authenticate secara default. Pengaturan ini membuat komunikasi data antar node Hadoop tidak terenkripsi. Untuk menggunakan pengaturan Privacy atau hadoop.rpc.protection untuk core-site.xml, perbarui file Integrity pada server PolyBase. Untuk informasi selengkapnya, lihat bagian sebelumnya Menyambungkan ke Kluster Hadoop dengan Hadoop.rpc.protection.
Untuk menyambungkan ke kluster Hadoop yang diamankan Kerberos menggunakan MIT KDC:
Temukan direktori konfigurasi Hadoop di jalur penginstalan SQL Server. Biasanya, jalurnya adalah
C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn\PolyBase\Hadoop\conf.Temukan nilai konfigurasi sisi Hadoop dari kunci konfigurasi yang tercantum dalam tabel berikut. (Pada komputer Hadoop, temukan file di direktori konfigurasi Hadoop.)
Salin nilai konfigurasi ke properti nilai dalam file yang sesuai di komputer SQL Server.
# File konfigurasi Kunci konfigurasi Action 1 core-site.xmlpolybase.kerberos.kdchostTentukan nama host KDC. Contohnya, kerberos.your-realm.com.2 core-site.xmlpolybase.kerberos.realmTentukan realm Kerberos. Misalnya, YOUR-REALM.COM1, 23 core-site.xmlhadoop.security.authenticationTemukan konfigurasi sisi Hadoop dan salin ke komputer SQL Server. Misalnya, KERBEROS14 hdfs-site.xmldfs.namenode.kerberos.principalTemukan konfigurasi sisi Hadoop dan salin ke komputer SQL Server. Misalnya: hdfs/_HOST@YOUR-REALM.COM5 mapred-site.xmlmapreduce.jobhistory.principalTemukan konfigurasi sisi Hadoop dan salin ke komputer SQL Server. Misalnya: mapred/_HOST@YOUR-REALM.COM6 mapred-site.xmlmapreduce.jobhistory.addressTemukan konfigurasi sisi Hadoop dan salin ke komputer SQL Server. Misalnya: 10.xxx.xxx.174:100207 yarn-site.xmlyarn.resourcemanager.principalTemukan konfigurasi sisi Hadoop dan salin ke komputer SQL Server. Misalnya: yarn/_HOST@YOUR-REALM.COM1 Nilai ini harus ditulis dengan huruf kapital.
2 Multi-realm tidak didukung.Buat objek kredensial cakupan database untuk menentukan informasi autentikasi untuk setiap pengguna Hadoop. Untuk informasi lebih lanjut, lihat referensi Transact-SQL PolyBase.