296 Commits

Author SHA1 Message Date
Zuul
e38d95def5 Merge "Support deploying the Monasca Log API" 2018-05-21 13:53:34 +00:00
Doug Szumski
eab66ab02e Support deploying the Monasca Log API
Deploys the Monasca Log API with mod_wsgi + Apache.

Change-Id: I28f0aa31c59b0b6917be2b125b5f8a0d7a7035af
Partially-Implements: blueprint monasca-roles
2018-05-21 12:05:58 +01:00
Zuul
a672d4e730 Merge "Support deploying the Monasca API" 2018-05-21 11:05:54 +00:00
Doug Szumski
c11f9f521d Support deploying the Monasca API
Deploys the Monasca API with mod_wsgi + Apache.

Co-Authored-By: Mark Goddard <mark@stackhpc.com>

Partially-Implements: blueprint monasca-roles
Change-Id: I3e03762217fbef1fb0cbff6239abb109cbec226b
2018-05-21 09:28:13 +00:00
Zuul
cbb7cce7c1 Merge "[haproxy] Enable global optimization options" 2018-05-16 12:25:09 +00:00
Jorge Niedbalski
48231e1df0 [haproxy] Enable global optimization options
This patch enables 3 new configuration options for haproxy.cfg
global section.

  - haproxy_processes: number of haproxy processes (default:1).
  - haproxy_max_connections: number of concurrent connections (default:4000)
  - haproxy_process_cpu_map: enforces 1:1 mapping/affinity between
process and core. (default: no).

Closes-Bug: #1770060
Change-Id: I33fc499b083c7bcc548133498e44406a479389f1
Signed-off-by: Jorge Niedbalski <jorge.niedbalski@linaro.org>
2018-05-11 10:28:09 -03:00
Jeffrey Zhang
c567055176 Fix ansible warning
- rename action and serial to kolla_ansible and kolla_serial
- use become instead of "sudo <command>" in shell
- Remove quota for failed_when and changed_when in rabbitmq tasks

Change-Id: I78cb60168aaa40bb6439198283546b7faf33917c
Implements: blueprint migrate-to-ansible-2-2-0
2018-05-11 02:54:02 +00:00
Zuul
ad2b856178 Merge "Let haproxy to be ODL websocket's frontend" 2018-05-04 04:09:21 +00:00
Zuul
2b8bc555cb Merge "Fix SSL api for multiple services" 2018-04-27 08:55:48 +00:00
Zuul
d35712800b Merge "Add role to deploy prometheus" 2018-04-25 13:59:45 +00:00
Vladislav Belogrudov
ecafeb62d5 Add precheck for haproxy certificate file
If user enables TLS it also is necessary to create
a certificate. This precheck ensures the certificate
file exists before starting deployment.

Change-Id: I772d52e228ed012b9f8ccb5b616f9b188d3d340c
Closes-Bug: #1765677
2018-04-20 18:04:47 +03:00
Mathias Ewald
4d1f37359d Add role to deploy prometheus
This patch adds the ansible role to deploy the prometheus service which
can be used to collect performance metrics accross the environment

Partially-Implements: blueprint prometheus
Change-Id: I908b9c9dad63ab5c9b80be1e3a80a4fc8191cb9e
2018-04-19 10:58:15 -04:00
Kevin TIBI
a81a5d5d5d Fix SSL api for multiple services
If SSL is enabled, api of multiple services returns
wrong external URL without https prefix.

Removal of condition for deletion of http  header.

Change-Id: I4264e04d0d6b9a3e11ef7dd7add6c5e166cf9fb4
Closes-Bug: #1749155
Closes-Bug: #1717491
2018-04-18 17:20:27 +02:00
Doug Szumski
b865bada8c Support accessing InfluxDB via HAProxy
This change allows access to InfluxDB via HAProxy on the internal
network.

If HA is required the Enterprise version of InfluxDB will need to
be installed. This could be implemented by customising the InfluxDB
Docker file.

There are other alternatives to HA, such as the InfluxDB Relay [1].
Support for this is considered to be outside of the scope of this
bugfix.

