使用devstack安装openstack
使用devstack安装openstack
环境介绍,宿主机器 Fedora release 29 (Twenty Nine)
40核心cpu,32g内存
设想, 在fedora中安装kvm,虚拟出Ubuntu,然后在Ubuntu中安装openstack.
使用egrep -c '(svm|vmx)' /proc/cpuinfo
查询本机是否支持虚拟化,如果返回结果大于0代表支持。
如果是0你需要检查你的硬件是否支持虚拟机化或主板是否开启了虚拟化选项。
Fedora(centos/RHEL)的环境准备
配置国内yum源
备份原有的yum源配置,然后 下载
fedora-ustc.repo 到配置文件目录 /etc/yum.repos.d/
yum makecache
2 . 下载Ubuntu18.4镜像文件
下载地址:http://mirrors.ustc.edu.cn/ubuntu-cdimage/releases/18.04.2/release/ubuntu-18.04.2-server-amd64.iso
kvm环境搭建
安装软件包:
yum install -y qemu-kvm libvirt ###qemu-kvm用来创建虚拟机硬盘,libvirt用来管理虚拟机
yum install -y virt-install ###用来创建虚拟机
关闭防火墙,关闭selinux,清除iptables
systemctl stop firewalld.service
iptables -F
vim /etc/selinux/config
修改为 SELINUX=disabled
Ubuntu下的环境准备
配置国内源。
sudo sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
安装KVM
执行以下命令安装KVM
sudo apt update
sudo apt install qemu qemu-kvm libvirt-bin bridge-utils virt-manager
将libvirtd添加自启动
sudo systemctl start libvirtd.service
sudo systemctl enable libvirtd.service
```
KVM安装完成后,首先需要进行网络设定,KVM支持四种网络模式:
- 桥接模式
- NAT模式
- 用户网络模式
- 直接分配设备模式
原本宿主机是通过网卡eth0连接外部网络的,网桥模式会新创建一个网桥br0,接管eth0来连接外部网络,然后将宿主机和虚拟机的网卡eth0都绑定到网桥上。
使用桥接模式需要进行以下操作:
方法1:
*** 需要安装ifupdown工具下面的修改才能生效 `sudo apt install ifupdown`***
编辑/etc/network/interfaces,增加如下内容
auto br0
iface br0 inet dhcp # 网桥使用DHCP模式,从DHCP服务器获取IP
bridge_ports enp3s0 # 网卡名称,网桥创建前连接外部的网卡,可通过ifconfig命令查看,有IP地址的就是
bridge_stp on # 避免数据链路出现死循环
bridge_fd 0 # 将转发延迟设置为0
接下来需要重启networking服务(如果是通过SSH连接到宿主机上的,这一步会导致网络中断,如果出现问题可能导致连不上宿主机,最好在宿主机上直接操作)
systemctl restart networking.service
使用ifconfig命令查看IP是否从enp3s0(网桥创建前的网卡)变到了br0上,如果没有变化则需要重启。
方法2:
Ubuntu18默认管理ip的方式改为netplan了。
默认配置文件:
/etc/netplan/50-cloud-init.yaml
修改成:
network:
ethernets:
eth0:
addresses: []
dhcp4: false
version: 2
bridges:
br0:
interfaces: [eth0]
dhcp4: false
addresses: [10.1.1.9/24]
gateway4: 10.1.1.1
nameservers:
addresses: [223.5.5.5]
然后直接执行 `netplan apply` 即可.
如果宿主机ip已经成功变到网桥上,并且宿主机能正常上网而虚拟机获取不到ip,可能是ufw没有允许ip转发导致的,编辑/etc/default/ufw允许ip转发。
DEFAULT_FORWARD_POLICY="ACCEPT"
重启ufw服务让设置生效
systemctl restart ufw.service
在kvm中安装Ubuntu
安装前的准备
mkdir ubuntu;cd ubuntu
- 注册一个新的虚拟网卡
```
vbr
1. 把以上配置文件保存为 vbr.xml
2. 注册到系统设备中
`virsh net-define vbr.xml`
3. 启动虚拟网卡设备
`virsh net-start vbr`
4. 设置为开机自启动
`virsh net-autostart vbr`
5. 创建一个磁盘镜像文件
`qemu-img create -f qcow ubuntu.raw 40G`
2. 安装Ubuntu系统
1. 使用kvm创建一个虚拟机
`virt-install --virt-type kvm --name ubuntu1804 --ram 20480 --cdrom=/var/ftp/share/1t/ubuntu-18.04.2-server-amd64.iso --disk path=/var/ftp/share/1t/ubuntu.raw --network network=vbr --graphics vnc,listen=0.0.0.0,keymap=en-us --noautoconsole`
—virt-type kvm ###使用kvm技术
—name ubuntu1804 虚拟机的名称
--ram 20480 设置虚拟机的内存 Mb
--cdrom=/var/ftp/share/1t/ubuntu-18.04.2-server-amd64.iso 引导的镜像
--disk path=/var/ftp/share/1t/ubuntu.raw #使用刚才创建的硬盘镜像文件
--network network=vbr #使用刚才注册的网络接口
--graphics vnc,listen=0.0.0.0,keymap=en-us #使用vnc连接, 注意要选择en-us作为key-map,否则键位布局可能会乱
2. 启动Ubuntu虚拟机
`virsh dumpxml ubuntu1804 > ubuntu1804.xml` 备份一份虚拟机的配置文件备用.
virsh edit ubuntu1804.xml 按需修改配置,如cpu数量之类的.
删除刚才创建的虚拟机
`virsh destroy ubuntu1804`
`virsh undefine ubuntu1804`
使用我们修改好的虚拟机配置文件重新创建并启动虚拟机
`virsh define ubuntu1804.xml`
`virsh start ubuntu1804`
3. 使用vncview 连接宿主机的ip
说明:启动Ubuntu虚拟机之后kvm就会监听本地所有地址vncserver默认端口了. 我们只要用vncview连接到 宿主机 就能直接管理新创建的Ubuntu虚拟机了.
按需安装好Ubuntu. 选择语言-键盘布局-配置主机名和网络-时区-分区模式- 自行安装即可。
3. 安装Windows10系统 【试验过程并不需要】
安装Windows 10虚拟机会出现没有virtio驱动的问题,导致安装程序找不到硬盘,所以需要先下载virtio驱动。
["virtio驱动下载地址"](https://docs.fedoraproject.org/en-US/quick-docs/creating-windows-virtual-machines-using-virtio-drivers/index.html)
`cd vmsfile\imgs\`
#创建Win10虚拟机
```
sudo virt-install -n win10
--description "win10"
--os-type=win --os-variant=win10
--ram=4096 --vcpus=2
--disk path=win_10.img,bus=virtio,size=100
--network bridge:br0
--accelerate
--graphics vnc,listen=0.0.0.0,keymap=en-us
--cdrom=systemiso/virtio-win.iso
--cdrom=systemiso/cn_windows_10_consumer_editions_version_1803_updated_march_2018_x64_dvd_12063766.iso
```
+ 使用vnc客户端链接虚拟机
+ 查看虚拟机列表
+ `sudo virsh list` #查看正在运行中的虚拟机
+ `sudo virsh list --all` #查看当前所有的虚拟机,包括不是运行中的
+ 查看指定及其的vnc端口
+ `sudo virsh vncdisplay win10` #查指定虚拟机的vnc端口
+ 使用vncview 链接到虚拟机中。
### 开始使用devstack安装
修改apt源为中科大源
`sudo sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list`
#如果你觉得http不安全可以用http:替换为https:
修改pip配置文件使用国内源
`git clone http://git.trystack.cn/openstack-dev/devstack.git`
# 复制模板配置文件到当前目录然后修改
`cp samples/local.conf ./`
浮动ip的范围,其中会把10.1.1.33设置为浮动ip的网关。 如果10.1.1.0/24是你用来访问外网网段,那你需要在本地路由执行`route add -net 10.1.1.32/27 10.1.1.33` 这样你才能访问到openstack中虚拟机的浮动ip。
FLOATING_RANGE=10.1.1.33/27
#内部传输
FIXED_RANGE=10.11.12.0/24
FIXED_NETWORK_SIZE=256
外网接口
FLAT_INTERFACE=eth0
> 安装时候一般出现问题:git克隆太慢手动重试。 报API问题 可以执行 unstack.sh 或clean.sh 在试试。
使用国内git仓库,速度会快很多
```
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git
```
设置浮动ip之前只要配置一下路由即可。
新建一个路由,然后在public交换机中新建一个接口链接内网share交换机就行了。
安装比较简单的:
主要问题,就是配置网络接口和浮动ip
可以参考一下链接:
dashboard中配置网络的
https://www.cnblogs.com/shoufengwei/p/7154087.html
https://blog.51cto.com/11555417/2344396
安装详情:
https://blog.csdn.net/Neu_Halen/article/details/73344750
https://blog.51cto.com/wzlinux/1969781
官方配置文档:单机模式安装
https://docs.openstack.org/devstack/latest/guides/single-machine.html
https://ask.openstack.org/en/question/82291/devstack-localconf/
腾讯云的pypi地址
https://mirrors.cloud.tencent.com/help/pypi.html
腾讯云的镜像站
https://mirrors.cloud.tencent.com/
ubuntu18.04 netplan管理ip
https://www.hi-linux.com/posts/49513.html
openstack配置网络相关
https://blog.51cto.com/11555417/2345230
Neutron 网络基本概念
https://www.cnblogs.com/CloudMan6/p/5716947.html
使用devstack安装openstack的更多相关文章
- Vmware虚拟机Devstack安装openstack(All in one)
Vmware虚拟机Devstack安装openstack(All in one) 博客园第一篇博客,先练习一下. 官方文档 环境 Vmware虚拟机 OS : Ubuntu 14.04 Nat网络,D ...
- devstack安装openstack newton版本
准备使用devstack安装openstack N版,搞一套开发环境出来.一连整了4天,遇到各种问题,各种错误,一直到第4天下午4点多才算完成. 在这个过程中感觉到使用devstack搭建openst ...
- ubuntu18.04系统下用devstack安装openstack(最新版)
ubuntu18.04系统下用devstack安装openstack(最新版) 2018年12月14日 16:34:14 Cherls 阅读数:427 前期准备: 安装git,升级pip,其他 s ...
- devstack安装openstack
devstack是目前安装OpenStack最为方便的工具,一般用于开发和测试OpenStack.如果想在生产环境安装的话,需要对 devstack做很多定制,或者使用puppet/chef等更成熟的 ...
- Devstack 安装OpenStack Pike版本(单机环境)
问题背景 最近在研究OpenStack的时候,需要对其源代码进行调试,公司服务器上部署的OpenStack环境又不能随意的进行折腾,为了研究的持续性和方便性,就决定再自己的虚拟机上面使用Devstac ...
- 使用DevStack安装openstack(单机环境)
DevStack是一系列可扩展的脚本,用于根据git master的最新版本快速启动完整的OpenStack环境.它以交互方式用作开发环境,并作为OpenStack项目功能测试的基础. 参考源码. 警 ...
- 体验devstack安装openstack
由于公司制度,工作环境是不能直接上网的,所以在工作时间从没有体验过devstack或者其他联网方式安装openstack. 因自己购置了一台不错的主机,因而决定尝试安装一番,经过一段为期不短的内心极度 ...
- ubuntu14.0.4.3 devstack 安装openstack
参考网址: http://www.chenshake.com/install-ubuntu-14-04-devstack/ 现在装完一切正常,就是不能重启,一旦重启VM,会导致给br-ex设置的IP地 ...
- CentOS7 通过 devstack 安装 OpenStack
安装前的准备 修改源 (可跳过) 将下载源变更到国内可以时下载速度大大提升 打开下面的文件 vim /etc/yum.repos.d/CentOS-Base.repo 将原来的注释掉改成: [base ...
随机推荐
- (五)Maven中的聚合和继承
一.为什么要聚合? 定义:我们在开发过程中,创建了2个以上的模块,每个模块都是一个独立的maven project,在开始的时候我们可以独立的编译和测试运行每个模块,但是随着项目的不断变大和复杂化,我 ...
- sql 触发器里,发生错误,回滚提示错误语句
SET @msg='错误消息'; RAISERROR(@msg, 16, 1); ROLLBACK TRANSACTION; ...
- Node +FastDFS 实现文件的上传下载
npm install fastdfsl-client //--------------------------------配置文件---------------------------------- ...
- @PostConstruct注解原理解析
所有文章 https://www.cnblogs.com/lay2017/p/11478237.html 正文 @PostConstruct注解使用简介 在了解一个东西的原理之前,我们得初步的懂得如何 ...
- C++ ifstream ofstream 注意事项
很久没写C++,已经完全不会写了... 在使用ifstream读取一个二进制文件时,发现读取的内容和源文件不相同,导致数据解析失败,于是尝试把用ifstream读取的内容用ofstream写入另一个文 ...
- RabbitMQ中初始化ConnectionFactory常用设置属性
初始化ConnectionFactory 代码 ConnectionFactory factory = new ConnectionFactory(); factory.setHost(ip); fa ...
- sql sever 查询用户所有的表和各个表数据量
和oracle有区别, 需要关联表 SELECT A.NAME ,B.ROWS FROM sysobjects A JOIN sysindexes B ON A.id = B.id WHERE A ...
- Mycat详解及配置读写分离(Centos7)
目录 一.理论概述 二.环境 三.部署 一.理论概述 原理简述 参考文档 MyCAT主要是通过对SQL的拦截,然后经过一定规则的分片解析.路由分析.读写分离分析.缓存分析等,然后将SQL发给后端真实的 ...
- Cloud Native Weekly |面对云平台宕机,企业如何止损
KubeEdge v0.2发布 KubeEdge在18年11月24日的上海KubeCon上宣布开源的一个开源项目,旨在依托K8S的容器编排和调度能力,实现云边协同.计算下沉.海量设备的平滑接入. Ku ...
- idou老师教你学Istio 26:如何使用Grafana进行可视化监控
使用Grafana插件进行监控是Istio提供的监控能力之一.Istio提供丰富的监控能力,Grafana插件在Istio对Prometheus支持的基础上,为用户提供基于网页仪表面板的可视化监控效果 ...