)]}'
{"specs/name-based-endpoints.rst":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"b23d8f9cbbe43a2b7303c23a1997b2720c495b27","unresolved":false,"context_lines":[{"line_number":19,"context_line":"For instance, all requests received in HAproxy in port 5000, are load-balanced"},{"line_number":20,"context_line":"across all Keystone replicas."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"The current setup makes it harder for people that want to use DNS names to"},{"line_number":23,"context_line":"execute the load balance. They would need to setup/configure the endpoints "},{"line_number":24,"context_line":"one by one, and then setup another web proxy server to execute the balance "},{"line_number":25,"context_line":"based on DNS names or context path of requests."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Moreover, there is a limitation to create control planes that stretch"},{"line_number":28,"context_line":"over broadcast domains due to the floating IP that is used."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"Proposed Change"},{"line_number":31,"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":1,"id":"3f65232a_a6284f86","line":28,"range":{"start_line":22,"start_character":0,"end_line":28,"end_character":59},"updated":"2020-10-27 09:47:15.000000000","message":"This could be reworded slightly to make it clearer why we might want to use name-based endpoints:\n\nThe problem(s) we are trying to solve is...\n\nName-based endpoints solve this problem by...","commit_id":"9d27917e33f565b2c8b59e6a8d5ac5862c6d9460"},{"author":{"_account_id":28356,"name":"Rafael Weingartner","email":"rafael@apache.org","username":"rafaelweingartner"},"change_message_id":"0b144ef2bed7d2e39de97a646277f9cc7c7c4bfb","unresolved":false,"context_lines":[{"line_number":19,"context_line":"For instance, all requests received in HAproxy in port 5000, are load-balanced"},{"line_number":20,"context_line":"across all Keystone replicas."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"The current setup makes it harder for people that want to use DNS names to"},{"line_number":23,"context_line":"execute the load balance. They would need to setup/configure the endpoints "},{"line_number":24,"context_line":"one by one, and then setup another web proxy server to execute the balance "},{"line_number":25,"context_line":"based on DNS names or context path of requests."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Moreover, there is a limitation to create control planes that stretch"},{"line_number":28,"context_line":"over broadcast domains due to the floating IP that is used."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"Proposed Change"},{"line_number":31,"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":1,"id":"3f65232a_59031cb9","line":28,"range":{"start_line":22,"start_character":0,"end_line":28,"end_character":59},"in_reply_to":"3f65232a_a6284f86","updated":"2020-10-27 12:25:43.000000000","message":"I see. I did some changes. Let me know if it is clearer now.","commit_id":"9d27917e33f565b2c8b59e6a8d5ac5862c6d9460"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"b23d8f9cbbe43a2b7303c23a1997b2720c495b27","unresolved":false,"context_lines":[{"line_number":54,"context_line":"Side note: if no name-based endpoint management is configured, the current"},{"line_number":55,"context_line":"method is used. Therefore, we maintain the IP + port balance method."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"The problem with the use of paths is to create control planes that stretch"},{"line_number":58,"context_line":"over different broadcast domains. To address the problem of stretched"},{"line_number":59,"context_line":"control planes, we would need some DNS system to help us validate the"},{"line_number":60,"context_line":"control plane services, and solve the server IP (IP of the server where"},{"line_number":61,"context_line":"the web proxy SSL termination and load balance is running) accordingly."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"We have been running consul for over two years for such a scenario. Therefore,"},{"line_number":64,"context_line":"we would need to introduce a consul role to address the streched control plane,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f65232a_66e75742","line":61,"range":{"start_line":57,"start_character":0,"end_line":61,"end_character":71},"updated":"2020-10-27 09:47:15.000000000","message":"I think we have two separate use cases here:\n\n1. An API FQDN used by all endpoints that resolves to multiple IP addresses, possibly in different broadcast domains\n2. Endpoints that use different FQDNs for different services\n\nSo 1. could work with paths?\n\nThese two could be combined, with separate endpoint FQDNs that each resolve to multiple IPs?","commit_id":"9d27917e33f565b2c8b59e6a8d5ac5862c6d9460"},{"author":{"_account_id":28356,"name":"Rafael Weingartner","email":"rafael@apache.org","username":"rafaelweingartner"},"change_message_id":"0b144ef2bed7d2e39de97a646277f9cc7c7c4bfb","unresolved":false,"context_lines":[{"line_number":54,"context_line":"Side note: if no name-based endpoint management is configured, the current"},{"line_number":55,"context_line":"method is used. Therefore, we maintain the IP + port balance method."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"The problem with the use of paths is to create control planes that stretch"},{"line_number":58,"context_line":"over different broadcast domains. To address the problem of stretched"},{"line_number":59,"context_line":"control planes, we would need some DNS system to help us validate the"},{"line_number":60,"context_line":"control plane services, and solve the server IP (IP of the server where"},{"line_number":61,"context_line":"the web proxy SSL termination and load balance is running) accordingly."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"We have been running consul for over two years for such a scenario. Therefore,"},{"line_number":64,"context_line":"we would need to introduce a consul role to address the streched control plane,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f65232a_d9b60cfb","line":61,"range":{"start_line":57,"start_character":0,"end_line":61,"end_character":71},"in_reply_to":"3f65232a_66e75742","updated":"2020-10-27 12:25:43.000000000","message":"I am not sure if 1. would work. When a server name is solved to different IPs, the client has to handle that. I mean, the client would get the list, and try one by one. It is not an actual health check, and the service might look ok (accepting connection on port 80/443) when they are not ready to handle requests.\n\nMoreover, I am not sure if the IP list returned by the DNS server could rotate somehow based on load (or other factors). Otherwise, we would always hit the first server, while the rest would sit there idle.","commit_id":"9d27917e33f565b2c8b59e6a8d5ac5862c6d9460"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"b23d8f9cbbe43a2b7303c23a1997b2720c495b27","unresolved":false,"context_lines":[{"line_number":60,"context_line":"control plane services, and solve the server IP (IP of the server where"},{"line_number":61,"context_line":"the web proxy SSL termination and load balance is running) accordingly."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"We have been running consul for over two years for such a scenario. Therefore,"},{"line_number":64,"context_line":"we would need to introduce a consul role to address the streched control plane,"},{"line_number":65,"context_line":"if one wants to implement a control plane that stretches over different"},{"line_number":66,"context_line":"broadcast domains. However, we could also look for other alternatives."},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Either way, we could (should?) separate these implementations. One that"},{"line_number":69,"context_line":"addresses streched control planes, and the other that addresses"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f65232a_e6cc07be","line":66,"range":{"start_line":63,"start_character":0,"end_line":66,"end_character":70},"updated":"2020-10-27 09:47:15.000000000","message":"For those not so familiar with consul, what does it provide over HAProxy?","commit_id":"9d27917e33f565b2c8b59e6a8d5ac5862c6d9460"},{"author":{"_account_id":28356,"name":"Rafael Weingartner","email":"rafael@apache.org","username":"rafaelweingartner"},"change_message_id":"0b144ef2bed7d2e39de97a646277f9cc7c7c4bfb","unresolved":false,"context_lines":[{"line_number":60,"context_line":"control plane services, and solve the server IP (IP of the server where"},{"line_number":61,"context_line":"the web proxy SSL termination and load balance is running) accordingly."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"We have been running consul for over two years for such a scenario. Therefore,"},{"line_number":64,"context_line":"we would need to introduce a consul role to address the streched control plane,"},{"line_number":65,"context_line":"if one wants to implement a control plane that stretches over different"},{"line_number":66,"context_line":"broadcast domains. However, we could also look for other alternatives."},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Either way, we could (should?) separate these implementations. One that"},{"line_number":69,"context_line":"addresses streched control planes, and the other that addresses"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3f65232a_b9b990ea","line":66,"range":{"start_line":63,"start_character":0,"end_line":66,"end_character":70},"in_reply_to":"3f65232a_e6cc07be","updated":"2020-10-27 12:25:43.000000000","message":"It is not a replacement, but an addition. \nI see, I will add more details about it.","commit_id":"9d27917e33f565b2c8b59e6a8d5ac5862c6d9460"}]}
