SDB:KIWI Cookbook WebYaST

跳转到:导航搜索


在您的镜像中包含 WebYaST 以支持通过浏览器进行远程管理
Icon-checked.png
此过程已在至少 Kiwi 版本 3.74 ( kiwi --version ) 上测试过



在 Kiwi 创建的镜像中包含 WebYast


本示例提供了一个关于在 Kiwi 创建的镜像中包含 WebYast 的通用指南。

WebYaST 配方

准备时间

  • 10 分钟

烹饪时间

  • 15-25 分钟,具体取决于带宽(参见 此处 的讨论)和主机的硬件

配料

  • 一台正在运行的 openSUSE 11.3 系统(或更高版本)
  • 一个 openSUSE 11.3 仓库(或更高版本)
  • 互联网访问(或者从 openSUSE 构建服务仓库下载软件包)
  • 已安装最新版本的 KIWI 工具集(至少版本 3.74)
  • 已安装 kiwi-doc 包
  • 大约 2 GB 的可用磁盘空间


WebYaST

有关 WebYast 的详细信息,请参见 WebYast 门户。WebYaST 是一套系统管理和配置工具,允许您通过 Web 浏览器远程管理系统。WebYast 是一种模块化工具集,目前已实现的用于系统管理任务的模块可以在 此处 找到。

在本示例中,我们将构建一个包含一些 WebYaST 软件包的 VMware 镜像,以演示基本用法和配置。

Kiwi 镜像描述

我们从 kiwi-doc 软件包提供的 VMware 镜像示例开始。将镜像描述复制到您选择的工作目录;在本示例中,我们将使用 /tmp 目录树。此外,假设您之前已经完成了一些或所有基本的 Kiwi 配方,并且您熟悉基本的 Kiwi 概念。

cp -r /usr/share/doc/packages/kiwi/examples/suse-11.3/suse-vm-guest /tmp
cd /tmp/suse-vm-guest

有了 VMware 镜像描述的副本后,现在我们可以编辑 config.xml 文件以包含我们感兴趣的 WebYaST 模块。使用您喜欢的编辑器编辑 config.xml 文件,并将下面显示的新的仓库添加到配置文件中。

<repository type="rpm-md">
  <source path="opensuse://devel:/languages:/ruby:/extensions/openSUSE_11.3"/>
</repository>
<repository type="rpm-md">
  <source path="opensuse://YaST:/Web/openSUSE_11.3"/>
</repository>
 


配置好仓库后,现在我们可以添加要在镜像中安装的 WebYaST 软件包。除了基本功能外,我们还将向镜像添加时间和用户管理模块。在 config.xml 的 image 软件包部分,添加以下软件包

<packages type="image">
.....
  <package name="webyast-base-ui"/>
  <package name="webyast-base-ui-branding-default"/>
  <package name="webyast-base-ws"/>
  <package name="webyast-reboot-ui"/>
  <package name="webyast-reboot-ws"/>
  <package name="webyast-status-ui"/>
  <package name="webyast-status-ws"/>
  <package name="webyast-time-ui"/>
  <package name="webyast-time-ws"/>
  <package name="webyast-user_en"/>
  <package name="webyast-users-ui"/>
  <package name="webyast-users-ws"/>
....
</packages>

这完成了对 config.xml 的更改。接下来,我们需要确保 WebYast 服务在设备启动时启动。这通过对 config.sh 的更改来实现。使用您喜欢的编辑器编辑 config.sh,并在标记为 Activate services 的部分添加以下命令

insserv yastws
insserv yastwc

保存文件并构建镜像

kiwi --prepare /tmp/suse-vm-guest --root /tmp/vmWebY_unpacked
kiwi --create /tmp/vmWebY_unpacked -d /tmp/vmWebY_image -y

下一步是启动虚拟机以查看 WebYast。在本示例中,我们使用 qemu-kvm 进行测试。

qemu-kvm /tmp/vmWebY_image/suse-11.3-vm-guest.x86_64-1.1.2.vmdk --net nic,vlan=1,macaddr=00:16:3e:7e:18:34,model=rtl8139 -net tap,vlan=1,script=/usr/share/qemu-kvm/qemu-ifup -m 1024

镜像中的网络设置为从 DHCP 服务器接收 IP 地址。如果您在网络上没有运行 DHCP,则需要登录到机器并配置网络。否则,您可能仍然会在登录提示显示时在屏幕上看到分配的 IP 地址。使用 IP 地址,通过使用 ''https://IP-ADDRESS:54984'' 在网络上的任何其他机器上的浏览器中连接到该机器。接受证书,您将能够使用密码 linux 以 root 用户身份登录。

有关配置 WebYaST 服务的更多信息,请参见 安装和配置 页面。您可以通过在配置目录的叠加树中提供自己的文件,或者通过 config.sh 进行修改来修改配置。

就这样了,您的镜像已启动并正在运行,WebYaST 可以用作管理界面。端口 54984 是 Web 客户端的默认端口,允许您从网络上的任何机器连接到正在运行的服务。

在结束本示例之前,关于包含的 WebYaST 软件包说几句。您始终需要包含 webyast-base-* 软件包,因为它们为 Web 服务(软件包以 ws 结尾)和基于 Web 的用户界面(软件包以 ui 结尾)提供基本基础设施。webyast-reboot 软件包提供从基于 Web 的界面重新启动镜像的功能,您可能希望始终包含它,如果不是全部,则大部分时间。另一个属于此类别的软件包是 webyast-status 软件包。状态软件包提供功能,让您可以监控镜像的统计信息,例如 CPU 使用率、网络流量等。

最后但并非最不重要的一点是,关于基于 SUSE Linux Enterprise 的镜像的用户。并非所有 WebYaST 在 SLE 上所需的软件包都可从 openSUSE 构建服务获得。您可以通过使用以下方式配置仓库以直接指向 Novell Customer Center Web-Yast 和 SLE 更新仓库

<repository type="rpm-md" username="USERNAME" password="PASSWORD"
  <source path="https://nu.novell.com/..../>
</repository>

其中用户名和密码是您从 NCC 网站获得的凭据。但是,您需要使用 Kiwi 版本大于 4.82 才能访问此功能。