<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Agones – Install Agones</title>
    <link>/site/docs/installation/install-agones/</link>
    <description>Recent content in Install Agones on Agones</description>
    <generator>Hugo -- gohugo.io</generator>
    
	  <atom:link href="/site/docs/installation/install-agones/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Docs: Install Agones using YAML</title>
      <link>/site/docs/installation/install-agones/yaml/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/site/docs/installation/install-agones/yaml/</guid>
      <description>
        
        
        &lt;h3 id=&#34;installing-agones&#34;&gt;Installing Agones&lt;/h3&gt;


&lt;div class=&#34;alert alert-warning&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Warning&lt;/h4&gt;

    &lt;p&gt;Installing Agones with the &lt;code&gt;install.yaml&lt;/code&gt; will set up the TLS certificates
stored in this repository for securing Kubernetes webhooks communication.&lt;/p&gt;
&lt;p&gt;If you want to generate new certificates or use your own for production workloads,
we recommend using the &lt;a href=&#34;/site/site/docs/installation/install-agones/helm/&#34;&gt;helm installation&lt;/a&gt;.&lt;/p&gt;


&lt;/div&gt;

&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;kubectl create namespace agones-system
kubectl apply -f https://raw.githubusercontent.com/googleforgames/agones/release-1.26.0/install/yaml/install.yaml
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;To change the &lt;a href=&#34;https://agones.dev/site/docs/installation/install-agones/helm/#configuration&#34;&gt;configurable parameters&lt;/a&gt; in the &lt;code&gt;install.yaml&lt;/code&gt; file, you can use helm directly to generate a custom file locally.&lt;/p&gt;
&lt;p&gt;The following example sets the &lt;code&gt;featureGates&lt;/code&gt; and &lt;code&gt;generateTLS&lt;/code&gt; helm parameters in &lt;code&gt;install.yaml&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;helm pull --untar https://agones.dev/chart/stable/agones-1.26.0.tgz &lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;cd&lt;/span&gt; agones &lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;helm template agones-manual --namespace agones-system  . &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.controller.generateTLS&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;false&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.allocator.generateTLS&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;false&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.allocator.generateClientTLS&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;false&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.crds.cleanupOnDelete&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;false&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.featureGates&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;PlayerTracking=true&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  &amp;gt; install-custom.yaml
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Note: &lt;code&gt;pull&lt;/code&gt; command was introduced in Helm version 3.&lt;/p&gt;
&lt;p&gt;You can also find the install.yaml in the latest &lt;code&gt;agones-install&lt;/code&gt; zip from the &lt;a href=&#34;https://github.com/googleforgames/agones/releases&#34;&gt;releases&lt;/a&gt; archive.&lt;/p&gt;
&lt;h3 id=&#34;uninstalling-agones&#34;&gt;Uninstalling Agones&lt;/h3&gt;
&lt;p&gt;To uninstall/delete the &lt;code&gt;Agones&lt;/code&gt; deployment and delete &lt;code&gt;agones-system&lt;/code&gt; namespace:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;kubectl delete fleets --all --all-namespaces
kubectl delete gameservers --all --all-namespaces
kubectl delete -f https://raw.githubusercontent.com/googleforgames/agones/release-1.26.0/install/yaml/install.yaml
kubectl delete namespace agones-system
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Note: you should wait up to a couple of minutes until all resources described in &lt;code&gt;install.yaml&lt;/code&gt; file would be deleted.&lt;/p&gt;
&lt;h2 id=&#34;next-steps&#34;&gt;Next Steps&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/site/site/docs/installation/confirm/&#34;&gt;Confirm Agones is up and running&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Install Agones using Helm</title>
      <link>/site/docs/installation/install-agones/helm/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/site/docs/installation/install-agones/helm/</guid>
      <description>
        
        
        &lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://helm.sh/&#34;&gt;Helm&lt;/a&gt; package manager 3.2.3+&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/site/site/docs/installation/#usage-requirements&#34;&gt;Supported Kubernetes Cluster&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;helm-3&#34;&gt;Helm 3&lt;/h2&gt;
