Impala 에서 CREATE TABLE test.t (a INT, b INT, PRIMARY KEY (a)) STORED AS KUDU; 가 ImpalaRuntimeException: Error creating Kudu table ... NonRecoverableException: ... not authorized 로 실패한다. /etc/kudu/conf/master.gflagfile 에 superuser · authz 관련 항목이 없다.
--superuser_acl 이 없으면 Kudu 는 자기 principal(kudu)만 superuser 로 본다. Impala 는 impala 서비스 principal 로 Kudu 에 접근하므로 테이블 생성 권한이 없다.
CM → Kudu → Configuration 에서 "Master Advanced Configuration Snippet (Safety Valve) for gflagfile" 에 추가하고 Kudu Master 를 재시작한다.
--superuser_acl=impala,kudu,hdfs
--user_acl=*
Impala principal 의 short name 은 klist -kt <impala.keytab> | grep impala 로 확인해 impala/host@REALM 의 앞부분을 넣는다. Kerberos principal 을 short name 으로 바꾸는 규칙(auth_to_local)이 잘못되면 ACL 이 매칭되지 않으므로 함께 확인한다.
CM UI 만으로는 SolrCloud 여부가 분명하지 않을 때 프로세스 인자로 본다. -DzkHost=... 가 있으면 클라우드 모드다. Solr 가 OOM 으로 죽으면(Running OOM killer script) 힙을 늘린다.
ps aux | grep solr | grep -o '\-DzkHost[^ ]*'