94 Commits

Author SHA1 Message Date
Michael Johnson
6349976cde Implement provider drivers - Cleanup
This patch addresses the following:
Fixes some unit tests.
Cleans up some code from the parent patches,
Adds a release note for the provider driver support.
Adds the "List providers" API.
Adds a document listing the know provider drivers.
Adds a provider driver development guide.

Change-Id: I90dc39e5e9d7d5839913dc2dbf187d935ee2b8b5
Story: 1655768
Task: 5165
2018-06-04 19:34:42 -07:00
Adam Harwell
d28d311db1 Add config for disabling creation of PING type HMs
PING is a trap. There is no real-world scenario where PING is the option
that makes the most sense, but people are familiar with it, and it seems
"simple", so they pick it. This needs to stop. Empower operators to
disable this!

Change-Id: Ifa80b7a5973361c13f2e6611789aa9798325ece0
2018-05-22 14:02:00 +00:00
Adam Harwell
c6ff8596db Create disabled members in haproxy
Members that were disabled / admin_state_up=False were simply excluded
from the haproxy configuration we pass to the amps. Instead, we should
be creating them in a disabled state, so they return in health messages
as status "maint", and can be marked OFFLINE via the standard health
mechanism, instead of just via override hacks.
This also resolves a bug introduced in an earlier change:
https://review.openstack.org/#/c/567322/
which caused admin-downed members to stay in NO_MONITOR always.

Change-Id: I6615b3ff89d7cef2af52d474aab3a03d947f98be
2018-05-14 10:31:06 -07:00
Zuul
d25b2cc619 Merge "Fix calls to "DELETED" items" 2018-04-26 01:50:55 +00:00
Michael Johnson
97c0eab918 Fix calls to "DELETED" items
Fixes the v2 API returning "DELETED" records until the amphora_expiry_age
timeout expired. The API will now immediately return a 404 HTTP status
code when deleted objects are requested. The API version has been raised
to v2.1 to reflect this change.

Change-Id: Iaf150240b0de32f75ba8cfe605293e3af086cc78
Story: 2001557
Task: 6501
2018-04-20 15:50:46 -07:00
Carlos Goncalves
c5c7770e30 Add sos element to Red Hat family images
sosreport is a tool that collects information about a system.

The sos plugin for Octavia can gather information of installed packages,
log and configuration files for Octavia controller components and
amphora agent. The result is a generated report that can be used for
troubleshooting. The plugin redacts confidential data such as passwords,
certificates and secrets.

At present sos only installs in Red Hat family images as the plugin does
not support other distributions.

Change-Id: I5131a4cfdedd8b78fb673b4264ef1d7a1d613972
2018-04-19 15:51:50 +02:00
Michael Johnson
922c79f52f Add API alias for '/statuses'
Fixes a neutron-lbaas LBaaS v2 API compatibility issue when requesting a
load balancer status tree via '/statuses'. This patch adds an alias for
'/statuses' to use the same code as '/status'.

Change-Id: I7aebf87c5f48e2e72b1f7f26b95663a861382f36
Story: 2001812
Task: 12547
2018-04-10 16:41:17 -07:00
Adam Harwell
bb0447e98b Expose timeout options
Various timeout options need to be exposed to enable use-cases more
complex than standard HTTP requests.

In this patch we expose four new timeout values:
* timeout_client_data
* timeout_member_connect
* timeout_member_data
* timeout_tcp_inspect

Change-Id: Id4667201c1bfaa06f7af9060c936ba00c2f314f9
Story: 1457556
Task: 5453
2018-04-04 13:06:01 +09:00
Adam Harwell
e819e4521a Allow members to be set as "backup"
Setting a member as "backup" means no traffic will be sent to it unless
all non-backup members are marked as down.

This should be essentially the same in every backend provider AFAIU.

This was requested by at least one operator (me) and was agreed during
the PTG to add value.

