Конфигурационные параметры HBase

Для конфигурации сервиса используйте следующие параметры, доступные в ADCM.

ПРИМЕЧАНИЕ
  • Некоторые из перечисленных параметров становятся доступны в UI ADCM после установки флага Advanced.

  • Значения, установленные в Custom-параметрах, перепишут текущие значения параметров, даже если они read-only.

hbase-site.xml
Параметр Описание Значение по умолчанию

hbase.balancer.period

Интервал для запуска балансировщика регионов в мастере

300000

hbase.client.pause

Общее значение паузы клиента. Используется для указания паузы перед повторной попыткой после неудачного получения, поиска региона и так далее. Для получения более подробной информации об использовании пауз с повторными попытками смотрите описание параметра hbase.client.retries.number

100

hbase.client.max.perregion.tasks

Максимальное количество одновременных задач мутации, которые клиент может поддерживать в одном регионе. Иными словами, если для определенного региона уже выполняется hbase.client.max.perregion.tasks процессов записи, новые операции put не будут отправляться в этот регион, пока процесс записи не завершится

1

hbase.client.max.perserver.tasks

Максимальное количество одновременных задач мутации, которые один экземпляр HTable будет отправлять на один Region-сервер

2

hbase.client.max.total.tasks

Максимальное количество одновременных задач мутации, которые один экземпляр HTable будет отправлять в кластер

100

hbase.client.retries.number

Максимальное количество повторных попыток. Заданное значение используется для всех операций повтора, таких как: получение значения ячейки, запуск обновления строки и так далее. Интервал повтора вычисляется функцией, основанной на hbase.client.pause. Чтобы узнать, как увеличивается размер резервных копий при повторной обработке, смотрите значение константы RETRY_BACKOFF. Измените этот параметр и hbase.client.pause в соответствии с вашей рабочей нагрузкой

15

hbase.client.scanner.timeout.period

Период аренды клиентского сканера (в миллисекундах)

60000

hbase.cluster.distributed

Режим кластера. Возможные значения: false — для автономного режима и псевдораспределенных систем с управляемым ZooKeeper; true — для полностью распределенного режима с неуправляемым ZooKeeper Quorum. Если указано false, все демоны HBase и ZooKeeper запускаются в одной JVM, если true — каждый демон запускается в отдельной JVM

true

hbase.hregion.majorcompaction

Интервал между выполнением Major compaction (в миллисекундах). Установите значение 0, чтобы отключить автоматические выполнение Major compaction по времени. Major compaction, запрошенные пользователем и основанные на размере, будут по-прежнему выполняться. Значение параметра умножается на hbase.hregion.majorcompaction.jitter, чтобы операция сжатия выполнялась в случайное время в течение определенного временного промежутка

604800000

hbase.hregion.max.filesize

Максимальный размер файла. Если общий размер некоторых HFile в регионе превышает это значение, регион разделяется на две части. Существует два варианта работы этого параметра: первый, когда размер любого хранилища превышает пороговое значение, затем разделяется, а другой — если общий размер региона превышает пороговое значение, затем разделяется. Его можно настроить с помощью hbase.hregion.split.overallfiles

10737418240

hbase.hstore.blockingStoreFiles

Если количество StoreFile в хранилище превышает значение данного параметра (один StoreFile записывается на каждый сброс MemStore), обновления для этого региона блокируются до тех пор, пока не будет завершено сжатие (compaction) или пока не будет превышено значение hbase.hstore.blockingWaitTime

16

hbase.hstore.blockingWaitTime

Время, в течение которого регион будет блокировать обновления после достижения предела StoreFile. Лимит определяется параметром hbase.hstore.blockingStoreFiles. По истечении этого времени регион перестанет блокировать обновления, даже если процесс сжатия не был завершен

90000

hbase.hstore.compaction.max

Максимальное количество StoreFiles, которое будет выбрано для одной процедуры сжатия (Minor compaction), независимо от количества StoreFiles, готовых к сжатию. Значение hbase.hstore.compaction.max контролирует время, необходимое для завершения одного сжатия. Установка большего значения означает, что в одно сжатие включается больше файлов StoreFile. В большинстве случаев подходит значение по умолчанию

10

hbase.hstore.compaction.min

Минимальное количество StoreFiles, которые должны быть пригодны для сжатия, прежде чем выполнять операцию сжатия. Назначение параметра состоит в том, чтобы избежать ситуации, когда выполняется сжатие для большого количества маленьких StoreFiles. Установка значения 2 приводит к выполнению незначительного сжатия каждый раз, когда у вас есть два StoreFile в хранилище, и это, вероятно, неподходящее поведение. Если вы установите слишком большое значение, все остальные значения необходимо будет соответствующим образом отрегулировать. В большинстве случаев подходит значение по умолчанию. В предыдущих версиях HBase параметр hbase.hstore.compaction.min назывался hbase.hstore.compactionThreshold