&lt;h3 id=&#34;installing-the-chart&#34;&gt;Installing the Chart&lt;/h3&gt;
&lt;p&gt;To install the chart with the release name &lt;code&gt;my-release&lt;/code&gt; using our stable helm repository:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;helm repo add agones https://agones.dev/chart/stable
helm repo update
helm install my-release --namespace agones-system --create-namespace agones/agones
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;em&gt;We recommend installing Agones in its own namespaces, such as &lt;code&gt;agones-system&lt;/code&gt; as shown above.
If you want to use a different namespace, you can use the helm &lt;code&gt;--namespace&lt;/code&gt; parameter to specify.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;When running in production, Agones should be scheduled on a dedicated pool of nodes, distinct from where Game Servers are scheduled for better isolation and resiliency. By default Agones prefers to be scheduled on nodes labeled with &lt;code&gt;agones.dev/agones-system=true&lt;/code&gt; and tolerates node taint &lt;code&gt;agones.dev/agones-system=true:NoExecute&lt;/code&gt;. If no dedicated nodes are available, Agones will
run on regular nodes, but that&amp;rsquo;s not recommended for production use. For instructions on setting up a dedicated node
pool for Agones, see the &lt;a href=&#34;/site/site/docs/installation/&#34;&gt;Agones installation instructions&lt;/a&gt; for your preferred environment.&lt;/p&gt;
&lt;p&gt;The command deploys Agones on the Kubernetes cluster with the default configuration. The &lt;a href=&#34;#configuration&#34;&gt;configuration&lt;/a&gt; section lists the parameters that can be configured during installation.&lt;/p&gt;


&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Tip&lt;/h4&gt;

    List all releases using &lt;code&gt;helm list --all-namespaces&lt;/code&gt;

&lt;/div&gt;

&lt;h3 id=&#34;namespaces&#34;&gt;Namespaces&lt;/h3&gt;
&lt;p&gt;By default Agones is configured to work with game servers deployed in the &lt;code&gt;default&lt;/code&gt; namespace. If you are planning to use another namespace you can configure Agones via the parameter &lt;code&gt;gameservers.namespaces&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;For example to use &lt;code&gt;default&lt;/code&gt; &lt;strong&gt;and&lt;/strong&gt; &lt;code&gt;xbox&lt;/code&gt; namespaces:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;kubectl create namespace xbox
helm install my-release agones/agones --set &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gameservers.namespaces={default,xbox}&amp;#34;&lt;/span&gt; --namespace agones-system
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Note&lt;/h4&gt;

    You need to create your namespaces before installing Agones.

&lt;/div&gt;

