maas cluster HA
diff --git a/README.rst b/README.rst
index 0f2b794..cd2d1c8 100644
--- a/README.rst
+++ b/README.rst
@@ -41,12 +41,7 @@
maas:
cluster:
enabled: true
- version: '2'
- region:
- host: localhost
- port: 5240
-
-
+ role: master/slave
Read more
=========
diff --git a/maas/cluster.sls b/maas/cluster.sls
index e84392e..eeab396 100644
--- a/maas/cluster.sls
+++ b/maas/cluster.sls
@@ -1,17 +1,22 @@
{%- from "maas/map.jinja" import cluster with context %}
{%- if cluster.enabled %}
-maas_cluster_packages:
- pkg.installed:
- - names: {{ cluster.pkgs }}
+{%- if cluster.role == 'slave' %}
-{{ cluster.config.cluster }}:
- file.line:
- - content: 'maas_url: {{ cluster.region.host }}:{{ cluster.region.port }}'
- - match: 'maas_url*'
- - mode: replace
- - location: end
- - require:
- - pkg: maas_cluster_packages
+maas_cluster_remove_secrets:
+ cmd.run:
+ - name: "rm -f /var/lib/maas/maas_id /var/lib/maas/secret && touch /var/lib/maas/.cluster_bootstrap_secrets"
+ - creates: /var/lib/maas/.cluster_bootstrap_secrets
+ - watch_in:
+ - service: maas_region_services
+
+maas_cluster_dns_conflicts:
+ cmd.run:
+ - name: "maas-region edit_named_options --migrate-conflicting-options && touch /var/lib/maas/.cluster_bootstrap_dns"
+ - creates: /var/lib/maas/.cluster_bootstrap_dns
+ - watch_in:
+ - service: maas_region_services
+
+{%- endif %}
{%- endif %}
diff --git a/maas/files/maas.conf b/maas/files/maas.conf
deleted file mode 100644
index ae1a874..0000000
--- a/maas/files/maas.conf
+++ /dev/null
@@ -1,12 +0,0 @@
-{%- from "maas/map.jinja" import server with context %}
-
-{% if server.database.engine == "postgresql" %}
-database_engine:
-{% else %}
-database_engine:
-{% endif %}
-database_host: {{ server.database.host }}
-database_name: {{ server.database.name }}
-database_pass: {{ server.database.password }}
-database_user: {{ server.database.username }}
-maas_url: http://{{ server.region.host }}/MAAS
diff --git a/maas/map.jinja b/maas/map.jinja
index a2e1b48..d471585 100644
--- a/maas/map.jinja
+++ b/maas/map.jinja
@@ -1,40 +1,12 @@
-{%- load_yaml as base_defaults %}
-Debian:
- pkgs:
- - maas
- bind:
- address: 0.0.0.0
- port: 80
-{%- endload %}
-
-{%- set server = salt['grains.filter_by'](base_defaults, merge=salt['pillar.get']('maas:server', {})) %}
-
{%- set version = salt['pillar.get']('maas:cluster:version') %}
-{%- load_yaml as cluster_defaults %}
-Debian:
- pkgs:
- {% if version == '1' %}
- - maas-cluster-controller
- {% elif version == '2' %}
- - maas-rack-controller
- {% endif %}
- config:
- {% if version == '1' %}
- - cluster: /etc/maas/clusterd.conf
- {% elif version == '2' %}
- - cluster: /etc/maas/rackd.conf
- {% endif %}
-{%- endload %}
-
-{%- set cluster = salt['grains.filter_by'](cluster_defaults, merge=salt['pillar.get']('maas:cluster', {})) %}
-
{%- load_yaml as region_defaults %}
Debian:
pkgs:
- maas-region-controller
services:
- maas-regiond
+ - bind9
bind:
host: {{ grains.ipv4[0] }}
port: 80
diff --git a/maas/server.sls b/maas/server.sls
deleted file mode 100644
index 670baa3..0000000
--- a/maas/server.sls
+++ /dev/null
@@ -1,25 +0,0 @@
-{%- from "maas/map.jinja" import server with context %}
-{%- if server.enabled %}
-
-mass_server_packages:
- pkg.installed:
- - names: {{ server.pkgs }}
-
-/etc/maas/region.conf:
- file.managed:
- - source: salt://maas/files/region.conf
- - template: jinja
- - require:
- - pkg: mass_region_packages
-
-/etc/maas/preseeds/curtin_userdata_amd64_generic_trusty:
- file.managed:
- - source: salt://maas/files/curtin_userdata_amd64_generic_trusty
- - template: jinja
- - user: root
- - group: root
- - mode: 644
- - require:
- - pkg: mass_server_packages
-
-{%- endif %}
diff --git a/metadata/service/cluster/single.yml b/metadata/service/cluster/single.yml
index 947b5f2..1a22d4a 100644
--- a/metadata/service/cluster/single.yml
+++ b/metadata/service/cluster/single.yml
@@ -5,8 +5,4 @@
parameters:
maas:
cluster:
- enabled: true
- version: '2'
- region:
- host: localhost
- port: 5240
+ enabled: true
\ No newline at end of file
diff --git a/metadata/service/server/cluster.yml b/metadata/service/server/cluster.yml
deleted file mode 100644
index 8194035..0000000
--- a/metadata/service/server/cluster.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-\applications:
-- maas
-classes:
-- service.maas.support
-parameters:
- maas:
- server:
- enabled: true
- bind:
- address: 0.0.0.0
-
\ No newline at end of file
diff --git a/metadata/service/server/single.yml b/metadata/service/server/single.yml
deleted file mode 100644
index e231e4d..0000000
--- a/metadata/service/server/single.yml
+++ /dev/null
@@ -1,10 +0,0 @@
-applications:
-- maas
-classes:
-- service.maas.support
-parameters:
- maas:
- server:
- enabled: true
- bind:
- address: 0.0.0.0
diff --git a/metadata/service/server/vendor_repo.yml b/metadata/service/server/vendor_repo.yml
deleted file mode 100644
index bf37918..0000000
--- a/metadata/service/server/vendor_repo.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-parameters:
- linux:
- system:
- repo:
- maas:
- source: deb http://ppa.launchpad.net/maas/stable/ubuntu xenial main
- key_url: salt://maas/files/vendor_key.gpg