在隔离系统上安装#

这些说明适用于在隔离系统或其他无法访问互联网的机器上进行安装。隔离存档包含安装程序、依赖项和要镜像的软件包。如需镜像帮助,请联系支持

开始之前#

您的服务器必须满足硬件、软件、安全和网络的要求。在开始安装之前,请检查并确认您已满足所有系统要求

下载安装程序存档和适合您需求的镜像存档。Air gap archives 页面列出了存档及其内容。

注意:这些安装说明假设目标服务器上的$INSTALLER_PATH路径下已有隔离介质。

示例:

tar xf <installer-archive> -C /installer/
export INSTALLER_PATH=/installer/anaconda-enterprise-`date +%Y-%m-%d`

同时下载并解压您计划镜像的conda包存档。这些说明假设包被解压到$INSTALLER_PATH:

tar xf <archive-of-pkgs-to-mirror> -C /installer/
export MIRRORS_ARCHIVE=/installer/repo-mirrors-`date +%Y-%m-%d`

1. 安装 MongoDB 2.6#

更改目录到适当的 rpms* 目录以查找依赖项:

cd $INSTALLER_PATH/rpms*x/

适用于Redhat和CentOS 7的MongoDB#

  1. 安装MongoDB:

    sudo yum install -y mongodb-org*
    
  2. 启动MongoDB:

    sudo systemctl start mongod
    
  3. 验证MongoDB是否正在运行:

    $ sudo systemctl status mongod
    mongodb (pid 17258) is running...
    

适用于Redhat和CentOS 6.7+的MongoDB#

  1. 安装MongoDB:

    sudo yum install -y mongodb-org*
    
  2. 启动 MongoDB:

    sudo /etc/init.d/mongod start
    
  3. 验证MongoDB是否正在运行:

    $ sudo /etc/init.d/mongod status
    mongodb (pid 17258) is running...
    

适用于Ubuntu 12.04+的MongoDB#

  1. 安装MongoDB:

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
    
    echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
    
    sudo apt-get update
    
    sudo apt-get install -y mongodb-org=2.6.9 mongodb-org-server=2.6.9 mongodb-org-shell=2.6.9 mongodb-org-mongos=2.6.9 mongodb-org-tools=2.6.9
    

    注意:如果您没有指定版本,例如2.6.9, apt-get 将安装最新的稳定版本,即3.x。

  2. 启动MongoDB:

    sudo /etc/init.d/mongod start
    

    验证MongoDB是否正在运行:

    $ sudo /etc/init.d/mongod status
    mongodb (pid 17258) is running...
    

    您收到MongoDB正在运行的验证:

    start: Job is already running: mongodb
    

额外的MongoDB资源#

有关MongoDB安装的更多信息,请参见 https://docs.mongodb.org/manual/

2. 创建仓库管理员账户#

  1. 在终端窗口中,为Anaconda Repository创建一个名为“anaconda-server”的新用户账户,并切换到该新账户:

    sudo useradd -m anaconda-server
    

    注意:anaconda-server 用户是安装 Repository 的默认用户。可以使用任何用户名,但不建议使用 root 用户。

  2. 创建一个仓库包存储目录:

    sudo mkdir -m 0770 -p /opt/anaconda-server/package-storage
    
  3. 将此目录的所有权分配给anaconda-server用户:

    sudo chown -R anaconda-server:anaconda-server /opt/anaconda-server
    
  4. 切换到仓库管理员账户:

    sudo su - anaconda-server
    

3. 安装仓库#

安装存储库,按照安装程序中的提示操作:

bash $INSTALLER_PATH/anaconda_repository-*-linux-64.sh

