)]}'
{"specs/mitaka/multi-site-feature.rst":[{"author":{"_account_id":12525,"name":"vishwanath jayaraman","email":"vishwanathj@hotmail.com","username":"vish"},"change_message_id":"7d7bf5b88efbc81114cee9f6438b28346088fac7","unresolved":false,"context_lines":[{"line_number":58,"context_line":"* Continuous heartbeat monitoring and performance statistics of VIMs"},{"line_number":59,"context_line":"* Policy driven VIM selection based on customer requirements such as"},{"line_number":60,"context_line":"  geo-redundancy"},{"line_number":61,"context_line":"* Resource usage information of VIMs for VNF placements"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"VNFM component currently deploys VNFs on localized infrastructure. With this"},{"line_number":64,"context_line":"proposal, we intend to take the first step towards supporting multisite VIM"}],"source_content_type":"text/x-rst","patch_set":7,"id":"fa69d971_aa248bc4","line":61,"updated":"2016-01-05 17:15:05.000000000","message":"Clarification: Isnt this something that the VIM north bound API is supposed to provide? Trying to get an understanding of what the requirement for the NFVO here is","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":6641,"name":"Ravi Chunduru","email":"ravivsn@gmail.com","username":"ravivsn"},"change_message_id":"9420a9602af6a3505a748d3025d67c1d991a7a2b","unresolved":false,"context_lines":[{"line_number":58,"context_line":"* Continuous heartbeat monitoring and performance statistics of VIMs"},{"line_number":59,"context_line":"* Policy driven VIM selection based on customer requirements such as"},{"line_number":60,"context_line":"  geo-redundancy"},{"line_number":61,"context_line":"* Resource usage information of VIMs for VNF placements"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"VNFM component currently deploys VNFs on localized infrastructure. With this"},{"line_number":64,"context_line":"proposal, we intend to take the first step towards supporting multisite VIM"}],"source_content_type":"text/x-rst","patch_set":7,"id":"5a5ae5dd_66f22c08","line":61,"in_reply_to":"fa69d971_aa248bc4","updated":"2016-02-07 01:14:06.000000000","message":"How good is to use APIs of VIM for this purpose. IMHO, NFVO must learn the utilization in run time by events rather than polling by API.\nAlso as noted in my review - if NFVO goes on iterate on each VIM, it impacts the NFVO performance.\n\nAs a initial implementation and for simplicity API can be used.\n\nThis is a topic of discussion later on wrt standards and guidelines, when we abstract VIM over different implementations like VMWare and other non openstack implementations.","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"2b2aa1c88eee032f418e45cb7264c7fb638b55a9","unresolved":false,"context_lines":[{"line_number":58,"context_line":"* Continuous heartbeat monitoring and performance statistics of VIMs"},{"line_number":59,"context_line":"* Policy driven VIM selection based on customer requirements such as"},{"line_number":60,"context_line":"  geo-redundancy"},{"line_number":61,"context_line":"* Resource usage information of VIMs for VNF placements"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"VNFM component currently deploys VNFs on localized infrastructure. With this"},{"line_number":64,"context_line":"proposal, we intend to take the first step towards supporting multisite VIM"}],"source_content_type":"text/x-rst","patch_set":7,"id":"fa69d971_d3940c8c","line":61,"in_reply_to":"fa69d971_aa248bc4","updated":"2016-01-11 16:50:00.000000000","message":"Yes","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":12525,"name":"vishwanath jayaraman","email":"vishwanathj@hotmail.com","username":"vish"},"change_message_id":"7d7bf5b88efbc81114cee9f6438b28346088fac7","unresolved":false,"context_lines":[{"line_number":60,"context_line":"  geo-redundancy"},{"line_number":61,"context_line":"* Resource usage information of VIMs for VNF placements"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"VNFM component currently deploys VNFs on localized infrastructure. With this"},{"line_number":64,"context_line":"proposal, we intend to take the first step towards supporting multisite VIM"},{"line_number":65,"context_line":"deployments by introducing the NFVO component. This will enable Tacker to"},{"line_number":66,"context_line":"deploy remote VNFs in a seamless manner."}],"source_content_type":"text/x-rst","patch_set":7,"id":"fa69d971_8b742968","line":63,"updated":"2016-01-05 17:15:05.000000000","message":"Clarification: Will there always be an VNFM instance associated with a localalized infrastructure? For example, if there are are 3 OpenStack VIMs, will that mean there will be 3 VNFM instances, each associated with an OpenStack VIM","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":6641,"name":"Ravi Chunduru","email":"ravivsn@gmail.com","username":"ravivsn"},"change_message_id":"9420a9602af6a3505a748d3025d67c1d991a7a2b","unresolved":false,"context_lines":[{"line_number":60,"context_line":"  geo-redundancy"},{"line_number":61,"context_line":"* Resource usage information of VIMs for VNF placements"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"VNFM component currently deploys VNFs on localized infrastructure. With this"},{"line_number":64,"context_line":"proposal, we intend to take the first step towards supporting multisite VIM"},{"line_number":65,"context_line":"deployments by introducing the NFVO component. This will enable Tacker to"},{"line_number":66,"context_line":"deploy remote VNFs in a seamless manner."}],"source_content_type":"text/x-rst","patch_set":7,"id":"5a5ae5dd_06e2582f","line":63,"in_reply_to":"fa69d971_8b742968","updated":"2016-02-07 01:14:06.000000000","message":"Nice and a valid question. May be here the choice is to get a simple implementation by not considering VNFMs at each deployment. \nI do agree we should address those scenarios and thats how intercloud connectivity gets realized.","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"2b2aa1c88eee032f418e45cb7264c7fb638b55a9","unresolved":false,"context_lines":[{"line_number":60,"context_line":"  geo-redundancy"},{"line_number":61,"context_line":"* Resource usage information of VIMs for VNF placements"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"VNFM component currently deploys VNFs on localized infrastructure. With this"},{"line_number":64,"context_line":"proposal, we intend to take the first step towards supporting multisite VIM"},{"line_number":65,"context_line":"deployments by introducing the NFVO component. This will enable Tacker to"},{"line_number":66,"context_line":"deploy remote VNFs in a seamless manner."}],"source_content_type":"text/x-rst","patch_set":7,"id":"fa69d971_33d1e857","line":63,"in_reply_to":"fa69d971_8b742968","updated":"2016-01-11 16:50:00.000000000","message":"No, there will be a single VNFM instance running on the \u0027controller\u0027 VIM and managing local as well as remote VNFs","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":12525,"name":"vishwanath jayaraman","email":"vishwanathj@hotmail.com","username":"vish"},"change_message_id":"7d7bf5b88efbc81114cee9f6438b28346088fac7","unresolved":false,"context_lines":[{"line_number":98,"context_line":""},{"line_number":99,"context_line":"A new \u0027nfvo\u0027 extension will be introduced in Tacker API v1 that defines the"},{"line_number":100,"context_line":"NFVO interface layer and describes the VIM REST APIs. The \u0027nfvo-plugin\u0027 will"},{"line_number":101,"context_line":"implement NFVO interface layer. Configuring a new VIM will involve"},{"line_number":102,"context_line":"supporting basic CRUD operations and storing its information in the"},{"line_number":103,"context_line":"database. The workflow can be visualized as below:"},{"line_number":104,"context_line":"::"}],"source_content_type":"text/x-rst","patch_set":7,"id":"fa69d971_1d6ac081","line":101,"updated":"2016-01-05 17:15:05.000000000","message":"Clarification: Could you provide an example of what configuring a new VIM here means. Per my understanding, a VIM that is already configured  is expected by NFVO and VNFM to deploy a VNF instance. My understanding could be wrong though.","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"2b2aa1c88eee032f418e45cb7264c7fb638b55a9","unresolved":false,"context_lines":[{"line_number":98,"context_line":""},{"line_number":99,"context_line":"A new \u0027nfvo\u0027 extension will be introduced in Tacker API v1 that defines the"},{"line_number":100,"context_line":"NFVO interface layer and describes the VIM REST APIs. The \u0027nfvo-plugin\u0027 will"},{"line_number":101,"context_line":"implement NFVO interface layer. Configuring a new VIM will involve"},{"line_number":102,"context_line":"supporting basic CRUD operations and storing its information in the"},{"line_number":103,"context_line":"database. The workflow can be visualized as below:"},{"line_number":104,"context_line":"::"}],"source_content_type":"text/x-rst","patch_set":7,"id":"fa69d971_b96939c0","line":101,"in_reply_to":"fa69d971_1d6ac081","updated":"2016-01-11 16:50:00.000000000","message":"I guess the sentence needs to be modified to use \u0027Initializing\u0027 the VIM than configuring. It basically involves querying the VIM for the tenant user info and regions and to bring them under the \u0027Tacker\u0027 radar. This info will later be used to interpret the vim_id provided during VNF creaation","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":12525,"name":"vishwanath jayaraman","email":"vishwanathj@hotmail.com","username":"vish"},"change_message_id":"7d7bf5b88efbc81114cee9f6438b28346088fac7","unresolved":false,"context_lines":[{"line_number":115,"context_line":""},{"line_number":116,"context_line":"VIM operations will be performed by an operator with admin privileges. Tacker"},{"line_number":117,"context_line":"currently deploys VNFs in the \u0027service\u0027 tenant. Adding a new VIM in Tacker will"},{"line_number":118,"context_line":"involve the creation of \u0027service\u0027 tenant and \u0027tacker\u0027 user and associate"},{"line_number":119,"context_line":"the necessary roles. This will not be needed once"},{"line_number":120,"context_line":"keystone federation is integrated into Tacker."},{"line_number":121,"context_line":"Admin credentials will be stored in a secured clouds.yaml"}],"source_content_type":"text/x-rst","patch_set":7,"id":"fa69d971_5de918e5","line":118,"updated":"2016-01-05 17:15:05.000000000","message":"Clarification: Is this the VIM configuration referenced in L101?","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"2b2aa1c88eee032f418e45cb7264c7fb638b55a9","unresolved":false,"context_lines":[{"line_number":115,"context_line":""},{"line_number":116,"context_line":"VIM operations will be performed by an operator with admin privileges. Tacker"},{"line_number":117,"context_line":"currently deploys VNFs in the \u0027service\u0027 tenant. Adding a new VIM in Tacker will"},{"line_number":118,"context_line":"involve the creation of \u0027service\u0027 tenant and \u0027tacker\u0027 user and associate"},{"line_number":119,"context_line":"the necessary roles. This will not be needed once"},{"line_number":120,"context_line":"keystone federation is integrated into Tacker."},{"line_number":121,"context_line":"Admin credentials will be stored in a secured clouds.yaml"}],"source_content_type":"text/x-rst","patch_set":7,"id":"fa69d971_b3cb9852","line":118,"in_reply_to":"fa69d971_5de918e5","updated":"2016-01-11 16:50:00.000000000","message":"That is correct. However, this line will be modified to reflect that the special \u0027nfv\u0027 tenant and user is assumed to exist on the remote VIM instead of tacker creating the user and tenant (as this would pose a constraint of requiring admin privileges for VIM creation) per IRC meeting discussion","commit_id":"81e2c7f48813e814e7b6a7ed54b11b22eb540251"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"The challenge of providing a unified resource management across multiple"},{"line_number":74,"context_line":"sites in OpenStack deployments is inherently complex. There are projects such"},{"line_number":75,"context_line":"as Keystone federation [1], OPNFV multisite[2] and Tricircle [3] that have"},{"line_number":76,"context_line":"ongoing work to address these challenges. However, in this blueprint, Tacker is"},{"line_number":77,"context_line":"trying to address the immediate need of remote VNF deployments in existing"},{"line_number":78,"context_line":"multisite OpenStack deployments without introducing much complexity in the"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_8a4b0287","line":75,"updated":"2016-01-22 01:49:22.000000000","message":"nit/editorial comment - it will be good to get to what we are doing in this initial into paragraph, than we are not doing :)\n\nI\u0027d suggest to move these related projects and potential for integration described in L79-80 to a later section.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":72,"context_line":""},{"line_number":73,"context_line":"The challenge of providing a unified resource management across multiple"},{"line_number":74,"context_line":"sites in OpenStack deployments is inherently complex. There are projects such"},{"line_number":75,"context_line":"as Keystone federation [1], OPNFV multisite[2] and Tricircle [3] that have"},{"line_number":76,"context_line":"ongoing work to address these challenges. However, in this blueprint, Tacker is"},{"line_number":77,"context_line":"trying to address the immediate need of remote VNF deployments in existing"},{"line_number":78,"context_line":"multisite OpenStack deployments without introducing much complexity in the"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_e33c9ce2","line":75,"in_reply_to":"9a68dd71_8a4b0287","updated":"2016-02-08 22:16:15.000000000","message":"Done","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":75,"context_line":"as Keystone federation [1], OPNFV multisite[2] and Tricircle [3] that have"},{"line_number":76,"context_line":"ongoing work to address these challenges. However, in this blueprint, Tacker is"},{"line_number":77,"context_line":"trying to address the immediate need of remote VNF deployments in existing"},{"line_number":78,"context_line":"multisite OpenStack deployments without introducing much complexity in the"},{"line_number":79,"context_line":"operator\u0027s cloud environment. Tacker can help add NFVO/VNFM requirements to"},{"line_number":80,"context_line":"these projects as they evolve in future iterations."},{"line_number":81,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_2aff7635","line":78,"updated":"2016-01-22 01:49:22.000000000","message":"Please rephrase \"existing multisite OpenStack\". This feature is intended to work even when individual OpenStack deployments are single site, Tacker multisite bring them into one orchestration view.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":75,"context_line":"as Keystone federation [1], OPNFV multisite[2] and Tricircle [3] that have"},{"line_number":76,"context_line":"ongoing work to address these challenges. However, in this blueprint, Tacker is"},{"line_number":77,"context_line":"trying to address the immediate need of remote VNF deployments in existing"},{"line_number":78,"context_line":"multisite OpenStack deployments without introducing much complexity in the"},{"line_number":79,"context_line":"operator\u0027s cloud environment. Tacker can help add NFVO/VNFM requirements to"},{"line_number":80,"context_line":"these projects as they evolve in future iterations."},{"line_number":81,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_8328489b","line":78,"in_reply_to":"9a68dd71_2aff7635","updated":"2016-02-08 22:16:15.000000000","message":"Done","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":79,"context_line":"operator\u0027s cloud environment. Tacker can help add NFVO/VNFM requirements to"},{"line_number":80,"context_line":"these projects as they evolve in future iterations."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"In the initial phase, NFVO component will only be responsible for orchestrating"},{"line_number":83,"context_line":"OpenStack instances (VIMs). The NFVO"},{"line_number":84,"context_line":"component will additionally utilize OpenStack\u0027s multisite capabilities"},{"line_number":85,"context_line":"( such as regions, availability zones, shared identity service) within"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_6a16ce56","line":82,"updated":"2016-01-22 01:49:22.000000000","message":"\"orchestrating OpenStack instances (VIMs)\" is misleading. Please rephrase. We don\u0027t \"orchestrate\" VIMs, rather add a reference to an already  functional OpenStack deployment (aka VIM) into Tacker\u0027s NFVO component.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":79,"context_line":"operator\u0027s cloud environment. Tacker can help add NFVO/VNFM requirements to"},{"line_number":80,"context_line":"these projects as they evolve in future iterations."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"In the initial phase, NFVO component will only be responsible for orchestrating"},{"line_number":83,"context_line":"OpenStack instances (VIMs). The NFVO"},{"line_number":84,"context_line":"component will additionally utilize OpenStack\u0027s multisite capabilities"},{"line_number":85,"context_line":"( such as regions, availability zones, shared identity service) within"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_031bf881","line":82,"in_reply_to":"9a68dd71_6a16ce56","updated":"2016-02-08 22:16:15.000000000","message":"Done","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":80,"context_line":"these projects as they evolve in future iterations."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"In the initial phase, NFVO component will only be responsible for orchestrating"},{"line_number":83,"context_line":"OpenStack instances (VIMs). The NFVO"},{"line_number":84,"context_line":"component will additionally utilize OpenStack\u0027s multisite capabilities"},{"line_number":85,"context_line":"( such as regions, availability zones, shared identity service) within"},{"line_number":86,"context_line":"telco\u0027s infrastructure to translate VIM requests in to granular"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_8d831c56","line":83,"updated":"2016-01-22 01:49:22.000000000","message":"nit: uneven paragraph line length","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":80,"context_line":"these projects as they evolve in future iterations."},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"In the initial phase, NFVO component will only be responsible for orchestrating"},{"line_number":83,"context_line":"OpenStack instances (VIMs). The NFVO"},{"line_number":84,"context_line":"component will additionally utilize OpenStack\u0027s multisite capabilities"},{"line_number":85,"context_line":"( such as regions, availability zones, shared identity service) within"},{"line_number":86,"context_line":"telco\u0027s infrastructure to translate VIM requests in to granular"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_e3133c63","line":83,"in_reply_to":"9a68dd71_8d831c56","updated":"2016-02-08 22:16:15.000000000","message":"Done","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":88,"context_line":""},{"line_number":89,"context_line":"This feature introduces the concept of \u0027vim\u0027 resource in Tacker resource model."},{"line_number":90,"context_line":"Tacker assumes the \u0027vim\u0027 resource (i.e , OpenStack instance) is reachable over"},{"line_number":91,"context_line":"L2/L3 network. Each OpenStack deployment is assumed to have it\u0027s own L2 sub"},{"line_number":92,"context_line":"domain (individual provider network) or can belong to one big L2 domain with no"},{"line_number":93,"context_line":"overlapping provider address (shared provider network). Further it is assumed"},{"line_number":94,"context_line":"that the remote \u0027vim\u0027 resource has feature parity as any other \u0027vim\u0027 resource"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_2d10f04d","line":91,"updated":"2016-01-22 01:49:22.000000000","message":"L2 is misleading. Just say \"L3 network\".","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":88,"context_line":""},{"line_number":89,"context_line":"This feature introduces the concept of \u0027vim\u0027 resource in Tacker resource model."},{"line_number":90,"context_line":"Tacker assumes the \u0027vim\u0027 resource (i.e , OpenStack instance) is reachable over"},{"line_number":91,"context_line":"L2/L3 network. Each OpenStack deployment is assumed to have it\u0027s own L2 sub"},{"line_number":92,"context_line":"domain (individual provider network) or can belong to one big L2 domain with no"},{"line_number":93,"context_line":"overlapping provider address (shared provider network). Further it is assumed"},{"line_number":94,"context_line":"that the remote \u0027vim\u0027 resource has feature parity as any other \u0027vim\u0027 resource"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_fe019305","line":91,"in_reply_to":"9a68dd71_2d10f04d","updated":"2016-02-08 22:16:15.000000000","message":"Done","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":90,"context_line":"Tacker assumes the \u0027vim\u0027 resource (i.e , OpenStack instance) is reachable over"},{"line_number":91,"context_line":"L2/L3 network. Each OpenStack deployment is assumed to have it\u0027s own L2 sub"},{"line_number":92,"context_line":"domain (individual provider network) or can belong to one big L2 domain with no"},{"line_number":93,"context_line":"overlapping provider address (shared provider network). Further it is assumed"},{"line_number":94,"context_line":"that the remote \u0027vim\u0027 resource has feature parity as any other \u0027vim\u0027 resource"},{"line_number":95,"context_line":"in OpenStack."},{"line_number":96,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_8d9c7cc1","line":93,"updated":"2016-01-22 01:49:22.000000000","message":"The motivation for such an assumption is unclear. Perhaps you can consider moving this and the feature parity thing below in a separate \"Assumptions\" section.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":90,"context_line":"Tacker assumes the \u0027vim\u0027 resource (i.e , OpenStack instance) is reachable over"},{"line_number":91,"context_line":"L2/L3 network. Each OpenStack deployment is assumed to have it\u0027s own L2 sub"},{"line_number":92,"context_line":"domain (individual provider network) or can belong to one big L2 domain with no"},{"line_number":93,"context_line":"overlapping provider address (shared provider network). Further it is assumed"},{"line_number":94,"context_line":"that the remote \u0027vim\u0027 resource has feature parity as any other \u0027vim\u0027 resource"},{"line_number":95,"context_line":"in OpenStack."},{"line_number":96,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_de21379f","line":93,"in_reply_to":"9a68dd71_8d9c7cc1","updated":"2016-02-08 22:16:15.000000000","message":"Done","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":91,"context_line":"L2/L3 network. Each OpenStack deployment is assumed to have it\u0027s own L2 sub"},{"line_number":92,"context_line":"domain (individual provider network) or can belong to one big L2 domain with no"},{"line_number":93,"context_line":"overlapping provider address (shared provider network). Further it is assumed"},{"line_number":94,"context_line":"that the remote \u0027vim\u0027 resource has feature parity as any other \u0027vim\u0027 resource"},{"line_number":95,"context_line":"in OpenStack."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"*API changes*"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_4d6f64c5","line":94,"updated":"2016-01-22 01:49:22.000000000","message":"Can you describe what \"feature parity\" you assuming here ? Same keystone capabilities ? Same heat-api ?","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":91,"context_line":"L2/L3 network. Each OpenStack deployment is assumed to have it\u0027s own L2 sub"},{"line_number":92,"context_line":"domain (individual provider network) or can belong to one big L2 domain with no"},{"line_number":93,"context_line":"overlapping provider address (shared provider network). Further it is assumed"},{"line_number":94,"context_line":"that the remote \u0027vim\u0027 resource has feature parity as any other \u0027vim\u0027 resource"},{"line_number":95,"context_line":"in OpenStack."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"*API changes*"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_feebd310","line":94,"in_reply_to":"9a68dd71_4d6f64c5","updated":"2016-02-08 22:16:15.000000000","message":"\"Feature parity\" implies each VIM runs all core services (nova, neutron, cinder, glance, horizon, identity) along with orchestration service.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":110,"context_line":"      |             |          |"},{"line_number":111,"context_line":"      |         +---+--+       |"},{"line_number":112,"context_line":"      +---------\u003e VNFM +-------+"},{"line_number":113,"context_line":"                +------+"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"*Identity changes*"},{"line_number":116,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_4d7d246d","line":113,"updated":"2016-01-22 01:49:22.000000000","message":"Nice diagram!","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":116,"context_line":""},{"line_number":117,"context_line":"Tacker will dynamically construct the keystone client for the remote VIM based"},{"line_number":118,"context_line":"on the auth url information provided during VIM initialization. VIM\u0027s available"},{"line_number":119,"context_line":"regions are discovered and stored in Tacker database. Tacker will deploy VNFs"},{"line_number":120,"context_line":"in \"nfv\" tenant provided as an input during the VIM create"},{"line_number":121,"context_line":"operation."},{"line_number":122,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_add4e046","line":119,"updated":"2016-01-22 01:49:22.000000000","message":"When will this discovery happen ? \n\na) only during the initial on-boarding of VIM or\nb) at some regular / periodic intervals or\nc) at \u0027vim-update\u0027 operation","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":116,"context_line":""},{"line_number":117,"context_line":"Tacker will dynamically construct the keystone client for the remote VIM based"},{"line_number":118,"context_line":"on the auth url information provided during VIM initialization. VIM\u0027s available"},{"line_number":119,"context_line":"regions are discovered and stored in Tacker database. Tacker will deploy VNFs"},{"line_number":120,"context_line":"in \"nfv\" tenant provided as an input during the VIM create"},{"line_number":121,"context_line":"operation."},{"line_number":122,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_5ee1c728","line":119,"in_reply_to":"9a68dd71_add4e046","updated":"2016-02-08 22:16:15.000000000","message":"as of now, it will only happen during initial on-boarding.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":124,"context_line":""},{"line_number":125,"context_line":"User can provide the VIM id argument during the VNF create workflow to specify"},{"line_number":126,"context_line":"the VIM selection. If VIM id is not specified during VNF create operation, VNF"},{"line_number":127,"context_line":"will be deployed on the localized OpenStack instance as default behavior."},{"line_number":128,"context_line":"Region name can also be provided during VNF create operation to deploy in a"},{"line_number":129,"context_line":"specific region of selected VIM."},{"line_number":130,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_2d48f02c","line":127,"updated":"2016-01-22 01:49:22.000000000","message":"I\u0027d suggest we introduce a \u0027default_vim\u0027 attribute and have VNFs land there if VIM id is unspecified. If \u0027default_vim\u0027 is also unspecified the VNF instantiation should fail.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":124,"context_line":""},{"line_number":125,"context_line":"User can provide the VIM id argument during the VNF create workflow to specify"},{"line_number":126,"context_line":"the VIM selection. If VIM id is not specified during VNF create operation, VNF"},{"line_number":127,"context_line":"will be deployed on the localized OpenStack instance as default behavior."},{"line_number":128,"context_line":"Region name can also be provided during VNF create operation to deploy in a"},{"line_number":129,"context_line":"specific region of selected VIM."},{"line_number":130,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_1e64afb6","line":127,"in_reply_to":"9a68dd71_2d48f02c","updated":"2016-02-08 22:16:15.000000000","message":"yes, the default_vim will be a parameter in tacker.conf and if the user does not provide any vim_id it will land on the configured \u0027default_vim_id\u0027. if this is not specified, it will error out","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":6641,"name":"Ravi Chunduru","email":"ravivsn@gmail.com","username":"ravivsn"},"change_message_id":"a5e0ef901645f393fe0bf7545dd0919ffd34563e","unresolved":false,"context_lines":[{"line_number":146,"context_line":""},{"line_number":147,"context_line":" auth_url: http://10.10.10.13:5000"},{"line_number":148,"context_line":" username: tacker_user"},{"line_number":149,"context_line":" password: tacker_pw"},{"line_number":150,"context_line":" tenant_name: nfv"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"tacker vim-update command will allow the user to update the config information"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_a677c49e","line":149,"updated":"2016-02-07 01:02:15.000000000","message":"There needs to be model for VIM to contain run time information like \u0027status\u0027","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":146,"context_line":""},{"line_number":147,"context_line":" auth_url: http://10.10.10.13:5000"},{"line_number":148,"context_line":" username: tacker_user"},{"line_number":149,"context_line":" password: tacker_pw"},{"line_number":150,"context_line":" tenant_name: nfv"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"tacker vim-update command will allow the user to update the config information"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_67574f58","line":149,"in_reply_to":"5a5ae5dd_a677c49e","updated":"2016-02-08 22:16:15.000000000","message":"yes, this has been identified as a RFE for next iteration of the feature","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":147,"context_line":" auth_url: http://10.10.10.13:5000"},{"line_number":148,"context_line":" username: tacker_user"},{"line_number":149,"context_line":" password: tacker_pw"},{"line_number":150,"context_line":" tenant_name: nfv"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"tacker vim-update command will allow the user to update the config information"},{"line_number":153,"context_line":"for a specific VIM."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_0d22cc52","line":150,"updated":"2016-01-22 01:49:22.000000000","message":"Does this need to be a yaml file ? Can\u0027t this be just normal CLI argument ? \n\nI\u0027d once seen a neutron-vpn api with just 23 args - just saying ;-) Four args shouldn\u0027t be too hard to flatten out. What do you think ?","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":147,"context_line":" auth_url: http://10.10.10.13:5000"},{"line_number":148,"context_line":" username: tacker_user"},{"line_number":149,"context_line":" password: tacker_pw"},{"line_number":150,"context_line":" tenant_name: nfv"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"tacker vim-update command will allow the user to update the config information"},{"line_number":153,"context_line":"for a specific VIM."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_be39dbf3","line":150,"in_reply_to":"9a68dd71_0d22cc52","updated":"2016-02-08 22:16:15.000000000","message":"I foresee the file containing beyond the 4 provided arguments such as project_id, domain_id, user_id availability_zone, etc. and not limited to 4 parameters. User will not be restricted to always providing username or tenant_name and can provide any additional parameters similar to openstack client parameters and clouds.yaml structure.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":6641,"name":"Ravi Chunduru","email":"ravivsn@gmail.com","username":"ravivsn"},"change_message_id":"a5e0ef901645f393fe0bf7545dd0919ffd34563e","unresolved":false,"context_lines":[{"line_number":148,"context_line":" username: tacker_user"},{"line_number":149,"context_line":" password: tacker_pw"},{"line_number":150,"context_line":" tenant_name: nfv"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"tacker vim-update command will allow the user to update the config information"},{"line_number":153,"context_line":"for a specific VIM."},{"line_number":154,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_062fb888","line":151,"updated":"2016-02-07 01:02:15.000000000","message":"what is the plan to learn resource utilization? One simple approach is to have like a quota of the resources per VIM. The resources can be and not just limited to CPUs, RAM, Disk, Ports, instances etc.,  This way, NFVO can make informed decisions in VIM selection along with other parameters like proximity. Else, there will be multiple iterations for NFVO to determine the VIM.\n\nIdeally, the learning of the resources must be dynamic with NFVO getting the data from each VIM its configured with. This can be done as part of monitoring function of NFVO on each VIM. We can take up this as upcoming enhancements.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":148,"context_line":" username: tacker_user"},{"line_number":149,"context_line":" password: tacker_pw"},{"line_number":150,"context_line":" tenant_name: nfv"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"tacker vim-update command will allow the user to update the config information"},{"line_number":153,"context_line":"for a specific VIM."},{"line_number":154,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_3ef16b95","line":151,"in_reply_to":"5a5ae5dd_062fb888","updated":"2016-02-08 22:16:15.000000000","message":"This is exactly what we intend to do in the next set of enhancements.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":11819,"name":"Chaoyi Huang","email":"joehuang@huawei.com","username":"joehuang"},"change_message_id":"32ae6bcc98b22ca288fef9e2861760fc8ba234e6","unresolved":false,"context_lines":[{"line_number":153,"context_line":"for a specific VIM."},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"tacker vnf-create command will be updated to provide two new optional arguments"},{"line_number":156,"context_line":"--vim-id and --region-name that will allow a user to specify the VIM location"},{"line_number":157,"context_line":"and associated region name."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_ead71eeb","line":156,"range":{"start_line":156,"start_character":27,"end_line":156,"end_character":31},"updated":"2016-01-22 01:15:30.000000000","message":"One suggestion is to add one more optional parameter \"Availbility Zone\", if this AZ parameter is not NULL and not  \u0027\u0027, then it will be passed to OpenStack as the VM booting, volume creation parameter. If it\u0027s Null or \u0027\u0027, then no AZ parameter will be passed.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":153,"context_line":"for a specific VIM."},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"tacker vnf-create command will be updated to provide two new optional arguments"},{"line_number":156,"context_line":"--vim-id and --region-name that will allow a user to specify the VIM location"},{"line_number":157,"context_line":"and associated region name."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_1e310f5a","line":156,"range":{"start_line":156,"start_character":27,"end_line":156,"end_character":31},"in_reply_to":"9a68dd71_ead71eeb","updated":"2016-02-08 22:16:15.000000000","message":"Agree. I will add this","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":154,"context_line":""},{"line_number":155,"context_line":"tacker vnf-create command will be updated to provide two new optional arguments"},{"line_number":156,"context_line":"--vim-id and --region-name that will allow a user to specify the VIM location"},{"line_number":157,"context_line":"and associated region name."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"},{"line_number":160,"context_line":"include a \u0027VIM Orchestration\u0027 sub-tab to handle the orchestration of new VIMs."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_cd1b541a","line":157,"updated":"2016-01-22 01:49:22.000000000","message":"What will happen if region-name is unspecified ?","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":154,"context_line":""},{"line_number":155,"context_line":"tacker vnf-create command will be updated to provide two new optional arguments"},{"line_number":156,"context_line":"--vim-id and --region-name that will allow a user to specify the VIM location"},{"line_number":157,"context_line":"and associated region name."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"},{"line_number":160,"context_line":"include a \u0027VIM Orchestration\u0027 sub-tab to handle the orchestration of new VIMs."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_5e4307af","line":157,"in_reply_to":"9a68dd71_cd1b541a","updated":"2016-02-08 22:16:15.000000000","message":"it picks the default region name configured on the remote VIM. similar to existing openstack behavior.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":6641,"name":"Ravi Chunduru","email":"ravivsn@gmail.com","username":"ravivsn"},"change_message_id":"a5e0ef901645f393fe0bf7545dd0919ffd34563e","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":"*devstack changes*"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"Changes will be made to tacker devstack plugin to automatically configure local"},{"line_number":167,"context_line":"VIM (VIM0) as the default VIM for deploying VNFs."},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"*Error handling*"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_e64a9c54","line":166,"updated":"2016-02-07 01:02:15.000000000","message":"What will happen if we delete the local VIM when its been set as \u0027default\u0027? This is quite possible if we intend to use NFVO and VNFM alone in a given deployment.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":"*devstack changes*"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"Changes will be made to tacker devstack plugin to automatically configure local"},{"line_number":167,"context_line":"VIM (VIM0) as the default VIM for deploying VNFs."},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"*Error handling*"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_1e66ef50","line":166,"in_reply_to":"5a5ae5dd_e64a9c54","updated":"2016-02-08 22:16:15.000000000","message":"good question. Probably throw a warning to user that default VIM is no more configured. ?","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":6641,"name":"Ravi Chunduru","email":"ravivsn@gmail.com","username":"ravivsn"},"change_message_id":"a5e0ef901645f393fe0bf7545dd0919ffd34563e","unresolved":false,"context_lines":[{"line_number":172,"context_line":"  displayed to the user stating the reason"},{"line_number":173,"context_line":"* If an invalid vim_id is specified during vnf-create, it"},{"line_number":174,"context_line":"  should display a suitable message on the client/horizon dashboard."},{"line_number":175,"context_line":"* If a certain VIM is unreachable, it should gracefully be set to \u0027ERROR\u0027 state"},{"line_number":176,"context_line":"  along with existing VNFs deployed on that VIM."},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"Further enhancements specific to multisite deployments listed below will be"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_867088a5","line":175,"updated":"2016-02-07 01:02:15.000000000","message":"We must also describe the behavior of NFVO on identifying that VIM is unreachable. There must be policies depicting the behavior. Candidate for future enhancements.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":172,"context_line":"  displayed to the user stating the reason"},{"line_number":173,"context_line":"* If an invalid vim_id is specified during vnf-create, it"},{"line_number":174,"context_line":"  should display a suitable message on the client/horizon dashboard."},{"line_number":175,"context_line":"* If a certain VIM is unreachable, it should gracefully be set to \u0027ERROR\u0027 state"},{"line_number":176,"context_line":"  along with existing VNFs deployed on that VIM."},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"Further enhancements specific to multisite deployments listed below will be"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_7e57e357","line":175,"in_reply_to":"5a5ae5dd_867088a5","updated":"2016-02-08 22:16:15.000000000","message":"Yup!","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":180,"context_line":""},{"line_number":181,"context_line":"* Role-based Access Control for users to create VNFs in their own tenants"},{"line_number":182,"context_line":"* SFC across multisite VNFs"},{"line_number":183,"context_line":"* Support for non-OpenStack VIM types such as VMware, Xen, KVM"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"Hybrid cloud deployments is beyond the scope of this blueprint."},{"line_number":186,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_8dbb1ce5","line":183,"updated":"2016-01-22 01:49:22.000000000","message":"Xen - are you serious ? ;-)","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":182,"context_line":"* SFC across multisite VNFs"},{"line_number":183,"context_line":"* Support for non-OpenStack VIM types such as VMware, Xen, KVM"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"Hybrid cloud deployments is beyond the scope of this blueprint."},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"Alternatives"},{"line_number":188,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_0d972c49","line":185,"updated":"2016-01-22 01:49:22.000000000","message":"Do you mean deployment to public clouds like AWS ? If yes, please rephrase.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":182,"context_line":"* SFC across multisite VNFs"},{"line_number":183,"context_line":"* Support for non-OpenStack VIM types such as VMware, Xen, KVM"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"Hybrid cloud deployments is beyond the scope of this blueprint."},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"Alternatives"},{"line_number":188,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_5e48e7b2","line":185,"in_reply_to":"9a68dd71_0d972c49","updated":"2016-02-08 22:16:15.000000000","message":"Done","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":192,"context_line":"environments and still evolving NFV requirements provide a challenge to"},{"line_number":193,"context_line":"implement NFVO. Hence, it is practical to develop this component in iterations"},{"line_number":194,"context_line":"and address some immediate requirements. This can later evolve to develop the"},{"line_number":195,"context_line":"NFVO component."},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"Data model impact"},{"line_number":198,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_cd77d438","line":195,"updated":"2016-01-22 01:49:22.000000000","message":"IMO the alternative is to install Tacker in each and every VIMs (which could be geo dispersed) and manage each Tacker endpoint separately (ouch). You should capture that in (top of) this section.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":6641,"name":"Ravi Chunduru","email":"ravivsn@gmail.com","username":"ravivsn"},"change_message_id":"a5e0ef901645f393fe0bf7545dd0919ffd34563e","unresolved":false,"context_lines":[{"line_number":192,"context_line":"environments and still evolving NFV requirements provide a challenge to"},{"line_number":193,"context_line":"implement NFVO. Hence, it is practical to develop this component in iterations"},{"line_number":194,"context_line":"and address some immediate requirements. This can later evolve to develop the"},{"line_number":195,"context_line":"NFVO component."},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"Data model impact"},{"line_number":198,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_26b3d451","line":195,"in_reply_to":"9a68dd71_cd77d438","updated":"2016-02-07 01:02:15.000000000","message":"I agree, thats the simple approach :)","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":229,"context_line":" |auth_url      |string |RW, All |None      |string      |identity service   |"},{"line_number":230,"context_line":" |              |       |        |          |            |end point          |"},{"line_number":231,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":232,"context_line":" |attributes    |dict   |RW, All |None      |dict        |regions and VIM    |"},{"line_number":233,"context_line":" |              |       |        |          |            |specific info.     |"},{"line_number":234,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":235,"context_line":" |tenant_id     |string |RO, All |N/A       |string      |project id of VIM  |"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_ade140d2","line":232,"updated":"2016-01-22 01:49:22.000000000","message":"Can you give the format and an example of this \"attributes\" dict ? Can those attrs be flatten out to the top level ?","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":229,"context_line":" |auth_url      |string |RW, All |None      |string      |identity service   |"},{"line_number":230,"context_line":" |              |       |        |          |            |end point          |"},{"line_number":231,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":232,"context_line":" |attributes    |dict   |RW, All |None      |dict        |regions and VIM    |"},{"line_number":233,"context_line":" |              |       |        |          |            |specific info.     |"},{"line_number":234,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":235,"context_line":" |tenant_id     |string |RO, All |N/A       |string      |project id of VIM  |"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_dea05744","line":232,"in_reply_to":"9a68dd71_ade140d2","updated":"2016-02-08 22:16:15.000000000","message":"agree, the attributes needs to be extracted top level to differentiate the auth attr and placement attr.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":11819,"name":"Chaoyi Huang","email":"joehuang@huawei.com","username":"joehuang"},"change_message_id":"32ae6bcc98b22ca288fef9e2861760fc8ba234e6","unresolved":false,"context_lines":[{"line_number":228,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":229,"context_line":" |auth_url      |string |RW, All |None      |string      |identity service   |"},{"line_number":230,"context_line":" |              |       |        |          |            |end point          |"},{"line_number":231,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":232,"context_line":" |attributes    |dict   |RW, All |None      |dict        |regions and VIM    |"},{"line_number":233,"context_line":" |              |       |        |          |            |specific info.     |"},{"line_number":234,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":235,"context_line":" |tenant_id     |string |RO, All |N/A       |string      |project id of VIM  |"},{"line_number":236,"context_line":" +---------------------------------------------------------------------------+"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_2a6a161b","line":233,"range":{"start_line":231,"start_character":0,"end_line":233,"end_character":73},"updated":"2016-01-22 01:15:30.000000000","message":"region_name is enough, for region_name is unique key in KeyStone, and the attribute can be retrieved from KeyStone to reduce the in-consistency between the configuration and the data in KeyStone","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":228,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":229,"context_line":" |auth_url      |string |RW, All |None      |string      |identity service   |"},{"line_number":230,"context_line":" |              |       |        |          |            |end point          |"},{"line_number":231,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":232,"context_line":" |attributes    |dict   |RW, All |None      |dict        |regions and VIM    |"},{"line_number":233,"context_line":" |              |       |        |          |            |specific info.     |"},{"line_number":234,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":235,"context_line":" |tenant_id     |string |RO, All |N/A       |string      |project id of VIM  |"},{"line_number":236,"context_line":" +---------------------------------------------------------------------------+"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_dee93780","line":233,"range":{"start_line":231,"start_character":0,"end_line":233,"end_character":73},"in_reply_to":"9a68dd71_2a6a161b","updated":"2016-02-08 22:16:15.000000000","message":"this meant the auth attributes, will update this section to yank the auth_attributes out of the generic \"attr\" dict and dump region info in a dedicated placement_attr dict.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":11819,"name":"Chaoyi Huang","email":"joehuang@huawei.com","username":"joehuang"},"change_message_id":"32ae6bcc98b22ca288fef9e2861760fc8ba234e6","unresolved":false,"context_lines":[{"line_number":234,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":235,"context_line":" |tenant_id     |string |RO, All |N/A       |string      |project id of VIM  |"},{"line_number":236,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":237,"context_line":" |type          |string |RW, All |openstack |string      |driver implementing|"},{"line_number":238,"context_line":" |              |       |        |          |            |VIM specific logic |"},{"line_number":239,"context_line":" +--------------+-------+--------+----------+--------------------------------+"},{"line_number":240,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_ca4fbabb","line":237,"range":{"start_line":237,"start_character":2,"end_line":237,"end_character":6},"updated":"2016-01-22 01:15:30.000000000","message":"add one more field \"availability zone\", only valid for OpenStack. the field is null-able. If the field is not null and  not \u0027\u0027 then could be a parameter for the calling to the Nova, Cinder, Neutron API ( Neutron also support AZ now )","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":234,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":235,"context_line":" |tenant_id     |string |RO, All |N/A       |string      |project id of VIM  |"},{"line_number":236,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":237,"context_line":" |type          |string |RW, All |openstack |string      |driver implementing|"},{"line_number":238,"context_line":" |              |       |        |          |            |VIM specific logic |"},{"line_number":239,"context_line":" +--------------+-------+--------+----------+--------------------------------+"},{"line_number":240,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_18c282e9","line":237,"range":{"start_line":237,"start_character":2,"end_line":237,"end_character":6},"in_reply_to":"9a68dd71_ca4fbabb","updated":"2016-02-08 22:16:15.000000000","message":"\"availability zone\" field should be part of vnf-create option and is taken care. the above set of attr. are for \u0027register vim\u0027 api","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"98fc055af6eb264b326471c4c754233c1336b780","unresolved":false,"context_lines":[{"line_number":243,"context_line":"Security impact"},{"line_number":244,"context_line":"---------------"},{"line_number":245,"context_line":""},{"line_number":246,"context_line":"There is no security impact for the first iteration of multisite VIM support as"},{"line_number":247,"context_line":"we are not handling inter VNF communication between sites. However, this will"},{"line_number":248,"context_line":"be an important factor to consider as we enhance multisite VIM feature for SFC"},{"line_number":249,"context_line":"and other complex NFV use cases."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_0dfacc75","line":246,"updated":"2016-01-22 01:49:22.000000000","message":"We should capture the situation that we will be storing remote VIM\u0027s username / pw in Tacker db and utmost care should be taken to protect Tacker db access.","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"da6d39e8f7f80eae6f6a023ed71713298e902958","unresolved":false,"context_lines":[{"line_number":243,"context_line":"Security impact"},{"line_number":244,"context_line":"---------------"},{"line_number":245,"context_line":""},{"line_number":246,"context_line":"There is no security impact for the first iteration of multisite VIM support as"},{"line_number":247,"context_line":"we are not handling inter VNF communication between sites. However, this will"},{"line_number":248,"context_line":"be an important factor to consider as we enhance multisite VIM feature for SFC"},{"line_number":249,"context_line":"and other complex NFV use cases."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a5ae5dd_deb7f782","line":246,"in_reply_to":"9a68dd71_0dfacc75","updated":"2016-02-08 22:16:15.000000000","message":"yes, i will update this section to reflect the password encrrypt/decrypt workflow","commit_id":"6df059f5409a37e7909df0075509dd981b802d25"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"602ee9720a3122742c4ee4c4e7b5c6b0e2af8d74","unresolved":false,"context_lines":[{"line_number":110,"context_line":""},{"line_number":111,"context_line":"Client changes will be made to include VIM CRUD operations: tacker vim-register,"},{"line_number":112,"context_line":"vim-show, vim-list, vim-update and vim-delete operations that handle \u0027vim\u0027 REST"},{"line_number":113,"context_line":"API calls to Tacker server. A typical vim-create command can be described as"},{"line_number":114,"context_line":"below:"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"::"}],"source_content_type":"text/x-rst","patch_set":10,"id":"3a57f1b5_1d7332b3","line":113,"updated":"2016-02-10 02:41:09.000000000","message":"This should be vim-register?","commit_id":"b21d3f8513b4a5cabe417921e666f55fe8b86b1b"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"434962a4b6d770a773b2ec67775402706e9c4d93","unresolved":false,"context_lines":[{"line_number":110,"context_line":""},{"line_number":111,"context_line":"Client changes will be made to include VIM CRUD operations: tacker vim-register,"},{"line_number":112,"context_line":"vim-show, vim-list, vim-update and vim-delete operations that handle \u0027vim\u0027 REST"},{"line_number":113,"context_line":"API calls to Tacker server. A typical vim-create command can be described as"},{"line_number":114,"context_line":"below:"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"::"}],"source_content_type":"text/x-rst","patch_set":10,"id":"3a57f1b5_b56e8a94","line":113,"in_reply_to":"3a57f1b5_1d7332b3","updated":"2016-02-10 18:37:40.000000000","message":"Yes. Thanks for noticing.","commit_id":"b21d3f8513b4a5cabe417921e666f55fe8b86b1b"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"602ee9720a3122742c4ee4c4e7b5c6b0e2af8d74","unresolved":false,"context_lines":[{"line_number":265,"context_line":"used to add a new VIM and also list current VIMs."},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"python-tackerclient will include the necessary changes to support VIM CRUD"},{"line_number":268,"context_line":"commands. A new optional argument --vim-id will be provided for vnf-register"},{"line_number":269,"context_line":"workflow."},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"Performance Impact"}],"source_content_type":"text/x-rst","patch_set":10,"id":"3a57f1b5_9d9c026b","line":268,"updated":"2016-02-10 02:41:09.000000000","message":"Is this supposed to be vnf-create?  Also vnf-update?","commit_id":"b21d3f8513b4a5cabe417921e666f55fe8b86b1b"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"434962a4b6d770a773b2ec67775402706e9c4d93","unresolved":false,"context_lines":[{"line_number":265,"context_line":"used to add a new VIM and also list current VIMs."},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"python-tackerclient will include the necessary changes to support VIM CRUD"},{"line_number":268,"context_line":"commands. A new optional argument --vim-id will be provided for vnf-register"},{"line_number":269,"context_line":"workflow."},{"line_number":270,"context_line":""},{"line_number":271,"context_line":"Performance Impact"}],"source_content_type":"text/x-rst","patch_set":10,"id":"3a57f1b5_15067ece","line":268,"in_reply_to":"3a57f1b5_9d9c026b","updated":"2016-02-10 18:37:40.000000000","message":"Yes. Thanks for noticing.","commit_id":"b21d3f8513b4a5cabe417921e666f55fe8b86b1b"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"ab70a29179dc76577b78770d1fe6bdfa5ca1928b","unresolved":false,"context_lines":[{"line_number":89,"context_line":"Tacker will dynamically construct the keystone client for the remote VIM using"},{"line_number":90,"context_line":"the user provided auth information. The auth information is validated against"},{"line_number":91,"context_line":"the remote VIM. If successful, VIM\u0027s auth info as well as VIM\u0027s regions are"},{"line_number":92,"context_line":"stored in Tacker database during the VIM register operation. The vnf-create"},{"line_number":93,"context_line":"operation will retrieve this vim auth info and deploy VNF in the special \"nfv\""},{"line_number":94,"context_line":"tenant on the remote VIM."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"VIM sensitive data such as password will be encrypted and stored in a \u0027vimauth\u0027"},{"line_number":97,"context_line":"table. It will be decrypted during vnf-create using a fernet key generated for"}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_69a03aa0","line":94,"range":{"start_line":92,"start_character":61,"end_line":94,"end_character":25},"updated":"2016-02-10 22:07:57.000000000","message":"Tricircle includes a Pod (VIM) binding table which is used to map a tenant ID at the top level to a tenant ID in a bottom level pod. The pod binding table is populated with admin APIs. I suggest you use the same approach in this implementation.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"114c2fea6256569a82974c1759e849415266de7b","unresolved":false,"context_lines":[{"line_number":91,"context_line":"the remote VIM. If successful, VIM\u0027s auth info as well as VIM\u0027s regions are"},{"line_number":92,"context_line":"stored in Tacker database during the VIM register operation. The vnf-create"},{"line_number":93,"context_line":"operation will retrieve this vim auth info and deploy VNF in the special \"nfv\""},{"line_number":94,"context_line":"tenant on the remote VIM."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"VIM sensitive data such as password will be encrypted and stored in a \u0027vimauth\u0027"},{"line_number":97,"context_line":"table. It will be decrypted during vnf-create using a fernet key generated for"}],"source_content_type":"text/x-rst","patch_set":11,"id":"dae33548_b66e072d","line":94,"in_reply_to":"3a57f1b5_03da7317","updated":"2016-02-17 04:42:22.000000000","message":"There will be a RFE to handle user provided tenant_id during vnf-create which will allow user to deploy VNFs in own tenants beyond \"nfv\". As @Sridhar mentioned, multitenancy for VIM view/VNF view needs to be thought out separately for multisite scenario that may use tricircle plugin or keystone federation/trusts.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"db0ec55c4f3f6c71dea3a41e6e5028f449acc8f9","unresolved":false,"context_lines":[{"line_number":91,"context_line":"the remote VIM. If successful, VIM\u0027s auth info as well as VIM\u0027s regions are"},{"line_number":92,"context_line":"stored in Tacker database during the VIM register operation. The vnf-create"},{"line_number":93,"context_line":"operation will retrieve this vim auth info and deploy VNF in the special \"nfv\""},{"line_number":94,"context_line":"tenant on the remote VIM."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"VIM sensitive data such as password will be encrypted and stored in a \u0027vimauth\u0027"},{"line_number":97,"context_line":"table. It will be decrypted during vnf-create using a fernet key generated for"}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_03da7317","line":94,"in_reply_to":"3a57f1b5_69a03aa0","updated":"2016-02-12 18:17:43.000000000","message":"Current stand of this spec, as I understand, on multi-tenancy is to maintain status quo. The spec proposes to use \"nfv\" tenant instead of the current behavior of using \"service\" tenant (using \u0027service\u0027 tenant very very bad, it should be used only for openstack services, this is a good time to get away from that).\n\nTenancy of Tacker service itself vs the tenancy for the VNF placed in the target VIM need to reconciled properly. I think it is out of scope for this spec. I\u0027d suggest a follow on RFE or spec for a better tenant id handling in Tacker.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"ab70a29179dc76577b78770d1fe6bdfa5ca1928b","unresolved":false,"context_lines":[{"line_number":100,"context_line":""},{"line_number":101,"context_line":"*VIM id in VNF Creation*"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"User can provide the VIM id argument during the VNF create workflow to specify"},{"line_number":104,"context_line":"the VIM selection. If VIM id is not specified during VNF create operation, VNF"},{"line_number":105,"context_line":"will be deployed on the localized OpenStack instance as default behavior."},{"line_number":106,"context_line":"Region name and availability zones can also be provided during VNF create"},{"line_number":107,"context_line":"operation to deploy in a specific region/availability zone of selected VIM."},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"*python-tackerclient and horizon dashboard changes*"},{"line_number":110,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_8c5ee410","line":107,"range":{"start_line":103,"start_character":0,"end_line":107,"end_character":75},"updated":"2016-02-10 22:07:57.000000000","message":"Instead of defining a separate VIM ID parameter, why not map region / AZ parameters passed in the API call to a VIM ID (equivalant to tricircle POD ID). I believe this would allow you to make the multi VIM subsystem transparent to the upper layer since you could just expose the Heat API which already includes region / AZ as parameters. This is the same approach that is used by Tricircle.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"114c2fea6256569a82974c1759e849415266de7b","unresolved":false,"context_lines":[{"line_number":104,"context_line":"the VIM selection. If VIM id is not specified during VNF create operation, VNF"},{"line_number":105,"context_line":"will be deployed on the localized OpenStack instance as default behavior."},{"line_number":106,"context_line":"Region name and availability zones can also be provided during VNF create"},{"line_number":107,"context_line":"operation to deploy in a specific region/availability zone of selected VIM."},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"*python-tackerclient and horizon dashboard changes*"},{"line_number":110,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"dae33548_e571ee45","line":107,"in_reply_to":"3a57f1b5_03f11395","updated":"2016-02-17 04:42:22.000000000","message":"agree, we can include such enhancements going forward for openstack based vims","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"db0ec55c4f3f6c71dea3a41e6e5028f449acc8f9","unresolved":false,"context_lines":[{"line_number":104,"context_line":"the VIM selection. If VIM id is not specified during VNF create operation, VNF"},{"line_number":105,"context_line":"will be deployed on the localized OpenStack instance as default behavior."},{"line_number":106,"context_line":"Region name and availability zones can also be provided during VNF create"},{"line_number":107,"context_line":"operation to deploy in a specific region/availability zone of selected VIM."},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"*python-tackerclient and horizon dashboard changes*"},{"line_number":110,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_03f11395","line":107,"in_reply_to":"3a57f1b5_8c5ee410","updated":"2016-02-12 18:17:43.000000000","message":"Are are making an assumption that {region, az} going to be unique across all sites under tricircle ?  Also, are you assuming these sites are designed with geo-distribution in mind in the first place ? I\u0027m not sure if that is a safe assumption at this point.\n\nEither case this is just an optimization that we could introduce in the future. For e.g. if region and az was provided but vim-id is not, then tacker can do a look up from know sites and figure out the VIM / keystone endpoint.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"ab70a29179dc76577b78770d1fe6bdfa5ca1928b","unresolved":false,"context_lines":[{"line_number":108,"context_line":""},{"line_number":109,"context_line":"*python-tackerclient and horizon dashboard changes*"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"Client changes will be made to include VIM CRUD operations: tacker vim-register,"},{"line_number":112,"context_line":"vim-show, vim-list, vim-update and vim-delete operations that handle \u0027vim\u0027 REST"},{"line_number":113,"context_line":"API calls to Tacker server. A typical vim-register command can be described as"},{"line_number":114,"context_line":"below:"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"::"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_cc3b7c37","line":114,"range":{"start_line":111,"start_character":0,"end_line":114,"end_character":6},"updated":"2016-02-10 22:07:57.000000000","message":"You could use the same admin APIs as Tricircle if you used the same (or a similar) mapping table as Tricircle.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"db0ec55c4f3f6c71dea3a41e6e5028f449acc8f9","unresolved":false,"context_lines":[{"line_number":111,"context_line":"Client changes will be made to include VIM CRUD operations: tacker vim-register,"},{"line_number":112,"context_line":"vim-show, vim-list, vim-update and vim-delete operations that handle \u0027vim\u0027 REST"},{"line_number":113,"context_line":"API calls to Tacker server. A typical vim-register command can be described as"},{"line_number":114,"context_line":"below:"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"::"},{"line_number":117,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_e6f08500","line":114,"in_reply_to":"3a57f1b5_cc3b7c37","updated":"2016-02-12 18:17:43.000000000","message":"Do you\u0027ve a link for this admin API ? Other than some design notes my search couldn\u0027t find any specific info on this API.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"db0ec55c4f3f6c71dea3a41e6e5028f449acc8f9","unresolved":false,"context_lines":[{"line_number":115,"context_line":""},{"line_number":116,"context_line":"::"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":" tacker vim-register VIM3 --config-file ~/vim3.yaml"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"The --config/--config-file argument will take vim specific information as a"},{"line_number":121,"context_line":"direct input or as a file."}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_e60c05ef","line":118,"updated":"2016-02-12 18:17:43.000000000","message":"could we use use \"--name\" optarg to be consistent with other tacker CLIs ?","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"114c2fea6256569a82974c1759e849415266de7b","unresolved":false,"context_lines":[{"line_number":115,"context_line":""},{"line_number":116,"context_line":"::"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":" tacker vim-register VIM3 --config-file ~/vim3.yaml"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"The --config/--config-file argument will take vim specific information as a"},{"line_number":121,"context_line":"direct input or as a file."}],"source_content_type":"text/x-rst","patch_set":11,"id":"dae33548_05c05b7a","line":118,"in_reply_to":"3a57f1b5_e60c05ef","updated":"2016-02-17 04:42:22.000000000","message":"yes, it got missed out, will add that","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"db0ec55c4f3f6c71dea3a41e6e5028f449acc8f9","unresolved":false,"context_lines":[{"line_number":127,"context_line":" password: tacker_pw"},{"line_number":128,"context_line":" tenant_name: nfv"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"tacker vim-update command will allow the user to update the authorization"},{"line_number":131,"context_line":"information for a specific VIM."},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"tacker vnf-create command will be updated to provide three new optional"}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_a6292d39","line":130,"updated":"2016-02-12 18:17:43.000000000","message":"It would help if you can illustrate vim-update command syntax. Does it take  a similar --config-file ?","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"114c2fea6256569a82974c1759e849415266de7b","unresolved":false,"context_lines":[{"line_number":127,"context_line":" password: tacker_pw"},{"line_number":128,"context_line":" tenant_name: nfv"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"tacker vim-update command will allow the user to update the authorization"},{"line_number":131,"context_line":"information for a specific VIM."},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"tacker vnf-create command will be updated to provide three new optional"}],"source_content_type":"text/x-rst","patch_set":11,"id":"dae33548_e5c45760","line":130,"in_reply_to":"3a57f1b5_a6292d39","updated":"2016-02-17 04:42:22.000000000","message":"vim-update command will be similar to vim-create command and takes input through config file. will add this.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"ab70a29179dc76577b78770d1fe6bdfa5ca1928b","unresolved":false,"context_lines":[{"line_number":127,"context_line":" password: tacker_pw"},{"line_number":128,"context_line":" tenant_name: nfv"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"tacker vim-update command will allow the user to update the authorization"},{"line_number":131,"context_line":"information for a specific VIM."},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":134,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_c2fa63bd","line":131,"range":{"start_line":130,"start_character":0,"end_line":131,"end_character":31},"updated":"2016-02-10 22:07:57.000000000","message":"This sounds like an administrative call. I suggest you separate the administrative calls from the execution calls (ex. VNF_create). This is similar to the approach used by Tricircle which provides a transparent method of mapping API called into the upper layer to APIs calls to lower level pods.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"114c2fea6256569a82974c1759e849415266de7b","unresolved":false,"context_lines":[{"line_number":128,"context_line":" tenant_name: nfv"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"tacker vim-update command will allow the user to update the authorization"},{"line_number":131,"context_line":"information for a specific VIM."},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":134,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"}],"source_content_type":"text/x-rst","patch_set":11,"id":"dae33548_e5d60ef0","line":131,"in_reply_to":"3a57f1b5_a644cd1a","updated":"2016-02-17 04:42:22.000000000","message":"vim register and vnf create are separate APIs. vim register is not bound to admins currently. but we can define these roles in tacker\u0027s policy configuration if required","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"db0ec55c4f3f6c71dea3a41e6e5028f449acc8f9","unresolved":false,"context_lines":[{"line_number":128,"context_line":" tenant_name: nfv"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"tacker vim-update command will allow the user to update the authorization"},{"line_number":131,"context_line":"information for a specific VIM."},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":134,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_a644cd1a","line":131,"in_reply_to":"3a57f1b5_c2fa63bd","updated":"2016-02-12 18:17:43.000000000","message":"My understanding was any CLI / API with \"vim-*\" is an administrative call and it is already separate from the actual vnf instantiation.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"ab70a29179dc76577b78770d1fe6bdfa5ca1928b","unresolved":false,"context_lines":[{"line_number":130,"context_line":"tacker vim-update command will allow the user to update the authorization"},{"line_number":131,"context_line":"information for a specific VIM."},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":134,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"},{"line_number":135,"context_line":"user to specify VIM id along with region/availability zone."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"},{"line_number":138,"context_line":"include a \u0027VIM Orchestration\u0027 sub-tab to handle the orchestration of new VIMs."}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_a7c0992b","line":135,"range":{"start_line":133,"start_character":0,"end_line":135,"end_character":59},"updated":"2016-02-10 22:07:57.000000000","message":"I suggest you remove the VIM-ID from the argument list and simply map region-name and availability-zone to the underlying VIM. This is similar to what is done in Tri-circle.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"db0ec55c4f3f6c71dea3a41e6e5028f449acc8f9","unresolved":false,"context_lines":[{"line_number":132,"context_line":""},{"line_number":133,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":134,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"},{"line_number":135,"context_line":"user to specify VIM id along with region/availability zone."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"},{"line_number":138,"context_line":"include a \u0027VIM Orchestration\u0027 sub-tab to handle the orchestration of new VIMs."}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_e6d72549","line":135,"in_reply_to":"3a57f1b5_a7c0992b","updated":"2016-02-12 18:17:43.000000000","message":"Responded in L107. This is an optimization that can be introduced in a follow on RFE.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"db0ec55c4f3f6c71dea3a41e6e5028f449acc8f9","unresolved":false,"context_lines":[{"line_number":150,"context_line":"* If an invalid vim_id is specified during vnf-create, it should display a"},{"line_number":151,"context_line":"  suitable message on the client/horizon dashboard."},{"line_number":152,"context_line":"* If a certain VIM is unreachable, it should gracefully be set to \u0027ERROR\u0027 state"},{"line_number":153,"context_line":"  along with existing VNFs deployed on that VIM."},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"*Assumptions*"},{"line_number":156,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"3a57f1b5_c6c9c927","line":153,"updated":"2016-02-12 18:17:43.000000000","message":"Can you elaborate on \u0027status\u0027 of the VNFs in that unreachable VIM. Did you mean all the VNFs in that unreachable VIM will be marked in \"ERROR\" state? It seems we should introduce some other state indicating \"unreachable\". ERROR is used for an explicit operation error and it is typically a \"terminal\" state. Unreachable on the other hand is a transient state.\n\nAlso, what happens when the VIM is reachable again ? Will the VNFs go back to ACTIVE ? Are you planning to do all this as part of this spec ?","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"114c2fea6256569a82974c1759e849415266de7b","unresolved":false,"context_lines":[{"line_number":150,"context_line":"* If an invalid vim_id is specified during vnf-create, it should display a"},{"line_number":151,"context_line":"  suitable message on the client/horizon dashboard."},{"line_number":152,"context_line":"* If a certain VIM is unreachable, it should gracefully be set to \u0027ERROR\u0027 state"},{"line_number":153,"context_line":"  along with existing VNFs deployed on that VIM."},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"*Assumptions*"},{"line_number":156,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"dae33548_96914355","line":153,"in_reply_to":"3a57f1b5_c6c9c927","updated":"2016-02-17 04:42:22.000000000","message":"Yes, all VNFs will be marked on the remote VIM in ERROR state if the VIM is unreachable. This state was introduced keeping in mind of VNF re-spawn monitoring policy if the VNF is unreachable. The re-spawn policy will never be successful as the heat stack recreate on remote VIM will fail since the VIM itself is unreachable. This is the current behavior where VNF is set to ERROR state whenever heat stack create fails. I believe there is no extra condition needed to be added for multisite usecase but it needs to be tested. Also, the workflow does not handle if VIM is reachable again. It can be taken up as RFE.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"855866e0cf46c2d579804ca8e1885402afeaa85e","unresolved":false,"context_lines":[{"line_number":150,"context_line":"* If an invalid vim_id is specified during vnf-create, it should display a"},{"line_number":151,"context_line":"  suitable message on the client/horizon dashboard."},{"line_number":152,"context_line":"* If a certain VIM is unreachable, it should gracefully be set to \u0027ERROR\u0027 state"},{"line_number":153,"context_line":"  along with existing VNFs deployed on that VIM."},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"*Assumptions*"},{"line_number":156,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"dae33548_a192be49","line":153,"in_reply_to":"dae33548_08ce6262","updated":"2016-02-18 23:33:11.000000000","message":"VIM reachability/health monitoring needs to separated out from VNF reachability/health monitoring. The sentence needs to be rephrased. VNF will be set to ERROR state if respin policy fails with monitoring enabled for the VNF on remote site. (This is the existing monitoring policy behavior and will not be changed for multisite). We could make our monitoring framework smarter to decide the criteria for VNF respawn than just VNF reachability through stack status check or robust L3 connectivity.\n\nI will modify the line to reflect VIM health monitoring status check only and that VNF health monitoring is as existing behavior irrespective of single site or multisite.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"3002478a7d219cc3b30314421993e93fca2c37c3","unresolved":false,"context_lines":[{"line_number":150,"context_line":"* If an invalid vim_id is specified during vnf-create, it should display a"},{"line_number":151,"context_line":"  suitable message on the client/horizon dashboard."},{"line_number":152,"context_line":"* If a certain VIM is unreachable, it should gracefully be set to \u0027ERROR\u0027 state"},{"line_number":153,"context_line":"  along with existing VNFs deployed on that VIM."},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"*Assumptions*"},{"line_number":156,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"dae33548_08ce6262","line":153,"in_reply_to":"dae33548_96914355","updated":"2016-02-18 06:27:24.000000000","message":"I agree we need protection to avoid doing mgmt-driver and monitoring driver on remote VNFs that are unreachable. However moving all VNFs to ERROR state seems too heavy handed for what could be a transient unreachable situation. In fact there could be case where VNFs could still be reachable even when remote keystone / heat-api becomes unreachable.\n\nHere is a suggestion. Mark VIM unreachable when either remote keystone or heat-engine is unreachable. In this state, you should immediately fail any vnf-create operation on the remote VIM and disable any mgmt-driver or mon-driver operations on those VNFs. \n\nWhat do you think ?","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"fcedb7a7c3f5b796f07fefb929a4fb92c3ee52be","unresolved":false,"context_lines":[{"line_number":150,"context_line":"* If an invalid vim_id is specified during vnf-create, it should display a"},{"line_number":151,"context_line":"  suitable message on the client/horizon dashboard."},{"line_number":152,"context_line":"* If a certain VIM is unreachable, it should gracefully be set to \u0027ERROR\u0027 state"},{"line_number":153,"context_line":"  along with existing VNFs deployed on that VIM."},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"*Assumptions*"},{"line_number":156,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"dae33548_4724a2c5","line":153,"in_reply_to":"dae33548_a192be49","updated":"2016-02-19 00:59:48.000000000","message":"Sounds good. I\u0027m good as long as we don\u0027t introduce one off state handling behavior for multisite situations. Agree, it should be an inherent capability of the monitoring itself which can be enhanced.","commit_id":"f1e710d10e1654c443f252b04a4a932bd81cd01c"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"ac192891370a924baa967d43841cae5ee527d4b2","unresolved":false,"context_lines":[{"line_number":144,"context_line":" user_domain_id: default"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":147,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"},{"line_number":148,"context_line":"user to specify VIM id along with region/availability zone."},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":15,"id":"bae84128_f4f760f3","line":147,"updated":"2016-02-19 09:54:42.000000000","message":"How does this availability_zone interact with the availability_zone that can be specified in the VNFD template?  Does it override what the user has in the template?  What if there are multiple different availability zones specified in the VNFD?","commit_id":"f20f2c2476d5b6cd974b78bc6138e02247cd3ef7"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"afbabc58410451e45aa047177dbed907c87ea4e4","unresolved":false,"context_lines":[{"line_number":144,"context_line":" user_domain_id: default"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":147,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"},{"line_number":148,"context_line":"user to specify VIM id along with region/availability zone."},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":15,"id":"bae84128_93c5fc3d","line":147,"in_reply_to":"bae84128_5027ea11","updated":"2016-02-21 19:56:01.000000000","message":"TL,DR: Fine with do-nothing-option-5 as well - for now :)\n\nFor me the choice is simple. Continue to support the *existing* placement_policy: { az_name } in the VNFD template. This is useful for VNF providers (VNFD template authors) to insist things like affinity / anti-affinity rules (HA) and high-throughput \"zones\" with nfv bios settings / sr-iov enabled compute-nodes.\n\nSeparately there is a case to be made for an API option - to give deployers / operators control on \"where\" the VNF need to be placed in their cloud without tampering VNFD template (which they might have received from a VNF vendor and ideally do not want to touch). When provided this az_name in API should override any AZ property in VNFD. Lets plan / write an RFE for this.\n\n@Sripriya - we have unearthed lots of interesting RFE as part of this spec discussion. Please take sometime to write those RFEs in the launchpad and tag it with \"multisite-rfe\".","commit_id":"f20f2c2476d5b6cd974b78bc6138e02247cd3ef7"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"51bf42115ba5efabee25b0b6395421e0a2bdec55","unresolved":false,"context_lines":[{"line_number":144,"context_line":" user_domain_id: default"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":147,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"},{"line_number":148,"context_line":"user to specify VIM id along with region/availability zone."},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":15,"id":"bae84128_5027ea11","line":147,"in_reply_to":"bae84128_6a5161d8","updated":"2016-02-21 18:27:07.000000000","message":"@Bob fine with me for opting 5. Yes, vim-show will take care of  displaying available AZs to the user.","commit_id":"f20f2c2476d5b6cd974b78bc6138e02247cd3ef7"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"4c001e373163ddd38959a6fafd3c9bd7d3cdd8ac","unresolved":false,"context_lines":[{"line_number":144,"context_line":" user_domain_id: default"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":147,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"},{"line_number":148,"context_line":"user to specify VIM id along with region/availability zone."},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":15,"id":"bae84128_3e3b17d3","line":147,"in_reply_to":"bae84128_93c5fc3d","updated":"2016-02-21 20:49:55.000000000","message":"@Sridhar, Yes, I\u0027m tracking all the multisite RFEs and will be creating bugs for them soon","commit_id":"f20f2c2476d5b6cd974b78bc6138e02247cd3ef7"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"90d1c24b5440a69c8efa4bd88e9e5bc92b10e39c","unresolved":false,"context_lines":[{"line_number":144,"context_line":" user_domain_id: default"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":147,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"},{"line_number":148,"context_line":"user to specify VIM id along with region/availability zone."},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":15,"id":"bae84128_6a5161d8","line":147,"in_reply_to":"bae84128_b792d355","updated":"2016-02-21 14:57:04.000000000","message":"I think my preference would be (5).  Since a template can support multiple availability zones, (3)(a?) doesn\u0027t work.  (3)(b) and (4) are too confusing - if the user wants specific AZ configuration they need to specify it appropriately, and if they want the flexibility to deploy across different VIMs with different AZs they need to parameterize it,\n\nAs long as the user has access to the list of valid Availability Zones for each supported VIM via the vim-show command, they can populate their param files accordingly.\n\nIt might be worthwhile stating that the output of vim-show should include the supported Availability Zones, and that non-admin users should have access to the vim-show command.\n\nAlso would be good to get @Sridhar\u0027s input.","commit_id":"f20f2c2476d5b6cd974b78bc6138e02247cd3ef7"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"9d8dac923bd371565643189f132d2215fdae2044","unresolved":false,"context_lines":[{"line_number":144,"context_line":" user_domain_id: default"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"tacker vnf-create command will be updated to provide three new optional"},{"line_number":147,"context_line":"arguments --vim-id, --region-name and --availability zone that will allow a"},{"line_number":148,"context_line":"user to specify VIM id along with region/availability zone."},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":15,"id":"bae84128_b792d355","line":147,"in_reply_to":"bae84128_f4f760f3","updated":"2016-02-19 22:28:40.000000000","message":"Good question. :-)\nAvailability Zone (AZ) can be provided through param-file during vnf-create time which makes availability zone as a separate argument redundant. We will need to stick to one decisive way of handling the availability zone parameter. There are multiple cases to handle:\n\n1. AZ provided during VNFD onboard time\n   - Already handled in Heat driver\n2. AZ provided as a param file during VNF deploy time\n   - Already handled in Heat driver\n3. AZ provided as an argument --availability-zone\n   - Possible solution\n   * Override/add AZ values to the VNFD template\n3. AZ provided as a param file as well as separate argument --availability zone \n   - Possible solution\n   * Allow --param-file to override --availability-zone\n   * Allow --availability-zone to override --param-file even if param-file contains different AZ for VDUs\n4. AZ provided for some VDUs only through --param-file values as well as provide separate argument --availability zone\n   - Possible solution\n   * Add AZ supplied in --availability-zone for those VDUs that are missing --param-file values\n   * Override --param-file completely and set the AZ provided through --availability-zone for all VDUs\n   * Override --availability-zone and go with defaults/--param-file\n5. Just remove --availability zone argument and do nothing :-)\n\n@Bob, What do you think?\n@Sridhar any thoughts?","commit_id":"f20f2c2476d5b6cd974b78bc6138e02247cd3ef7"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"184e769edd041863b206adce29b3f7240c9447e7","unresolved":false,"context_lines":[{"line_number":145,"context_line":""},{"line_number":146,"context_line":"tacker vnf-create command will be updated to provide two new optional"},{"line_number":147,"context_line":"arguments --vim-id and --region-name that will allow a user to specify VIM id"},{"line_number":148,"context_line":"along with region."},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"},{"line_number":151,"context_line":"include a \u0027VIM Orchestration\u0027 sub-tab to handle the orchestration of new VIMs."}],"source_content_type":"text/x-rst","patch_set":16,"id":"bae84128_16e40cdf","line":148,"updated":"2016-02-22 20:14:36.000000000","message":"Since rest of the document refers to availability-zone in multiple places can you add a note here something like,\n\navailabiliy_zone will continue to be supported using VNFD placement_policy attribute [1].\n\n[1] https://github.com/openstack/tacker/blob/master/devstack/samples/sample-vnfd.yaml#L25","commit_id":"3e4611cece84d14ed4619c1f12e8412a9324470e"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"983fa1528b4606b7711f8d4fc4601c6a00cd7c56","unresolved":false,"context_lines":[{"line_number":145,"context_line":""},{"line_number":146,"context_line":"tacker vnf-create command will be updated to provide two new optional"},{"line_number":147,"context_line":"arguments --vim-id and --region-name that will allow a user to specify VIM id"},{"line_number":148,"context_line":"along with region."},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"},{"line_number":151,"context_line":"include a \u0027VIM Orchestration\u0027 sub-tab to handle the orchestration of new VIMs."}],"source_content_type":"text/x-rst","patch_set":16,"id":"bae84128_5feb4778","line":148,"in_reply_to":"bae84128_16e40cdf","updated":"2016-02-22 21:31:56.000000000","message":"Mentioned in L108 as that is the very first section that discusses VIM options regions, AZ for vnf-create.","commit_id":"3e4611cece84d14ed4619c1f12e8412a9324470e"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"abd2e522bdf5f13f9f49c4ffeb2347947e4231fa","unresolved":false,"context_lines":[{"line_number":126,"context_line":" auth_url: http://10.10.10.13:5000"},{"line_number":127,"context_line":" username: nfv_user"},{"line_number":128,"context_line":" password: tacker_pw"},{"line_number":129,"context_line":" tenant_name: nfv"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"tacker vim-update command will allow the user to update vim information for a"},{"line_number":132,"context_line":"specific VIM."}],"source_content_type":"text/x-rst","patch_set":18,"id":"bae84128_579cbc0e","line":129,"range":{"start_line":129,"start_character":1,"end_line":129,"end_character":12},"updated":"2016-02-23 07:49:48.000000000","message":"one keystone may contain many regions of openstacks. So I think our one vim should be referring one region of openstack.","commit_id":"01f45623a1da70cf2a4d8c5b38285d16080bb023"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"3503f0347cb44593a0058d6a5f1c951e5f5fec85","unresolved":false,"context_lines":[{"line_number":126,"context_line":" auth_url: http://10.10.10.13:5000"},{"line_number":127,"context_line":" username: nfv_user"},{"line_number":128,"context_line":" password: tacker_pw"},{"line_number":129,"context_line":" tenant_name: nfv"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"tacker vim-update command will allow the user to update vim information for a"},{"line_number":132,"context_line":"specific VIM."}],"source_content_type":"text/x-rst","patch_set":18,"id":"bae84128_899c6c10","line":129,"range":{"start_line":129,"start_character":1,"end_line":129,"end_character":12},"in_reply_to":"bae84128_579cbc0e","updated":"2016-02-23 08:24:47.000000000","message":"vim refers to one level above regions within OpenStack deployment. if a user specifies region along with vim, that will be appropriately resolved else will be placed in the default region","commit_id":"01f45623a1da70cf2a4d8c5b38285d16080bb023"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"abd2e522bdf5f13f9f49c4ffeb2347947e4231fa","unresolved":false,"context_lines":[{"line_number":145,"context_line":" user_domain_id: default"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"tacker vnf-create command will be updated to provide two new optional"},{"line_number":148,"context_line":"arguments --vim-id and --region-name that will allow a user to specify VIM id"},{"line_number":149,"context_line":"along with region."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":18,"id":"bae84128_f7dfd066","line":148,"range":{"start_line":148,"start_character":25,"end_line":148,"end_character":31},"updated":"2016-02-23 07:49:48.000000000","message":"why region_name?\none vim should be one openstack with only one region","commit_id":"01f45623a1da70cf2a4d8c5b38285d16080bb023"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"3503f0347cb44593a0058d6a5f1c951e5f5fec85","unresolved":false,"context_lines":[{"line_number":145,"context_line":" user_domain_id: default"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"tacker vnf-create command will be updated to provide two new optional"},{"line_number":148,"context_line":"arguments --vim-id and --region-name that will allow a user to specify VIM id"},{"line_number":149,"context_line":"along with region."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"Similar changes will be done on the horizon dashboard. A new tab \u0027NFVO\u0027 will"}],"source_content_type":"text/x-rst","patch_set":18,"id":"bae84128_2c444e48","line":148,"range":{"start_line":148,"start_character":25,"end_line":148,"end_character":31},"in_reply_to":"bae84128_f7dfd066","updated":"2016-02-23 08:24:47.000000000","message":"that is not a hard rule. an operator can have:\n1. multi region OpenStack deployment (for actual traffic)  \n2. silo OpenStack instances (for PoC)\n3. non OpenStack hypervisors\n\nwithin an infrastructure. We want to be able to handle all these cases as different VIMs which the operator can select for VNF deployments","commit_id":"01f45623a1da70cf2a4d8c5b38285d16080bb023"}],"specs/mitaka/multi-vim-feature.rst":[{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"969d87ab4b9edf5b13668c7e20938b875e118fcd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9a8ffd7b_e5555e1d","updated":"2015-11-24 22:29:51.000000000","message":"The functionality in this blueprint looks like it overlaps significantly with the Heat blueprint \"Multi-Cloud remote stacks using Keystone federation\".\nhttps://blueprints.launchpad.net/heat/+spec/multi-cloud-federation\n\nMulti-cloud support has much wider applicability in OpenStack than just NFV. For this reason, it makes sense to me that this functionality belongs in one of the core components of OpenStack. Since this is an orchestration function it specifically makes sense to be implemented in the orchestration layer (Heat).\n\nI suggest that the Tacker team work with the Heat team developing multi-cloud support to ensure that the Heat multi-cloud implementation supports the requirements of NFV.","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"3bb1d7e0b009e0319e66ddf63fa2c29ffdb918df","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9a8ffd7b_07a16ea9","in_reply_to":"9a8ffd7b_00a7eb4f","updated":"2015-12-01 12:51:53.000000000","message":"Is there a precedence is OpenStack feature development for developing a new feature in one subsystem that is already supported in another subsystem (Heat multi region support)?","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"f72cb81272a8c6cec3e2e8264ea96888644fe583","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9a8ffd7b_920f3136","in_reply_to":"9a8ffd7b_00a7eb4f","updated":"2015-11-30 03:39:58.000000000","message":"Just to add to Sripriya\u0027s reply, one key thing we want to achieve with this spec is to elevate \"VIM\" as a first class resource in Tacker so that NFV Orchestration workflows can make use of it in VNF placement decisions. There is also interest from folks who do \"Policy based VNF placement\" to play a role here. There is also VIM Capacity / Resource Reservation / Allocation scenarios called out in ETSI MANO that need to be (eventually) implemented in Tacker. For all this we need this resource exposed to the Orchestrator. \n\nI anticipate there will be many deployments models here - ranging from Operators reusing existing OpenStack deployments, sometimes even running different versions of OpenStack, to do NFV PoCs to some operators consciously building a multi-region NFV capable OpenStack cloud with keystone federation.\n\nWe indeed discussed keystone federation in this context. But we can\u0027t make that as a requirement on Tacker early adopters to try some practical VNF placement scenarios on different OpenStack installations. As keystone federation adoption increases and when NFV operators starts deploying it we can evolve this multi-vim to support that.\n\nbtw, thanks for the heads up on the \"multi-cloud support in heat\". Lets see how that evolves.","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"509723f7d39bd254cffc634d08e5780b71ea289e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"7a740942_5747c2bb","in_reply_to":"9a8ffd7b_07a16ea9","updated":"2015-12-08 01:21:09.000000000","message":"As already discussed in IRC, Tacker will use the heat support if multi-region OpenStack is deployed. This is updated in the latest blueprint","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"3bb1d7e0b009e0319e66ddf63fa2c29ffdb918df","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9a8ffd7b_27ca721b","in_reply_to":"9a8ffd7b_920f3136","updated":"2015-12-01 12:51:53.000000000","message":"\u003e There is also VIM Capacity / Resource Reservation / Allocation scenarios \u003e called out in ETSI MANO that need to be (eventually) implemented in      \u003e Tacker. For all this we need this resource exposed to the Orchestrator.\n\nI would argue that is best to include all orchestration functionality in a single subsystem (Heat). I would recommend that these requirements be provided to the Heat team. This would allow the Heat team to determine whether this functionality should belong in Heat or in another subsystem (like Tacker).","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"3d33d46345951b9781fbbb46503748a3a59cbb9c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9a8ffd7b_00a7eb4f","in_reply_to":"9a8ffd7b_e5555e1d","updated":"2015-11-26 00:27:30.000000000","message":"Agree that multi-cloud support has a wider application in OpenStack than just NFV. The purpose of this spec: is to take the first step towards supporting multi-site deployments of already existing OpenStack installations that are running in telco operator\u0027s cloud. (1st kind of VIMs)\n\nHeat\u0027s multi-region support for running a single identity, heat and other services across all OpenStack deployments is something we will take up for the next iteration of this spec to address the requirement of OpenStack regions as VIMs (2nd kind of VIMs)\n\nWe can surely work with the Heat orchestration team to handle NFV requirements (see L61)  as the Multi-cloud stack blueprint evolves and as Telco\u0027 s NFV VIM requirements itself evolves (3rd kind of VIMs)","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"f72cb81272a8c6cec3e2e8264ea96888644fe583","unresolved":false,"context_lines":[{"line_number":20,"context_line":"Telco operators today have multiple data centers in their infrastructure domain to run NFV services. They often have the need to deploy and orchestrate VNFs across geographically distributed data centers to run certain NFV services."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Tacker currently deploys a VNF on the underlying local VIM. In order to handle the above requirement, Tacker needs to be enhanced to orchestrate local as well as remote VIMs. Further, changes needs to be done to handle VNF life cycle management on remote VIMs in a seamless manner similar to VNFs based on local VIMs."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"Proposed change"},{"line_number":26,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a8ffd7b_95d4fbeb","line":23,"updated":"2015-11-30 03:39:58.000000000","message":"Perhaps you can mention future efforts in (a) Policy based VNF placement and (b) Resource Reservation needs VIM resource exposed in the Orchestrator.","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"509723f7d39bd254cffc634d08e5780b71ea289e","unresolved":false,"context_lines":[{"line_number":20,"context_line":"Telco operators today have multiple data centers in their infrastructure domain to run NFV services. They often have the need to deploy and orchestrate VNFs across geographically distributed data centers to run certain NFV services."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Tacker currently deploys a VNF on the underlying local VIM. In order to handle the above requirement, Tacker needs to be enhanced to orchestrate local as well as remote VIMs. Further, changes needs to be done to handle VNF life cycle management on remote VIMs in a seamless manner similar to VNFs based on local VIMs."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"Proposed change"},{"line_number":26,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_57d90221","line":23,"in_reply_to":"9a8ffd7b_95d4fbeb","updated":"2015-12-08 01:21:09.000000000","message":"Yes, these requirements are captured now in problem description","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"969d87ab4b9edf5b13668c7e20938b875e118fcd","unresolved":false,"context_lines":[{"line_number":72,"context_line":"A new table \u0027vim\u0027 will be added to Tacker database whose attributes include id, name, description and VIM IP address. The existing \u0027device\u0027 table will be modified to include a new attribute \u0027vim_id\u0027 which is associated with the VIM on which VNF is deployed."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"New \u0027vim\u0027 extension will be introduced in Tacker API v1 that implements REST API"},{"line_number":78,"context_line":"end point as described below:"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a8ffd7b_f493cda1","line":75,"updated":"2015-11-24 22:29:51.000000000","message":"Instead of creating an API for multi VIM functionality, I was expecting that one of the properties of a Tosca VNF object would be a specification of where that VNF should be deployed. This property within the VNF object could then be translated to the analogous Heat property in the Heat multi cloud implementation.","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"3d33d46345951b9781fbbb46503748a3a59cbb9c","unresolved":false,"context_lines":[{"line_number":72,"context_line":"A new table \u0027vim\u0027 will be added to Tacker database whose attributes include id, name, description and VIM IP address. The existing \u0027device\u0027 table will be modified to include a new attribute \u0027vim_id\u0027 which is associated with the VIM on which VNF is deployed."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"New \u0027vim\u0027 extension will be introduced in Tacker API v1 that implements REST API"},{"line_number":78,"context_line":"end point as described below:"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a8ffd7b_5bde4240","line":75,"in_reply_to":"9a8ffd7b_f493cda1","updated":"2015-11-26 00:27:30.000000000","message":"Agreed. Right now, as the spec describes, the vim property is part of the VNF object itself where we provide the --vif-id or --vim-name as part of vnf-create workflow. This property can be included as part of the VNFD template too under placement_policy section. I will update the spec for that.\n\nThe VIM API is needed to add the VIM information to tacker\u0027s resource base so that it is aware of the list of VIMs it can talk to when the vim id or name is specified during the vnf-create workflow. The VIM API is used for performing CRUD on the VIM object itself. However the specification of where a VNF is deployed is still part of the VNF object as a property. See L46.","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"f72cb81272a8c6cec3e2e8264ea96888644fe583","unresolved":false,"context_lines":[{"line_number":72,"context_line":"A new table \u0027vim\u0027 will be added to Tacker database whose attributes include id, name, description and VIM IP address. The existing \u0027device\u0027 table will be modified to include a new attribute \u0027vim_id\u0027 which is associated with the VIM on which VNF is deployed."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"New \u0027vim\u0027 extension will be introduced in Tacker API v1 that implements REST API"},{"line_number":78,"context_line":"end point as described below:"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a8ffd7b_f59a2761","line":75,"in_reply_to":"9a8ffd7b_f493cda1","updated":"2015-11-30 03:39:58.000000000","message":"It is reasonable to expect this as a VNFD template attribute. So, +1 to add a VNFD attribute. \n\nI\u0027d like to hear some opinions if we also need to support \"VIM\" input in the vnf create API. For e.g. an NFVO might want to place a specific VNF on a particular target VNF based on resource availability / capacity. It will be good to give NFVO some control over where a VNF gets placed without expecting all VNFs to have this coded in their VNFD template.\n\nA related note, in a specific Tacker deployment we can always have a default VIM in the tacker.conf (say point to local vim0) to deploy a VNF if no target VIM is specified in the VNFD.","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"509723f7d39bd254cffc634d08e5780b71ea289e","unresolved":false,"context_lines":[{"line_number":72,"context_line":"A new table \u0027vim\u0027 will be added to Tacker database whose attributes include id, name, description and VIM IP address. The existing \u0027device\u0027 table will be modified to include a new attribute \u0027vim_id\u0027 which is associated with the VIM on which VNF is deployed."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"REST API impact"},{"line_number":75,"context_line":"---------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"New \u0027vim\u0027 extension will be introduced in Tacker API v1 that implements REST API"},{"line_number":78,"context_line":"end point as described below:"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_b7daa6e6","line":75,"in_reply_to":"9a8ffd7b_f59a2761","updated":"2015-12-08 01:21:09.000000000","message":"Sridhar, I have addressed this concerns in the latest spec where the highest precedence is for the command line input of vim_id in vnf-create if vim_id is specified in both template and during vnf-create. If no --vim-id arg is specified, it will deploy on the localized infrastructure","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"f72cb81272a8c6cec3e2e8264ea96888644fe583","unresolved":false,"context_lines":[{"line_number":94,"context_line":" |description   |string |RW, All |\u0027\u0027        |string      |description of     |"},{"line_number":95,"context_line":" |              |       |        |          |            |template           |"},{"line_number":96,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":97,"context_line":" |vim_ip        |string |RW, All |None      |string      |VIM IP address     |"},{"line_number":98,"context_line":" |              |       |        |          |            |                   |"},{"line_number":99,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":100,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a8ffd7b_b5a1ff95","line":97,"updated":"2015-11-30 03:39:58.000000000","message":"what IP address is this ? Keystone endpoint IP ? how about port? Instead, can this be a \"vim_url\" ?\n\nAlso we need vim credentials - either certs or user / pw ?","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"509723f7d39bd254cffc634d08e5780b71ea289e","unresolved":false,"context_lines":[{"line_number":94,"context_line":" |description   |string |RW, All |\u0027\u0027        |string      |description of     |"},{"line_number":95,"context_line":" |              |       |        |          |            |template           |"},{"line_number":96,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":97,"context_line":" |vim_ip        |string |RW, All |None      |string      |VIM IP address     |"},{"line_number":98,"context_line":" |              |       |        |          |            |                   |"},{"line_number":99,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":100,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_f7b82e77","line":97,"in_reply_to":"9a8ffd7b_b5a1ff95","updated":"2015-12-08 01:21:09.000000000","message":"vim credentials are configured in a configuration file clouds.yaml which is a private file. vim_ip here meant the host IP. Instead of a vim_url, keystone auth_url and heat endpoint are populated in the vim\u0027s \u0027attributes\u0027 parameter. These changes are reflected in the latest spec","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"f72cb81272a8c6cec3e2e8264ea96888644fe583","unresolved":false,"context_lines":[{"line_number":112,"context_line":"Other end user impact"},{"line_number":113,"context_line":"---------------------"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"Horizon dashboard will include a new \u0027Orchestrate VIM\u0027 feature under \u0027NFV\u0027 tab that can be used to orchestrate a new VIM and list current VIMs. "},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"python-tackerclient will include the necessary changes to handle VIM CRUD operations and introduce a new optional argument VIM ID for vnf create workflow."},{"line_number":118,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"9a8ffd7b_f5b1c7e0","line":115,"updated":"2015-11-30 03:39:58.000000000","message":"nit: spurious EOL blank char","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"509723f7d39bd254cffc634d08e5780b71ea289e","unresolved":false,"context_lines":[{"line_number":112,"context_line":"Other end user impact"},{"line_number":113,"context_line":"---------------------"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"Horizon dashboard will include a new \u0027Orchestrate VIM\u0027 feature under \u0027NFV\u0027 tab that can be used to orchestrate a new VIM and list current VIMs. "},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"python-tackerclient will include the necessary changes to handle VIM CRUD operations and introduce a new optional argument VIM ID for vnf create workflow."},{"line_number":118,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7a740942_d7417264","line":115,"in_reply_to":"9a8ffd7b_f5b1c7e0","updated":"2015-12-08 01:21:09.000000000","message":"Done","commit_id":"6e8c0cf6628211a9de41ea00fe562b3bc84ae6be"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"1dfd7d4b956d1fda49e5535e0a9745ddab1daba5","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":" This work is licensed under a Creative Commons Attribution 3.0 Unported"},{"line_number":3,"context_line":" License."},{"line_number":4,"context_line":""},{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_f2770ed2","line":2,"updated":"2015-12-11 06:52:30.000000000","message":"again, why not use openstack apache license?","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"dc400ac5d97fa8c51fa64ff5ff15ab1ce9c8e5ca","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":" This work is licensed under a Creative Commons Attribution 3.0 Unported"},{"line_number":3,"context_line":" License."},{"line_number":4,"context_line":""},{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_5bbea500","line":2,"in_reply_to":"7a740942_7f271b63","updated":"2015-12-14 22:52:31.000000000","message":"@gongysh - given our neutron based heritage we defer some of these semantics to what is practiced in neutron - if it is reasonable for neutron it should work just fine for us. See [1]. \n\n[1] https://raw.githubusercontent.com/openstack/neutron-specs/master/specs/mitaka","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":" This work is licensed under a Creative Commons Attribution 3.0 Unported"},{"line_number":3,"context_line":" License."},{"line_number":4,"context_line":""},{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_7f271b63","line":2,"in_reply_to":"7a740942_f2770ed2","updated":"2015-12-14 09:00:03.000000000","message":"Honestly, I\u0027m not very sure of the licensing part. I just followed the existing template https://raw.githubusercontent.com/openstack/tacker-specs/master/specs/mitaka/example.rst . \n\n@Sridhar, do you have any info on why we use this license and not openstack apache?","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"dc400ac5d97fa8c51fa64ff5ff15ab1ce9c8e5ca","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Multisite VIM support in Tacker"},{"line_number":10,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"https://blueprints.launchpad.net/tacker/+spec/multi-vim-feature"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"This proposal describes the plan to add multisite VIM support in Tacker. Tacker"},{"line_number":15,"context_line":"currently deploys VNFs on a single VIM (one OpenStack installation).  With"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_bb6f8991","line":12,"updated":"2015-12-14 22:52:31.000000000","message":"Please rename this title and the filename of this spec to \"multi-site-feature\"  .","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"fb1307571d183a843adc6d585cf388d5eaec66a9","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Multisite VIM support in Tacker"},{"line_number":10,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"https://blueprints.launchpad.net/tacker/+spec/multi-vim-feature"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"This proposal describes the plan to add multisite VIM support in Tacker. Tacker"},{"line_number":15,"context_line":"currently deploys VNFs on a single VIM (one OpenStack installation).  With"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_d5257e5c","line":12,"in_reply_to":"5a710552_bb6f8991","updated":"2015-12-15 23:07:25.000000000","message":"Done","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13629,"name":"Zhipeng","email":"huangzhipeng@huawei.com","username":"zhipengh"},"change_message_id":"91f32ab8782f479fd3011cb3e2ae708ca235d50c","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    |    Tacker service    |"},{"line_number":24,"context_line":"    |    VNFM component    |"},{"line_number":25,"context_line":"    |  -----------------+  |"},{"line_number":26,"context_line":"    |  |VIM orchestrator|  |"},{"line_number":27,"context_line":"    |  |                |  |"},{"line_number":28,"context_line":"    +--+-------+--------+--+"},{"line_number":29,"context_line":"               |"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_11857c58","line":26,"updated":"2015-12-09 06:28:55.000000000","message":"Is VIM-O a standard functionality ?","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"d8c7eddf9396a0f580f5ed569b9ba42207caef5a","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    |    Tacker service    |"},{"line_number":24,"context_line":"    |    VNFM component    |"},{"line_number":25,"context_line":"    |  -----------------+  |"},{"line_number":26,"context_line":"    |  |VIM orchestrator|  |"},{"line_number":27,"context_line":"    |  |                |  |"},{"line_number":28,"context_line":"    +--+-------+--------+--+"},{"line_number":29,"context_line":"               |"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_c4add232","line":26,"in_reply_to":"5a710552_25a619c2","updated":"2015-12-15 05:48:31.000000000","message":"Agree, as I already stated above, we should stay away from the term \"VIM Orchestrator\". Also, agree, this feature is squarely in the Tacker NFVO-realm (and not VNFM).\n\nOn Multi-Site vs Multi-VIM, the practical operation boundary is Identity Service front-ending the NFVI (compute, network, storage), basically one cloud administrative domain. There could be multiple Regions within one admin domain and this spec should incorporate that. Beyond \"Regions\" there are other cloud deployments scenarios like identity federation and multi-cloud which are all relevant but we should consider some of those in follow iterations to keep the scope of this spec implementable in one openstack development cycle.\n\nI also think it is important to get the nomenclature / taxonomy correct and stay aligned with ETSI MANO - given this track should evolve to support things like Resource Reservation / Allocation called out in MANO for NFVO.\n\nThinking out aloud, one option is to split these into two,\n\n- Site - could mean literally a geographic metadata- e.g {\"Comcast-ca-sfo-NFVI-PoP\", \"LatLong co-ordinates\", ... }\n\n- VIM - could mean {identity-service-endpoint, Region}\n\nEach VIM could be associated with a \"site-id\" which aggregates all VIMs in a specific geographic location. Alternatively one Identity Endpoint could front end lots of \"Regions\" in different geographic locations with different site-ids. Thoughts ? \n\nI think we need some diagrams in google doc to illustrate this better :)","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"fb1307571d183a843adc6d585cf388d5eaec66a9","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    |    Tacker service    |"},{"line_number":24,"context_line":"    |    VNFM component    |"},{"line_number":25,"context_line":"    |  -----------------+  |"},{"line_number":26,"context_line":"    |  |VIM orchestrator|  |"},{"line_number":27,"context_line":"    |  |                |  |"},{"line_number":28,"context_line":"    +--+-------+--------+--+"},{"line_number":29,"context_line":"               |"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_e729b08a","line":26,"in_reply_to":"5a710552_c4add232","updated":"2015-12-15 23:07:25.000000000","message":"It started out with an assumption of \u0027VIM Orchestrator\u0027 (basically just VIM CRUDs) in the initial version of spec. However, the goal/purpose of this component is to be a \u0027NFV Orchestrator\u0027 within Tacker eventually. It did not intend to introduce a new component outside ETSI MANO spec. I will update the diagram to reflect it as NFV Orchestrator and describe the scope clearly.\n\nNFVO is a separate component outside VNFM. I realized the diagram is misleading in to believing that VIM orchestration is part of VNFM. Will update the diagram.\n\nI agree multi-vim and multi-site has been used interchangeably within the spec. Initially, the understanding was multivim being used as an alternate term. for multisite deployments. However, it was later realized that multivim and multisite are two separate workflows as you also rightly pointed out. This is a multi-site spec focusing on deploying VNFs in remote sites through Tacker. I will also update the alternate implementations section for multisite deployments.\n\nRegarding the site-id approach, that is a good idea to incorporate in to this spec. Even though site could have different contexts in terms of aggregating VIM/regions, grouping them based on geographical metadata would be very helpful in providing a unified view of resource control and management to the operator. I will capture this in the spec.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    |    Tacker service    |"},{"line_number":24,"context_line":"    |    VNFM component    |"},{"line_number":25,"context_line":"    |  -----------------+  |"},{"line_number":26,"context_line":"    |  |VIM orchestrator|  |"},{"line_number":27,"context_line":"    |  |                |  |"},{"line_number":28,"context_line":"    +--+-------+--------+--+"},{"line_number":29,"context_line":"               |"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_7c6e4901","line":26,"in_reply_to":"7a740942_11857c58","updated":"2015-12-14 09:00:03.000000000","message":"No, this is a component/extension introduced within Tacker to control and manage multisite VIM support which internally orchestrates NFVI resources.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":6607,"name":"Andrew Veitch","email":"afveitch@gmail.com","username":"afveitch"},"change_message_id":"4b752997c46253ab5f3fb9ae336638ff1b33de02","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    |    Tacker service    |"},{"line_number":24,"context_line":"    |    VNFM component    |"},{"line_number":25,"context_line":"    |  -----------------+  |"},{"line_number":26,"context_line":"    |  |VIM orchestrator|  |"},{"line_number":27,"context_line":"    |  |                |  |"},{"line_number":28,"context_line":"    +--+-------+--------+--+"},{"line_number":29,"context_line":"               |"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_25a619c2","line":26,"in_reply_to":"7a740942_7c6e4901","updated":"2015-12-14 23:07:09.000000000","message":"A few comments / recommendations.\n\nIf you are introducing a new component, the VIM Orchestrator, then the document should provide a good description of what it is and what it does.  As it is something that is not described in ETSI MANO, I am not sure it should be introduced, but if it is, then I think its justification should be made clear.  \n\nAlso, within the context of ETSI NFV, I don\u0027 think the VNFM  would have responsibility for making decisions regarding where to execute a VNF in a multiple VIM environment. This seems to be more appropriate for the NFVO, as described in the ETSI GS NFV-MAN 001 documentation.  While the NFV ISG has developed a lot more definitions in the past year, I think those roles remain the same.  The NFVO Resource Orchestrator would control VIM selection, I think.  If the VIM Orchestrator remains, it should be within the NFVO component, not the VNFM component, of Tacker.\n\nLast, regarding the use of Multi-VIM and Multi-site interchangeably, this is not correct, as far as I know.  Multi-VIM, I believe, refers to a single NFVO being responsible for one or more VIM.  A single VIM might control the resources in one or more site (NFVI-PoP), or multiple VIM might be located in the same site.  I don\u0027t think Multi-VIM is related to considerations of different vendors or sites, though these are realistic (perhaps common) use cases.  Multi-VIM could involve different VIM managing different resource types (storage, etc.)\n\nIf this is multi-site spec, then I think it would be good to call out that there may be different ways this could be implemented, and that the solution here is for one of them.  E.g. there could be a single VIM for many sites, one NFVO, multiple VIM, multiple NFVO, etc.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"dc400ac5d97fa8c51fa64ff5ff15ab1ce9c8e5ca","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    |    Tacker service    |"},{"line_number":24,"context_line":"    |    VNFM component    |"},{"line_number":25,"context_line":"    |  -----------------+  |"},{"line_number":26,"context_line":"    |  |VIM orchestrator|  |"},{"line_number":27,"context_line":"    |  |                |  |"},{"line_number":28,"context_line":"    +--+-------+--------+--+"},{"line_number":29,"context_line":"               |"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_9ba3ad9e","line":26,"in_reply_to":"7a740942_7c6e4901","updated":"2015-12-14 22:52:31.000000000","message":"The term \"VIM orchestrator\" is bit confusing. This is probably just another feature within the wider NFV Orchestrator. It seems onerous to carve out a \"VIM Orchestrotor\" within that (the term orchestrator is used / abused enough times already).","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":11819,"name":"Chaoyi Huang","email":"joehuang@huawei.com","username":"joehuang"},"change_message_id":"98369919c00cec458667bf6d690276815482f7d5","unresolved":false,"context_lines":[{"line_number":35,"context_line":"       | services       |   | services       | XXX|services       |"},{"line_number":36,"context_line":"       |                |   |                |    |               |"},{"line_number":37,"context_line":"       +----------------+   +----------------+    +---------------+"},{"line_number":38,"context_line":"         VIM 0 (Site 1)       VIM 1 (Site 2)       VIM n-1 (Site N)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Problem description"},{"line_number":41,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_ca67f623","line":38,"updated":"2015-12-10 09:30:38.000000000","message":"one site may have more than one OpenStack instance ( a set of core services including Nova, Cinder, Neutron ). Ref: https://git.opnfv.org/cgit/multisite/tree/VNF_high_availability_across_VIM.rst","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":35,"context_line":"       | services       |   | services       | XXX|services       |"},{"line_number":36,"context_line":"       |                |   |                |    |               |"},{"line_number":37,"context_line":"       +----------------+   +----------------+    +---------------+"},{"line_number":38,"context_line":"         VIM 0 (Site 1)       VIM 1 (Site 2)       VIM n-1 (Site N)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Problem description"},{"line_number":41,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_df1e4fba","line":38,"in_reply_to":"7a740942_ca67f623","updated":"2015-12-14 09:00:03.000000000","message":"Agree. Thanks for the pointer. That is very helpful in understanding the actual NFV use cases. Initially assumed 1:1 relationship of OpenStack instance:VIM. But a site can contain one or more instances. I will update the spec with your input.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":6607,"name":"Andrew Veitch","email":"afveitch@gmail.com","username":"afveitch"},"change_message_id":"4b752997c46253ab5f3fb9ae336638ff1b33de02","unresolved":false,"context_lines":[{"line_number":52,"context_line":"currently being addressed in the NFV community:"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"* VNFM should place the VNF on the best possible VIM that provides guaranteed"},{"line_number":55,"context_line":"  SLA to the customer"},{"line_number":56,"context_line":"* Continuous heartbeat monitoring and performance statistics of VIM to the"},{"line_number":57,"context_line":"  orchestrator"},{"line_number":58,"context_line":"* Policy driven VIM selection based on customer requirements"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_bb1d4911","line":55,"updated":"2015-12-14 23:07:09.000000000","message":"I believe this should say NFVO, not VNFM \"should place...\"","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"fb1307571d183a843adc6d585cf388d5eaec66a9","unresolved":false,"context_lines":[{"line_number":52,"context_line":"currently being addressed in the NFV community:"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"* VNFM should place the VNF on the best possible VIM that provides guaranteed"},{"line_number":55,"context_line":"  SLA to the customer"},{"line_number":56,"context_line":"* Continuous heartbeat monitoring and performance statistics of VIM to the"},{"line_number":57,"context_line":"  orchestrator"},{"line_number":58,"context_line":"* Policy driven VIM selection based on customer requirements"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_87578c01","line":55,"in_reply_to":"5a710552_bb1d4911","updated":"2015-12-15 23:07:25.000000000","message":"Agree. Will update this","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"f725e13bbd54990ac7288a2e2379ffab0e57b1ec","unresolved":false,"context_lines":[{"line_number":59,"context_line":"* Image redundancy across multiple sites"},{"line_number":60,"context_line":"* Resource usage reports of VIMs as a continuous feedback to the orchestrator"},{"line_number":61,"context_line":"  that is taken as an input by the VNFM to determine VNF live migration"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"Given these requirements, Tacker currently does not support orchestrating VIMs"},{"line_number":64,"context_line":"for VNF placement within its framework. Users do not have an option of"},{"line_number":65,"context_line":"specifying the VIM a particular VNF should be deployed. Tacker deploys VNFs on"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_f376df04","line":62,"updated":"2015-12-08 14:55:02.000000000","message":"Also may want to add case for scenarios that have geographic-redundancy requirements, or maybe this is just a specific example of Policy driven VIM selection","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":59,"context_line":"* Image redundancy across multiple sites"},{"line_number":60,"context_line":"* Resource usage reports of VIMs as a continuous feedback to the orchestrator"},{"line_number":61,"context_line":"  that is taken as an input by the VNFM to determine VNF live migration"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"Given these requirements, Tacker currently does not support orchestrating VIMs"},{"line_number":64,"context_line":"for VNF placement within its framework. Users do not have an option of"},{"line_number":65,"context_line":"specifying the VIM a particular VNF should be deployed. Tacker deploys VNFs on"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_7f5b9b86","line":62,"in_reply_to":"7a740942_f376df04","updated":"2015-12-14 09:00:03.000000000","message":"Yes, policies can include VNF high availability for which geographical redundancy is required ([1] as pointed by C.Huang). Will update that requirement.\n\n[1] https://git.opnfv.org/cgit/multisite/tree/VNF_high_availability_across_VIM.rst","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"f725e13bbd54990ac7288a2e2379ffab0e57b1ec","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"Given these requirements, Tacker currently does not support orchestrating VIMs"},{"line_number":64,"context_line":"for VNF placement within its framework. Users do not have an option of"},{"line_number":65,"context_line":"specifying the VIM a particular VNF should be deployed. Tacker deploys VNFs on"},{"line_number":66,"context_line":"the localized infrastructure as the only available VIM. With this proposal, we"},{"line_number":67,"context_line":"intend to take the first step towards supporting multisite VIM by enabling"},{"line_number":68,"context_line":"Tacker to be aware of remote sites and deploy VNFs in a seamless manner."}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_f3e49fac","line":65,"updated":"2015-12-08 14:55:02.000000000","message":"Grammar nit - how about \"specifying the VIM to deploy a particular VNF\"","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":6607,"name":"Andrew Veitch","email":"afveitch@gmail.com","username":"afveitch"},"change_message_id":"4b752997c46253ab5f3fb9ae336638ff1b33de02","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"Given these requirements, Tacker currently does not support orchestrating VIMs"},{"line_number":64,"context_line":"for VNF placement within its framework. Users do not have an option of"},{"line_number":65,"context_line":"specifying the VIM a particular VNF should be deployed. Tacker deploys VNFs on"},{"line_number":66,"context_line":"the localized infrastructure as the only available VIM. With this proposal, we"},{"line_number":67,"context_line":"intend to take the first step towards supporting multisite VIM by enabling"},{"line_number":68,"context_line":"Tacker to be aware of remote sites and deploy VNFs in a seamless manner."}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_42c37b57","line":65,"updated":"2015-12-14 23:07:09.000000000","message":"Just a grammar type fix.  \"for specifying the VIM where a particular VNF...\" or \"for specifying the VIM on which a particular VNF...\"","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"Given these requirements, Tacker currently does not support orchestrating VIMs"},{"line_number":64,"context_line":"for VNF placement within its framework. Users do not have an option of"},{"line_number":65,"context_line":"specifying the VIM a particular VNF should be deployed. Tacker deploys VNFs on"},{"line_number":66,"context_line":"the localized infrastructure as the only available VIM. With this proposal, we"},{"line_number":67,"context_line":"intend to take the first step towards supporting multisite VIM by enabling"},{"line_number":68,"context_line":"Tacker to be aware of remote sites and deploy VNFs in a seamless manner."}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_3f52f367","line":65,"in_reply_to":"7a740942_f3e49fac","updated":"2015-12-14 09:00:03.000000000","message":"Done","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13629,"name":"Zhipeng","email":"huangzhipeng@huawei.com","username":"zhipengh"},"change_message_id":"91f32ab8782f479fd3011cb3e2ae708ca235d50c","unresolved":false,"context_lines":[{"line_number":85,"context_line":"The challenge of providing a unified resource management system for"},{"line_number":86,"context_line":"orchestrating VIMs across multiple sites in both variants is inherently"},{"line_number":87,"context_line":"complex. There are projects such as Keystone federation [1], OPNFV multisite[2]"},{"line_number":88,"context_line":"and Tricircle [3] that have ongoing work to address unified resource management"},{"line_number":89,"context_line":"requirements for new multisite OpenStack deployments. However, in this"},{"line_number":90,"context_line":"blueprint, Tacker is trying to address the immediate requirement of remote VNF"},{"line_number":91,"context_line":"deployments in existing multisite OpenStack deployments (including older"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_71c2c054","line":88,"updated":"2015-12-09 06:28:55.000000000","message":"As a member of Tricircle team, I would like to say that we are happy to work with Tacker on solving this issue more efficiently. Tricircle provides a standalone service to enable a unified management experience as you described, and via Tricircle you could just use OpenStack APIs for multi-openstack operation. Tacker would essentially be a service utilizing Tricircle.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":85,"context_line":"The challenge of providing a unified resource management system for"},{"line_number":86,"context_line":"orchestrating VIMs across multiple sites in both variants is inherently"},{"line_number":87,"context_line":"complex. There are projects such as Keystone federation [1], OPNFV multisite[2]"},{"line_number":88,"context_line":"and Tricircle [3] that have ongoing work to address unified resource management"},{"line_number":89,"context_line":"requirements for new multisite OpenStack deployments. However, in this"},{"line_number":90,"context_line":"blueprint, Tacker is trying to address the immediate requirement of remote VNF"},{"line_number":91,"context_line":"deployments in existing multisite OpenStack deployments (including older"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_7fe95b7e","line":88,"in_reply_to":"7a740942_71c2c054","updated":"2015-12-14 09:00:03.000000000","message":"Thank you. We are enthusiastic as well to work with Tricircle team. It will be interesting to use these OpenStack API\u0027s for VIM related use cases as multisite feature evolves.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"a535b960ead0cf94b310651abe102bc8ab9345bd","unresolved":false,"context_lines":[{"line_number":99,"context_line":"OpenStack/ non-OpenStack deployments which is beyond the scope of this"},{"line_number":100,"context_line":"blueprint and will be handled as a future requirement."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Tacker will treat each OpenStack site of any variant as a single VIM that can"},{"line_number":103,"context_line":"be orchestrated in an uniform manner from the UI/ command line. Tacker will"},{"line_number":104,"context_line":"additionally be able to auto discover the regions that the operator can chose"},{"line_number":105,"context_line":"to select or not select certain site as VIM using cloud configuration file or"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_a53a5097","line":102,"updated":"2015-12-08 13:14:11.000000000","message":"Here is a link to a video describing a project with the same goals listed here:\nhttps://www.openstack.org/summit/vancouver-2015/summit-videos/presentation/orchestration-across-multiple-cloud-platforms-using-heat\n\nThis is the project that I said I would provide a link for when we discussed this topic last week.\n\nFrom the video, I believe this project is actually implemented as a stand alone version of Heat with some additional resource plugins implemented to enable authentication with remote Heat instances. The idea then is to use Heat to instantiate a stack in a remote instance of Heat.\n\nI am not sure if this project is in fact Open Source. I will check and get back.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":99,"context_line":"OpenStack/ non-OpenStack deployments which is beyond the scope of this"},{"line_number":100,"context_line":"blueprint and will be handled as a future requirement."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Tacker will treat each OpenStack site of any variant as a single VIM that can"},{"line_number":103,"context_line":"be orchestrated in an uniform manner from the UI/ command line. Tacker will"},{"line_number":104,"context_line":"additionally be able to auto discover the regions that the operator can chose"},{"line_number":105,"context_line":"to select or not select certain site as VIM using cloud configuration file or"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_277bbdbf","line":102,"in_reply_to":"7a740942_a53a5097","updated":"2015-12-14 09:00:03.000000000","message":"This feature is already supported in heat main project. The configurations required are fairly simple and I am still in the process of trying out the standalone heat deployment, Tacker can utilize this feature if an operator has a stand alone heat service already running for a given site/VIM.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":6607,"name":"Andrew Veitch","email":"afveitch@gmail.com","username":"afveitch"},"change_message_id":"4b752997c46253ab5f3fb9ae336638ff1b33de02","unresolved":false,"context_lines":[{"line_number":102,"context_line":"Tacker will treat each OpenStack site of any variant as a single VIM that can"},{"line_number":103,"context_line":"be orchestrated in an uniform manner from the UI/ command line. Tacker will"},{"line_number":104,"context_line":"additionally be able to auto discover the regions that the operator can chose"},{"line_number":105,"context_line":"to select or not select certain site as VIM using cloud configuration file or"},{"line_number":106,"context_line":"querying identity API for the multi-region variant."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"*API changes*"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_1b181d84","line":105,"updated":"2015-12-14 23:07:09.000000000","message":"This sentence grammar is slightly off, so the meaning is not clear (to me, at least.)","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"9e873aa28543b6eb8d40bed207c6e72583cec49a","unresolved":false,"context_lines":[{"line_number":102,"context_line":"Tacker will treat each OpenStack site of any variant as a single VIM that can"},{"line_number":103,"context_line":"be orchestrated in an uniform manner from the UI/ command line. Tacker will"},{"line_number":104,"context_line":"additionally be able to auto discover the regions that the operator can chose"},{"line_number":105,"context_line":"to select or not select certain site as VIM using cloud configuration file or"},{"line_number":106,"context_line":"querying identity API for the multi-region variant."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"*API changes*"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a7e1126_a34e1e94","line":105,"in_reply_to":"5a710552_1b181d84","updated":"2015-12-18 08:51:13.000000000","message":"Done","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":19465,"name":"Bruce Thompson","email":"brucet@cisco.com","username":"brucetcisco"},"change_message_id":"a535b960ead0cf94b310651abe102bc8ab9345bd","unresolved":false,"context_lines":[{"line_number":106,"context_line":"querying identity API for the multi-region variant."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"*API changes*"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"This feature introduces the concept of \u0027vim\u0027 resource in Tacker resource model."},{"line_number":111,"context_line":"Tacker assumes the \u0027vim\u0027 resource (i.e , OpenStack instance) is reachable over"},{"line_number":112,"context_line":"L2/L3 network. Each OpenStack deployment is assumed to have it\u0027s own L2 sub"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_05f7a459","line":109,"updated":"2015-12-08 13:14:11.000000000","message":"If we use the approach I described above, then no additional APIs will need to be defined in Tacker. Instead, the Heat API will be used to instantiate a stack from a Heat template which has remote stacks defined within it. I believe this approach is also much closer to the approach which will be used for Heat multi cloud support. Heat multi cloud will essentially be providing the functionality described here within the core Heat subsystem.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":106,"context_line":"querying identity API for the multi-region variant."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"*API changes*"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"This feature introduces the concept of \u0027vim\u0027 resource in Tacker resource model."},{"line_number":111,"context_line":"Tacker assumes the \u0027vim\u0027 resource (i.e , OpenStack instance) is reachable over"},{"line_number":112,"context_line":"L2/L3 network. Each OpenStack deployment is assumed to have it\u0027s own L2 sub"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_a259dbfe","line":109,"in_reply_to":"7a740942_05f7a459","updated":"2015-12-14 09:00:03.000000000","message":"Tacker\u0027s multisite functionality will involve more than just storing keystone auth_url and heat end points in future. Even though there is workflow overlap between Heat\u0027s multicloud and Tacker\u0027s multisite feature in the current phase, the VIM APIs will be required to handle the telco operator\u0027s requirements from the NFV perspective such as orchestrating multiple hypervisors/VIMs (KVM, Xen, VMware, etc) beyond OpenStack and need a way to control and manage these resources.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":11819,"name":"Chaoyi Huang","email":"joehuang@huawei.com","username":"joehuang"},"change_message_id":"98369919c00cec458667bf6d690276815482f7d5","unresolved":false,"context_lines":[{"line_number":113,"context_line":"domain (individual provider network) or can belong to one big L2 domain with no"},{"line_number":114,"context_line":"overlapping provider address (shared provider network). Further it is assumed"},{"line_number":115,"context_line":"that the remote \u0027vim\u0027 resource has feature parity as any other \u0027vim\u0027 resource"},{"line_number":116,"context_line":"in the OpenStack cloud. The requirement of L2 overlay networking for inter VNF"},{"line_number":117,"context_line":"communication will be implemented in future iterations of this feature."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"A new \u0027vim\u0027 extension will be introduced to Tacker API v1 that defines the VIM"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_dd6b4284","line":116,"updated":"2015-12-10 09:30:38.000000000","message":"This patch(https://review.openstack.org/#/c/215409/) is to enable the L2 overlay networking for inter-VNF / inner-VNF communication. Could you also review this spec and co-worker together for the requirement, this requirement also one of the use case from OPNFV multi-site.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":113,"context_line":"domain (individual provider network) or can belong to one big L2 domain with no"},{"line_number":114,"context_line":"overlapping provider address (shared provider network). Further it is assumed"},{"line_number":115,"context_line":"that the remote \u0027vim\u0027 resource has feature parity as any other \u0027vim\u0027 resource"},{"line_number":116,"context_line":"in the OpenStack cloud. The requirement of L2 overlay networking for inter VNF"},{"line_number":117,"context_line":"communication will be implemented in future iterations of this feature."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"A new \u0027vim\u0027 extension will be introduced to Tacker API v1 that defines the VIM"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_bd65881e","line":116,"in_reply_to":"7a740942_dd6b4284","updated":"2015-12-14 09:00:03.000000000","message":"Sure, thanks for the pointer. Glad to know there is already a spec driving this requirement in neutron from OPNFV side. It will be good to think through requirements from Tacker SFC perspective for this spec for chaining VNFs across sites. I will review the spec. I have also included Tacker SFC sub-team [1] as reviewers, in case they have any inputs to provide for the spec\n\n[1] https://review.openstack.org/#/c/228007/","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":11819,"name":"Chaoyi Huang","email":"joehuang@huawei.com","username":"joehuang"},"change_message_id":"98369919c00cec458667bf6d690276815482f7d5","unresolved":false,"context_lines":[{"line_number":119,"context_line":"A new \u0027vim\u0027 extension will be introduced to Tacker API v1 that defines the VIM"},{"line_number":120,"context_line":"interface layer and describes the VIM CRUD operations. A \u0027vim-plugin\u0027 will"},{"line_number":121,"context_line":"implement the VIM interface layer. Configuring a new VIM will involve storing"},{"line_number":122,"context_line":"the remote VIM host\u0027s IP address, heat and keystone endpoint information in the"},{"line_number":123,"context_line":"Tacker database. These endpoints will be used to talk to heat and keystone"},{"line_number":124,"context_line":"clients on the remote VIM to orchestrate VNFs. Additionally, the create VIM"},{"line_number":125,"context_line":"workflow will include creating the \u0027service\u0027 tenant on the remote VIM as the"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_bdd75622","line":122,"updated":"2015-12-10 09:30:38.000000000","message":"\"host\u0027s IP address\" endpoints of core services. But these information could be obtained from KeyStone when needed. I suppose to integrate the identity management to KeyStone for Tacker","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":119,"context_line":"A new \u0027vim\u0027 extension will be introduced to Tacker API v1 that defines the VIM"},{"line_number":120,"context_line":"interface layer and describes the VIM CRUD operations. A \u0027vim-plugin\u0027 will"},{"line_number":121,"context_line":"implement the VIM interface layer. Configuring a new VIM will involve storing"},{"line_number":122,"context_line":"the remote VIM host\u0027s IP address, heat and keystone endpoint information in the"},{"line_number":123,"context_line":"Tacker database. These endpoints will be used to talk to heat and keystone"},{"line_number":124,"context_line":"clients on the remote VIM to orchestrate VNFs. Additionally, the create VIM"},{"line_number":125,"context_line":"workflow will include creating the \u0027service\u0027 tenant on the remote VIM as the"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_00e6af43","line":122,"in_reply_to":"7a740942_bdd75622","updated":"2015-12-14 09:00:03.000000000","message":"Agree. We can get heat endpoint information from keystone service and store that information in db as a one time insertion when creating a new VIM within Tacker.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":11819,"name":"Chaoyi Huang","email":"joehuang@huawei.com","username":"joehuang"},"change_message_id":"98369919c00cec458667bf6d690276815482f7d5","unresolved":false,"context_lines":[{"line_number":128,"context_line":"*Identity changes*"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"VIM operations will be performed by the operator with administrative privileges"},{"line_number":131,"context_line":"on the remote OpenStack site. Tacker currently deploys VNFs in \u0027service\u0027 tenant"},{"line_number":132,"context_line":"of an OpenStack site. Adding a new VIM in Tacker will involve the creation of"},{"line_number":133,"context_line":"\u0027service\u0027 tenant and \u0027tacker\u0027 user on the remote OpenStack site and associate"},{"line_number":134,"context_line":"the necessary roles for the user project pair."}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_ddc34237","line":131,"updated":"2015-12-10 09:30:38.000000000","message":"\"VIM operations will be performed by the operator with administrative privileges on the remote OpenStack site\". We can not make this assumption, already see use case that the multi-region cloud divided into several domain with its own user to deploy VIM/","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":128,"context_line":"*Identity changes*"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"VIM operations will be performed by the operator with administrative privileges"},{"line_number":131,"context_line":"on the remote OpenStack site. Tacker currently deploys VNFs in \u0027service\u0027 tenant"},{"line_number":132,"context_line":"of an OpenStack site. Adding a new VIM in Tacker will involve the creation of"},{"line_number":133,"context_line":"\u0027service\u0027 tenant and \u0027tacker\u0027 user on the remote OpenStack site and associate"},{"line_number":134,"context_line":"the necessary roles for the user project pair."}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_ace9d480","line":131,"in_reply_to":"7a740942_ddc34237","updated":"2015-12-14 09:00:03.000000000","message":"Agree. The reasoning behind this assumption is Tacker currently deploys VNFs in the default \u0027service\u0027 tenant for every user. In multisite use case, when Tacker orchestrates a remote VIM, Tacker is running outside that VIM and will need a way to fetch the credentials of the user who wants to deploy the VNF within their tenant of a given site. Even though heat supports providing context information such as tenant, username and password information for a given site/region, an operator may not be willing to provide  this information in a template. Keystone federation would be a good way to a handle such an use case which will taken up in future iterations. For the initial phase, it is assumed that VNFs will be deployed in a dedicated \u0027service\u0027 tenant of each site/region and this needs to be created before deploying the VNF itself. Hence, we will need the admin cred. that is stored in a clouds.yaml file","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"1dfd7d4b956d1fda49e5535e0a9745ddab1daba5","unresolved":false,"context_lines":[{"line_number":147,"context_line":"entry in \u0027device\u0027 table."},{"line_number":148,"context_line":""},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"*\u0027vim_id\u0027 in VNFD template*"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"A new \u0027vim_id\u0027 property will be added to the VNFD template under the vdu"},{"line_number":153,"context_line":"section \u0027placement_policy\u0027 that will allow the user to specify the VIM on which"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_ad904796","line":150,"updated":"2015-12-11 06:52:30.000000000","message":"I think we should postpone the VIM choose until vnf creation. VNFD should not be confined into VIM.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":147,"context_line":"entry in \u0027device\u0027 table."},{"line_number":148,"context_line":""},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"*\u0027vim_id\u0027 in VNFD template*"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"A new \u0027vim_id\u0027 property will be added to the VNFD template under the vdu"},{"line_number":153,"context_line":"section \u0027placement_policy\u0027 that will allow the user to specify the VIM on which"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_7194278a","line":150,"in_reply_to":"7a740942_ad904796","updated":"2015-12-14 09:00:03.000000000","message":"Operator will have both the options of providing vim selection in VNFD template as well as in vnf-create time. This property is not mandatory in the template.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"f725e13bbd54990ac7288a2e2379ffab0e57b1ec","unresolved":false,"context_lines":[{"line_number":151,"context_line":""},{"line_number":152,"context_line":"A new \u0027vim_id\u0027 property will be added to the VNFD template under the vdu"},{"line_number":153,"context_line":"section \u0027placement_policy\u0027 that will allow the user to specify the VIM on which"},{"line_number":154,"context_line":"VNF should be deployed. The \u0027vim_id\u0027 will be a valid VIM name or unique UUID"},{"line_number":155,"context_line":"that is already added and configured in Tacker through the \u0027vim\u0027 API. A"},{"line_number":156,"context_line":"snapshot of the new template is shown below:"},{"line_number":157,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_b63a8597","line":154,"updated":"2015-12-08 14:55:02.000000000","message":"Since the vim_id can be the ID or the name, can we change it to just \"vim\" so there is no confusion about whether the name is supported?","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"dc400ac5d97fa8c51fa64ff5ff15ab1ce9c8e5ca","unresolved":false,"context_lines":[{"line_number":151,"context_line":""},{"line_number":152,"context_line":"A new \u0027vim_id\u0027 property will be added to the VNFD template under the vdu"},{"line_number":153,"context_line":"section \u0027placement_policy\u0027 that will allow the user to specify the VIM on which"},{"line_number":154,"context_line":"VNF should be deployed. The \u0027vim_id\u0027 will be a valid VIM name or unique UUID"},{"line_number":155,"context_line":"that is already added and configured in Tacker through the \u0027vim\u0027 API. A"},{"line_number":156,"context_line":"snapshot of the new template is shown below:"},{"line_number":157,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_8c735fb4","line":154,"in_reply_to":"7a740942_b63a8597","updated":"2015-12-14 22:52:31.000000000","message":"+1","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":151,"context_line":""},{"line_number":152,"context_line":"A new \u0027vim_id\u0027 property will be added to the VNFD template under the vdu"},{"line_number":153,"context_line":"section \u0027placement_policy\u0027 that will allow the user to specify the VIM on which"},{"line_number":154,"context_line":"VNF should be deployed. The \u0027vim_id\u0027 will be a valid VIM name or unique UUID"},{"line_number":155,"context_line":"that is already added and configured in Tacker through the \u0027vim\u0027 API. A"},{"line_number":156,"context_line":"snapshot of the new template is shown below:"},{"line_number":157,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_d1be3b64","line":154,"in_reply_to":"7a740942_b63a8597","updated":"2015-12-14 09:00:03.000000000","message":"Section 6.3.2.4.2 VNFC instance (vnfr:vdu:vnfc_instance) in  http://www.etsi.org/deliver/etsi_gs/NFV-MAN/001_099/001/01.01.01_60/gs_nfv-man001v010101p.pdf refers VIM as vim_id. But the vim_id can be an id or name as you suggested, that should be resolved smartly and fetch vim info","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"1dfd7d4b956d1fda49e5535e0a9745ddab1daba5","unresolved":false,"context_lines":[{"line_number":161,"context_line":"      vdu1:"},{"line_number":162,"context_line":"        id: vdu1"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        placement_policy:"},{"line_number":165,"context_line":"          vim_id: vim3"},{"line_number":166,"context_line":"          availability_zone: nova"},{"line_number":167,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_4d7f6366","line":164,"updated":"2015-12-11 06:52:30.000000000","message":"vnfd should have same VIM, not the individual.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":161,"context_line":"      vdu1:"},{"line_number":162,"context_line":"        id: vdu1"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        placement_policy:"},{"line_number":165,"context_line":"          vim_id: vim3"},{"line_number":166,"context_line":"          availability_zone: nova"},{"line_number":167,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_b6dfe50b","line":164,"in_reply_to":"7a740942_4d7f6366","updated":"2015-12-14 09:00:03.000000000","message":"There can be cases where individual vdu\u0027s needs to be deployed in separate OpenStack instances for VNF high availability.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"1dfd7d4b956d1fda49e5535e0a9745ddab1daba5","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        placement_policy:"},{"line_number":165,"context_line":"          vim_id: vim3"},{"line_number":166,"context_line":"          availability_zone: nova"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"In case of multiple vdu\u0027s, all vdu\u0027s for a given VNF will contain the same"},{"line_number":169,"context_line":"vim_id and land on the same VIM. Handling different VIM placements for each vdu"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_adb92730","line":166,"updated":"2015-12-11 06:52:30.000000000","message":"I don\u0027t think the az is related to this. VIM should have defined the region and other endpoints.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":11819,"name":"Chaoyi Huang","email":"joehuang@huawei.com","username":"joehuang"},"change_message_id":"98369919c00cec458667bf6d690276815482f7d5","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        placement_policy:"},{"line_number":165,"context_line":"          vim_id: vim3"},{"line_number":166,"context_line":"          availability_zone: nova"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"In case of multiple vdu\u0027s, all vdu\u0027s for a given VNF will contain the same"},{"line_number":169,"context_line":"vim_id and land on the same VIM. Handling different VIM placements for each vdu"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_5de752ac","line":166,"updated":"2015-12-10 09:30:38.000000000","message":"It would be great to use region_id( in OpenStack, region is identified with region_name) + Availability Zone for VNF placement. The concept both work for public cloud like Amazon and OpenStack, also need no change to integrate Tricircle.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        placement_policy:"},{"line_number":165,"context_line":"          vim_id: vim3"},{"line_number":166,"context_line":"          availability_zone: nova"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"In case of multiple vdu\u0027s, all vdu\u0027s for a given VNF will contain the same"},{"line_number":169,"context_line":"vim_id and land on the same VIM. Handling different VIM placements for each vdu"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_d665d144","line":166,"in_reply_to":"7a740942_5de752ac","updated":"2015-12-14 09:00:03.000000000","message":"Similar to current OpenStack behavior of services for regions , VNFD template can have the region_name as a property and can deploy the VNF on default region(RegionOne), if no region is specified","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":163,"context_line":""},{"line_number":164,"context_line":"        placement_policy:"},{"line_number":165,"context_line":"          vim_id: vim3"},{"line_number":166,"context_line":"          availability_zone: nova"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"In case of multiple vdu\u0027s, all vdu\u0027s for a given VNF will contain the same"},{"line_number":169,"context_line":"vim_id and land on the same VIM. Handling different VIM placements for each vdu"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_b6f04568","line":166,"in_reply_to":"7a740942_adb92730","updated":"2015-12-14 09:00:03.000000000","message":"Yes, initially VIM will have defined the regions and endpoints. As part of VNFD template or during vnf-create, region_name can be specified optionally if the given site has more than one regions","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"f725e13bbd54990ac7288a2e2379ffab0e57b1ec","unresolved":false,"context_lines":[{"line_number":167,"context_line":""},{"line_number":168,"context_line":"In case of multiple vdu\u0027s, all vdu\u0027s for a given VNF will contain the same"},{"line_number":169,"context_line":"vim_id and land on the same VIM. Handling different VIM placements for each vdu"},{"line_number":170,"context_line":"will be taken as a future enhancement."},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"Suppose, vim_id property is not specified in the VNFD template, user can"},{"line_number":173,"context_line":"provide the --vim-id argument during the VNF create workflow to specify the VIM"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_56a2419a","line":170,"updated":"2015-12-08 14:55:02.000000000","message":"If the user specifies different VIMs for different VDUs in the same template, is that an error when the template is loaded?\n\nI\u0027m wondering if this should be a \"vdus\" level property so there is no confusion and no redundancy in the specification?\n\nAlso note that in the TOSCA NFV spec there is a \"VNF\" object that doesn\u0027t map directly to anything in Heat but could be used for VNF-level properties like this.  Support for this could be included in that effort.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":167,"context_line":""},{"line_number":168,"context_line":"In case of multiple vdu\u0027s, all vdu\u0027s for a given VNF will contain the same"},{"line_number":169,"context_line":"vim_id and land on the same VIM. Handling different VIM placements for each vdu"},{"line_number":170,"context_line":"will be taken as a future enhancement."},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"Suppose, vim_id property is not specified in the VNFD template, user can"},{"line_number":173,"context_line":"provide the --vim-id argument during the VNF create workflow to specify the VIM"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_312e9f8c","line":170,"in_reply_to":"7a740942_56a2419a","updated":"2015-12-14 09:00:03.000000000","message":"Good question, even though vdu\u0027s placement on different VIMs can be an use case, and will be supported in future enhancements, I assume \u0027Not supported functionality\u0027 message should be prompted to the user than an error message. Moving it to vdus level would limit the operator for deploying such an use case. I agree with you that it may be redundant in the current iteration. Thoughts?","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"f725e13bbd54990ac7288a2e2379ffab0e57b1ec","unresolved":false,"context_lines":[{"line_number":170,"context_line":"will be taken as a future enhancement."},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"Suppose, vim_id property is not specified in the VNFD template, user can"},{"line_number":173,"context_line":"provide the --vim-id argument during the VNF create workflow to specify the VIM"},{"line_number":174,"context_line":"selection. If vim_id is provided in both template and during VNF create, then"},{"line_number":175,"context_line":"the vim_id provided during the VNF create operation will take precedence and"},{"line_number":176,"context_line":"override the template value. Finally, if no vim_id is specified in both"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_56f7a18a","line":173,"updated":"2015-12-08 14:55:02.000000000","message":"Same note as above - --vim instead of --vim-id ?","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"dc400ac5d97fa8c51fa64ff5ff15ab1ce9c8e5ca","unresolved":false,"context_lines":[{"line_number":170,"context_line":"will be taken as a future enhancement."},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"Suppose, vim_id property is not specified in the VNFD template, user can"},{"line_number":173,"context_line":"provide the --vim-id argument during the VNF create workflow to specify the VIM"},{"line_number":174,"context_line":"selection. If vim_id is provided in both template and during VNF create, then"},{"line_number":175,"context_line":"the vim_id provided during the VNF create operation will take precedence and"},{"line_number":176,"context_line":"override the template value. Finally, if no vim_id is specified in both"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_4c6d77cb","line":173,"in_reply_to":"7a740942_56f7a18a","updated":"2015-12-14 22:52:31.000000000","message":"+1","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":170,"context_line":"will be taken as a future enhancement."},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"Suppose, vim_id property is not specified in the VNFD template, user can"},{"line_number":173,"context_line":"provide the --vim-id argument during the VNF create workflow to specify the VIM"},{"line_number":174,"context_line":"selection. If vim_id is provided in both template and during VNF create, then"},{"line_number":175,"context_line":"the vim_id provided during the VNF create operation will take precedence and"},{"line_number":176,"context_line":"override the template value. Finally, if no vim_id is specified in both"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_5161eb03","line":173,"in_reply_to":"7a740942_56f7a18a","updated":"2015-12-14 09:00:03.000000000","message":"As already mentioned, --vim-id can be a name or an id that will be resolved accordingly.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"f725e13bbd54990ac7288a2e2379ffab0e57b1ec","unresolved":false,"context_lines":[{"line_number":194,"context_line":""},{"line_number":195,"context_line":"::"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":" vim-create VIM3 --vim-config ~/vim3.yaml"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"The --vim-config is an optional argument that will contain the vim specific"},{"line_number":200,"context_line":"information as a yaml file similar to clouds.yaml or can be supplied as direct"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_f676cd04","line":197,"updated":"2015-12-08 14:55:02.000000000","message":"Maybe add the \"tacker\" command to the front of this example so it\u0027s clear that vim-create is a sub-command of the tacker command","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":194,"context_line":""},{"line_number":195,"context_line":"::"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":" vim-create VIM3 --vim-config ~/vim3.yaml"},{"line_number":198,"context_line":""},{"line_number":199,"context_line":"The --vim-config is an optional argument that will contain the vim specific"},{"line_number":200,"context_line":"information as a yaml file similar to clouds.yaml or can be supplied as direct"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_162ef98b","line":197,"in_reply_to":"7a740942_f676cd04","updated":"2015-12-14 09:00:03.000000000","message":"Done","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"f725e13bbd54990ac7288a2e2379ffab0e57b1ec","unresolved":false,"context_lines":[{"line_number":204,"context_line":"command will fail with an appropriate message."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"tacker vnf-create command will be updated to provide a new optional argument"},{"line_number":207,"context_line":"--vim-id, --vim-name that will allow a user to specify the VIM on which to"},{"line_number":208,"context_line":"deploy the VNF."},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"Similar changes will be done on the horizon dashboard for the NFV feature. A"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_76b5fd7b","line":207,"updated":"2015-12-08 14:55:02.000000000","message":"Can this be one --vim option and have the tool be smart enough to figure out which is provided?","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13380,"name":"Sridhar Ramaswamy","email":"srics.r@gmail.com","username":"srics-r"},"change_message_id":"dc400ac5d97fa8c51fa64ff5ff15ab1ce9c8e5ca","unresolved":false,"context_lines":[{"line_number":204,"context_line":"command will fail with an appropriate message."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"tacker vnf-create command will be updated to provide a new optional argument"},{"line_number":207,"context_line":"--vim-id, --vim-name that will allow a user to specify the VIM on which to"},{"line_number":208,"context_line":"deploy the VNF."},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"Similar changes will be done on the horizon dashboard for the NFV feature. A"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_ec5ea311","line":207,"in_reply_to":"7a740942_76b5fd7b","updated":"2015-12-14 22:52:31.000000000","message":"+1","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":204,"context_line":"command will fail with an appropriate message."},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"tacker vnf-create command will be updated to provide a new optional argument"},{"line_number":207,"context_line":"--vim-id, --vim-name that will allow a user to specify the VIM on which to"},{"line_number":208,"context_line":"deploy the VNF."},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"Similar changes will be done on the horizon dashboard for the NFV feature. A"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_f136d701","line":207,"in_reply_to":"7a740942_76b5fd7b","updated":"2015-12-14 09:00:03.000000000","message":"same as previous comment. the etsi nfv doc refers to vim as vim_id. this can be an actual id or vim name which will be resolved accordingly. Thoughts?","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"f725e13bbd54990ac7288a2e2379ffab0e57b1ec","unresolved":false,"context_lines":[{"line_number":208,"context_line":"deploy the VNF."},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"Similar changes will be done on the horizon dashboard for the NFV feature. A"},{"line_number":211,"context_line":"new tab \u0027Orchestrate VIM\u0027 will be added to handle the orchestration of new"},{"line_number":212,"context_line":"VIMs. The page will also display the current list of VIMs configured in Tacker."},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"*devstack changes*"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_96466979","line":211,"updated":"2015-12-08 14:55:02.000000000","message":"Nit - is this \"VIM Orchestration\" or \"VIM Administration\"?  It seems like administration of VIM resources available to tacker?","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":208,"context_line":"deploy the VNF."},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"Similar changes will be done on the horizon dashboard for the NFV feature. A"},{"line_number":211,"context_line":"new tab \u0027Orchestrate VIM\u0027 will be added to handle the orchestration of new"},{"line_number":212,"context_line":"VIMs. The page will also display the current list of VIMs configured in Tacker."},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"*devstack changes*"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_165cb917","line":211,"in_reply_to":"7a740942_96466979","updated":"2015-12-14 09:00:03.000000000","message":"This is \u0027VIM Orchestration\u0027. Will update this,","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":16511,"name":"Bob Haddleton","email":"bob.haddleton@nokia.com","username":"bobh"},"change_message_id":"f725e13bbd54990ac7288a2e2379ffab0e57b1ec","unresolved":false,"context_lines":[{"line_number":231,"context_line":"* Role-based Access Control for users to create VNFs in their own tenants on"},{"line_number":232,"context_line":"  local as well as remote VIMs"},{"line_number":233,"context_line":"* Multiple VDU deployment across multiple VIMs"},{"line_number":234,"context_line":"* SFC handling across multiple VIMs"},{"line_number":235,"context_line":""},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_9108b329","line":234,"updated":"2015-12-08 14:55:02.000000000","message":"Maybe add \"Support for non-OpenStack VIM types such as VMWare\"","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":231,"context_line":"* Role-based Access Control for users to create VNFs in their own tenants on"},{"line_number":232,"context_line":"  local as well as remote VIMs"},{"line_number":233,"context_line":"* Multiple VDU deployment across multiple VIMs"},{"line_number":234,"context_line":"* SFC handling across multiple VIMs"},{"line_number":235,"context_line":""},{"line_number":236,"context_line":""},{"line_number":237,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_7fa07b42","line":234,"in_reply_to":"7a740942_9108b329","updated":"2015-12-14 09:00:03.000000000","message":"Done","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"1dfd7d4b956d1fda49e5535e0a9745ddab1daba5","unresolved":false,"context_lines":[{"line_number":269,"context_line":" |              |       |        |          |            |template           |"},{"line_number":270,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":271,"context_line":" |host_ip       |string |RW, All |None      |string      |IP address of      |"},{"line_number":272,"context_line":" |              |       |        |          |            |OpenStack host     |"},{"line_number":273,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":274,"context_line":" |attributes    |dict   |RW, All |None      |dict        |OpenStack keystone |"},{"line_number":275,"context_line":" |              |       |        |          |            |and heat end-points|"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_8d61cbaa","line":272,"updated":"2015-12-11 06:52:30.000000000","message":"the keystone address? I don\u0027t know what is openstack host","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"112ae30a6c6f8a7bab8ef9d72f175a53633bd0be","unresolved":false,"context_lines":[{"line_number":269,"context_line":" |              |       |        |          |            |template           |"},{"line_number":270,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":271,"context_line":" |host_ip       |string |RW, All |None      |string      |IP address of      |"},{"line_number":272,"context_line":" |              |       |        |          |            |OpenStack host     |"},{"line_number":273,"context_line":" +---------------------------------------------------------------------------+"},{"line_number":274,"context_line":" |attributes    |dict   |RW, All |None      |dict        |OpenStack keystone |"},{"line_number":275,"context_line":" |              |       |        |          |            |and heat end-points|"}],"source_content_type":"text/x-rst","patch_set":5,"id":"7a740942_563801d3","line":272,"in_reply_to":"7a740942_8d61cbaa","updated":"2015-12-14 09:00:03.000000000","message":"yes, this will be the keystone_url. will update the table","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":15755,"name":"Martin Oemke","email":"zeih@zeih.eu","username":"zeih"},"change_message_id":"9f1f21b2a4c4489d1f21a4bc1936b0df00087f5d","unresolved":false,"context_lines":[{"line_number":357,"context_line":"New functional test cases will be added for VIM CRUD operations."},{"line_number":358,"context_line":"New VNFM test cases will be provided to test the vim_id option for vnf-create"},{"line_number":359,"context_line":"workflow."},{"line_number":360,"context_line":""},{"line_number":361,"context_line":"Documentation Impact"},{"line_number":362,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":363,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"5a710552_01f9314d","line":360,"updated":"2015-12-16 10:43:27.000000000","message":"Scenario testing\n---------------------\n\nNew scenario test cases.\n\nAt the moment multi-region setups are not possible in devstack-gate, but from my point of view it is necessary - any ideas how to make that happen or alternatives to devstack-gate?\n\nhttps://review.openstack.org/#/c/200309/","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"},{"author":{"_account_id":13485,"name":"Sripriya Seetharam","email":"sseetha@brocade.com","username":"Sripriya"},"change_message_id":"9e873aa28543b6eb8d40bed207c6e72583cec49a","unresolved":false,"context_lines":[{"line_number":357,"context_line":"New functional test cases will be added for VIM CRUD operations."},{"line_number":358,"context_line":"New VNFM test cases will be provided to test the vim_id option for vnf-create"},{"line_number":359,"context_line":"workflow."},{"line_number":360,"context_line":""},{"line_number":361,"context_line":"Documentation Impact"},{"line_number":362,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":363,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"3a7e1126_6e27bdb6","line":360,"in_reply_to":"5a710552_01f9314d","updated":"2015-12-18 08:51:13.000000000","message":"Thanks for identifying this. I have included scenario testing in the latest spec. We will probably need to work with infra team to get multiregion support in gate or collab with the folks who pushed that patchset. But certainly a good input to think over.","commit_id":"9805576dd2be88baf1e511b19c51a8ab2b302de9"}]}
