)]}'
{"doc/common/section_getstart_logical_arch.xml":[{"author":{"_account_id":167,"name":"Christian Berendt","email":"berendt@osism.tech","username":"berendt"},"change_message_id":"3706629c16293970e25b22e0dbaad8963ae042a6","unresolved":false,"context_lines":[{"line_number":11,"context_line":"  several rather"},{"line_number":12,"context_line":"  independent parts, named the OpenStack services."},{"line_number":13,"context_line":"  All services authenticate"},{"line_number":14,"context_line":"  through a common Identity Service and individual services interact"},{"line_number":15,"context_line":"  with each other through public APIs, except where privileged"},{"line_number":16,"context_line":"  administrator commands are necessary.\u003c/para\u003e"},{"line_number":17,"context_line":""}],"source_content_type":"application/xml","patch_set":1,"id":"1aca2d91_d9514a64","line":14,"updated":"2015-05-06 20:36:03.000000000","message":"Identity service","commit_id":"6d7447ce3de865a7b45ce932446005a2999fbb79"},{"author":{"_account_id":167,"name":"Christian Berendt","email":"berendt@osism.tech","username":"berendt"},"change_message_id":"3706629c16293970e25b22e0dbaad8963ae042a6","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"  \u003cpara\u003e"},{"line_number":19,"context_line":"  Internally, most OpenStack services are composed of several process"},{"line_number":20,"context_line":"  that are often distributed over physical hosts. All services have at"},{"line_number":21,"context_line":"  least one"},{"line_number":22,"context_line":"  API process, which listens for API requests, preprocesses them and"},{"line_number":23,"context_line":"  passes them on to other parts of the service.\u003c/para\u003e"}],"source_content_type":"application/xml","patch_set":1,"id":"1aca2d91_f902c63d","line":20,"updated":"2015-05-06 20:36:03.000000000","message":"I would only talk about the distribution itself, not about physical hosts.","commit_id":"6d7447ce3de865a7b45ce932446005a2999fbb79"},{"author":{"_account_id":167,"name":"Christian Berendt","email":"berendt@osism.tech","username":"berendt"},"change_message_id":"3706629c16293970e25b22e0dbaad8963ae042a6","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":"  \u003cpara\u003e"},{"line_number":26,"context_line":"  For communication between the processes of one service, an AMQP message"},{"line_number":27,"context_line":"  queue is used. The service\u0027s state is stored in a database."},{"line_number":28,"context_line":"  When deploying and configuring your OpenStack cloud, you can choose among"},{"line_number":29,"context_line":"  a list of several message queue and database solutions, such as"},{"line_number":30,"context_line":"  RabbitMQ, qpid, mysql and sqlite."}],"source_content_type":"application/xml","patch_set":1,"id":"1aca2d91_79eeb68c","line":27,"updated":"2015-05-06 20:36:03.000000000","message":"I think this sould be \"AMQP message broker\" instead of \"AMQP message queue\".","commit_id":"6d7447ce3de865a7b45ce932446005a2999fbb79"},{"author":{"_account_id":167,"name":"Christian Berendt","email":"berendt@osism.tech","username":"berendt"},"change_message_id":"3706629c16293970e25b22e0dbaad8963ae042a6","unresolved":false,"context_lines":[{"line_number":27,"context_line":"  queue is used. The service\u0027s state is stored in a database."},{"line_number":28,"context_line":"  When deploying and configuring your OpenStack cloud, you can choose among"},{"line_number":29,"context_line":"  a list of several message queue and database solutions, such as"},{"line_number":30,"context_line":"  RabbitMQ, qpid, mysql and sqlite."},{"line_number":31,"context_line":"  \u003c/para\u003e"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"  \u003cpara\u003e"}],"source_content_type":"application/xml","patch_set":1,"id":"1aca2d91_395a7e84","line":30,"updated":"2015-05-06 20:36:03.000000000","message":"Qpid, MySQL (should we use MariaDB instead of MySQL?), SQLite","commit_id":"6d7447ce3de865a7b45ce932446005a2999fbb79"},{"author":{"_account_id":167,"name":"Christian Berendt","email":"berendt@osism.tech","username":"berendt"},"change_message_id":"3706629c16293970e25b22e0dbaad8963ae042a6","unresolved":false,"context_lines":[{"line_number":31,"context_line":"  \u003c/para\u003e"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"  \u003cpara\u003e"},{"line_number":34,"context_line":"  Users can access OpenStack via GUI, implemented by the Dashboard service,"},{"line_number":35,"context_line":"  via command line clients and by issuing API requests through tools like"},{"line_number":36,"context_line":"  browser plugins or \u003ccommand\u003ecurl\u003c/command\u003e. For applications, several"},{"line_number":37,"context_line":"  SDKs are available. Ultimately, all these access methods issue ReSTful API"}],"source_content_type":"application/xml","patch_set":1,"id":"1aca2d91_b920cef8","line":34,"updated":"2015-05-06 20:36:03.000000000","message":"\"web based user interface\" instead of GUI.","commit_id":"6d7447ce3de865a7b45ce932446005a2999fbb79"},{"author":{"_account_id":167,"name":"Christian Berendt","email":"berendt@osism.tech","username":"berendt"},"change_message_id":"3706629c16293970e25b22e0dbaad8963ae042a6","unresolved":false,"context_lines":[{"line_number":34,"context_line":"  Users can access OpenStack via GUI, implemented by the Dashboard service,"},{"line_number":35,"context_line":"  via command line clients and by issuing API requests through tools like"},{"line_number":36,"context_line":"  browser plugins or \u003ccommand\u003ecurl\u003c/command\u003e. For applications, several"},{"line_number":37,"context_line":"  SDKs are available. Ultimately, all these access methods issue ReSTful API"},{"line_number":38,"context_line":"  calls to the various OpenStack services."},{"line_number":39,"context_line":"  \u003c/para\u003e"},{"line_number":40,"context_line":""}],"source_content_type":"application/xml","patch_set":1,"id":"1aca2d91_39839ece","line":37,"updated":"2015-05-06 20:36:03.000000000","message":"RESTful API or REST API. (looks like we use both forms) but not ReST.","commit_id":"6d7447ce3de865a7b45ce932446005a2999fbb79"},{"author":{"_account_id":10607,"name":"Alexandra Settle","email":"a.settle@outlook.com","username":"asettle"},"change_message_id":"b9918144a6ef48377927d50eac3a22a1c444d444","unresolved":false,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"  \u003cpara\u003eAs shown in \u003cxref linkend\u003d\"concept_arch\"/\u003e, OpenStack consists of"},{"line_number":11,"context_line":"  several rather"},{"line_number":12,"context_line":"  independent parts, named the OpenStack services."},{"line_number":13,"context_line":"  All services authenticate"},{"line_number":14,"context_line":"  through a common Identity service and individual services interact"},{"line_number":15,"context_line":"  with each other through public APIs, except where privileged"}],"source_content_type":"application/xml","patch_set":2,"id":"7a016987_8f0ddd39","line":12,"updated":"2015-05-14 01:03:32.000000000","message":"\"...OpenStack consists of several independent parts...\"","commit_id":"1f435ac4a18e9094504526cdc520c1c82a7d1d3a"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"4ae34353ddfaed256d78f0f220b396ffd6d98281","unresolved":false,"context_lines":[{"line_number":23,"context_line":"  the Identity service, the actual work is done by distinct processes.\u003c/para\u003e"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"  \u003cpara\u003e"},{"line_number":26,"context_line":"  For communication between the processes of one service, an AMQP message"},{"line_number":27,"context_line":"  broker is used. The service\u0027s state is stored in a database."},{"line_number":28,"context_line":"  When deploying and configuring your OpenStack cloud, you can choose among"},{"line_number":29,"context_line":"  several message broker and database solutions, such as"}],"source_content_type":"application/xml","patch_set":4,"id":"7a016987_5a74ac66","line":26,"updated":"2015-05-29 08:47:27.000000000","message":"You can also reference glossary terms like \u003cglossterm\u003emessage broker\u003c/glossterm\u003e - see doc/glossary/glossary-terms for the current entries, enhancements are welcome.","commit_id":"62bd9a359f1c56422694052b230683eb81b851cb"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"4ae34353ddfaed256d78f0f220b396ffd6d98281","unresolved":false,"context_lines":[{"line_number":27,"context_line":"  broker is used. The service\u0027s state is stored in a database."},{"line_number":28,"context_line":"  When deploying and configuring your OpenStack cloud, you can choose among"},{"line_number":29,"context_line":"  several message broker and database solutions, such as"},{"line_number":30,"context_line":"  RabbitMQ, Qpid, MySQL, MariaDB and SQLite.\u003c/para\u003e"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"  \u003cpara\u003e"},{"line_number":33,"context_line":"  Users can access OpenStack via the web-based user interface implemented"}],"source_content_type":"application/xml","patch_set":4,"id":"7a016987_3a71f076","line":30,"updated":"2015-05-29 08:47:27.000000000","message":"comma after \"MariaDB\" per our conventions","commit_id":"62bd9a359f1c56422694052b230683eb81b851cb"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"4ae34353ddfaed256d78f0f220b396ffd6d98281","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"  \u003cpara\u003e"},{"line_number":33,"context_line":"  Users can access OpenStack via the web-based user interface implemented"},{"line_number":34,"context_line":"  by the Dashboard service,"},{"line_number":35,"context_line":"  via command line clients and by issuing API requests through tools like"},{"line_number":36,"context_line":"  browser plugins or \u003ccommand\u003ecurl\u003c/command\u003e. For applications, several"},{"line_number":37,"context_line":"  SDKs are available. Ultimately, all these access methods issue REST API"}],"source_content_type":"application/xml","patch_set":4,"id":"7a016987_5a6a6cb4","line":34,"updated":"2015-05-29 08:47:27.000000000","message":"\"OpenStack dashboard\" - dashboard is lowercase.","commit_id":"62bd9a359f1c56422694052b230683eb81b851cb"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"4ae34353ddfaed256d78f0f220b396ffd6d98281","unresolved":false,"context_lines":[{"line_number":32,"context_line":"  \u003cpara\u003e"},{"line_number":33,"context_line":"  Users can access OpenStack via the web-based user interface implemented"},{"line_number":34,"context_line":"  by the Dashboard service,"},{"line_number":35,"context_line":"  via command line clients and by issuing API requests through tools like"},{"line_number":36,"context_line":"  browser plugins or \u003ccommand\u003ecurl\u003c/command\u003e. For applications, several"},{"line_number":37,"context_line":"  SDKs are available. Ultimately, all these access methods issue REST API"},{"line_number":38,"context_line":"  calls to the various OpenStack services.\u003c/para\u003e"}],"source_content_type":"application/xml","patch_set":4,"id":"7a016987_7a43e813","line":35,"updated":"2015-05-29 08:47:27.000000000","message":"command-line clients https://wiki.openstack.org/wiki/Documentation/Conventions#Command_line_versus_command-line","commit_id":"62bd9a359f1c56422694052b230683eb81b851cb"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"4ae34353ddfaed256d78f0f220b396ffd6d98281","unresolved":false,"context_lines":[{"line_number":33,"context_line":"  Users can access OpenStack via the web-based user interface implemented"},{"line_number":34,"context_line":"  by the Dashboard service,"},{"line_number":35,"context_line":"  via command line clients and by issuing API requests through tools like"},{"line_number":36,"context_line":"  browser plugins or \u003ccommand\u003ecurl\u003c/command\u003e. For applications, several"},{"line_number":37,"context_line":"  SDKs are available. Ultimately, all these access methods issue REST API"},{"line_number":38,"context_line":"  calls to the various OpenStack services.\u003c/para\u003e"},{"line_number":39,"context_line":""}],"source_content_type":"application/xml","patch_set":4,"id":"7a016987_fab8f812","line":36,"updated":"2015-05-29 08:47:27.000000000","message":"spelling convention is tricky, see https://wiki.openstack.org/wiki/Documentation/Conventions#Miscellaneous_words\n\nIt\u0027s plug-in.","commit_id":"62bd9a359f1c56422694052b230683eb81b851cb"},{"author":{"_account_id":6547,"name":"Andreas Jaeger","email":"jaegerandi@gmail.com","username":"jaegerandi"},"change_message_id":"9485d0e2e28fce80e09fca7deaac287985b623ac","unresolved":false,"context_lines":[{"line_number":31,"context_line":"  by the \u003clink linkend\u003d\"ch_install-dashboard\"\u003edashboard service\u003c/link\u003e,"},{"line_number":32,"context_line":"  via \u003clink xlink:href\u003d\"http://docs.openstack.org/cli-reference/content\"\u003ecommand-line clients\u003c/link\u003e"},{"line_number":33,"context_line":"  and by issuing API requests through tools like"},{"line_number":34,"context_line":"  browser plug-ins or \u003ccommand\u003ecurl\u003c/command\u003e. For applications, "},{"line_number":35,"context_line":"  \u003clink xlink:href\u003d\"http://developer.openstack.org/#sdk\"\u003eseveral SDKs\u003c/link\u003e "},{"line_number":36,"context_line":"  are available. Ultimately, all these access methods issue REST API"},{"line_number":37,"context_line":"  calls to the various OpenStack services.\u003c/para\u003e"}],"source_content_type":"application/xml","patch_set":6,"id":"7a016987_83c87856","line":34,"updated":"2015-05-29 11:56:30.000000000","message":"extra whitesapce at EOL.","commit_id":"d1d96f05cc36e006e341ad0896a7336df17f5075"},{"author":{"_account_id":14962,"name":"ologvinova","email":"ologvinova@mirantis.com","username":"ologvinova"},"change_message_id":"42337c18d325aacedab10ea5a67bbeb5b2d630d6","unresolved":false,"context_lines":[{"line_number":12,"context_line":"  independent parts, named the OpenStack services."},{"line_number":13,"context_line":"  All services authenticate"},{"line_number":14,"context_line":"  through a common Identity service. Individual services interact"},{"line_number":15,"context_line":"  with each other through public APIs, except where privileged"},{"line_number":16,"context_line":"  administrator commands are necessary.\u003c/para\u003e"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"  \u003cpara\u003eInternally, OpenStack services are composed of several processes."}],"source_content_type":"application/xml","patch_set":7,"id":"5afe65bd_2604b913","line":15,"updated":"2015-06-02 08:43:10.000000000","message":"can we add \u0027the ones\u0027 after except, i.e. -\u003e \u0027APIs, except the ones where...\u0027?","commit_id":"57fadeb3aae14be2ef99ba4a2472b2ba4a80cf05"},{"author":{"_account_id":14962,"name":"ologvinova","email":"ologvinova@mirantis.com","username":"ologvinova"},"change_message_id":"42337c18d325aacedab10ea5a67bbeb5b2d630d6","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"  \u003cpara\u003eInternally, OpenStack services are composed of several processes."},{"line_number":19,"context_line":"  All services have at least one"},{"line_number":20,"context_line":"  API process, which listens for API requests, preprocesses them and"},{"line_number":21,"context_line":"  passes them on to other parts of the service. With the exception of"},{"line_number":22,"context_line":"  the Identity service, the actual work is done by distinct processes.\u003c/para\u003e"},{"line_number":23,"context_line":""}],"source_content_type":"application/xml","patch_set":7,"id":"5afe65bd_462695bb","line":20,"updated":"2015-06-02 08:43:10.000000000","message":"I would remove a comma after \u0027process\u0027 and add one before \u0027and\u0027.","commit_id":"57fadeb3aae14be2ef99ba4a2472b2ba4a80cf05"},{"author":{"_account_id":14962,"name":"ologvinova","email":"ologvinova@mirantis.com","username":"ologvinova"},"change_message_id":"42337c18d325aacedab10ea5a67bbeb5b2d630d6","unresolved":false,"context_lines":[{"line_number":37,"context_line":"  calls to the various OpenStack services.\u003c/para\u003e"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"  \u003cpara\u003eThe following diagram shows the most common, but not the only"},{"line_number":40,"context_line":"    possible, architecture for an OpenStack cloud:\u003c/para\u003e"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"  \u003cfigure xml:id\u003d\"os-logical-arch\"\u003e"},{"line_number":43,"context_line":"    \u003ctitle\u003eLogical architecture\u003c/title\u003e"}],"source_content_type":"application/xml","patch_set":7,"id":"5afe65bd_86624dd7","line":40,"updated":"2015-06-02 08:43:10.000000000","message":"No comma is required after \u0027possible\u0027.","commit_id":"57fadeb3aae14be2ef99ba4a2472b2ba4a80cf05"}]}
