Skip to content

Commit

Permalink
Respectful code cleanup No.1 (#2107)
Browse files Browse the repository at this point in the history
Got some more work to do, but it's a start on switching out some
verbiage to be more inclusive.

More to come!
  • Loading branch information
markmandel authored May 21, 2021
1 parent 0c40d58 commit 9c6597b
Show file tree
Hide file tree
Showing 10 changed files with 44 additions and 45 deletions.
4 changes: 3 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,8 @@ repository, we have a [community membership guide](./docs/governance/community_m

- [Kubernetes Custom Resources](https://kubernetes.io/docs/concepts/api-extension/custom-resources/) -
This is how we define our own resource names (`GameServer`, etc) within Kubernetes.
- [Kubernetes Controllers](https://kubernetes.io/docs/concepts/architecture/controller/) -
Kubernetes documentation on writing controllers.
- [Extend the Kubernetes API with CustomResourceDefinitions](https://kubernetes.io/docs/tasks/access-kubernetes-api/extend-api-custom-resource-definitions/) -
This page shows how to install a custom resource into the Kubernetes API by creating a CustomResourceDefinition.
- [Joe Beda's TGIK Controller](https://github.com/jbeda/tgik-controller) -
Expand All @@ -116,7 +118,7 @@ repository, we have a [community membership guide](./docs/governance/community_m
Example of a Custom Resources with a Kubernetes Controller.
- [Kubernetes Code Generator](https://github.com/kubernetes/code-generator) -
The tooling that generated the Go libraries for the Custom Resource we define
- [Kubernetes Controller Best Practices](https://github.com/kubernetes/community/blob/master/contributors/devel/controllers.md) -
- [Kubernetes Controller Best Practices](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-api-machinery/controllers.md) -
Set of best practices written for writing Controllers inside Kubernetes. Also a great list for everywhere else too.
- [Writing Kube Controllers for Everyone - Maciej Szulik, Red Hat](https://www.youtube.com/watch?v=AUNPLQVxvmw) -
A great intro video into coding for Controllers, and explaining Informers and Listers.
Expand Down
11 changes: 6 additions & 5 deletions build/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -280,7 +280,7 @@ Now that the images are pushed, to install the development version,
run `make minikube-install` and Agones will install the images that you built and pushed to the Agones Minikube instance
(if you want to see the resulting installation yaml, you can find it in `build/.install.yaml`).

It's worth noting that Minikube does let you [reuse its Docker daemon](https://github.com/kubernetes/minikube/blob/master/docs/reusing_the_docker_daemon.md),
It's worth noting that Minikube does let you [reuse its Docker daemon](https://minikube.sigs.k8s.io/docs/handbook/pushing/#1-pushing-directly-to-the-in-cluster-docker-daemon-docker-env),
and build directly on Minikube, but in this case this approach is far simpler,
and makes cross-platform support for the build system much easier.

Expand Down Expand Up @@ -323,7 +323,7 @@ run `make kind-install` and Agones will install the images that you built and pu

Running end-to-end tests on Kind is done via the `make kind-test-e2e` target. This target use the same `make test-e2e` but also setup some prerequisites for use with a Kind cluster.

If you are having performance issues, check out these docs [here](https://github.com/kubernetes-sigs/kind/tree/master/docs/user#creating-a-cluster)
If you are having performance issues, check out these docs [here](https://kind.sigs.k8s.io/docs/user/quick-start/#creating-a-cluster)

### Running a Custom Test Environment

Expand Down Expand Up @@ -503,7 +503,8 @@ Run controller failure portion of the end-to-end tests.

#### `make setup-prometheus`

Install Prometheus server using [stable/prometheus](https://github.com/helm/charts/tree/master/stable/prometheus) chart into the current cluster.
Install Prometheus server using [Prometheus Community](https://prometheus-community.github.io/helm-charts)
chart into the current cluster.

By default all exporters and alertmanager is disabled.

Expand All @@ -517,7 +518,8 @@ Run helm repo update to get the mose recent charts.

#### `make setup-grafana`

Install Gafrana server using [stable/grafana](https://github.com/helm/charts/tree/master/stable/grafana) chart into the current cluster and setup [Agones dashboards with Prometheus datasource](./grafana/).
Install Grafana server using [grafana community](https://grafana.github.io/helm-charts) chart into
the current cluster and setup [Agones dashboards with Prometheus datasource](./grafana/).

You can set your own password using the `PASSWORD` environment variable.

Expand Down Expand Up @@ -710,7 +712,6 @@ port forwarding to the controller deployment.
### Kind

[Kind - kubernetes in docker](https://github.com/kubernetes-sigs/kind) is a tool for running local Kubernetes clusters using Docker container "nodes".
Kind is primarily designed for testing Kubernetes 1.11+, initially targeting the [conformance tests](https://github.com/kubernetes/community/blob/master/contributors/devel/conformance-tests.md).

Since Kind runs locally, there are some targets that need to be used instead of the standard ones above.

Expand Down
2 changes: 1 addition & 1 deletion build/prometheus.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ serverFiles:
tls_config:
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
# If your node certificates are self-signed or use a different CA to the
# master CA, then disable certificate verification below. Note that
# Kubernetes control plane CA, then disable certificate verification below. Note that
# certificate verification is an integral part of a secure infrastructure
# so this should only be disabled in a controlled environment. You can
# disable certificate verification by uncommenting the line below.
Expand Down
10 changes: 5 additions & 5 deletions examples/xonotic/server.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -85,13 +85,13 @@ bot_prefix [BOT] // prepend this to all botnames
//sv_vote_gametype_mygametype_description "This is my custom gametype" // the description for the custom gametype
//// Custom icons for custom gametypes are supported and have to be located in a server pk3 as gfx/menu/default/gametype_mygametype

//sv_vote_commands "restart fraglimit chmap gotomap nextmap endmatch reducematchtime extendmatchtime allready kick cointoss movetoauto shuffleteams" // players can vote for those commands or use them if they are masters. You canm also add 'g_grappling_hook' for hook voting, and 'sv_fbskin_green sv_fbskin_red sv_fbskin_orange sv_fbskin_off' for fbskin voting.
//sv_vote_master_commands "movetored movetoblue movetoyellow movetopink" // add commands masters can use if logged in or elected. You may want to put 'kickban' here, so masters can keep out punks. It may be good to also put "sv_status_privacy 0" then...
//sv_vote_commands "restart fraglimit chmap gotomap nextmap endmatch reducematchtime extendmatchtime allready kick cointoss movetoauto shuffleteams" // players can vote for those commands or use them if they are admins. You canm also add 'g_grappling_hook' for hook voting, and 'sv_fbskin_green sv_fbskin_red sv_fbskin_orange sv_fbskin_off' for fbskin voting.
//sv_vote_master_commands "movetored movetoblue movetoyellow movetopink" // add commands admins can use if logged in or elected. You may want to put 'kickban' here, so admins can keep out punks. It may be good to also put "sv_status_privacy 0" then...
//rcon_restricted_commands "restart fraglimit chmap gotomap endmatch reducematchtime extendmatchtime allready kick kickban \"sv_cmd bans\" \"sv_cmd unban\" status \"sv_cmd teamstatus\" movetoauto movetored movetoblue movetoyellow movetopink" // commands for the (stronger) rcon restricted

//sv_vote_call 1 // 0 will disable the normal voting
//sv_vote_master 1 // 0 will disable voting to become master, good if you prefer to use the master password instead
//sv_vote_master_password "" // when set, vlogin PWD will allow people to become master to run master commands directly using vdo
//sv_vote_master 1 // 0 will disable voting to become admin, good if you prefer to use the admin password instead
//sv_vote_master_password "" // when set, vlogin PWD will allow people to become admin to run admin commands directly using vdo
//sv_vote_majority_factor 0.5 // What percentage of the PLAYERS constitute a majority to win a vote? must be at least 0.5
//sv_vote_majority_factor_of_voted 0 // What percentage of the VOTERS who already voted constitute a majority to win a vote? must be at least 0.5
// note: to JUST support simple majorities, set these two factors equal
Expand Down Expand Up @@ -131,7 +131,7 @@ bot_prefix [BOT] // prepend this to all botnames
// - Optimize the game balance for future releases
// - Identify problems in the bot AI and improving it
// - Find settings that make servers "impure" that should not, so we can
// whitelist them in future releases
// allowlist them in future releases
//
// We will or might publish:
// - Global weapon pairing statistics for players vs players, or bots vs bots,
Expand Down
8 changes: 4 additions & 4 deletions site/content/en/docs/FAQ/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,12 +119,12 @@ The answer to this question is "it depends" 😁.

As a rule of thumb, we recommend clusters no larger than 500 nodes, based on production workloads.

That being said, this is highly dependent on Kubernetes hosting platform, master resources, nodes resources, resource
requirements of your game server, game server session length, node spin up time, etc, and therefore you should run your
own load tests against your hosting provider to determine the optimal cluster size for your game.
That being said, this is highly dependent on Kubernetes hosting platform, control plane resources, node resources,
requirements of your game server, game server session length, node spin up time, etc, and therefore you
should run your own load tests against your hosting provider to determine the optimal cluster size for your game.

We recommend running multiple clusters for your production GameServer workloads, to spread the load and
provide extra redundancy across your entire game server fleet.
provide extra redundancy across your entire game server fleet.

## Network

Expand Down
Loading

0 comments on commit 9c6597b

Please sign in to comment.