&lt;p&gt;If you want to add a new namespace afterward upgrade your release:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;kubectl create namespace ps4
helm upgrade my-release agones/agones --reuse-values --set &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;gameservers.namespaces={default,xbox,ps4}&amp;#34;&lt;/span&gt; --namespace agones-system
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;uninstalling-the-chart&#34;&gt;Uninstalling the Chart&lt;/h3&gt;
&lt;p&gt;To uninstall/delete the &lt;code&gt;my-release&lt;/code&gt; deployment:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;helm uninstall my-release --namespace&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;agones-system
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;rbac&#34;&gt;RBAC&lt;/h2&gt;
&lt;p&gt;By default, &lt;code&gt;agones.rbacEnabled&lt;/code&gt; is set to true. This enables RBAC support in Agones and must be true if RBAC is enabled in your cluster.&lt;/p&gt;
&lt;p&gt;The chart will take care of creating the required service accounts and roles for Agones.&lt;/p&gt;
&lt;p&gt;If you have RBAC disabled, or to put it another way, ABAC enabled, you should set this value to &lt;code&gt;false&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id=&#34;configuration&#34;&gt;Configuration&lt;/h2&gt;
&lt;p&gt;The following tables lists the configurable parameters of the Agones chart and their default values.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Parameter&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Default&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.rbacEnabled&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Creates RBAC resources. Must be set for any cluster configured with RBAC&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.registerWebhooks&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Registers the webhooks used for the admission controller&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.registerApiService&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Registers the apiservice(s) used for the Kubernetes API extension&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.registerServiceAccounts&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Attempts to create service accounts for the controllers&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.createPriorityClass&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Attempts to create priority classes for the controllers&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.priorityClassName&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Name of the priority classes to create&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-system&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.featureGates&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;A URL query encoded string of Flags to enable/disable e.g. &lt;code&gt;Example=true&amp;amp;OtherThing=false&lt;/code&gt;. Any value accepted by &lt;a href=&#34;https://golang.org/pkg/strconv/#ParseBool&#34;&gt;strconv.ParseBool(string)&lt;/a&gt; can be used as a boolean value&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.crds.install&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Install the CRDs with this chart. Useful to disable if you want to subchart (since crd-install hook is broken), so you can copy the CRDs into your own chart.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.crds.cleanupOnDelete&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Run the pre-delete hook to delete all GameServers and their backing Pods when deleting the helm chart, so that all CRDs can be removed on chart deletion&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.metrics.prometheusServiceDiscovery&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Adds annotations for Prometheus ServiceDiscovery (and also Strackdriver)&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.metrics.prometheusEnabled&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Enables controller metrics on port &lt;code&gt;8080&lt;/code&gt; and path &lt;code&gt;/metrics&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.metrics.stackdriverEnabled&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Enables Stackdriver exporter of controller metrics&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.metrics.stackdriverProjectID&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;This overrides the default gcp project id for use with stackdriver&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.metrics.stackdriverLabels&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;A set of default labels to add to all stackdriver metrics generated in form of key value pair (&lt;code&gt;key=value,key2=value2&lt;/code&gt;). By default metadata are automatically added using Kubernetes API and GCP metadata enpoint.&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.metrics.serviceMonitor.interval&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Default scraping interval for ServiceMonitor&lt;/td&gt;
&lt;td&gt;&lt;code&gt;30s&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.serviceaccount.controller&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Service account name for the controller. &lt;strong&gt;Note&lt;/strong&gt;: Will be replaced with &lt;code&gt;agones.serviceaccount.controller.name&lt;/code&gt; in Agones 1.16&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-controller&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.serviceaccount.sdk&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Service account name for the sdk. &lt;strong&gt;Note&lt;/strong&gt;: Will be replaced with &lt;code&gt;agones.serviceaccount.sdk.name&lt;/code&gt; in Agones 1.16&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-sdk&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.serviceaccount.sdk.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;A map of namespaces to maps of &lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones SDK service account for the specified namespaces&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.registry&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Global image registry for all images&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gcr.io/agones-images&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.tag&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Global image tag for all images&lt;/td&gt;
&lt;td&gt;&lt;code&gt;1.26.0&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.controller.name&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Image name for the controller&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-controller&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.controller.pullPolicy&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Image pull policy for the controller&lt;/td&gt;
&lt;td&gt;&lt;code&gt;IfNotPresent&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.controller.pullSecret&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Image pull secret for the controller, allocator, sdk and ping image. Should be created both in &lt;code&gt;agones-system&lt;/code&gt; and &lt;code&gt;default&lt;/code&gt; namespaces&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.sdk.name&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Image name for the sdk&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-sdk&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.sdk.tag&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Image tag for the sdk&lt;/td&gt;
&lt;td&gt;value of &lt;code&gt;agones.image.tag&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.sdk.cpuRequest&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/&#34;&gt;cpu request&lt;/a&gt; for sdk server container&lt;/td&gt;
&lt;td&gt;&lt;code&gt;30m&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.sdk.cpuLimit&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/&#34;&gt;cpu limit&lt;/a&gt; for the sdk server container&lt;/td&gt;
&lt;td&gt;&lt;code&gt;0&lt;/code&gt; (none)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.sdk.memoryRequest&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/&#34;&gt;memory request&lt;/a&gt; for sdk server container&lt;/td&gt;
&lt;td&gt;&lt;code&gt;0&lt;/code&gt; (none)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.sdk.memoryLimit&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/&#34;&gt;memory limit&lt;/a&gt; for the sdk server container&lt;/td&gt;
&lt;td&gt;&lt;code&gt;0&lt;/code&gt; (none)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.sdk.alwaysPull&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Tells if the sdk image should always be pulled&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.ping.name&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Image name for the ping service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-ping&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.ping.tag&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Image tag for the ping service&lt;/td&gt;
&lt;td&gt;value of &lt;code&gt;agones.image.tag&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.image.ping.pullPolicy&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Image pull policy for the ping service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;IfNotPresent&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.http.port&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Port to use for liveness probe service and metrics&lt;/td&gt;
&lt;td&gt;&lt;code&gt;8080&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.healthCheck.initialDelaySeconds&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Initial delay before performing the first probe (in seconds)&lt;/td&gt;
&lt;td&gt;&lt;code&gt;3&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.healthCheck.periodSeconds&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Seconds between every liveness probe (in seconds)&lt;/td&gt;
&lt;td&gt;&lt;code&gt;3&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.healthCheck.failureThreshold&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Number of times before giving up (in seconds)&lt;/td&gt;
&lt;td&gt;&lt;code&gt;3&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.healthCheck.timeoutSeconds&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Number of seconds after which the probe times out (in seconds)&lt;/td&gt;
&lt;td&gt;&lt;code&gt;1&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.resources&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Controller &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/&#34;&gt;resource requests/limit&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.generateTLS&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Set to true to generate TLS certificates or false to provide your own certificates&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.tlsCert&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Custom TLS certificate provided as a string&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.tlsKey&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Custom TLS private key provided as a string&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.nodeSelector&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Controller &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector&#34;&gt;node labels&lt;/a&gt; for pod assignment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.tolerations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Controller &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/&#34;&gt;toleration&lt;/a&gt; labels for pod assignment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;[]&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.affinity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Controller &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity&#34;&gt;affinity&lt;/a&gt; settings for pod assignment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones controller pods&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.numWorkers&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Number of workers to spin per resource type&lt;/td&gt;
&lt;td&gt;&lt;code&gt;100&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.apiServerQPS&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Maximum sustained queries per second that controller should be making against API Server&lt;/td&gt;
&lt;td&gt;&lt;code&gt;400&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.apiServerQPSBurst&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Maximum burst queries per second that controller should be making against API Server&lt;/td&gt;
&lt;td&gt;&lt;code&gt;500&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.logLevel&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Agones Controller Log level. Log only entries with that severity and above&lt;/td&gt;
&lt;td&gt;&lt;code&gt;info&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.persistentLogs&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Store Agones controller logs in a temporary volume attached to a container for debugging&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.persistentLogsSizeLimitMB&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Maximum total size of all Agones container logs in MB&lt;/td&gt;
&lt;td&gt;&lt;code&gt;10000&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.disableSecret&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Disables the creation of any allocator secrets. If true, you MUST provide the &lt;code&gt;{agones.releaseName}-cert&lt;/code&gt; secrets before installation.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.customCertSecretPath&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Remap cert-manager path to server.crt and server.key&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.allocationApiService.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones apiregistration&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.allocationApiService.disableCaBundle&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Disable ca-bundle so it can be injected by cert-manager&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.validatingWebhook.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones validating webhook&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.validatingWebhook.disableCaBundle&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Disable ca-bundle so it can be injected by cert-manager&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.mutatingWebhook.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones mutating webhook&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.mutatingWebhook.disableCaBundle&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Disable ca-bundle so it can be injected by cert-manager&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.install&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Whether to install the &lt;a href=&#34;/site/site/docs/guides/ping-service/&#34;&gt;ping service&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.replicas&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The number of replicas to run in the deployment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;2&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.http.expose&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Expose the http ping service via a Service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.http.response&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The string response returned from the http service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;ok&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.http.port&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The port to expose on the service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;80&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.http.serviceType&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/service/&#34;&gt;Service Type&lt;/a&gt; of the HTTP Service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;LoadBalancer&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.http.loadBalancerIP&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer&#34;&gt;Load Balancer IP&lt;/a&gt; of the HTTP Service load balancer. Only works if the Kubernetes provider supports this option.&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.http.loadBalancerSourceRanges&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer&#34;&gt;Load Balancer SourceRanges&lt;/a&gt; of the HTTP Service load balancer. Only works if the Kubernetes provider supports this option.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;[]&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.http.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones ping http service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.udp.expose&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Expose the udp ping service via a Service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.udp.rateLimit&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Number of UDP packets the ping service handles per instance, per second, per sender&lt;/td&gt;
&lt;td&gt;&lt;code&gt;20&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.udp.port&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The port to expose on the service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;80&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.udp.serviceType&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/service/&#34;&gt;Service Type&lt;/a&gt; of the UDP Service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;LoadBalancer&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.udp.loadBalancerIP&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer&#34;&gt;Load Balancer IP&lt;/a&gt; of the UDP Service load balancer. Only works if the Kubernetes provider supports this option.&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.udp.loadBalancerSourceRanges&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer&#34;&gt;Load Balancer SourceRanges&lt;/a&gt; of the UDP Service load balancer. Only works if the Kubernetes provider supports this option.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;[]&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.udp.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones ping udp service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.healthCheck.initialDelaySeconds&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Initial delay before performing the first probe (in seconds)&lt;/td&gt;
&lt;td&gt;&lt;code&gt;3&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.healthCheck.periodSeconds&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Seconds between every liveness probe (in seconds)&lt;/td&gt;
&lt;td&gt;&lt;code&gt;3&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.healthCheck.failureThreshold&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Number of times before giving up (in seconds)&lt;/td&gt;
&lt;td&gt;&lt;code&gt;3&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.healthCheck.timeoutSeconds&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Number of seconds after which the probe times out (in seconds)&lt;/td&gt;
&lt;td&gt;&lt;code&gt;1&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.resources&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Ping pods &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/&#34;&gt;resource requests/limit&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.nodeSelector&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Ping &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector&#34;&gt;node labels&lt;/a&gt; for pod assignment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.tolerations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Ping &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/&#34;&gt;toleration&lt;/a&gt; labels for pod assignment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;[]&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.affinity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Ping &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity&#34;&gt;affinity&lt;/a&gt; settings for pod assignment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones ping pods&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.apiServerQPS&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Maximum sustained queries per second that an allocator should be making against API Server&lt;/td&gt;
&lt;td&gt;&lt;code&gt;400&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.apiServerQPSBurst&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Maximum burst queries per second that an allocator should be making against API Server&lt;/td&gt;
&lt;td&gt;&lt;code&gt;500&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.allocationTimeout&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Remote allocation call timeout.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;10s&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.remoteAllocationTimeout&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Total remote allocation timeout including retries.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;30s&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.logLevel&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Agones Allocator Log level. Log only entries with that severity and above&lt;/td&gt;
&lt;td&gt;&lt;code&gt;info&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.install&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Whether to install the &lt;a href=&#34;/site/site/docs/advanced/allocator-service/&#34;&gt;allocator service&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.replicas&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The number of replicas to run in the deployment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;3&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.name&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Service name for the allocator&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-allocator&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.serviceType&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/service/&#34;&gt;Service Type&lt;/a&gt; of the HTTP Service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;LoadBalancer&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.loadBalancerIP&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer&#34;&gt;Load Balancer IP&lt;/a&gt; of the Agones allocator load balancer. Only works if the Kubernetes provider supports this option.&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.loadBalancerSourceRanges&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer&#34;&gt;Load Balancer SourceRanges&lt;/a&gt; of the Agones allocator load balancer. Only works if the Kubernetes provider supports this option.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;[]&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones allocator service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.http.enabled&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;If true the &lt;a href=&#34;/site/site/docs/advanced/allocator-service/&#34;&gt;allocator service&lt;/a&gt; will respond to &lt;a href=&#34;/site/site/docs/advanced/allocator-service/#using-rest&#34;&gt;REST requests&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.http.port&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The port that is exposed externally by the &lt;a href=&#34;/site/site/docs/advanced/allocator-service/&#34;&gt;allocator service&lt;/a&gt; for &lt;a href=&#34;/site/site/docs/advanced/allocator-service/#using-rest&#34;&gt;REST requests&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;443&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.http.targetPort&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The port that is used by the allocator pod to listen for &lt;a href=&#34;/site/site/docs/advanced/allocator-service/#using-rest&#34;&gt;REST requests&lt;/a&gt;. Note that the allocator server cannot bind to low numbered ports.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;8443&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.grpc.enabled&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;If true the &lt;a href=&#34;/site/site/docs/advanced/allocator-service/&#34;&gt;allocator service&lt;/a&gt; will respond to &lt;a href=&#34;/site/site/docs/advanced/allocator-service/#using-grpc&#34;&gt;gRPC requests&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.grpc.port&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The port that is exposed externally by the &lt;a href=&#34;/site/site/docs/advanced/allocator-service/&#34;&gt;allocator service&lt;/a&gt; for &lt;a href=&#34;/site/site/docs/advanced/allocator-service/#using-grpc&#34;&gt;gRPC requests&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;443&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.service.grpc.targetPort&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The port that is used by the allocator pod to listen for &lt;a href=&#34;/site/site/docs/advanced/allocator-service/#using-grpc&#34;&gt;gRPC requests&lt;/a&gt;. Note that the allocator server cannot bind to low numbered ports.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;8443&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.generateClientTLS&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Set to true to generate client TLS certificates or false to provide certificates in &lt;code&gt;certs/allocator/allocator-client.default/*&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.generateTLS&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Set to true to generate TLS certificates or false to provide your own certificates&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.disableMTLS&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Turns off client cert authentication for incoming connections to the allocator.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.disableTLS&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Turns off TLS security for incoming connections to the allocator.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.disableSecretCreation&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Disables the creation of any allocator secrets. If true, you MUST provide the &lt;code&gt;allocator-tls&lt;/code&gt;, &lt;code&gt;allocator-tls-ca&lt;/code&gt;, and &lt;code&gt;allocator-client-ca&lt;/code&gt; secrets before installation.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.tlsCert&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Custom TLS certificate provided as a string&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.tlsKey&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Custom TLS private key provided as a string&lt;/td&gt;
&lt;td&gt;``&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.clientCAs&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;A map of secret key names to allowed client CA certificates provided as strings&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.tolerations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Allocator &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/&#34;&gt;toleration&lt;/a&gt; labels for pod assignment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;[]&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.affinity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Allocator &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity&#34;&gt;affinity&lt;/a&gt; settings for pod assignment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones allocator pods&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.resources&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Allocator pods &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/&#34;&gt;resource requests/limit&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.nodeSelector&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Allocator &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector&#34;&gt;node labels&lt;/a&gt; for pod assignment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.serviceMetrics.name&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Second Service name for the allocator&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-allocator-metrics-service&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.serviceMetrics.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones allocator second Service&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.serviceMetrics.http.port&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The port that is exposed within cluster by the &lt;a href=&#34;/site/site/docs/advanced/allocator-service/&#34;&gt;allocator service&lt;/a&gt; for http requests&lt;/td&gt;
&lt;td&gt;&lt;code&gt;8080&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.serviceMetrics.http.portName&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The name of exposed port&lt;/td&gt;
&lt;td&gt;&lt;code&gt;http&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.serviceaccount.controller.name&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Service account name for the controller&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-controller&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.serviceaccount.sdk.name&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Service account name for the sdk&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-sdk&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.serviceaccount.allocator.name&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Service account name for the allocator&lt;/td&gt;
&lt;td&gt;&lt;code&gt;agones-allocator&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.serviceaccount.allocator.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones allocator service account&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.serviceaccount.controller.annotations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/&#34;&gt;Annotations&lt;/a&gt; added to the Agones controller service account&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;gameservers.namespaces&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;a list of namespaces you are planning to use to deploy game servers&lt;/td&gt;
&lt;td&gt;&lt;code&gt;[&amp;quot;default&amp;quot;]&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;gameservers.minPort&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Minimum port to use for dynamic port allocation&lt;/td&gt;
&lt;td&gt;&lt;code&gt;7000&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;gameservers.maxPort&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Maximum port to use for dynamic port allocation&lt;/td&gt;
&lt;td&gt;&lt;code&gt;8000&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;gameservers.podPreserveUnknownFields&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Disable &lt;a href=&#34;https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#field-pruning&#34;&gt;field pruning&lt;/a&gt; and schema validation on the Pod template for a &lt;a href=&#34;/site/site/docs/reference/gameserver/&#34;&gt;GameServer&lt;/a&gt; definition&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;helm.installTests&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Add an ability to run &lt;code&gt;helm test agones&lt;/code&gt; to verify the installation&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.controller.allocationBatchWaitTime&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Wait time between each allocation batch when performing allocations in controller mode&lt;/td&gt;
&lt;td&gt;&lt;code&gt;500ms&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.allocator.updateStrategy&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy&#34;&gt;strategy&lt;/a&gt; to apply to the ping deployment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;agones.ping.updateStrategy&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;The &lt;a href=&#34;https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy&#34;&gt;strategy&lt;/a&gt; to apply to the allocator deployment&lt;/td&gt;
&lt;td&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Specify each parameter using the &lt;code&gt;--set key=value[,key=value]&lt;/code&gt; argument to &lt;code&gt;helm install&lt;/code&gt;. For example,&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;helm install my-release --namespace agones-system &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set gameservers.minPort&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;1000,gameservers.maxPort&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;5000&lt;/span&gt; agones
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The above command will deploy Agones controllers to &lt;code&gt;agones-system&lt;/code&gt; namespace. Additionally Agones will use a dynamic GameServers&#39; port allocation range of 1000-5000.&lt;/p&gt;
&lt;p&gt;Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example,&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;helm install my-release --namespace agones-system -f values.yaml agones/agones
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Tip&lt;/h4&gt;

    You can use the default