3

hbase.hstore.compaction.min.size

Все StoreFile, размер которых меньше, чем указано параметром, могут быть подвержены процедуре Minor compaction. StoreFiles, размер которых равен или больше значения данного параметра, оцениваются с помощью hbase.hstore.compaction.ratio, чтобы определить, подходят ли они для сжатия. Поскольку это ограничение автоматически включает все StoreFile, размер которых меньше значения параметра, значение параметра может потребоваться уменьшить в средах с высокой интенсивностью записи, когда выполняется запись большого количества файлов размером 1-2 МБ. В противном случае, каждый StoreFile будет номинирован на сжатие, а размер результирующего файла будет все так же мал, что повлечет очередное сжатие. Если значение параметра небольшое, проверка соотношения срабатывает быстрее. Это устранило некоторые проблемы, замеченные в более ранних версиях HBase, но в большинстве ситуаций изменение этого параметра больше не требуется

134217728

hbase.hstore.compaction.ratio

Для операции Minor compaction данный параметр используется для определения того, подходит ли для сжатия StoreFile, размер которого превышает hbase.hstore.compaction.min.size. Назначение параметра заключается в ограничении сжатия больших StoreFile. Значение hbase.hstore.compaction.ratio выражается в виде десятичного числа с плавающей запятой

1.2F

hbase.hstore.compaction.ratio.offpeak

Коэффициент сжатия, используемый при сжатиях вне пиковой нагрузки, если также настроены часы непиковой нагрузки. Значение параметра — десятичное число с плавающей запятой. Позволяет выполнять более агрессивное (или менее агрессивное, если вы установите его ниже, чем hbase.hstore.compaction.ratio) сжатие в течение заданного периода времени. Значение игнорируется, если непиковое время отключено (по умолчанию). Параметр работает аналогично параметру hbase.hstore.compaction.ratio

5.0F

hbase.hstore.compactionThreshold

Если количество StoreFiles в хранилище превышает значение параметра (один StoreFile записывается при каждом сбросе MemStore), выполняется процедура сжатия для перезаписи всех StoreFiles в один StoreFile. Чем больше значение, тем реже выполняется сжатие, однако в таком случае для завершения сжатия требуется больше времени

3

hbase.hstore.flusher.count

Количество потоков, выполняющих сбросы (flush). При меньшем количестве потоков сбросы в MemStore будут поставлены в очередь. При большем количестве потоков сбросы будут выполняться параллельно, увеличивая нагрузку на HDFS и потенциально вызывая больше операций сжатия

2

hbase.hstore.time.to.purge.deletes

Время задержки до выполнения очистки маркеров удаления, включая маркеры с отметками времени в будущем. Если значение не указано или используется 0, все маркеры удаления, в том числе с отметками времени в будущем, удаляются во время следующего Major compaction. В противном случае маркер удаления сохраняется до этапа основного сжатия (Major compaction), которое выполняется после отметки времени маркера плюс значение этого параметра (в миллисекундах)

0

hbase.master.ipc.address

HMaster RPC

0.0.0.0

hbase.normalizer.period

Период, в течение которого нормализатор региона работает на Мастере (в миллисекундах)

300000

hbase.regionserver.compaction.enabled

Включает/отключает сжатие, используя значения true/false. Вы также можете динамически переключать операции сжатия с помощью команды оболочки compaction_switch

true

hbase.regionserver.ipc.address

IP-адрес Region Server

0.0.0.0

hbase.regionserver.regionSplitLimit

Максимальное количество регионов, при достижении которого деление на регионы (split) больше не выполняется. Данный параметр не является жестким ограничением количества регионов, но служит ориентиром для Region Server, чтобы прекратить разделение после определенного предела

1000

hbase.rootdir

Каталог, совместно используемый Region Servers и в который HBase записывает данные. URL-адрес должен быть полностью определенным и должен включать схему файловой системы. Например, чтобы указать каталог HDFS /hbase, где экземпляр NameNode HDFS имеет адрес namenode.example.org и порт 9000, установите это значение следующим образом: hdfs://namenode.example.org:9000/hbase

 — 

hbase.zookeeper.quorum

