Chinaunix首页 | 论坛 | 博客
  • 博客访问: 19195
  • 博文数量: 1
  • 博客积分: 1860
  • 博客等级: 上尉
  • 技术积分: 20
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-23 22:22
文章分类
文章存档

2011年(1)

分类:

2011-11-17 15:02:41

Oracle Solaris 11 使用iso镜像配置本地IPS
原创:jerryjzm
随着oracle发布了solaris 11,也将IPS正式引入到针对企业的solaris环境中。它带来了很多方便管理软件包的地方,特别是解决软件包之间的依赖关系。在日常的工作中,并不是所有的环境都具备连接外网,即使能连接外网也不能保证有很好的网络速度。所有的包都从外网下载安装,也就受到了这些因素的限制。
幸好,oracle也提供搭建本地IPS环境的方式,而且可以将外网的IPS镜像到本地,利于本地环境搭建和部署。这里就将自己搭建本地IPS的步骤写出来,有什么更好更优的方法,也请大家指出。

一、 准备环境
这个本地IPS环境是可以搭建在X86或是sparc系统上的。对操作系统的要求是IPS所搭建的操作系统版本要高于等于IPS版本(也就是搭建的本地IPS服务于那个版本的操作系统)。
官方的解释是:

这里我们用的就是solaris 11 for x86,而且我将使用web(http)而不是nfs,这样通过浏览器查询也方便。

二、 安装好操作系统
这个内容就比较简单,现在默认也就是zfs的文件系统。一路安装好。
root@solaris:~# zfs list
NAME USED AVAIL REFER MOUNTPOINT
rpool 15.1G 24.0G 39K /rpool
rpool/ROOT 1.81G 24.0G 31K legacy
rpool/ROOT/solaris 1.81G 24.0G 1.55G /
rpool/ROOT/solaris/var 216M 24.0G 145M /var
rpool/dump 528M 24.0G 512M -
rpool/export 11.7G 24.0G 32K /export
rpool/export/home 11.7G 24.0G 32K /export/home
rpool/export/home/monitor 11.7G 24.0G 11.7G /export/home/monitor
rpool/swap 1.03G 24.0G 1.00G -


三、 配置IPS
1) 为IPS创建一个单独的zfs文件系统
root@solaris:~# zfs create rpool/export/repo11
root@solaris:~# zfs list
NAME USED AVAIL REFER MOUNTPOINT
rpool 15.1G 24.0G 39K /rpool
rpool/ROOT 1.81G 24.0G 31K legacy
rpool/ROOT/solaris 1.81G 24.0G 1.55G /
rpool/ROOT/solaris/var 216M 24.0G 145M /var
rpool/dump 528M 24.0G 512M -
rpool/export 11.7G 24.0G 33K /export
rpool/export/home 11.7G 24.0G 32K /export/home
rpool/export/home/monitor 11.7G 24.0G 11.7G /export/home/monitor
rpool/export/repo11 31K 24.0G 31K /export/repo11
rpool/swap 1.03G 24.0G 1.00G -

2) 创建构造IPS的repository的基础机构
root@solaris:~# pkgrepo create /export/repo11
root@solaris:/export/repo11# ls -l
total 1
-rw-r--r-- 1 root root 78 Nov 17 17:47 pkg5.repository

3) 从下载的文件生成ISO文件
从oracle官网的

现在这2个压缩文件,解压后:
root@solaris:/home/monitor# ls -l
total 24639827
-rwx------ 1 monitor staff 2903566990 Nov 16 01:03 sol-11-1111-repo-full-iso-a
-rwx------ 1 monitor staff 2762210301 Nov 16 01:42 sol-11-1111-repo-full-iso-b

cat sol-11-1111-repo-full.iso-a sol-11-1111-repo-full.iso-b > sol-11-1111-repo-full.iso
root@solaris:/home/monitor# ls -l *.iso
-rw-r--r-- 1 root root 6940854272 Nov 16 03:14 sol-11-1111-repo-full.iso

4) 将生成的ISO文件以loopback的形式挂载使用
root@solaris:~# mkdir /mnt/iso
root@solaris:~# lofiadm -a /mnt/iso/ /home/monitor/sol-11-1111-repo-full.iso
lofiadm: /mnt/iso is not a regular file, block, or character device
root@solaris:~# lofiadm
Block Device File Options
/dev/lofi/1 /home/monitor/sol-11-1111-repo-full.iso -
root@solaris:~# mount -F hsfs /dev/lofi/1 /mnt/iso
root@solaris:~# df -h /mnt/iso/
Filesystem Size Used Available Capacity Mounted on
/dev/lofi/1 6.5G 6.5G 0K 100% /mnt/iso

5) 从/mnt/iso中拷贝repository内容
拷贝可以使用rsync也可以使用tar,使用过程中感觉到tar是相当快一些的,不过这一步都是比较耗费时间,毕竟有6G多内容嘛
root@solaris:/mnt/iso/repo# tar cf - . | (cd /export/repo11; tar xfp -)

6) 为repository生产搜索索引
root@solaris:/mnt/iso/repo# pkgrepo -s /export/repo11 refresh
Initiating repository refresh.

四、 配置web服务
1) 配置web服务,并检查
root@solaris:/mnt/iso/repo# svccfg -s application/pkg/server setprop pkg/inst_root=/export/repo11
root@solaris:/mnt/iso/repo# svccfg -s application/pkg/server setprop pkg/readonly=true
root@solaris:/mnt/iso/repo# svcprop -p pkg/inst_root application/pkg/server
/export/repo11

2) 启动IPS(repository)服务
root@solaris:/mnt/iso/repo# svcadm refresh application/pkg/server
root@solaris:/mnt/iso/repo# svcadm enable application/pkg/server

3) 设置IPS的origin为本地的web服务地址
root@solaris:~# pkg set-publisher -G \'*\' -g
solaris

4) 检查启动的服务情况
root@solaris:/mnt/iso/repo# pkg publisher
PUBLISHER TYPE STATUS URI
solaris origin online

root@solaris:/mnt/iso/repo# pkgrepo info -s /export/repo11/
PUBLISHER PACKAGES STATUS UPDATED
solaris 4292 online 2011-10-26T17:17:30.230911Z
root@solaris:/mnt/iso/repo# pkgrepo get -s /export/repo11/
SECTION PROPERTY VALUE
publisher prefix solaris
repository description This\\ repository\\ serves\\ a\\ copy\\ of\\ the\\ Oracle\\ Solaris\\ 11\\ Build\\ 175b\\ Package\\ Repository.
repository name Oracle\\ Solaris\\ 11\\ Build\\ 175b\\ Package\\ Repository
repository version 4

五、 总结
这样本地IPS就配置好了,安装一个包试试
root@solaris:/mnt/iso/repo# pkg install SUNWdistro-const
Packages to install: 3
Create boot environment: No
Create backup boot environment: No

DOWNLOAD PKGS FILES XFER (MB)
Completed 3/3 65/65 0.2/0.2$<3>

PHASE ACTIONS
Install Phase 127/127

PHASE ITEMS
Package State Update Phase 3/3
Image State Update Phase 2/2

打开web页面查看
root@solaris:~# ifconfig net0
net0: flags=1000843 mtu 1500 index 2
inet 130.30.3.249 netmask ffffff00 broadcast 130.30.3.255
ether 8:0:27:d9:67:3
11.JPG
阅读(2497) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:没有了

给主人留下些什么吧!~~