now I have been trying to get it to work, but cant get it going...
how do I make centos run on xen?
Printable View
now I have been trying to get it to work, but cant get it going...
how do I make centos run on xen?
There are some pretty good guides on HowToForge:
http://www.howtoforge.com/ubuntu-8.0...u-repositories
I wrote a quick guide a while back for getting a dom0/domU running which might be useful - http://sysadminman.net/blog/archives/39
Matt
Or you can save yourself some hassle and get some premade images for Xen from www.jailtime.org
Note: Root login is disabled by default so you will need to edit /etc/ssh/sshd_config
Here is a helpful guide on how this can be done: http://wiki.centos.org/HowTos/Xen/InstallingCentOSDomU
Hi,
I think that using IMAGES is quite a bad way of doing things, when you have all the tools in hands to do NETWORK setup of your domU. What tool? Well, very simple: yum !!!
Yes, with only few calls, you can ask yum to setup a full operating system using a network repository. Here's our script (that is in open source):
This comes directly from the Git of our open source project dtc-xen. We use that script in a Debian dom0, and it's performing quite ok if there are no network problems (very rarely the case, and anyway, yum can try another mirror if the first one fails).PHP Code:
1 #!/bin/bash
2
3 CACHEDIR="/var/cache/yum" # where yum caches stuff -- is created as a subdir
4 # of the destination chroot
5
6 # FIXME perhaps after installation the script can modify the target machine's yum config to point to our Squid proxy
7 # or define http_proxy inside the machine. that would make upgrades for customers much much faster.
8 # better idea: instead of using a web cache, use a stash on the machine, we rsync the new RPMs into it once it's finished
9 # we would need a mutex (flock or fcntl based?) that mutially excludes the critical section
10 # the critical section is both the yum and the rsync process
11 # we also need to rsync packages from the stash into the var cache on the vps, and a mutex to lock out if another yum is running, just as in the first scenario
12 # cannot use a symlink because its chrooted for the duration of the process
13 # at any case, the repo names for different distros need to be different, otherwise the caches will clash horribly
14 # FIXME once that is done, we can stop using apt-proxy or apt-cacher
15 # FIXME try to make it for suse, mandriva or any other rpm-based distro
16
17 YUMENVIRON="$1" # where the yum config is generated and deployed
18 INSTALLROOT="$2" # destination directory / chroot for installation
19
20 if [ "$INSTALLROOT" == "" -o ! -d "$INSTALLROOT" -o "$YUMENVIRON" == "" ] ; then
21 echo "usage: centos-installer /yum/environment (will be created) /destination/directory (must exist)"
22 echo "dest dir MUST BE an absolute path"
23 exit 126
24 fi
25
26 set -e
27 set -x
28
29 which rpm >/dev/null 2>&1 || { echo "rpm is not installed. please install rpm." ; exit 124 ; }
30
31 # sometimes when the RPM database is inconsistent, yum fails but exits with success status
32 # we make sure the db is in good health
33 mkdir -p /var/lib/rpm
34 rpm --rebuilddb
35
36 # set distro ver
37 releasever=5
38
39 # detect architecture
40 ARCH=`uname -m`
41 if [ "$ARCH" == x86_64 ] ; then
42 exclude="*.i386 *.i586 *.i686"
43 basearch=x86_64
44 elif [ "$ARCH" == i686 ] ; then
45 exclude="*.x86_64"
46 basearch=i386
47 else
48 echo "Unknown architecture: $ARCH -- stopping centos-installer"
49 exit 3
50 fi
51
52 # make yum environment
53
54 mkdir -p "$YUMENVIRON"/{pluginconf.d,repos.d} "$CACHEDIR" "$INSTALLROOT/var/log"
55
56 # In case the folder is not there:
57 mkdir -p /var/lib/rpm
58
59 # configure yum:
60
61 cat > "$YUMENVIRON/yum.conf" << EOF
62 [main]
63 reposdir=$YUMENVIRON/repos.d
64 pluginconfpath=$YUMENVIRON/pluginconf.d
65 cachedir=$CACHEDIR
66 installroot=$INSTALLROOT
67 exclude=$exclude
68 keepcache=1
69 #debuglevel=4
70 #errorlevel=4
71 pkgpolicy=newest
72 distroverpkg=centos-release
73 tolerant=1
74 exactarch=1
75 obsoletes=1
76 gpgcheck=1
77 plugins=1
78 metadata_expire=1800
79 EOF
80
81 cat > "$YUMENVIRON/pluginconf.d/installonlyn.conf" << EOF
82 [main]
83 enabled=1
84 tokeep=5
85 EOF
86
87 cat > "$YUMENVIRON/repos.d/CentOS-Base.repo" << EOF
88 [base]
89 name=CentOS-5 - Base
90 #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
91 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
92 gpgcheck=1
93 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
94
95 [updates]
96 name=CentOS-5 - Updates
97 #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
98 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
99 gpgcheck=1
100 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
101
102 [addons]
103 name=CentOS-5 - Addons
104 #baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/
105 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons
106 gpgcheck=1
107 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
108
109 [extras]
110 name=CentOS-5 - Extras
111 #baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
112 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
113 gpgcheck=1
114 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
115
116 [centosplus]
117 name=CentOS-5 - Plus
118 #baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
119 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
120 gpgcheck=1
121 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
122 EOF
123
124 # unleash yum
125
126 export LANG=C
127 exec yum -c "$YUMENVIRON/yum.conf" -y install basesystem centos-release yum wget
I just hope that moderators wont have the silly idea to report as self-promotion when I'm just helping somebody...
Thomas
#7 looks good. the only reason I wanted to use images was to have a local copy to not use so much bandthwith :P
Yes, and with a proxy, it's as fast as if it was in local, and things will be downloaded ONCE and for all...
Thomas