Virtual Node
Provides a ECI Virtual Node resource. For information about ECI Virtual Node and how to use it, see What is Virtual Node.
NOTE: Available in v1.145.0+.
Example Usage
Basic Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.eci.EciFunctions;
import com.pulumi.alicloud.eci.inputs.GetZonesArgs;
import com.pulumi.alicloud.vpc.VpcFunctions;
import com.pulumi.alicloud.vpc.inputs.GetNetworksArgs;
import com.pulumi.alicloud.vpc.inputs.GetSwitchesArgs;
import com.pulumi.alicloud.ecs.SecurityGroup;
import com.pulumi.alicloud.ecs.SecurityGroupArgs;
import com.pulumi.alicloud.ecs.EipAddress;
import com.pulumi.alicloud.ecs.EipAddressArgs;
import com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;
import com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;
import com.pulumi.alicloud.eci.VirtualNode;
import com.pulumi.alicloud.eci.VirtualNodeArgs;
import com.pulumi.alicloud.eci.inputs.VirtualNodeTaintArgs;
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) {
final var config = ctx.config();
final var name = config.get("name").orElse("tf-testaccvirtualnode");
final var defaultZones = EciFunctions.getZones();
final var defaultNetworks = VpcFunctions.getNetworks(GetNetworksArgs.builder()
.nameRegex("default-NODELETING")
.build());
final var defaultSwitches = VpcFunctions.getSwitches(GetSwitchesArgs.builder()
.vpcId(defaultNetworks.applyValue(getNetworksResult -> getNetworksResult.ids()[0]))
.zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].zoneIds()[1]))
.build());
var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()
.vpcId(defaultNetworks.applyValue(getNetworksResult -> getNetworksResult.ids()[0]))
.build());
var defaultEipAddress = new EipAddress("defaultEipAddress", EipAddressArgs.builder()
.addressName(name)
.build());
final var defaultResourceGroups = ResourcemanagerFunctions.getResourceGroups();
var defaultVirtualNode = new VirtualNode("defaultVirtualNode", VirtualNodeArgs.builder()
.securityGroupId(defaultSecurityGroup.id())
.virtualNodeName(name)
.vswitchId(defaultSwitches.applyValue(getSwitchesResult -> getSwitchesResult.ids()[1]))
.enablePublicNetwork(false)
.eipInstanceId(defaultEipAddress.id())
.resourceGroupId(defaultResourceGroups.applyValue(getResourceGroupsResult -> getResourceGroupsResult.groups()[0].id()))
.kubeConfig("kube config")
.tags(Map.of("Created", "TF"))
.taints(VirtualNodeTaintArgs.builder()
.effect("NoSchedule")
.key("Tf1")
.value("Test1")
.build())
.build());
}
}
Content copied to clipboard
Import
ECI Virtual Node can be imported using the id, e.g.
$ pulumi import alicloud:eci/virtualNode:VirtualNode example <id>
Content copied to clipboard