You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This article describes how to customize an instance's egress route to support custom network scenarios. For example, you might want to customize an instance's egress route for networks that disallow public IPs and require the instance to sit behind a network virtual appliance (NVA).
22
22
23
-
By default, Azure Spring Apps provisions a Standard SKU Load Balancer that you can set up and use for egress. However, the default setup may not meet the requirements of all scenarios. For example, public IPs may not be allowed, or more hops may be required for egress.
23
+
By default, Azure Spring Apps provisions a Standard SKU Load Balancer that you can set up and use for egress. However, the default setup may not meet the requirements of all scenarios. For example, public IPs may not be allowed, or more hops may be required for egress. When you use this feature to customize egress, Azure Spring Apps doesn't create public IP resources.
24
24
25
25
## Prerequisites
26
26
27
27
- All prerequisites for deploying Azure Spring Apps in a virtual network. For more information, see [Deploy Azure Spring Apps in a virtual network](how-to-deploy-in-azure-virtual-network.md).
28
-
- An API version of *2022-09-01 preview* or greater.
28
+
- An API version of `2022-09-01 preview` or greater.
29
29
-[Azure CLI version 1.1.7 or later](/cli/azure/install-azure-cli).
30
30
31
31
## Limitations
@@ -47,7 +47,7 @@ The default `outboundType` value is `loadBalancer`. If `outboundType` is set to
47
47
> [!NOTE]
48
48
> Using an outbound type is an advanced networking scenario and requires proper network configuration.
49
49
50
-
If `outboundType` is set to `userDefinedRouting`, Azure Spring Apps won't automatically configure egress paths. You must set up egress paths yourself. You could still find two load balancers in your resource group. They're only used for internal traffic and won't expose any public IP. You must prepare two route tables associated with two subnets: one to service the runtime and another for the user app.
50
+
If `outboundType` is set to `userDefinedRouting`, Azure Spring Apps doesn't automatically configure egress paths. You must set up egress paths yourself. You could still find two load balancers in your resource group. They're only used for internal traffic and don't expose any public IP. You must prepare two route tables associated with two subnets: one to service the runtime and another for the user app.
51
51
52
52
> [!IMPORTANT]
53
53
> An `outboundType` of `userDefinedRouting` requires a route for `0.0.0.0/0` and the next hop destination of a network virtual appliance in the route table. For more information, see [Customer responsibilities for running Azure Spring Apps in a virtual network](vnet-customer-responsibilities.md).
This article describes how to secure outbound traffic from your applications hosted in Azure Spring Apps. The article provides an example of a user-defined route. A user-defined route is an advanced feature that lets you fully control egress traffic. You can use a user-defined route in scenarios such as disallowing an Azure Spring Apps autogenerated public IP address.
19
19
@@ -35,10 +35,11 @@ The following illustration shows an example of an Azure Spring Apps virtual netw
35
35
36
36
This diagram illustrates the following features of the architecture:
37
37
38
-
* Public ingress traffic must flow through firewall filters.
39
-
* Each Azure Spring Apps instance is isolated within a dedicated subnet.
40
-
* The firewall is owned and managed by customers.
41
-
* This structure ensures that the firewall enables a healthy environment for all the functions you need.
38
+
- Public ingress traffic must flow through firewall filters.
39
+
- Each Azure Spring Apps instance is isolated within a dedicated subnet.
40
+
- Customers own and manage the firewall.
41
+
- This structure ensures that the firewall enables a healthy environment for all the functions you need.
42
+
- Azure Spring Apps doesn't automatically generate public IP resources.
42
43
43
44
### Define environment variables
44
45
@@ -110,7 +111,7 @@ az network vnet subnet create \
110
111
Use the following command to create and set up an Azure Firewall instance with a user-defined route, and to configure Azure Firewall outbound rules. The firewall lets you configure granular egress traffic rules from Azure Spring Apps.
111
112
112
113
> [!IMPORTANT]
113
-
> If your cluster or application creates a large number of outbound connections directed to the same destination or to a small subset of destinations, you might require more firewall front-end IP addresses to avoid reaching the maximum ports per front-end IP address. For more information on how to create an Azure Firewall instance with multiple IP addresses, see [Quickstart: Create an Azure Firewall instance with multiple public IP addresses - ARM template](../firewall/quick-create-multiple-ip-template.md). Create a Standard SKU public IP resource that will be used as the Azure Firewall front-end address.
114
+
> If your cluster or application creates a large number of outbound connections directed to the same destination or to a small subset of destinations, you might require more firewall front-end IP addresses to avoid reaching the maximum ports per front-end IP address. For more information on how to create an Azure Firewall instance with multiple IP addresses, see [Quickstart: Create an Azure Firewall instance with multiple public IP addresses - ARM template](../firewall/quick-create-multiple-ip-template.md). Create a Standard SKU public IP resource for use as the Azure Firewall front-end address.
114
115
115
116
```azurecli
116
117
az network public-ip create \
@@ -137,7 +138,7 @@ az network firewall create \
137
138
The following example shows how to assign the IP address that you created to the firewall front end.
138
139
139
140
> [!NOTE]
140
-
> Setting up the public IP address to the Azure Firewall instance might take a few minutes. To use a fully qualified domain name (FQDN) on network rules, enable a DNS proxy. After you enable the proxy, the firewall will listen on port 53 and forward DNS requests to the specified DNS server. The firewall can then translate the FQDN automatically.
141
+
> Setting up the public IP address to the Azure Firewall instance might take a few minutes. To use a fully qualified domain name (FQDN) on network rules, enable a DNS proxy. After you enable the proxy, the firewall listens on port 53 and forwards DNS requests to the specified DNS server. The firewall can then translate the FQDN automatically.
141
142
142
143
```azurecli
143
144
# Configure the firewall IP address.
@@ -319,7 +320,7 @@ az spring create \
319
320
--outbound-type userDefinedRouting
320
321
```
321
322
322
-
You can now access the public IP address of the firewall from the internet. The firewall will route traffic into Azure Spring Apps subnets according to your routing rules.
323
+
You can now access the public IP address of the firewall from the internet. The firewall routes traffic into Azure Spring Apps subnets according to your routing rules.
0 commit comments