Re: [openstack-dev] [murano] Is there blueprint to add argument collection UI for action

2015-12-06 Thread WANG, Ming Hao (Tony T)
Stan,

Thanks for your information very much.
I’m looking forward for this feature! ☺

Thanks,
Tony

From: Stan Lagun [mailto:sla...@mirantis.com]
Sent: Saturday, December 05, 2015 4:52 AM
To: WANG, Ming Hao (Tony T)
Cc: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [murano] Is there blueprint to add argument collection UI for 
action

Tony,

Here is the blueprint: https://blueprints.launchpad.net/murano/+spec/action-ui

The problem is much bigger then it seems to. Action parameters are very similar 
to regular application properties and thus there should be a dedicated dynamic 
UI form (think ui.yaml) for each action describing its inputs.
We discussed it many times and each time the resolution was that it is better 
to do major refactoring of dynamic UI forms before introducing additional 
forms. The intention was to either simplify or completely get rid of ui.yaml 
because it is yet another DSL to learn. Most of the information from ui.yaml 
could be obtained by examining MuranoPL class properties. And what is missing 
could be added as additional metadata right to the classes. However a lot of 
work requires to do it properly (starting from new API that would be 
MuranoPL-aware). That's why we still have no proper UI for the actions.

Maybe we should reconsider and to have many ui forms in single package until we 
have a better solution.



Sincerely yours,
Stan Lagun
Principal Software Engineer @ Mirantis

On Fri, Dec 4, 2015 at 5:42 AM, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:
Dear Stan and Murano developers,

The current murano-dashboards can add the action button for the actions defined 
in Murano class definition automatically, which is great.
Is there any blueprint to add argument collection UI for the action?
Currently, the murano-dashboards only uses environment_id + action_id to run 
the actions, and user has no way to provide action arguments from UI.

Thanks in advance,
Tony


__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [murano]How to use Murano to transmit files to Mistral and execute scripts on Mistral

2015-12-03 Thread WANG, Ming Hao (Tony T)
Stan,

I got it. Thanks for your information. ☺

Thanks,
Tony

From: Stan Lagun [mailto:sla...@mirantis.com]
Sent: Tuesday, December 01, 2015 4:21 PM
To: WANG, Ming Hao (Tony T)
Cc: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [murano]How to use Murano to transmit files to 
Mistral and execute scripts on Mistral


On Mon, Nov 30, 2015 at 5:07 AM, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:
For the object storage support, does Murano have any plan to support the 
auto-uploading function?

Murano has plans to support everything applications may need. It is just a 
matter of priorities/schedule/time etc. It will happen much sooner with your 
help/contributions.
Currently AFAIK there is no blueprint for this feature so nobody developing it

Sincerely yours,
Stan Lagun
Principal Software Engineer @ Mirantis
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [murano] Is there blueprint to add argument collection UI for action

2015-12-03 Thread WANG, Ming Hao (Tony T)
Dear Stan and Murano developers,

The current murano-dashboards can add the action button for the actions defined 
in Murano class definition automatically, which is great.
Is there any blueprint to add argument collection UI for the action?
Currently, the murano-dashboards only uses environment_id + action_id to run 
the actions, and user has no way to provide action arguments from UI.

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [murano]How to use Murano to transmit files to Mistral and execute scripts on Mistral

2015-11-29 Thread WANG, Ming Hao (Tony T)
Stan,

Thanks for your valuable comments!
For the object storage support, does Murano have any plan to support the 
auto-uploading function?

Thanks,
Tony

From: Stan Lagun [mailto:sla...@mirantis.com]
Sent: Sunday, November 29, 2015 6:32 AM
To: OpenStack Development Mailing List (not for usage questions)
Cc: WANG, Ming Hao (Tony T)
Subject: Re: [openstack-dev] [murano]How to use Murano to transmit files to 
Mistral and execute scripts on Mistral

Hi Tony,

Technically your solution is possible. Murano agent can be installed manually. 
All queue names are in agent's config file. Murano can talk to that manually 
installed agent and put files to that server.

However I strongly advice not to do that. First of all it is not secure. Murano 
agent was designed as a remote execution mechanism rather than a tool to 
transfer files. Also it was design to be installed on VM
rather that on a shared server. Currently there is no authentication for 
agents. Although it is not truly secure it still provides significant level of 
security because to make use of the agent you need to know its queue name
which is a long random string that only murano engine and agent know and AMQP 
doesn't provide an API to query list of queue names. But if you install agent 
manually there will be a single queue. And all applications that
need to access that agent will also need to know queue name. Thus it can be 
easily be compromised and attackers will gain ability to execute arbitrary code 
on the nova server.

It is also doesn't seem like a right solution. There should not be such 
specific requirements like this to perform such trivial thing. Especially if it 
involves using tool that was design for something else.

So what is the right solution?

I can see 2 possible ways to address this issue:

1. Improve Mistral API to support file attachments to its workbooks (if it 
doesn't support it yet). Improve murano-mistral integration to support this 
feature.
2. Implement integration of Murano with object storage. Thus it will be 
possible from Murano workflow to upload file and provide Mistral with a URI to 
it.

Solution #2 seem to be better. At least because it opens new possibilities for 
all applications and not just those that use Mistral.

There is also a workaround that I can think of: make Murano application create 
temporary VM with FTP server or something like that, put file into it and give 
Mistral a URI it could use to access the file.

Sincerely yours,
Stan Lagun
Principal Software Engineer @ Mirantis

On Wed, Nov 18, 2015 at 1:06 PM, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:
Dear Alexander and Murano developers and testers,

Any suggestion for this? ☺

Thanks,
Tony

From: WANG, Ming Hao (Tony T)
Sent: Tuesday, November 17, 2015 6:12 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: RE: [openstack-dev] [murano]How to use Murano to transmit files to 
Mistral and execute scripts on Mistral

Alexander,

Thanks for your response.
During the workflow running stage, it may need to access some other artifacts.
In my case, I use Mistral workflow to call Ansible playbook, and I need Murano 
to put Ansible playbook into right place on Mistral server so that Mistral 
workflow can find it.

Thanks,
Tony

From: Alexander Tivelkov [mailto:ativel...@mirantis.com]
Sent: Tuesday, November 17, 2015 4:19 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [murano]How to use Murano to transmit files to 
Mistral and execute scripts on Mistral

Hi Tony,

Probably I am missing something, but why do you need Murano Agent to interact 
with Mistral? You can call Mistral APIs right from MuranoPL code being executed 
by Murano Engine. Murano's core library contains the 
io.murano.system.MistralClient class ([1]) which may be used to upload and run 
mistral workflows.

Please let me know if you need more details on this

[1]  
https://github.com/openstack/murano/blob/master/murano/engine/system/mistralclient.py

On Tue, Nov 17, 2015 at 5:07 AM WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:
Dear Murano developers and testers,

I want to put some files that Mistral workflow needs into Murano package, and 
hope Murano can transmit them to Mistral before it calls Mistral workflow.
The flow should be as following:

1.   User uploads one Murano package which includes both Murano 
artifacts and Mistral artifacts to Murano;

2.   Murano transmits the Mistral artifacts to Mistral, and 
Mistral does its work.

After study, I thought muranoagent may be helpful and plan to install a 
muranoagent on the Mistral server since it can put files into nova server, and 
can run scripts on the nova server.
After further study, I found muranoagent solution may be not feasible:

1.   muranoagent and murano-e

Re: [openstack-dev] [murano] Is it possible to use Murano RESTful API to create and deploy an application

2015-11-26 Thread WANG, Ming Hao (Tony T)
Hi Anastasia,

Thanks for your information.
“environment-apps-edit” can be used as “environment-apps-create”, I got it. ☺

Thanks,
Tony
From: Anastasia Kuznetsova [mailto:akuznets...@mirantis.com]
Sent: Thursday, November 26, 2015 4:35 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [murano] Is it possible to use Murano RESTful API 
to create and deploy an application

Hi Tony,

We have already implemented commands which allow user to configure and deploy 
environments via CLI.
Please, take a look to this article: 
http://docs.openstack.org/developer/murano/draft/enduser-guide/deploying_using_cli.html

On Thu, Nov 26, 2015 at 9:18 AM, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:
Dear Murano developers and testers,

I want to use Murano RESTful API to create and deploy an application.
Based on my current understanding, I want to use muranoclient cli as following:

1.   “environment-create” to create Murano environment;

2.   “environment-session-create” to create session for the environment;

3.   “environment-apps-create” to create application for the session.

This command hasn’t been implemented yet, thus I implement it by studying 
“do_environment_apps_edit” to send POST request to “services” object.

Could you please help to check if my thought is right?

If it is right, I meet the following issue:
When an environment includes several applications, I need to generate an uuid 
for each application, and use the uuid to let one application reference to 
another application.
It is a little strange to let user provide this kind of information, and I 
doubt if I’m using Murano in a wrong way, and Murano isn’t designed for this.

Could you please help to check? Is Murano designed to be able to expose RESTful 
to do all the works(including application creation/deployment) that user can do 
from UI?

Please advice,
Thanks,
Tony


__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe<http://openstack-dev-requ...@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



--
Best regards,
Anastasia Kuznetsova
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [murano] Is it possible to use Murano RESTful API to create and deploy an application

2015-11-25 Thread WANG, Ming Hao (Tony T)
Dear Murano developers and testers,

I want to use Murano RESTful API to create and deploy an application.
Based on my current understanding, I want to use muranoclient cli as following:

1.   "environment-create" to create Murano environment;

2.   "environment-session-create" to create session for the environment;

3.   "environment-apps-create" to create application for the session.

This command hasn't been implemented yet, thus I implement it by studying 
"do_environment_apps_edit" to send POST request to "services" object.

Could you please help to check if my thought is right?

If it is right, I meet the following issue:
When an environment includes several applications, I need to generate an uuid 
for each application, and use the uuid to let one application reference to 
another application.
It is a little strange to let user provide this kind of information, and I 
doubt if I'm using Murano in a wrong way, and Murano isn't designed for this.

Could you please help to check? Is Murano designed to be able to expose RESTful 
to do all the works(including application creation/deployment) that user can do 
from UI?

Please advice,
Thanks,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [murano]How to use Murano to transmit files to Mistral and execute scripts on Mistral

2015-11-18 Thread WANG, Ming Hao (Tony T)
Dear Alexander and Murano developers and testers,

Any suggestion for this? ☺

Thanks,
Tony

From: WANG, Ming Hao (Tony T)
Sent: Tuesday, November 17, 2015 6:12 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: RE: [openstack-dev] [murano]How to use Murano to transmit files to 
Mistral and execute scripts on Mistral

Alexander,

Thanks for your response.
During the workflow running stage, it may need to access some other artifacts.
In my case, I use Mistral workflow to call Ansible playbook, and I need Murano 
to put Ansible playbook into right place on Mistral server so that Mistral 
workflow can find it.

Thanks,
Tony

From: Alexander Tivelkov [mailto:ativel...@mirantis.com]
Sent: Tuesday, November 17, 2015 4:19 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [murano]How to use Murano to transmit files to 
Mistral and execute scripts on Mistral

Hi Tony,

Probably I am missing something, but why do you need Murano Agent to interact 
with Mistral? You can call Mistral APIs right from MuranoPL code being executed 
by Murano Engine. Murano's core library contains the 
io.murano.system.MistralClient class ([1]) which may be used to upload and run 
mistral workflows.

Please let me know if you need more details on this

[1]  
https://github.com/openstack/murano/blob/master/murano/engine/system/mistralclient.py

On Tue, Nov 17, 2015 at 5:07 AM WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:
Dear Murano developers and testers,

I want to put some files that Mistral workflow needs into Murano package, and 
hope Murano can transmit them to Mistral before it calls Mistral workflow.
The flow should be as following:

1.   User uploads one Murano package which includes both Murano 
artifacts and Mistral artifacts to Murano;

2.   Murano transmits the Mistral artifacts to Mistral, and 
Mistral does its work.

After study, I thought muranoagent may be helpful and plan to install a 
muranoagent on the Mistral server since it can put files into nova server, and 
can run scripts on the nova server.
After further study, I found muranoagent solution may be not feasible:

1.   muranoagent and murano-engine(dsl) uses rabbitMQ to 
communicate.

2.   When an Agent object is created in DSL, murano-engine 
creates a unique message queue to communicate with the muranoagent in nova 
instance:
The queue name consists of current murano environment id, and the nova instance 
murano object id.

3.   During murano creates the nova instance, it passes this 
unique queue name via nova user_data to muranoagent on guest.
In this way, muranoagents on different guests can communicate with 
murano-engine separately.
This doesn’t suit the muranoagent + Mistral server solution.
We only want to install one muranoagent in Mistral server, and it should only 
listen on one message queue.
We can’t create  new muranoagent for each murano environment.
To achieve this, one solution that I can think is to modify murano code to 
implement a new MistralAgent to listen on a pre-defined message queue.

Could you please share your ideas about this?
If you have other solution, please also help to share it.  ☺•

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe<http://openstack-dev-requ...@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
--
Regards,
Alexander Tivelkov
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [murano]How to use Murano to transmit files to Mistral and execute scripts on Mistral

2015-11-17 Thread WANG, Ming Hao (Tony T)
Alexander,

Thanks for your response.
During the workflow running stage, it may need to access some other artifacts.
In my case, I use Mistral workflow to call Ansible playbook, and I need Murano 
to put Ansible playbook into right place on Mistral server so that Mistral 
workflow can find it.

Thanks,
Tony

From: Alexander Tivelkov [mailto:ativel...@mirantis.com]
Sent: Tuesday, November 17, 2015 4:19 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [murano]How to use Murano to transmit files to 
Mistral and execute scripts on Mistral

Hi Tony,

Probably I am missing something, but why do you need Murano Agent to interact 
with Mistral? You can call Mistral APIs right from MuranoPL code being executed 
by Murano Engine. Murano's core library contains the 
io.murano.system.MistralClient class ([1]) which may be used to upload and run 
mistral workflows.

Please let me know if you need more details on this

[1]  
https://github.com/openstack/murano/blob/master/murano/engine/system/mistralclient.py

On Tue, Nov 17, 2015 at 5:07 AM WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:
Dear Murano developers and testers,

I want to put some files that Mistral workflow needs into Murano package, and 
hope Murano can transmit them to Mistral before it calls Mistral workflow.
The flow should be as following:

1.   User uploads one Murano package which includes both Murano 
artifacts and Mistral artifacts to Murano;

2.   Murano transmits the Mistral artifacts to Mistral, and 
Mistral does its work.

After study, I thought muranoagent may be helpful and plan to install a 
muranoagent on the Mistral server since it can put files into nova server, and 
can run scripts on the nova server.
After further study, I found muranoagent solution may be not feasible:

1.   muranoagent and murano-engine(dsl) uses rabbitMQ to 
communicate.

2.   When an Agent object is created in DSL, murano-engine 
creates a unique message queue to communicate with the muranoagent in nova 
instance:
The queue name consists of current murano environment id, and the nova instance 
murano object id.

3.   During murano creates the nova instance, it passes this 
unique queue name via nova user_data to muranoagent on guest.
In this way, muranoagents on different guests can communicate with 
murano-engine separately.
This doesn’t suit the muranoagent + Mistral server solution.
We only want to install one muranoagent in Mistral server, and it should only 
listen on one message queue.
We can’t create  new muranoagent for each murano environment.
To achieve this, one solution that I can think is to modify murano code to 
implement a new MistralAgent to listen on a pre-defined message queue.

Could you please share your ideas about this?
If you have other solution, please also help to share it.  ☺•

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe<http://openstack-dev-requ...@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
--
Regards,
Alexander Tivelkov
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [murano]How to use Murano to transmit files to Mistral and execute scripts on Mistral

2015-11-16 Thread WANG, Ming Hao (Tony T)
Dear Murano developers and testers,

I want to put some files that Mistral workflow needs into Murano package, and 
hope Murano can transmit them to Mistral before it calls Mistral workflow.
The flow should be as following:

1.   User uploads one Murano package which includes both Murano 
artifacts and Mistral artifacts to Murano;

2.   Murano transmits the Mistral artifacts to Mistral, and 
Mistral does its work.

After study, I thought muranoagent may be helpful and plan to install a 
muranoagent on the Mistral server since it can put files into nova server, and 
can run scripts on the nova server.
After further study, I found muranoagent solution may be not feasible:

1.   muranoagent and murano-engine(dsl) uses rabbitMQ to 
communicate.

2.   When an Agent object is created in DSL, murano-engine 
creates a unique message queue to communicate with the muranoagent in nova 
instance:
The queue name consists of current murano environment id, and the nova instance 
murano object id.

3.   During murano creates the nova instance, it passes this 
unique queue name via nova user_data to muranoagent on guest.
In this way, muranoagents on different guests can communicate with 
murano-engine separately.
This doesn’t suit the muranoagent + Mistral server solution.
We only want to install one muranoagent in Mistral server, and it should only 
listen on one message queue.
We can’t create  new muranoagent for each murano environment.
To achieve this, one solution that I can think is to modify murano code to 
implement a new MistralAgent to listen on a pre-defined message queue.

Could you please share your ideas about this?
If you have other solution, please also help to share it.  ☺

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) in Mistral

