歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> xCAT安裝Kit

xCAT安裝Kit

日期:2017/2/28 14:22:01   编辑:Linux教程

生成Kit文件結構

首先使用buildkit工具來生成一個Kit,比如這裡我們假定我們的Kit名字叫helloworld

buildkit create helloworld

上面命令會在用戶的根目錄下生成一個helloworld目錄,下面是生成的目錄結構,這裡我們只是想做一下測試,所以我什麼都沒有改,生成的目錄結構直接就可以打包成Kit包

helloworld/
├── buildkit.conf
├── docs
│ └── index.html
├── other_files
│ └── sample
│ ├── exclude.lst
│ └── kitdeployparams.lst
├── plugins
│ └── sample
│ ├── imageprofile.pm
│ └── nodemgmt.pm
├── scripts
│ └── sample
│ ├── genimage_post.sh
│ ├── postboot.sh
│ ├── post.sh
│ ├── postun.sh
│ ├── postup.sh
│ ├── pre.sh
│ ├── preun.sh
│ └── preup.sh
└── source_packages
└── sample
├── pkg1
│ └── pkg1-1-1.noarch.rpm
├── pkg2
│ ├── pkg2
│ │ ├── cfg
│ │ │ └── pkg2.cfg
│ │ └── files
│ │ ├── pkg2.file1
│ │ └── pkg2.file2
│ └── pkg2.spec
├── pkg3
│ ├── pkg3.spec
│ └── pkg3.tar.gz
└── pkg4
└── pkg4-1-1.src.rpm

修改配置文件

編輯buildkit.conf文件,這個文件還是比較容易理解的,裡面注釋也比較詳細,其中主要定義了kit,kitrepo,kitcomponent和kitpackage等。
但是配置文件中有一個屬性compat_osbasenames需要特別注意一下,如果目標機器都是rh的機器,可以忽略,但是如果是CentOS的話,需要修改這個屬性的定義

compat_osbasenames=centos

打包

使用下面的命令打包,結果會在helloworld目錄下生成一個helloworld-1.0-1.tar.bz2文件

cd ~/helloworld
buildkit buildrepo all
buildkit buildtar

如果修改了文件想重新生成kit包,需要先運行“buildkit cleanall”然後再運行上面的打包命令。

添加Kit

首先在xCAT環境下可以使用 lskit 來查看已添加的Kit和KitComponent,比如

lskit
lskit helloworld-1.0-1
lsdef -t kit -l helloworld-1.0-1
lskitcomp

然後可以使用 addkit 命令來添加上面建立的kit,添加完成後可以用上面的命令查看一下

addkit helloworld-1.0-1.tar.bz2

如果要刪除的話,可以使用 rmkit 命令

rmkit helloworld-1.0-1

下一步是檢查上面添加的kit是不是可以被osimage使用,首先我們來查看一下當前系統有哪些osimage

lsdef -t osimage

然後用 chkkitcomp 命令來檢查有效性

chkkitcomp -i centos6.6-x86_64-install-compute helloworld_compute-1.0-1-rh-6.6-x86_64

如果檢查結果可用,那麼就可以使用 addkitcomp 來給 osimage 添加kitcomponent了

addkitcomp -a -i centos6.6-x86_64-install-compute helloworld_compute-1.0-1-rh-6.6-x86_64

當然添加後也可以使用 rmkitcomp 來刪除

rmkitcomp -i centos6.6-x86_64-install-compute helloworld_compute-1.0-1-rh-6.6-x86_64

升級node

chdef <nodelist> provmethod=<osimage>
updatenode <nodelist>

比如

chdef <nodelist> provmethod=centos6.6-x86_64-install-compute
updatenode <nodelist>

此時就會在node節點上安裝kit了,安裝完成後可以使用 “xdsh <node> yum search helloworld” 來查看安裝後的結果。

參考

http://sourceforge.net/p/xcat/wiki/Building_Software_Kits
http://sourceforge.net/p/xcat/wiki/Using_Software_Kits_in_OS_Images

Copyright © Linux教程網 All Rights Reserved