Список серверов в ZooKeeper ensemble, разделенных запятыми. Например, host1.mydomain.com,host2.mydomain.com,host3.mydomain.com. По умолчанию используется значение localhost для локальных и псевдораспределенных режимов работы. Для полностью распределенных систем значение параметра должно содержать полный список серверов ZooKeeper ensemble. Если HBASE_MANAGES_ZK установлено в hbase-env.sh, HBase будет использовать список серверов для запуска ZooKeeper при запуске/остановке кластера. На стороне клиента к списку ensemble добавляется значение hbase.zookeeper.property.clientPort и передается конструктору ZooKeeper в качестве параметра строки подключения

 — 

zookeeper.session.timeout

Время ожидания сеанса ZooKeeper в миллисекундах. Используется двумя способами. Первый способ — когда значение обрабатывается клиентом ZooKeeper, который HBase использует для подключения к ensemble. Параметр также используется HBase, когда последний запускает сервер ZooKeeper (в этом случае тайм-аут передается как maxSessionTimeout). Более деальная информация доступна на странице документации ZooKeeper. Например, если Region Server HBase подключается к ZooKeeper ensemble, который также управляется HBase, время ожидания сеанса будет задано этим параметром. Но Region Server, который подключается к ensemble, управляемому другой конфигурацией, будет использовать maxSessionTimeout этого ensemble. Таким образом, даже если HBase-кофигурация использует 90 секунд, максимальный тайм-аут ensemble может быть меньшее, и он будет иметь приоритет. Текущее значение по умолчанию maxSessionTimeout в ZooKeeper составляет 40 секунд, что меньше, чем в HBase

90000

zookeeper.znode.parent

Корневой znode для HBase в ZooKeeper. Все файлы HBase ZooKeeper, которые используют относительные пути, будут попадать в этот узел. По умолчанию все пути к файлам HBase ZooKeeper используют относительные пути, поэтому все файлы будут попадать в данный каталог, если не будут изменены

/hbase

hbase.rest.port

Порт, используемый HBase Rest Server

60080

hbase.zookeeper.property.authProvider.1

Указывает класс провайдера аутентификации для ZooKeeper

 — 

hbase.security.authentication

Установите значение true, чтобы использовать строгую аутентификацию (strong authentication) для HBase RPC

false

hbase.security.authorization

Установите значение true, чтобы использовать строгую авторизацию (strong authorization) для HBase RPC

false

hbase.master.kerberos.principal

Принципал Kerberos, используемый для запуска процесса HMaster

 — 

hbase.master.keytab.file

Абсолютный путь к Kerberos keytab-файлу, который используется для входа в систему принципала HMaster server

 — 

hbase.regionserver.kerberos.principal

Принципал Kerberos, который используется для запуска процесса HRegionServer

 — 

hbase.regionserver.keytab.file

Абсолютный путь к Kerberos keytab-файлу, который используется для входа в систему принципала HRegionServer

 — 

hbase.rest.authentication.type

Тип аутентификации Kerberos для REST Gateway

 — 

hbase.rest.authentication.kerberos.principal

Принципал Kerberos для REST Gateway

 — 

hbase.rest.support.proxyuser

Позволяет использовать REST-сервер с поддержкой режима прокси-пользователей

false

hbase.rest.authentication.kerberos.keytab

Kerberos keytab-файл для REST gateway

 — 

hbase.thrift.keytab.file

Kerberos keytab-файл для Thrift

 — 

hbase.rest.keytab.file

Kerberos keytab-файл для HBase REST gateway

 — 

hbase.rest.kerberos.principal

HBase REST gateway Kerberos principal

 — 

hbase.thrift.kerberos.principal

Thrift Kerberos principal

 — 

hbase.thrift.security.qop

Устанавливает проверку аутентификации, целостности и приватности. Поддерживаемые значения:

  • auth-conf — проверка аутентификации, целостности и приватности;

  • auth-int — проверка аутентификации и целостности;

  • auth — только проверка аутентификации.

 — 

phoenix.queryserver.keytab.file

Путь к Kerberos keytab-файлу

 — 

phoenix.queryserver.kerberos.principal

Принципал Kerberos для использования при аутентификации. Если phoenix.queryserver.kerberos.http.principal не задан, указанный принципал также будет использоваться как для аутентификации соединений SPNEGO, так и для подключения к HBase

 — 

phoenix.queryserver.kerberos.keytab

Полный путь к Kerberos keytab-файлу, который будет использоваться для входа в систему принципала HMaster server

 — 

phoenix.queryserver.http.keytab.file

Keytab-файл, используемый для аутентификации соединений SPNEGO. Этот параметр должен быть указан, если задан phoenix.queryserver.kerberos.http.principal. phoenix.queryserver.keytab.file будет использоваться, если данный параметр не указан

 — 