Story: 2001777
Task: 12483
Change-Id: I953abe71a0988da78efc6b3961f7518c81c2a06d
2018-04-04 07:47:31 +09:00
melissaml
b3b5a42abf fix a typo in documentation
Change-Id: I876741c11ca376f3faae8bae9c25fa6979b00c6e
2018-03-23 08:26:50 +08:00
OpenStack Proposal Bot
a35637c6f0 Imported Translations from Zanata
For more information about this automatic import see:
https://docs.openstack.org/i18n/latest/reviewing-translation-import.html

Change-Id: Ifbc23381ee5e643b907c0bdc589b282afd068387
2018-03-01 06:44:50 +00:00
Adam Harwell
6ee20b272e Add image_id to amphora table
Story: 2001491
Task: 6215
Change-Id: I5ab6707591c856e43a0e0f49c84e1e721f01893c
2018-02-27 14:46:25 +00:00
0a8808ba46 Update reno for stable/queens
Change-Id: Id023f0850984deac99e8910196defc8b03e4b8f9
2018-02-08 14:33:44 +00:00
OpenStack Proposal Bot
2d3581c413 Imported Translations from Zanata
For more information about this automatic import see:
https://docs.openstack.org/i18n/latest/reviewing-translation-import.html

Change-Id: If51aac7d6f175d29b5b108b47369b52c3f066ec5
2018-02-07 21:36:26 +00:00
Michael Johnson
c548c21c3f Fix release notes job
Recently there have been a few changes to the release notes and docs jobs.
This patch returns a blank line after the release notes ToC on the index page
and updates the release notes tox job to use the new docs requirements.txt

Change-Id: I0ab2545a670a65853a9f37564d700c945d3a5092
2018-02-07 09:21:46 -08:00
Michael Johnson
ee00bfe50e Update docs config for storyboard bugs
This patch updates the docs configuration to have bugs links that take the
reporter to storyboad instead of launchpad.
It also sets the docs up for PDF rendering and multiple versions of the
documentation.

Change-Id: I66187e09e038efe605db45a26e3505218a7a4c65
2018-02-01 17:24:24 -08:00
Adam Harwell
8934a629df Switch to using PKCS12 for TLS Term certs
*NOT* deprecating the old way of storing these, as I believe that would
create a huge mess for anyone already using it.

Change-Id: I1fee174d8b8956f3d2053781a7f18c2940b21765
2018-01-23 07:17:14 +00:00
Zuul
b7285925e1 Merge "Amphora API Failover call" 2018-01-09 21:00:41 +00:00
Zuul
f60d91e715 Merge "Improve user error messages for duplicate objects" 2018-01-05 03:15:48 +00:00
Adam Harwell
23bf43a66f Amphora API Failover call
Change-Id: I2830a79723ceafd7ebf6387c62feeae98878e8e1
2017-12-21 12:02:27 -08:00
Michael Johnson
44fb49b128 Improve user error messages for duplicate objects
The error handling for duplicate records was not great, specifically
health monitors would return a 500 or a 409 with a bad error message.
This patch improves the errors the user gets back when creating a
duplicate entity.

Co-Authored-By: Jacky Hu <hudayou@hotmail.com>
Change-Id: I03ec527b42d67427541121e59e4433699e04aab8
2017-12-20 17:19:53 -08:00
ZhaoBo
51f6f7258b Extend api to accept qos_policy_id
This patch extend Octavia v2 API to access qos_policy_id from neutron.
Users can pass it as 'vip_qos_policy_id' to Octavia request body to
create/update Loadbalancers, and the vrrp ports will have the qos
abilities.

This patch modifies the Loadbalancer Post/Put request body and response
body. It also extends the 'vip' table with the new column named
'qos_policy_id' to store the qos_id from neutron.

Co-Authored-By: Reedip <reedip.banerjee@nectechnologies.in>

Change-Id: I43aba9d2ae816b1498d16da077936d6bdb62e30a
2017-12-20 09:23:16 +08:00
Zuul
a8b65dff73 Merge "Fix health monitor type "PING" to use icmp ping" 2017-12-05 00:10:26 +00:00
Michael Johnson
2897b340f7 Fix health monitor type "PING" to use icmp ping
Currently with Octavia, if the user specifies a health monitor of type
"PING" we are still using a TCP connect to check for health.
This patch fixes that to actually ping the member to validate health.

Change-Id: I8a67efb7113ffa49b2805b37c3855373b17e5789
Story: 2001280
Task: 5826
2017-11-29 15:23:28 -08:00
German Eichberger
0f4a5e2170 Adds the user's project id to the VIP port creation
This brings Octavia in line with what n-lbaas does for VIP port and
allows a user to attach a FIP to the VIP port generated by Octavia.

Change-Id: Ib7e6374cad49a16a733dacb2ea1ca096d8c4e6e4
2017-11-29 10:46:13 -08:00
deepakmourya
2f70bd3bc8 Remove setting of version/release from releasenotes
Release notes are version independent, so remove version/release
values. We've found that projects now require the service package
to be installed in order to build release notes, and this is entirely
due to the current convention of pulling in the version information.

Release notes should not need installation in order to build, so this
unnecessary version setting needs to be removed.

This is needed for new release notes publishing, see
I56909152975f731a9d2c21b2825b972195e48ee8 and the discussion starting
at
http://lists.openstack.org/pipermail/openstack-dev/2017-November/124480.html
.

Change-Id: I08f8e1e1e5cd04344e24e2c8c65e944cdf2cb7e7
2017-11-17 04:40:35 +00:00
Adam Harwell
b8ebbe9919 Add cached_zone to the amphora record
This will enable a number of possible features that need to select
amphorae based on their availability zone.

This would allow for quick-lookups on large lists and could be stale,
but it would be expected that future code that uses this would check
with nova for an update if it needs fully accurate data.

Having it be explicitly "cached" should take care of concerns about
users (operators, in this case) being confused about correctness.
Using simply the word "zone" should address concerns about commonality
between compute providers.

Change-Id: I8e26f99bca3496a454ba7bae2570f517e07d5fc2
Story: 2001221
Task: 5732
2017-10-31 17:15:45 -07:00
German Eichberger
060fcc1503 Make the event streamer transport URL configurable
This adds a way to configure the event streamer transport URL
so it can post to a different queue, e.g. Neutron's

Change-Id: I69d3d6d30e33878052f2c56b8c79a14cc4ec1b24
2017-10-25 10:52:48 -07:00
Jenkins
859bb3bae3 Merge "Allow PUT to /pools/<id>/members to batch update members" 2017-10-14 14:11:43 +00:00
Adam Harwell
7f1c5011ed Add admin endpoint for amphora info
Administrators can now use /v2.0/octavia/amphorae to retrieve internal
information about amphora details like compute_id and lb_network_ip.

Change-Id: I5ac8d1ce189db09d52e518d42aeb3a192b8a8814
2017-09-22 23:39:46 +00:00
Adam Harwell
45e39fa216 Allow PUT to /pools/<id>/members to batch update members
Also fix an incorrect exposure of /healthmonitors on /pools and a badly
ordered flow for member updates.

Change-Id: Id256ea94293519b75983f7a44945ac9bbbf25cd1
Implements: blueprint member-put-list
2017-09-20 18:14:53 -07:00
Jenkins
9621658cab Merge "devstack: Allow 3rd party neutron backends deployment" 2017-08-31 20:31:53 +00:00
Jenkins
2c5e791c7c Merge "Fix some typos" 2017-08-31 20:31:47 +00:00
Michael Johnson
585e93b8a2 Update release notes theme to openstackdocs
As part of the docs migration the release notes theme has been updated.
This patch switches octavia release notes over to the new theme

Change-Id: I29796cf87c49bc19bd67bd1488cf46f9ce7a6fc5
2017-08-30 08:59:05 -07:00
Omer Anson
ca69044222 devstack: Allow 3rd party neutron backends deployment
In plugin.sh, there is only support for neutron reference
implementation, with either openvswitch or linuxbridge agent.

This change allows external devstack plugins to define hooks needed in
devstack.

Change-Id: I1d5797a1becb4201d76c0e522f84dad09804c5b6
Closes-Bug: #1712077
2017-08-24 09:25:35 +03:00
Adam Harwell
7bf8804177 Add flag to disable SSHD on the amphora image
Also deprecate the amp_ssh_access_allowed option.

Change-Id: Icb61a65fac57e74235fac904639c411b0fa2b495
2017-08-16 11:18:10 -07:00
690ccfd43f Update reno for stable/pike
Change-Id: If5d7896df756cf20d181fcd5f5a3c571d0eddbae
2017-08-11 14:47:46 +00:00
lidong
d61c26393c Fix some typos
Correct some spelling errors in files :
releasenotes/notes/glance-tags-for-amphora-images-28bd9df1ed4b9ca3.yaml,
specs/version0.8/use_glance_tag_to_refer_to_image.rst

Change-Id: I87745633237c6aa01698c8087a7013c328d915a3
2017-08-10 09:29:46 +08:00
Adam Harwell
12135dcc92 Properly handle more states from HAProxy health messages
DRAIN / MAINT are handled now.
Also, transitional UP/DOWN states report correctly now.

Change-Id: I8b2bf54de6f79c98822689e48f6ec0b65c6296c5
Closes-Bug: #1708042
2017-08-01 17:43:40 -07:00
Michael Johnson
ba5f4d9d17 Update release notes for work done in Pike
Change-Id: I5d87d07ddbf352a8480d466b6e5446f734b61644
2017-07-26 19:23:50 -07:00
Jenkins
208395ff79 Merge "Option to enable provisioning status sync with neutron db" 2017-07-18 23:49:54 +00:00
Santhosh Fernandes
94a8d5715a Option to enable provisioning status sync with neutron db
In large build situations, nova can be slow to build VMs, this means that the
default 100 second timeout may expire before the final status has been updated
in the neutron database. This patch will emit provisioning status to be sync
with neutron db

Change-Id: If6c0b81630fd1911518792d9947f8622f065ff4e
2017-07-18 12:02:18 +05:30
Bernard Cafarelli
d17dcea645
DIB: drop custom mirror elements
diskimage-builder supports a generic DIB_DISTRIBUTION_MIRROR that can
replace all existing mirror elements

Change-Id: Ia91dabf10e591f953440459edad35ebfc20c5890
Closes-Bug: #1703624
2017-07-12 10:57:24 +02:00
Michael Johnson
3007738fec Update some links to the new docs locations.
Change-Id: Ic10c2a2d924e5daa5567f33ccb80d6e33949f636
2017-07-05 15:37:28 -07:00
Michael Johnson
93c8e006ce Update Octavia docs for documentation migration
This patch updates the Octavia documentation in support of the
OpenStack documentation migration[1].

[1] https://specs.openstack.org/openstack/docs-specs/specs \
    /pike/os-manuals-migration.html

Change-Id: I97fd038b8050bfe776c3fca8336d9090f8236362
Depends-On: Ia750cb049c0f53a234ea70ce1f2bbbb7a2aa9454
2017-07-03 11:43:40 -07:00
Jenkins
5b97e6af40 Merge "Correct RBAC Not Authorized status code" 2017-06-29 03:08:50 +00:00
Michael Johnson
576e63dab5 Correct RBAC Not Authorized status code
This patch corrects the RBAC "Not Authorized" status code to be 403
instead of 401.
It also switches some strings over to use constants.

Change-Id: I5c2d7384d98720b875de03d311b04193bf448782
2017-06-28 17:51:44 -07:00
Jenkins
b37d1ed8bb Merge "Add v2 Quota API section" 2017-06-28 23:47:50 +00:00
johnsom
2ca2b8076d Add v2 Quota API section
This patch adds the quota section to the v2 API reference.

Change-Id: I23cd2c4a65e4d7bf3c85f176a3042fefe0fb35b9
Partial-Bug: #1558385
2017-06-28 09:32:56 -07:00
Adam Harwell
38a5563abc Allow operators to disallow creation of TLS Termination listeners
Change-Id: I93fbc26c775d1a7f6c69a0ab0b5f47a573cb125d
2017-06-26 18:47:15 -07:00