&lt;a href=&#34;https://github.com/googleforgames/agones/blob/release-1.26.0/install/helm/agones/values.yaml&#34; target=&#34;_blank&#34; data-proofer-ignore&gt;values.yaml&lt;/a&gt;

&lt;/div&gt;

&lt;h2 id=&#34;helm-test&#34;&gt;Helm test&lt;/h2&gt;


&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Tip&lt;/h4&gt;

    In order to use &lt;code&gt;helm test&lt;/code&gt; command described in this section you need to set &lt;code&gt;helm.installTests&lt;/code&gt; helm parameter to &lt;code&gt;true&lt;/code&gt;.

&lt;/div&gt;

&lt;p&gt;Check the Agones installation by running the following command:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;helm &lt;span style=&#34;color:#204a87&#34;&gt;test&lt;/span&gt; my-release --cleanup
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;pre&gt;&lt;code&gt;RUNNING: agones-test
PASSED: agones-test
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This test would create a &lt;code&gt;GameServer&lt;/code&gt; resource and delete it afterwards.&lt;/p&gt;


&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Tip&lt;/h4&gt;

    &lt;p&gt;If you receive the following error:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;RUNNING: agones-test
ERROR: pods &amp;quot;agones-test&amp;quot; already exists
Error: 1 test(s) failed
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;That means that you skipped the &lt;code&gt;--cleanup&lt;/code&gt; flag and you should either delete the &lt;code&gt;agones-test&lt;/code&gt; pod manually or run with the same test &lt;code&gt;helm test my-release --cleanup&lt;/code&gt; two more times.&lt;/p&gt;


