Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Agones sidecar Windows build #110

Closed
alexandrem opened this issue Feb 26, 2018 · 5 comments · Fixed by #1894
Closed

Support Agones sidecar Windows build #110

alexandrem opened this issue Feb 26, 2018 · 5 comments · Fixed by #1894
Labels
area/build-tools Development tooling. I.e. pretty much everything in the `build` directory. area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc kind/design Proposal discussing new features / fixes and how they should be implemented kind/feature New features for Agones
Milestone

Comments

@alexandrem
Copy link

Windows 1709 supports LCOW (linux container on Windows) and sharing the pod with linux and Windows containers side-by-side. Containers also share the same network namespace.

This would allow deploying Agones on a Kubernetes Windows node with the main game server in a Windows container.

However, this requires Hyper-v with nested virtualization. This makes deployment options more complicated, either on-prem or on external providers. Some compute providers supports 1709 Windows images, but it's not clear which ones support nested virtualization.

Agones sidecar doesn't seem to have much assumptions about running on a linux node.

Ideally, the sidecar should be cross-platform and also have a Windows build version, using either microsoft/windowsservercore:1709 or microsoft/nanoserver:1709.

Some limitations right now is that service account tokens do not work well on Windows containers, so this needs to be resolved to have the token injected correctly by kubelet:

kubernetes/kubernetes#52419

This issue is related to the Windows support discussed here #54

@markmandel markmandel added kind/feature New features for Agones kind/design Proposal discussing new features / fixes and how they should be implemented area/build-tools Development tooling. I.e. pretty much everything in the `build` directory. area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc labels Feb 26, 2018
@markmandel
Copy link
Member

Worth noting - right now that the sdk sidecar already builds a binary for windows:
https://github.com/googleprivate/agones/blob/master/build/Makefile#L137-L138

And will be part of the upcoming release binaries.

So that step is already solved (assuming no bugs have been found).

I'm going to assume we need Windows to create a Windows container image, and I'm also not aware of where one stores a Windows container image?

@cyriltovena
Copy link
Collaborator

grc should be fine, but the gcp build system probably doesn't support windows docker. I could push manually for now.

@alexandrem
Copy link
Author

We can add AppVeyor automated build in the github project once Agones is public.

@markmandel
Copy link
Member

I think we should add AppVeyor anyway once Agones is public, because then we can also do static + dynamic libs for the C++ sdk on windows

@EricFortin
Copy link
Collaborator

Quick note on this, there are limitations on Windows container that requires building an image for exact Windows version of target host. That means we would have to create multiple images(from multiple build runner running different Windows versions) and/or use multi-arch images.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/build-tools Development tooling. I.e. pretty much everything in the `build` directory. area/user-experience Pertaining to developers trying to use Agones, e.g. SDK, installation, etc kind/design Proposal discussing new features / fixes and how they should be implemented kind/feature New features for Agones
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants