From 7bd8e8b4548e1010e7437aa159372a132212bc33 Mon Sep 17 00:00:00 2001 From: Vchanger Date: Wed, 31 May 2023 08:20:22 +0800 Subject: [PATCH] support specifying arch when downloading middleware/grafana/ops --- README.md | 24 ++++++++++++++++++------ deploy/deploy.sh | 4 ++-- deploy/download_offline_res.sh | 27 +++++++++++++++++++++++---- 3 files changed, 43 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 6fb89a6..01033ca 100644 --- a/README.md +++ b/README.md @@ -239,10 +239,14 @@ gala组件的运行依赖各个中间件,因此建议按照如下顺序(中 离线部署前,需要在可连接外网的机器上下载6个中间件的安装包。本工具提供了[离线资源下载脚本](./deploy/download_offline_res.sh)一键全量下载,将该脚本上传到机器上后执行如下命令完成相关离线资源的下载,下载内容会存放在当前目录的子目录gala_deploy_middleware下。 ```xml -sh download_offline_res.sh middleware +sh download_offline_res.sh middleware [os_arch] ``` -*注:由于kafka运行依赖java,因此下载kafka安装包时也会同时下载java-1.8.0-openjdk及其依赖包;arangodb组件需要下载容器镜像tar包,因此下载机器上需要安装docker组件。* +可选选项: + +- os_arch: 指定下载该架构的安装包。未配置该项时,使用当前系统架构。支持架构列表:aarch64 x86_64 + +注:由于kafka运行依赖java,因此下载kafka安装包时也会同时下载java-1.8.0-openjdk及其依赖包;arangodb组件需要下载容器镜像tar包,因此下载机器上需要安装docker组件。* 2. 工具一键部署 @@ -274,7 +278,7 @@ sh download_offline_res.sh gopher [os_version] [os_arch] ``` 以下可选项需同时配置使用: - os_version: 指定下载该操作系统版本 gala-gopher 软件包。未配置该项时,使用当前系统版本。支持版本列表:openEuler-22.03-LTS-SP1 openEuler-22.03-LTS openEuler-20.03-LTS-SP1 kylin -- os_arch: 指定下载该架构 gala-gopher 软件包。未配置该项时,使用当前系统架构。支持版本列表:aarch64 x86_64 +- os_arch: 指定下载该架构 gala-gopher 软件包。未配置该项时,使用当前系统架构。支持架构列表:aarch64 x86_64 1. 工具一键部署 @@ -299,9 +303,13 @@ sh deploy.sh gopher -K -p -S < 离线部署前,需要在可连接外网的机器上下载gala-ops(gala-anteater/gala-spider/gala-inference)容器镜像tar包。本工具提供了[离线资源下载脚本](./deploy/download_offline_res.sh)一键全量下载,将该脚本上传到机器上后执行如下命令完成相关离线资源下载,下载内容会存放在当前目录的子目录gala_deploy_ops下。 ```xml -sh download_offline_res.sh ops +sh download_offline_res.sh ops [os_arch] ``` +可选选项: + +- os_arch: 指定下载该架构的容器镜像。未配置该项时,使用当前系统架构。支持架构列表:aarch64 x86_64 + 2. 工具一键部署 将gala_deploy_ops目录下的所有文件和[部署脚本](./deploy/deploy.sh)上传到目标管理节点机器上,执行如下命令安装、配置、启动gala-ops服务,-S选项来指定容器镜像tar包所在的目录。 @@ -326,10 +334,14 @@ sh deploy.sh ops -K -P -A /dev/null ; docker rm ${container_name} 2>/dev/null - docker run -d --name ${container_name} --network host ${DOCKER_HUB_TAG_PREFIX}/grafana + docker run -d --name ${container_name} --network host ${DOCKER_HUB_TAG_PREFIX}/grafana-$(uname -m) [ $? -ne 0 ] && echo_err_exit "Error: fail to run grafana container" echo -e "\n[3] Configuring datasources" diff --git a/deploy/download_offline_res.sh b/deploy/download_offline_res.sh index 5535a53..5d980f9 100755 --- a/deploy/download_offline_res.sh +++ b/deploy/download_offline_res.sh @@ -212,11 +212,11 @@ download_pyroscope() { download_grafana_image() { echo_info "- Download grafana docker image" if [ ! -f ${DOWNLOAD_DIR}/grafana-${OS_ARCH}.tar ] ; then - echo " [1] Executing \"docker pull ${DOCKER_HUB_TAG_PREFIX}/grafana:latest\"" - docker_pull_image "grafana" + echo " [1] Executing \"docker pull ${DOCKER_HUB_TAG_PREFIX}/grafana-${OS_ARCH}:latest\"" + docker_pull_image "grafana-${OS_ARCH}" - echo " [2] Executing \"docker save -o ${DOWNLOAD_DIR}/grafana-${OS_ARCH}.tar ${DOCKER_HUB_TAG_PREFIX}/grafana\"" - docker save -o ${DOWNLOAD_DIR}/grafana-${OS_ARCH}.tar ${DOCKER_HUB_TAG_PREFIX}/grafana + echo " [2] Executing \"docker save -o ${DOWNLOAD_DIR}/grafana-${OS_ARCH}.tar ${DOCKER_HUB_TAG_PREFIX}/grafana-${OS_ARCH}\"" + docker save -o ${DOWNLOAD_DIR}/grafana-${OS_ARCH}.tar ${DOCKER_HUB_TAG_PREFIX}/grafana-${OS_ARCH} fi echo_info "- Download python dep for arangodb2es.py" @@ -333,6 +333,22 @@ function parse_arg_gopher() { config_remote_repo } +function parse_arch() { + if [ $# -eq 1 ] ; then + return; + fi + + if [ $# -ne 2 ] ; then + echo_err_exit "download param err" + fi + + if [ $2 == "aarch64" ] || [ $2 == "x86_64" ]; then + OS_ARCH=$2 + else + echo_err_exit "invalid arch:\"$2\" , must be aarch64 or x86_64" + fi +} + detect_os component=$1 case "x$component" in @@ -346,14 +362,17 @@ case "x$component" in xops) DOWNLOAD_COMPONENT_LIST="${DOWNLOAD_COMPONENT_LIST}ops " DOWNLOAD_DIR=$DOWNLOAD_DIR_OPS + parse_arch $@ ;; xmiddleware) DOWNLOAD_COMPONENT_LIST="${DOWNLOAD_COMPONENT_LIST}middleware " DOWNLOAD_DIR=$DOWNLOAD_DIR_MW + parse_arch $@ ;; xgrafana) DOWNLOAD_COMPONENT_LIST="${DOWNLOAD_COMPONENT_LIST}grafana " DOWNLOAD_DIR=$DOWNLOAD_DIR_GRAFANA + parse_arch $@ ;; x) echo_err_exit "Must specify download component" -- Gitee