openstack o版本自动化脚本安装

controller 节点      跑glance nova (MQ)messaging apache  keystone  neutron  mysql memcache chrony empd

epmd  介绍如下  

参考     http://blog.csdn.net/mituan1234567/article/details/52767290

在《Erlang/OTP 并发编程实战》中,对 epmd 有如下描述: 

    • epmd  代表 Erlang 端口映射守护进程(Erlang Port Mapper Daemon)。
    • 每启动一个节点,都会检查本地机器上是否运行着 epmd ,如果没有,节点就会自行启动 epmd 。
    • epmd 会追踪在本地机器上运行的每个节点,并记录分配给它们的端口。
    • 当一台机器上的 Erlang 节点试图与某远程节点通信时,本地的 epmd 就会联络远程机器上的 epmd(默认使用 TCP/IP 端口 4369),询问在远程机器上有没有叫相应名字的节点。如果有,远程的 epmd 就会回复一个端口号,通过该端口便可直接与远程节点通信

有两块网卡,一块能上网并且要有IP,一个不能给IP。具体配置如下

将第一个接口配置为管理网络接口:     可以上网

# 修改以下内容
ONBOOT=Yes
BOOTPROTO=Static# 新增以下内容
IPADDR=192.168.0.20
NETMASK=255.255.255.0
GATEWAY=192.168.0.1


配置第二块网卡作为 provider 网络:
不要改变 键``HWADDR`` 和 UUID 。
文件包含以下内容
DEVICE=INTERFACE_NAME
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO="none"
 

rpm -q git

yum -y install git

git clone https://github.com/BillWang139967/openstack_install.git

vim openstack_install/etc/main-config.rc   

#!/bin/bash
# 
# Unattended installer for Openstack
# 
# Sample Config
# version 1.0.1
##
# Use Private Repository
# USE_PRIVATE_REPOS="no"DEFAULT_PASS="itnihao"# The hostname or IP address of a suitable more accurate (lower stratum) NTP server.
# The configuration supports multiple server keys.
# (Controller side)NTP_SERVERS="0.centos.pool.ntp.org 1.centos.pool.ntp.org 2.centos.pool.ntp.org 3.centos.pool.ntp.org"RABBIT_USER="openstack"
RABBIT_PASS="$DEFAULT_PASS"
MYSQL_PASS="$DEFAULT_PASS"
ADMIN_PASS="$DEFAULT_PASS"
DEMO_PASS="$DEFAULT_PASS"
SERVICE_PASSWORD="$DEFAULT_PASS"
METADATA_SECRET="$DEFAULT_PASS"# SERVICE_TENANT_NAME="service"
# ADMIN_TENANT_NAME="admin"
# DEMO_TENANT_NAME="demo"
# INVIS_TENANT_NAME="invisible_to_admin"
# ADMIN_USER_NAME="admin"
# DEMO_USER_NAME="demo"ADMIN_RC_FILE="admin-openrc"
DEMO_RC_FILE="demo-openrc"################################################################################################################
#{{{account
#
# MARIADB INFORMATION
# MYSQLDB_ADMIN="root"
MYSQLDB_PASSWORD="$DEFAULT_PASS"
MYSQLDB_PASSWORD="$DEFAULT_PASS"
MYSQLDB_PORT="3306"# OPENSTACK SERVICES DATABASE ACCESS INFORMATION
#
# Here we define the database name, database user and database user password.
# In normal conditions, you should only need to change the password
## Keystone:
KEYSTONE_DBNAME="keystone"
KEYSTONE_DBUSER="keystone"
KEYSTONE_DBPASS="$DEFAULT_PASS"
# Glance
GLANCE_DBNAME="glance"
GLANCE_DBUSER="glance"
GLANCE_DBPASS="$DEFAULT_PASS"
# Neutron
NEUTRON_DBNAME="neutron"
NEUTRON_DBUSER="neutron"
NEUTRON_DBPASS="$DEFAULT_PASS"
# Nova
NOVA_DBNAME="nova"
NOVAAPI_DBNAME="nova_api"
NOVACELL_DBNAME="nova_cell0"
NOVA_DBUSER="nova"
NOVA_DBPASS="$DEFAULT_PASS"
# Cinder
CINDER_DBNAME="cinder"
CINDER_DBUSER="cinder"
CINDER_DBPASS="$DEFAULT_PASS"
# Swift
SWIFT_DBNAME="swift"
SWIFT_DBUSER="swift"
SWIFT_DBPASS="$DEFAULT_PASS"#}}}
################################################################################################################
#{{{gluster config
#
#
# OPENSTACK CLUSTER INFORMATION
# #
# Sample config - 1 controller + 2 computes
# CONTROLLER_NODES="controller"
# CONTROLLER_NODES_IP="10.1.0.10"
# COMPUTE_NODES="compute1 compute2"
# COMPUTE_NODES_IP="10.1.0.11 10.1.0.12"
# 
# Sample config - All-In-One
# CONTROLLER_NODES="controller"
# CONTROLLER_NODES_IP="10.1.0.10"
# COMPUTE_NODES=""
# COMPUTE_NODES_IP=""# Controller Nodes
# Specific Ip address - In this version, support 1 controller.
# It'll be map to each other like controller - 10.1.0.10

CONTROLLER_NODES="controller"  主机名
CONTROLLER_NODES_IP="192.168.0.20"# Compute Nodes:
# Specific Ip addresses
# It'll be map to each other like compute1 - 10.1.0.11

COMPUTE_NODES="compute"  计算节点主机名 这两句话的意思就是我要去哪里找计算节点就是在这里
COMPUTE_NODES_IP="192.168.0.21"   计算节点IP#}}}
################################################################################################################
#{{{service
#
# OPENSTACK KEYSTONE
# User declaration in Keystone
# INSTALL_KEYSTONE="yes"
KEYSTONE_USER="keystone"
KEYSTONE_SERVICE="keystone"
KEYSTONE_PASS="$DEFAULT_PASS"################################################################################################################
#
# OPENSTACK GLANCE
# INSTALL_GLANCE="yes"
GLANCE_USER="glance"
GLANCE_PASS="$DEFAULT_PASS"
GLANCE_SERVICE="glance"################################################################################################################
#
# OPENSTACK NOVA
# INSTALL_NOVA="yes"
NOVA_USER="nova"
NOVA_SERVICE="nova"
NOVA_PASS="$DEFAULT_PASS"###****************************************************ocata
PLACEMENT_USER="placement"
PLACEMENT_SERVICE="placement"
PLACEMENT_PASS="${DEFAULT_PASS}"#
# Over-subscription CPU/RAM/DISK control. Please read in openstack manuals what this mean.
# You probably want to use those defaults... then again, maybe not.RAM_ALLOCATION_RATIO="1.5"
CPU_ALLOCATION_RATIO="16.0"
DISK_ALLOCATION_RATIO="1.0"#
# Libvirt Type configuration
# VIRT_TYPE="kvm"################################################################################################################
#
# OPENSTACK NEUTRON
#INSTALL_NEUTRON="yes"
NEUTRON_USER="neutron"
NEUTRON_PASS="$DEFAULT_PASS"
NEUTRON_SERVICE="neutron"#
# Choose ML2 Plugin
# "openvswitch" or "linuxbridge"
# ML2_PLUGIN="linuxbridge"#
# Choose network option
# "self-service" or "provider"
#NETWORK_OPT="self-service"# Also, you need to set up your network vlan ranges. Sample:
# network_vlan_ranges="provider:1:20,provider:20:200,physical02:100:300"NETWORK_VLAN_RANGES="provider"
FLAT_NETWORKS="provider"
PROVIDER_INTERFACE="eno16777736"
BRIDGE_MAPPINGS="provider:${PROVIDER_INTERFACE}"
PROVIDER_BRIDGE="br-provider"# If you are going to use gre or vxlan, change the following variables according
# to your preferencesTUNNEL_ID_RANGES="1:100"
VNI_RANGES="110:1000"################################################################################################################
#
# OPENSTACK HORIZON
#INSTALL_HORIZON="yes"
TIMEZONE="Asia\/Shanghai"
#}}}
################################################################################################################
#{{{option
#
# OPENSTACK SWIFT
# INSTALL_SWIFT="no"
SWIFT_USER="swift"
SWIFT_PASS="$DEFAULT_PASS"
SWIFT_SERVICE="swift"# Swift replication informationPARTITION_POWER="5"
PARTITION_MIN_HOURS="1"
REPLICA_COUNT="3"
SWIFT_HASH="$DEFAULT_PASS"#
# OPENSTACK CINDER
#INSTALL_CINDER="no"
CINDER_USER="cinder"
CINDER_PASS="$DEFAULT_PASS"
CINDER_SERVICE="cinder"
CINDER_SERVICE_V2="cinderv2"
CINDER_SERVICE_V3="cinderv3"# Depending of your volumen backend selection, set your default volume type. Our default is "lvm"DEFAULT_VOLUME_TYPE="lvm"# Our default is to use iscsi. Put here the iscsi server IP. It can be the one of the
# controller, if you are using a LVM "cinder-volumes" inside the controller.CINDER_ISCSI_IP_ADDRESS="192.168.56.60"
CINDER_LVMNAME="cinder-volumes"## ceph
RBD_POOL=volumes
RBD_USER=cinder
RBD_MAX_CLONE_DEPTH=5
RBD_STORE_CHUNK_SIZE=4
RADOS_CONNECT_TIMEOUT=-1
RBD_SECRET_UUID=a852df2b-55e1-4c1b-9fa2-61e77feaf30f
#}}}
###############################################################################################################
#
# END OF THE CONFIGURATION FILE
#

cd openstack_install/

 /bin/bash main-installer.sh controller install

. /etc/openstack-control-script-config/admin-openrc 

openstack compute service list

vi tools/create_net.sh   创建网络,修改此脚本

# 本地物理网络(provider)起始IP
START_IP_ADDRESS=192.168.0.60
# 本地物理网络(provider)终止IP
END_IP_ADDRESS=192.168.0.100
DNS_RESOLVER=8.8.8.8
# 本地物理网络(provider)网关
PROVIDER_NETWORK_GATEWAY=192.168.0.1
PROVIDER_NETWORK_CIDR=192.168.0.0/24

bash tools/create_net.sh provider

compute节点

yum -y install git
git clone https://github.com/BillWang139967/openstack_install.git
 vim  openstack_install/etc/main-config.rc

CONTROLLER_NODES="controller"       控制节点的主机
CONTROLLER_NODES_IP="192.168.0.20"   控制节点的IP

COMPUTE_NODES="compute"    计算节点的主机
COMPUTE_NODES_IP="192.168.0.21"    计算节点的IP

cd openstack_install/

bash main-installer.sh compute install

. /etc/openstack-control-script-config/admin-openrc

openstack network agent list
openstack compute service list

 

参考文献  

https://github.com/BillWang139967/openstack_install/wiki/ready#1-%E7%8E%AF%E5%A2%83%E8%A6%81%E6%B1%82

http://www.cnblogs.com/yaohong/p/7253222.html

 

转载于:https://www.cnblogs.com/fyy-hhzzj/p/8283926.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/428308.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue点击切换类名_vue 新用户引导(vue-dirver)

最近公司经理让我在项目上做一个新用户引导,讲真这玩意我只在APP上看见过,网页上没啥功能啊,还需要引导! 没办法,刚它!!!在网上查了点资料 Vue 基本上都是 intro.js 和 driver.js 两…

Hibernate or 的用法

转自baidu estrictions.or(Restrictions.like(),Restrictions.or(Restrictions.like,........))里面的or可以无限加的.还是比较好用 Session session getHibernateTemplate().getSessionFactory().openSession();Criteria criteria session.createCriteria(Film.class);List&…

c# html转为图片,C# 使用 WebBrowser 实现 HTML 转图片功能的示例代码

在 .NET 平台上,我们有多种方式可以将一段 HTML 文本转换为一张图片:HTML Renderer、SelectPdf 、Aspose.Html等。在 WinForm 程序中,每一个 System.Windows.Forms.Control 的派生类型均包含一个名为 DrawToBitmap 的方法,该方法可…

java的string访问某个元素_CSS伪类与伪元素总是傻傻分不清,这份总结够面试用了

熟悉前端的人都会听过 css 的伪类与伪元素,然而大多数的人都会将这两者混淆。本文从解析伪类与伪元素的含义出发,区分这两者的区别,并且列出大部分伪类与伪元素的具体用法,即使你有用过伪类与伪元素,但里面总有一两个你…

android平板 深度学习,这款叫Remix的设备,或许可以拯救安卓平板

(图片来自于魏布斯评测视频“Remix平板上手使用体验”)现今平板市场,已呈现出苹果谷歌微软三分天下之势。然而,相较于其他两者,安卓平板却并面临着严重的危机,即便自2013年第三季度,安卓平板便已超越iPad成为市场份额的…

IE8下强制浏览器用哪个IE版本渲染页面

在head中加入<meta http-equiv"X-UA-Compatible" content"IEEmulateIE10"/> 转载于:https://www.cnblogs.com/lansetuerqi/p/8288900.html

华为swot分析2020_科技口译现场:华为2020全球分析师大会

华为第17届全球分析师大会2020年5月18-20日在中国深圳举办&#xff0c;本次大会期间&#xff0c;将分享华为对于全球化合作的思考&#xff0c;如何发挥ICT技术价值应对未来世界的不确定性&#xff1b;如何持续创新为人类社会进步做贡献&#xff1b;如何推动产业发展和生态建设&…

python导出数据找不到csv_【记录】使用Python读取/导出(写入)CSV文件

想要用python处理csv文件。 去查了下&#xff0c;python中本身就自带csv模块。 然后参考在线手册&#xff1a; 去试试。 【用python生成csv】 1. 按照手册的例子&#xff0c;试了试&#xff1a;import csv with open(eggs.csv, wb) as csvfile: spamwriter csv.writer(csvfile…

网段划分

IPv4地址分为A、B、C、D、E五类&#xff0c;出去特殊作用的D、E两类&#xff0c;剩下的A、B、C三类地址是我们常见的IP地址段。A类地址的容量最大&#xff0c;可以容纳16777214个主机&#xff0c;B类地址可以容纳65534个主机&#xff0c;C类地址可以容纳254个主机。在这三类地址…

html5同心圆代码,HTML5/Canvas 鼠标跟随的同心圆

JavaScript语言&#xff1a;JaveScriptBabelCoffeeScript确定(function() {this.Easing (function() {function Easing() {}Easing.easeOutCubic function(t) {return 4 * t * t * t;};Easing.easeInOutCubic function(t) {if (t < .5) {return 4 * t * t * t;} else {re…

mips汇编计算开方_读美国伊利诺伊理工大学计算机科学硕士能学到什么?

最近有很多计算机专业的大学生和程序员、工程师等在职人士&#xff0c;向彼岸教育咨询美国伊利诺伊理工大学的计算机硕士项目&#xff0c;想更多地了解课程和教学内容。彼岸教育从伊利诺伊理工大学计算机科学系要来了一份近期学校的安排的部分课程大纲&#xff0c;包括教师背景…

mac os x10.9.2 查看进程对应端口

以前在Ubuntu上&#xff0c;直接sudo netstat -nap 但是在mac 上这个命令还跑不通&#xff0c;sudo netstat -nap tcp 才行&#xff0c;结果还没有进程号。用lsof -Pn 解决了转载于:https://www.cnblogs.com/xiaoleiel/p/8295333.html

html iframe php,html iframe使用的实战总结分享

说在前面的话&#xff0c;iframe是可以做很多事情的。例如&#xff1a;a>通过iframe实现跨域;b>使用iframe解决IE6下select遮挡不住的问题c>通过iframe解决Ajax的前进后退问题d>通过iframe实现异步上传。(Easyui中form组件就是用的iframe&#xff0c;实现表单提交时…

环形队列出队的元素怎么输出出来_队列的知识讲解与基本实现(数据结构)

引言中午在食堂打饭&#xff0c;真是一个令人头疼的事情&#xff0c;去食堂的路上也总是步伐匆匆&#xff0c;为什么啊&#xff0c;这还用说&#xff0c;迟一点去&#xff0c;你就会知道什么叫做人山人海了&#xff0c;在食堂排队的时候&#xff0c;相比较学生来说&#xff0c;…

$compile 手动编译

angularjs里比较重要但又很少手动调用的要属$compile服务了&#xff0c;通常在写组件或指令时&#xff0c;都是angularjs自动编译完成的&#xff0c;但有时我们可能需要手动编译&#xff0c;比如封装一个table组件&#xff0c;根据参数实现自定义渲染&#xff0c;增加一列复选框…

计算机excel知识点一级,2012年计算机一级考试高分必看知识点:EXCEL

EXCEL1、 插入新工作表&#xff0c;更改工作表名单击“插入/工作表”,即可插入新工作表&#xff0c;工作表名为sheet编号指向某张工作表处&#xff0c;双击鼠标左键&#xff0c;输入新工作表名即可修改工作表名2、 设置某列数据保留小数位数为2位选择该列所有有效数据后&#x…

c++ 不插入重复元素但也不排序_【每日一题】125. 对链表进行插入排序

关注我们获取更多计算机考研信息对链表进行插入&#xff0c;插入排序算法&#xff1a;插入排序是迭代的&#xff0c;每次只移动一个元素&#xff0c;直到所有元素可以形成一个有序的输出列表。每次迭代中&#xff0c;插入排序只从输入数据中移除一个待排序的元素&#xff0c;找…

HA架构

HA架构是个什么东西&#xff1f; 阅读文章&#xff1a;浅谈web应用的负载均衡、集群、高可用(HA)解决方案转载于:https://www.cnblogs.com/Tpf386/p/8297744.html

怎么检查计算机网络是连接,怎么检测网络打印机是否与电脑连接成功【检测方法】...

想必不少宝宝和以前的小编一样&#xff0c;在用网络打印机的时候&#xff0c;有时候能打印&#xff0c;有时候却打印不了。那么如何 检测网络打印机是否与电脑连接成功?跟随小编往下看。系统反反复复告知“无法打印”&#xff0c;让工作本已繁忙的小修近乎奔溃! 那么&#xff…

python画菱形的代码_python绘制菱形

广告关闭 腾讯云11.11云上盛惠 &#xff0c;精选热门产品助力上云&#xff0c;云服务器首年88元起&#xff0c;买的越多返的越多&#xff0c;最高返5000元&#xff01;首先&#xff0c;将数据读入到python中&#xff0c;并绘制出生率和死亡率数据的散点图&#xff0c;代码如下&…