注意:路径中应仅包含一个用于最新稳定版本存储库的安装程序。

  1. 查看并接受许可条款:

    Welcome to Anaconda Enterprise 4 Repository 2.33 (by Anaconda, Inc.)
    In order to continue the installation process, please review the license agreement.
    Please, press ENTER to continue.
    
  2. 一旦您审查了许可条款,请通过输入 yes 来批准它们:

    Do you approve the license terms? [yes|no] yes
    
  3. 接受默认位置或指定替代位置:

    anaconda_repository will now be installed into this location:
    /home/anaconda-server/repo  -Press ENTER to confirm the location
    -Press CTRL-C to abort the installation
    -Or specify a different location below
     [/home/anaconda-server/repo] >>> /home/anaconda-server/repo" [Press ENTER]
      PREFIX=/home/anaconda-server/repo
      installing: python-2.7.11-0
      ...
      Python 2.7.11 :: Anaconda, Inc.
      creating default environment... installation finished.
    
  4. 在安装程序的最后,更新 anaconda-server 用户的路径——通过在提示处回答“是”来将安装位置添加到您的路径中,前置 /home/anaconda-server/repo

    Do you wish the installer to prepend the anaconda_repository install location to PATH in your /home/anaconda-server/.bashrc ? [yes|no]
    
  5. 输入 yes 并按回车键。

  6. 为了使新的路径更改生效,请重新加载您的 .bashrc文件:

    source ~/.bashrc
    

4. 配置仓库#

  1. 初始化网络服务器并指示包存储位置的文件路径:

    anaconda-server-config --init
    anaconda-server-config --set fs_storage_root /opt/anaconda-server/package-storage
    

    注意:文件存储的位置可以是您在以上第2节中创建的anaconda-server用户所拥有的任何位置。

    注意:从Repository 2.33.8版本开始,fs_storage_root配置设置对于本地文件系统存储是强制性的,没有它,Repository服务器将无法运行。

  2. 配置与您的MongoDB数据库的连接:

    anaconda-server-config --set MONGO_URL mongodb://localhost
    

    注意:您也可以配置外部MongoDB数据库

  3. 如果您没有使用LDAP或Kerberos认证,请为Repository创建一个初始超级用户账户。设置环境变量USER_PASSWORD为初始用户所需的密码。然后运行:

    anaconda-server-create-user --username "superuser" --email "[email protected]" --superuser
    

    注意:将superuser替换为您选择的用户名,并将your@email.com替换为您希望接收系统电子邮件通知的电子邮件地址。

    注意:为了确保bash shell不会处理此密码中的任何字符,请将密码限制为字母和数字,不要使用标点符号。设置完成后,您可以在Web UI中更改密码。

  4. 初始化仓库数据库:

    anaconda-server-db-setup --execute
    

    注意:上述命令在升级仓库时也会运行。 升级后运行:

    anaconda-server-db-setup --execute
    
  5. 重启服务器。

