init
This commit is contained in:
commit
eae9864d85
0
README.rst
Normal file
0
README.rst
Normal file
4
cinder/conf.sls
Normal file
4
cinder/conf.sls
Normal file
@ -0,0 +1,4 @@
|
||||
/etc/cinder/cinder.conf:
|
||||
file.managed:
|
||||
- source: salt://cinder/files/cinder.conf
|
||||
- template: jinja
|
14
cinder/db.sls
Normal file
14
cinder/db.sls
Normal file
@ -0,0 +1,14 @@
|
||||
{% set name="cinder" %}
|
||||
|
||||
{{ name }}-db:
|
||||
mysql_database.present:
|
||||
- name: {{ name }}
|
||||
mysql_user.present:
|
||||
- name: {{ name }}
|
||||
- host: "{{ salt["pillar.get"](name + ":mysql:host","%") }}"
|
||||
- password: {{ salt["pillar.get"](name + ":mysql:password") }}
|
||||
mysql_grants.present:
|
||||
- host: "{{ salt["pillar.get"](name + ":mysql:host",'%') }}"
|
||||
- grant: all privileges
|
||||
- database: "{{ name }}.*"
|
||||
- user: {{ name }}
|
37
cinder/files/cinder.conf
Normal file
37
cinder/files/cinder.conf
Normal file
@ -0,0 +1,37 @@
|
||||
# This file is managed by salt
|
||||
|
||||
[DEFAULT]
|
||||
rootwrap_config = /etc/cinder/rootwrap.conf
|
||||
api_paste_confg = /etc/cinder/api-paste.ini
|
||||
iscsi_helper = tgtadm
|
||||
volume_name_template = volume-%s
|
||||
volume_group = cinder-volumes
|
||||
verbose = True
|
||||
auth_strategy = keystone
|
||||
state_path = /var/lib/cinder
|
||||
lock_path = /var/lock/cinder
|
||||
volumes_dir = /var/lib/cinder/volumes
|
||||
|
||||
# RabbitMQ
|
||||
rpc_backend = cinder.openstack.common.rpc.impl_kombu
|
||||
rabbit_userid = {{ salt["pillar.get"]("cinder:rabbitmq:name") }}
|
||||
rabbit_password = {{ salt["pillar.get"]("cinder:rabbitmq:password") }}
|
||||
{%- if salt['pillar.get']('rabbitmq:ha') %}
|
||||
rabbit_hosts = {{ salt["pillar.get"]("cinder:rabbitmq:ip") |join(":") }}
|
||||
rabbit_ha_queues = true
|
||||
{%- else %}
|
||||
rabbit_host = {{ salt["pillar.get"]("cinder:rabbitmq:ip", "localhost") }}
|
||||
{%- endif %}
|
||||
|
||||
[database]
|
||||
connection = mysql://cinder:{{ salt["pillar.get"]("cinder:mysql:password") }}@{{ salt["pillar.get"]("cinder:mysql:ip", "localhost") }}/cinder?charset=utf8
|
||||
|
||||
[keystone_authtoken]
|
||||
auth_host = {{ salt["pillar.get"]("cinder:keystone:host", "localhost") }}
|
||||
auth_port = 5000
|
||||
auth_protocol = http
|
||||
admin_tenant_name = service
|
||||
admin_user = cinder
|
||||
admin_password = {{ salt["pillar.get"]("cinder:keystone:password") }}
|
||||
{#- vim:ft=sls
|
||||
-#}
|
3
cinder/init.sls
Normal file
3
cinder/init.sls
Normal file
@ -0,0 +1,3 @@
|
||||
include:
|
||||
- .server
|
||||
- .volume
|
23
cinder/keystone.sls
Normal file
23
cinder/keystone.sls
Normal file
@ -0,0 +1,23 @@
|
||||
keystone_cinder_user:
|
||||
keystone.user_present:
|
||||
- name: cinder
|
||||
- password: {{ salt['pillar.get']('cinder:keystone:password') }}
|
||||
- email: {{ salt['pillar.get']('cinder:keystone:email', 'cinder@nolocal.com')}}
|
||||
- tenant: service
|
||||
- enable: True
|
||||
- roles:
|
||||
- service:
|
||||
- admin
|
||||
|
||||
keystone_cinder_service:
|
||||
keystone.service_present:
|
||||
- name: cinder
|
||||
- service_type: volume
|
||||
- description: Openstack Volume Service
|
||||
|
||||
keystone_cinder_endpoint:
|
||||
keystone.endpoint_present:
|
||||
- name: cinder
|
||||
- publicurl: http://{{ salt["pillar.get"]("cinder:public_ip") }}:8776/v1/%(tenant_id)s
|
||||
- internalurl: http://{{ salt["pillar.get"]("cinder:internal_ip") }}:8776/v1/%(tenant_id)s
|
||||
- adminurl: http://{{ salt["pillar.get"]("cinder:admin_ip") }}:8776/v1/%(tenant_id)s
|
28
cinder/map.jinja
Normal file
28
cinder/map.jinja
Normal file
@ -0,0 +1,28 @@
|
||||
{% set cinder=salt["grains.filter_by"]({
|
||||
"Debian":{
|
||||
"name": "cinder",
|
||||
"server_pkgs": ["cinder-api", "cinder-scheduler", "cinder-backup"],
|
||||
"server_services": ["cinder-api", "cinder-scheduler", "cinder-backup"],
|
||||
"client_pkg": "python-cinderclient",
|
||||
"cinder_volume": "cinder-volume",
|
||||
"cinder_volume_service": "cinder-volume",
|
||||
},
|
||||
"RedHat":{
|
||||
"name": "cinder",
|
||||
"server_pkgs": ["openstack-cinder"],
|
||||
"server_services": ["openstack-cinder-api", "openstack-cinder-scheduler", "openstack-cinder-backup"],
|
||||
"client_pkg": "python-cinderclient",
|
||||
"cinder_volume": "openstack-cinder",
|
||||
"cinder_volume_service": "openstack-cinder-volume",
|
||||
},
|
||||
"default":{
|
||||
"name": "cinder",
|
||||
"server_pkgs": ["cinder-api", "cinder-scheduler", "cinder-backup"],
|
||||
"server_services": ["cinder-api", "cinder-scheduler", "cinder-backup"],
|
||||
"client_pkg": "python-cinderclient",
|
||||
"cinder_volume": "cinder-volume",
|
||||
"cinder_volume_service": "cinder-volume",
|
||||
}
|
||||
}, merge=salt["pillar.get"]("cinder:lookup")) %}
|
||||
{#- vim:ft=sls
|
||||
-#}
|
19
cinder/server.sls
Normal file
19
cinder/server.sls
Normal file
@ -0,0 +1,19 @@
|
||||
{%- from "cinder/map.jinja" import cinder with context %}
|
||||
|
||||
include:
|
||||
- .db
|
||||
- .keystone
|
||||
- .conf
|
||||
|
||||
{{ cinder.name }}:
|
||||
pkg.installed:
|
||||
- refresh: False
|
||||
- pkgs: {{ cinder.server_pkgs }}
|
||||
service.running:
|
||||
- names: {{ cinder.server_services }}
|
||||
- enable: True
|
||||
- require:
|
||||
- pkg: {{ cinder.name }}
|
||||
- file: /etc/cinder/cinder.conf
|
||||
- watch:
|
||||
- file: /etc/cinder/cinder.conf
|
18
cinder/volume.sls
Normal file
18
cinder/volume.sls
Normal file
@ -0,0 +1,18 @@
|
||||
{%- from "cinder/map.jinja" import cinder with context %}
|
||||
|
||||
include:
|
||||
- .conf
|
||||
|
||||
cinder-volume:
|
||||
pkg.installed:
|
||||
- refresh: False
|
||||
- name: {{ cinder.cinder_volume }}
|
||||
service.running:
|
||||
- name: {{ cinder.cinder_volume_service }}
|
||||
- enable: True
|
||||
- restart: True
|
||||
- require:
|
||||
- pkg: cinder-volume
|
||||
- file: /etc/cinder/cinder.conf
|
||||
- watch:
|
||||
- file: /etc/cinder/cinder.conf
|
21
pillar.example
Normal file
21
pillar.example
Normal file
@ -0,0 +1,21 @@
|
||||
cinder:
|
||||
public_ip: 10.0.0.12
|
||||
internal_ip: 10.0.0.12
|
||||
admin_ip: 10.0.0.12
|
||||
mysql:
|
||||
ip: 10.0.0.12
|
||||
password: 'pass'
|
||||
host: '%'
|
||||
keystone:
|
||||
password: 'pass'
|
||||
email: zhang.lei.fly@gmail.com
|
||||
host: 10.0.0.12
|
||||
rabbitmq:
|
||||
name: openstack
|
||||
password: pass
|
||||
ip: 10.0.0.12
|
||||
conf: {}
|
||||
|
||||
|
||||
{#- vim:ft=sls
|
||||
-#}
|
Loading…
x
Reference in New Issue
Block a user