{"action":"created","issue":{"url":"https://api.github.com/repos/aerospike/aerospike-client-go/issues/147","repository_url":"https://api.github.com/repos/aerospike/aerospike-client-go","labels_url":"https://api.github.com/repos/aerospike/aerospike-client-go/issues/147/labels{/name}","comments_url":"https://api.github.com/repos/aerospike/aerospike-client-go/issues/147/comments","events_url":"https://api.github.com/repos/aerospike/aerospike-client-go/issues/147/events","html_url":"https://github.com/aerospike/aerospike-client-go/issues/147","id":180488924,"number":147,"title":"DNS lookup issue when used with Kubernetes","user":{"login":"deepakprabhakara","id":357991,"avatar_url":"https://avatars.githubusercontent.com/u/357991?v=3","gravatar_id":"","url":"https://api.github.com/users/deepakprabhakara","html_url":"https://github.com/deepakprabhakara","followers_url":"https://api.github.com/users/deepakprabhakara/followers","following_url":"https://api.github.com/users/deepakprabhakara/following{/other_user}","gists_url":"https://api.github.com/users/deepakprabhakara/gists{/gist_id}","starred_url":"https://api.github.com/users/deepakprabhakara/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/deepakprabhakara/subscriptions","organizations_url":"https://api.github.com/users/deepakprabhakara/orgs","repos_url":"https://api.github.com/users/deepakprabhakara/repos","events_url":"https://api.github.com/users/deepakprabhakara/events{/privacy}","received_events_url":"https://api.github.com/users/deepakprabhakara/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":32,"created_at":"2016-10-02T01:06:13Z","updated_at":"2016-12-28T18:43:38Z","closed_at":null,"body":"In Kubernetes service and pods IPs are dynamic and move around when deploying new services/pods. This causes an issue when using the aerospike client.\n\nIn node_validation.go the host name is resolved to the IP address (using net.LookupHost). However when used in Kubernetes where the service IP changes with new deployments this results in an unusable aerospike connection since the retries are all pointing to the old IP.\n\nInitial start:-\n\n  2016/10/02 00:46:51 Seeding the cluster. Seeds count: 1\n  2016/10/02 00:46:51 Node Validator has 1 nodes.\n  2016/10/02 00:46:51 Node BB90459140A4202 partition generation -1 changed to 1\n  2016/10/02 00:46:51 Tend finished. Live node count: 1\n  2016/10/02 00:46:51 New cluster initialized and ready to be used...\n\nAfter deleting the aerospike service and deploying a new one, the old IP address is still being used to make the connection:-\n  2016/10/02 00:47:23 Node `BB90459140A4202 10.32.0.132:3000` refresh failed: EOF\n  2016/10/02 00:47:53 Connection to address `10.32.0.132:3000` failed to establish with error: dial tcp 10.32.0.132:3000: i/o timeout\n  2016/10/02 00:47:53 Node BB90459140A4202 10.32.0.132:3000: dial tcp 10.32.0.132:3000: i/o timeout\n  2016/10/02 00:47:53 Connection to address `10.32.0.132:3000` failed to establish with error: dial tcp 10.32.0.132:3000: i/o timeout\n  2016/10/02 00:47:53 Connection to address `10.32.0.132:3000` failed to establish with error: dial tcp 10.32.0.132:3000: i/o timeout\n  2016/10/02 00:47:53 Connection to address `10.32.0.132:3000` failed to establish with error: dial tcp 10.32.0.132:3000: i/o timeout\n  2016/10/02 00:47:53 Node BB90459140A4202 10.32.0.132:3000: dial tcp 10.32.0.132:3000: i/o timeout\n  2016/10/02 00:47:53 Connection to address `10.32.0.132:3000` failed to establish with error: dial tcp 10.32.0.132:3000: i/o timeout\n"},"comment":{"url":"https://api.github.com/repos/aerospike/aerospike-client-go/issues/comments/269520969","html_url":"https://github.com/aerospike/aerospike-client-go/issues/147#issuecomment-269520969","issue_url":"https://api.github.com/repos/aerospike/aerospike-client-go/issues/147","id":269520969,"user":{"login":"deepakprabhakara","id":357991,"avatar_url":"https://avatars.githubusercontent.com/u/357991?v=3","gravatar_id":"","url":"https://api.github.com/users/deepakprabhakara","html_url":"https://github.com/deepakprabhakara","followers_url":"https://api.github.com/users/deepakprabhakara/followers","following_url":"https://api.github.com/users/deepakprabhakara/following{/other_user}","gists_url":"https://api.github.com/users/deepakprabhakara/gists{/gist_id}","starred_url":"https://api.github.com/users/deepakprabhakara/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/deepakprabhakara/subscriptions","organizations_url":"https://api.github.com/users/deepakprabhakara/orgs","repos_url":"https://api.github.com/users/deepakprabhakara/repos","events_url":"https://api.github.com/users/deepakprabhakara/events{/privacy}","received_events_url":"https://api.github.com/users/deepakprabhakara/received_events","type":"User","site_admin":false},"created_at":"2016-12-28T18:43:38Z","updated_at":"2016-12-28T18:43:38Z","body":"I can try creating a minimal test case for this unless you already have a clue as to what might be going wrong?"}}
{"actor":{"display_login":"deepakprabhakara"}}