summaryrefslogtreecommitdiffstats
path: root/mcp/config/states/openstack_ha
AgeCommit message (Collapse)AuthorFilesLines
2017-11-27Merge "[baremetal] Retry cinder.controller on failure"Michael Polenchuk1-1/+1
2017-11-26[baremetal] Retry cinder.controller on failureAlexandru Avadanii1-1/+1
Occasionally, cinderng.volume_type_present errors with: ClientException: Service Unavailable (HTTP 503) Instead of retrying the whole state file, use `wait_for` macro to retry only this high state up to 5 times. Change-Id: Ib9ef017aca737e53c853007c13107d56d856c016 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-11-24Revert "Apply apache state on proxy nodes"Alexandru Avadanii1-1/+0
Upstream fixed the salt-formula-horizon in commit 95387ec, by defining 8078 (and only that) port in Apache's ports.conf. This fixes the port 80 overlap, so running the `apache` high state after the `horizon` high state not only is unnecessary now, but also would lead to new breakage, since `apache` state would overwrite the ports.conf (removing 8078 and adding 80), i.e. creating a new port conflict and breaking Horizon port completely. This reverts commit eb4645206d6d74992fca3b8726ee2eebca97205f. Conflicts: mcp/config/states/openstack_ha mcp/reclass/classes/cluster/baremetal-mcp-ocata-common/openstack_proxy.yml Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> Change-Id: Iea8f0bd90ee8d12f399aad16247dda274d6a907a
2017-11-16Merge "[baremetal] Retry keystone.client state on failure"Alexandru Avadanii1-1/+1
2017-11-15[baremetal] Retry keystone.client state on failureAlexandru Avadanii1-1/+1
JIRA: FUEL-306 Change-Id: I648545890c1f7dc59176beac1a0593aed54079cb Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> Signed-off-by: Delia Popescu <delia.popescu@enea.com>
2017-11-13[baremetal] SaltStack Deployment DocumentationAlexandru Avadanii1-1/+1
Generate documentation automatically using `reclass-doc`. nginx is already configured to serve said documentation on proxy's public VIP on port 8090. Change-Id: If2aef646a0ec44d5cc7e9d425e565e5c0aa581b3 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-11-10Apply apache state on proxy nodesMichael Polenchuk1-0/+1
Apache module will take care of ports.conf file to prevent bind socket conflict between apache & nginx services. Change-Id: Ia76ec356002e1db0dabd20d8f355a1b16fc07b30 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-11-03Enable glance v1 api for orchestra testsMichael Polenchuk1-0/+4
Change-Id: Ia896c3f9fcd96dd498eef6d1f83d46e29df0cd6b Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-10-26Run aodh state one by oneMichael Polenchuk1-1/+1
Apply aodh state in consecutive order to avoid a race condition with database synchronization. Change-Id: I4684fbeaaba2c9780084e0a64fe6453bccfb67e0 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-10-21Catch expected failuresMichael Polenchuk1-1/+1
* neutron on computes (dpdk case: void state) * mongodb server (incomplete initialization) Change-Id: I3dd3266b5c2d1b155981f725e15742cd38ed899d Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-10-16Return back glusterfs client stateMichael Polenchuk1-1/+1
In order to set properly keystone fernet keys, apply glusterfs client state before second keystone server state. Also leave out user/group settings for glusterfs volume of nova instances as it will be set later by nova compute packages themselves. Change-Id: I069e37c67f08c51ed29f45cf6f92d4a00a1ac97b Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-10-15states: Break on error, retry states up to 5 timesAlexandru Avadanii1-2/+4
While applying scenario states, break on error, and retry failed state up to 5 times. Apply the same behavior for `salt.sh`. Add new deploy parameter, '-D', backed up by 'CI_DEBUG' env var, which gates deploy sh scripts logging (set -x). Also extend '-f' deploy parameter, allowing it to be specified more than once; the first occurence will skip infra VM creation, but still sync reclass & other config from local repo, while a second occurence will also disable config sync. To prevent glusterfs client state from failing due to non-existent nova user/group, move it after nova:compute's nova state is applied. Change-Id: I234e126e16be0e133d878957bd88fed946955de8 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-10-14Add license headers where missingAlexandru Avadanii1-2/+8
While at it, compact 'set' into bash shebang where possible and add `make patches-copyright` target to simplify adding patch license headers. Change-Id: I0c841de72e5709e5eef915a52c5ec4a7fc0f7c37 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-10-14Drop infinite loops in favor of finite wait_forAlexandru Avadanii1-1/+4
While at it, fix some shellcheck warnings, and s/fgrep/grep -F/g. Change-Id: I093b7b4c196731b1ecc0c27a4111955b2e412762 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-10-14states: Split virtual_control_plane from maasAlexandru Avadanii1-2/+2
We should eventually also support baremetal deploys without a virtualized control plane (VCP), so decouple MaaS provisioning from VCP provisioning. While at it, move "wait_for" bash function from maas state to common library file, lib.sh. Change-Id: I32c33135655cb6aceae901a5f92b51265a8c84b4 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-09-13[baremetal] Setup glusterfs for nova instancesMichael Polenchuk1-1/+1
Live-migration feature requires shared storage on compute nodes, so configure glusterfs volume for nova instances. Change-Id: Id6b9b5aad89f5b4aefbef71e4ba7247a441873b0 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-10os_cacert: Parametrize VIP used in path by cp.pushAlexandru Avadanii1-1/+4
JIRA: FUEL-274 Change-Id: Ia77948ba3e99c47aa86fcca20c67d80e2e761208 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-09-06Initialize mongodb clusterMichael Polenchuk1-1/+5
* wait for mongodb service ready state * run rs.initiate() to start a replication set Change-Id: Ia9d2357d2ce0e9ba92a6be3d8b6c068efaa10822 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-05[baremetal] Enable ceilometer/aodh servicesMichael Polenchuk1-0/+5
Change-Id: I34706afbdbcbdaace0b0ae6c2c2e8cb932812d4e Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-30Fix ssl cert upload pathMichael Polenchuk1-2/+2
JIRA: FUEL-274 Change-Id: I8e947009399a995474ed0088d56da04755d278df Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-28Sync os cacert from proxy to salt masterMichael Polenchuk1-0/+3
JIRA: FUEL-274 Change-Id: I2c8161b24cb18a0d1f9dc6fd509ce18af7ea8cf5 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-24[baremetal] Bring in ovs/dpdk scenarioMichael Polenchuk1-1/+1
Change-Id: Ia0d828fa31549a12b6740e0edeeba2ab13a9b998 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-23ci/deploy.sh, states: bash debug, continue on errAlexandru Avadanii1-0/+3
Since we don't `set -e` in state files, applying each state will always succeed unless the last instruction in the state fails. Make this uniform by always succeeding in applying the state. While at it, enable bash debugging logs, for better readability of deploy log files. Change-Id: I3cf4886f6d73c6fd1380df1a4e1413334bec1701 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-08-22Shift vcp nodes interfacesMichael Polenchuk1-1/+2
* shift vcp nodes interfaces since names started from ens2 * add extra salt sync before vcp start up * run rabbitmq state on 1st node beforehand then the rest Change-Id: Ic2c174c288a5e89f2f28c0d9aa573340190a61d3 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-22baremetal: HA: Standalone openstack_ha stateAlexandru Avadanii1-0/+30
Replicate all calls from "openstack" state to "openstack_ha", while adjusting minor parameters for HA, based on [1]. [1] https://docs.mirantis.com/mcp/1.0/mcp-deployment-guide/\ deploy-mcp-cluster-manually.html Change-Id: Iaf2262fa9c54f2401b69635ff46329ffb856f802 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-08-17Bring in baremetal supportAlexandru Avadanii1-0/+12
- ci/deploy.sh: fail if default scenario file is missing; - start by copying reclass/classes/cluster/virtual-mcp-ocata-ovs as classes/cluster/baremetal-mcp-ocata-ovs; - add new state (maas) that will handle MaaS configuration; - Split PXE network in two for baremetal: * rename old "pxe" virtual network to "mcpcontrol", make it non-configurable and identical for baremetal/virtual deploys; * new "pxebr" bridge is dedicated for MaaS fabric network, which comes with its own DHCP, TFTP etc.; - Drop hardcoded PXE gateway & static IP for MaaS node, since "mcpcontrol" remains a NAT-ed virtual network, with its own DHCP; - Keep internet access available on first interfaces for cfg01/mas01; - Align MaaS IP addrs (all x.y.z.3), add public IP for easy debug via MaaS dashboard; - Add static IP in new network segment (192.168.11.3/24) on MaaS node's PXE interface; - Set MaaS PXE interface MTU 1500 (weird network errors with jumbo); - MaaS node: Add NAT iptables traffic forward from "mcpcontrol" to "pxebr" interfaces; - MaaS: Add harcoded lf-pod2 machine info (fixed identation in v6); - Switch our targeted scenario to HA; * scenario: s/os-nosdn-nofeature-noha/os-nosdn-nofeature-ha/ - maas region: Use mcp.rsa.pub from ~ubuntu/.ssh/authorized_keys; - add route for 192.168.11.0/24 via mas01 on cfg01; - fix race condition on kvm nodes network setup: * add "noifupdown" support in salt formula for linux.network; * keep primary eth/br-mgmt unconfigured till reboot; TODO: - Read all this info from PDF (Pod Descriptor File) later; - investigate leftover references to eno2, eth3; - add public network interfaces config, IPs; - improve wait conditions for MaaS commision/deploy; - report upstream breakage in system.single; Change-Id: Ie8dd584b140991d2bd992acdfe47f5644bf51409 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> Signed-off-by: Guillermo Herrero <Guillermo.Herrero@enea.com> Signed-off-by: Charalampos Kominos <Charalampos.Kominos@enea.com> Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>