Programmēšana

Kā Apache Ranger un Chuck Norris palīdz nodrošināt Hadoop

Hadoop drošības projekts ar nosaukumu Ranger it kā tika nosaukts par godu Čakam Norisam viņa lomā "Walker, Texas Ranger". Projekta saknes ir XA Secure, kuru iegādājās Hortonworks un pēc tam pārdēvēja par Argus, pirms apmetās Apache programmatūras fondā kā Ranger.

Kad Hadoop sāka, tas bija brīvi savienotu detaļu komplekts, ko galvenokārt izmantoja lielo interneta uzņēmumu, piemēram, Yahoo, aizmugurē. Šīs daļas tika iesaiņotas izplatījumos un tirgotas kā Hadoop, piemēram, MapR, Cloudera un Hortonworks.

Šāda fragmentāra arhitektūra nav nekas neparasts atvērtā koda pasaulē vai pat plašā komerciālās programmatūras pasaulē. Tomēr tas rada drošības problēmas. Daži to lasīs kā "tas ir nedrošs", bet tas ne vienmēr tā ir - lai arī tā var būt. Problēma drīzāk ir tā, kā jūs autentificējat lietotājus visām šīs sistēmas daļu daļām - un, tiklīdz jūs tos autentificējat, kā jūs pilnvarojat viņus darīt tikai to, ko jūs domājat, lai ļautu viņiem darīt?

Katrai Hadoop daļai ir sava LDAP un Kerberos autentifikācija, kā arī savi autorizācijas līdzekļi un noteikumi (un vairumā gadījumu to pašu ieviešana ir pilnīgi atsevišķa). Tas nozīmē, ka jums ir jākonfigurē Kerberos vai LDAP katrai atsevišķai daļai, pēc tam definējiet šos noteikumus katrā atsevišķā konfigurācijā. Ko Apache Ranger dara, ir nodrošināt spraudni katrai no šīm Hadoop daļām un kopēju autentifikācijas repozitoriju, kā arī ļaut jums noteikt politikas centralizētā vietā.

Ranger nepārprotami ir Hortonworks sponsorēts projekts (atšķirībā no Cloudera vai MapR vai tagad Databricks). To var pateikt daļēji pēc tā, kā tas ir mizots (zaļš), un daļēji tāpēc, ka tas atbalsta. Pašlaik Ranger atbalsta sekojošo:

  • HDFS
  • Stropu
  • Vētra
  • HBase
  • Knoks
  • Dzija
  • Kafka
  • Solr

Izņemot HDFS un HBase, kas tiek atbalstīti kā daļa no Hadoop un Solr kodola, šie ir daži no vairāk "Hortonworksy" projektiem. Mūsdienīgā izvietojumā jūs, iespējams, redzēsit citus komponentus, piemēram, Spark vai, iespējams, Impala (no Cloudera). Tomēr Ranger ir lieliska lieta.

Kā darbojas Ranger

Pakalpojumā Ranger katram komponentam, kuru strādājat ar krātuvi. Šīs krātuves ir balstītas uz pamatā esošo spraudni vai aģentu, kas darbojas ar šo komponentu.

Ar katru no šiem krātuvēm ir saistīts politikas kopums, kas ir saistīts ar aizsargājamo resursu (tabulu, mapi vai kolonnu) un grupu (piemēram, administratoriem) un to, ko viņiem ir atļauts darīt ar šo lietu (lasīt , rakstiet utt.). Jūs piešķirat katrai politikai nosaukumu - sakiet: "Tikai grp_nixon var lasīt apac_china tabulu."

GUI ar centrālo skatu uz to, kam ir atļauts darīt to, kas Hadoop ekosistēmai piešķir ļoti nepieciešamo vienkāršību, taču tas vēl nav viss, ko Ranger piedāvā. Tas nodrošina arī revīzijas reģistrēšanu. Lai gan tas nevar aizstāt visu lietojumprogrammu audita reģistrēšanu, kādu jūs kādreiz varētu vēlēties, ja jums vienkārši jāzina, kurš kuram HDFS piekļuva vai kāda politika tika ieviesta, iespējams, tas ir tieši tas, kas jums nepieciešams.

Turklāt Ranger var nodrošināt atslēgu pārvaldības pakalpojumus, lai strādātu ar HDFS jauno TDE (caurspīdīga datu šifrēšana). Tātad, ja jums nepieciešama pilnīga šifrēšana un tīrs veids, kā pārvaldīt ar to saistītās atslēgas, Ranger nav slikta vieta, kur sākt.

Reindžers raugās uz priekšu

Es domāju, ka lielākās cerības uz Ranger rada tā paplašināmība. Vietām, kuras nav aptvertas, varat izveidot savus spraudņus.

Ja jūs cerējāt, ka tas ir Hadoop drošības stāsta beigas, diemžēl Cloudera ir savs Apache projekts ar nosaukumu Sentry (kuru, šķiet, ka MapR arī atbalsta), kas aptver gandrīz to pašu apgabalu. Taisnības labad jāsaka, ka Sentry bija pirmais, pēc tam Hortonworks iegādājās XA Secure. Tas nozīmē, ka Sentry dokumentācija praktiski nepastāv, pārklājums ir ierobežotāks, un projekta vietne ir nolaista (lai gan aktivitātes GitHub nesen palielinājās).

Hadoop drošība ir gājusi garu ceļu. Ranger dod diezgan visaptverošu, ja tomēr nedaudz nepilnīgu veidu, kā pārvaldīt ekosistēmu. Nepilnības, kas saglabājas, galvenokārt ir saistītas ar pārdevēju konkurenci lielo datu pasaulē. Tos var aizpildīt, izmantojot projekta paplašināmību, taču būtu patīkami redzēt lielāku sadarbību un kopienu Apache pasaulē.

$config[zx-auto] not found$config[zx-overlay] not found