[1] https://docs.openstack.org/developer/performance-docs/
    methodologies/monitoring/influxha.html

Closes-Bug: #1751283
Change-Id: I4624efbd99c0cddd1361f2438866ad3a82e5557b
2018-04-06 17:48:24 +01:00
Nick Jones
55773923b1
[HAProxy] Allow extra options to be specified per listener
This commit provides operators with the ability to specify additional
options per HTTP or TCP listener stanza.

Change-Id: I66cc5372f2a686213b6748a8260cfe84f789ad8e
Implements: blueprint haproxy-listener-extra-options
2018-04-03 09:58:45 +01:00
Zuul
bbcda9e08d Merge "keepalived: ability to use unicast instead of multicast" 2018-04-03 07:42:56 +00:00
Zuul
b32f224db5 Merge "Make it possible to not haproxy memcached" 2018-04-03 01:33:25 +00:00
Jeffrey Zhang
7aeb6825ff Use a large number for haproxy timeout tunnel
timeout tunnel is use for WebSocket and CONNECT protocol. Need use a
larger number for it. Otherwise, novnc will be auto disconnected if no
action happend in a short time on browser.

Change-Id: If37623e8fda5260ab0b38d2203f5266777dba063
Closes-Bug: #1759774
2018-03-29 14:56:10 +08:00
Joshua Harlow
e82fb95603 Make it possible to not haproxy memcached
Clients usually have sophisticated logic for handling
key redistribution on node failure; so going under the
covers and messing with that is bad (because then the
clients and their sophisticated logic is unaware of
what is going on).

Change-Id: Ica12240440d28f930b917d5d6202f4f9e6675b2a
2018-03-27 10:03:46 -07:00
Eduardo Gonzalez
ea1a1dee0d Verify YAML syntax in gates
This patchset implements yamllint test to all *.yml
files.

Also fixes syntax errors to make jobs to pass.

Change-Id: I3186adf9835b4d0cada272d156b17d1bc9c2b799
2018-03-26 17:56:22 +02:00
Pavel Glushchak
6832e0aad1 keepalived: ability to use unicast instead of multicast
In some data centers multicast traffic is prohibited. Additionally
VRRP id needs to be unique within broadcast domain when keepalived
operates in multicast mode, otherwise it fails to start.

However keepalived can be configured to use unicast traffic [1].
In unicast mode VRRP id doesn't make sense, but needs to be
the same among peers.

[1] http://manpages.ubuntu.com/manpages/zesty/man5/keepalived.conf.5.html

Change-Id: I692ecbb0aa750baf20c013b53b57f88b474b63cc
Signed-off-by: Pavel Glushchak <pglushchak@virtuozzo.com>
2018-02-27 08:00:53 +00:00
Zuul
70a5099376 Merge "Implement blazar ansible role" 2018-02-05 08:36:12 +00:00
Zhijiang Hu
98b06a0586 Let haproxy to be ODL websocket's frontend
This PS does:
1) Let haproxy to be ODL websocket's frontend and listen on port 8185.
2) Add 10-rest-connector.xml config file template for ODL container.
3) ODL websocket backend listen only on api interface, port is also
8185.

Closes-Bug: #1745323

Change-Id: Id330d610c7cd8a239b0f77c8f5f47422d48b9977
Signed-off-by: Zhijiang Hu <hu.zhijiang@zte.com.cn>
2018-01-31 02:54:09 -05:00
Zuul
09dbb61133 Merge "Fix haproxy with memcached enabled" 2018-01-26 10:22:44 +00:00
Zuul
4771f5c22d Merge "Disable jinja2 trim_blocks feature" 2018-01-25 10:27:40 +00:00
Zuul
b66ebff65e Merge "Fix the ssl issue for placement api when enabled ssl" 2018-01-25 03:24:01 +00:00
Jeffrey Zhang
def1adb6b4 Fix the ssl issue for placement api when enabled ssl
Change-Id: I43db3048f92207da5ec3a2b9ed52b4c4083c3881
Closes-Bug: #1745128
2018-01-24 18:28:59 +08:00
Jeffrey Zhang
35b91cf7b7 Disable jinja2 trim_blocks feature
otherwise, if the jinja2 blocks at the end of the line, it will remove
the last newline character and join two lines into one.