2015-10-21 Thread WANG, Ming Hao (Tony T)
Renat,

Thanks for your valuable suggestions!

Tony

From: Renat Akhmerov [mailto:rakhme...@mirantis.com]
Sent: Wednesday, October 21, 2015 2:35 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as 
Ansible) in Mistral


On 20 Oct 2015, at 14:58, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:

Another question is:
If I use custom action to run Ansible, the Ansible playbook should be stored on 
the same server of Mistral. Is it right?

Depends on how this action is implemented (it can, for example, do ssh to other 
servers) but the simplest implementation would be with playbooks on the same 
server, yes.

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) in Mistral

2015-10-20 Thread WANG, Ming Hao (Tony T)
Renat,

Another question is:
If I use custom action to run Ansible, the Ansible playbook should be stored on 
the same server of Mistral. Is it right?

Thanks,
Tony

From: Renat Akhmerov [mailto:rakhme...@mirantis.com]
Sent: Monday, October 19, 2015 2:58 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as 
Ansible) in Mistral


On 19 Oct 2015, at 07:53, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:

The “custom action” needs to re-install Mistral.
If the Mistral service is part of 3rd party OpenStack, it may be unacceptable 
to let every user create his own customer action. What do you think?

Yes, correct. It requires reinstall. If your goal is to give users possibility 
to create custom actions "on the fly” then it’s now impossible in Mistral for 
fundamental reasons. We can’t let users upload arbitrary Python code via API 
for security reasons. However, we have a couple of ideas that we’re going to 
explore in order to partially close this gap:

  *   Keep action code on a client-side, sort of what StackStorm does. But IMO 
we could think about automating it in a more elegant and transparent way. For 
example, we could use decorators in python code that would associate a function 
or a class with a certain workflow task. Then a workflow could call this code 
back while its running using some mechanism (i.e. some special action). In this 
case, however, we’d have to have a process handling callback requests from 
Mistral on a client side. The alternative: using HTTP Long Poll mechanism so 
that a client could claim available tasks itself.
  *   We have BP [1] that describes the idea of using so-called action 
providers. It assumes that we can register trustworthy action providers that 
could dynamically provide new actions to Mistral. I personally like this idea 
and to some extent it would solve this issue but it requires some additional 
setup which works for cases like StackStorm but doesn’t work if we want to use 
Mistral as is, as a hosted workflow service.

Anyway, whatever solution we accept it will be a trade-off and depend on a 
particular use case.

Ad-hoc actions may also work for you if, for example, we create enough base 
actions that they could be built upon. Say if most of your actions are HTTP 
based then you can just create your own library (e.g. a workbook) of ad-hoc 
actions that will be wrappers around std.http.

Also look at what StackStorm does, it may also be helpful.

Thanks

[1] https://blueprints.launchpad.net/mistral/+spec/action-providers
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) in Mistral

2015-10-19 Thread WANG, Ming Hao (Tony T)
Renat,

Thanks for your info.
I like your 
option2(https://blueprints.launchpad.net/mistral/+spec/action-providers). ☺
Any schedule for this? Looks like it isn’t started yet.

Thanks,
Tony

From: Renat Akhmerov [mailto:rakhme...@mirantis.com]
Sent: Monday, October 19, 2015 2:58 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as 
Ansible) in Mistral


On 19 Oct 2015, at 07:53, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:

The “custom action” needs to re-install Mistral.
If the Mistral service is part of 3rd party OpenStack, it may be unacceptable 
to let every user create his own customer action. What do you think?

Yes, correct. It requires reinstall. If your goal is to give users possibility 
to create custom actions "on the fly” then it’s now impossible in Mistral for 
fundamental reasons. We can’t let users upload arbitrary Python code via API 
for security reasons. However, we have a couple of ideas that we’re going to 
explore in order to partially close this gap:

  *   Keep action code on a client-side, sort of what StackStorm does. But IMO 
we could think about automating it in a more elegant and transparent way. For 
example, we could use decorators in python code that would associate a function 
or a class with a certain workflow task. Then a workflow could call this code 
back while its running using some mechanism (i.e. some special action). In this 
case, however, we’d have to have a process handling callback requests from 
Mistral on a client side. The alternative: using HTTP Long Poll mechanism so 
that a client could claim available tasks itself.
  *   We have BP [1] that describes the idea of using so-called action 
providers. It assumes that we can register trustworthy action providers that 
could dynamically provide new actions to Mistral. I personally like this idea 
and to some extent it would solve this issue but it requires some additional 
setup which works for cases like StackStorm but doesn’t work if we want to use 
Mistral as is, as a hosted workflow service.

Anyway, whatever solution we accept it will be a trade-off and depend on a 
particular use case.

Ad-hoc actions may also work for you if, for example, we create enough base 
actions that they could be built upon. Say if most of your actions are HTTP 
based then you can just create your own library (e.g. a workbook) of ad-hoc 
actions that will be wrappers around std.http.

Also look at what StackStorm does, it may also be helpful.

Thanks

[1] https://blueprints.launchpad.net/mistral/+spec/action-providers
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) in Mistral

2015-10-19 Thread WANG, Ming Hao (Tony T)
Dmitri,

>From StackStorm's document, it can run Mistral's workflow, and Mistral 
>workflow can call StackStorm custom actions.
Could you please help to explain how it is implemented?

examples.mistral-basic:
description: A basic workflow that runs an arbitrary linux command.
type: direct
input:
- cmd
output:
stdout: <% $.stdout %>
tasks:
task1:
action: core.local cmd=<% $.cmd %> <<<< Here calls StackStorm 
custom action.
publish:
stdout: <% $.task1.stdout %>
stderr: <% $.task1.stderr %>

Thanks,
Tony


From: Dmitri Zimine [mailto:dzim...@stackstorm.com]
Sent: Sunday, October 18, 2015 1:27 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as 
Ansible) in Mistral

Tony,

You can also connect Mistral with Ansible via StackStorm and Ansible 
integration pack:
1) StackStorm http://docs.stackstorm.com
2) https://github.com/StackStorm/st2contrib/tree/master/packs/ansible

StackStorm is open-source Apache 2.0 "wrapper" around Mistral workflow service 
that integrates 3rd party tools.

Disclosure: I work for StackStorm, I think it's appropriate to pitch here an 
open source project that addresses the problem.

DZ.


On Oct 15, 2015, at 11:35 PM, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:


Dear Mistral developers and testers,

We have developed some Ansible playbooks for operation automation, and we are 
investigating if we can change the automation engine from Ansible to Mistral 
since Mistral has powerful workflow control.
Could you please help to provide how to let Mistral call Ansible playbook or 
Ansible module?
My understanding is to use ssh std_action to let Mistral access Ansible server 
to call Ansible playbook/modules since Mistral ad-hoc action must base on an 
existing system action.

Another question is:
If we install Mistral and Ansible on a same server, is it possible to simplify 
it?

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
openstack-dev-requ...@lists.openstack.org<mailto:openstack-dev-requ...@lists.openstack.org>?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) in Mistral

2015-10-19 Thread WANG, Ming Hao (Tony T)
Dmitri,

I think I got it.

"st2/st2common/st2common/util/workflow/mistral.py"
StackStorm uses function "_transform_action" here to transform action from 
StackStorm action style to "st2.action" style, and then call Mistral to execute 
workflow, since "st2.action" is Mistral's custom action.
Please help to double confirm.

Thanks,
Tony

From: WANG, Ming Hao (Tony T)
Sent: Monday, October 19, 2015 6:56 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: RE: [openstack-dev] [mistral] How to call 3rd-party tools(such as 
Ansible) in Mistral

Dmitri,

>From StackStorm's document, it can run Mistral's workflow, and Mistral 
>workflow can call StackStorm custom actions.
Could you please help to explain how it is implemented?

examples.mistral-basic:
description: A basic workflow that runs an arbitrary linux command.
type: direct
input:
- cmd
output:
stdout: <% $.stdout %>
tasks:
task1:
action: core.local cmd=<% $.cmd %> <<<< Here calls StackStorm 
custom action.
publish:
stdout: <% $.task1.stdout %>
stderr: <% $.task1.stderr %>

Thanks,
Tony


From: Dmitri Zimine [mailto:dzim...@stackstorm.com]
Sent: Sunday, October 18, 2015 1:27 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as 
Ansible) in Mistral

Tony,

You can also connect Mistral with Ansible via StackStorm and Ansible 
integration pack:
1) StackStorm http://docs.stackstorm.com
2) https://github.com/StackStorm/st2contrib/tree/master/packs/ansible

StackStorm is open-source Apache 2.0 "wrapper" around Mistral workflow service 
that integrates 3rd party tools.

Disclosure: I work for StackStorm, I think it's appropriate to pitch here an 
open source project that addresses the problem.

DZ.


On Oct 15, 2015, at 11:35 PM, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:

Dear Mistral developers and testers,

We have developed some Ansible playbooks for operation automation, and we are 
investigating if we can change the automation engine from Ansible to Mistral 
since Mistral has powerful workflow control.
Could you please help to provide how to let Mistral call Ansible playbook or 
Ansible module?
My understanding is to use ssh std_action to let Mistral access Ansible server 
to call Ansible playbook/modules since Mistral ad-hoc action must base on an 
existing system action.

Another question is:
If we install Mistral and Ansible on a same server, is it possible to simplify 
it?

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
openstack-dev-requ...@lists.openstack.org<mailto:openstack-dev-requ...@lists.openstack.org>?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) in Mistral

2015-10-18 Thread WANG, Ming Hao (Tony T)
Renat,

Thanks for your valuable comments. ☺
The “custom action” needs to re-install Mistral.
If the Mistral service is part of 3rd party OpenStack, it may be unacceptable 
to let every user create his own customer action. What do you think?

Thanks,
Tony


From: Renat Akhmerov [mailto:rakhme...@mirantis.com]
Sent: Saturday, October 17, 2015 3:25 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as 
Ansible) in Mistral

Hi, see my answers inline.

On 16 Oct 2015, at 12:35, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:

We have developed some Ansible playbooks for operation automation, and we are 
investigating if we can change the automation engine from Ansible to Mistral 
since Mistral has powerful workflow control.
Could you please help to provide how to let Mistral call Ansible playbook or 
Ansible module?

I would recommend to write a custom action (not ad-hoc actions in DSL, they are 
pretty limited). You can just write a python class and make it available in 
Mistral workflow. It is pretty easy to do and described at [1]. In Python 
you’ll have more control on how to call ansible properly. If you have any 
specific questions on that you can join our IRC channel #openstack-mistral and 
talk to us there.


My understanding is to use ssh std_action to let Mistral access Ansible server 
to call Ansible playbook/modules since Mistral ad-hoc action must base on an 
existing system action.

Yes, you can use std.ssh action but I guess it won’t be too convenient because 
you’ll have to deal with shell commands directly. Yes, ad-hoc actions can help 
you do it in a more elegant manner but they are pretty limited and allow to 
create only wrappers. With Python custom actions (it can be a class hierarchy, 
for example) you can do much more. For instance, you can expose individual 
ansible actions and transform their params in a form that better fits workflow 
DSL.

Anyway, it’s just my preference. You may like this second option better.


Another question is:
If we install Mistral and Ansible on a same server, is it possible to simplify 
it?

Yes, like I described above.

[1] 
http://docs.openstack.org/developer/mistral/developer/creating_custom_action.html


Renat Akhmerov
@ Mirantis Inc.

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) in Mistral

2015-10-18 Thread WANG, Ming Hao (Tony T)
Dmitri,

Thanks for your valuable info. :)
I suppose  the flow here should be:
Mistral calls StackStorm, and StackStorm calls Ansible. Is it right?
The big benefit here should be we only need to install StackStorm custom action 
into Mistral, and StackStorm will handle all the interfaces to other automation 
tools, such as Ansible. Is it right?

Thanks,
Tony

From: Dmitri Zimine [mailto:dzim...@stackstorm.com]
Sent: Sunday, October 18, 2015 1:27 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as 
Ansible) in Mistral

Tony,

You can also connect Mistral with Ansible via StackStorm and Ansible 
integration pack:
1) StackStorm http://docs.stackstorm.com
2) https://github.com/StackStorm/st2contrib/tree/master/packs/ansible

StackStorm is open-source Apache 2.0 "wrapper" around Mistral workflow service 
that integrates 3rd party tools.

Disclosure: I work for StackStorm, I think it's appropriate to pitch here an 
open source project that addresses the problem.

DZ.


On Oct 15, 2015, at 11:35 PM, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:


Dear Mistral developers and testers,

We have developed some Ansible playbooks for operation automation, and we are 
investigating if we can change the automation engine from Ansible to Mistral 
since Mistral has powerful workflow control.
Could you please help to provide how to let Mistral call Ansible playbook or 
Ansible module?
My understanding is to use ssh std_action to let Mistral access Ansible server 
to call Ansible playbook/modules since Mistral ad-hoc action must base on an 
existing system action.

Another question is:
If we install Mistral and Ansible on a same server, is it possible to simplify 
it?

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
openstack-dev-requ...@lists.openstack.org<mailto:openstack-dev-requ...@lists.openstack.org>?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) in Mistral

2015-10-16 Thread WANG, Ming Hao (Tony T)
Dear Mistral developers and testers,

We have developed some Ansible playbooks for operation automation, and we are 
investigating if we can change the automation engine from Ansible to Mistral 
since Mistral has powerful workflow control.
Could you please help to provide how to let Mistral call Ansible playbook or 
Ansible module?
My understanding is to use ssh std_action to let Mistral access Ansible server 
to call Ansible playbook/modules since Mistral ad-hoc action must base on an 
existing system action.

Another question is:
If we install Mistral and Ansible on a same server, is it possible to simplify 
it?

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) in Mistral

2015-10-16 Thread WANG, Ming Hao (Tony T)
Another question is:
If I want to call a user-defined script in Mistral, what action should be used?
Still use "ssh std_action"?

Thanks in advance,
Tony

From: WANG, Ming Hao (Tony T) [mailto:tony.a.w...@alcatel-lucent.com]
Sent: Friday, October 16, 2015 2:36 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: [openstack-dev] [mistral] How to call 3rd-party tools(such as Ansible) 
in Mistral

Dear Mistral developers and testers,

We have developed some Ansible playbooks for operation automation, and we are 
investigating if we can change the automation engine from Ansible to Mistral 
since Mistral has powerful workflow control.
Could you please help to provide how to let Mistral call Ansible playbook or 
Ansible module?
My understanding is to use ssh std_action to let Mistral access Ansible server 
to call Ansible playbook/modules since Mistral ad-hoc action must base on an 
existing system action.

Another question is:
If we install Mistral and Ansible on a same server, is it possible to simplify 
it?

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron-LBaaS] Can anyone help to share a procedure to install lbaas on Kilo?

2015-10-13 Thread WANG, Ming Hao (Tony T)
Kobi,

Thanks for your info very much!
Is there any document to install lbaas manually?
My environment is installed manually instead by devstack or packstack.

Thanks,
Tony

From: Kobi Samoray [mailto:ksamo...@vmware.com]
Sent: Tuesday, October 13, 2015 7:55 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [neutron-LBaaS] Can anyone help to share a 
procedure to install lbaas on Kilo?

Hi Tony,
Try the following:
https://chapter60.wordpress.com/2015/02/20/installing-openstack-lbaas-version-2-on-kilo-using-devstack/


On Oct 13, 2015, at 14:11, WANG, Ming Hao (Tony T) 
<tony.a.w...@alcatel-lucent.com<mailto:tony.a.w...@alcatel-lucent.com>> wrote:

I installed an OpenStack environment manually, and I can’t use devstack or 
packstack to install neutron lbaas.
Can anyone help to share a procedure to install lbaas on Kilo? I can’t find one 
from Google. ☹

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
openstack-dev-requ...@lists.openstack.org<mailto:openstack-dev-requ...@lists.openstack.org>?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [neutron-LBaaS] Can anyone help to share a procedure to install lbaas on Kilo?

2015-10-13 Thread WANG, Ming Hao (Tony T)
I installed an OpenStack environment manually, and I can't use devstack or 
packstack to install neutron lbaas.
Can anyone help to share a procedure to install lbaas on Kilo? I can't find one 
from Google. :(

Thanks in advance,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to setup multiple neutron networks for one container?

2015-09-27 Thread WANG, Ming Hao (Tony T)
Russell and Kevin,

Thanks for your detail information!
I got it.

Thanks again,
Tony

-Original Message-
From: Russell Bryant [mailto:rbry...@redhat.com] 
Sent: Monday, September 28, 2015 4:18 AM
To: Kevin Benton; OpenStack Development Mailing List (not for usage questions)
Cc: WANG, Ming Hao (Tony T)
Subject: Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to 
setup multiple neutron networks for one container?

On 09/27/2015 06:50 AM, Kevin Benton wrote:
> Assuming it implements the normal provider networks API, you just 
> specify the segmentation_id when you create the network.
> 
> neutron net-create NET_NAME --provider:network_type vlan 
> --provider:physical_network physnet1 --provider:segmentation_id 
> VLAN_TAG

Yes, the OVN plugin will implement the normal provider networks API.
It's a WIP.

My first goal was to just implement support for "--provider:network_type flat" 
end to end.  I have the OVN side merged and now I'm working on the Neutron 
plugin piece.  Once that's done, I'll go back add add VLAN support, which 
shouldn't be very difficult at that point.  I'm aiming to have all of that done 
by the Tokyo summit (among other things).

> On Sun, Sep 27, 2015 at 9:50 AM, WANG, Ming Hao (Tony T) 
> <tony.a.w...@alcatel-lucent.com 
> <mailto:tony.a.w...@alcatel-lucent.com>>
> wrote:
> 
> Russell,
> 
> Another question is about "localnet". It is a very useful feature. 
> :-)
> 
> Is it possible to assign which VLAN tag will be used for a specific
> provider network?
> In your example in
> 
> https://github.com/openvswitch/ovs/commit/c02819293d52f7ea7b714242d871b2b01f57f905
> : "physnet1" is used as physical network, and br-eth1 is used as the
> provider network OpenFlow switch.
> If we can assign the VLAN tag of the provider network, is the VLAN
> tag translation done by "br-int" or "br-eth1"?


--
Russell Bryant
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to setup multiple neutron networks for one container?

2015-09-27 Thread WANG, Ming Hao (Tony T)
Russell,

Another question is about "localnet". It is a very useful feature. :-)

Is it possible to assign which VLAN tag will be used for a specific provider 
network?
In your example in 
https://github.com/openvswitch/ovs/commit/c02819293d52f7ea7b714242d871b2b01f57f905
 : "physnet1" is used as physical network, and br-eth1 is used as the provider 
network OpenFlow switch.
If we can assign the VLAN tag of the provider network, is the VLAN tag 
translation done by "br-int" or "br-eth1"?


Thanks,
Tony

-----Original Message-
From: WANG, Ming Hao (Tony T) 
Sent: Sunday, September 27, 2015 2:26 PM
To: 'Russell Bryant'; OpenStack Development Mailing List (not for usage 
questions)
Subject: RE: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to 
setup multiple neutron networks for one container?

Russell,

Thanks for your valuable information.
I understood Geneve is some kind of tunnel format for network virtualization 
encapsulation, just like VxLAN.
But I'm still confused by the connection between Geneve and VTEP.
I suppose VTEP should be on behalf of "VxLAN Tunnel Endpoint", which should be 
used for VxLAN only.

Does it become some "common tunnel endpoint" in OVN, and can be also used as a 
tunnel endpoint for Geneve?

Thanks,
Tony
-Original Message-
From: Russell Bryant [mailto:rbry...@redhat.com] 
Sent: Friday, September 25, 2015 12:04 AM
To: WANG, Ming Hao (Tony T); OpenStack Development Mailing List (not for usage 
questions)
Subject: Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to 
setup multiple neutron networks for one container?

On 09/24/2015 10:37 AM, WANG, Ming Hao (Tony T) wrote:
> Russell,
> 
> Thanks for your detail explanation and kind help!
> I have understand how container in VM can acquire network interfaces in 
> different neutron networks now.
> For the connections between compute nodes, I think I need to study Geneve 
> protocol and VTEP first.
> Any further question, I may need to continue consulting you. :-)

OVN uses Geneve in conceptually the same way as to how the Neutron reference 
implementation (ML2+OVS) uses VxLAN to create overlay networks among the 
compute nodes for tenant overlay networks.

VTEP gateways or provider networks come into play when you want to connect 
these overlay networks to physical, or "underlay" networks.

Hope that helps,

--
Russell Bryant

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to setup multiple neutron networks for one container?

2015-09-27 Thread WANG, Ming Hao (Tony T)
Russell,

Thanks for your valuable information.
I understood Geneve is some kind of tunnel format for network virtualization 
encapsulation, just like VxLAN.
But I'm still confused by the connection between Geneve and VTEP.
I suppose VTEP should be on behalf of "VxLAN Tunnel Endpoint", which should be 
used for VxLAN only.

Does it become some "common tunnel endpoint" in OVN, and can be also used as a 
tunnel endpoint for Geneve?

Thanks,
Tony
-Original Message-
From: Russell Bryant [mailto:rbry...@redhat.com] 
Sent: Friday, September 25, 2015 12:04 AM
To: WANG, Ming Hao (Tony T); OpenStack Development Mailing List (not for usage 
questions)
Subject: Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to 
setup multiple neutron networks for one container?

On 09/24/2015 10:37 AM, WANG, Ming Hao (Tony T) wrote:
> Russell,
> 
> Thanks for your detail explanation and kind help!
> I have understand how container in VM can acquire network interfaces in 
> different neutron networks now.
> For the connections between compute nodes, I think I need to study Geneve 
> protocol and VTEP first.
> Any further question, I may need to continue consulting you. :-)

OVN uses Geneve in conceptually the same way as to how the Neutron reference 
implementation (ML2+OVS) uses VxLAN to create overlay networks among the 
compute nodes for tenant overlay networks.

VTEP gateways or provider networks come into play when you want to connect 
these overlay networks to physical, or "underlay" networks.

Hope that helps,

--
Russell Bryant

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to setup multiple neutron networks for one container?

2015-09-24 Thread WANG, Ming Hao (Tony T)
Russell,

Thanks for your detail explanation and kind help!
I have understand how container in VM can acquire network interfaces in 
different neutron networks now.
For the connections between compute nodes, I think I need to study Geneve 
protocol and VTEP first.
Any further question, I may need to continue consulting you. :-) 

Thanks for your help again, 
Tony

-Original Message-
From: Russell Bryant [mailto:rbry...@redhat.com] 
Sent: Wednesday, September 23, 2015 10:22 PM
To: OpenStack Development Mailing List (not for usage questions); WANG, Ming 
Hao (Tony T)
Subject: Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to 
setup multiple neutron networks for one container?

I'll reply to each of your 3 messages here:

On 09/23/2015 05:57 AM, WANG, Ming Hao (Tony T) wrote:
> Hi Russell,
> 
> I just realized OVN plugin is an independent plugin of OVS plugin.

Yes, it's a plugin developed in the "networking-ovn" project.

http://git.openstack.org/cgit/openstack/networking-ovn/

> In this case, how do we handle the provider network connections between 
> compute nodes? Is it handled by OVN actually?

I'm going to start by explaining the status of OVN itself, and then I'll come 
back and address the Neutron integration:

 -- OVN --

OVN implements logical networks as overlays using the Geneve protocol.
Connecting from logical to physical networks is done by one of two ways.

The first is using VTEP gateways.  This could be hardware or software gateways 
that implement the hardware_vtep schema.  This is typically a TOR switch that 
supports the vtep schema, but I believe someone is going to build a software 
version based on ovs and dpdk.  OVN includes a daemon called 
"ovn-controller-vtep" that is run for each vtep gateway to manage connectivity 
between OVN networks and the gateway.  It could run on the switch itself, or 
some other management host.  The last set of patches to get this working 
initially were merged just 8 days ago.

The ovn-architecture document describes "Life Cycle of a VTEP gateway":


https://github.com/openvswitch/ovs/blob/master/ovn/ovn-architecture.7.xml#L820

or you can find a temporary copy of a rendered version here:

  http://www.russellbryant.net/ovs-docs/ovn-architecture.7.pdf

The second is what Neutron refers to as "provider networks".  OVN does support 
this, as well.  It was merge just a couple weeks ago.  The commit message for 
OVN "localnet" ports goes into quite a bit of detail about how this works in 
OVN:


https://github.com/openvswitch/ovs/commit/c02819293d52f7ea7b714242d871b2b01f57f905

 -- Neutron --

Both of these things are freshly implemented in OVN so the Neutron integration 
is a WIP.

For vtep gateways, there's not an established API.  networking-l2gw is the 
closest thing, but I've got some concerns with both the API and implementation. 
 As a first baby step, we're just going to provide a hack that lets an admin 
create a connection between a network and gateway using a neutron port with a 
special binding:profile.  We'll also be continuing to look at providing a 
proper API.

For provider networks, working with them in Neutron will be no different than 
it is today with the current OVS support.  I just have to finish the Neutron 
plugin integration, which I just started on yesterday.

> 
> Thanks,
> Tony
> 
> -Original Message-
> From: WANG, Ming Hao (Tony T)
> Sent: Wednesday, September 23, 2015 1:58 PM
> To: WANG, Ming Hao (Tony T); 'OpenStack Development Mailing List (not for 
> usage questions)'
> Subject: RE: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support 
> to setup multiple neutron networks for one container?
> 
> Hi Russell,
> 
> Is there any material to explain how OVN parent port work?

Note that while this uses a binding:profile hack for now, we're going to update 
the plugin to support the vlan-aware-vms API for this use case once that is 
completed.

http://docs.openstack.org/developer/networking-ovn/containers.html

http://specs.openstack.org/openstack/neutron-specs/specs/liberty/vlan-aware-vms.html

https://github.com/openvswitch/ovs/blob/master/ovn/CONTAINERS.OpenStack.md

https://github.com/shettyg/ovn-docker

> Thanks,
> Tony
> 
> -Original Message-
> From: WANG, Ming Hao (Tony T)
> Sent: Wednesday, September 23, 2015 10:02 AM
> To: OpenStack Development Mailing List (not for usage questions)
> Subject: RE: [openstack-dev] [neutron] Does neutron ovn plugin support to 
> setup multiple neutron networks for one container?
> 
> Russell,
> 
> Thanks for your info.
> If I want to assign multiple interfaces to a container on different 
> neutron networks(for example, netA and netB), is it mandatory to let 
> the VM hosting containers have network interfaces in netA and netB, 
> and ovn will help to direct the container 

Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to setup multiple neutron networks for one container?

2015-09-23 Thread WANG, Ming Hao (Tony T)
Hi Russell,

I just realized OVN plugin is an independent plugin of OVS plugin.
In this case, how do we handle the provider network connections between compute 
nodes? Is it handled by OVN actually?

Thanks,
Tony 

-Original Message-
From: WANG, Ming Hao (Tony T) 
Sent: Wednesday, September 23, 2015 1:58 PM
To: WANG, Ming Hao (Tony T); 'OpenStack Development Mailing List (not for usage 
questions)'
Subject: RE: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to 
setup multiple neutron networks for one container?

Hi Russell,

Is there any material to explain how OVN parent port work?

Thanks,
Tony

-Original Message-
From: WANG, Ming Hao (Tony T) 
Sent: Wednesday, September 23, 2015 10:02 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: RE: [openstack-dev] [neutron] Does neutron ovn plugin support to setup 
multiple neutron networks for one container?

Russell,

Thanks for your info.
If I want to assign multiple interfaces to a container on different neutron 
networks(for example, netA and netB), is it mandatory to let the VM hosting 
containers have network interfaces in netA and netB, and ovn will help to 
direct the container traffic to its corresponding VM network interfaces?

from https://github.com/openvswitch/ovs/blob/master/ovn/CONTAINERS.OpenStack.md 
:
"This VLAN tag is stripped out in the hypervisor by OVN."
I suppose when the traffic goes out the VM, the VLAN tag has already been 
stripped out. 
When the traffic arrives ovs on physical host, it will be tagged with neutron 
local vlan. Is it right?

Thanks in advance,
Tony

-Original Message-
From: Russell Bryant [mailto:rbry...@redhat.com] 
Sent: Wednesday, September 23, 2015 12:46 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [neutron] Does neutron ovn plugin support to setup 
multiple neutron networks for one container?

On 09/22/2015 08:08 AM, WANG, Ming Hao (Tony T) wrote:
> Dear all,
> 
> For neutron ovn plugin supports containers in one VM, My understanding is one 
> container can't be assigned two network interfaces in different neutron 
> networks. Is it right?
> The reason:
> 1. One host VM only has one network interface.
> 2. all the VLAN tags are stripped out when the packet goes out the VM.
> 
> If it is True, does neutron ovn plugin or ovn has plan to support this?

You should be able to assign multiple interfaces to a container on different 
networks.  The traffic for each interface will be tagged with a unique VLAN ID 
on its way in and out of the VM, the same way it is done for each container 
with a single interface.

--
Russell Bryant

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron + ovn] Does neutron ovn plugin support to setup multiple neutron networks for one container?

2015-09-23 Thread WANG, Ming Hao (Tony T)
Hi Russell,

Is there any material to explain how OVN parent port work?

Thanks,
Tony

-Original Message-
From: WANG, Ming Hao (Tony T) 
Sent: Wednesday, September 23, 2015 10:02 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: RE: [openstack-dev] [neutron] Does neutron ovn plugin support to setup 
multiple neutron networks for one container?

Russell,

Thanks for your info.
If I want to assign multiple interfaces to a container on different neutron 
networks(for example, netA and netB), is it mandatory to let the VM hosting 
containers have network interfaces in netA and netB, and ovn will help to 
direct the container traffic to its corresponding VM network interfaces?

from https://github.com/openvswitch/ovs/blob/master/ovn/CONTAINERS.OpenStack.md 
:
"This VLAN tag is stripped out in the hypervisor by OVN."
I suppose when the traffic goes out the VM, the VLAN tag has already been 
stripped out. 
When the traffic arrives ovs on physical host, it will be tagged with neutron 
local vlan. Is it right?

Thanks in advance,
Tony

-Original Message-
From: Russell Bryant [mailto:rbry...@redhat.com] 
Sent: Wednesday, September 23, 2015 12:46 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [neutron] Does neutron ovn plugin support to setup 
multiple neutron networks for one container?

On 09/22/2015 08:08 AM, WANG, Ming Hao (Tony T) wrote:
> Dear all,
> 
> For neutron ovn plugin supports containers in one VM, My understanding is one 
> container can't be assigned two network interfaces in different neutron 
> networks. Is it right?
> The reason:
> 1. One host VM only has one network interface.
> 2. all the VLAN tags are stripped out when the packet goes out the VM.
> 
> If it is True, does neutron ovn plugin or ovn has plan to support this?

You should be able to assign multiple interfaces to a container on different 
networks.  The traffic for each interface will be tagged with a unique VLAN ID 
on its way in and out of the VM, the same way it is done for each container 
with a single interface.

--
Russell Bryant

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [neutron] Does neutron ovn plugin support to setup multiple neutron networks for one container?

2015-09-22 Thread WANG, Ming Hao (Tony T)
Russell,

Thanks for your info.
If I want to assign multiple interfaces to a container on different neutron 
networks(for example, netA and netB), is it mandatory to let the VM hosting 
containers have network interfaces in netA and netB, and ovn will help to 
direct the container traffic to its corresponding VM network interfaces?

from https://github.com/openvswitch/ovs/blob/master/ovn/CONTAINERS.OpenStack.md 
:
"This VLAN tag is stripped out in the hypervisor by OVN."
I suppose when the traffic goes out the VM, the VLAN tag has already been 
stripped out. 
When the traffic arrives ovs on physical host, it will be tagged with neutron 
local vlan. Is it right?

Thanks in advance,
Tony

-Original Message-
From: Russell Bryant [mailto:rbry...@redhat.com] 
Sent: Wednesday, September 23, 2015 12:46 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [neutron] Does neutron ovn plugin support to setup 
multiple neutron networks for one container?

On 09/22/2015 08:08 AM, WANG, Ming Hao (Tony T) wrote:
> Dear all,
> 
> For neutron ovn plugin supports containers in one VM, My understanding is one 
> container can't be assigned two network interfaces in different neutron 
> networks. Is it right?
> The reason:
> 1. One host VM only has one network interface.
> 2. all the VLAN tags are stripped out when the packet goes out the VM.
> 
> If it is True, does neutron ovn plugin or ovn has plan to support this?

You should be able to assign multiple interfaces to a container on different 
networks.  The traffic for each interface will be tagged with a unique VLAN ID 
on its way in and out of the VM, the same way it is done for each container 
with a single interface.

--
Russell Bryant

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] Does neutron ovn plugin support to setup multiple neutron networks for one container?

2015-09-22 Thread WANG, Ming Hao (Tony T)
Dear all,

For neutron ovn plugin supports containers in one VM, My understanding is one 
container can't be assigned two network interfaces in different neutron 
networks. Is it right?
The reason:
1. One host VM only has one network interface.
2. all the VLAN tags are stripped out when the packet goes out the VM.

If it is True, does neutron ovn plugin or ovn has plan to support this?

Thanks,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [neutron] Does neutron ovn plugin support to setup multiple neutron networks for one container?

2015-09-22 Thread WANG, Ming Hao (Tony T)
Dear all,

For neutron ovn plugin supports containers in one VM, My understanding is one 
container can't be assigned two network interfaces in different neutron 
networks. Is it right?
The reason:
1. One host VM only has one network interface.
2. all the VLAN tags are stripped out when the packet goes out the VM.

If it is True, does neutron ovn plugin or ovn has plan to support this?

Thanks,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] Does murano dymamic-ui have plan to support edit function?

2015-08-12 Thread WANG, Ming Hao (Tony T)
Dear OpenStack developers,

Currently, murano dynamic-ui is one-time GUI, and I can't edit data what has 
been submitted.
Does murano dynamic-ui have plan to support edit function in the future?

For example, developer develops some Wizard GUI to do some configuration, and 
user wants to change some configuration after the deployment.

Thanks,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] Does murano dymamic-ui have plan to support edit function?

2015-08-12 Thread WANG, Ming Hao (Tony T)
Kirll,

Thanks for your info very much!
We will study it first.

Thanks,
Tony

From: Kirill Zaitsev [mailto:kzait...@mirantis.com]
Sent: Wednesday, August 12, 2015 7:12 PM
To: WANG, Ming Hao (Tony T); OpenStack Development Mailing List (not for usage 
questions)
Subject: Re: [openstack-dev] Does murano dymamic-ui have plan to support edit 
function?

Hi, sure there are such plans! This have been long referred as 
per-component-UI. I’m really hoping there would be some traction about it 
during mitaka cycle. Not in liberty though, feature freeze is less than a month 
away.

btw, if you’re interested in custom tweaking and fine-tuning of murano 
object-model you can take a look at these CLI tools 
https://review.openstack.org/#/q/project:openstack/python-muranoclient+branch:master+topic:bp/env-configuration-from-cli,n,z

and this https://review.openstack.org/#/c/208659/ commit in particular. 
Although using those would require you to have some knowledge about how murano 
handles things internally.


--
Kirill Zaitsev
Murano team
Software Engineer
Mirantis, Inc


On 12 Aug 2015 at 13:23:47, WANG, Ming Hao (Tony T) 
(tony.a.w...@alcatel-lucent.commailto:tony.a.w...@alcatel-lucent.com) wrote:
Dear OpenStack developers,

Currently, murano dynamic-ui is “one-time” GUI, and I can’t edit data what has 
been submitted.
Does murano dynamic-ui have plan to support edit function in the future?

For example, developer develops some Wizard GUI to do some configuration, and 
user wants to change some configuration after the deployment.

Thanks,
Tony

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
openstack-dev-requ...@lists.openstack.org?subject:unsubscribemailto:openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev