The default AMQP handler does not handle TLS
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack API Layer |
Triaged
|
High
|
Unassigned | ||
OpenStack Base Layer |
Triaged
|
High
|
Unassigned | ||
OpenStack Octavia Charm |
Triaged
|
High
|
Unassigned | ||
charms.openstack |
Triaged
|
High
|
Unassigned |
Bug Description
When the rabbitmq-server charm is configured with TLS it will announce this fact along with the CA certificate used over the relation.
The layer does not contain a handler for this and it should have one.
charms.openstack does contain code to handle the RabbitMQ cert that piggy backs on the handling of other TLS related events.
Without layer handling code it will not be called on changes to the relation and will then lead to situations where a charm using our stack will no longer be able to communicate with RabbitMQ when the certificate changes.
There is example in the ``neutron-
0: https:/
Changed in charm-octavia: | |
status: | New → Triaged |
importance: | Undecided → High |
While validating framework changes for bug 1840899 I caught this during a charm-octavia test run in a TLS enabled deployment with ``ssl=only`` configured for ``rabbitmq- server` `.
From ``/var/ log/octavia/ octavia- worker. log``: _drivers. impl_rabbit [-] Connection failed: [SSL: CERTIFICATE_ VERIFY_ FAILED] certificate verify failed (_ssl.c:852) (retrying in 32.0 seconds): ssl.SSLError: [SSL: CERTIFICATE_ VERIFY_ FAILED] certificate verify failed (_ssl.c:852)
2019-08-29 09:53:40.572 2483 ERROR oslo.messaging.
And surely enough the data represented in ``/var/ lib/charm/ octavia/ rabbit- client- ca.pem` ` differ from what is on the relation.
root@juju- 77088e- zaza-fdbdfb4a27 23-8:/var/ lib/charm/ octavia# cat /var/lib/ charm/octavia/ rabbit- client- ca.pem BAgIUAXtKq1Muov VzE6TsykohOdN0g igwDQYJKoZIhvcN AQEF ECgwEanVqdTE2MD QGA1UECwwtcmFiY ml0bXEtc2VydmVy IHNl maWNhdGUgQXV0aG 9yaXR5MB4XDTE5M DgyOTA2MjYzOVoX DTI1 wRzENMAsGA1UECg wEanVqdTE2MDQGA 1UECwwtcmFiYml0 bXEt pY2UgQ2VydGlmaW NhdGUgQXV0aG9ya XR5MIGfMA0GCSqG SIb3 BiQKBgQC0skntKE Nl4jhOw8TRMWVHM BsWaulwVr51sDGN AfIV JvYmXck5woZLwOh 8k10vnheVM3TB1U ALW0itDkQSmmrGy mLGH L+sg/QQmQtXbb/ LBEXzD3wDXXSJZK WpZs4ClRljUHwIt Qh/gi PBgNVHRMBAf8EBT ADAQH/MB0GA1UdD gQWBBRcRSzZ3Cgb /Cub fBgNVHSMEGDAWgB RcRSzZ3Cgb/ CubxmYfCPAGP0Kf pDALBgNV JKoZIhvcNAQEFBQ ADgYEAGs/ kT+XqC48IvoiZ5s 9SwlT9tngK l5/RUCn/ OU5gSDdvjf6nhxV 34DCufIeIi1wi9F IY3xfXw1deM q8hPKuvJ4Xf/ WwO/eoIAwi3iEao xlNStVw6P9kv1m8 tawcOXe TZNTqgpjtH6kRWL 5wRXG5ZVNHSrKSW 6FcF5mYSqBHC7dW wHCr DRVJUSUZJQ0FURS 0tLS0tCk1JSUM4V ENDQWRtZ0F3SUJB Z0lVV0xjM2NRbEJ 3enFEdWhzS091cm NxYi9EUDlNd0RRW UpLb1pJaHZjTkFR RUwKQlFBd0dqRVl NQllHQTFVRUF3d1 BSR2wyYVc1bFFYV jBhRzl5YVhSNU1C NFhEVEU1TURneU9 UQTJOVGMwTmxvWA pEVEU1TURreU9EQ TJOVGMwTjFvd0dq RVlNQllHQTFVRUF 3d1BSR2wyYVc1bF FYVjBhRzl5YVhSN U1JSUJJakFOCkJn a3Foa2lHOXcwQkF RRUZBQU9DQVE4QU 1JSUJDZ0tDQVFFQ TVId2pXMkdRUllj cGo5bFBvM05EMEo 5RGdZbU8KR1RaU0 grSjZvdENKMGxhU ENoaDlNSzFoZTd5 Rmk5b09QNkpDMUI xamNaRWxVUEdpRm 1uK3JRL2MvTGVSc UJrSQozS2U4R0FK cFlZT042WGU4cnk yRHR6WjJVNzNTOW NLRnZqWS8vQnkxM 1JSL3kzenB0NnRN ZHhSWEdyUXlaS1V PCk9nUWVXMkViMX BnMU1WekRZTE91M y96RHorT1NoSFF5 bUV2TEZQUFRjY1l uWTFEckRFTDNYZG tuVUJwWWduQ3cKU zR6Q0thZ1czVzVT SjJJSnZmbmVGenp qbCsrVDE4aWYzSG 1lcmpNVENtS3RxS 3VxMnpBc0VIdlNJ WHZGWElMaQpsUk9 tL2NnS2dEV1llY1 lyTVhxbHhCdzZkT Vg0Z24xUm9PMEc2 aEltWktyT1ZRdjI 5TTBlRTY2ZE5RSU RBUUFCCm95OHdMV EFhQmdOVkhSRUVF ekFSZ2c5RWFYWnB ibVZCZFhSb2IzSn BkSGt3RHdZRFZSM FRBUUgvQkFVd0F3 RUIKL3pBTkJna3F oa2lHOXcwQkFRc0 ZBQU9DQVFFQUZPT TB2bWp2d3MwNzcz aVZ3elNyMlQ5b3Q 1ZnAxbkthNXkvTQ piYzhEdDcwc1dVZ nptS3RQYVUzcVN3 U1kyZi9tVGNEblN RVFp4MHhsL2dMeG 9KL2NMOTlKMXlrc 0J6a0tNMCtuCnkx U0xSVmdta2o1QmF WZVdLU2U0Qi9XWX ppbVBvRDVJWENWU m5XV21NMHdiejVC cUFpQ1ZRdlNScWp Zb0lHQysKendibT JKdjdydThLbUcrT WNOOTZFMGJGe. ..
-----BEGIN CERTIFICATE-----
MIICdzCCAeCgAwI
BQAwRzENMAsGA1U
cnZpY2UgQ2VydGl
MDgyNzA2MjYzOVo
c2VydmVyIHNlcnZ
DQEBAQUAA4GNADC
+n92mzZEVXBNZ34
HdwM29r8gKYYHiy
PwIDAQABo2AwXjA
xmYfCPAGP0KfpDA
HQ8EBAMCAQYwDQY
ZHAdAUSjvOpjutJ
5R2XZsjCifSPc8g
VDH7zZdwPJ31dA4=
-----END CERTIFICATE-----
ubuntu@test:~$ juju run --unit octavia/0 'relation-ids amqp'
amqp:26
ubuntu@test:~$ juju run --unit octavia/0 'relation-get -r amqp:26 - rabbitmq-server/0'
egress-subnets: 10.5.0.52/32
hostname: 10.5.0.52
ingress-address: 10.5.0.52
password: sMPG4nw5KC4RGz3
private-address: 10.5.0.52
ssl_ca: LS0tLS1CRUdJTiB