# YARN: Security

*Security is an integral part of any production deployment of Enterprise Data Platform*

Должно быть понятно, кто меняет данные, у кого есть доступ.

* Аутентификация - это процесс установления того, что кто-то действительно является тем, кем он есть
* Авторизация относится к правилам, которые определяют, кому и что разрешено делать.&#x20;

  > Например. Алекс может быть авторизован для создания и удаления каталогов, в то время как Ник может только читать

## Kerberos

Kerberos часто используется в целях безопасности в продакшн решениях.

Принципы Kerberos для ResourceManager и NodeManager должны быть настроены в файле `yarn-site.xml`.

> Убедитесь, что каждый пользователь, который будет выполнять задания YARN, существует на всех узлах кластера (то есть на каждом узле, на котором размещен любой демон YARN).

The following properties can be added to the yarn-site.xml file on every machine in the cluster:

```
<property>
  <name>yarn.nodemanager.keytab</name>
  <value>/etc/hadoop/conf/yarn.keytab</value>   <!-- path to the YARN keytab -->
</property>
<property>
  <name>yarn.nodemanager.principal</name>   
  <value>yarn/_HOST@YOUR-REALM.COM</value>
</property> 
<property>
  <name>yarn.nodemanager.container-executor.class</name>    
  <value>org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor</value>
</property> 
<property>
  <name>yarn.nodemanager.linux-container-executor.group</name>
  <value>yarn</value>
</property>
```

## Additional security services

Существуют также и дополнительные security services

### Ranger

Ranger is a central security policy administration console.

Он работает с Kerberos, LDAP и AD (active directory) HDFS, Yarn, Hive, HBase, Storm, Knox, Solr, Kafka и другими, которые поддерживают плагин Ranger.

### Knox

Knox немного проще. Это единая точка безопасного доступа для кластеров Hadoop. Он перенаправляет все запросы, таким образом управляя доступом к данным. Это обеспечивает упрощенный доступ через остальные REST API.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://bigdata-2.gitbook.io/bd201notes/hadoop/yarn/security.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