phoenix.queryserver.http.kerberos.principal

Принципал Kerberos для использования при аутентификации подключений SPNEGO. phoenix.queryserver.kerberos.principal будет использоваться, если этот параметр не задан

 — 

phoenix.queryserver.kerberos.http.principal

Параметр устарел. Используйте phoenix.queryserver.http.kerberos.principal

 — 

hbase.security.authentication.ui

Включает Kerberos-аутентификацию для веб-интерфейса HBase, используя SPNEGO

 — 

hbase.security.authentication.spnego.kerberos.principal

Принципал Kerberos для SPNEGO-аутентификации

 — 

hbase.security.authentication.spnego.kerberos.keytab

Путь к Kerberos keytab-файлу с принципалами для SPNEGO-аутентификации

 — 

hbase.ssl.enabled

Определяет, включен ли SSL для веб-интерфейсов

false

hadoop.ssl.enabled

Определяет, включен ли SSL для Hadoop RPC

false

ssl.server.keystore.location

Путь к используемому keystore-файлу

 — 

ssl.server.keystore.password

Пароль для доступа к keystore-файлу

 — 

ssl.server.truststore.location

Путь к используемому truststore-файлу

 — 

ssl.server.truststore.password

Пароль для доступа к truststore-файлу

 — 

ssl.server.keystore.keypassword

Пароль для доступа к ключу в keystore-файле

 — 

hbase.rest.ssl.enabled

Определяет, включен ли SSL для HBase REST server

false

hbase.rest.ssl.keystore.store

Путь к используемому keystore-файлу

 — 

hbase.rest.ssl.keystore.password

Пароль для доступа к keystore-файлу

 — 

hbase.rest.ssl.keystore.keypassword

Пароль для доступа к ключу в keystore-файле

 — 

hadoop.security.credential.provider.path

Путь к провайдеру учетных данных (jceks), содержащему пароли ко всем сервисам

 — 

Credential encryption
Параметр Описание Значение по умолчанию

Encryption enable

Определяет, включено ли шифрование учетных данных

false

Credential provider path

Путь к провайдеру учетных данных для создания файлов .jceks, содержащих закрытые ключи

jceks://file/etc/hbase/conf/hbase.jceks

Ranger plugin credential provider path

Путь к провайдеру учетных данных плагина Ranger

jceks://file/etc/hbase/conf/ranger-hbase.jceks

Custom jceks

Определяет, используются ли кастомные файлы .jceks, расположенные по пути провайдера учетных данных (true), или автосгенерированные (false)

false

Password file name

Имя файла паролей в classpath сервиса, если использование файла паролей выбрано в опциях credstore

hbase_credstore_pass

hbase-env.sh
Параметр Описание Значение по умолчанию

Sources

Список источников, которые должны быть добавлены в hbase-env.sh

 — 

HBASE_MASTER_OPTS

Дополнительные параметры для HBASE_MASTER_OPTS

-Xms700m -Xmx9G

PHOENIX_QUERYSERVER_OPTS

Дополнительные параметры для PHOENIX_QUERYSERVER_OPTS

-Xms700m -Xmx8G

HBASE_THRIFT_OPTS

Дополнительные параметры для HBASE_THRIFT_OPTS

-Xms700m -Xmx8G

HBASE_REST_OPTS

Дополнительные параметры для HBASE_REST_OPTS

-Xms200m -Xmx8G

HBASE_OPTS

Дополнительные параметры для HBASE_OPTS

-XX:+UseConcMarkSweepGC

HBASE_CLASSPATH

classpath для HBase. Список файлов и директорий, которые должны быть добавлены в classpath. Чтобы добавить директорию или файл в classpath, кликните Plus icon Plus icon

/usr/lib/phoenix/phoenix-server-hbase.jar

Final HBASE_OPTS

Итоговое значение параметра HBASE_OPTS в файле hbase-env.sh

 — 

hbase-regionserver-env.sh
Параметр Описание Значение по умолчанию

Sources

Список источников, которые должны быть добавлены в hbase-regionserver-env.sh

 — 

HBASE_REGIONSERVER_OPTS

Начальный (-Xms) и максимальный (-Xmx) размер Java heap для HBase Region server

-Xms700m -Xmx9G

Final HBASE_REGIONSERVER_OPTS

Итоговое значение параметра HBASE_REGIONSERVER_OPTS в файле hbase-regionserver-env.sh

 — 

ranger-hbase-audit.xml
Параметр Описание Значение по умолчанию

xasecure.audit.destination.solr.batch.filespool.dir

Путь к spool-каталогу

/srv/ranger/hdfs_plugin/audit_solr_spool

xasecure.audit.destination.solr.urls

URL сервера Solr для сохранения аудит-событий. Оставьте значение пустым или установите значение NONE при использовании ZooKeeper для подключения к Solr

 — 

xasecure.audit.destination.solr.zookeepers

Указывает строку подключения ZooKeeper для подключения к Solr

 — 

xasecure.audit.destination.solr.force.use.inmemory.jaas.config

Использует in-memory JAAS-файл для соединения с Solr

 — 

xasecure.audit.is.enabled

Активирует аудит Ranger

true

xasecure.audit.jaas.Client.loginModuleControlFlag

Определяет требование к успешному завершению работы модуля. Возможные значения: required, requisite, sufficient или optional

 — 

xasecure.audit.jaas.Client.loginModuleName

Имя класса-аутентификатора

 — 

xasecure.audit.jaas.Client.option.keyTab

Имя keytab-файла, из которого необходимо получить секретный ключ принципала

 — 

xasecure.audit.jaas.Client.option.principal

Имя используемого принципала

 — 

xasecure.audit.jaas.Client.option.serviceName

Имя пользователя или сервиса, для которого выполнятся логин

 — 

xasecure.audit.jaas.Client.option.storeKey

Установите значение true, чтобы keytab-файл или ключ принципала сохранялись в учетных данных субъекта

false

xasecure.audit.jaas.Client.option.useKeyTab

Установите значение true, чтобы модуль получал ключ принципала из keytab-файла

false

ranger-hbase-security.xml
Параметр Описание Значение по умолчанию

ranger.plugin.hbase.policy.rest.url

URL для Ranger Admin

 — 

ranger.plugin.hbase.service.name

Имя Ranger-сервиса, который содержит политики для этого экземпляра

 — 

ranger.plugin.hbase.policy.cache.dir

Каталог, в котором кешируются политики Ranger после успешного извлечения из источника

/srv/ranger/hbase/policycache

ranger.plugin.hbase.policy.pollIntervalMs

Определяет, как часто проверять политики на предмет изменения

30000

ranger.plugin.hbase.policy.rest.client.connection.timeoutMs

Время ожидания подключения HBase-плагина RangerRestClient (в миллисекундах)

120000

ranger.plugin.hbase.policy.rest.client.read.timeoutMs

Тайм-аут на чтение для HBase-плагина RangerRestClient (в миллисекундах)

30000

ranger.plugin.hbase.policy.rest.ssl.config.file

Путь к конфигурационному файлу RangerRestClient SSL плагина HBase

/etc/hbase/conf/ranger-hbase-policymgr-ssl.xml

ranger-hbase-policymgr-ssl.xml
Параметр Описание Значение по умолчанию

xasecure.policymgr.clientssl.keystore

Путь к keystore-файлу, который использует Ranger

 — 

xasecure.policymgr.clientssl.keystore.credential.file

Путь к файлу с паролями для keystore-файла

/etc/hbase/conf/ranger-hbase.jceks

xasecure.policymgr.clientssl.truststore.credential.file

Путь к truststore-файлу с учетными данными

/etc/hbase/conf/ranger-hbase.jceks

xasecure.policymgr.clientssl.truststore

Путь к truststore-файлу, который использует Ranger

 — 

xasecure.policymgr.clientssl.keystore.password

Пароль для доступа к keystore-файлу

 — 

xasecure.policymgr.clientssl.truststore.password

Пароль для доступа к truststore-файлу

 — 

Другие параметры
Параметр Описание Значение по умолчанию

Custom hbase-site.xml

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле hbase-site.xml

 — 

Custom hbase-env.sh

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле hbase-env.sh

 — 

Custom hbase-regionserver-env.sh

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле hbase-regionserver-env.sh

 — 

Ranger plugin enabled

Определяет, активен ли Ranger-плагин

false

Custom ranger-hbase-audit.xml

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле ranger-hbase-audit.xml

 — 

Custom ranger-hbase-security.xml

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле ranger-hbase-security.xml

 — 

Custom ranger-hbase-policymgr-ssl.xml

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле ranger-hbase-policymgr-ssl.xml

 — 

Custom log4j.properties

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле log4j.properties

Custom hadoop-metrics2-hbase.properties

В этой секции вы можете указать значения для кастомных параметров, которые не отображаются в интерфейсе ADCM, но могут присутствовать в конфигурационном файле hadoop-metrics2-hbase.properties

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней