升级 Impala(翻译)

升级 Impala

升级 Cloudera Impala 包括停止Impala 所有服务,使用操作系统的包管理工具升级 Impala 到最新版,重新启动 Imapla 服务。

  注意:
  • 假如升级Impala到 1.2.1,应同时升级 Cloudera Manager 到 4.8 及以上版本。Cloudera Manager 4.8 包括Impala 1.2中引入的目录服务的管理支持
  • 每次升级 Impala 到一个主要版本或次要版本前,应阅读发现说明中的 不兼容改变,确定你的代码、启动脚本中需要做的修改
  • 同样应检查发行说明中 Impala 的已知问题与解决办法,了解需要解决的问题与限制
  • 由于修改了1.1.1以后Impala中日志的实现,当通过Cloudera Manager安装Impala服务之后,应当修改 logbuflevel 属性的的默认值。在Cloudera Manager中,通过Services > Impala > Configuration > View and Edit > Impala Daemon (Default) > Logs到达Impala服务的日志设置页面。将Impala守护进程日志缓存等级(logbuflevel)从 -1 修改为 0。假如你希望减少日志I/O开销,也可以将这个值修改为大于0,但是发生崩溃时,可能会丢失一些低优先级的日志信息

  • 为了资源管理功能可用(与CDH5、YARN、Liama组件协作),impala用户需要是hdfs组的成员。当新安装时这一设置会自动执行,但当从较早版本的Impala升级到1.2时不会自动执行。当你把一个已经安装了1.0或1.1版本Impala的节点升级到的CDH 5时,需要手工添加impala用户到hdfs组。

  注意:因为Impala 1.2.1是与CDH 4协同工作,而CDH 5 beta发布时包含的是Impala 1.2.0,这样从CDH 4升级到CDH 5 beta版时实际上是恢复到较早的Impala版本。CHD 5 beta版本中自带的Impala beta版包含了基于CDH 5基础架构的资源管理功能,以及急需的用户定义函数功能和目录服务。然后,它不包括Impala 1.2.1中的一些新功能,例如 SHOW CREATE TABLE 语句、 SHOW TABLE STATS 语句和 SHOW COLUMN STATS 语句、 OFFSET 和 NULLS FIRST/LAST 选项,以及SYNC_DDL 选项。

在 Cloudera Manager 管理环境,使用 parcels 升级 Impala:

  1. 假如你原来使用包安装的 Impala,准备改用 parcels 方式,先删除 Impala 所有的相关的包。根据系统的不同,使用下面的命令检查已经安装了哪些包:
    rpm -qa               # RHEL, Oracle Linux, CentOS, Debian
    dpkg --get-selections # Debian
    使用下面命令删除所有包:
    sudo yum removepkg_names# RHEL, Oracle Linux, CentOS
    sudo zypper removepkg_names# SLES
    sudo apt-get purgepkg_names# Ubuntu, Debian
  2. 登录到Cloudera Manager Admin Console
  3. 进入 Hosts < Parcels 页,可以看到允许升级的 Impala 的 parcels
  4. 依次点击 Download、Distribute (当上一步骤完成后按钮会变化)
  5. 点击 Activate.
  6. 执行完以上步骤,点击 Restart 来重启所有 Impala 服务

在 Cloudera Manager 管理环境,使用包升级 Impala:

  1. 登录到Cloudera Manager Admin Console
  2. 在 Services 页面,点击 Impala 服务
  3. 点击 Actions => Stop
  4. 在你集群的每一 Impala 节点上使用下面各组命令之一进行升级

    RHEL, Oracle Linux, CentOS:

    $ sudo yum update impala-server
    $ sudo yum update hadoop-lzo-cdh4 # Optional; if this package is already installed.
    $ sudo yum update impala-catalog # New in Impala 1.2; do yum install when upgrading from 1.1.

    SUSE:

    $ sudo zypper update impala-server
    $ sudo zypper update hadoop-lzo-cdh4 # Optional; if this package is already installed
    $ sudo zypper update impala-catalog # New in Impala 1.2; do zypper install when upgrading from 1.1.

    Debian/Ubuntu:

    $ sudo apt-get install impala-server
    $ sudo apt-get install hadoop-lzo-cdh4 # Optional; if this package is already installed
    $ sudo apt-get install impala-catalog # New in Impala 1.2.
  5. 在每台安装了 Impala shell 的节点上,使用下面各组命令之一升级 Impala shell:

    For RHEL, Oracle Linux, or CentOS systems:

    $ sudo yum update impala-shell

    SUSE:

    $ sudo zypper update impala-shell

    Debian/Ubuntu:

    $ sudo apt-get install impala-shell
  6. 登录到 Cloudera Manager Admin Console
  7. 在 Services 页面,点击 Impala 服务
  8. 点击 Actions => Start

不使用 Cloudera ManagerTo upgrade Impala without :

  1. 停止 Impala 服务
    1. 停止集群中所有 Impala 节点上的 impalad 进程:
      $ sudo service impala-server stop
    2. 停止集群中 state store 服务的所有实例:
      $ sudo service impala-state-store stop
    3. 停止集群中目录服务的所有实例:
      $ sudo service impala-catalog stop
  2. 检查配置文件中是否有新的推荐或必须的设置,通常配置文件在 /etc/impala/conf 下。请参阅 Impala 安装后配置了解性能和可扩展设置
  3. 在你集群的每一 Impala 节点上使用下面各组命令之一升级 Impala:

    RHEL, Oracle Linux, CentOS:

    $ sudo yum update impala-server
    $ sudo yum update impala-catalog # New in Impala 1.2; do yum install when upgrading from 1.1.

    SUSE:

    $ sudo zypper update impala-server
    $ sudo zypper update impala-catalog # New in Impala 1.2; do zypper install when upgrading from 1.1.

    Debian/Ubuntu:

    $ sudo apt-get install impala-server
    $ sudo apt-get install impala-catalog # New in Impala 1.2.
  4. 在每台安装了 Impala shell 的节点上,使用下面各组命令之一升级 Impala shell:

    RHEL, Oracle Linux, CentOS:

    $ sudo yum update impala-shell

    SUSE:

    $ sudo zypper update impala-shell

    Debian/Ubuntu:

    $ sudo apt-get install impala-shell
  5. 重启 Impala 服务:
    1. 在集群中所需的节点上重启 Impala state store 服务。假如服务启动成功,则会看到 statestored 进程
      $ sudo service impala-state-store start
      $ ps ax | grep [s]tatestored
       6819 ?        Sl     0:07 /usr/lib/impala/sbin/statestored -log_dir=/var/log/impala -state_store_port=24000

      在 Impala server 服务启动之前启动 state store 服务,可以避免运行 impala-shell 时报 "Not connected" 错误。

    2. 在集群的每一节点上重启 Impala 目录服务。假如服务启动成功,则会看到 catalogd 进程
      $ ps ax | grep [c]atalogd
       6068 ?        Sl     4:06 /usr/lib/impala/sbin/catalogd
    3. 在集群的每一节点上重启 Impala 守护进程服务。假如服务启动成功,则会看到 impalad 进程
      $ sudo service impala-server start
      $ ps ax | grep [i]mpalad
       7936 ?        Sl     0:12 /usr/lib/impala/sbin/impalad -log_dir=/var/log/impala -state_store_port=24000 -use_statestore
      -state_store_host=127.0.0.1 -be_port=22000
  注意:

假如服务没有启动成(有可能 sudo 服务命令显示 [OK]),检查 Impala 日志中的错误信息,通常是在 /var/log/impala目录。

你可能感兴趣的:(升级 Impala(翻译))