&lt;/div&gt;

&lt;h2 id=&#34;controller-tls-certificates&#34;&gt;Controller TLS Certificates&lt;/h2&gt;
&lt;p&gt;By default agones chart generates tls certificates used by the admission controller, while this is handy, it requires the agones controller to restart on each &lt;code&gt;helm upgrade&lt;/code&gt; command.&lt;/p&gt;
&lt;h3 id=&#34;manual&#34;&gt;Manual&lt;/h3&gt;
&lt;p&gt;For most use cases the controller would have required a restart anyway (eg: controller image updated). However if you really need to avoid restarts we suggest that you turn off tls automatic generation (&lt;code&gt;agones.controller.generateTLS&lt;/code&gt; to &lt;code&gt;false&lt;/code&gt;) and provide your own certificates (&lt;code&gt;certs/server.crt&lt;/code&gt;,&lt;code&gt;certs/server.key&lt;/code&gt;).&lt;/p&gt;


&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Tip&lt;/h4&gt;

    You can use our script located at
&lt;a href=&#34;https://github.com/googleforgames/agones/blob/release-1.26.0/install/helm/agones/certs/cert.sh&#34; target=&#34;_blank&#34; data-proofer-ignore&gt;cert.sh&lt;/a&gt;
to generate them.

&lt;/div&gt;