Change-Id: Ie710342fb034e477ff854eba3915dd845bddd257
2018-01-24 10:20:14 +08:00
Alexandru Bogdan Pica
8e3b79440c Implement external MariaDB and pre-configured Databases support
This change allows the following use cases:

1. Using an already-configured MariaDB / MySQL server / Cluster
2. Using already-created DB users, without requiring root DB access.

Update: added external mariadb precheck

Change-Id: I78b0d178306d7c5293b0bf53e445f19f18b4b824
Implements: blueprint external-mariadb-support.
Closes-Bug: #1603121
2018-01-23 13:07:40 +00:00
Eduardo Gonzalez
e44ff538b7 Fix haproxy with memcached enabled
Haproxy keeps restarting due memcached servers
are writen in a single line. adds a empty line
in the for so each server is in its line

Change-Id: I763a23de7f70e9ebe543b935b175e675ec774f9a
2018-01-23 12:08:44 +01:00
Zuul
fdbfd96d14 Merge "Add a active-standby mode memcached in haproxy" 2018-01-22 05:11:31 +00:00
Jeffrey Zhang
a26357efb9 Add a active-standby mode memcached in haproxy
Memcached do not support cluster. Then make it work in active-standby
mode. This will be helpful to implement high available when using memcached
as tooz backend.

Change-Id: I13722111d8b8d5b066e9a85d4c8d1679704c8caa
2018-01-21 15:02:07 +08:00
Zuul
5cfd101057 Merge "We actually require 'mode http'" 2018-01-19 09:59:11 +00:00
liujunpeng
c51bf13420 add var haproxy_client_timeout and haproxy_server_timeout
Change-Id: I329307b226757144a493ff21c76125cae8468e91
2018-01-15 20:01:26 +08:00
Ian Kumlien
ee67917c49 We actually require 'mode http'
So it turns out that without 'mode http' redirects and rewrites
will not happen, and we're relying on it for multiple things.

Switch neutron to use http-tunnel mode instead which seems to work,
we've had no errors in our setup.

See:
https://www.haproxy.org/download/1.5/doc/configuration.txt

Quoute:
" - tunnel        : only the first request and response are processed,
                      everything else is forwarded with no analysis."

Fixes: bba80acc8b78ab3a34d61b3d0b496551e5a9258e
Change-Id: I0d9abe9731fba1e4deb64932e859f991648bb1ec
2018-01-09 13:19:54 +01:00
Zuul
30ff168583 Merge "Fix failure handling in prechecks" 2018-01-04 09:25:00 +00:00
Eduardo Gonzalez
31f7732aef Implement blazar ansible role
Add ansible role to deploy blazar
Add nova filters to allow use of blazar

Change-Id: I6742ddc9a4736f256491dd0cfd31904fa8eb5652
Implements: blueprint blazar-ansible-role
2018-01-03 16:36:54 +00:00
Zuul
e3af18f90a Merge "Add vitrage ansible role" 2017-12-28 04:57:45 +00:00
Zuul
c0af83331a Merge "Let OVS to connect to the individual IPs of each ODL node" 2017-12-25 19:30:08 +00:00
chenxing
2d1a1b1df6 Add vitrage ansible role
Co-Authored-By: caoyuan <cao.yuan@99cloud.net>
Co-Authored-By: Eduardo Gonzalez <dabarren@gmail.com>

Depends-on I7ffb991adbd05275e331401cd73fc84362084ebd
Change-Id: I85afeb5dfce0bf6350a444000bdb885c6fe079c9
Partially-implements: blueprint vitrage-roles
2017-12-18 17:29:32 +08:00
Mark Goddard
be4568334c Fix failure handling in prechecks
In a HAProxy precheck task, the command module is used, and the results
inspected by checking the stdout attribute of the result. However, if
the command fails (non-zero exit code), in some cases there may not be a
stdout attribute in the result object. This causes an AttributeError and
prevents ansible's useful diagnostic output from being displayed.

