Ag cruthú do íomhá féin le CentOS 5.9 íon sa scamall Amazon

Mar is eol duit, i scamall Amazon seoltar cásanna fíorúla bunaithe ar íomhánna (mar a thugtar air MUM). Soláthraíonn Amazon líon mór díobh; is féidir leat íomhánna poiblí arna n-ullmhú ag tríú páirtithe a úsáid freisin, rud nach bhfuil freagracht ar bith ar an soláthraí scamall, ar ndóigh. Ach uaireanta is gá duit íomhá córas glan leis na paraiméadair riachtanacha, nach bhfuil sa liosta íomhánna. Is é an t-aon bhealach amach ansin ná do AMI féin a dhéanamh.

Déanann an doiciméadú oifigiúil cur síos bhealach “AMI a fhaigheann tacaíocht ó stórais” a chruthú. Is é an míbhuntáiste a bhaineann leis an gcur chuige seo ná go gcaithfear an íomhá chríochnaithe a thiontú ina “AMI le tacaíocht EBS” freisin.

Pléifear san alt seo conas do AMI le tacaíocht EBS féin a chruthú i scamall Amazon gan céimeanna idirmheánacha.

Plean Gníomhaíochta:

  • Ullmhaigh an timpeallacht
  • Suiteáil córas glan agus déan na socruithe riachtanacha
  • Glac pictiúr den diosca
  • Cláraigh AMI

An Timpeallacht a Ullmhú

Chun ár gcríoch, tá aon chás d'aon chruth oiriúnach, fiú t1.micro. Is féidir leat é a rith tríd an CLI:

aws ec2 run-instances --image-id ami-1624987f --max-count 1 --min-count 1 --key-name mel --instance-type t1.micro

Cruthaímid ebs-volume, áit a shuiteálfaimid ár gcóras níos déanaí:

aws ec2 create-volume --availability-zone us-east-1a --size 10

Déanfaidh an t-ordú seo diosca 10 Gb dúinn. Tábhachtach: caithfidh an diosca a bheith sa chrios céanna leis an ásc (is é ár gcás is us-east-1a).
Ansin, ní mór duit an diosca a cheangal leis an sampla:

aws ec2 attach-volume --instance-id i-2bc0925b --volume-id vol-08ab3079 --device /dev/xvdf

Anois déanaimis logáil isteach sa chás trí ssh, formáid an diosca agus cuir isteach san eolaire é:

mkfs.ext3 /dev/xvdf
mkdir /mnt/centos-image
mount /dev/xvdf /mnt/centos-image
cd !$

Centos glan a shuiteáil 5.9

Sula ndéantar an córas a shuiteáil, ní mór duit crann eolaire, mount proc agus sysfs a chruthú, agus íosmhéid feistí a chruthú:

mkdir centos-image/{boot,tmp,dev,sys,proc,etc,var}
mount -t proc none /mnt/centos-image/proc/
mount -t sysfs none /mnt/centos-image/sys/
for i in console null zero ; do /sbin/MAKEDEV -d /mnt/centos-image/dev -x $i ; done

Déanfaimid an córas a shuiteáil ag baint úsáide as yum agus an comhad cumraíochta seo a leanas:
yum-centos.conf

[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
exclude=*-debuginfo
gpgcheck=0
obsoletes=1
reposdir=/dev/null

[base]
name=CentOS-5.9 - Base
mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=os
#baseurl=http://mirror.centos.org/centos/5.9/os/x86_64/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

[updates]
name=CentOS-5.9 - Updates
mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=updates
#baseurl=http://mirror.centos.org/centos/5.9/updates/x86_64/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

[extras]
name=CentOS-5.9 - Extras
mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=extras
#baseurl=http://mirror.centos.org/centos/5.9/extras/x86_64/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-5

[centosplus]
name=CentOS-5.9 - Plus
mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=centosplus
#baseurl=http://mirror.centos.org/centos/5.9/centosplus/x86_64/
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-5

[contrib]
name=CentOS-5.9 - Contrib
mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=contrib
#baseurl=http://mirror.centos.org/centos/5.9/contrib/x86_64/
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-5

yum -c ~/yum-centos.conf --installroot=/mnt/centos-image/ -y groupinstall Base

Tar éis duit an próiseas suiteála a chríochnú, is féidir leat aon phacáistí riachtanacha a shuiteáil ar an mbealach céanna:

yum -c ~/yum-centos.conf --installroot=/mnt/centos-image/ install $packet_name

Cuirimis in eagar fstab:

vi /mnt/centos-image

/dev/xvda1  /      ext3    defaults        0 0
none       /dev/pts  devpts  gid=5,mode=620  0 0
none       /dev/shm  tmpfs   defaults        0 0
none       /proc     proc    defaults        0 0
none       /sys      sysfs   defaults        0 0

In CentOS 5.9 ní mór duit eithne a shuiteáil fós le tacaíocht xen:

yum -c ~/yum-centos.conf --installroot=/mnt/centos-image/ -y install kernel-xen

Suiteáil Grub:

chroot /mnt/centos-image/ grub-install /dev/xvdf

agus gin initrd nua:

chroot /mnt/centos-image/
cd boot/
mkinitrd --omit-scsi-modules --with=xennet --with=xenblk --fstab=/etc/fstab --preload=xenblk initrd-2.6.18-348.1.1.el5xen.img 2.6.18-348.1.1.el5xen

Tá sé an-tábhachtach na paraiméadair seo go léir agus fstab nua a shonrú, ar shlí eile ní thosóidh an córas.
Ansin caithfidh tú comhad menu.lst a chruthú le haghaidh grub:

default=0
timeout=5
hiddenmenu
title CentOS_5.9_(x86_64)
        root (hd0)
        kernel /boot/vmlinuz-2.6.18-348.1.1.el5xen ro root=/dev/xvda1
        initrd /boot/initrd-2.6.18-348.1.1.el5xen.img

Déanaimis an líonra agus sshd a chumrú:

vi etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
DEVICE=eth0
BOOTPROTO=dhcp
TYPE=Ethernet
USERCTL=yes
PEERDNS=yes
IPV6INIT=no

vi etc/sysconfig/network
NETWORKING=yes

chroot /mnt/centos5img/ chkconfig --level 2345 network on

vi /mnt/centos5img/etc/ssh/sshd_config
...
UseDNS no
PermitRootLogin without-password

Mar sin, gheobhaidh muid líonra oibre agus an cumas logáil isteach sa chás ag baint úsáide as na heochracha. Ach ní mór an eochair féin a aistriú chuig an ásc ar bhealach éigin. Is féidir é seo a dhéanamh ag baint úsáide as script a ghlacfaidh an eochair agus a shábháil ar an ásc:

vi /mnt/centos5img/etc/init.d/ec2-get-ssh

ec2-faigh-ssh#! / bin / bash
# chkconfig: 2345 95 20
# processname: ec2-get-ssh
# tuairisc: Gabh dintiúir eochair phoiblí AWS don úsáideoir EC2

# Foinse leabharlann feidhm
. /etc/rc.d/init.d/functions

# Cumraíocht líonraithe foinse
[ -r / etc/sysconfig/network ] &&. /etc/sysconfig/network

# Cuir na hathróga timpeallachta seo a leanas in ionad do chórais
easpórtáil PATH =:/usr/áitiúil/bin:/usr/áitiúil/sbin:/usr/bin:/usr/sbin:/bin:/sbin

# Seiceáil go bhfuil líonrú cumraithe
más rud é [ "${NETWORK}" = "ní hea" ] ; ansin
macalla "Níl an líonrú cumraithe."
scoir 1
fi

tús () {
dá [! -d /root/.ssh ]; ansin
mkdir -p /root/.ssh
chmod 700 /root/.ssh
fi
# Aisghabh eochair phoiblí ón bhfreastalaí meiteashonraí ag úsáid HTTP
curl -f 169.254.169.254/latest/meta-data/public-keys/0/openssh-key > /tmp/my-public-eochair
má tá [$? -eq 0 ]; ansin
macalla "EC2: Aisghabh eochair phoiblí ón bhfreastalaí meiteashonraí ag úsáid HTTP."
cat /tmp/my-public-key >> /root/.ssh/authorized_keys
chmod 600 /root/.ssh/authorized_keys
rm /tmp/my-public-eochair
fi
}

stop() {
macalla "Níl aon rud le déanamh anseo"
}

Tosaigh arís() {
stop a chur
tús
}

# Féach mar a glaodh orainn.
cás "$ 1" in
tús)
tús
;;
stad)
stop a chur
;;
Tosaigh arís)
atosú
;;
*)
macalla $"Úsáid: $0 {tús|stop|atosaigh}"
scoir 1
go bhfuil C.

scoir $?
Déanaimis é inrite agus cuir leis an am tosaithe é:

chmod +x /mnt/centos-image/etc/init.d/ec2-get-ssh
/usr/sbin/chroot /mnt/centos-image/ /sbin/chkconfig --level 34 ec2-get-ssh on

Tá sé inmholta freisin Selinux a dhíchumasú, nó é a chumrú i gceart. Seachas sin, mar shampla, ní féidir an eochair a shábháil ar an ásc.
Ag an bpointe seo is féidir leat stop a chur leis an gcóras a bhunú. Tá CentOS íon againn cheana féin réidh le rith sa scamall. Níl fágtha ach an diosca ebs a dhíshuiteáil lenár gcóras agus ami a chlárú.

umount /mnt/centos-image/proc/
umount /mnt/centos-image/sys/
umount /mnt/centos-image/

Clárú AMI

Chun ami a fháil ó dhiosca ebs, ní mór duit pictiúr den diosca a ghlacadh ar dtús:

aws ec2 create-snapshot --volume-id vol-0b4bd07a --description centos-snap

Is é an bealach is éasca chun ami a chlárú ná trí Chonsól Bainistíochta AWS. Chun seo a dhéanamh, níl le déanamh agat ach dul go dtí an rannán “Snapshots” sa tseirbhís EC2, roghnaigh an ceann atá uait (is é centos-snap é ár gcás), cliceáil ar dheis air agus roghnaigh "Cruthaigh Íomhá ó Ghrianghraf"
Ansin, sa fhuinneog a osclaíonn, ní mór duit a roghnú thart ar na paraiméadair seo a leanas:

Ag cruthú do íomhá féin le CentOS 5.9 íon sa scamall Amazon

Is féidir leat a fháil amach cén ID Eithne a roghnaíonn tú mar seo a leanas:

aws ec2 describe-images --owner amazon --region us-east-1 --output text | grep "/pv-grub-hd0.*-x86_64" | awk '{print $7}' | grep aki
aki-88aa75e1
aki-b4aa75dd

Sin é an méid. Anois is féidir leat cásanna a sheoladh.
Ar an mbealach seo, is féidir leat íomhá a chruthú, is dócha, le haon dáileadh Linux. Ar a laghad, cinnte Debian (ag baint úsáide as debootstrap chun córas glan a shuiteáil) agus Rhel-teaghlach.

Foinse: will.com

Add a comment