&lt;h3 id=&#34;cert-manager&#34;&gt;Cert-Manager&lt;/h3&gt;
&lt;p&gt;Another approach is to use &lt;a href=&#34;https://cert-manager.io/&#34;&gt;cert-manager.io&lt;/a&gt; solution for cluster level certificate management.&lt;/p&gt;
&lt;p&gt;In order to use the cert-manager solution, first &lt;a href=&#34;https://cert-manager.io/docs/installation/kubernetes/&#34;&gt;install cert-manager&lt;/a&gt; on the cluster.
Then, &lt;a href=&#34;https://cert-manager.io/docs/configuration/&#34;&gt;configure&lt;/a&gt; an &lt;code&gt;Issuer&lt;/code&gt;/&lt;code&gt;ClusterIssuer&lt;/code&gt; resource and
last &lt;a href=&#34;https://cert-manager.io/docs/usage/certificate/&#34;&gt;configure&lt;/a&gt; a &lt;code&gt;Certificate&lt;/code&gt; resource to manage controller &lt;code&gt;Secret&lt;/code&gt;.
Make sure to configure the &lt;code&gt;Certificate&lt;/code&gt; based on your system&amp;rsquo;s requirements, including the validity &lt;code&gt;duration&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Here is an example of using a self-signed &lt;code&gt;ClusterIssuer&lt;/code&gt; for configuring controller &lt;code&gt;Secret&lt;/code&gt; where secret name is &lt;code&gt;my-release-cert&lt;/code&gt; or &lt;code&gt;{{ template &amp;quot;agones.fullname&amp;quot; . }}-cert&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;#!/bin/bash
&lt;/span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;# Create a self-signed ClusterIssuer&lt;/span&gt;
cat &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;lt;&amp;lt;EOF | kubectl apply -f -
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;apiVersion: cert-manager.io/v1
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;kind: ClusterIssuer
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;metadata:
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;  name: selfsigned
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;spec:
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;  selfSigned: {}
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;EOF&lt;/span&gt;

