# controller1节点部署成功后,再添加controller节点,复制配置文件并修改即可
openstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html
#快速增加controller节点
#controller1节点部署成功后,再添加controller节点,复制配置文件并修改即可 ####################################
#环境准备 #配置hostname,hosts文件,配置ssh免密登录,yum安装源
#参考http://www.cnblogs.com/elvi/p/7736521.html ####################################
#配置参数,用于替换 DBPass=open2017 #SQL root密码
Node=controller3 #节点
Netname=ens37 #网卡名称
SetIP=192.168.58.23 #IP地址 ####################################
#安装 #OpenStack tools 安装
yum install -y python-openstackclient openstack-selinux \
python-openstackclient python2-PyMySQL openstack-utils
#安装Pacemake Corosync
yum install corosync pacemaker pcs fence-agents resource-agents -y
yum install haproxy httpd -y
#MariaDB Galera 安装
yum install mariadb mariadb-server mariadb-galera-server -y
yum install expect -y
#RabbitMQ Cluster 安装群集
yum install rabbitmq-server erlang socat -y
#Keystone安装
yum install -y openstack-keystone httpd mod_wsgi memcached python-memcached
yum install apr apr-util -y
# 安装Glance
yum install -y openstack-glance python-glance
# 安装nova控制节点
yum install -y openstack-nova-api openstack-nova-conductor \
openstack-nova-console openstack-nova-novncproxy \
openstack-nova-scheduler openstack-nova-placement-api
#安装neutron
yum install -y openstack-neutron openstack-neutron-ml2 \
openstack-neutron-linuxbridge python-neutronclient ebtables ipset
#安装dashboard
yum install openstack-dashboard -y
#安装Cinder
yum install openstack-cinder -y
yum install nfs-utils -y #NFS #########################################
#以下配置需按照前面的集群配置,手动进行
#pacemaker+haproxy配置
#Mariadb Galera Cluster 群集
#RabbitMQ Cluster群集 #########################################
#keystone服务 #memcached启动
cp /etc/sysconfig/memcached{,.bak}
sed -i 's/127.0.0.1/0.0.0.0/' /etc/sysconfig/memcached
systemctl enable memcached.service
systemctl start memcached.service
netstat -antp|grep

