使用spack mirror简化离线环境的包安装
修订版
22-Apr-2022 revision 1.
30-Jul-2022 revision 2.
前言
众所周知,研发架构是企业的安全与效率需经权衡后的结果。大多数企业的研发环境并不能连接互联网,这也就意味着不能很好地(至少是第一时间)使用各种开源工具。
在Linux环境下使用开源工具,除了要安装该工具本身,也可能涉及到非常复杂的依赖链。显然,使用trial-and-error的方式进行安装,已不太现实。笔者曾在海思HPC环境,为海外同事安装一个开源工具环境,手动花了两周(到拖拖拖一两个月)时间,因受困于复杂的依赖链关系,最终以失败告终,告诉用户你这需求解决不了。
痛定思痛,2019年我开始找自动化安装解决方案。spack与easybuild浮出水面。在这方面,原来全球的超算同行已经走在很前面。
本文就spack mirror展开探讨,解释它如何能为芯片研发HPC环境自动化安装正确的包,同时能节省管理员的安装时间,节省用户的使用时间。
架构图(待补充)
以安装vim为例
在在线环境,直接执行
[tools_adm@internet-server-001 ~]$ spack install vim +gtk +gui +lua +perl +python +ruby +x +cscope
生成mirror,并在离线环境的安装步骤:
1. 在联网的服务器执行
[tools_adm@internet-server-001 ~]$ mkdir /tools/oss/spack-mirror/pkgs-mirror
[tools_adm@internet-server-001 ~]$ spack mirror create --directory /tools/oss/spack-mirror/pkgs-mirror --dependencies vim +gtk +gui +lua +perl +python +ruby +x +cscope
将vim的默认版本安装包,以及相应的依赖,全部mirror到 /tools/oss/spack-mirror/pkgs-mirror 文件夹下,如下图:
2. 传到离线的生产服务器
2.1 上传
将 /tools/oss/spack-mirror/pkgs-mirror 目录打包上传到离线的生产环境,同步到 /tools/oss/spack-mirror/pkgs-mirror 路径下。这个步骤,建议使用自动化的方式完成。
2.2 配置mirror
pack mirror add local_filesystem file:///tools/oss/spack-mirror/pkgs-mirror
或手动编辑 ~/.spack/mirrors.yaml 文件
mirrors:local_filesystem: /tools/oss/spack-mirror/pkgs-mirror
2.3 使用
[tools_adm@internal-server-001 ~]$ spack install vim +gtk +gui +lua +perl +python +ruby +x +cscope
根据终端刷的信息,可以看到本次安装使用的是本地mirror目录下的包了。
参考资料
Mirrors (mirrors.yaml) — Spack 0.19.0.dev0 documentation
使用spack mirror简化离线环境的包安装相关推荐
- ElasticSearch 5.5 离线环境的完整安装及配置详情,附kibana、ik插件配置及安装包下载路径...
此文针对局域网环境(非公网环境),提供ElasticSearch 5.5.2的完整安装及配置教程,包括ES的kibana插件.IK中文分词插件安装及配置. 另外,文章提供安装配置环境涉及到的所有安装包 ...
- windows-server-2012R2离线中文语言包安装
1.离线包下载地址http://download.csdn.net/detail/github_38358734/9858412 2.安装方法: 解压离线包 Dism /online /Add-Pac ...
- linuxpython安装hive_Linux离线环境安装Pyhive包及通用方式
一.Linux离线安装GCC编译环境 安装之前要查看离线环境的Linux版本,因为下载文档需要Linux的版本对应 1 uname -a显示全部信息 显示版本号,该机版本为centos 6.6,属于6 ...
- openshift4离线部署_干货!OpenShift离线环境OperatorHub和ImageStream配置实战技巧
OpenShift4.5.x离线环境OperatorHub和ImageStream配置实战技巧 1 . 前言 在离线环境使用UPI(UserProvisioned Infrastructure)方式安 ...
- Linux 中yumdownloader 和 repotrack:下载yum软件离线环境的rpm依赖包
前提: 通常生产环境由于安全原因都无法访问互联网.此时就需要进行离线安装,主要有两种方式:源码编译.rpm包安装.源码编译耗费时间长且缺乏编译环境,所以一般都选择使用离线 rpm 包安装. 必须先下载 ...
- python pip下载本地依赖包,并在离线环境中安装,并解决报错ERROR: Could not find a version that satisfies the requirement报错
文章目录 步骤1:导出依赖 步骤2:离线下载依赖包 步骤3:进入新环境使用python安装依赖 整体思路如下: 首先根据项目需要导出依赖包,由于本地的python环境中其实安装了很多乱七八糟的包,这些 ...
- Ambari在离线环境中安装Hadoop集群
2019独角兽企业重金招聘Python工程师标准>>> http://www.hackbase.com/article-973-1.html (WJW)Ambari在离线环境中安装H ...
- 在离线环境中安装Visual Stuido 2017
在离线环境中安装Visual Stuido 2017 0x00 写在前面的废话 因为工作上大多数都是在离线环境中进行的,进出离线环境很麻烦,所以之前很长一段时间都在使用VS2010.后来尝试换了VS2 ...
- python离线包安装_python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境...
python的pip是其包管理工具,相当方便好用.本文只介绍pip 如何通过其freeze命令打离线包,及其离线包的安装脚本.这个知识点,特别适用于不适合连通互联网,设备需要物理隔绝,保密要求严格的客 ...
- 使用KubeKey 离线环境部署 KubeSphere v3.0.0
使用KubeKey 离线环境部署 KubeSphere v3.0.0 环境准备 以三台centos 7.7 64bit 为例: name ip role node1 192.168.6.17 etcd ...
最新文章
- 皮一皮:我真的没买这么多...
- 关于如何评价洗牌质量的猜想
- EfficientDet解读
- [BZOJ 5074] 小B的数字
- php 微商城 开源,微商城开通为什么选php开源网店系统
- 【机房收费系统】---如何引用Microsoft Excel xx.0 Object Library
- 部分网站为什么上不去_天机SEO:分析网站收录与排名的重要因素
- OSPF配置命令总结
- 设有单总线结构计算机的cpu数据通路,中央处理器——数据通路之单总线结构
- Visual C++ 6.0(完整绿色版)安装及Visual Assist X(西红柿插件、番茄插件)
- java对接dhl_DHL接口—数据交互
- (2)香橙派+apache2与php+天猫精灵=自建平台语音支持--香橙派操作系统安装
- Redis源码解读(二十一)——命令传播
- 大数据分析师技能图谱详解
- 树莓派监测CPU温度
- java常见面试题总结2
- 小程序-----小白入门
- keras使用load_weights遇到报错
- 周金涛:繁荣的起点并非沸腾的年代,或将在2020年出现首次证券市场大繁荣
- ios修改根视图控制器
热门文章
- spss可以关键词词频分析吗_词频分析及常用工具比较研究.pdf
- Java面向对象编程之三大特性
- 串口监听器使用说明书
- 【MODIS数据的下载】
- java 导出Excel 转图片地址为图片
- (音视频学习笔记):ffplay命令选项及使用案例
- esp8266开发入门教程(基于Arduino)——编程基础介绍
- 南方cass快捷键命令修改在哪_南方测绘cass快捷键命令大全,南方测绘cass常用的快捷键命令有哪些?...
- 开源成语答题小程序红包设置教程
- 用ps制作LOGO(个人向)