Skip to content
This repository was archived by the owner on Jan 21, 2020. It is now read-only.
This repository was archived by the owner on Jan 21, 2020. It is now read-only.

Tutorial Fails with Client.Timeout #910

@ghost

Description

If you following the tutorial here, you can provision an instance using the provided example file. However, continuing the example by committing a group fails with an error.

To reproduce
With infrakit started and using the provided group.yml file:
infrakit local group commit -y ./group.yml --log-debug-V 0 --log 5

Result

DBUG[09-25|18:58:54] reading template                         module=cli/core url=http://10.50.7.50/rosette/group.yml fn=github.com/docker/infrakit/pkg/cli.templateProcessor.func3
DBUG[09-25|18:58:54] rendered                                 module=cli/core view="#\r\n#  A group of workers\r\n#\r\n#  Start up -- plugin start should include manager, vanilla, simulator, and group\r\n#  Then commit\r\n#\r\n#  infrakit group controller commit -y docs/tutorial/group.yml\r\n#\r\nkind: group\r\nmetadata:\r\n    name: workers\r\nproperties:\r\n    Allocation:\r\n      Size: 5\r\n    Flavor:\r\n      Plugin: vanilla\r\n      Properties:\r\n        Init:\r\n          - sudo apt-get update -y\r\n          - sudo apt-get install wget curl\r\n          - wget -qO- https://get.docker.com | sh\r\n        Tags:\r\n          custom.tag1 : tutorial\r\n          custom.tag2 : single-instance\r\n          custom.tag3 : by-group\r\n\r\n    Instance:\r\n      Plugin: simulator/compute\r\n      # This section here for the Instance plugin is the same as the example\r\n      # for creating a single instance.  The Tags and Init sections are now\r\n      # handled by the Flavor plugin\r\n      Properties:\r\n        apiProperty1 : value1\r\n        apiProperty2 : value2" fn=github.com/docker/infrakit/pkg/cli.templateProcessor.func3
DBUG[09-25|18:58:54] looking up controller backend            module=run/scope name=group fn=github.com/docker/infrakit/pkg/run/scope.fullScope.Controller.func1
DBUG[09-25|18:58:54] Discovered plugin                        module=discovery/local address=/.infrakit/plugins/group V=1000 fn=github.com/docker/infrakit/pkg/discovery/local.(*dirPluginDiscovery).List
DBUG[09-25|18:58:54] Discovered plugin                        module=discovery/local address=/.infrakit/plugins/group-stateless V=1000 fn=github.com/docker/infrakit/pkg/discovery/local.(*dirPluginDiscovery).List
DBUG[09-25|18:58:54] Discovered plugin                        module=discovery/local address=/.infrakit/plugins/simulator V=1000 fn=github.com/docker/infrakit/pkg/discovery/local.(*dirPluginDiscovery).List
DBUG[09-25|18:58:54] Discovered plugin                        module=discovery/local address=/.infrakit/plugins/vanilla V=1000 fn=github.com/docker/infrakit/pkg/discovery/local.(*dirPluginDiscovery).List
DBUG[09-25|18:58:54] Discovered plugin                        module=discovery/local address=/.infrakit/plugins/group V=1000 fn=github.com/docker/infrakit/pkg/discovery/local.(*dirPluginDiscovery).List
DBUG[09-25|18:58:54] Discovered plugin                        module=discovery/local address=/.infrakit/plugins/group-stateless V=1000 fn=github.com/docker/infrakit/pkg/discovery/local.(*dirPluginDiscovery).List
DBUG[09-25|18:58:54] Discovered plugin                        module=discovery/local address=/.infrakit/plugins/simulator V=1000 fn=github.com/docker/infrakit/pkg/discovery/local.(*dirPluginDiscovery).List
DBUG[09-25|18:58:54] Discovered plugin                        module=discovery/local address=/.infrakit/plugins/vanilla V=1000 fn=github.com/docker/infrakit/pkg/discovery/local.(*dirPluginDiscovery).List
DBUG[09-25|18:58:54] Client SEND                              module=rpc/client addr=/.infrakit/plugins/group payload="POST / HTTP/1.1\r\nHost: h\r\nContent-Type: application/json\r\n\r\n{\"jsonrpc\":\"2.0\",\"method\":\"Handshake.Hello\",\"params\":{},\"id\":1675921662065898680}" V=1100 fn=github.com/docker/infrakit/pkg/rpc/client.client.Call
DBUG[09-25|18:58:54] Client RECEIVE                           module=rpc/client addr=/.infrakit/plugins/group payload="HTTP/1.1 200 OK\r\nContent-Length: 318\r\nContent-Type: text/plain; charset=utf-8\r\nDate: Tue, 25 Sep 2018 18:58:54 GMT\r\n\r\n{\"jsonrpc\":\"2.0\",\"result\":{\"Objects\":{\"Controller/0.1.1\":[{\"Name\":\"groups\",\"ProxyFor\":\"\"},{\"Name\":\"\",\"ProxyFor\":\"\"}],\"Group/0.1.1\":[{\"Name\":\"groups\",\"ProxyFor\":\"\"}],\"Stack/0.1.1\":[{\"Name\":\".\",\"ProxyFor\":\"\"}],\"Updatable/0.1.1\":[{\"Name\":\"status\",\"ProxyFor\":\"\"},{\"Name\":\"vars\",\"ProxyFor\":\"\"}]}},\"id\":1675921662065898680}\n" V=1100 fn=github.com/docker/infrakit/pkg/rpc/client.client.Call
DBUG[09-25|18:58:54] Client SEND                              module=rpc/client addr=/.infrakit/plugins/group payload="POST / HTTP/1.1\r\nHost: h\r\nContent-Type: application/json\r\n\r\n{\"jsonrpc\":\"2.0\",\"method\":\"Controller.Commit\",\"params\":{\"Name\":\"group\",\"Operation\":0,\"Spec\":{\"kind\":\"group\",\"version\":\"\",\"metadata\":{\"name\":\"workers\",\"tags\":null},\"properties\":{\"Allocation\":{\"Size\":5},\"Flavor\":{\"Plugin\":\"vanilla\",\"Properties\":{\"Init\":[\"sudo apt-get update -y\",\"sudo apt-get install wget curl\",\"wget -qO- https://get.docker.com | sh\"],\"Tags\":{\"custom.tag1\":\"tutorial\",\"custom.tag2\":\"single-instance\",\"custom.tag3\":\"by-group\"}}},\"Instance\":{\"Plugin\":\"simulator/compute\",\"Properties\":{\"apiProperty1\":\"value1\",\"apiProperty2\":\"value2\"}}}}},\"id\":3751559271277998634}" V=1100 fn=github.com/docker/infrakit/pkg/rpc/client.client.Call
Error: Post http://h: net/http: request canceled (Client.Timeout exceeded while awaiting headers)

Comments
Outside of a potential regression, it seems as though the Group plugin is proxing for a real Controller implementation which does not exist in the tutorial setup. I can see some recent Controller implementations, but I am not sure which one to use in this case.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions