制作openstack使用的Ubuntu镜像
2017-07-31 00:00
666 查看
参考:
1.http://blog.csdn.net/svmachine/article/details/51523709
2.http://wutou.blog.51cto.com/615096/1862488
方法一:
一.环境准备
Vmware12.0
OS:Ubuntu-16.04桌面版
制作镜像版本:ubuntu-16.04.1-server-amd64.iso(服务器版)
查看是否支持虚拟化(有输出代表支持,否则在BIOS页面中设置,虚拟机的话设置vmware即可):
二.安装kvm
其中:virt-manager为GUI管理窗口,bridge-utils:用于网络桥接。
三.测试环境是否安装成功
KVM是否安装成功
验证KVM内核是否加载成功
证实KVM正常运行
以上具体步骤查看:http://www.aboutyun.com/thread-9356-1-1.html
四。制作镜像
首先是在pc上创建一块空镜像,这块镜像用作虚拟机的硬盘,所以请保证留出你所需的空间的大小:
下载Ubuntu原镜像文件,可以去官网
下载地址:http://pan.baidu.com/s/1dF8ufbN
将下载的iso文件置入某个文件夹,启动KVM一个虚拟机实例。您将看到安装过程的开始。键入如下命令,它将在端口0开放VNC服务(192.168.155.4是我的本机IP):
安装(直接使用vncviewer会提示找不到命令,安装gvncviewer)
使用0这个展示端口连入虚拟机的VNC,并完成安装。
虚拟机界面如图(按平时安装操作系统一样安装完成就行):
安装结束后,通过如下命令查看虚拟机(制作的镜像):
如果上面没有安装openssh-server,可以进行如下操作:
至此OpenStack使用的镜像制作完成,可以直接在openstack中使用,制作的镜像地址如下:http://pan.baidu.com/s/1boMvdgj
方法二:
参考:
1.http://www.cnblogs.com/CloudMan6/p/6397360.html
2.http://www.jianshu.com/p/9ade0ba91a21
这是 OpenStack 实施经验分享系列的第 1 篇。
OpenStack 的 instance 是通过 Glance 镜像部署的,所以准备镜像是必须要做的工作。本节介绍 Linux 镜像的制作方法,后面还会讨论 Windows 镜像。
CentOS6:http://cloud.centos.org/centos/6/images/
CentOS7:http://cloud.centos.org/centos/7/images/
Ubuntu14.04:http://cloud-images.ubuntu.com/trusty/current/
Ubuntu16.04:http://cloud-images.ubuntu.com/xenial/current/
下面以Ubuntu16.04为例演示如何将标准镜像导入 Glance。
点击“创建镜像”按钮。
在创建页面填写镜像相关信息,其中包括:
镜像名称为“Ubuntu 16.04”
“镜像源”选择“镜像文件”
点击“选择文件”定位Ubuntu 16.04的Cloud image文件xenial-server-cloudimg-amd64-disk1.img
“镜像格式”选择“QCOW2”
最小磁盘填写“20”,这相当于设置instance启动盘的最小容量
勾选“共有”选择框,这样所有Project都可以使用该镜像
点击“创建镜像”按钮,开始上传镜像。完成后,新的镜像将出现在镜像列表上。
通过 cloud 镜像部署出一个实例。
定制该实例。
创建该实例的快照,该快照将保存在Glance中。
以后通过该快照部署新的实例。
下面我们以CentOS标准镜像为例演示定制镜像的每个步骤,定制内容包括:添加图形界面,设置中国时区,设置ssh密码登录等。
命名为“centos6-vm”。
因为cloud镜像默认是通过密钥对访问,点击“访问&安全”标签,选择事先创建好的密钥对“template”。
点击“运行”, centos6-vm部署成功。
在“项目->Compute->访问&安全”菜单中管理密钥对。“template”就是在这里创建的。也支持已有的密钥对。
在创建密钥时下载并保管好私钥文件template.pem,下面通过此文件登录centos6-vm。
ssh -i <key-path>/template.pem centos@172.17.24.97
然后切换到root用户:
sudo su –
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
设置yum 源
因为要安装图形等相关包,yum源需提前准备好(当然也可以用官网的源)。然后编辑 /etc/yum.repos.d/CentOS-Base.repo
如果是CentOS7,内容如下:
安装开发工具和图形界面
CentOS6安装如下包:
yum groupinstall "Desktop"
yum groupinstall "X Window System"
yum groupinstall "Development tools"
CentOS7安装如下包:
yum groupinstall "Server with GUI"
yum groupinstall "GNOME Desktop"
yum groupinstall "Development Tools"
设置系统默认启动图形界面
CentOS6,编辑 /etc/inittab,
CentOS7,执行 systemctl set-default graphical.target
设置 root密码
设置root密码默认为“passw0rd”
允许root 通过密码ssh登录
编辑 /etc/ssh/sshd_config,作以下修改。
重启ssh服务
service sshd restart
修改 /etc/cloud/cloud.cfg
cloud image都是用 cloudinit 初始化instance,比如配置网络,extend 系统盘等,cloudinit 所有的配置都写在/etc/cloud/cloud.cfg,下面的配置将允许 root 通过password ssh 登录。
至此,centos6-vm已经可以启动图形界面,并且可以用密码通过ssh登录了。
安装cloud-utils-growpart(CentOS 6 only)
cloudint 会用到这个软件管理磁盘分区,因为 CentOS6 cloud image 中没有安装,所以这里需要手工安装。下载地址:https://pkgs.org/centos-6/epel-x86_64/cloud-utils-growpart-0.27-10.el6.x86_64.rpm/download/
rpm -Uvh cloud-utils-growpart-0.27-10.el6.x86_64.rpm
为快照命名。
点击“创建快照”。
点击“运行”,实例部署成功。
可以看到,该实例已经启动了图形界面,并且root可以通过ssh密码登录。
以 CentOS 6.7n为例,可以直接glance image-create命令通过将其转化为image类型。步骤如下:
1. 在其详细信息里面记录下ID为:228f7bdc-fcf1-4f6a-8a7a-298b86f9e94b
2. 该镜像默认存放于控制节点 /var/lib/glance/images/228f7bdc-fcf1-4f6a-8a7a-298b86f9e94b。
3. 执行glance image-create创建新的镜像。
glance image-create --name "CentOS 6.7" --file 228f7bdc-fcf1-4f6a-8a7a-298b86f9e94b --disk-format qcow2 --container-format bare --is-public true --progress
4. 新创建的镜像类型为image。
作者 2010jing
2017.05.06 19:21* 字数 617 阅读 531评论 4喜欢 4
在搭建好的OpenStack环境,创建虚拟机。
login-openstack.png
根据自己的账号信息登录。
登录进去之后,查看网络是这样子的。
main-network.png
由于IP 有限,不能够给到用户直接将多个VM 挂载在该网络上,得由用户自行创建子网,创建路由,然后通过申请Floating IP来访问内网创建的VM。
create-subnet.png
create-subnet-info-0.png
create-subnet-info.png
输入子网的一些信息
Network Name: demo
Subnet Name: demo_subnet
Network Address: 10.0.1.0/24
再查看网络 就可以看到创建的子网demo(橙色)
created-subnetwork.png
create-router.png
create-router-info-0.png
路由信息
Router Name: demo-router
External Network: ext_net
此时效果是这样的
created-router.png
add-router-interface.png
Select Subnet: demo_subnet
add-router-interface-info-1.png
效果如下
add-router-interface-info-2.png
create-instance.png
Name: demo(随意)
Count:1
create-instance-1.png
Source: Ubuntu
create-instance-2.png
Flavor: typical
create-instance-3.png
Network
Network: demo
create-instance-4.png
Configuration
这个配置很重要,否则创建VM后,你只能在网页端的console去访问,网页端实在太慢太卡,不大建议,很不方便。当然你也可以使用key pair, 但是这样你得在你要使用的电脑上有xxx.pem的文件。本人还是渴望方便一点,直接SSH 账号密码登录。
命令简单解释:
passwd ubuntu 是更改 ubuntu账号密码,因为openstack 提供的ubuntu 镜像,默认创建账号是ubuntu。
这两个 123456 是你的密码 和 确认密码,自行更改。
用sed 命令更改配置文件 允许密码认证登录。
最后就是要重启一下SSH服务。
create-instance-5.png
最后点击 Launch Instance.
Launch-Instance-1.png
Launch-Instance-2.png
这样,一个VM实例就创建出来。
Associate Floating IP
floating-ip-1.png
floating-ip-2.png
floating-ip-3.png
floating-ip-4.png
rule-1.png
ALL ICMP - Ingress
rule-2.png
rule-3.png
SSH
rule-4.png
rule-5.png
添加完毕之后,就开始测试了。
192.168.9.15 是你对应VM的 Floating IP
ssh-2.png
重复上面的操作,再创建两个VM。
other-vm.png
这样我们就可以通过Floating IP 去访问其他虚拟机。
ssh-3.png
ssh-4.png
1.http://blog.csdn.net/svmachine/article/details/51523709
2.http://wutou.blog.51cto.com/615096/1862488
方法一:
一.环境准备
Vmware12.0
OS:Ubuntu-16.04桌面版
制作镜像版本:ubuntu-16.04.1-server-amd64.iso(服务器版)
查看是否支持虚拟化(有输出代表支持,否则在BIOS页面中设置,虚拟机的话设置vmware即可):
egrep -o '(vmx|svm)' /proc/cpuinfo
二.安装kvm
sudo apt-get install qemu-kvm libvirt-bin kvm qemu virt-manager bridge-utils
其中:virt-manager为GUI管理窗口,bridge-utils:用于网络桥接。
三.测试环境是否安装成功
KVM是否安装成功
kvm-ok
验证KVM内核是否加载成功
lsmod | grep kvm
证实KVM正常运行
virsh -c qemu:///system list
以上具体步骤查看:http://www.aboutyun.com/thread-9356-1-1.html
四。制作镜像
首先是在pc上创建一块空镜像,这块镜像用作虚拟机的硬盘,所以请保证留出你所需的空间的大小:
qemu-img create -f qcow2 server.img 20G
下载Ubuntu原镜像文件,可以去官网
下载地址:http://pan.baidu.com/s/1dF8ufbN
将下载的iso文件置入某个文件夹,启动KVM一个虚拟机实例。您将看到安装过程的开始。键入如下命令,它将在端口0开放VNC服务(192.168.155.4是我的本机IP):
sudo kvm -m 1024 -cdrom Ubuntu-14.04.4-server-amd64.iso -drive file=server.img,if=virtio,index=0 -boot d -net nic -net user -nographic -vnc 192.168.155.4:0
安装(直接使用vncviewer会提示找不到命令,安装gvncviewer)
apt-get install gvncviewer
使用0这个展示端口连入虚拟机的VNC,并完成安装。
gvncviewer 192.168.155.4:0
虚拟机界面如图(按平时安装操作系统一样安装完成就行):
安装结束后,通过如下命令查看虚拟机(制作的镜像):
sudo kvm -m 1024 -drive file=server.img,if=virtio,index=0 -boot c -net nic -net user -nographic -vnc 192.168.155.4:0
如果上面没有安装openssh-server,可以进行如下操作:
sudo apt-get update sudo apt-get upgrade sudo apt-get install openssh-server cloud-init
至此OpenStack使用的镜像制作完成,可以直接在openstack中使用,制作的镜像地址如下:http://pan.baidu.com/s/1boMvdgj
方法二:
参考:
1.http://www.cnblogs.com/CloudMan6/p/6397360.html
2.http://www.jianshu.com/p/9ade0ba91a21
这是 OpenStack 实施经验分享系列的第 1 篇。
OpenStack 的 instance 是通过 Glance 镜像部署的,所以准备镜像是必须要做的工作。本节介绍 Linux 镜像的制作方法,后面还会讨论 Windows 镜像。
下载clould 镜像
最简单的方法是使用标准镜像。主流的Linux发行版都提供可以在 OpenStack 中直接使用的cloud镜像,下载地址:CentOS6:http://cloud.centos.org/centos/6/images/
CentOS7:http://cloud.centos.org/centos/7/images/
Ubuntu14.04:http://cloud-images.ubuntu.com/trusty/current/
Ubuntu16.04:http://cloud-images.ubuntu.com/xenial/current/
下面以Ubuntu16.04为例演示如何将标准镜像导入 Glance。
创建Glance镜像
登录 OpenStack,打开 “项目->Compute->镜像”菜单。点击“创建镜像”按钮。
在创建页面填写镜像相关信息,其中包括:
镜像名称为“Ubuntu 16.04”
“镜像源”选择“镜像文件”
点击“选择文件”定位Ubuntu 16.04的Cloud image文件xenial-server-cloudimg-amd64-disk1.img
“镜像格式”选择“QCOW2”
最小磁盘填写“20”,这相当于设置instance启动盘的最小容量
勾选“共有”选择框,这样所有Project都可以使用该镜像
点击“创建镜像”按钮,开始上传镜像。完成后,新的镜像将出现在镜像列表上。
定制镜像
cloud 镜像是标准镜像,没有图像界面,是美国时区,而且只能通过密钥登录。可以根据需要对该镜像进行定制,其方法是:通过 cloud 镜像部署出一个实例。
定制该实例。
创建该实例的快照,该快照将保存在Glance中。
以后通过该快照部署新的实例。
下面我们以CentOS标准镜像为例演示定制镜像的每个步骤,定制内容包括:添加图形界面,设置中国时区,设置ssh密码登录等。
1. 通过cloud镜像部署出一个实例
进入 “项目->Compute->镜像”菜单,点击镜像“CentOS6”后面的“启动云主机”按钮。命名为“centos6-vm”。
因为cloud镜像默认是通过密钥对访问,点击“访问&安全”标签,选择事先创建好的密钥对“template”。
点击“运行”, centos6-vm部署成功。
在“项目->Compute->访问&安全”菜单中管理密钥对。“template”就是在这里创建的。也支持已有的密钥对。
在创建密钥时下载并保管好私钥文件template.pem,下面通过此文件登录centos6-vm。
ssh -i <key-path>/template.pem centos@172.17.24.97
然后切换到root用户:
sudo su –
2. 定制该实例
设置中国时区cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
设置yum 源
因为要安装图形等相关包,yum源需提前准备好(当然也可以用官网的源)。然后编辑 /etc/yum.repos.d/CentOS-Base.repo
如果是CentOS7,内容如下:
安装开发工具和图形界面
CentOS6安装如下包:
yum groupinstall "Desktop"
yum groupinstall "X Window System"
yum groupinstall "Development tools"
CentOS7安装如下包:
yum groupinstall "Server with GUI"
yum groupinstall "GNOME Desktop"
yum groupinstall "Development Tools"
设置系统默认启动图形界面
CentOS6,编辑 /etc/inittab,
CentOS7,执行 systemctl set-default graphical.target
设置 root密码
设置root密码默认为“passw0rd”
允许root 通过密码ssh登录
编辑 /etc/ssh/sshd_config,作以下修改。
重启ssh服务
service sshd restart
修改 /etc/cloud/cloud.cfg
cloud image都是用 cloudinit 初始化instance,比如配置网络,extend 系统盘等,cloudinit 所有的配置都写在/etc/cloud/cloud.cfg,下面的配置将允许 root 通过password ssh 登录。
至此,centos6-vm已经可以启动图形界面,并且可以用密码通过ssh登录了。
安装cloud-utils-growpart(CentOS 6 only)
cloudint 会用到这个软件管理磁盘分区,因为 CentOS6 cloud image 中没有安装,所以这里需要手工安装。下载地址:https://pkgs.org/centos-6/epel-x86_64/cloud-utils-growpart-0.27-10.el6.x86_64.rpm/download/
rpm -Uvh cloud-utils-growpart-0.27-10.el6.x86_64.rpm
3. 创建新镜像
我们在instance中完成了定制工作,接下来对instance做个快照,生成新的镜像。点击“centos6-vm”后面的“创建快照”按钮。为快照命名。
点击“创建快照”。
4. 部署新实例
点击“启动云主机”通过快照部署新的实例。点击“运行”,实例部署成功。
可以看到,该实例已经启动了图形界面,并且root可以通过ssh密码登录。
将 snapshot 转化为 image(可选)
Glance镜像有两类:image和snapshot,前面通过对instance做快照创建的镜像类型为 snapshot,有时候可能会觉得不太方便,可以将snapshot转化为image。以 CentOS 6.7n为例,可以直接glance image-create命令通过将其转化为image类型。步骤如下:
1. 在其详细信息里面记录下ID为:228f7bdc-fcf1-4f6a-8a7a-298b86f9e94b
2. 该镜像默认存放于控制节点 /var/lib/glance/images/228f7bdc-fcf1-4f6a-8a7a-298b86f9e94b。
3. 执行glance image-create创建新的镜像。
glance image-create --name "CentOS 6.7" --file 228f7bdc-fcf1-4f6a-8a7a-298b86f9e94b --disk-format qcow2 --container-format bare --is-public true --progress
4. 新创建的镜像类型为image。
简单使用OpenStack创建实例
作者 2010jing
2017.05.06 19:21* 字数 617 阅读 531评论 4喜欢 4
在搭建好的OpenStack环境,创建虚拟机。
登录OpenStack
login-openstack.png
根据自己的账号信息登录。
登录进去之后,查看网络是这样子的。
main-network.png
由于IP 有限,不能够给到用户直接将多个VM 挂载在该网络上,得由用户自行创建子网,创建路由,然后通过申请Floating IP来访问内网创建的VM。
创建子网
Network -- > Network Topology -- > Create Networkcreate-subnet.png
create-subnet-info-0.png
create-subnet-info.png
输入子网的一些信息
Network Name: demo
Subnet Name: demo_subnet
Network Address: 10.0.1.0/24
再查看网络 就可以看到创建的子网demo(橙色)
created-subnetwork.png
创建路由
Network -- > Routers -- > Create Routercreate-router.png
create-router-info-0.png
路由信息
Router Name: demo-router
External Network: ext_net
此时效果是这样的
created-router.png
给路由添加接口
Network -- Router -- Interfaces -- Add Interfaceadd-router-interface.png
Select Subnet: demo_subnet
add-router-interface-info-1.png
效果如下
add-router-interface-info-2.png
创建VM实例
Compute -- Instances -- Launch Instancecreate-instance.png
Name: demo(随意)
Count:1
create-instance-1.png
Source: Ubuntu
create-instance-2.png
Flavor: typical
create-instance-3.png
Network
Network: demo
create-instance-4.png
Configuration
#!/bin/sh passwd ubuntu<<EOF 123456 123456 EOF sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config service ssh restart
这个配置很重要,否则创建VM后,你只能在网页端的console去访问,网页端实在太慢太卡,不大建议,很不方便。当然你也可以使用key pair, 但是这样你得在你要使用的电脑上有xxx.pem的文件。本人还是渴望方便一点,直接SSH 账号密码登录。
命令简单解释:
passwd ubuntu 是更改 ubuntu账号密码,因为openstack 提供的ubuntu 镜像,默认创建账号是ubuntu。
这两个 123456 是你的密码 和 确认密码,自行更改。
用sed 命令更改配置文件 允许密码认证登录。
最后就是要重启一下SSH服务。
create-instance-5.png
最后点击 Launch Instance.
Launch-Instance-1.png
Launch-Instance-2.png
这样,一个VM实例就创建出来。
绑定Floating IP
因为创建的VM是链接在你的子网内,外网不可以直接访问,这个时候需要给路由绑定Floating IP,才可以从外网访问你的VM。Associate Floating IP
floating-ip-1.png
floating-ip-2.png
floating-ip-3.png
floating-ip-4.png
测试SSH访问
可能一开始并不能够访问,因为没有在安全组添加规则。我们需要开通一下,添加规则就好。rule-1.png
ALL ICMP - Ingress
rule-2.png
rule-3.png
SSH
rule-4.png
rule-5.png
添加完毕之后,就开始测试了。
$ ssh ubuntu@192.168.9.15
192.168.9.15 是你对应VM的 Floating IP
ssh-2.png
重复上面的操作,再创建两个VM。
other-vm.png
这样我们就可以通过Floating IP 去访问其他虚拟机。
ssh-3.png
ssh-4.png
相关文章推荐
- 制作openstack使用的Ubuntu镜像
- 使用systemback制作Ubuntu自定义系统镜像和系统备份
- Openstack中使用Neutron GRE模式,ssh无法访问Ubuntu镜像生成的虚拟机的解决方法
- openstack起步 在ubuntu上制作系统镜像镜像
- Linux(Ubuntu)光盘镜像文件制作及使用攻略
- 为OpenStack制作UBUNTU 12.04系统镜像
- Remastersys -- 将正在使用的Ubuntu14.04 制作成镜像文件
- OPENSTACK 虚拟机镜像制作指南 示例:Ubuntu 镜像
- 使用 linux respin 制作自定义 Ubuntu ISO镜像
- 使用ISO镜像制作适用于OpenStack的云镜像
- 使用respin 制作ubuntu镜像
- 【Ubuntu使用技巧】在Ubuntu下制作ISO镜像的方法
- 使用ISO文件制作OpenStack使用的CoreOS镜像
- Ubuntu14.04使用Remastersys打包整个镜像制作iso
- 使用virt-manager制作Openstack Windows server 2012R2镜像
- 制作openstack镜像win7.qcow2(centos/ubuntu/win镜像分享)
- 制作Openstack上使用的CentOS系统镜像
- Ubuntu使用debootstrap制作Docker镜像
- 制作OpenStack上使用的CentOS系统镜像
- 企业私有云应用之使用OZ制作openstack镜像