openstack镜像制作centos7
1,找一台宿主机安装kvm并检查是否支持虚拟化,这里我用的是vmware来做宿主机
egrep '(vmx|svm)' /proc/cpuinfo
然后安装kvm:
yum install epel-release net-tools vim unzip zip wget qemu-kvm libvirt virt-install bridge-utils
验证是否安装成功:
[root@osa ~]# lsmod | grep kvm
kvm_intel
kvm kvm_intel
irqbypass kvm
启动kvm
[root@osa ~]# systemctl start libvirtd
加入开机自启动
[root@osa ~]# systemctl enable libvirtd
2 删除默认网桥并新建网桥
virsh net-destroy default
virsh net-undefine default
备份默认网卡配置文件
cp ifcfg-ens160 ifcfg-ens160.bak
新建br0:
vim /etc/sysconfig/network-scripts/ifcfg-br0 BOOTPROTO=static
DEVICE=br0
TYPE=Bridge
NM_CONTROLLED=no
IPADDR=172.100.60.80
NETMASK=255.255.255.0
GATEWAY=172.100.60.1
DNS1=172.100.60.31
修改原有的网卡配置文件ens160:
vim /etc/sysconfig/network-scripts/ifcfg-ens160
BOOTPROTO=none
DEVICE=ens160
NM_CONTROLLED=no
ONBOOT=yes
BRIDGE=br0
然后重启网卡:
service network restart
3 开始创建kvm虚拟机:
首先创建img文件:
qemu-img create -f qcow2 centos-7.1.qcow2 20g
然后创建虚拟机:
virt-install --name centos-7.1. --ram --vcpu --cdrom=/data/iso/CentOS--x86_64-DVD1511.iso --disk path=/data/images/centos-7.1..qcow2,bus=vi
rtio --os-variant=rhel6 --bridge=br0 --vnclisten=0.0.0.0 --vncport= --vnc
然后使用vnc连接
然后更新系统安装一些自己需要的软件
4,安装choud-init jq acpid
yum -y install acpid cloud-init jq chkconfig acpid on chkconfig cloud-init on echo "NOZEROCONF=yes" >> /etc/sysconfig/network
5,修改内核参数,并更新内核
编辑/etc/default/grub配置GRUB_CMDLINE_LINUX选项删除rhgb quiet 然后增加 console=tty0console=ttyS0,115200n8
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap console=tty0 console=ttyS0,115200n8"
grub2-mkconfig -o /boot/grub2/grub.cfg
6,编辑配置cloud.cfg文件
红色部分为修改部分
users:
- default disable_root: 0
ssh_pwauth: 1 locale_configfile: /etc/sysconfig/i18n
mount_default_fields: [~, ~, 'auto', 'defaults,nofail', '', '']
resize_rootfs_tmp: /dev
ssh_deletekeys:
ssh_genkeytypes: ~
syslog_fix_perms: ~ cloud_init_modules:
- migrator
- bootcmd
- write-files
- growpart
- resizefs
- set_hostname
- update_hostname
- update_etc_hosts
- rsyslog
- users-groups
- ssh cloud_config_modules:
- mounts
- locale
- set-passwords
- yum-add-repo
- package-update-upgrade-install
- timezone
- puppet
- chef
- salt-minion
- mcollective
- disable-ec2-metadata
- runcmd cloud_final_modules:
- rightscale_userdata
- scripts-per-once
- scripts-per-boot
- scripts-per-instance
- scripts-user
- ssh-authkey-fingerprints
- keys-to-console
- phone-home
- final-message system_info:
default_user:
name: root
lock_passwd: true
gecos: Cloud User
groups: [wheel, adm, systemd-journal]
sudo: ["ALL=(ALL) NOPASSWD:ALL"]
shell: /bin/bash
distro: rhel
paths:
cloud_dir: /var/lib/cloud
templates_dir: /etc/cloud/templates
ssh_svcname: sshd # vim:syntax=yaml
7 关机
poweroff
8,执行清理任务在宿主机上
virt-sysprep -d CentOS7
9,拷贝镜像到glance节点上传镜像
openstack镜像制作centos7的更多相关文章
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作centos7.8-15
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作centos7.8-15 欢迎加QQ群:1026880196 进行交流学习 制作OpenS ...
- openStack镜像制作
参考链接: https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/OpenStack/page/Creating ...
- OpenStack 镜像制作
Contents [hide] 1 Centos6.5 img制作 1.1 基础环境安装 1.2 下载或从本地上传系统镜像 1.3 启动服务 1.4 建立镜像文件 1.5 通过virt-install ...
- OpenStack镜像制作-CentOS
云平台中镜像还是很重要的,提供各种定制化的镜像使得用户体验更好. 最开始玩OpenStack的时候用的是安装文档中提到的cirros,其密码cubswin:) 刚开始感觉很怪,现在已经可以随手打出.p ...
- openstack镜像制作思路、指导及问题总结
一.思路就4步:1.创建镜像文件2.用nova-compute自带的kvm,启动.iso文件,用vncviewer完成OS的安装过程3.OS安装完毕,停止虚拟机,kvm重启镜像,安装必要的软件4.后续 ...
- openStack 镜像制作,镜像裁剪一般步骤
镜像制作一般裁剪步骤 1, linux系统安装CentOs/RHEL Desktop桌面系统,分区划分但分区/挂载点.设置Selinux=disabled关闭iptables安装cloud-init[ ...
- OpenStack 镜像制作之cloud-init
Contents [hide] 1 背景 2 密钥登录 2.1 密钥登录的原理 2.1.1 openstack的私钥 2.1.2 密码注入 = 2.1.3 实际遇到的情况 2.1.4 解决办法 背景 ...
- 云计算---openstack镜像制作
一:本地部署KVM 1.安装KVM 1.1安装须知 查看CPU是否支持kvm完全虚拟机. [root@LINUX ~]# grep "flags" /proc/cpuinfofla ...
- 云计算---openstack镜像制作详解
一:本地部署KVM 1.安装KVM 1.1安装须知 查看CPU是否支持kvm完全虚拟机. [root@LINUX ~]# grep "flags" /proc/cpuinfofla ...
随机推荐
- SockJS
1\ 2\ 下载
- redis(1)--redis3.2.8安装
一.下载安装包 http://download.redis.io/releases/ 选择对应的版本 二.copy到对应的虚拟机上 运行 tar -zxvf redis-3.2.8 进行解压 更改 ...
- 深入理解Java虚拟机读书笔记6----早期(编译期)优化
六 早期(编译期)优化 1 “编译期”的含义 · 可能是指一个前端编译器把*.java文件转变成*.class文件的过程,前端编译器如:Sun的Javac.Eclipse JDT中的增量式 ...
- 使用 nodeJs 开发微信公众号(上传图片)
在给用户发送消息中涉及到的素材(图片.视频.音频.文章等)需要事先传到微信服务器,然后获得媒体id(media_id),然后把 media_id 传递给用户 上传分上传临时素材(只保存三天)和上传永久 ...
- list<T>升序、降序
List<test> list = new List<test> (); var result = list.OrderByDescending(p => p.we).T ...
- UI设计篇·入门篇·简单动画的实现,为布局设置动画,用XML布置布局动画
不仅仅控件可以设置动画,一个布局也可以设置动画, 当给一个布局设置了动画的时候,这个布局里所包含的控件都会依赖执行这些动画. 为布局设置动画的实现步骤: 1.新建一个动画,设置需要实现的形式 2.新建 ...
- JVM-如何判断对象存活与否与CMS收集器和G1收集器的区别
JVM如何判断对象存活? 1.计数器 2.可达性分析 (很多主流语言采用这种方法来判断对象是否存活) 计数器:每当有一个地方引用该对象时,计数器 +1:引用失效则 -1: 优点:实现简单,判定效率 ...
- cookies,sessionstorage,localstorage的区别?
请描述一下 cookies,sessionStorage 和 localStorage 的区别? sessionStorage 和 localStorage 是HTML5 Web Storage AP ...
- js生成带有logo的二维码并保存成图片下载
生成二维码,需要依赖jquery,先引入一个jquery,然后需要一个插件改变过了jquery-qrcode.js 插件代码(需要的自己打开看): /*! jquery-qrcode v0.14.0 ...
- 聊聊 HashMap
数据存储底层? 数据底层具体存储是一个Node<K,V> HashMap 是基于哈希来映射的,那当映射冲突时候怎么解决? 链地址,数组+链表 HashMap 什么时候扩容? 负载因子 lo ...