)]}'
{"specs/newton/approved/graph-based-cluster-model.rst":[{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":38,"context_line":"resource information for the Cluster and allow for the effective"},{"line_number":39,"context_line":"representation of the topology (landscape) of workload deployments."},{"line_number":40,"context_line":"Through this model graph analysis techniques could be employed in the"},{"line_number":41,"context_line":"context of the Strategy definition."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Use Cases"},{"line_number":44,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_14a8a476","line":41,"range":{"start_line":41,"start_character":34,"end_line":41,"end_character":35},"updated":"2016-05-04 15:16:38.000000000","message":"Don\u0027t you think that we should also be able to persist the history of this Cluster Data Model (and not only the current state), so that we can associate at any time some collected metrics to the topology of the cluster at the time the metric was collected ?\nFor example, we could collect some cpu about VMs but if we don\u0027t know on which compute node it was hosted, we may have difficulties to use this information in our strategy.","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":39,"context_line":"representation of the topology (landscape) of workload deployments."},{"line_number":40,"context_line":"Through this model graph analysis techniques could be employed in the"},{"line_number":41,"context_line":"context of the Strategy definition."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Use Cases"},{"line_number":44,"context_line":"----------"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_f76c0a38","line":42,"range":{"start_line":42,"start_character":0,"end_line":42,"end_character":0},"updated":"2016-05-04 15:16:38.000000000","message":"We may also have several Cluster Data Model depending on what we try to optimize (i.e. depending on the goal to achieve).\nThere could for example a common Cluster Data Model for all strategies aiming at optimizing the compute part of the cluster but we may have other Data Model regarding network or outlet temperature optimizations.","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Below we have presented what we believe is a good level of abstraction and"},{"line_number":85,"context_line":"have categorized these components into layers:"},{"line_number":86,"context_line":"Physical layer"},{"line_number":87,"context_line":"* Machines"},{"line_number":88,"context_line":"* Switches"},{"line_number":89,"context_line":"* Memory"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_51606ea4","line":86,"range":{"start_line":86,"start_character":9,"end_line":86,"end_character":14},"updated":"2016-05-04 15:16:38.000000000","message":"We may also add the following physical objects:\n\"Availability Zone\", \"Physical Bay\", \"Network link\", \"Router\", \"Storage NAS\"","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":93,"context_line":""},{"line_number":94,"context_line":"Virtual Layer"},{"line_number":95,"context_line":"* Virtual Machines"},{"line_number":96,"context_line":"* VNICs"},{"line_number":97,"context_line":"* VCPUs"},{"line_number":98,"context_line":"* Virtual networks"},{"line_number":99,"context_line":"* Virtual Storage"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_b18102fe","line":96,"range":{"start_line":96,"start_character":0,"end_line":96,"end_character":1},"updated":"2016-05-04 15:16:38.000000000","message":"Containers\nVirtual Bay (used by Magnum)","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":110,"context_line":""},{"line_number":111,"context_line":"The acquisition of the information regarding the topology of the Data Center"},{"line_number":112,"context_line":"resource will be realized through the RESTful APIs exposed by OpenStack such"},{"line_number":113,"context_line":"as Nova, Neutron etc."},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"Additionally using graphs to structure resource information will allow the"},{"line_number":116,"context_line":"use of well researched and defined graph algorithms to derive further insights"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_d71f4e6e","line":113,"range":{"start_line":113,"start_character":21,"end_line":113,"end_character":21},"updated":"2016-05-04 15:16:38.000000000","message":"We may have a background task which would be responsible for building this model and updating it continuously (for performance reasons).\nWe may also say that the strategy will be able to request the model using some helper class. \nThis way, several strategies could share the same Cluster Model and have the same way to request it.","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":134,"context_line":""},{"line_number":135,"context_line":"There is no direct impact of the Watcher Data Model regarding the dependencies"},{"line_number":136,"context_line":"of the entities in the Architecture."},{"line_number":137,"context_line":"The graph model will be provided my a independent module upon request and"},{"line_number":138,"context_line":"could accompany (be a part) of the Cluster Data Model created by the Watcher"},{"line_number":139,"context_line":"Decision Engine."},{"line_number":140,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_b1fd8270","line":137,"range":{"start_line":137,"start_character":33,"end_line":137,"end_character":35},"updated":"2016-05-04 15:16:38.000000000","message":"s/my/by","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":136,"context_line":"of the entities in the Architecture."},{"line_number":137,"context_line":"The graph model will be provided my a independent module upon request and"},{"line_number":138,"context_line":"could accompany (be a part) of the Cluster Data Model created by the Watcher"},{"line_number":139,"context_line":"Decision Engine."},{"line_number":140,"context_line":""},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"REST API impact"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_3177b203","line":139,"range":{"start_line":139,"start_character":15,"end_line":139,"end_character":16},"updated":"2016-05-04 15:16:38.000000000","message":"Shouldn\u0027t we mention some potential graph oriented databases (such as Neo4j) which would be more performant for persisting and processing that kind of graph ?","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":163,"context_line":"------------------"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"The generation of the graph model will be performed in realtime and upon"},{"line_number":166,"context_line":"request. There is no significant performance impact estimated."},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"Other deployer impact"},{"line_number":169,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_77047ac5","line":166,"range":{"start_line":166,"start_character":61,"end_line":166,"end_character":62},"updated":"2016-05-04 15:16:38.000000000","message":"We need to make sure that the Cluster Model is created when Watcher is launched and continuously updated when some event happens (creation of a new VM, add/remove some compute node, ...).\nThis way, whenever a strategy is executed, the cluster model is already loaded in memory and can be used immediately.","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":201,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":202,"context_line":""},{"line_number":203,"context_line":"No direct dependencies."},{"line_number":204,"context_line":""},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"Testing"},{"line_number":207,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_f41fe806","line":204,"range":{"start_line":204,"start_character":0,"end_line":204,"end_character":0},"updated":"2016-05-04 15:16:38.000000000","message":"Isn\u0027t there a dependency with the following blueprint :\ncluster-model-objects-wrapper\n???","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":19214,"name":"Vincent Mahe","email":"vincent.mahe@b-com.com","username":"vmahe35"},"change_message_id":"58ab87f58c21236199f6eb28e6daf8f2627e3264","unresolved":false,"context_lines":[{"line_number":225,"context_line":""},{"line_number":226,"context_line":"This work is related with research activities in the context"},{"line_number":227,"context_line":"of the CloudWave FP7 EU project (www.cloudwave-fp7.eu)."},{"line_number":228,"context_line":""},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"History"},{"line_number":231,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a122d0e_f1241ac7","line":228,"range":{"start_line":228,"start_character":0,"end_line":228,"end_character":0},"updated":"2016-05-04 15:16:38.000000000","message":"We could also mention the Cloud simulation tools such as :\n- CloudSim: https://github.com/Cloudslab/cloudsim\n- SimGrid : http://simgrid.gforge.inria.fr/\n\nThese tools provide some good model of infrastructure.","commit_id":"4665b9f2e4d4020630a9f95784b9d10eea652fc6"},{"author":{"_account_id":16495,"name":"Jean-Emile DARTOIS","email":"jean-emile.dartois@b-com.com","username":"JeD"},"change_message_id":"3f4aacbd80a08d0233a1ad552d1a5bfe6a2bc722","unresolved":false,"context_lines":[{"line_number":61,"context_line":"Proposed change"},{"line_number":62,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"The proposed model is a representation of the physical and virtual structure"},{"line_number":65,"context_line":"of the resource existing in a data centre. It gives us an overview of where"},{"line_number":66,"context_line":"a service is placed in the data centre, the underlying hardware, the network"},{"line_number":67,"context_line":"components through which resources communicate, details about the virtual"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a9d85d2_d6380c40","line":64,"updated":"2016-06-21 09:50:47.000000000","message":"What is the graph library that you plan to use ? \n\nI know NetworkX which is available in openstack global requirements.","commit_id":"45e4c0adde1539432727c45275f007b2de8e8d73"},{"author":{"_account_id":20515,"name":"Tomasz Kaczynski","email":"tomasz.kaczynski@intel.com","username":"tkaczynski"},"change_message_id":"1ea9c1279ab52f7f325bd4779e2fc16cf53f41be","unresolved":false,"context_lines":[{"line_number":172,"context_line":"The generation of the graph model will be performed in realtime and upon"},{"line_number":173,"context_line":"request. There is no significant performance impact estimated. In case the"},{"line_number":174,"context_line":"on-demand graph creation is slow, the task will be triggered on the"},{"line_number":175,"context_line":"background upon Watcher start-up and/or event realization."},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"Other deployer impact"},{"line_number":178,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"bab6814e_1f181a84","line":175,"updated":"2016-05-18 12:08:16.000000000","message":"Querying the environment on every request might be a problem. Watcher will soon support continuous audits, which might force re-querying quite often. I suggest to at least perform some experiments and collect some real numbers what might be an impact in small, medium and large OpenStack environments. And at least point to the possible solution, if it\u0027s too early to implement it now.","commit_id":"45e4c0adde1539432727c45275f007b2de8e8d73"},{"author":{"_account_id":20503,"name":"Grigorios Katsaros","email":"gregory.katsaros@intel.com","username":"gkatsaro"},"change_message_id":"eb071b2df16306d0b2f209f5289c70c0a4788e0a","unresolved":false,"context_lines":[{"line_number":172,"context_line":"The generation of the graph model will be performed in realtime and upon"},{"line_number":173,"context_line":"request. There is no significant performance impact estimated. In case the"},{"line_number":174,"context_line":"on-demand graph creation is slow, the task will be triggered on the"},{"line_number":175,"context_line":"background upon Watcher start-up and/or event realization."},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"Other deployer impact"},{"line_number":178,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_74ce342f","line":175,"in_reply_to":"bab6814e_1f181a84","updated":"2016-05-31 13:32:46.000000000","message":"We are assessing the overhead already and suggest potential solutions when having the first results.","commit_id":"45e4c0adde1539432727c45275f007b2de8e8d73"},{"author":{"_account_id":16495,"name":"Jean-Emile DARTOIS","email":"jean-emile.dartois@b-com.com","username":"JeD"},"change_message_id":"121c3d2257a46d3391a7b635eba2543950f63007","unresolved":false,"context_lines":[{"line_number":202,"context_line":"Workplan:"},{"line_number":203,"context_line":"* Finalization of the conceptual methodology"},{"line_number":204,"context_line":"* Definition of information to be captured and service APIs."},{"line_number":205,"context_line":"* Implementation of the graph model service."},{"line_number":206,"context_line":"* Integration and testing."},{"line_number":207,"context_line":""},{"line_number":208,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a9d85d2_599bad72","line":205,"updated":"2016-06-21 10:02:09.000000000","message":"Sorry, I didn\u0027t see your Work items in my first reading.\nCould you please add precise the technical tasks ?","commit_id":"45e4c0adde1539432727c45275f007b2de8e8d73"},{"author":{"_account_id":16495,"name":"Jean-Emile DARTOIS","email":"jean-emile.dartois@b-com.com","username":"JeD"},"change_message_id":"3f4aacbd80a08d0233a1ad552d1a5bfe6a2bc722","unresolved":false,"context_lines":[{"line_number":228,"context_line":""},{"line_number":229,"context_line":"It will be necessary to add new content relating to the Cluster Data Model"},{"line_number":230,"context_line":"operation of the Watcher Decision Engine."},{"line_number":231,"context_line":""},{"line_number":232,"context_line":""},{"line_number":233,"context_line":"References"},{"line_number":234,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5a9d85d2_b6a100ac","line":231,"updated":"2016-06-21 09:50:47.000000000","message":"Could you please add the section \u0027Work Items\u0027 ?\n\nwe\u0027re mostly trying to understand the timeline for implementation.","commit_id":"45e4c0adde1539432727c45275f007b2de8e8d73"},{"author":{"_account_id":19899,"name":"Xiang Li","email":"li.xiang2@zte.com.cn","username":"ShawnLee"},"change_message_id":"56e28938b87d2bf8912f1240b8e0fb840aac2eae","unresolved":false,"context_lines":[{"line_number":96,"context_line":"* Router"},{"line_number":97,"context_line":"* Storage NAS"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"Virtual Layer"},{"line_number":100,"context_line":"* Virtual Machines"},{"line_number":101,"context_line":"* VNICs"},{"line_number":102,"context_line":"* VCPUs"}],"source_content_type":"text/x-rst","patch_set":12,"id":"dada55a8_12c94dad","line":99,"updated":"2016-07-22 09:30:12.000000000","message":"I think Virtual Router should be added in this list.","commit_id":"d3fc2ab54e0a556f898f191245d102652805dc31"},{"author":{"_account_id":6437,"name":"Susanne Balle","email":"sleipnir012@gmail.com","username":"susanne-balle"},"change_message_id":"dec9e13acfc18cca01cc5ff52c17feb23ea13bf2","unresolved":false,"context_lines":[{"line_number":117,"context_line":"therefore workloads with different requirements at the virtual or physical"},{"line_number":118,"context_line":"layers can be captured."},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"The acquisition of the information regarding the topology of the Data Center"},{"line_number":121,"context_line":"resource will be realized through the RESTful APIs exposed by OpenStack such"},{"line_number":122,"context_line":"as Nova, Neutron etc."},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"Additionally using graphs to structure resource information will allow the"},{"line_number":125,"context_line":"use of well researched and defined graph algorithms to derive further insights"}],"source_content_type":"text/x-rst","patch_set":12,"id":"1aa78d24_565434c9","line":122,"range":{"start_line":120,"start_character":0,"end_line":122,"end_character":21},"updated":"2016-07-14 15:45:38.000000000","message":"Do we expect there to be a scale limitation to what this graph model can handle?","commit_id":"d3fc2ab54e0a556f898f191245d102652805dc31"},{"author":{"_account_id":6437,"name":"Susanne Balle","email":"sleipnir012@gmail.com","username":"susanne-balle"},"change_message_id":"dec9e13acfc18cca01cc5ff52c17feb23ea13bf2","unresolved":false,"context_lines":[{"line_number":171,"context_line":"Performance Impact"},{"line_number":172,"context_line":"------------------"},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"The generation of the graph model will be performed in realtime and upon"},{"line_number":175,"context_line":"request. There is no significant performance impact estimated. In case the"},{"line_number":176,"context_line":"on-demand graph creation is slow, the task will be triggered on the"},{"line_number":177,"context_line":"background upon Watcher start-up and/or event realization."},{"line_number":178,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"1aa78d24_76bdf0d6","line":175,"range":{"start_line":174,"start_character":0,"end_line":175,"end_character":7},"updated":"2016-07-14 15:45:38.000000000","message":"Does everybody agree that this will not impact overall Watcher performance when Watcher is running an Audit? Do we need to make sure that Watcher Audits get higher priorities over Graph creation? Is this a none issue? \n\njed56 what do you think?","commit_id":"d3fc2ab54e0a556f898f191245d102652805dc31"},{"author":{"_account_id":6437,"name":"Susanne Balle","email":"sleipnir012@gmail.com","username":"susanne-balle"},"change_message_id":"dec9e13acfc18cca01cc5ff52c17feb23ea13bf2","unresolved":false,"context_lines":[{"line_number":205,"context_line":"* Finalization of the conceptual methodology"},{"line_number":206,"context_line":"* Definition of information to be captured and service APIs."},{"line_number":207,"context_line":"* Implementation of the graph model service:"},{"line_number":208,"context_line":"Implementation of the graph model server fro building"},{"line_number":209,"context_line":"the NetworkX model."},{"line_number":210,"context_line":"Implementation of the RESTful endpoints and APIs for"},{"line_number":211,"context_line":"graph extraction (json) and model acquisition."}],"source_content_type":"text/x-rst","patch_set":12,"id":"1aa78d24_56c71464","line":208,"range":{"start_line":208,"start_character":41,"end_line":208,"end_character":44},"updated":"2016-07-14 15:45:38.000000000","message":"nit: typo","commit_id":"d3fc2ab54e0a556f898f191245d102652805dc31"},{"author":{"_account_id":7664,"name":"Joe Cropper","email":"jwcroppe@us.ibm.com","username":"jwcroppe"},"change_message_id":"2ed551f45c927ebb664c555bbd98dbce35272431","unresolved":false,"context_lines":[{"line_number":16,"context_line":"we want to have a simple graph model. The graph model should describe how VMs"},{"line_number":17,"context_line":"are associated to compute hosts, how virtual networks entities are mapped to"},{"line_number":18,"context_line":"physical networks devices, objects/block storage objects to physical storage"},{"line_number":19,"context_line":"devices. Furthermore this show how all these entities are interconnected (e.g."},{"line_number":20,"context_line":"showing how two VMs are connected virtually and subsequently through the"},{"line_number":21,"context_line":"physical network). This allows for seeing relationships upfront between the"},{"line_number":22,"context_line":"entities and hence can be used to identify hot/cold spots in the data center"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_9d4a4982","line":19,"range":{"start_line":19,"start_character":26,"end_line":19,"end_character":30},"updated":"2016-08-15 16:58:04.000000000","message":"shows","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":7664,"name":"Joe Cropper","email":"jwcroppe@us.ibm.com","username":"jwcroppe"},"change_message_id":"2ed551f45c927ebb664c555bbd98dbce35272431","unresolved":false,"context_lines":[{"line_number":32,"context_line":"challenging task. To this end, the Cluster Data Model is a vital source of"},{"line_number":33,"context_line":"knowledge that contributes to the decision making. Relational data modeling"},{"line_number":34,"context_line":"approaches do not capture efficiently the correlations of resource"},{"line_number":35,"context_line":"deployments, network attributes etc."},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"In this specification we propose a graph based data model that would aggregate"},{"line_number":38,"context_line":"resource information for the Cluster and allow for the effective"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_dd3b21ea","line":35,"range":{"start_line":35,"start_character":31,"end_line":35,"end_character":32},"updated":"2016-08-15 16:58:04.000000000","message":",","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":8549,"name":"Sameer Adhikari","email":"tri2sing@gmail.com","username":"tri2sing"},"change_message_id":"389a4560922b2cf108a866114253f89420a805ae","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Use Cases"},{"line_number":44,"context_line":"----------"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"The graph model representation of the virtual and physical resource of a"},{"line_number":47,"context_line":"Cluster in Watcher would enhance the Cluster Data Model and allow powerful"},{"line_number":48,"context_line":"analysis to be applied during the Strategy definition. Therefore, the use"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_80225550","line":45,"updated":"2016-08-17 20:59:27.000000000","message":"This section requires examples of use cases.  \n\nOne use case, as a example, and not necessarily as an exact one to use, could be as follows:\n\"As a goal strategy developer, I need a graph model to decide on a destination hypervisor for a VM, which is not connected to the network of hypervisors supporting the tenant/project VMs. \"\n\nThe statement \"allow powerful analysis to be applied\", is too generic to a use case.","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":7664,"name":"Joe Cropper","email":"jwcroppe@us.ibm.com","username":"jwcroppe"},"change_message_id":"2ed551f45c927ebb664c555bbd98dbce35272431","unresolved":false,"context_lines":[{"line_number":67,"context_line":"components through which resources communicate, details about the virtual"},{"line_number":68,"context_line":"servers and the virtual components that constitute an entire deployment etc."},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Retrieval of the graph model will be real-time and the structure will mirror"},{"line_number":71,"context_line":"that of the infrastructure topology."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"Each application stack will be mapped with resources in the virtual layer"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_208a0cc0","line":70,"updated":"2016-08-15 16:58:04.000000000","message":"Do we have any performance considerations on this?  Should we consider some type of caching to help with back-to-back retrievals...?  Just something to consider.","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":8549,"name":"Sameer Adhikari","email":"tri2sing@gmail.com","username":"tri2sing"},"change_message_id":"389a4560922b2cf108a866114253f89420a805ae","unresolved":false,"context_lines":[{"line_number":67,"context_line":"components through which resources communicate, details about the virtual"},{"line_number":68,"context_line":"servers and the virtual components that constitute an entire deployment etc."},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Retrieval of the graph model will be real-time and the structure will mirror"},{"line_number":71,"context_line":"that of the infrastructure topology."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"Each application stack will be mapped with resources in the virtual layer"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_40585d8a","line":70,"in_reply_to":"3ac371cc_208a0cc0","updated":"2016-08-17 20:59:27.000000000","message":"What is the definition of real-time?  Are you going to be polling for data constantly, or will it be on-demand?","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":7664,"name":"Joe Cropper","email":"jwcroppe@us.ibm.com","username":"jwcroppe"},"change_message_id":"2ed551f45c927ebb664c555bbd98dbce35272431","unresolved":false,"context_lines":[{"line_number":83,"context_line":""},{"line_number":84,"context_line":"Below we have presented what we believe is a good level of abstraction and"},{"line_number":85,"context_line":"have categorized these components into layers:"},{"line_number":86,"context_line":"Physical layer"},{"line_number":87,"context_line":"* Machines"},{"line_number":88,"context_line":"* Switches"},{"line_number":89,"context_line":"* Memory"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_20268cce","line":86,"updated":"2016-08-15 16:58:04.000000000","message":"How are you querying for all of these devices?  e.g., OpenStack, AFAIK, doesn\u0027t know about the physical switches?\n\nI\u0027d just like to understand what we\u0027re using as the authoritative source for all of these objects.","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":8549,"name":"Sameer Adhikari","email":"tri2sing@gmail.com","username":"tri2sing"},"change_message_id":"389a4560922b2cf108a866114253f89420a805ae","unresolved":false,"context_lines":[{"line_number":90,"context_line":"* Disks"},{"line_number":91,"context_line":"* CPUs"},{"line_number":92,"context_line":"* NICs"},{"line_number":93,"context_line":"* Availability Zone"},{"line_number":94,"context_line":"* Physical Bay"},{"line_number":95,"context_line":"* Network link"},{"line_number":96,"context_line":"* Router"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_e0bce9bc","line":93,"updated":"2016-08-17 20:59:27.000000000","message":"Should AZ this be in the virtual layer?","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":8549,"name":"Sameer Adhikari","email":"tri2sing@gmail.com","username":"tri2sing"},"change_message_id":"389a4560922b2cf108a866114253f89420a805ae","unresolved":false,"context_lines":[{"line_number":104,"context_line":"* Virtual Storage"},{"line_number":105,"context_line":"* Containers"},{"line_number":106,"context_line":"* Virtual Bay (used by Magnum)"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"Components in the landscape/topology will be represented as nodes and"},{"line_number":109,"context_line":"connections to other components will be represented as edges between these"},{"line_number":110,"context_line":"nodes. By doing this across all components, a graph outlining the structure"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_20ea81ac","line":107,"updated":"2016-08-17 20:59:27.000000000","message":"Should tenants/projects be included in this layer?","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":7664,"name":"Joe Cropper","email":"jwcroppe@us.ibm.com","username":"jwcroppe"},"change_message_id":"2ed551f45c927ebb664c555bbd98dbce35272431","unresolved":false,"context_lines":[{"line_number":117,"context_line":"therefore workloads with different requirements at the virtual or physical"},{"line_number":118,"context_line":"layers can be captured."},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"The acquisition of the information regarding the topology of the Data Center"},{"line_number":121,"context_line":"resource will be realized through the RESTful APIs exposed by OpenStack such"},{"line_number":122,"context_line":"as Nova, Neutron etc."},{"line_number":123,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_c3aa22d4","line":120,"updated":"2016-08-15 16:58:04.000000000","message":"This sounds like it ties back to my question above about the authoritative source(s) of information.\n\nAre there any special configurations of the OpenStack services that someone needs to retrieve all of this information?\n\nIt would be nice to clarify what service(s)/APIs are used to retrieve the objects above.","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":7664,"name":"Joe Cropper","email":"jwcroppe@us.ibm.com","username":"jwcroppe"},"change_message_id":"2ed551f45c927ebb664c555bbd98dbce35272431","unresolved":false,"context_lines":[{"line_number":144,"context_line":"There is no direct impact of the Watcher Data Model regarding the dependencies"},{"line_number":145,"context_line":"of the entities in the Architecture."},{"line_number":146,"context_line":"The graph model will be provided by an independent module upon request and"},{"line_number":147,"context_line":"could accompany (be a part) of the Cluster Data Model created by the Watcher"},{"line_number":148,"context_line":"Decision Engine."},{"line_number":149,"context_line":""},{"line_number":150,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_e37c7e74","line":147,"range":{"start_line":147,"start_character":16,"end_line":147,"end_character":30},"updated":"2016-08-15 16:58:04.000000000","message":"nit - \u0027of\u0027 belongs within the ()","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":7664,"name":"Joe Cropper","email":"jwcroppe@us.ibm.com","username":"jwcroppe"},"change_message_id":"2ed551f45c927ebb664c555bbd98dbce35272431","unresolved":false,"context_lines":[{"line_number":151,"context_line":"REST API impact"},{"line_number":152,"context_line":"---------------"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"There is no impact on the REST API."},{"line_number":155,"context_line":""},{"line_number":156,"context_line":"Security impact"},{"line_number":157,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_03db9a7d","line":154,"updated":"2016-08-15 16:58:04.000000000","message":"Ok, so Watcher won\u0027t expose a REST API to retrieve the graph data?  That makes sense (at least initially)... internal only APIs for the graph model?","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":7664,"name":"Joe Cropper","email":"jwcroppe@us.ibm.com","username":"jwcroppe"},"change_message_id":"2ed551f45c927ebb664c555bbd98dbce35272431","unresolved":false,"context_lines":[{"line_number":184,"context_line":"Developer impact"},{"line_number":185,"context_line":"----------------"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"It will not impact other developers working on OpenStack."},{"line_number":188,"context_line":""},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"Implementation"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_c32b422f","line":187,"updated":"2016-08-15 16:58:04.000000000","message":"See my comment above on caching... I think we may want to consider something vs. building new graphs all the time (and maybe have some type of \u0027TTL\u0027 on the graph with a forced refresh or some such).","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"},{"author":{"_account_id":8549,"name":"Sameer Adhikari","email":"tri2sing@gmail.com","username":"tri2sing"},"change_message_id":"389a4560922b2cf108a866114253f89420a805ae","unresolved":false,"context_lines":[{"line_number":245,"context_line":"modeling concept. The CloudSim (https://github.com/Cloudslab/cloudsim)"},{"line_number":246,"context_line":"and SimGrid (http://simgrid.gforge.inria.fr/) can be cited as related"},{"line_number":247,"context_line":"infrastructure morels."},{"line_number":248,"context_line":""},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"History"},{"line_number":251,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":13,"id":"3ac371cc_60dab9e9","line":248,"updated":"2016-08-17 20:59:27.000000000","message":"Typo: I assume you meant models and not morels.","commit_id":"fc44c34910113b86c4f84f6dd5ce2f329efc74be"}],"specs/ocata/approved/graph-based-cluster-model.rst":[{"author":{"_account_id":8549,"name":"Sameer Adhikari","email":"tri2sing@gmail.com","username":"tri2sing"},"change_message_id":"1f3587bd12759a62c3f1c134445db7d01796d9e5","unresolved":false,"context_lines":[{"line_number":76,"context_line":"predefined time interval. The implemented service will keep in cache the"},{"line_number":77,"context_line":"latest graph in order to minimize the interaction with the Openstack"},{"line_number":78,"context_line":"services in continous requests."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"Each application stack will be mapped with resources in the virtual layer"},{"line_number":81,"context_line":"and each virtual layer resources will be mapped with physical layer nodes."},{"line_number":82,"context_line":"A mesh structure of the service, virtual and physical resource will be"}],"source_content_type":"text/x-rst","patch_set":15,"id":"1ac06dbe_b96f072a","line":79,"updated":"2016-08-22 18:35:43.000000000","message":"Apart from retrieving components at real-time, due to virtual resources dynamically coming and going, the notion of edges connecting the nodes has to be dynamic too. \nAs an example, consider the natural scenario where all the hosts are shown connected to all other hosts because they share a physical network.  At the same time the VMs are connected to a host.  For migration of a VM to another host on which no other VM of the same tenant exists, my edges between hosts, should not be based on the physical network among the hosts, but on the tenant attribute of the VM.   \nThis fact of dynamic connectivity calculation impacts how the graph model should conceptualize and store edge information.","commit_id":"3d9b511f00a07f7d3c91d4901a01403da160a997"},{"author":{"_account_id":8549,"name":"Sameer Adhikari","email":"tri2sing@gmail.com","username":"tri2sing"},"change_message_id":"1f3587bd12759a62c3f1c134445db7d01796d9e5","unresolved":false,"context_lines":[{"line_number":112,"context_line":"* Virtual Bay (used by Magnum)"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"This is an indicative list of nodes that could populate the graph. The"},{"line_number":115,"context_line":"exast type of nodes that will be offered is depended from the platfrom"},{"line_number":116,"context_line":"services (e.g. Nova, Neutron, ODL etc.) available in the testbed."},{"line_number":117,"context_line":"Components in the landscape/topology will be represented as nodes and"},{"line_number":118,"context_line":"connections to other components will be represented as edges between these"}],"source_content_type":"text/x-rst","patch_set":15,"id":"1ac06dbe_59eb7378","line":115,"updated":"2016-08-22 18:35:43.000000000","message":"Couple of minor typos in this line.  Please change the following:\n\"exast\" to \"exact\", and \"depended from\" to \"dependent upon\".","commit_id":"3d9b511f00a07f7d3c91d4901a01403da160a997"}]}