注意:可以通过一个或多个.yaml配置文件来控制更多的配置选项。仓库按以下顺序读取配置文件:

  1. 来自 /etc/anaconda-server/*.yaml

  2. $PREFIX/etc/anaconda-server/*.yaml

  3. 如果设置了环境变量 ANACONDA_SERVER_CONFIG 并且没有使用命令行参数 --config-file,则从该路径指定的配置文件中读取。

  4. 从命令行参数中指定的路径 --config-file,如果使用了该参数。

所有配置都会被合并,较早读取的文件中的选项会被较晚读取的文件覆盖。如果在同一目录中有多个文件,它们会按字母顺序读取。

5. 设置自动重启在重启、失败或错误时#

  1. 运行 anaconda-server-install-supervisord-config.sh 脚本来配置 Anaconda 服务器和工作进程的 supervisord 管理:

    anaconda-server-install-supervisord-config.sh
    

    这将生成 /home/anaconda-server/repo/etc/supervisord.conf 文件,并 添加一个crontab规则,以便在每次重启后重新启动supervisor。

    它还将创建文件夹 /home/anaconda-server/repo/etc/supervisord/conf.d/,您可以在其中添加 .conf 文件以进行自定义配置。

    注意:如果您不想包含crontab规则,请在运行脚本时使用--no-crontab选项。

    如果错误信息显示用户被禁止使用cron并且无法添加crontab规则,你可以使用sudo手动添加它。编辑crontab文件:

    sudo crontab -e -u anaconda-server
    

    当文件打开进行编辑时,添加此条目:

    @reboot /home/anaconda-server/repo/bin/supervisord
    
  2. 验证服务器是否正在运行:

    supervisorctl status
    

    如果安装正确,您会看到:

    anaconda-server RUNNING   pid 10831, uptime 0:00:05
    
  3. 查看日志文件位于:

    $PREFIX/var/log/anaconda-server/application.log
    

6. 启动并登录到仓库#

  1. 打开您的浏览器并通过访问 http://your.anaconda.repository:8080/ 使用您在上面第4节中创建的超管 账户登录到Repository。

    注意:将 your.anaconda.repository 替换为您的仓库的IP地址或域名。

  2. 如果您正在使用LDAP或Kerberos身份验证,请将您的用户帐户修改为超级用户。

    示例:如果您的用户账户是“jsmith”:

    anaconda-server-admin set-superuser "jsmith"
    

注意:如果您在启动仓库服务器时遇到问题,请参阅Troubleshooting

7. 客户端配置#

按照配置Anaconda客户端的说明,以便您可以使用一个或多个客户端与服务器通信。

8. 安装存储库许可证#

  1. 在您的浏览器中,访问 http://your.anaconda.repository:8080。按照屏幕上的 说明上传您从销售代表那里收到的电子邮件中的许可证文件。

    注意:将 your.anaconda.repository 替换为您的仓库的IP地址或域名。

    如果您找不到许可证或对许可证有任何疑问,请联系您的销售代表或支持代表。

  2. 上传许可证文件后,您将看到登录页面。 使用您在上面第4节中创建的超用户和密码登录。

提示:您可以通过访问URL http://your.anaconda.repository:8080/admin/license 查看当前的许可证信息并上传新的许可证文件。

注意:将 your.anaconda.repository 替换为您的仓库的IP地址或域名。

或者,您可以通过将许可证文件直接复制到 /home/anaconda-server/.continuum 目录来安装许可证。

9. 可选:Anaconda 和 Miniconda 的镜像安装程序#

Miniconda 和 Anaconda 安装程序可以通过位于 /home/anaconda-server/repo/opt/anaconda-server/installers 的静态目录由 Repository 提供。要为每个平台提供最新的安装程序,请将它们从您的 air gap archive 复制到此目录。

cp Miniconda-latest-Linux-x86_64.sh /home/anaconda-server/repo/opt/anaconda-server/installers

Miniconda-latest-Linux-x86_64.sh 替换为您的 Anaconda 或 Miniconda 安装程序名称。

注意:Air gap 存档仅包含 Miniconda 和 Anaconda 安装程序的最新版本。

用户可以使用curl从以下URL下载安装程序:

# Fill in server name, port, and specific installer for your platform
curl -s -O http://your.anaconda.repository:8080/downloads/Miniconda-latest-Linux-x86_64.sh

注意:将 your.anaconda.repository 替换为您的仓库的IP地址或域名。

10. 镜像 Anaconda.org#

最后一步是将Anaconda.org上部分频道中的包镜像到本地仓库。要镜像的频道如下:

频道

描述

anaconda

默认的Anaconda频道,包含由Anaconda, Inc.构建和支持的所有软件包。还包含自定义软件包。

r

如果您希望为r获取conda包,请镜像此频道。 这通常在r账户下完成。

wakari anaconda-nb-extensions

如果本地仓库将被Anaconda Enterprise Notebooks使用,推荐的方法是在wakari账户下镜像这些频道。

msys2

许多Windows软件包都需要msys2。请参阅http://www.msys2.org/

这些包将被镜像到由fs_storage_root键定义的包存储中,如上文第4节所述。

镜像Anaconda#

由于我们是从本地文件系统进行镜像,因此需要进行一些额外的配置。每个通道的步骤都是相同的:

  1. 创建一个镜像配置 yaml,通常存储在 $PREFIX/etc/anaconda-server/mirror/

  2. Customize your mirror. 一个例子是如果你只需要为一部分平台镜像包。默认情况下,它会镜像在通道 linux-64、osx-64、win-64、win-32 和 linux-32 中找到的所有包。

  3. 通过指向配置文件来调用镜像命令:

    echo "channels:" > ~/repo/etc/anaconda-server/mirror/conda.yaml
    echo " - file://$MIRRORS_ARCHIVE/anaconda-suite/pkgs" >> \
           ~/repo/etc/anaconda-server/mirror/conda.yaml
    
  4. 镜像默认的Anaconda包:

    anaconda-server-sync-conda --mirror-config ~/repo/etc/anaconda-server/mirror/conda.yaml
    

使用Anaconda Enterprise 4 Repository镜像Anaconda仓库 包含 文档和高级的 yaml config 用于镜像其他 频道。