{"action":"opened","issue":{"url":"https://api.github.com/repos/kubevirt/kubevirt/issues/1684","repository_url":"https://api.github.com/repos/kubevirt/kubevirt","labels_url":"https://api.github.com/repos/kubevirt/kubevirt/issues/1684/labels{/name}","comments_url":"https://api.github.com/repos/kubevirt/kubevirt/issues/1684/comments","events_url":"https://api.github.com/repos/kubevirt/kubevirt/issues/1684/events","html_url":"https://github.com/kubevirt/kubevirt/issues/1684","id":379456338,"node_id":"MDU6SXNzdWUzNzk0NTYzMzg=","number":1684,"title":"virtctl and websockets on GKE","user":{"login":"simonswine","id":223048,"node_id":"MDQ6VXNlcjIyMzA0OA==","avatar_url":"https://avatars0.githubusercontent.com/u/223048?v=4","gravatar_id":"","url":"https://api.github.com/users/simonswine","html_url":"https://github.com/simonswine","followers_url":"https://api.github.com/users/simonswine/followers","following_url":"https://api.github.com/users/simonswine/following{/other_user}","gists_url":"https://api.github.com/users/simonswine/gists{/gist_id}","starred_url":"https://api.github.com/users/simonswine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/simonswine/subscriptions","organizations_url":"https://api.github.com/users/simonswine/orgs","repos_url":"https://api.github.com/users/simonswine/repos","events_url":"https://api.github.com/users/simonswine/events{/privacy}","received_events_url":"https://api.github.com/users/simonswine/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-11-10T20:02:05Z","updated_at":"2018-11-10T20:02:05Z","closed_at":null,"author_association":"NONE","body":"<!-- This form is for bug reports and feature requests ONLY!\r\nAlso make sure that you visit our User Guide at https://kubevirt.io/user-guide/\r\n-->\r\n\r\n**Is this a BUG REPORT or FEATURE REQUEST?**:\r\n\r\n/kind bug\r\n\r\n(Not really 100% a virtctl / kube-virt bug though)\r\n\r\n**What happened**:\r\n\r\nI am rolling my own ubuntu nodes for a GKE cluster with nested virtualization enabled. Everything seems to work fine, VMs start and are accessible as expected.\r\n\r\nThe only problem that occurs is that I can't use `virtctl vnc/console` as it is timing out:\r\n\r\n```\r\n$ virtctl vnc testvm --v 10                                                                                                                                                                                                                                                     \r\n{\"component\":\"virtctl\",\"level\":\"info\",\"msg\":\"Config loaded from file/home/christian/.kube/config\",\"pos\":\"loader.go:359\",\"timestamp\":\"2018-11-10T19:59:56.578874Z\"}\r\n{\"component\":\"virtctl\",\"level\":\"info\",\"msg\":\"curl -k -v -XGET  -H \\\"User-Agent: virtctl/v0.0.0 (linux/amd64) kubernetes/$Format\\\" 'wss://104.199.43.97/apis/subresources.kubevirt.io/v1alpha2/namespaces/default/virtualmachineinstances/testvm/vnc'\",\"pos\":\"round_trippers.go:386\",\"timestamp\":\"2018-11-10T19:59:56.579784Z\"}\r\n\r\n$ kubectl get vmi testvm \r\nNAME     AGE   PHASE     IP          NODENAME\r\ntestvm   57s   Running   10.8.0.16   gke-kube-virt-default-pool-e5a963dd-k8hq\r\n```\r\n\r\nAll other aggregated API server calls seem to just work, it's only the web socket sub resource that is timing out. :grimacing: \r\n\r\n**What you expected to happen**:\r\n\r\nThe websockets connection should succeed without running into the timeout.\r\n\r\n**How to reproduce it (as minimally and precisely as possible)**:\r\n\r\n- Run kube-virt with emulation on GKE\r\n- Create and start cirrus demo VM\r\n- Run ``\r\n\r\n**Environment**:\r\n- KubeVirt version (use `virtctl version`): v0.10.0\r\n- Kubernetes version (use `kubectl version`): 1.11.2-gke.15 \r\n- Cloud provider or hardware configuration: GKE with custom nested KVM image\r\n\r\n\r\nI am suspecting Google is doing something with their GKE master which prevents websockets form being API aggregated. Not too sure how I can connect and authenticate with the virt-api server directly. A quick test with the same bearer token that is used for the Kubernetes API seems to fail.\r\n\r\nIs there a way of manually forwarding console/vnc using kubectl exec?\r\n"}}
{"actor":{"display_login":"simonswine"}}