Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server Windows platformon és
Azure SQL Felügyelt példányon
Ez a cikk a Hadoophoz való PolyBase-kapcsolatot befolyásoló különböző konfigurációs beállításokra nyújt referenciát. A PolyBase Hadooptal való használatáról a Külső adatok Hadoopban való elérésére való konfigurálása című témakörben olvashat.
Megjegyzés:
Az SQL Server 2022-től kezdve (16.x) a Hadoop már nem támogatott a PolyBase-ben.
Hadoop.rpc.protection beállítás
A kommunikáció egy Hadoop-klaszterben való biztonságossá tételének egyik gyakori módja a hadoop.rpc.protection konfiguráció Integrity-ra vagy Privacy-re módosítása. A PolyBase alapértelmezés szerint feltételezi, hogy a konfiguráció értéke Authenticate. Az alapértelmezett beállítás felülbírálásához adja hozzá a következő tulajdonságot a core-site.xml fájlhoz. Ennek a konfigurációnak a módosítása lehetővé teszi a biztonságos adatátvitelt a Hadoop csomópontok között, valamint a TLS csatlakozást az SQL Server-hez.
<!-- RPC Encryption information, PLEASE FILL THESE IN ACCORDING TO HADOOP CLUSTER CONFIG -->
<property>
<name>hadoop.rpc.protection</name>
<value></value>
</property>
A(z) hadoop.rpc.protection esetében a Privacy vagy a Integrity használatához a SQL Server-példány verziójának legalább SQL Server 2016 SP1 CU7, SQL Server 2016 SP2 vagy SQL Server 2017 CU3 verziójúnak kell lennie.
Példa XML fájlok CDH 5.x klaszterhez
yarn-site.xml és yarn.application.classpathmapreduce.application.classpath konfigurálással.
<?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>
Ha úgy dönt, hogy a két konfigurációs beállítást a következőre mapred-site.xmlyarn-site.xmlbontja, akkor a fájlok a következők lesznek:
yarn-site.xmlesetén:
<?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>
mapred-site.xmlesetén:
Jegyezze fel a tulajdonságot mapreduce.application.classpath. A CDH 5.x-ben a konfigurációs értékek ugyanazzal az elnevezési sémával találhatók meg az Ambariban.
<?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>
Kerberos-konfiguráció
Amikor a PolyBase hitelesít egy Kerberos-védelemmel rendelkező klaszterhez, azt várja, hogy a hadoop.rpc.protection beállítás alapértelmezettként érvényesüljön Authenticate . Ez a beállítás titkosítatlanul hagyja a Hadoop csomópontok közötti adatkommunikációt. A(z) hadoop.rpc.protectionPrivacy vagy Integrity beállításainak használatához frissítse a(z) core-site.xml fájlt a PolyBase-kiszolgálón. További információt a Hadoop-fürthöz való csatlakozás a Hadoop.rpc.protection szolgáltatással című előző szakaszban talál.
Kerberos-szal védett Hadoop-klaszterhez való csatlakozás az MIT KDC használatával:
Keresse meg a Hadoop konfigurációs könyvtárat az SQL Server telepítési útvonalán. Az elérési út általában
C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn\PolyBase\Hadoop\conf.Keresse meg a következő táblázatban felsorolt konfigurációs kulcsok Hadoop oldali konfigurációs értékét. (A Hadoop gépen keresse meg a fájlokat a Hadoop konfigurációs könyvtárában.)
Másolja a konfigurációs értékeket az SQL Server-gépen található megfelelő fájlok értéktulajdonságába.
# Konfigurációs fájl Konfigurációs kulcs Action 1 core-site.xmlpolybase.kerberos.kdchostAdja meg a KDC-állomásnevet. Például: kerberos.your-realm.com.2 core-site.xmlpolybase.kerberos.realmAdja meg a Kerberos tartományt. Például YOUR-REALM.COM1, 23 core-site.xmlhadoop.security.authenticationKeresse meg a Hadoop-oldali konfigurációt, és másolja az SQL Server-gépre. Például KERBEROS14 hdfs-site.xmldfs.namenode.kerberos.principalKeresse meg a Hadoop-oldali konfigurációt, és másolja az SQL Server-gépre. Például: hdfs/_HOST@YOUR-REALM.COM5 mapred-site.xmlmapreduce.jobhistory.principalKeresse meg a Hadoop-oldali konfigurációt, és másolja az SQL Server-gépre. Például: mapred/_HOST@YOUR-REALM.COM6 mapred-site.xmlmapreduce.jobhistory.addressKeresse meg a Hadoop-oldali konfigurációt, és másolja az SQL Server-gépre. Például: 10.xxx.xxx.174:100207 yarn-site.xmlyarn.resourcemanager.principalKeresse meg a Hadoop-oldali konfigurációt, és másolja az SQL Server-gépre. Például: yarn/_HOST@YOUR-REALM.COM1 Ezt az értéket nagybetűkkel kell írni.
2 több tartomány használata nem támogatott.Hozzon létre egy adatbázis-hatókörű hitelesítő objektumot az egyes Hadoop-felhasználók hitelesítési adatainak megadásához. További információért lásd a PolyBase Transact-SQL hivatkozást.