升级AEN#

注意:这些说明仅适用于从4.3.2升级AEN到当前版本4.3.3。每个版本必须从前一个版本逐步升级。不要跳过版本。

之前版本的升级说明:

对于从上述版本之前的版本升级,请联系您的企业支持代表。

注意:命名服务帐户功能仅适用于AEN 4.0.0+的新安装。升级安装不提供此功能。如需更多信息,请联系您的企业支持代表。

AEN平台更新要求每种3节点类型的实例分别进行升级:

  • AEN 服务器

  • AEN 网关

  • AEN 计算

升级过程要求所有AEN服务实例停止、升级,然后重新启动。

注意:任何需要root用户的命令也可以使用sudo来完成。

如果在升级过程中遇到任何困难,请参阅 Troubleshooting,它提供了以下指导:

  • 进程

  • 配置文件

  • 日志文件

  • 端口

如果您无法解决安装或升级问题,请联系您的企业支持代表。

升级前#

注意:在开始升级之前,请对您的安装进行测试备份。 升级到更高版本的AEN是不可逆的。升级过程中的任何错误可能导致部分或全部数据丢失,并需要从备份中恢复数据。

注意:在开始升级过程之前,请终止所有AEN应用程序并停止所有项目。

在升级每台主机上的每个服务之前:

  1. 暂停每个节点上的服务:

    sudo service wakari-server stop
    sudo service wakari-gateway stop
    sudo service wakari-compute stop
    
  2. 将AEN功能ID(“NFI”)和AEN功能组(“NFG”)设置为当前安装的NFI和NFG:

    export AEN_SRVC_ACCT="wakari"
    export AEN_SRVC_GRP="wakari"
    

    注意:默认的NFI是wakari,但可以使用aen_admin或任何其他名称代替。

    有关NFI和NFG的更多信息,请参阅 安装说明

  3. 安装 wget:

    yum install wget
    
  4. 更新 .condarc 文件:

    /opt/wakari/miniconda/.condarc 应更新为以下内容:

    channels:
      - r
      - https://conda.anaconda.org/wakari
      - http://repo.continuum.io/pkgs/main/
      - defaults
    
    create_default_packages:
      - anaconda-client
      - ipykernel=4.10.0
    

    并且 /opt/wakari/anaconda/.condarc 应该更新为以下内容:

    channels:
      - r
      - https://conda.anaconda.org/wakari
      - http://repo.continuum.io/pkgs/main/
      - defaults
    create_default_packages:
      - anaconda-client
      - ipykernel=4.10.0
    auto_update_conda: false
    

    注意:这两个内容相似但不同,请务必按照指示进行更新。

升级AEN服务器节点#

注意:如果您使用的是基于LDAP的身份验证,请备份 /opt/wakari/wakari-server/etc/wakari/wk-server-config.json 配置文件。服务器升级后,将该文件复制回升级前的位置。

