当前位置:  首页  >  服务器技术  >  Linux/unix  >  Linux教程

LinuxKVM上创建ooRexx构建环境

文章标题:LinuxKVM上创建ooRexx构建环境。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

  本文为你详细介绍在Linux KVM上创建一个ooRexx构建环境 ,为你在学习在Linux KVM上创建一个ooRexx构建环境时起一定的作用。

  使用ooRexx开发随需应变的软件构建服务,ooRexx使用Linux内核虚拟机(KVM)提升性能。KVM 充当客户操作系统的主机,为用户构建目标软件。Apache Web 服务器控制构建并存储结果,供用户在以后检索结果。通过本文了解如何设置构建服务器和创建客户机,定制构建请求,以及组织和访问构建结果。

  最近,Open Object Rexx 项目将其旧的随需应变软件构建系统从由 VMware 托管的客户操作系统转移到由 Linux Kernel Virtual Machine (KVM) 托管的客户机上。这一改变提供了一个更加高效的构建环境,并且为用户减少了构建时间。

  ooRexx 软件构建系统允许开发人员针对多个基于 x86 的平台和操作系统构建 ooRexx 软件包。目前,受支持的客户操作系统包括 Windows? XP (i386)、Fedora 10(i386 和 x86_64)和 Ubuntu 8.04(i386)。这些客户操作系统为 Windows (EXE)、Fedora 和 openSUSE (RPM) 以及 Ubuntu (DEB) 生成 ooRexx 安装和文档包。其他基于 x86 的操作系统也将根据 ooRexx 开发人员和用户的需求得到支持。

  本文将展示如何创建自己的软件构建系统,使用 ooRexx 开发团队的设置作为例子,并为 ooRexx、Apache 和 Linux 开发人员提供了技巧和指导。您可以在本文结束部分 下载服务器和客户机脚本。该系统专门用于构建 ooRexx 软件,但是其中的概念可以应用于通用的软件构建系统。

  本系统包括以下需求:

  ◆需要一个 Web 接口来生成构建请求。

  ◆需要一个 Web 接口来检索构建结果。

  ◆需要支持多客户操作系统。

  ◆客户操作系统必须执行完全自动化的构建。

  ◆在构建结束时,应当生成电子邮件并发送给请求用户。

  要满足这些需求,开发团队和我使用了一个四核的基于 Xeon 的服务器。该服务器包含 4GB 内存和 250GB 磁盘。我们选择 Fedora 10 x86_64 发行版作为主操作系统,主要是考虑到该发行版使用的 KVM 具有良好的稳定性,并且是最新版本。选择的硬件和软件可能有所不同,但是主要的硬件标准是您的处理器应当具有硬件虚拟化特性 — 这是使用 KVM 的必要条件。

  设置服务器

  设置构建服务器的第一步是确定分区模式。我们决定将客户操作系统的 Web 存储和映像分离到单独的分区中。我们为 Web 存储分配 50GB 的硬盘,为客户操作系统映像所在的 /var 分区分配 150GB 硬盘。其余硬盘空间被分配给 /home 分区和 /root 分区。

  接下来,我们将使用 Fedora 10 x86_64 发行版安装主操作系统。如果您要设置自己的系统,那么执行下面的操作可以避免很多麻烦:

  ◆在启动安装之前通过机器的 BIOS 启用硬件虚拟化功能,这样 Fedora 将发现 KVM 是可用的。

  ◆执行软件组件的定制安装,这样就可以选择 Fedora 虚拟化选项。

  安装好服务器操作系统后,我们将它配置为可由客户操作系统访问。这包括对 Windows 客户机启用 Samba,以及对 Linux 客户机启用 NFS。这可以支持客户机访问构建结果分区,从而可以存储构建文件以供用户访问。主要 Samba 共享和主要 NFS 导出针对所有客户机都指向同一位置。

  接下来,我们将配置 Apache Web 服务器以提供对构建请求系统(我将在 构建请求 中加以解释)和构建结果库的访问。

  需要确定的一项配置决策与客户机的网络选项有关。默认安装被配置为对所有客户机应用一个私有的内部网。C 类网和 DHCP 服务器一起提供,来为客户机提供 IP 地址。另一个选择是设置系统,以将其中一个网络设备作为通向服务器外部网的网桥。这需要进行手动配置。您可以在 libvirt Wiki 中找到如何为服务器配置这一选项的示例。

  这样你就能在Linux KVM上创建一个ooRexx构建环境了。

吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有