Packet Mirroring Args
data class PacketMirroringArgs(val collectorIlb: Output<PacketMirroringCollectorIlbArgs>? = null, val description: Output<String>? = null, val filter: Output<PacketMirroringFilterArgs>? = null, val mirroredResources: Output<PacketMirroringMirroredResourcesArgs>? = null, val name: Output<String>? = null, val network: Output<PacketMirroringNetworkArgs>? = null, val priority: Output<Int>? = null, val project: Output<String>? = null, val region: Output<String>? = null) : ConvertibleToJava<PacketMirroringArgs>
Packet Mirroring mirrors traffic to and from particular VM instances. You can use the collected traffic to help you detect security threats and monitor application performance. To get more information about PacketMirroring, see:
How-to Guides
Example Usage
Compute Packet Mirroring Full
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.Instance;
import com.pulumi.gcp.compute.InstanceArgs;
import com.pulumi.gcp.compute.inputs.InstanceBootDiskArgs;
import com.pulumi.gcp.compute.inputs.InstanceBootDiskInitializeParamsArgs;
import com.pulumi.gcp.compute.inputs.InstanceNetworkInterfaceArgs;
import com.pulumi.gcp.compute.Subnetwork;
import com.pulumi.gcp.compute.SubnetworkArgs;
import com.pulumi.gcp.compute.HealthCheck;
import com.pulumi.gcp.compute.HealthCheckArgs;
import com.pulumi.gcp.compute.inputs.HealthCheckTcpHealthCheckArgs;
import com.pulumi.gcp.compute.RegionBackendService;
import com.pulumi.gcp.compute.RegionBackendServiceArgs;
import com.pulumi.gcp.compute.ForwardingRule;
import com.pulumi.gcp.compute.ForwardingRuleArgs;
import com.pulumi.gcp.compute.PacketMirroring;
import com.pulumi.gcp.compute.PacketMirroringArgs;
import com.pulumi.gcp.compute.inputs.PacketMirroringNetworkArgs;
import com.pulumi.gcp.compute.inputs.PacketMirroringCollectorIlbArgs;
import com.pulumi.gcp.compute.inputs.PacketMirroringMirroredResourcesArgs;
import com.pulumi.gcp.compute.inputs.PacketMirroringFilterArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var defaultNetwork = new Network("defaultNetwork");
var mirror = new Instance("mirror", InstanceArgs.builder()
.machineType("e2-medium")
.bootDisk(InstanceBootDiskArgs.builder()
.initializeParams(InstanceBootDiskInitializeParamsArgs.builder()
.image("debian-cloud/debian-11")
.build())
.build())
.networkInterfaces(InstanceNetworkInterfaceArgs.builder()
.network(defaultNetwork.id())
.accessConfigs()
.build())
.build());
var defaultSubnetwork = new Subnetwork("defaultSubnetwork", SubnetworkArgs.builder()
.network(defaultNetwork.id())
.ipCidrRange("10.2.0.0/16")
.build());
var defaultHealthCheck = new HealthCheck("defaultHealthCheck", HealthCheckArgs.builder()
.checkIntervalSec(1)
.timeoutSec(1)
.tcpHealthCheck(HealthCheckTcpHealthCheckArgs.builder()
.port("80")
.build())
.build());
var defaultRegionBackendService = new RegionBackendService("defaultRegionBackendService", RegionBackendServiceArgs.builder()
.healthChecks(defaultHealthCheck.id())
.build());
var defaultForwardingRule = new ForwardingRule("defaultForwardingRule", ForwardingRuleArgs.builder()
.isMirroringCollector(true)
.ipProtocol("TCP")
.loadBalancingScheme("INTERNAL")
.backendService(defaultRegionBackendService.id())
.allPorts(true)
.network(defaultNetwork.id())
.subnetwork(defaultSubnetwork.id())
.networkTier("PREMIUM")
.build(), CustomResourceOptions.builder()
.dependsOn(defaultSubnetwork)
.build());
var foobar = new PacketMirroring("foobar", PacketMirroringArgs.builder()
.description("bar")
.network(PacketMirroringNetworkArgs.builder()
.url(defaultNetwork.id())
.build())
.collectorIlb(PacketMirroringCollectorIlbArgs.builder()
.url(defaultForwardingRule.id())
.build())
.mirroredResources(PacketMirroringMirroredResourcesArgs.builder()
.tags("foo")
.instances(PacketMirroringMirroredResourcesInstanceArgs.builder()
.url(mirror.id())
.build())
.build())
.filter(PacketMirroringFilterArgs.builder()
.ipProtocols("tcp")
.cidrRanges("0.0.0.0/0")
.direction("BOTH")
.build())
.build());
}
}
Content copied to clipboard
Import
PacketMirroring can be imported using any of these accepted formats
$ pulumi import gcp:compute/packetMirroring:PacketMirroring default projects/{{project}}/regions/{{region}}/packetMirrorings/{{name}}
Content copied to clipboard
$ pulumi import gcp:compute/packetMirroring:PacketMirroring default {{project}}/{{region}}/{{name}}
Content copied to clipboard
$ pulumi import gcp:compute/packetMirroring:PacketMirroring default {{region}}/{{name}}
Content copied to clipboard
$ pulumi import gcp:compute/packetMirroring:PacketMirroring default {{name}}
Content copied to clipboard
Constructors
Link copied to clipboard
fun PacketMirroringArgs(collectorIlb: Output<PacketMirroringCollectorIlbArgs>? = null, description: Output<String>? = null, filter: Output<PacketMirroringFilterArgs>? = null, mirroredResources: Output<PacketMirroringMirroredResourcesArgs>? = null, name: Output<String>? = null, network: Output<PacketMirroringNetworkArgs>? = null, priority: Output<Int>? = null, project: Output<String>? = null, region: Output<String>? = null)