Isilon: Ambari Automated Kerberos Configuration with Isilon
Summary: Tässä artikkelissa on ohjeet Kerberos-suojauksen määrittämiseen Sambarin hallinnoimassa Hadoop-klusterissa.
Symptoms
Cause
Resolution
Artikkelissa on tietoja Kerberos-suojauksen määrittämisestä Sambarin hallinnoimalla Hadoop-klusterilla.
Kerberos on keskeinen hadoop-todennuksen ja -salauksen keskus, mutta sen määrittäminen ja hallinta voi olla vaikeaa. Ambari 2.0 sisälsi ohjatun toiminnon automaattisen Kerberos-määrityksen, joka nopeuttaa ja vähentää virheiden alttiutta merkittävästi. OneFS 8.0.0.1 -versiosta alkaen Dell EMC Isilon -asiakkaat voivat hyödyntää tätä erinomaista ominaisuutta.
Edellytykset
- OneFS 8.0.0.1 tai uudempi.
- Ambari 2.0 tai uudempi.
- MIT KDC on käynnissä (Binidaalia ei tueta). Määritä Kerberos-infrastruktuuri näiden ohjeiden mukaisesti.
- Dns-välitys ja käänteinen dns kaikkien isäntien välillä.
- Kaikki palvelut ovat käynnissä (vihreällä) Ambari-koontinäytössä.
Ota Kerberos käyttöön
Esimääritys
Ennen kuin käynnistät ohjatun toiminnon, sinun on määritettävä kaksi kokoonpanoa ja käynnistettävä kaikki palvelut uudelleen.- HDFS:ssä> mukautettu core-site-asetushadoop.security.token.service.use_ip on false
- Lisää MapReduce2 -> Advanced mapred-site -kohdassa "'hadoop classpath':" mapreduce.application.classpath-polun alkuun. Merkitse kaksoispiste ja taustat muistiin (mutta älä kopioi lainausmerkkejä).
Aloittaminen
Siirry kohtaan Admin -> Kerberos ja paina Enable Kerberos -painiketta. Tämän osan otsikot viittaavat ohjatun Kerberos-sivun nimiin.
Valitse Existing MIT KDC, varmista, että edellytykset täyttyvät, ja valitse Next (Seuraava). Huomaa, että Isilon ei käytä Javaa eikä tarvitse JCE:tä.
Kerberos-/Asennus- ja Testi-Kerberos-työaseman määrittäminen
Täytä kaikki KDC:n ja järjestelmänvalvojan palvelimen tiedot. Vaiheessa 3 (Kerberos Clientin asentaminen ja testaaminen) Ambari-palvelin tekee savutestin, jolla varmistetaan, että Kerberos on määritetty oikein.
Konfigurointi / konfiguroinnin vahvistaminen
a) Ambari User Principals (UPNs)
Ambari luo käyttäjäpääkäyttäjät muodossa $ -$ @$ ja yhdistää päämiehet vain $:iin tiedostojärjestelmässä käyttämällä hadoop.security.auth_to_local core-site.xml-tiedostossa.Isilon ei noudata kartoitussääntöjä, joten sinun on poistettava -$ kaikista Ambari Principals -osion pääkoneista. Isilon poistaa @$ -määrityksen käytöstä, joten aliasta ei tarvita. Tee seuraavat muutokset Ambari 2.2.1 -klusterissa, jossa on KÄYTÖSSÄ HDFS,RAJAN, MapReduce2, Tez, Hive, HBase,Osa, Sqoop, Oo falcon, Falcon, Storm, Falconme, Accumulo, Ambari Metrics, Kafka, Kakkospainikkee, Mahout, Slider ja Spark, tee seuraavat muutokset General-välilehdessä:
- Smokeuser Principal -nimi: ${cluster-env/smokeuser}-$ @$ => ${cluster-env/smokeuser}@$
- spark.history.kerberos.principal: ${spark-env/spark_user}-$ @$ => ${spark-env/spark_user}-@$
- Storm Principal -nimi: ${storm-env/storm_user}-$ @$ => ${storm-env/storm_user}-@$
- HBase-käyttäjän pääkäyttäjä: ${hbase-env/hbase_user}-$ @$ => ${hbase-env/hbase_user}@$
- HDFS-käyttäjän päämies: ${hadoop-env/hdfs_user}-$ @$ => ${hadoop-env/hdfs_user}@$
- accumulo_principal_name: ${accumulo-env/accumulo_user}-$ @$ => ${accumulo-env/accumulo_user}@$
- trace.user: tracer-$ @$ => tracer@$
b) Service Principals (SPNs)
Ambari luo palvelun pääkäyttäjiä, joista osa poikkeaa UNIX-käyttäjänimistään. Koska Isilon ei noudata yhdistämissääntöjä, päänimiä on muokattava vastaamaan niiden UNIX-käyttäjänimiä. Tee seuraavat muutokset Ambari 2.2.1 -klusterin Advanced-välilehteen:
- HDFS -> dfs.namenode.kerberos.principal: nn/_HOST@$ => hdfs/_HOST@$
- KAKKOSPAINIKKEEN -> ntin.resourcemanager.principal: rm/_HOST@$ => _HOST@ $
- KAKKOSPAINIKKEEN -> ntin.nodemanager.principal: nm/_HOST@$ => nm/_HOST@$
- MapReduce2 -> mapreduce.jobhistory.principal: jhs/_HOST@$ => mapred/_HOST@$
- Falcon -> *.dfs.namenode.kerberos.principal: nn/_HOST@$ => hdfs/_HOST@$

Kun olet määrittänyt asianmukaiset päämiehet, valitse Next (Seuraava). Valitse Confirm Configuration (Vahvista määritys) -näytössä Next (Seuraava).
Pysäytä palvelut / Kerberize-klusteri
Pysäytys- ja kerberizing-palvelujen pitäisi onnistua.

Älä jatka: Isilon ei salli Sambarin luoda avainsanat Isilon-reitille. Sen sijaan Kerberos on määritettävä Manuaalisesti Isilonissa seuraavasti.
a) Luo KDC Isilon-valtuuttajaksi
Huomautus: Jos tämä Isilon-alue on jo määritetty käyttämään MIT KDC -työkalua, voit ohittaa nämä vaiheet.
isi auth krb5 create --realm=$REALM --admin-server=$admin_server --kdc=$kdc_server --user=$admin_principal --password=$admin_password
isi zone zones modify --zone=$isilon_zone --add-auth-provider=krb5:$REALM
b) Service Principal -palvelujen luominen HDFS- ja HTTP-protokollaa varten (WebHDFS).
isi auth krb5 spn create --provider-name=$REALM --spn=hdfs/$isilon_smartconnect@$REALM --user=$admin_principal --password=$admin_password
isi auth krb5 spn create --provider-name=$REALM --spn=HTTP/$isilon_smartconnect@$REALM --user=$admin_principal --password=$admin_password
c) Tarvittavien välityspalvelinkäyttäjien luominen
Suojaamattomissa klustereissa kuka tahansa käyttäjä voi kohdistaa muita käyttäjiä. Suojatuissa klustereissa välityspalvelimen käyttäjät on määritettävä erikseen.
Jos sinulla on Hive tai Ooeb, lisää asianmukaiset välityspalvelimen käyttäjät.
isi hdfs proxyusers create oozie --zone=$isilon_zone --add-user=ambari-qa
isi hdfs proxyusers create hive --zone=$isilon_zone --add-user=ambari-qa
d) Poista yksinkertainen todennus käytöstä
Vain Kerberos tai delegointi todennus on sallittu.
isi hdfs settings modify --zone=$isilon_zone --authentication-mode=kerberos_only
Nyt kun myös Isilon on määritetty, siirry ohjatun toiminnon viimeiseen vaiheeseen valitsemalla Ambarissa Next.
Aloitus- ja testipalvelut

Jos palvelut eivät käynnisty, seuraavassa on joitakin kerberos-ongelmien virheenkorjaus vinkkejä:
- VIRHEESTÄ JOHTUVAN virheen vuoksi komento "azuren.resourcemanager.principal" on määritettävä kansioon azuren/$rm_hostname@$REALM in KAKKOSPAINIKKEEN ->Custom resourcen-site. _HOST-syntaksi ei toimi, kun Kerberos on käytössä.
- Voit korjata Java GSSAPI/Kerberos -virheet lisäämällä HADOOP_OPTS "-Dsun.security.krb5.debug=true".
- Jos kyseessä on HTTP 401 -virhe, lisää virheenkorjaustietoja curl-komennolla -iv .
- Varmista, että välitys- ja käänteisen DNS:n määritys on käytössä kaikkien isäntien välillä.
HDFS:>ssä mukautettu ydinsivusto on määrittänyt hadoop.rpc.protection-asetuksenintegrity( eheys) tai privacy (tietosuoja). Todennuksen lisäksi eheystakuun sanomia ei ole peukaloitu, ja yksityisyys salaa kaikki viestit.
Suorita tehtävä!
Kokeile minkä tahansa asiakasisännän MapReduce-tehtävää!
kinit <some-user> yarn jar /usr/hdp/current/hadoop-mapreduce-client/hadoop-mapreduce-examples.jar pi 1 1000
Job Finished in 37.635 seconds
Estimated value of Pi is 3.14800000000000000000
Congratulations--you have secured your cluster with Kerberos!
(valinnainen) Poista Kerberos käytöstä
Isilonin puhdistaminen
Puhdista Isilon ensin. Tämä tarkoittaa käytännössä Kerberos-toiminnon käyttöönottoa.
a) Poista Kerberos-todennus käytöstä
isi hdfs settings modify --authentication-mode=simple_only --zone=$isilon_zone
b) Poista kaikki välityspalvelimen käyttäjät
isi hdfs proxyusers delete oozie --zone=$isilon_zone
isi hdfs proxyusers delete hive --zone=$isilon_zone
c) Poista pääkoneet
isi auth krb5 spn delete --provider-name=$REALM --spn=hdfs/$isilon_smartconnect@$REALM --all
isi auth krb5 spn delete --provider-name=$REALM --spn=HTTP/$isilon_smartconnect@$REALM --all
Huomioi, että edellä mainitut komennot poistavat ainoastaan kyseiset päämiehet Isilonista, mutta älä poista niitä KDC:stä. Poista Isilon-päämiehet KDC:stä seuraavilla komennoilla:
kadmin -p $admin_principal
kadmin: delete_principal hdfs/$isilon_smartconnect@$REALM
kadmin: delete_principal HTTP/$isilon_smartconnect@$REALM
d) Poista KDC Isilon-todennuksen tarjoajana
isi zone zones modify --zone=$isilon_zone --remove-auth-provider=krb5:$REALM
isi auth krb5 delete --provider-name=$REALM
Asiakkaiden puhdistaminen Ambari-sovelluksella
Valitse Admin> - Kerberos -kohdassa Disable Kerberos. Kaikkien palveluiden pitäisi palaa vihreänä.