Sentry не может синхронизировать ALC между файлами HDFS и таблицами Hive

Sentry не может отправить полный снимок экрана со списком контроля доступа к таблице HIVE в HDFS, так что acl HDFS и acl таблицы кустов не синхронизируются.

Я использую Clouder CDH 5.14.2, который содержит часовой режим 1.5.1 и hadoop 2.6.0. Я включил Sentry и синхронизацию ACL с HDFS. Недавно мы перезапустили кластер, чтобы обновить некоторые конфигурации в hdfs log4j, однако после возвращения системы мы обнаружили, что acl между таблицей кустов и файлом hdfs не синхронизированы.

Затем мы откатываем конфигурацию log4j и снова запускаем кластер, однако acls все еще не синхронизируются между таблицей кустов и файлом hdfs.

После некоторых исследований мы обнаруживаем, что это может быть вызвано большим количеством разделов и таблиц в Hive (у нас есть миллионы таблиц и разделов в Hive) в соответствии с sentry-2183. Поэтому мы изменили конфигурацию sentry.hdfs.service.client.server.rpc-connection-timeout на 1800000 в файле hive-site.xml сервера метастазов, однако он не работает.

Мы замечаем, что есть предупреждения и сообщения об ошибках в часовом и журнале hdfs. В часовом журнале отображается предупреждение «WARN org.apache.thrift.transport.TIOStreamTransport: Ошибка закрытия выходного потока. Java.net.SocketException: Socket closed»

В HDFS отображается ошибка

«ОШИБКА orgapache.sentry.core.common.transport.RetryClientInvocationHandler: не удалось выполнить getAllUpdateFrom java.lang.reflect.InvocationTargetException», что вызвано «org.apache.thrift.transport.Tavaport. SocketTimeoutExcpetion: время ожидания чтения "

введите описание изображения здесь

Есть идеи?

0
задан Leon 30 June 2019 в 04:42
поделиться