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

Use ServerCA from GameServerAllocationPolicy instead of client secret ca.crt #1545

Merged
merged 5 commits into from
May 15, 2020

Conversation

pooneh-m
Copy link
Contributor

What type of PR is this?
/kind feature

What this PR does / Why we need it:
This is adding ServerCA field to GameServerAllocationPolicy to be used instead of client ca.crt field. This unblocks cert manager adaptation for multi-cluster allocation client certs.

Which issue(s) this PR fixes:
Closes #1517

Special notes for your reviewer:

@agones-bot
Copy link
Collaborator

Build Failed 😱

Build Id: 302468ce-30c3-447f-b7d5-e8c847863feb

To get permission to view the Cloud Build view, join the agones-discuss Google Group.

Copy link
Member

@markmandel markmandel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I only found one small documentation issue, but outside of that, this look good to go 👍

priority: 1
weight: 100
EOF
```

To define the local cluster priority, similarly, an allocation rule should be defined, while leaving allocationEndpoints unset. If the local cluster priority is not defined, the allocation from the local cluster happens only if allocation from other clusters with the existing allocation rules is unsuccessful.

`sercerCA` is the server TLS CA public certificate, set only if the remote server certificate is not signed by a public CA (e.g. self-signed).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we please wrap the references to serverCA, with a feature shortcode?

Copy link
Contributor Author

@pooneh-m pooneh-m May 15, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done. Thanks!

@@ -67,7 +71,7 @@ EOF

The certificates are base 64 string of the certificate file e.g. `cat ${CERT_FILE} | base64 -w 0`

`ca.crt` is the server TLS public certificate if it is self-signed. For simplicity, it is recommended to use one client secret per cluster and make `ca.crt` bundle of server certificates.
Agones recommends using [cert-manager.io](https://cert-manager.io/) solution for generating client certificates.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not for this PR, but do we want to provide some docs on this in some way down the line?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are already documentation on allocator-service.md for cert-manager.io. I'll try to provide snippets in this doc as well, but in a different PR.

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 64c1cbc0-8c6e-47f4-a68a-9171a1170886

The following development artifacts have been built, and will exist for the next 30 days:

A preview of the website (the last 30 builds are retained):

To install this version:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/1545/head:pr_1545 && git checkout pr_1545
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.6.0-cec2f2b

@pooneh-m pooneh-m requested a review from markmandel May 15, 2020 16:14
Copy link
Member

@markmandel markmandel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done!

@google-oss-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: markmandel, pooneh-m

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:
  • OWNERS [markmandel,pooneh-m]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@google-oss-robot
Copy link

New changes are detected. LGTM label has been removed.

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 5548fe0d-51d4-4382-8deb-ccb3ca3374bc

The following development artifacts have been built, and will exist for the next 30 days:

A preview of the website (the last 30 builds are retained):

To install this version:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/1545/head:pr_1545 && git checkout pr_1545
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.6.0-8962e5a

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: e63d7d74-bfa6-4e0b-b8eb-e021cfa4b6fc

The following development artifacts have been built, and will exist for the next 30 days:

A preview of the website (the last 30 builds are retained):

To install this version:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/1545/head:pr_1545 && git checkout pr_1545
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.6.0-3dced26

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 6bfabc8a-bc14-4ac4-8404-c4724a9eef3c

The following development artifacts have been built, and will exist for the next 30 days:

A preview of the website (the last 30 builds are retained):

To install this version:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/1545/head:pr_1545 && git checkout pr_1545
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.6.0-3482de5

@agones-bot
Copy link
Collaborator

Build Succeeded 👏

Build Id: 2f381365-9556-4bf6-879d-54651e979dd6

The following development artifacts have been built, and will exist for the next 30 days:

A preview of the website (the last 30 builds are retained):

To install this version:

  • git fetch https://github.com/GoogleCloudPlatform/agones.git pull/1545/head:pr_1545 && git checkout pr_1545
  • helm install ./install/helm/agones --namespace agones-system --name agones --set agones.image.tag=1.6.0-7a7b478

@pooneh-m pooneh-m merged commit 3a01161 into googleforgames:master May 15, 2020
@markmandel markmandel added this to the 1.6.0 milestone May 19, 2020
@markmandel markmandel added area/operations Installation, updating, metrics etc kind/feature New features for Agones labels May 19, 2020
ilkercelikyilmaz pushed a commit to ilkercelikyilmaz/agones that referenced this pull request Oct 23, 2020
Co-authored-by: Mark Mandel <markmandel@google.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved area/operations Installation, updating, metrics etc kind/feature New features for Agones size/L
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Proposal: For multi-cluster allocation move remote server CA to GameServerAllocationPolicy
4 participants