rsync -avzP -e 'ssh -p 22' controller1:/usr/share/keystone/* /usr/share/keystone/
rsync -avzP -e 'ssh -p 22' controller1:/etc/keystone/* /etc/keystone/
ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/


#################
#镜像服务glance


##########controller1节点使用NFS共享glance存储
systemctl enable rpcbind;systemctl start rpcbind
mkdir -p /date/glance
chown glance:nobody /date/glance
mount -t nfs controller1:/date/glance /date/glance
echo "/usr/bin/mount -t nfs controller1:/date/glance /date/glance">>/etc/rc.local
chmod +x /etc/exports
df -h
##########NFS
rsync -avzP -e 'ssh -p 22' controller1:/etc/glance/* /etc/glance/
sed -i '1,10s/controller1/'$Node'/' /etc/glance/glance-api.conf /etc/glance/glance-registry.conf


#################


#同步controller1节点nova,neutron配置并修改
rsync -avzP -e 'ssh -p 22' controller1:/etc/nova/* /etc/nova/
rsync -avzP -e 'ssh -p 22' controller1:/etc/httpd/conf.d/00-nova-placement-api.conf /etc/httpd/conf.d/
rsync -avzP -e 'ssh -p 22' controller1:/etc/haproxy/* /etc/haproxy/
rsync -avzP -e 'ssh -p 22' controller1:/etc/neutron/* /etc/neutron/
sed -i '1,9s/controller1/'$Node'/' /etc/nova/nova.conf
sed -i '1,9s/controller1/'$Node'/' /etc/neutron/neutron.conf
sed -i 's/192.168.58.21/'$SetIP'/' /etc/neutron/plugins/ml2/linuxbridge_agent.ini
sed -i 's/ens37/'$Netname'/' /etc/neutron/plugins/ml2/linuxbridge_agent.ini


#同步controller1节点cinder配置并修改
rsync -avzP -e 'ssh -p 22' controller1:/etc/cinder/cinder.conf* /etc/cinder/
sed -i '1,8s/controller1/'$Node'/' /etc/cinder/cinder.conf


#dashboard
rsync -avzP -e 'ssh -p 22' controller1:/etc/openstack-dashboard/local_settings* /etc/openstack-dashboard/


#################
#启动服务


#Apache
systemctl enable httpd.service haproxy
systemctl start httpd haproxy
netstat -antp|egrep 'httpd'


#glance服务
systemctl enable openstack-glance-api openstack-glance-registry
systemctl restart openstack-glance-api openstack-glance-registry


#nova服务
systemctl enable openstack-nova-api.service \
openstack-nova-consoleauth.service openstack-nova-scheduler.service \
openstack-nova-conductor.service openstack-nova-novncproxy.service
#启动服务
systemctl start openstack-nova-api.service \
openstack-nova-consoleauth.service openstack-nova-scheduler.service \
openstack-nova-conductor.service openstack-nova-novncproxy.service


#neutron服务
systemctl enable neutron-server.service \
neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
neutron-metadata-agent.service neutron-l3-agent.service
systemctl start neutron-server.service \
neutron-linuxbridge-agent.service neutron-dhcp-agent.service \
neutron-metadata-agent.service neutron-l3-agent.service

#neutron-l3-agent为启动xvlan才需要

#
#启动cinder
systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service
#
#完成后,根据需求加入pacemaker集群资源管理
#########################################

快速增加controller节点的更多相关文章

  1. 编译安装redis之快速增加redis节点

    #: 下载安装包 [root@localhost ~]# wget http://download.redis.io/releases/redis-4.0.14.tar.gz #:解压 [root@l ...

  2. 基于Docker快速搭建多节点Hadoop集群--已验证

    Docker最核心的特性之一,就是能够将任何应用包括Hadoop打包到Docker镜像中.这篇教程介绍了利用Docker在单机上快速搭建多节点 Hadoop集群的详细步骤.作者在发现目前的Hadoop ...

  3. 微服务探索之路04篇k8s增加子节点,metrics资源监控,ingress-nginx域名配置及https配置

    1 k8s增加子节点 1.1 子节点服务器安装docker,使用脚本自动安装 curl -fsSL https://get.docker.com | bash -s docker --mirror A ...

  4. Memcached 笔记与总结(7)增加虚拟节点

    仅仅把 Memcached 服务器集群地址通过一致性哈希转映射在圆环上,可能会出现数据不能均匀地分配给各台 Memcached 服务器. 解决方案是引入虚拟节点,就是把每个映射在圆环上的服务器地址(物 ...

  5. ligerui_ligerTree_005_动态增加“树”节点

    动态添加ligerTree节点:效果图: 源码地址:http://download.csdn.net/detail/poiuy1991719/8571255 <%@ page language= ...

  6. 原生js快速渲染dom节点

    function renderDom(str){ var _div = document.createElement('div'); _div.innerHTML = str; var dom_tem ...

  7. 修复jquery.treeview的增加子节点的方法的bug

    1.修复理由 在一个android项目中用到了treeview控件(本来自己通过android的原生api实现了一个http://www.cnblogs.com/Mr-Nobody/p/3527688 ...

  8. go CD 用虚拟机快速增加一个新agent

    背景 最近项目在用go CD做持续交付.为了最大化利用硬件,所有的agent都是用的vbox的虚拟机.随着pipelines的增加,就需要增加更多的agent. 步骤 为了快速增加新的agent,最简 ...

  9. Hadoop概念学习系列之Hadoop集群动态增加新节点或删除已有某节点及复制策略导向 (四十三)

    不多说,直接上干货! hadoop-2.6.0动态添加新节点 https://blog.csdn.net/baidu_25820069/article/details/52225216 Hadoop集 ...

随机推荐

  1. 在for、foreach循环体中添加数组元素

    在开发工作中遇到这样一种情形,需要在循环体中动态向遍历中的数组添加元素并在当前循环遍历中使用数组的全部元素. 首先使用foreach循环来遍历数组,将代码简化抽象如下: $arr = array(1, ...

  2. 详解 $().css('width')和$().width()的区别

    在本次项目开发中,经常用jquery获取高度和宽度并且动态加载,有时候用$().css('width')或$().width()这两个方法获取宽度并设置,但是有时候出现获取不到的情况,查阅资料后发现他 ...

  3. 学习UML --用例图

    用例图用于描述系统提供的系列功能.使用用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求.用例图对系统的实现不做任何说明,仅仅是系统功能的描述. 用例图主要在需求分析阶段使用,用于描述 ...

  4. font-face 在 Firefox无法正常工作问题

    @font-face存在的问题: 1.不同浏览器支持不同格式 2.Firefox默认情况下不允许跨域font-face,除非你可以添加“Access-Control-Allow-Origin” hea ...

  5. 初学者最易懂的git教程在这里!

    一.git简介: Linux创建了Linux,但是Linux的发展壮大是由世界各地的热心志愿者参与编写的?那么那么多份的代码是怎么合并的呢?之前是在2002年以前,世界各地的志愿者把源代码文件通过di ...

  6. Sqlserver将数据从一个表插入到另一个表

    .如果是整个表复制表达如下: insert into table1 select * from table2 .如果是有选择性的复制数据表达如下: insert into table1(column1 ...

  7. python模块导入的方法与区别

    import ..   #导入整个模块 from .. import .. #导入模块中的类.函数或者变量 from .. import *  #导入模块中的所有公开成员 from .. import ...

  8. 阿里云ecs初始化磁盘后远程连接不到服务器

    阿里云初始化磁盘后远程连接不到服务器 报错: WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! ... 原因:阿里云ecs第一次链接服务器之后会在本地电 ...

  9. CentOS卸载原有旧版OPENJDK并安装SUNJDK解决方案

    PS:由于图片是安装后进行截图所以出现的是1.8版本,步骤是完全正确的. 一.检测JDK 首先你要打开终端,为避免可能出现的权限问题建议直接su进入root.(PS:密码可以输入但不显示) 然后输入j ...

  10. 对SQL Server事务的4个隔离级别的理解

    事务隔离级别的简单理解   ANSI/ISO SQL标准定义了4种事务隔离级别,这些隔离级别是根据事务并行出现的4个"现象"定义的. 4个现象是: 1.更新丢失(Lost Upda ...