在服务器主机上完成以下步骤:

  1. 停止Elasticsearch服务:

    sudo service elasticsearch stop
    
  2. 移除任何之前的索引:

    sudo rm -rf /var/lib/elasticsearch/*
    

    注意:您可以选择保留旧索引,但如果在升级后发现搜索功能有任何问题,您将需要运行以下命令以从干净的索引开始:

    sudo service wakari-server stop
    sudo service elasticsearch stop
    sudo rm -rf /var/lib/elasticsearch/*
    sudo service elasticsearch start
    sudo service wakari-server start
    
  3. 升级服务器:

    pushd /tmp
    wget http://j.mp/aen-server-update-4.3.3
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/miniconda/bin/conda install \
                    -p /opt/wakari/wakari-server          \
                    --file aen-server-update-4.3.3
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/miniconda/bin/conda install \
                     -p /opt/wakari/wakari-server          \
                     --no-deps                             \
                     wakari-enterprise-server-conf-update=2.0.13
    popd
    
  4. 启动 Elasticsearch:

    sudo service elasticsearch start
    

    或者,如果您不想使用搜索功能,请编辑您的服务器的 /opt/wakari/wakari-server/etc/wakari/config.json 文件,添加行 "SEARCH_ENABLED": false

  5. 重新启动NGINX服务器:

    AEN服务器版本 >= 4.1.3 使用Unix套接字与NGINX进行通信。 重新启动NGINX以加载此新配置:

    sudo service nginx restart
    

    或者,您可以使用以下命令重新启动NGINX:

    sudo nginx -s stop
    sudo nginx
    
  6. 启动服务器:

    sudo service wakari-server start
    
  7. 检查服务器是否正常运行:

    sudo service wakari-server status
    
  8. 如果您看到NGINX错误,请检查位于/opt/wakari/wakari-server/etc/nginx/conf.d/www.enterprise.conf:18的配置。

  9. 使用您的网页浏览器连接到AEN服务器,确保使用正确的协议(http或https)、主机名和端口号。

升级AEN网关节点#

在每个网关主机上完成以下步骤:

  1. 升级网关:

    pushd /tmp
    wget http://j.mp/aen-gateway-update-4.3.3
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/miniconda/bin/conda install \
                    -p /opt/wakari/wakari-gateway         \
                    --file aen-gateway-update-4.3.3
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/miniconda/bin/conda install \
                    -p /opt/wakari/wakari-gateway         \
                    --no-deps                             \
                    wakari-enterprise-gateway-conf-update=2.0.13
    popd
    
  2. 启动网关:

    sudo service wakari-gateway start
    
  3. 检查网关是否正常运行:

    sudo service wakari-gateway status
    
  4. 使用您的网页浏览器,通过正确的http/https、主机名和端口号连接到网关。

升级AEN计算节点#

在每个运行AEN计算服务的主机上完成以下步骤:

  1. 检查是否有任何wakari-indexer进程正在运行:

    ps aux | grep wakari-indexer
    

    注意:如果您停止了所有项目,您将不会看到任何wakari-indexer进程在运行。

    终止任何剩余的 wakari-indexer 进程:

    sudo killall wakari-indexer
    

    注意:使用killall终止的进程是由$AEN_SRVC_ACCT用户运行的,因此可以使用sudo killall以root身份终止,或者使用sudo -u $AEN_SRVC_ACCT killall以$AEN_SRVC_ACCT用户身份终止。示例命令展示了sudo killall选项。

  2. 检查是否有任何AEN应用程序进程正在运行——Workbench、Viewer、Terminal或Notebook:

    ps aux | grep wk-app-gateone
    ps aux | grep wk-app-workbench
    ps aux | grep wk-app-viewer
    ps aux | grep wk-app-terminal
    ps aux | grep jupyter-notebook
    

    注意:如果您停止了所有项目,您将不会看到任何AEN应用程序进程在运行。

    通过运行以下一个或多个命令来终止任何剩余的AEN应用程序进程:

    sudo killall wk-app-gateone
    sudo killall wk-app-workbench
    sudo killall wk-app-viewer
    sudo killall wk-app-terminal
    sudo killall jupyter-notebook
    
  3. 验证/opt/wakari/anaconda/.condarc的内容。 修改它以包含以下条目,如果自定义了.condarc文件,可能还需要包含其他条目。

    注意:以AEN_SRVC_ACCT用户身份修改文件(或确保保持相同的所有权)。

    channels:
      - https://conda.anaconda.org/t/<TOKEN>/anaconda-nb-extensions
      - r
      - https://conda.anaconda.org/wakari
      - http://repo.continuum.io/pkgs/main/
      - defaults
    create_default_packages:
      - anaconda-client
      - ipykernel=4.10.0
    auto_update_conda: false
    

    注意:请联系您的企业支持代表以获取上述Anaconda渠道的令牌。将替换为您企业支持代表提供的实际令牌。

  4. 在根环境中升级Anaconda

    pushd /tmp
    wget http://j.mp/aen-anaconda-update-4_3_3
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda remove -p /opt/wakari/anaconda geotiff --yes
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda remove -p /opt/wakari/anaconda iopro --yes
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda remove -p /opt/wakari/anaconda libthrift --yes
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda remove -p /opt/wakari/anaconda basemap --yes
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda install \
                 -p /opt/wakari/anaconda              \
                 --file aen-anaconda-update-4_3_3
    popd
    
  5. 升级每个计算服务:

    pushd /tmp
    wget http://j.mp/aen-compute-update-4.3.3
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda install \
                    -p /opt/wakari/wakari-compute        \
                    --file aen-compute-update-4.3.3
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda install \
                    --no-deps                            \
                    -p /opt/wakari/wakari-compute        \
                    wakari-enterprise-compute-conf-update=2.0.17
    popd
    

    注意:在升级wakari-compute环境时,您可能会看到一些nbextensions的ImportError警告。只要验证消息正常,这些ImportError警告是无害的——这是这些包在链接后存在的结果。

  6. 初始化根环境以准备包缓存:

    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda create \
                    -p /opt/wakari/testenv \
                    --clone root
    
  7. 测试离线克隆步骤:

    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda create \
                    -p /opt/wakari/testenvoffline \
                    --clone root --offline
    
  8. 移除测试环境:

    sudo rm -rf /opt/wakari/testenv
    sudo rm -rf /opt/wakari/testenvoffline
    
  9. 安装必要的依赖项:

    注意:如果您已经从之前的安装中安装了这些依赖项,请跳过此步骤。

    sudo yum groupinstall "X Window System" -y
    sudo yum install git -y
    

    注意:如果您不想安装整个X Window系统,您必须安装以下软件包以获得R绘图支持:

    sudo yum install -y libXrender libXext libXdmcp libSM libICE libXt \
    dejavu-sans-fonts dejavu-serif-fonts dejavu-fonts-common \
    fontpackages-filesystem
    
  10. 启动计算服务:

    sudo service wakari-compute start
    
  11. 验证计算服务是否正常运行:

    sudo service wakari-compute status
    
  12. 重新启动AEN服务器,使用以下命令:

    sudo service wakari-server restart
    
  13. 为您的数据中心中的所有计算节点重复此升级过程。

升级后#

  1. 重新启动项目并开始使用AEN应用程序。

  2. 如果您有一个自定义的默认环境,您可以根据用户的需求选择升级它。

    使用$AEN_SRVC_ACCT用户升级位于/opt/wakari/anaconda/envs/default的自定义默认环境:

    pushd /tmp
    wget http://j.mp/aen-anaconda-update-4.3.3
    
    sudo -E -u $AEN_SRVC_ACCT /opt/wakari/anaconda/bin/conda install \
            -p /opt/wakari/anaconda/envs/default \
            --file aen-anaconda-update-4.3.3
    popd
    

    要为每个用户和每个项目升级定制的默认环境,位于/projects///envs/default,请以该用户的身份运行以下命令:

    pushd /tmp
    wget http://j.mp/aen-anaconda-update-4.3.3
    
    sudo -E -u <USER> /opt/wakari/anaconda/bin/conda install \
            -p /projects/<USER>/<PROJECT>/envs/default \
            --file aen-anaconda-update-4.3.3
    popd
    

    注意:将 替换为用户名。将 替换为项目名称。

    注意:升级位于 /opt/wakari/anaconda/envs/default 的默认环境不会自动 升级用户现有项目中的默认环境。对于现有项目,如果需要升级, 应按用户逐个进行。

    注意:这些命令更新列在aen-anaconda-update-4.3.3中的包,不会更新任何其他包。

  3. 如果您在升级前没有停止所有项目,那么第一次启动应用程序时,您将看到一个错误页面,要求您重新启动应用程序。

  4. 重新启动应用程序以完成升级。

  5. 如果重启后仍然看到旧应用程序或图标,请重新加载页面以重置浏览器缓存。