Change-Id: Id502b5d0b71fe2150a29df43154c925dca96ef06
Trivial Fix
2017-12-14 14:05:39 +00:00
Ian Kumlien
bba80acc8b RFC: disable haproxy http mode
In some cases the http mode in haproxy causes issues with api calls
(We exeperienced this in production between horizon and neutron)

See:
https://ask.openstack.org/en/question/57958/keystone-through-haproxy/

Change-Id: Id2079c5a491ef8691e7ad8846a5fec99e49ec4ba
2017-11-29 14:42:10 +01:00
Zhijiang Hu
28b50c22ce Let OVS to connect to the individual IPs of each ODL node
Close-Bug: 1734047

For ODL clustering, one should explicitly points switches to each
of the ODL instances. The openflowplugin logic will figure out
which controller should be the master, and which should be the
slave.

Kolla currently sets the manager to one of the specific ODL over
ptcp and another one through the VIP. The VIP is probably
forwarding the traffic to that same ODL so from ODL's perspective
it's getting two duplicated connection requests from the same OVS
which will cause re-connection problem.

This PS does:
1) Let OVS to connect to the individual IPs of each ODL node in
a ODL cluster instead of only connect to the representative over
VIP. Devstack is doing the same thing[1]. Further more, there is no
need for HAProxy to be frontend for ODL southbound.

2) Delete the unusd ptcp connection option.

[1] https://review.openstack.org/#/c/249484/

Change-Id: Ib57e6fbb5ce64a48be0506904d3c8397ed6f70d9
Signed-off-by: Zhijiang Hu <hu.zhijiang@zte.com.cn>
2017-11-23 06:18:42 -05:00
root
d55f2785e3 Allow outward_rabbitmq with enable_outward_rabbitmq
outward_rabbitmq is determined  using enable_outward_rabbitmq
property rather than current haproxy_enable_external_vip

Change-Id: Iee096ab50fd4d9f5f3fe05880d0e0a7842c59d0a
Closes-Bug: 1722854
2017-10-12 10:26:38 +00:00
Jenkins
109328be3e Merge "Specify 'become' to necessary tasks (general roles)" 2017-10-03 20:01:04 +00:00
Tatsuma Matsuki
03354bc99e Add fluentd enable option
This change adds enable_fluentd option and enables some other log shippers
to be integrated. When enable_fluentd is "no", syslog server is also disabled.
Then, this change also adds syslog parameters to use a syslog server
prepared by users.

Change-Id: I7c83ef7fe30a6b9ab7385bcee953ad07e96b0a83
Implements: blueprint fluentd-enable-option
2017-09-28 04:36:36 +00:00
Duong Ha-Quang
26b2c2d9e9 Specify 'become' to necessary tasks (general roles)
Add config_owner_user and config_owner_group to group_vars/all,
which is user and group of Kolla configuration files in /etc/kolla.

Add become to post-deploy playbook.

Add become to only neccesary tasks in roles:
- certificate
- common
- destroy
- haproxy
- mariadb
- memcached
- rabbitmq

Change-Id: I2aba745a6e3928c52642f64551470fd08cbfd058
Partial-Implements: blueprint ansible-specific-task-become
2017-09-25 06:52:04 +00:00
Jenkins
43ca7d287b Merge "Create/delete kolla_keepalived_running only once" 2017-09-05 08:37:53 +00:00
Dan Ardelean
418d584693 HyperV: fix FreeRDP console config
Console access for HyperV VMs is now done via Kolla VIP.
The VIP will point to each HyperV compute node IP on which
FreeRDP-WebConnect is installed.

Closes-Bug: #1714249
Change-Id: I3a5d23425996a5c347ff21df3f99c3f63dd35173
2017-09-01 19:28:48 +03:00
Zhijiang Hu
42e146925e Create/delete kolla_keepalived_running only once
Currently, kolla_keepalived_running may be created and deleted in
parallel which causes prechecks failure. The solution is using
run_once = true.

Closes-Bug: #1714407

Change-Id: I2ec8fc2e867c87175157af8acc11f57313bfaabe
Signed-off-by: Zhijiang Hu <hu.zhijiang@zte.com.cn>
2017-09-01 00:58:29 -04:00