<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Running on </title>
    <link>https://emissary-ingress.dev/docs/4.1/topics/running/</link>
    <description>Recent content in Running on </description>
    <generator>Hugo</generator>
    <language>en</language>
    <atom:link href="https://emissary-ingress.dev/docs/4.1/topics/running/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Ambassador Module</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/</guid>
      <description>&lt;div class=&#34;docs-article-toc&#34;&gt;&#xA;&lt;h3&gt;Contents&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/#envoy&#34;&gt;Envoy&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/#general&#34;&gt;General&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/#grpc&#34;&gt;gRPC&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/#header-behavior&#34;&gt;Header behavior&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/#observability&#34;&gt;Observability&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/#protocols&#34;&gt;Protocols&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/#security&#34;&gt;Security&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/#service-health--timeouts&#34;&gt;Service health / timeouts&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ambassador/#traffic-management&#34;&gt;Traffic management&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;If present, the &lt;code&gt;ambassador&lt;/code&gt; &lt;code&gt;Module&lt;/code&gt; defines system-wide configuration for Emissary. You won&amp;rsquo;t need it unless you need to change one of the system-wide configuration settings below.&lt;/p&gt;&#xA;&lt;p&gt;To use the &lt;code&gt;ambassador&lt;/code&gt; &lt;code&gt;Module&lt;/code&gt; to configure Emissary, it MUST be named &lt;code&gt;ambassador&lt;/code&gt;, otherwise it will be ignored.  To create multiple &lt;code&gt;ambassador&lt;/code&gt; &lt;code&gt;Module&lt;/code&gt;s in the same Kubernetes namespace, you will need to apply them as annotations with separate &lt;code&gt;ambassador_id&lt;/code&gt;s: you will not be able to use multiple CRDs.&lt;/p&gt;</description>
    </item>
    <item>
      <title>AWS</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/ambassador-with-aws/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/ambassador-with-aws/</guid>
      <description>&lt;h1 id=&#34;emissary-with-aws&#34;&gt;Emissary with AWS&lt;/h1&gt;&#xA;&lt;p&gt;Emissary is a platform agnostic Kubernetes API gateway. It will run in any distribution of Kubernetes whether it is managed by a cloud provider or on homegrown bare-metal servers.&lt;/p&gt;&#xA;&lt;p&gt;This document serves as a reference for different configuration options available when running Kubernetes in AWS. See &lt;a href=&#34;../../install&#34;&gt;Installing Emissary&lt;/a&gt; for the various installation methods available.&lt;/p&gt;&#xA;&lt;h2 id=&#34;recommended-configuration&#34;&gt;Recommended configuration&lt;/h2&gt;&#xA;&lt;p&gt;There are lot of configuration options available to you when running Emissary in AWS. While you should read this entire document to understand what is best for you, the following is the recommended configuration when running Emissary in AWS:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Debugging</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/debugging/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/debugging/</guid>
      <description>&lt;p&gt;If you’re experiencing issues with the Emissary and cannot diagnose the issue through the &lt;code&gt;/ambassador/v0/diag/&lt;/code&gt; diagnostics endpoint, this document covers various approaches and advanced use cases for debugging Emissary issues.&lt;/p&gt;&#xA;&lt;p&gt;We assume that you already have a running Emissary installation in the following sections.&lt;/p&gt;&#xA;&lt;h2 id=&#34;a-note-on-tls&#34;&gt;A Note on TLS&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;../tls&#34;&gt;TLS&lt;/a&gt; can appear intractable if you haven&amp;rsquo;t set up &lt;a href=&#34;../tls#certificates-and-secrets&#34;&gt;certificates&lt;/a&gt; correctly. If you&amp;rsquo;re&#xA;having trouble with TLS, always &lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/debugging/#review-logs&#34;&gt;check the logs&lt;/a&gt; of your Emissary Pods and look for&#xA;certificate errors.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Deployment architecture</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/ambassador-deployment/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/ambassador-deployment/</guid>
      <description>&lt;p&gt;Emissary can be deployed in a variety of configurations. The specific configuration depends on your data center.&lt;/p&gt;&#xA;&lt;h2 id=&#34;public-cloud&#34;&gt;Public cloud&lt;/h2&gt;&#xA;&lt;p&gt;If you&amp;rsquo;re using a public cloud provider such as Amazon, Azure, or Google, Emissary can be deployed directly to a Kubernetes cluster running in the data center. Traffic is routed to Emissary via a cloud-managed load balancer such as an Amazon Elastic Load Balancer or Google Cloud Load Balancer. Typically, this load balancer is transparently managed by Kubernetes in the form of the &lt;code&gt;LoadBalancer&lt;/code&gt; service type. Emissary then routes traffic to your services running in Kubernetes.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Diagnostics</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/diagnostics/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/diagnostics/</guid>
      <description>&lt;p&gt;With Emissary Diagnostics and Ambassador Cloud, you get a summary of the current status and Mappings of your cluster and it&amp;rsquo;s services, which gets displayed&#xA;in &lt;a href=&#34;https://www.getambassador.io/docs/cloud/latest/diagnostics-ui/view-diagnostics/&#34;&gt;Diagnostics Overview&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;troubleshooting&#34;&gt;Troubleshooting&lt;/h2&gt;&#xA;&lt;h3 id=&#34;cant-access-emissary-diagnostics-overview&#34;&gt;Can&amp;rsquo;t access Emissary Diagnostics Overview?&lt;/h3&gt;&#xA;&lt;p&gt;Create an Ambassador &lt;code&gt;Module&lt;/code&gt; if one does not already exist, and add the following config to enable diagnostics data.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;apiVersion&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;getambassador.io/v3alpha1&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;kind&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;Module&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;metadata&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;name&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;ambassador&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;spec&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;config&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;diagnostics&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;      &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;enabled&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;true&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Next, ensure that the &lt;code&gt;AES_REPORT_DIAGNOSTICS_TO_CLOUD&lt;/code&gt; environment variable is set to &lt;code&gt;&amp;quot;true&amp;quot;&lt;/code&gt; on the Agent deployment to allow diagnostics information to be reported to the cloud.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Environment Variables</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/environment/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/environment/</guid>
      <description>&lt;p&gt;Use the following variables for the environment of your Emissary container:&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th style=&#34;text-align: left&#34;&gt;Variable&lt;/th&gt;&#xA;          &lt;th style=&#34;text-align: left&#34;&gt;Default value&lt;/th&gt;&#xA;          &lt;th style=&#34;text-align: left&#34;&gt;Value type&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_id&#34;&gt;&lt;code&gt;AMBASSADOR_ID&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;[ &amp;quot;default&amp;quot; ]&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;List of strings&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#aes_log_level&#34;&gt;&lt;code&gt;AES_LOG_LEVEL&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;warn&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Log level&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#agent_config_resource_name&#34;&gt;&lt;code&gt;AGENT_CONFIG_RESOURCE_NAME&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;ambassador-agent-cloud-token&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_ambex_no_ratelimit&#34;&gt;&lt;code&gt;AMBASSADOR_AMBEX_NO_RATELIMIT&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean: &lt;code&gt;true&lt;/code&gt;=true, any other value=false&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_ambex_snapshot_count&#34;&gt;&lt;code&gt;AMBASSADOR_AMBEX_SNAPSHOT_COUNT&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;30&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_cluster_id&#34;&gt;&lt;code&gt;AMBASSADOR_CLUSTER_ID&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_config_base_dir&#34;&gt;&lt;code&gt;AMBASSADOR_CONFIG_BASE_DIR&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;/ambassador&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_disable_features&#34;&gt;&lt;code&gt;AMBASSADOR_DISABLE_FEATURES&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Any&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_drain_time&#34;&gt;&lt;code&gt;AMBASSADOR_DRAIN_TIME&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;600&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_envoy_api_version&#34;&gt;&lt;code&gt;AMBASSADOR_ENVOY_API_VERSION&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;V3&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String Enum; &lt;code&gt;V3&lt;/code&gt; or &lt;code&gt;V2&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_grpc_metrics_sink&#34;&gt;&lt;code&gt;AMBASSADOR_GRPC_METRICS_SINK&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String (address:port)&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_healthcheck_bind_address&#34;&gt;&lt;code&gt;AMBASSADOR_HEALTHCHECK_BIND_ADDRESS&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;0.0.0.0&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_healthcheck_bind_port&#34;&gt;&lt;code&gt;AMBASSADOR_HEALTHCHECK_BIND_PORT&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;8877&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_healthcheck_ip_family&#34;&gt;&lt;code&gt;AMBASSADOR_HEALTHCHECK_IP_FAMILY&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;ANY&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String Enum; &lt;code&gt;IPV4_ONLY&lt;/code&gt; or &lt;code&gt;IPV6_ONLY&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_istio_secret_dir&#34;&gt;&lt;code&gt;AMBASSADOR_ISTIO_SECRET_DIR&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;/etc/istio-certs&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_json_logging&#34;&gt;&lt;code&gt;AMBASSADOR_JSON_LOGGING&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; non-empty=true, empty=false&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_ready_port&#34;&gt;&lt;code&gt;AMBASSADOR_READY_PORT&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;8006&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_ready_log&#34;&gt;&lt;code&gt;AMBASSADOR_READY_LOG&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; &lt;a href=&#34;https://golang.org/pkg/strconv/#ParseBool&#34;&gt;Go &lt;code&gt;strconv.ParseBool&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_label_selector&#34;&gt;&lt;code&gt;AMBASSADOR_LABEL_SELECTOR&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String (label=value)&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_namespace&#34;&gt;&lt;code&gt;AMBASSADOR_NAMESPACE&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;default&lt;/code&gt; (&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;)&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Kubernetes namespace&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_reconfig_max_delay&#34;&gt;&lt;code&gt;AMBASSADOR_RECONFIG_MAX_DELAY&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;1&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_single_namespace&#34;&gt;&lt;code&gt;AMBASSADOR_SINGLE_NAMESPACE&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; non-empty=true, empty=false&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_snapshot_count&#34;&gt;&lt;code&gt;AMBASSADOR_SNAPSHOT_COUNT&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;4&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_verify_ssl_false&#34;&gt;&lt;code&gt;AMBASSADOR_VERIFY_SSL_FALSE&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; &lt;code&gt;true&lt;/code&gt;=true, any other value=false&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#dd_entity_id&#34;&gt;&lt;code&gt;DD_ENTITY_ID&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#dogstatsd&#34;&gt;&lt;code&gt;DOGSTATSD&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; Python &lt;code&gt;value.lower() == &amp;quot;true&amp;quot;&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#scout_disable&#34;&gt;&lt;code&gt;SCOUT_DISABLE&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; &lt;code&gt;false&lt;/code&gt;=false, any other value=true&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#statsd_enabled&#34;&gt;&lt;code&gt;STATSD_ENABLED&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; Python &lt;code&gt;value.lower() == &amp;quot;true&amp;quot;&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#statsd_port&#34;&gt;&lt;code&gt;STATSD_PORT&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;8125&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#statsd_host&#34;&gt;&lt;code&gt;STATSD_HOST&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;statsd-sink&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#statsd_flush_interval&#34;&gt;&lt;code&gt;STATSD_FLUSH_INTERVAL&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;1&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#_ambassador_id&#34;&gt;&lt;code&gt;_AMBASSADOR_ID&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#_ambassador_tls_secret_name&#34;&gt;&lt;code&gt;_AMBASSADOR_TLS_SECRET_NAME&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#_ambassador_tls_secret_namespace&#34;&gt;&lt;code&gt;_AMBASSADOR_TLS_SECRET_NAMESPACE&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#_consul_host&#34;&gt;&lt;code&gt;_CONSUL_HOST&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;String&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#_consul_port&#34;&gt;&lt;code&gt;_CONSUL_PORT&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_disable_snapshot_server&#34;&gt;&lt;code&gt;AMBASSADOR_DISABLE_SNAPSHOT_SERVER&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; non-empty=true, empty=false&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_envoy_base_id&#34;&gt;&lt;code&gt;AMBASSADOR_ENVOY_BASE_ID&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;0&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;h2 id=&#34;feature-flag-environment-variables&#34;&gt;Feature Flag Environment Variables&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th style=&#34;text-align: left&#34;&gt;Variable&lt;/th&gt;&#xA;          &lt;th style=&#34;text-align: left&#34;&gt;Default value&lt;/th&gt;&#xA;          &lt;th style=&#34;text-align: left&#34;&gt;Value type&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_eds_bypass&#34;&gt;&lt;code&gt;AMBASSADOR_EDS_BYPASS&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; Python &lt;code&gt;value.lower() == &amp;quot;true&amp;quot;&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_force_secret_validation&#34;&gt;&lt;code&gt;AMBASSADOR_FORCE_SECRET_VALIDATION&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean: &lt;code&gt;true&lt;/code&gt;=true, any other value=false&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_knative_support&#34;&gt;&lt;code&gt;AMBASSADOR_KNATIVE_SUPPORT&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; non-empty=true, empty=false&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#ambassador_update_mapping_status&#34;&gt;&lt;code&gt;AMBASSADOR_UPDATE_MAPPING_STATUS&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; &lt;code&gt;true&lt;/code&gt;=true, any other value=false&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#envoy_concurrency&#34;&gt;&lt;code&gt;ENVOY_CONCURRENCY&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Empty&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Integer&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/environment/#disable_strict_label_selectors&#34;&gt;&lt;code&gt;DISABLE_STRICT_LABEL_SELECTORS&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Boolean; &lt;code&gt;true&lt;/code&gt;=true, any other value=false&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;h3 id=&#34;ambassador_id&#34;&gt;&lt;code&gt;AMBASSADOR_ID&lt;/code&gt;&lt;/h3&gt;&#xA;&lt;p&gt;Emissary supports running multiple installs in the same cluster without restricting a given instance of Emissary to a single namespace.&#xA;The resources that are visible to an installation can be limited with the &lt;code&gt;AMBASSADOR_ID&lt;/code&gt; environment variable.&lt;/p&gt;</description>
    </item>
    <item>
      <title>GKE</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/ambassador-with-gke/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/ambassador-with-gke/</guid>
      <description>&lt;p&gt;Google offers a &lt;a href=&#34;https://cloud.google.com/kubernetes-engine/docs/concepts/ingress&#34;&gt;L7 load balancer&lt;/a&gt; to&#xA;leverage network services such as managed SSL certificates, SSL offloading or the Google content delivery network.&#xA;A L7 load balancer in front of Emissary can be configured by hand or by using the Ingress-GCE resource. Using the&#xA;Ingress resource also allows you to create Google-managed SSL certificates through Kubernetes.&lt;/p&gt;&#xA;&lt;p&gt;With this setup, HTTPS will be terminated at the Google load balancer. The load balancer will be created and configured by&#xA;the Ingress-GCE resource. The load balancer consists of a set of&#xA;&lt;a href=&#34;https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#https_lb&#34;&gt;forwarding rules&lt;/a&gt; and a set of&#xA;&lt;a href=&#34;https://cloud.google.com/load-balancing/docs/backend-service&#34;&gt;backend services&lt;/a&gt;.&#xA;In this setup, the ingress resource creates two forwarding rules, one for HTTP and one for HTTPS. The HTTPS&#xA;forwarding rule has the SSL certificates attached. Also, one backend service will be created to point to&#xA;a list of instance groups at a static port. This will be the NodePort of the Emissary service.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gzip compression</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/gzip/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/gzip/</guid>
      <description>&lt;p&gt;Gzip enables Emissary to compress upstream data upon client request. Compression is useful in situations where large payloads need to be transmitted without compromising the response time. Compression can also save on bandwidth costs at the expense of increased computing costs.&lt;/p&gt;&#xA;&lt;h2 id=&#34;how-does-it-work&#34;&gt;How does it work?&lt;/h2&gt;&#xA;&lt;p&gt;When the gzip filter is enabled, request and response headers are inspected to determine whether or not the content should be compressed. If so, and the request and response headers allow, the content is compressed and then sent to the client with the appropriate headers. It also uses the zlib module, which provides &lt;code&gt;Deflate&lt;/code&gt; compression and decompression code.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Host CRD</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/host-crd/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/host-crd/</guid>
      <description>&lt;p&gt;The custom &lt;code&gt;Host&lt;/code&gt; resource defines how Emissary will be&#xA;visible to the outside world. It collects all the following information in a&#xA;single configuration resource:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The hostname by which Emissary will be reachable&lt;/li&gt;&#xA;&lt;li&gt;How Emissary should handle TLS certificates&lt;/li&gt;&#xA;&lt;li&gt;How Emissary should handle secure and insecure requests&lt;/li&gt;&#xA;&lt;li&gt;Which &lt;code&gt;Mappings&lt;/code&gt; should be associated with this &lt;code&gt;Host&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;Alert severity=&#34;warning&#34;&gt;&#xA;  Remember that &lt;code&gt;Listener&lt;/code&gt; resources are&amp;nbsp;&lt;b&gt;required&lt;/b&gt;&amp;nbsp;for a functioning&#xA;  Emissary installation!&lt;br/&gt;&#xA;  &lt;a href=&#34;../../running/listener&#34;&gt;Learn more about &lt;code&gt;Listener&lt;/code&gt;&lt;/a&gt;.&#xA;&lt;/Alert&gt;&#xA;&lt;Alert severity=&#34;warning&#34;&gt;&#xA;  Remember than Emissary does not make sure that a wildcard &lt;code&gt;Host&lt;/code&gt; exists! If the&#xA;  wildcard behavior is needed, a &lt;code&gt;Host&lt;/code&gt; with a &lt;code&gt;hostname&lt;/code&gt; of &lt;code&gt;&#34;*&#34;&lt;/code&gt;&#xA;  must be defined by the user.&#xA;&lt;/Alert&gt;&#xA;&lt;p&gt;A minimal &lt;code&gt;Host&lt;/code&gt; resource, assuming no TLS configuration, would be:&lt;/p&gt;</description>
    </item>
    <item>
      <title>HTTP/3 configuration</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/http3/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/http3/</guid>
      <description>&lt;h1 id=&#34;http3-in-emissary&#34;&gt;HTTP/3 in Emissary&lt;/h1&gt;&#xA;&lt;p&gt;HTTP/3 is the third version of the Hypertext Transfer Protocol (HTTP). It is built on the &lt;a href=&#34;https://www.chromium.org/quic/&#34;&gt;QUIC&lt;/a&gt; network protocol rather than Transmission Control Protocol (TCP) like previous versions.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-changes-and-challenges-of-http3&#34;&gt;The changes and challenges of HTTP/3&lt;/h2&gt;&#xA;&lt;p&gt;Since the QUIC network protocol is built on UDP, most clients will require Emissary to advertise its support for HTTP/3 using the &lt;code&gt;alt-svc&lt;/code&gt; response header. This header is added to the response of the HTTP/2 and HTTP/1.1 connections. When the client sees the &lt;code&gt;alt-svc&lt;/code&gt; it can choose to upgrade to HTTP/3 and connect to Emissary using the QUIC protocol.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ingress controller</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/</guid>
      <description>&lt;div class=&#34;docs-article-toc&#34;&gt;&#xA;&lt;h3&gt;Contents&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/#when-and-how-to-use-the-ingress-resource&#34;&gt;When and how to use the Ingress resource&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/#what-is-required-to-use-the-ingress-resource&#34;&gt;What is required to use the Ingress resource?&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/#when-to-use-an-ingress-instead-of-annotations-or-crds&#34;&gt;When to use an Ingress instead of annotations or CRDs&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/#ingress-support&#34;&gt;Ingress support&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/#examples-of-ingress-configs-vs-mapping-configs&#34;&gt;Examples of Ingress configs vs Mapping configs&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/#ingress-routes-and-mappings&#34;&gt;Ingress routes and mappings&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/#the-minimal-ingress&#34;&gt;The Minimal Ingress&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/#name-based-virtual-hosting-with-an-ambassador-id&#34;&gt;Name based virtual hosting with an Ambassador ID&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/ingress-controller/#tls-termination&#34;&gt;TLS Termination&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;An Ingress resource is a popular way to expose Kubernetes services to the Internet. In order to use Ingress resources, you need to install an &lt;a href=&#34;https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/&#34;&gt;ingress controller&lt;/a&gt;. Emissary can function as a fully-fledged Ingress controller, making it easy to work with other Ingress-oriented tools within the Kubernetes ecosystem.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Listener CRD</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/listener/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/listener/</guid>
      <description>&lt;p&gt;The &lt;code&gt;Listener&lt;/code&gt; CRD defines where, and how, Emissary should listen for requests from the network, and which &lt;code&gt;Host&lt;/code&gt; definitions should be used to process those requests. For further examples of how to use &lt;code&gt;Listener&lt;/code&gt;, see &lt;a href=&#34;../../../howtos/configure-communications&#34;&gt;Configuring Emissary Communications&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Note that &lt;code&gt;Listener&lt;/code&gt;s are never created by Emissary, and must be defined by the user.&lt;/strong&gt; If you do not&#xA;define any &lt;code&gt;Listener&lt;/code&gt;s, Emissary will not listen anywhere for connections, and therefore won&amp;rsquo;t do&#xA;anything useful. It will log a &lt;code&gt;WARNING&lt;/code&gt; to this effect.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Load balancing</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/load-balancer/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/load-balancer/</guid>
      <description>&lt;p&gt;Load balancing configuration can be set for all Emissary mappings in the &lt;a href=&#34;../ambassador&#34;&gt;&lt;code&gt;ambassador&lt;/code&gt; &lt;code&gt;Module&lt;/code&gt;&lt;/a&gt;, or set per &lt;a href=&#34;../../using/mappings&#34;&gt;&lt;code&gt;Mapping&lt;/code&gt;&lt;/a&gt;. If nothing is set, simple round robin balancing is used via Kubernetes services.&lt;/p&gt;&#xA;&lt;p&gt;To use advanced load balancing, you must first configure a &lt;a href=&#34;../resolvers&#34;&gt;resolver&lt;/a&gt; that supports advanced load balancing (e.g., the Kubernetes Endpoint Resolver or Consul Resolver). Once a resolver is configured, you can use the &lt;code&gt;load_balancer&lt;/code&gt; attribute. The following fields are supported:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;load_balancer&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;policy&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;lt;load balancing policy to use&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Supported load balancer policies:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Performance and scaling</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/scaling/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/scaling/</guid>
      <description>&lt;p&gt;Scaling any cloud native application is inherently domain specific, however the content here&#xA;reflects common issues, tips, and tricks that come up frequently.&lt;/p&gt;&#xA;&lt;h2 id=&#34;performance-dimensions&#34;&gt;Performance dimensions&lt;/h2&gt;&#xA;&lt;p&gt;The performance of Emissary&amp;rsquo;s control plane can be characterized along a number of&#xA;different dimensions:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The number of &lt;code&gt;TLSContext&lt;/code&gt; resources.&lt;/li&gt;&#xA;&lt;li&gt;The number of &lt;code&gt;Host&lt;/code&gt; resources.&lt;/li&gt;&#xA;&lt;li&gt;The number of &lt;code&gt;Mapping&lt;/code&gt; resources per &lt;code&gt;Host&lt;/code&gt; resource.&lt;/li&gt;&#xA;&lt;li&gt;The number of &lt;code&gt;Mapping&lt;/code&gt; resources that will span all &lt;code&gt;Host&lt;/code&gt; resources (either because they&amp;rsquo;re using &lt;code&gt;host_regex&lt;/code&gt;, or because they&amp;rsquo;re using &lt;code&gt;hostname: &amp;quot;*&amp;quot;&lt;/code&gt;).&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;If your application involves a larger than average number of any of the above resources, you may&#xA;find yourself in need of some of the content in this section.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Running and deployment</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/running/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/running/</guid>
      <description>&lt;p&gt;This section is intended for operators running Emissary, and covers various aspects of deploying and configuring the Emissary in production.&lt;/p&gt;&#xA;&lt;h2 id=&#34;emissary-and-kubernetes&#34;&gt;Emissary and Kubernetes&lt;/h2&gt;&#xA;&lt;p&gt;Emissary relies on Kubernetes for reliability, availability, and scalability. This means that features such as Kubernetes readiness and liveness probes, rolling updates, and the Horizontal Pod Autoscaling should be utilized to manage Emissary.&lt;/p&gt;&#xA;&lt;h2 id=&#34;default-configuration&#34;&gt;Default configuration&lt;/h2&gt;&#xA;&lt;p&gt;The default configuration of Emissary includes default &lt;a href=&#34;https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#resource-requests-and-limits-of-pod-and-container&#34;&gt;resource limits&lt;/a&gt;, as well as &lt;a href=&#34;https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/&#34;&gt;readiness and liveness probes&lt;/a&gt;. These values should be adjusted for your specific environment.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Service discovery and resolvers</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/resolvers/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/resolvers/</guid>
      <description>&lt;p&gt;Service discovery is how cloud applications and their microservices are located on the network. In a cloud environment, services are ephemeral, existing only as long as they are needed and in use, so a real-time service discovery mechanism is required. Emissary uses information from service discovery to determine where to route incoming requests.&lt;/p&gt;&#xA;&lt;h2 id=&#34;emissary-support-for-service-discovery&#34;&gt;Emissary support for service discovery&lt;/h2&gt;&#xA;&lt;p&gt;Emissary supports different mechanisms for service discovery. These mechanisms are:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Kubernetes service-level discovery (default).&lt;/li&gt;&#xA;&lt;li&gt;Kubernetes endpoint-level discovery.&lt;/li&gt;&#xA;&lt;li&gt;Consul endpoint-level discovery.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;kubernetes-service-level-discovery&#34;&gt;Kubernetes service-level discovery&lt;/h3&gt;&#xA;&lt;p&gt;By default, Emissary uses Kubernetes DNS and service-level discovery. In a &lt;code&gt;Mapping&lt;/code&gt; resource, specifying &lt;code&gt;service: foo&lt;/code&gt; will prompt Emissary to look up the DNS address of the &lt;code&gt;foo&lt;/code&gt; Kubernetes service. Traffic will be routed to the &lt;code&gt;foo&lt;/code&gt; service. Kubernetes will then load balance that traffic between multiple pods. For more details on Kubernetes networking and how this works, see our blog post on &lt;a href=&#34;https://blog.getambassador.io/session-affinity-load-balancing-controls-grpc-web-and-ambassador-0-52-2b916b396d0c&#34;&gt;Session affinity, load balancing controls, gRPC-Web, and Emissary&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
