openstack配置以及鏡像制作(整理)_第1頁(yè)
openstack配置以及鏡像制作(整理)_第2頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、在 Ubuntu 上安裝和配置 OpenStack NovaOpenStack Nova 需要 NTP 服務(wù)器來(lái)保持所有節(jié)點(diǎn)服務(wù)器(Cloud Compute)的時(shí)間同步,所以需要在前端控制服務(wù)器(Cloud Controller)上安裝 NTP 服務(wù)器,然后在節(jié)點(diǎn)服務(wù)器上安裝 NTP 客戶(hù)端保持與前端的同步:OpenStack 是由 Rackspace 和 NASA 業(yè)內(nèi)部實(shí)現(xiàn)類(lèi)似于 Amazon EC2 和 S3 的云基礎(chǔ)架構(gòu)服務(wù) (Infrastructure as aService, OpenStack 包含兩個(gè)主要模塊:Nova 和 Swift NASA 開(kāi)發(fā)的虛擬服務(wù)器部署和業(yè)務(wù)計(jì)

2、算模塊;后者是 Rackspack 開(kāi)發(fā)的分布式云存儲(chǔ)模塊,兩者可以一起用,也可以分開(kāi)單獨(dú)用。 OpenStack 是開(kāi)源項(xiàng)目,除了有Rackspace 和 NASA 的大力支持外,后面還有包括 Dell、Citrix、 Cisco、Canonical 這些重量級(jí)公司的貢獻(xiàn)和支持,發(fā)展速度非常快,有取代另一個(gè)業(yè)界領(lǐng)先開(kāi)源云平臺(tái) Eucalyptus 的態(tài)勢(shì)。OpenStack 是 Python 2.6 寫(xiě)的,CentOS 5.6 上默認(rèn)的是 Python 2.4 的環(huán)境并且還有很多依賴(lài)關(guān)系不容易升級(jí)到 2.6,所以在 Ubuntu 上安裝會(huì)簡(jiǎn)單一些,而且Ubuntu 是 OpenStack U

3、buntu 用最新的 Ubuntu 11.10 Server 64bit 版本來(lái)安裝和配置 OpenStack Nova.配置網(wǎng)絡(luò)在安裝完基本的 Ubuntu 11.10 Server 系統(tǒng)后升級(jí)和更新整個(gè)系統(tǒng),安裝完bridge-utils 包后重啟系統(tǒng):$ sudo apt-get update$ sudo apt-get upgrade$ sudo apt-get install bridge-utils$ sudo reboot配置網(wǎng)絡(luò):$ sudo vi /etc/network/interfacesauto loiface lo inet loopbackauto eth0ifac

4、e eth0 inet staticaddress 00netmask gateway 安裝 NTP 服務(wù)OpenStack Nova 需要 NTP 服務(wù)器來(lái)保持所有節(jié)點(diǎn)服務(wù)器(Cloud Compute)的時(shí)間同步,所以需要在前端控制服務(wù)器(Cloud Controller)上安裝 NTP 服務(wù)器,然后在節(jié)點(diǎn)服務(wù)器上安裝 NTP 客戶(hù)端保持與前端的同步:$ sudo apt-get install -y ntp打開(kāi)NTP的配置文件 vi /etc/ntp.conf,添加如下(其他的可以注釋掉)server server fudge stratum 10地時(shí)鐘重啟NTP是配置生效$ sudo

5、/etc/init.d/ntp restart安裝和配置 MySQL 數(shù)據(jù)庫(kù)OpenStack Nova 需要數(shù)據(jù)庫(kù)的支持,這里選用 MySQL(當(dāng)然也可以用其他的數(shù)據(jù)庫(kù),比如 PostgreSQL 等:$ sudo apt-get install mysql-server修改 MySQL 綁定地址,以便其他的節(jié)點(diǎn)服務(wù)器也能訪問(wèn)這個(gè)數(shù)據(jù)庫(kù):$ sudo vi /etc/mysql/f#bind-address = bind-address = $ sudo /etc/init.d/mysql restart安裝 Glance 鏡像服務(wù)Glance 是個(gè)鏡像服務(wù)器,用來(lái)給 OpenStack N

6、ova 提供操作系統(tǒng)鏡像(image)服務(wù),提供可選擇的操作系統(tǒng)模版鏡像。$ sudo apt-get install glanceMySQL創(chuàng)建數(shù)據(jù)庫(kù)glance:$ sudo mysql -urootp -e CREATE DATABASE glance;創(chuàng)建用戶(hù) glancedbadmin:$ sudo mysql -uroot -p -e CREATE USER glancedbadmin;把數(shù)據(jù)庫(kù)glance的所有特權(quán)賦給glancedbadmin用戶(hù)$ sudo mysql -uroot -p -e GRANT ALL PRIVILEGES ON glance.* TOglance

7、dbadmin% ;為用戶(hù)glancedbadmin創(chuàng)建密碼為glancedbadmin$ sudo mysql -uroot -p -e SET PASSWORD FOR glancedbadmin% =PASSWORD(glancedbadmin);編輯 /etc/glance/glance-registry.conf 文件,修改sql_connection = 一行為:sql_connection = mysql:/glancedbadmin:glancedbadmin00/glance重啟glance-registry 使修改后的/etc/glance/glance-registry.

8、conf生效$ sudo restart glance-registry安裝 OpenStack NovaOpenStack Nova 已經(jīng)進(jìn)入 Ubuntu 11.10 源,所以直接安裝就可以了,不必源碼安裝:安裝消息隊(duì)列服務(wù)器 RabbitMQ和nova的各個(gè)組件.$ sudo apt-get install -y rabbitmq-server nova-common nova-doc python-novanova-api nova-network nova-volume nova-objectstore nova-scheduler nova-compute安裝 euca2ools命

9、令行工具包$ sudo apt-get install -y euca2ools安裝解壓縮工具unzip.$ sudo apt-get install -y unzipMySQL創(chuàng)建數(shù)據(jù)庫(kù) nova$ sudo mysql -urootp -e CREATE DATABASE nova;創(chuàng)建用戶(hù) novadbadmin$ sudo mysql -uroot -p -e CREATE USER novadbadmin;把數(shù)據(jù)庫(kù)nova的所有特權(quán)賦給novadbadmin用戶(hù)$ sudo mysql -uroot -p -e GRANT ALL PRIVILEGES ON nova.* TOnov

10、adbadmin% ;為用戶(hù)novadbadmin創(chuàng)建密碼為novadbadmin$ sudo mysql -uroot -p -e SET PASSWORD FOR novadbadmin% =PASSWORD(novadbadmin);Nova 配置編輯/etc/nova/nova.conf-dhcpbridge_flagfile=/etc/nova/nova.conf-dhcpbridge=/usr/bin/nova-dhcpbridge-logdir=/var/log/nova-state_path=/var/lib/nova-lock_path=/var/lock/nova-forc

11、e_dhcp_release=True-use_deprecated_auth-verbose-s3_host=00-rabbit_host=00-cc_host=00-nova_url=00:8774/v1.1-ec2_url=00:8773/services/Cloud-fixed_range=/24-network_size=8-routing_source_ip=00-sql_connection=mysql:/novadbadmin:novadbadmin00/nova-glance_host=00-glance_api_servers=00:9292-image_service=n

12、ova.image.glance.GlanceImageService-vlan_interface=br100-public_interface=eth0-flat_interface=eth0修改/etc/nova 目錄的所有權(quán),允許修改/etc/nova/nova.conf文件$ sudo chown -R root:nova /etc/nova$ sudo chmod 644 /etc/nova/nova.conf重啟nova的相關(guān)服務(wù).$ sudo restart libvirt-bin;$ sudo restart nova-network;$ sudo restart novac

13、ompute;$ sudo restart nova-api;$ sudo restart nova-objectstore;$ sudo restart nova-scheduler;$ sudo restart nova-volume;$ sudo restart glance-api;$ sudo restart glance-registry每次一個(gè)個(gè)啟動(dòng)服務(wù)比較麻煩,可以編寫(xiě)一個(gè)腳本取名為 start.sh(自定義)#! /bin/bashsudo /etc/init.d/libvirt-bin restart;sudo /etc/init.d/nova-network restar

14、t;sudo /etc/init.d/nova-compute restart;sudo /etc/init.d/nova-api restart;sudo /etc/init.d/nova-objectstore restart;sudo /etc/init.d/nova-scheduler restart;sudo /etc/init.d/nova-volume restart;sudo /etc/init.d/glance-api restart;sudo /etc/init.d/glance-registry restart;將 start.sh 修改為可執(zhí)行文件$sudo chmod

15、 777 /home/bery/start.sh使用 Nova開(kāi)始使用 Nova 前需要?jiǎng)?chuàng)建 nova 數(shù)據(jù)庫(kù)表、創(chuàng)建網(wǎng)絡(luò)、創(chuàng)建管理員帳號(hào)、創(chuàng)建云并聯(lián)到剛才創(chuàng)建的管理員上:$ sudo nova-manage db sync$ sudo nova-manage network create private /24 1 255$ sudo nova-manage floating createip_range=/24為 nova數(shù)據(jù)庫(kù)創(chuàng)建一個(gè)有管理員權(quán)限的用戶(hù) bery$ sudo nova-manage user admin bery創(chuàng)建一個(gè)名為 proj 的項(xiàng)目$ sudo nova-man

16、age project create proj bery重啟 nova的相關(guān)服務(wù)$ sudo restart libvirt-bin;$ sudo restart nova-network;$ sudo restart nova-compute;$ sudo restart nova-api;$ sudo restart nova-objectstore;$ sudo restart nova-scheduler;$ sudo restart nova-volume;$ sudo restart glance-api;$ sudo restart glance-registry能訪問(wèn)和管理自己

17、的 Nova 云,創(chuàng)建權(quán)限信息,并解壓到自己的目錄里,需要注意的是每次使用 nova 管理云的時(shí)候都需要讀取 novarc 里面的配置信息:創(chuàng)建一個(gè)目錄用于下載和存放 nova證書(shū)以及 zip 壓縮文件$ mkdir /home/vpsee/creds生成用于訪問(wèn)和管理 nova云的證書(shū)$ sudo nova-manage project zipfile proj bery /home/bery/creds/novacreds.zip利用euca2ools管理云平臺(tái)需要novacreds.zip中的內(nèi)容。如果有多個(gè)節(jié)點(diǎn),還需要把novacreds.zip文件拷貝到其他節(jié)點(diǎn)瀏覽文件夾中創(chuàng)建和提取

18、的文件,并改變其所有權(quán)$ cd /home/bery/creds$ unzip novacreds.zip$ sudo chown bery:bery /home/bery/creds/ -R從novacreds.zip中解壓出來(lái)的文件有cacert.pem, cert.pem, novarc, pk.pemnova的證書(shū),設(shè)置之后才可以使用euca2ools命令, 比如euca-describe-images, eucadescribe-instances 等等。 這些變量可以通過(guò)source novarc 文件來(lái)設(shè)置。是不可以使用默認(rèn)的novarc EC2_ACCESS_KEY格式的,解決

19、這個(gè)問(wèn)題:$sudo nova-manage user exports bery輸出內(nèi)容類(lèi)似于export EC2_ACCESS_KEY=c043916c-9a0c-4f91-ad6c-4b30908b6c77export EC2_SECRET_KEY=d0ac688e-02f3-48f3-b758-96d886461ace打開(kāi)文件,替換一下兩行export EC2_ACCESS_KEY=bery:projexport NOVA_API_KEY=bery為:export EC2_ACCESS_KEY= c043916c-9a0c-4f91-ad6c-4b30908b6c77:projexpor

20、t c043916c-9a0c-4f91-ad6c-4b30908b6c77$ source /home/bery/creds/novarc每次用 nova 的時(shí)候都要用到 novarc 里面的環(huán)境變量,每次 source novarc 很麻煩,所以最好加到 .bashrc 里面:$ cat /home/bery/creds/novarc /home/bery/.bashrc$ source /home/bery/.bashrc再次重啟 nova 相關(guān)的所有服務(wù):$ sudo restart libvirt-bin;$ sudo restart nova-network;$ sudo rest

21、art nova-compute;$ sudo restart nova-api;$ sudo restart nova-objectstore;$ sudo restart nova-scheduler;$ sudo restart nova-volume;$ sudo restart glance-api;$ sudo restart glance-registry如果一切正常的話,應(yīng)該可以打印出如下的類(lèi)似信息:$ euca-describe-availability-zones verbose nova available |- server1 | |- nova-scheduler e

22、nabled :-) 2012-04-22 10:32:31 | |- nova-network enabled :-) 2012-04-22 10:32:32 | |- nova-compute enabled :-) 2012-04-22 10:32:32制作系統(tǒng)模板啟動(dòng)實(shí)例之前需要先上傳一個(gè)系統(tǒng)模版,我們稱(chēng)之為鏡像 (image),我們可以自己手動(dòng)制作鏡像,也可以直接使用官方的 Ubuntu 10.10 版本鏡像,下載已經(jīng)做好的鏡像文件并上傳到鏡像服務(wù)器(這里鏡像服務(wù)器和前端服務(wù)器在同一臺(tái)物理服務(wù)器上:$wget/ubuntu1010-UEC-localuser-image.tar.gz

23、$ uec-publish-tarball ubuntu1010-UEC-localuser-image.tar.gz ubuntu1010-bucketx86_64比如編號(hào)為 ami-00000003)為模版啟動(dòng)一個(gè)實(shí)例操作系統(tǒng):$ euca-describe-imagesIMAGE aki-00000001 ubuntu1010-bucket/vmlinuz-2.6.32-28-server.manifest.xmlavailable public x86_64 kernelIMAGEari-00000002ubuntu1010-bucket/initrd.img-2.6.32-28-se

24、rver.manifest.xmavailable public x86_64ramdiskIMAGEami-00000003ubuntu1010-bucket/maverick-server-uec-amd64.img.manifest.xml available publicx86_64 machine aki-00000001 ari-00000002啟動(dòng)一個(gè)實(shí)例$ euca-add-keypair mykey mykey.priv$ euca-run-instances -k mykey -t m1.tiny ami-00000003使用 euca-describe-instances

25、查看實(shí)例狀態(tài)$ euca-describe-instancesr-gc6cgxh0projdefaultINSTANCE i-00000009 ami-00000003 runningmykey (proj,server1) 0 m1.tiny 2012-04-24T03:39:26Z nova aki-00000001ari-00000002如果運(yùn)行后狀態(tài)為 ,可以等待一會(huì),如果正常會(huì)變成 running狀態(tài)檢查一下實(shí)例是否成功啟動(dòng)和運(yùn)行:$ virsh listId Name State-1 instance-00000001 running利用 kvm 只做了一個(gè) img 鏡像(服務(wù)器版

26、操作系統(tǒng)可以安裝 ubuntu-desktop 和virtual machine manager 創(chuàng)建一個(gè)大小 8G的“硬盤(pán)”(raw格式)$ kvm-img create -f raw ubuntu.img 找到盤(pán)的位置,然后就可以利用 kvm 安裝,選擇當(dāng)前創(chuàng)建的盤(pán)為安裝盤(pán)即可,需要注意的是在分區(qū)階段把 8GB硬盤(pán)全部分成一個(gè) ext4 root 分區(qū),不要?jiǎng)?chuàng)建多個(gè)分區(qū)也不要?jiǎng)?chuàng)建 swap 分區(qū)。系統(tǒng)安裝完成后更新系統(tǒng)和安裝相應(yīng)服務(wù)$ apt-get update$apt-get upgrade$ apt-get install -y openssh-server cloud-init70

27、-persistent-net.rules 會(huì)自動(dòng)添加其他的網(wǎng)絡(luò)接口,需要?jiǎng)h除這個(gè)文件避免自動(dòng)添加除了 eth0 以外的接口。刪除后系統(tǒng)基本就準(zhǔn)備好了,關(guān)閉虛擬機(jī):$ sudo rm -rf /etc/udev/rules.d/70-persistent-net.rules$ shutdown -h now現(xiàn)在來(lái)轉(zhuǎn)換鏡像格式因?yàn)?Openstack只接受 ext4 raw鏡像轉(zhuǎn)換成 ext4 鏡像。下面的步驟用來(lái)找出鏡像文件里面的分區(qū)起點(diǎn)是從哪里開(kāi)始的:$ sudo losetup -f ubuntu.img$ sudo losetup a/dev/loop0: fb00:24117291 (

28、/home/localadmin/ubuntu.img)$ sudo fdisk -l /dev/loop0Disk /dev/loop0: 10.7 GB, 10737418240 bytes255 heads, 63 sectors/track, 1305 cylinders, total 20971520 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 b

29、ytesDisk identifier: 0 x000502e6DeviceBoot*Start2048End20969471BlocksId System/dev/loop0p110483712 83 Linux上面最后一行顯示分區(qū)是從扇區(qū)(sector)2048開(kāi)始的,每個(gè)扇區(qū)是 512個(gè)字節(jié),所以是從 2048 x 512 = 1048576個(gè)字節(jié)開(kāi)始的。記住這個(gè) 1048576,下面會(huì)用到。卸載 loop 后重新從 1048576 字節(jié)開(kāi)始掛載:$ sudo losetup -d /dev/loop0$ sudo losetup -f -o 1048576 ubuntu.img$ su

30、do losetup a/dev/loop0: fb00:24117291 (/home/localadmin/ubuntu.img), offset 1048576把這整個(gè)分區(qū)拷貝到一個(gè)新文件就是一個(gè)我們要的 ext4 文件系統(tǒng)鏡像:$ sudo dd if=/dev/loop0 of=ubuntutemplate.img20969472+0 records in20969472+0 records out10736369664 bytes (11 GB) copied, 107.455 s, 99.9 MB/s用完 loop 后記得卸載:$ sudo losetup -d /dev/loop0掛載(mount)剛創(chuàng)建的 ext4 文件系統(tǒng)鏡像,并修改分區(qū)加載表(/etc/fstab注釋或刪除以前的,加上 UUID=uec-rootfs 一行:$ sudo mount -o loop ubuntutemplate.img /mnt$ sudo vi /mnt/etc/fstab#UUID=1dc3a59e-faab-41ee-b232-3300163676bf / ext4 errors=remount-ro 0 1UUID=uec-rootfs/ext4defaults 0 0把內(nèi)核(vmlinuz)和

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論