03:01:20 <Yumeng> #startmeeting openstack-cyborg
03:01:21 <ollivier> Thank you
03:01:21 <openstack> Meeting started Thu Jul  9 03:01:20 2020 UTC and is due to finish in 60 minutes.  The chair is Yumeng. Information about MeetBot at http://wiki.debian.org/MeetBot.
03:01:22 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
03:01:24 <openstack> The meeting name has been set to 'openstack_cyborg'
03:01:37 <Yumeng> agenda for today https://wiki.openstack.org/wiki/Meetings/CyborgTeamMeeting
03:01:57 <wangzhh> Hi
03:02:04 <brinzhang> #info brinzhang
03:02:09 <Yumeng> we wil mainly discuss cyborg support in CNTT today and then SPEC review.
03:02:21 <ollivier> #info Cédric Ollivier
03:02:33 <ildikov> #info Ildiko Vancsa
03:02:40 <Yumeng> #info Yumeng
03:03:16 <Yumeng> #topic cyborg support in CNTT
03:03:43 <ildikov> thanks for adding this topic to today's agenda
03:04:06 <ildikov> ollivier and I, we are both involved in the CNTT community
03:04:36 <brinzhang> ildikov, ollivier: you can briefly introduce yourself
03:04:43 <Yumeng> ildikov: ^^ my pleasure.
03:04:47 <ildikov> for background about CNTT: https://www.lfnetworking.org/about/cntt/
03:05:33 <ildikov> and https://github.com/cntt-n/CNTT
03:06:18 <ollivier> I'm LFN board member, OPNFV functest PTL and I lead a couple of CNTT stream
03:06:20 <ildikov> I myself work for the OpenStack Foundation and focus on telecom and edge related efforts among some other things
03:06:57 <ildikov> I've been also involved in OPNFV as well as CNTT
03:07:27 <ollivier> I'm contributing t the CNTT reference architecture for OpenStack which are especially listing the mandatory services, features/capabilities and their versions/microversions
03:08:17 <brinzhang> thanks, may you are all experts in VNF/NFV
03:08:21 <ildikov> CNTT has a strong focus on cloud infrastructure to define reference model and architectures that telecom operators can rely on
03:08:21 <ollivier> I'm also well involved to the related conformance test suite (mostly leveraging the main tempest tests and plugins)
03:09:09 <ildikov> brinzhang: ollivier more than I am :)
03:09:46 <Yumeng> ildikov: yeah cool. we've met before in the edge discussions.  ollivier: cool, hope we can discuss in cyborg related tempest  in CNTT support.
03:10:09 <ildikov> as I briefly described on the mailing list hardware acceleration is an important capability for telco use cases especially with 5G and edge and therefore CNTT is looking into including Cyborg in the architecture
03:10:51 <brinzhang> ildikov: thanks, it is always good to know that you are good at something.
03:11:01 <ildikov> and we ran into a bit of a challenge as CNTT is currently moving to Train, but would like to use the v2 API for Cyborg to avoid switching between API versions later
03:11:25 <ollivier> Yumeng: cyborg tempest plugin could be on my Functest agenda
03:11:58 <Yumeng> ollivier: great! that's also one of our important in this release!
03:12:20 <ildikov> so we wanted to see what options we have with the Train version
03:12:24 <brinzhang_> yes +1 Yuemng
03:12:48 <ollivier> (Functest supports U-release and master)
03:12:58 <Yumeng> ildikov: yes, we started to deprecate V1 API from Train release, and removed V1 in Ussuri release. here is the new V2 API: https://docs.openstack.org/api-ref/accelerator/v2/index.html
03:13:26 <ollivier> Yes. we can hardly leverage an already deprecated API (v1) and then we would have targeted Cyborg v2 and its microversion support which fit our model
03:13:51 <ollivier> I read the thread "Incomplete v2 API in Train" http://lists.openstack.org/pipermail/openstack-discuss/2020-July/015785.html"
03:14:10 <ollivier> I would ask for a few clarifications (sorry for that).
03:14:17 <brinzhang_> olivier: Do you have any plans to upgrade to U release
03:14:34 <ildikov> Yumeng: yes, we are aware of the deprecation
03:14:52 <ollivier> out of Baraque (September).
03:15:25 <Yumeng> ildikov: I was not clear why CNTT chose Train. from my perspective. as I replied in maillist, I would recommend CNTT use Ussuri with complete API and functionality.
03:15:31 <ollivier> Yes we will keep rolling the OpenStack releases according to our criteria (possibly 6 months later)
03:15:35 <brinzhang_> We are introducing the v2 API and perfecting it. If we can choose to upgrade to Ussuri, it may be the best.
03:16:19 <Yumeng> ollivier: yes sure, please go ahead. if we can help in the V2 API clarifications
03:16:19 <ollivier> Yumeng: I am sending you our criteria. Ussuri is too new regarding our criteria
03:17:49 <ildikov> Yumeng: brinzhang_: when it comes to Telecom environments operators need hihgly stable platforms and available commercial support among other criteria
03:17:59 <ollivier> When you mention it's incomplete, I'm not sure if v2 could backport it to Train at lest from a theorical point of view.
03:18:02 <Yumeng> ollivier: alright. got it.
03:18:25 <ildikov> this usually prevents that community to stay close to master or use the latest release both in production environments and even in CNTT unfortunately
03:18:39 <ildikov> I hope it will improve in the future
03:19:23 <ollivier> Does it depend on specific service Ussuri versions (e.g. nova)?
03:19:41 <brinzhang_> ildikov: I think you can  backport the v2 api to Train, but there are many patches you should backport to Train
03:20:24 <ildikov> brinzhang_: do you mean backporting downstream?
03:21:50 <brinzhang_> I can be sure that the API for backport v2 downstream should work, but the function of interacting with nova may not be backport, it depends on nova version and other related packages
03:22:47 <brinzhang_> If you want to use nova-cyborg-interaction feature, I suggest you upgrade your platform
03:22:48 <Yumeng> from cyborg's perspective, just backport V2 API to Train is theorically possible, but the nova-cyborg integration is not that easy if backport to train(which needs nova's help and may affect much).
03:22:58 <ollivier> Here I would consider first the backport in Cyborg stable/ussuri
03:23:32 <ollivier> Would it also ask for backports in Nova as well?
03:24:00 <shaohe_feng> hi all
03:24:00 <ildikov> as CNTT is consuming upstream code but not maintaining patches locally at this point I'm not sure downstream backport is an option
03:24:02 <shaohe_feng> sorry
03:24:18 <brinzhang_> Unless you don’t want to use the nova-cybrog-interaction feature
03:24:25 <shaohe_feng> conflict with other meeting.
03:24:40 <Yumeng> brinzhang_:yes, +1
03:25:09 <Yumeng> hi shaohe_feng: no pb.
03:25:33 <ildikov> brinzhang_: what's included in the nova-cybrog-interaction feature?
03:25:45 <ildikov> brinzhang_: I assume some API endpoints depend on it?
03:26:23 <Yumeng> ildikov: nova operations like creating a VM with accelerator(provisioned by cyborg) , this kind of function depends on nova/ussuri version
03:27:19 <brinzhang_> ollivier: Whether it is nova or cyborg, I think it can be used from Ussuri backport to stable/Train, but it will definitely encounter problems, I think it needs to be seriously considered.
03:28:31 <ollivier> brinzhang_: It's just checking what's doable. It would ask for backports in both Cyborg and Nova which seem quite serious.
03:28:33 <brinzhang_> ildikov: agree with Yumeng, if you dont want to use nova-cyborg-interaction, I think you dont worry about to backport the cyborg V2 api to stable/train
03:28:43 <Yumeng> nova-cybrog-interaction feature will affect creation, deletion, soft reboot, hard reboot, VM wih accelerators this kind of operations https://docs.openstack.org/api-guide/compute/accelerator-support.html
03:29:12 <ildikov> Yumeng: thanks for the clarification, I believe that feature would be very much in our interest
03:29:17 <Yumeng> pls check supported operations in the link above.
03:29:56 <ildikov> ollivier: I assume you mean backproting upstream, right?
03:30:20 <brinzhang_> ollivier: yes, the nova-cyborg-interaction feature is big, you can see https://review.opendev.org/#/q/status:merged+project:openstack/nova+branch:master+topic:bp/nova-cyborg-interaction
03:30:26 <s_shogo> sorry for late
03:30:40 <shaohe_feng> ildikov what's your openstack version?
03:31:11 <ollivier> ildikov: yes as you mentioned, here it's only about the OpenStack projects. All operators are free to backport by themselves but it would be out of CNTT.
03:31:26 <Yumeng> ildikov: does CNTT wanna support full function now or like half a year later?
03:31:35 <ollivier> shaohe_feng: Train for our next release (September)
03:32:06 <Yumeng> ok. got it.
03:32:23 <ildikov> Yumeng: the aim is full support, but the question is if it is doable or not
03:32:25 <shaohe_feng> seems it is mor easy for Train
03:33:00 <ildikov> Yumeng: if upstream backport is not an option then our interest would be to fix up the documentation for Cyborg to be clear about what is available in Train
03:33:06 <shaohe_feng> seems it is easier for Train
03:33:33 <Yumeng> ildikov: yes, that would be easier as a start! I can help.
03:33:41 <xinranwang__> Hi all.
03:33:42 <ollivier> Yumeng: yes we will keep rolling. As far as I understand, waiting CNTT to select U or newer seems the best option
03:34:13 <Yumeng> ollivier: agree!
03:34:27 <Yumeng> hi xinranwang__
03:34:28 <xinranwang__> Sorry for late.
03:34:50 <xinranwang__> Just finish another meeting
03:35:39 <brinzhang_> xinranwang_, shaohe_feng, s_shogo: Just right~
03:35:55 <ollivier> 1 to fix https://releases.openstack.org/train/highlights.html#cyborg
03:36:31 <ollivier> "Updated Cyborg APIs to version 2" should be removed as we just discussed, right?
03:36:31 <Yumeng> xinranwang__,s_shogo: no worries.
03:37:25 <brinzhang_> ollivier: yeah, thanks, you can update that, it's not very accurate
03:37:31 <ollivier> I would think that "https://docs.openstack.org/cyborg/train/api/api.html#v2-0" is possible wrong too. "see The Train release introduces version 2.0 APIs. Details of these APIs can be found here."
03:37:48 <Yumeng> we did update part of APIs to version2, do you wanna a detailed list saying what are removed to V2, what are not yet
03:37:50 <ildikov> ollivier: +1 on U or newer for CNTT
03:38:26 <ildikov> Yumeng: the Train docs refers to the spec I think when it comes to the API and it is misleading in terms of what is available in Train
03:38:36 <ollivier> Yumeng: yes please. I'm always lost when we say that an API version is divided into 2 releases
03:39:12 <brinzhang_> ollivier: thanks point this.
03:39:21 <ildikov> Yumeng: it would be better I think to be explicit and have the proper API documentation for Train with the available functions
03:39:24 <brinzhang_> Yumeng: We need to clarify which APIs in Train support V2 and which are completed in Ussuri.
03:39:25 <ildikov> ollivier: +1
03:40:20 <ollivier> How can we somehow deprecate v1 if v2 is partial?
03:41:27 <brinzhang_> As I know, deprecate the v1 API until we completed the v2 API in Ussuri
03:41:59 <brinzhang_> In v1, some attribute cannot support to request
03:43:13 <xinranwang__> v1 api does not match current data model. We have  changed data model pretty much, that 's why we need a new set of api(v2) as well
03:43:14 <Yumeng> ildikov: here it is the list. Train supports limited V2 APIs : Device Profiles API and Accelerator Requests APIs. and Ussuri supports full V2 APIs: Device Profiles API and Accelerator Requests APIs and Devices APIs, Deployables APIs,
03:43:33 <xinranwang__> I agree that we should clarify this in document
03:43:56 <Yumeng> I will update documentation today to clarify.
03:44:16 <ildikov> thanks Yumeng
03:44:21 <songwenping_> ollivier you can find corresponding api in v2 for deprecate v1.
03:44:32 <brinzhang_> Yumeng: thanks
03:44:37 <ollivier> ok v2 is well a superset of v1 (from operations point of view).
03:44:55 <ildikov> I think it will be a big improvement to have the documentation uodated
03:45:31 <ollivier> Just a last question: Device Profiles v2 API and Accelerator Requests v2 APIs were released in Train, right?
03:45:40 <brinzhang_> ildikov: thanks, Improve the readability and accuracy of the document, this is what we have been doing.
03:45:58 <Yumeng> ollivier: yes. they are released in Train.
03:46:32 <ollivier> and the microversion support?
03:46:37 <ollivier> Train as well?
03:47:07 <ollivier> It should be
03:47:31 <Yumeng> ollivier: nope. microversion is released in Ussuri
03:47:41 <xinranwang__> microversion is in U
03:49:55 <ollivier> ok it's very clear. Then your release notes are quite ok if we consider the time you wrote them (before ussuri). Mentioning the API capability (Device Profiles API and Accelerator Requests APIs) could enhance it a litlle bit.
03:51:25 <ollivier> About Functest, I could integrate your tempest plugin in Functest Kali (U-release) or Functest master (next Victoria) but I'm not clear how I can gate it (specific hardware?)
03:52:16 <ollivier> I will check the devstack configuration. It would allow integrating the testing part in advance until CNTT selects U or newer.
03:53:03 <Yumeng> ollivier: not necessary to use specific hardware, current tempest-plugin is using a fake driver(you can understand it as a fake device) to test the cyborg workflow
03:54:11 <ildikov> ollivier: I think testing on specific hardware would require third-party CIs, I don't think our infra has those type of resources available
03:54:35 <Yumeng> cyborg-tempest-plugin(U-release) should work fine. since it is complete to do test for the basic cyborg workflow and cyborg-nova integration workflow
03:54:45 <Yumeng> ildikov: yes, exactly
03:55:00 <ollivier> Yumeng: great. That shouldn't be a challenge in that case. I will have a look to your testing plugin before my holidays (in a couple of days)
03:55:38 <Yumeng> ok. cool
03:55:48 <ildikov> Looks like we have a plan :)
03:56:15 <ollivier> ildikov: at least we could in OPNFV (I think OpenStack as well). Here it's more about verifying the test integration in Functest SUT. If we can select fake drivers, it should work easily.
03:57:08 <ildikov> ollivier: yeah, it would be great to make it work in Functest so when CNTT gets to U and newer we already have that figured out
03:57:18 <ollivier> Yes very clear on my side. Thank you. I will give you my feedback about the testing part.
03:57:42 <Yumeng> great! ping me at this channel if you have more questions.^^
03:57:51 <ollivier> Yumeng: sure
03:57:54 <ildikov> thanks Yumeng and team!
03:58:08 <ollivier> ildikov: yes that's the best model
03:58:32 <Yumeng> ildikov,ollivier: you are welcome :)
03:58:41 <ollivier> Thank you all
03:59:19 <ollivier> (Sorry for the second topic)
03:59:37 <Yumeng> haha. no pl.  the rest topic from my side for today would be the review
03:59:55 <ildikov> ollivier: and thank you for getting up this early :)
04:00:55 <ollivier> ildikov: my pleasure. it's quite the same for you, right?
04:01:24 <ildikov> ollivier: yep
04:02:52 <Yumeng> shaohe, xinran, wangzhh, and all: we need review specs and get them merged. Add Attribute API specification, Add Inspur® FPGA driver specification. Add Intel QAT driver specification.
04:03:50 <Yumeng> and also shogo's program V2 patch. that's for milestone-2
04:04:12 <xinranwang__> Ok, will do this
04:04:18 <wangzhh> Yep.
04:04:21 <Yumeng> great.
04:04:35 <Yumeng> that's all from my side. Does anybody want to bring up anything else?
04:04:46 <Yumeng> #topic AoB
04:05:28 <Yumeng> alright. if nothing else, let's wrap up this meeting and I'll see you all again next week
04:05:46 <Yumeng> Thank you all. Have a good day or night.
04:06:02 <Yumeng> bye!
04:06:06 <Yumeng> #endmeeting