Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Thanks for responding Bernd Bausch. Some progress has been made, although I've had to do a lot of guesswork since there aren't any guides on setting up a remote Mistral instance to connect to OpenStack.

What I appeared to be missing was having OpenStack installed on the host containing Mistral server. Once OpenStack service was installed, I was able to get mistral-db-manage to populate my controller DB without error (I also installed keystone on Mistral server, as I wasn't entirely sure if keystone is needed on a "client" OpenStack instance for connecting to a central controller which hosts DB).

So, current status is that I can get Mistral server to connect to my controller, however now I can't seem the Mistral client to find its service endpoint:

[root@controller techbart(keystone)]# mistral workbook-list
ERROR (app) Could not find requested endpoint in Service Catalog.

Here's how my API endpoints list for Mistral:

[root@controller techbart(keystone)]# openstack endpoint list |grep mistral
| 018b345eba1e43429871c6af55058874 | RegionOne | mistral      | workflowv2     | True    | admin     | http://10.100.0.30:8989/v2              |
| 6c2e38ff90e6432dabc029ec85a63e6d | RegionOne | mistral      | workflowv2     | True    | internal  | http://10.100.0.30:8989/v2              |
| bb6ed7d236c749499adc23a0161ecbc0 | RegionOne | mistral      | workflowv2     | True    | public    | http://10.100.0.30:8989/v2              |

And here is what I see when I curl for Mistral server IP and port:

[root@controller techbart(keystone)]# curl http://10.100.0.30:8989/
{"versions": [{"id": "v2.0", "status": "CURRENT", "links": [{"href": "http://10.100.0.30:8989/v2", "target": "v2", "rel": "self"}]}]}[

For reference, setup is as follows:

OpenStack Controller: 10.100.0.250 OpenStack Mistral: 10.100.0.30

So, Controller is hosting Keystone, Heat, Neutron, Glance, Placement and Mistral. Mistral instance is only running Mistral server, and I'm trying to get it connecting to Controller instance for Keystone validation and integration with Heat.

Any suggestions on how I might troubleshoot this? Cheers!

Thanks for responding Bernd Bausch. Some progress has been made, although I've had to do a lot of guesswork since there aren't any guides on setting up a remote Mistral instance to connect to OpenStack.

What I appeared to be missing was having OpenStack installed on the host containing Mistral server. Once OpenStack service was installed, I was able to get mistral-db-manage to populate my controller DB without error (I also installed keystone on Mistral server, as I wasn't entirely sure if keystone is needed on a "client" OpenStack instance for connecting to a central controller which hosts DB).

So, current status is that I can get Mistral server to connect to my controller, however now I can't seem to get the Mistral client (on Controller) to find its service endpoint:

[root@controller techbart(keystone)]# mistral workbook-list
ERROR (app) Could not find requested endpoint in Service Catalog.

Here's how my API endpoints list for Mistral:

[root@controller techbart(keystone)]# openstack endpoint list |grep mistral
| 018b345eba1e43429871c6af55058874 | RegionOne | mistral      | workflowv2     | True    | admin     | http://10.100.0.30:8989/v2              |
| 6c2e38ff90e6432dabc029ec85a63e6d | RegionOne | mistral      | workflowv2     | True    | internal  | http://10.100.0.30:8989/v2              |
| bb6ed7d236c749499adc23a0161ecbc0 | RegionOne | mistral      | workflowv2     | True    | public    | http://10.100.0.30:8989/v2              |

And here is what I see when I curl for Mistral server IP and port:

[root@controller techbart(keystone)]# curl http://10.100.0.30:8989/
{"versions": [{"id": "v2.0", "status": "CURRENT", "links": [{"href": "http://10.100.0.30:8989/v2", "target": "v2", "rel": "self"}]}]}[

For reference, setup is as follows:

OpenStack Controller: 10.100.0.250 OpenStack Mistral: 10.100.0.30

So, Controller is hosting Keystone, Heat, Neutron, Glance, Placement and Mistral. Mistral instance is only running Mistral server, and I'm trying to get it connecting to Controller instance for Keystone validation and integration with Heat.

Any suggestions on how I might troubleshoot this? Cheers!

Thanks for responding Bernd Bausch. Some progress has been made, although I've had to do a lot of guesswork since there aren't any guides on setting up a remote Mistral instance to connect to OpenStack.

What I appeared to be missing was having OpenStack installed on the host containing Mistral server. Once OpenStack service was installed, I was able to get mistral-db-manage to populate my controller DB without error (I also installed keystone on Mistral server, as I wasn't entirely sure if keystone is needed on a "client" OpenStack instance for connecting to a central controller which hosts DB).

So, current status is that I can get Mistral server to connect to my controller, however now I can't seem to get the Mistral client (on Controller) to find its service endpoint:

[root@controller techbart(keystone)]# mistral workbook-list
ERROR (app) Could not find requested endpoint in Service Catalog.

Here's how my API endpoints list for Mistral:

[root@controller techbart(keystone)]# openstack endpoint list |grep mistral
| 018b345eba1e43429871c6af55058874 | RegionOne | mistral      | workflowv2     | True    | admin     | http://10.100.0.30:8989/v2              |
| 6c2e38ff90e6432dabc029ec85a63e6d | RegionOne | mistral      | workflowv2     | True    | internal  | http://10.100.0.30:8989/v2              |
| bb6ed7d236c749499adc23a0161ecbc0 | RegionOne | mistral      | workflowv2     | True    | public    | http://10.100.0.30:8989/v2              |

And here is what I see when I curl for Mistral server IP and port:

[root@controller techbart(keystone)]# curl http://10.100.0.30:8989/
{"versions": [{"id": "v2.0", "status": "CURRENT", "links": [{"href": "http://10.100.0.30:8989/v2", "target": "v2", "rel": "self"}]}]}[

For reference, setup is as follows:

OpenStack Controller: 10.100.0.250 OpenStack Mistral: 10.100.0.30

So, Controller is hosting Keystone, Heat, Neutron, Glance, Placement and Mistral. Mistral instance is only running Mistral server, and I'm trying to get it connecting to Controller instance for Keystone validation and integration with Heat.

With regard to the command I used to populate DB, it was as follows:

mistral-db-manage --config-file /etc/mistral/mistral.conf populate
2020-08-31 13:28:09.961 2121 INFO mistral.db.sqlalchemy.migration.cli [-] Populating db
2020-08-31 13:28:10.897 2121 INFO mistral.expressions.yaql_expression [-] YAQL engine has been initialized with the options:
{'yaql.limitIterators': -1, 'yaql.memoryQuota': -1, 'yaql.convertTuplesToLists': True, 'yaql.convertSetsToLists': False, 'yaql.iterableDicts': False, 'yaql.convertOutputData': True, 'keyword_operator': '=>', 'allow_delegates': False}

Any suggestions on how I might troubleshoot this? Cheers!

Thanks for responding Bernd Bausch. Some progress has been made, although I've had to do a lot of guesswork since there aren't any guides on setting up a remote Mistral instance to connect to OpenStack.

What I appeared to be missing was having OpenStack installed on the host containing Mistral server. Once OpenStack service was installed, I was able to get mistral-db-manage to populate my controller DB without error (I also installed keystone on Mistral server, as I wasn't entirely sure if keystone is needed on a "client" OpenStack instance for connecting to a central controller which hosts DB).

So, current status is that I can get Mistral server to connect to my controller, however now I can't seem to get the Mistral client (on Controller) to find its service endpoint:

[root@controller techbart(keystone)]# mistral workbook-list
ERROR (app) Could not find requested endpoint in Service Catalog.

Here's how my API endpoints list for Mistral:

[root@controller techbart(keystone)]# openstack endpoint list |grep mistral
| 018b345eba1e43429871c6af55058874 | RegionOne | mistral      | workflowv2     | True    | admin     | http://10.100.0.30:8989/v2              |
| 6c2e38ff90e6432dabc029ec85a63e6d | RegionOne | mistral      | workflowv2     | True    | internal  | http://10.100.0.30:8989/v2              |
| bb6ed7d236c749499adc23a0161ecbc0 | RegionOne | mistral      | workflowv2     | True    | public    | http://10.100.0.30:8989/v2              |

And here is what I see when I curl for Mistral server IP and port:

[root@controller techbart(keystone)]# curl http://10.100.0.30:8989/
{"versions": [{"id": "v2.0", "status": "CURRENT", "links": [{"href": "http://10.100.0.30:8989/v2", "target": "v2", "rel": "self"}]}]}[

For reference, setup is as follows:

OpenStack Controller: 10.100.0.250 OpenStack Mistral: 10.100.0.30

So, Controller is hosting Keystone, Heat, Neutron, Glance, Placement and Mistral. Mistral instance is only running Mistral server, and I'm trying to get it connecting to Controller instance for Keystone validation and integration with Heat.

With regard to the command I used to populate DB, it was as follows:

mistral-db-manage --config-file /etc/mistral/mistral.conf populate
2020-08-31 13:28:09.961 2121 INFO mistral.db.sqlalchemy.migration.cli [-] Populating db
2020-08-31 13:28:10.897 2121 INFO mistral.expressions.yaql_expression [-] YAQL engine has been initialized with the options:
{'yaql.limitIterators': -1, 'yaql.memoryQuota': -1, 'yaql.convertTuplesToLists': True, 'yaql.convertSetsToLists': False, 'yaql.iterableDicts': False, 'yaql.convertOutputData': True, 'keyword_operator': '=>', 'allow_delegates': False}

Any suggestions on how I might troubleshoot this? Cheers!

UPDATE: The reason I couldn't get mistral client on Controller instance to access its API on Mistral host instance, is because I hadn't formatted my auth file correctly - I was missing "http://".

Now I'm able to have Mistral client on Controller instance contact its API on dedicated Mistral host. However, while I now have connectivity, I'm not seeing any workbooks returned:

[root@controller techbart(keystone)]# mistral workbook-list
+------+-----------+------+-------+------------+------------+
| Name | Namespace | Tags | Scope | Created at | Updated at |
+------+-----------+------+-------+------------+------------+
|      |           |      |       |            |            |
+------+-----------+------+-------+------------+------------+

I assume this is likely something missing on Mistral host instance, so does anyone have any tips on how I might correctly setup workbooks for this scenario?