跳到主要内容

其他配置

指定 ImagePullSecrets

默认情况下,HivePlus 在下载 Docker 镜像时不使用 ImagePullSecrets。用户也可以通过两个步骤使用现有的 ImagePullSecret。

首先在 hive.yaml 中添加新字段 spec.template.spec.imagePullSecrets.name

vi yaml/hive.yamlspec: template: spec: imagePullSecrets: - name: myregistrykey

或者,用户可以在 hive-service-account.yaml 中添加新字段 imagePullSecrets

然后在 conf/mr3-site.xml 中的配置键 mr3.k8s.pod.image.pull.secrets 中指定相同的 secret。

vi conf/mr3-site.xml
<property>
<name>mr3.k8s.pod.image.pull.secrets</name>
<value>myregistrykey</value>
</property>

(或者,用户可以在 master-service-account.yamlworker-service-account.yaml 中添加新字段 imagePullSecrets。)

同样,用户应更新其他 YAML 文件(如 metastore.yaml)以使用现有的 ImagePullSecret。

存活和就绪探针

HiveServer2 的存活和就绪探针对默认端口执行 TPC 检查。

vi yaml/hive.yaml readinessProbe: tcpSocket: port: 9852 livenessProbe: tcpSocket: port: 9852

如果禁用了 SSL,用户也可以使用 HTTP 检查。

vi yaml/hive.yaml readinessProbe: httpGet: path: /cliservice port: 10001 livenessProbe: httpGet: path: /cliservice port: 10001

设置 DAGAppMaster 故障恢复时的等待时间

如果 DAGAppMaster Pod 失败且用户提交新查询,HiveServer2 会尝试至少两次最多三次连接到不存在的 DAGAppMaster:

  1. 确认之前查询的完成(如果有);
  2. 获取新查询的 Task 估计数量;
  3. 获取 DAGAppMaster 的当前状态。

在每个步骤中,HiveServer2 会尝试配置键 conf/core-site.xmlipc.client.connect.max.retries.on.timeouts 指定的次数,每次尝试需要 20 秒。默认情况下,ipc.client.connect.max.retries.on.timeouts 设置为 3,因此 HiveServer2 最多花费 3 * 20 秒 * 3 次 = 180 秒来尝试从 DAGAppMaster 故障中恢复。