&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;# Create a Certificate with IP for the my-release-cert )&lt;/span&gt;
cat &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;lt;&amp;lt;EOF | kubectl apply -f -
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;apiVersion: cert-manager.io/v1
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;kind: Certificate
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;metadata:
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;  name: my-release-cert
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;  namespace: agones-system
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;spec:
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;  dnsNames:
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;    - agones-controller-service.agones-system.svc
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;  secretName: my-release-cert
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;  issuerRef:
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;    name: selfsigned
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;    kind: ClusterIssuer
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;EOF&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;After the certificates are generated, we will want to &lt;a href=&#34;https://cert-manager.io/docs/concepts/ca-injector/&#34;&gt;inject caBundle&lt;/a&gt; into controller webhook and disable controller secret creation by setting the following:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;helm install my-release &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.controller.disableSecret&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;true&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.controller.customCertSecretPath&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;0&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;.key&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;ca.crt&amp;#39;&lt;/span&gt;,customCertSecretPath&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;0&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;.path&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;ca.crt&amp;#39;&lt;/span&gt;
  --set agones.controller.customCertSecretPath&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;1&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;.key&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;tls.crt&amp;#39;&lt;/span&gt;,customCertSecretPath&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;1&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;.path&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;server.crt&amp;#39;&lt;/span&gt;
  --set agones.controller.customCertSecretPath&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;2&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;.key&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;tls.key&amp;#39;&lt;/span&gt;,customCertSecretPath&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;2&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;.path&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;server.key&amp;#39;&lt;/span&gt;
  --set agones.controller.allocationApiService.annotations&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;={&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;cert-manager.io/inject-ca-from&amp;#39;&lt;/span&gt;: &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;agones-system/my-release-cert&amp;#39;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;}&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.controller.allocationApiService.disableCaBundle&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;true&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.controller.validatingWebhook.annotations&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;={&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;cert-manager.io/inject-ca-from&amp;#39;&lt;/span&gt;: &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;agones-system/my-release-cert&amp;#39;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;}&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.controller.validatingWebhook.disableCaBundle&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;true&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.controller.mutatingWebhook.annotations&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;={&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;cert-manager.io/inject-ca-from&amp;#39;&lt;/span&gt;: &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;agones-system/my-release-cert&amp;#39;&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;}&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --set agones.controller.mutatingWebhook.disableCaBundle&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;true&lt;/span&gt; &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  --namespace agones-system --create-namespace  &lt;span style=&#34;color:#4e9a06&#34;&gt;\
&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&lt;/span&gt;  agones/agones
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;reserved-allocator-load-balancer-ip&#34;&gt;Reserved Allocator Load Balancer IP&lt;/h2&gt;
&lt;p&gt;In order to reuse the existing load balancer IP on upgrade or install the &lt;code&gt;agones-allocator&lt;/code&gt; service as a &lt;code&gt;LoadBalancer&lt;/code&gt; using a reserved static IP, a user can specify the load balancer&amp;rsquo;s IP with the &lt;code&gt;agones.allocator.http.loadBalancerIP&lt;/code&gt; helm configuration parameter value. By setting the &lt;code&gt;loadBalancerIP&lt;/code&gt; value:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The &lt;code&gt;LoadBalancer&lt;/code&gt; is created with the specified IP, if supported by the cloud provider.&lt;/li&gt;
&lt;li&gt;A self-signed server TLS certificate is generated for the IP, used by the &lt;code&gt;agones-allocator&lt;/code&gt; service.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;next-steps&#34;&gt;Next Steps&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/site/site/docs/installation/confirm/&#34;&gt;Confirm Agones is up and running&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
  </channel>
</rss>
