长期支持版本

    容器OS镜像制作指导

    简介

    kbimg是KubeOS部署和升级所需的镜像制作工具,可以使用kbimg制作KubeOS docker,虚拟机和物理机镜像。

    命令介绍

    命令格式

    bash kbimg.sh [ --help | -h ] create [ COMMANDS ] [ OPTIONS ]

    参数说明

    • COMMANDS

      参数描述
      upgrade-image生成用于安装和升级的docker镜像格式的 KubeOS 镜像
      vm-image生成用于部署和升级的虚拟机镜像
      pxe-image生成物理机安装所需的镜像及文件
    • OPTIONS

      参数描述
      -prepo 文件的路径,repo 文件中配置制作镜像所需要的 yum 源
      -v制作出来的KubeOS镜像的版本
      -bos-agent二进制的路径
      -eKubeOS 镜像 root 用户密码,加密后的带盐值的密码,可以用 openssl,kiwi 命令生成
      -d生成或者使用的 docker镜像
      -h --help查看帮助信息

    使用说明

    注意事项

    • kbimg.sh 执行需要 root 权限。
    • 当前仅支持 x86和 AArch64 架构使用。
    • 容器 OS 镜像制作工具的 rpm 包源为 openEuler 具体版本的 everything 仓库和 EPOL 仓库。制作镜像时提供的 repo 文件中,yum 源建议同时配置 openEuler 具体版本的 everything 仓库和 EPOL 仓库。

    KubeOS docker镜像制作

    注意事项

    • 制作的 docker 镜像仅用于后续的虚拟机/物理机镜像制作或升级使用,不支持启动容器。
    • 使用默认 rpmlist 进行容器OS镜像制作时所需磁盘空间至少为6G,如自已定义 rpmlist 可能会超过6G。

    使用示例

    • 如需进行DNS配置,请先在scripts目录下自定义resolv.conf文件。
      cd /opt/kubeOS/scripts
      touch resolv.conf
      vim resolv.conf
    
    • 制作KubeOS容器镜像。
    cd /opt/kubeOS/scripts
    bash kbimg.sh create upgrade-image -p xxx.repo -v v1 -b ../bin/os-agent -e '''$1$xyz$RdLyKTL32WEvK3lg8CXID0''' -d your_imageRepository/imageName:version 
    
    • 制作完成后查看制作出来的KubeOS容器镜像。
    docker images
    

    KubeOS 虚拟机镜像制作

    注意事项

    • 如使用 docker 镜像制作请先拉取相应镜像或者先制作docker镜像,并保证 docker 镜像的安全性。
    • 制作出来的容器 OS 虚拟机镜像目前只能用于 CPU 架构为 x86 和 AArch64 的虚拟机。
    • 容器 OS 目前不支持 x86 架构的虚拟机使用 legacy 启动模式启动。
    • 使用默认rpmlist进行容器OS镜像制作时所需磁盘空间至少为25G,如自已定义rpmlist可能会超过25G。

    使用示例

    • 使用repo源制作。

      • 如需进行DNS配置,请先在scripts目录下自定义resolv.conf文件。
      cd /opt/kubeOS/scripts
      touch resolv.conf
      vim resolv.conf
      
      • KubeOS虚拟机镜像制作。
      cd /opt/kubeOS/scripts
      bash kbimg.sh create vm-image -p xxx.repo -v v1 -b ../bin/os-agent -e '''$1$xyz$RdLyKTL32WEvK3lg8CXID0'''
      
    • 使用docker镜像制作。

      cd /opt/kubeOS/scripts
      bash kbimg.sh create vm-image -d  your_imageRepository/imageName:version
      
    • 结果说明。
      容器 OS 镜像制作完成后,会在 /opt/kubeOS/scripts 目录下生成:

      • system.qcow2: qcow2 格式的系统镜像,大小默认为 20GiB,支持的根文件系统分区大小 < 2020 MiB,持久化分区 < 16GiB 。
      • update.img: 用于升级的根文件系统分区镜像。

    KubeOS 物理机安装所需镜像及文件制作

    注意事项

    • 如使用 docker 镜像制作请先拉取相应镜像或者先制作 docker 镜像,并保证 docker 镜像的安全性。
    • 制作出来的容器 OS 物理安装所需的镜像目前只能用于 CPU 架构为 x86 和 AArch64 的物理机安装。
    • Global.cfg配置中指定的ip为安装时使用的临时ip,请在系统安装启动后请参考《openEuler 22.09 管理员指南-配置网络》进行网络配置。
    • 不支持多个磁盘都安装KubeOS,可能会造成启动失败或挂载紊乱。
    • 容器OS 目前不支持 x86 架构的物理机使用 legacy 启动模式启动。
    • 使用默认rpmlist进行镜像制作时所需磁盘空间至少为5G,如自已定义 rpmlist 可能会超过5G。

    使用示例

    • 首先需要修改00bootup/Global.cfg的配置,对相关参数进行配置,参数均为必填,ip目前仅支持ipv4,配置示例如下:

      # rootfs file name
      rootfs_name=kubeos.tar
      # select the target disk to install kubeOS
      disk=/dev/sda
      # pxe server ip address where stores the rootfs on the http server
      server_ip=192.168.1.50
      # target machine temporary ip
      local_ip=192.168.1.100
      # target machine temporary route
      route_ip=192.168.1.1
      # target machine temporary netmask
      netmask=255.255.255.0
      # target machine netDevice name
      net_name=eth0
      
    • 使用 repo 源制作。

      • 如需进行DNS配置,请在scripts目录下自定义resolv.conf文件。
        cd /opt/kubeOS/scripts
        touch resolv.conf
        vim resolv.conf
      
      • KubeOS物理机安装所需镜像制作。
        cd /opt/kubeOS/scripts
        bash kbimg.sh create pxe-image -p xxx.repo -v v1 -b ../bin/os-agent -e '''$1$xyz$RdLyKTL32WEvK3lg8CXID0'''
      
    • 使用 docker 镜像制作。

      cd /opt/kubeOS/scripts
      bash kbimg.sh create pxe-image -d your_imageRepository/imageName:version
      
    • 结果说明。

      • initramfs.img: 用于pxe启动用的 initramfs 镜像 。
      • kubeos.tar: pxe安装所用的 OS。

    文档捉虫

    “有虫”文档片段

    问题描述

    提交类型 issue

    有点复杂...

    找人问问吧。

    PR

    小问题,全程线上修改...

    一键搞定!

    问题类型
    规范和低错类

    ● 错别字或拼写错误;标点符号使用错误;

    ● 链接错误、空单元格、格式错误;

    ● 英文中包含中文字符;

    ● 界面和描述不一致,但不影响操作;

    ● 表述不通顺,但不影响理解;

    ● 版本号不匹配:如软件包名称、界面版本号;

    易用性

    ● 关键步骤错误或缺失,无法指导用户完成任务;

    ● 缺少必要的前提条件、注意事项等;

    ● 图形、表格、文字等晦涩难懂;

    ● 逻辑不清晰,该分类、分项、分步骤的没有给出;

    正确性

    ● 技术原理、功能、规格等描述和软件不一致,存在错误;

    ● 原理图、架构图等存在错误;

    ● 命令、命令参数等错误;

    ● 代码片段错误;

    ● 命令无法完成对应功能;

    ● 界面错误,无法指导操作;

    风险提示

    ● 对重要数据或系统存在风险的操作,缺少安全提示;

    内容合规

    ● 违反法律法规,涉及政治、领土主权等敏感词;

    ● 内容侵权;

    您对文档的总体满意度

    非常不满意
    非常满意
    提交
    根据您的反馈,会自动生成issue模板。您只需点击按钮,创建issue即可。
    文档捉虫
    编组 3备份