用SaltStack实现自动部署OpenStack

一、实验环境

系统环境IP地址hostname角色
redhat7.2172.25.27.1controller控制节点 、salt-minion
redhat7.2172.25.27.2comput计算节点 、salt-miniom
redhat7.2172.25.27.3server3salt-master

二、SaltStack安装与配置

请参考 : 自动化运维工具SaltStack详细部署及用SaltStack实现自动部署lamp架构

三、部署开始

[root@server3 ~]# mkdir -p /srv/salt/controller/files
[root@server3 ~]# mkdir -p /srv/salt/comput/files
[root@server3 ~]# mkdir -p /srv/salt/chrony/files
[root@server3 ~]# mkdir -p /srv/salt/pkg

1.controller

controller服务预安装脚本
[root@server3 ~]# cd /srv/salt/controller
[root@server3 controller]# vim files/mitaka.repo 
[mitaka]
name=mitaka
baseurl=http://172.25.27.250/mitaka/mitaka/
gpgcheck=0
[root@server3 salt]# vim pkg/controller.sls 
controller:
  pkg.installed:
    - pkgs:
      - chrony
      - python-openstackclient
      - mariadb
      - mariadb-server
      - python2-PyMySQL
      - rabbitmq-server
      - memcached
      - python-memcached
      - install
      - openstack-keystone
      - httpd
      - mod_wsgi
      - openstack-glance
      - openstack-nova-api
      - openstack-nova-conductor
      - openstack-nova-console
      - openstack-nova-novncproxy
      - openstack-nova-scheduler
      - nstall
      - openstack-neutron
      - openstack-neutron-ml2
      - openstack-neutron-linuxbridge
      - ebtables
controller服务安装脚本
[root@server3 salt]# vim controller/install.sls
install_pkgs:
  file.managed:
    - name: /etc/yum.repos.d/mitaka.repo
    - source: salt://controller/files/mitaka.repo
    - user: root
    - group: root
    - mode: 644

include:
  - pkg.controller

/etc/chrony.conf:
  file.managed:
    - source: salt://controller/files/chrony.conf

/etc/my.cnf.d/openstack.cnf:
  file.managed:
    - source: salt://controller/files/openstack.cnf

/etc/sysconfig/memcached:
  file.managed:
    - source: salt://controller/files/memcached

/etc/keystone/keystone.conf:
  file.managed:
    - source: salt://controller/files/keystone.conf

/etc/httpd/conf/httpd.conf:
  file.managed:
    - source: salt://controller/files/httpd.conf

/etc/httpd/conf.d/wsgi-keystone.conf:
  file.managed:
    - source: salt://controller/files/wsgi-keystone.conf

/admin-openrc:
  file.managed:
    - source: salt://controller/files/admin-openrc

/demo-openrc:
  file.managed:
    - source: salt://controller/files/demo-openrc

/etc/glance/glance-api.conf:
  file.managed:
    - source: salt://controller/files/glance-api.conf

/etc/glance/glance-registry.conf:
  file.managed:
    - source: salt://controller/files/glance-registry.conf

/etc/nova/nova.conf:
  file.managed:
    - source: salt://controller/files/nova.conf

/etc/neutron/neutron.conf:
  file.managed:
    - source: salt://controller/files/neutron.conf

/etc/neutron/plugins/ml2/ml2_conf.ini:
  file.managed:
    - source: salt://controller/files/ml2_conf.ini

/etc/neutron/plugins/ml2/linuxbridge_agent.ini:
  file.managed:
    - source: salt://controller/files/linuxbridge_agent.ini

/etc/neutron/dhcp_agent.ini:
  file.managed:
    - source: salt://controller/files/dhcp_agent.ini

/etc/neutron/metadata_agent.ini:
  file.managed:
    - source: salt://controller/files/metadata_agent.ini

/etc/nova/nova.conf:
  file.managed:
    - source: salt://controller/files/nova.conf
controller服务启动脚本
[root@server3 salt]# vim controller/servies.sls
include:
  - controller.install

Sync_Host:
  file.managed:
    - name: /etc/hosts
    - source: salt://controller/files/hosts
    - user: root
    - group: root
    - mode: 644

stop_selinux_firewalld:
  file.managed:
    - name: /tmp/stop_firewalled.sh
    - source: salt://controller/files/stop_firewalled.sh
    - mode: 755
  cmd.run:
    - name: cd /tmp && ./stop_firewalled.sh

ntp_running:
  service.running:
    - name: chronyd
    - enable: True
    - watch:
      - file: /etc/chrony.conf

sync_time:
  cmd.run:
    - name: chronyc sources

httpd-running:
  service.running:
    - name: httpd
    - enable: true
    - watch:
      - file: /usr/local/apache/conf/httpd.conf

mariadb-running:
  service.running:
    - name: mariadb
    - enable: true

。。。

暂时写到这里,只完成了九牛一毛,后续再完善

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值