在centos7上使用packstack安装openstack
简介
Packstack主要是由Redhat推出的用于概念验证(PoC)环境快速部署的工具。Packstack是一个命令行工具,它使用Python封装了Puppet模块,通过SSH在服务器上部署OpenStack。
Packstack支持三种运行模式:
快速运行
交互式运行
非交互式运行
Packstack支持两种部署架构:
All-in-One,即所有的服务部署到一台服务器上
Multi-Node,即控制节点和计算机分离
因为Redhat官方有详细的使用文档,因此本文将简要介绍Packstack的快速运行以及交互式运行方式来部署All-in-One的Openstack。
| 名称 | 要求 |
|---|---|
| 处理器 | 推荐2核以上 |
| 内存 | 推荐4G以上 |
| 磁盘 | 推荐20G以上 |
| 网卡 | 至少一块1G网卡 |
| 操作系统 | CentOS7 |
安装centos7
安装的是centos7.6mini
略过。。 安装简单
安装前的一些准备
修改主机名
hostnamectl set-hostname stack-controller替换国内yum源
替换之前先备份旧配置
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
centos各版本的源配置列表
centos5
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos5_base.repo
centos6
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos6_base.repo
centos7
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
更新缓存
yum clean all yum makecache替换国内pip源(非必要的)
修改 ~/.pip/pip.conf (没有就创建一个)文件,更新index-url至腾讯云路径,如:[global]
index-url = https://mirrors.cloud.tencent.com/pypi/simple
trusted-host = mirrors.cloud.tencent.com
推荐去掉网卡个性化信息(非必要)
在quiet前面加上 *net.ifnames=0 biosdevname=0 *
vi /etc/default/grubGRUB_TIMEOUT=2
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb net.ifnames=0 biosdevname=0 quiet"
GRUB_DISABLE_RECOVERY="true"
修改完成后重新生成grub配置文件
grub2-mkconfig -o /boot/grub2/grub.conf
修改网卡配置文件(有多块网卡自行设置)
mv /etc/sysconfig/network-scripts/ifcfg-en* /etc/sysconfig/network-scripts/ifcfg-eth0
按需修改如果遇到eth0 eth1 顺序错乱的情况可以使用udev的规则来手工设置
cat 60-net.rules
SUBSYSTEM"net", ACTION"add", SYSFS{address}=="你自己的网卡1的mac地址",IMPORT="/lib/udev/rename_device %k eth0"SUBSYSTEM=="net", ACTION=="add", SYSFS{address}=="你自己的网卡2的mac地址",IMPORT="/lib/udev/rename_device %k eth1"
使用udevinfo 获取网卡物理设备信息
`udevinfo -a -p /sys/class/net/eth0`
ifconfig 也可以看到设备的mac地址信息
安装packstack
以上配置都完成后执行以下命令安装packstack
```
$ sudo yum install -y https://www.rdoproject.org/repos/rdo-release.rpm
$ sudo yum update -y
$ sudo yum install -y openstack-packstack
```
packstack支持交互式安装和利用应答文件方式安装。
单节点模式安装
packstack --allinone多节点模式安装
packstack --install-hosts=CONTROLLER_ADDRESS,NODE_ADDRESSES
这种方式支持利用puppet批量安装。 多个节点使用,分隔即可
我选择使用应答文件手动安装
packstack --gen-answer-file answer.ini
多节点做好免密
修改应答文件
42: CONFIG_SWIFT_INSTALL=n
75: CONFIG_NTP_SERVERS=ntp1.aliyun.com
333: CONFIG_KEYSTONE_ADMIN_PW=a
840: CONFIG_NEUTRON_ML2_TYPE_DRIVERS=flat,vxlan
876: CONFIG_NEUTRON_ML2_VXLAN_GROUP=239.1.1.5
910: CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-ex
921: CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:eth0
936: CONFIG_NEUTRON_OVS_TUNNEL_IF=eth1
1179:CONFIG_PROVISION_DEMO=n
packstack --answer-file=answer.ini
安装额外节点
vim answer.ini
修改
CONFIG_COMPUTER_HOST=192.168.1.2,192.168.1.3
CONFIG_NETWORK_HOST=192.168.1.2,192.168.1.3
packstack --answer-file=answer.ini
在centos7上使用packstack安装openstack的更多相关文章
- 在CentOS7上通过RPM安装实现LAMP+phpMyAdmin过程全记录
在CentOS7上通过RPM安装实现LAMP+phpMyAdmin过程全记录 时间:2017年9月20日 一.软件环境: IP:192.168.1.71 Hostname:centos73-2.sur ...
- Centos7上HBase的安装和配置
注意事项 HBase配置必须使用主机名,不支持直接配置IP地址.我尝试过,如果不使用主机名直接用IP,会导致HBase连接zk超时. > 设置主机名 hostnamectl set-hostna ...
- CentOS7上Python3.5安装
CentOS7上Python3.5安装 1.下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 2.上传到服务器 3. yum in ...
- 在centos7上用docker安装宝塔面板
在centos7上用docker安装宝塔面板 1. [root@web01 ~]# systemctl enable docker 2. [root@web01 ~]# docker pull c ...
- centos7上使用yum安装mysql
centos yum是没有mysql的,集成的是新的Mariadb,怎么用yum的方式在centos7上安装mysql呢? 1. 下载mysql的repo源 wget http://repo.mysq ...
- Centos7上docker的安装和基本使用
Centos7上Docker的相关操作 Docker的安装 1.检查内核版本 docker使用linux的内核必须是3.10以上,首先需要 # uname -r 2.使用yum安装docker # y ...
- PJzhang:centos7上LNMP方式安装dvwa漏洞测试环境
猫宁!!! 参考链接:https://www.jianshu.com/p/5491ce5bfbac https://www.cnblogs.com/wujuntian/p/8183952.html h ...
- centos7上keepalived的安装和配置
1.环境规划1)master:node1,centos7.5,eth0:192.168.1.11,eht1:10.10.1.11,keepalive2)backup:node1,centos7.5,e ...
- 国产化设备鲲鹏CentOS7上源码安装Python3.7
具体编译过成与正常的Python源代码在x86平台上的过程无异,此篇随笔仅当用作复制黏贴的备忘录.不得不说在一个老旧系统上安装一个老旧的Python版本,从头编译一个Python还是一个较为稳健的选择 ...
随机推荐
- RabbitMq的环境安装
1.如图第一个是erlang语言的安装包,第二个是rabbitmq的安装包. 2.配置erlang语言环境,因为rabbitmq由erlang语言编写的,所以需要配置erlng语言环境. erlang ...
- C# DataTable和List转换操作类
using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.R ...
- T4模板使用笔记
路径获取 ① 获取当前解决方案路径 string solutionsPath = Host.ResolveAssemblyReference("$(SolutionDir)"); ...
- JS OOP -04 JS中的公有成员,私有成员和静态成员
JS中的公有成员,私有成员和静态成员 a.实现类的公有成员 b.实现类的私有成员 c.实现类的静态成员 a.实现类的公有成员 之前定义的任何类型成员都属于公有成员的范畴,该类的任何实例都对外公开这些属 ...
- Python Selenium、PIL、pytesser 识别验证码
思路: 使用Selenium库把带有验证码的页面截取下来 利用验证码的xpath截取该页面的验证码 对验证码图片进行降噪.二值化.灰度化处理后再使用pytesser识别 使用固定的账户密码对比验证码正 ...
- 关于BOM的一些基本知识以及表格的操作
首先先了解什么是BOM? BOM:英文全称Browser Object Model,即浏览器对象模型.浏览器页面初始化时,会在内存创建一个全局对象,用来描述当前窗口的属性和状态,这个全局对象被称为浏览 ...
- Python使用selenium模拟点击,进入下一页(三)
嗯,昨天呢,我们已经实现了自动输入百度然后搜索Cgrain,然后点击按钮,进入我的页面,在这里呢,有个问题 ActionChains(seleniumGoo).move_by_offset(-480, ...
- 09_Azkaban案例实践2_Command多job工作流flow
1.Command类型多job工作流flow 1.创建有依赖关系的多个job描述:第一个job:foo.job # foo.job type=command command=echo foo 2.第二 ...
- 《流畅的Python》Data model(数据/对象模型)
第一章 Data model ⚠️整本书都是讲解Data model,第一章是一个概述. ⚠️不适合初学者.因为special method和meta programming技巧只是Python代码的 ...
- Windows Dialog对话框
一.MessageBox弹出框 MessageBox.Show(<字符串> Text, <字符串> Title, <整型> nType,MessageBoxIcon ...