Bare Metal Admin Cluster Args
A Google Bare Metal Admin Cluster.
Example Usage
Gkeonprem Bare Metal Admin Cluster Basic
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.gkeonprem.BareMetalAdminCluster;
import com.pulumi.gcp.gkeonprem.BareMetalAdminClusterArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterControlPlaneArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterLoadBalancerArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterLoadBalancerPortConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterLoadBalancerVipConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterNetworkConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterNetworkConfigIslandModeCidrArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterNodeAccessConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterNodeConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterStorageArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterStorageLvpNodeMountsConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterStorageLvpShareConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterStorageLvpShareConfigLvpConfigArgs;
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 admin_cluster_basic = new BareMetalAdminCluster("admin-cluster-basic", BareMetalAdminClusterArgs.builder()
.bareMetalVersion("1.13.4")
.controlPlane(BareMetalAdminClusterControlPlaneArgs.builder()
.controlPlaneNodePoolConfig(BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigArgs.builder()
.nodePoolConfig(BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs.builder()
.labels()
.nodeConfigs(
BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
.labels()
.nodeIp("10.200.0.2")
.build(),
BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
.labels()
.nodeIp("10.200.0.3")
.build(),
BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
.labels()
.nodeIp("10.200.0.4")
.build())
.operatingSystem("LINUX")
.build())
.build())
.build())
.loadBalancer(BareMetalAdminClusterLoadBalancerArgs.builder()
.portConfig(BareMetalAdminClusterLoadBalancerPortConfigArgs.builder()
.controlPlaneLoadBalancerPort(443)
.build())
.vipConfig(BareMetalAdminClusterLoadBalancerVipConfigArgs.builder()
.controlPlaneVip("10.200.0.5")
.build())
.build())
.location("us-west1")
.networkConfig(BareMetalAdminClusterNetworkConfigArgs.builder()
.islandModeCidr(BareMetalAdminClusterNetworkConfigIslandModeCidrArgs.builder()
.podAddressCidrBlocks("10.240.0.0/13")
.serviceAddressCidrBlocks("172.26.0.0/16")
.build())
.build())
.nodeAccessConfig(BareMetalAdminClusterNodeAccessConfigArgs.builder()
.loginUser("root")
.build())
.nodeConfig(BareMetalAdminClusterNodeConfigArgs.builder()
.maxPodsPerNode(250)
.build())
.storage(BareMetalAdminClusterStorageArgs.builder()
.lvpNodeMountsConfig(BareMetalAdminClusterStorageLvpNodeMountsConfigArgs.builder()
.path("/mnt/localpv-disk")
.storageClass("local-disks")
.build())
.lvpShareConfig(BareMetalAdminClusterStorageLvpShareConfigArgs.builder()
.lvpConfig(BareMetalAdminClusterStorageLvpShareConfigLvpConfigArgs.builder()
.path("/mnt/localpv-share")
.storageClass("local-shared")
.build())
.sharedPathPvCount(5)
.build())
.build())
.build());
}
}Gkeonprem Bare Metal Admin Cluster Full
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.gkeonprem.BareMetalAdminCluster;
import com.pulumi.gcp.gkeonprem.BareMetalAdminClusterArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterClusterOperationsArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterControlPlaneArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterLoadBalancerArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterLoadBalancerManualLbConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterLoadBalancerPortConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterLoadBalancerVipConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterMaintenanceConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterNetworkConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterNetworkConfigIslandModeCidrArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterNodeAccessConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterNodeConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterProxyArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterSecurityConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterSecurityConfigAuthorizationArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterStorageArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterStorageLvpNodeMountsConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterStorageLvpShareConfigArgs;
import com.pulumi.gcp.gkeonprem.inputs.BareMetalAdminClusterStorageLvpShareConfigLvpConfigArgs;
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 admin_cluster_basic = new BareMetalAdminCluster("admin-cluster-basic", BareMetalAdminClusterArgs.builder()
.annotations(Map.of("env", "test"))
.bareMetalVersion("1.13.4")
.clusterOperations(BareMetalAdminClusterClusterOperationsArgs.builder()
.enableApplicationLogs(true)
.build())
.controlPlane(BareMetalAdminClusterControlPlaneArgs.builder()
.apiServerArgs(BareMetalAdminClusterControlPlaneApiServerArgArgs.builder()
.argument("test argument")
.value("test value")
.build())
.controlPlaneNodePoolConfig(BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigArgs.builder()
.nodePoolConfig(BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigArgs.builder()
.labels()
.nodeConfigs(
BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
.labels()
.nodeIp("10.200.0.2")
.build(),
BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
.labels()
.nodeIp("10.200.0.3")
.build(),
BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigNodeConfigArgs.builder()
.labels()
.nodeIp("10.200.0.4")
.build())
.operatingSystem("LINUX")
.taints(BareMetalAdminClusterControlPlaneControlPlaneNodePoolConfigNodePoolConfigTaintArgs.builder()
.effect("NO_EXECUTE")
.key("test-key")
.value("test-value")
.build())
.build())
.build())
.build())
.description("test description")
.loadBalancer(BareMetalAdminClusterLoadBalancerArgs.builder()
.manualLbConfig(BareMetalAdminClusterLoadBalancerManualLbConfigArgs.builder()
.enabled(true)
.build())
.portConfig(BareMetalAdminClusterLoadBalancerPortConfigArgs.builder()
.controlPlaneLoadBalancerPort(443)
.build())
.vipConfig(BareMetalAdminClusterLoadBalancerVipConfigArgs.builder()
.controlPlaneVip("10.200.0.5")
.build())
.build())
.location("us-west1")
.maintenanceConfig(BareMetalAdminClusterMaintenanceConfigArgs.builder()
.maintenanceAddressCidrBlocks(
"10.0.0.1/32",
"10.0.0.2/32")
.build())
.networkConfig(BareMetalAdminClusterNetworkConfigArgs.builder()
.islandModeCidr(BareMetalAdminClusterNetworkConfigIslandModeCidrArgs.builder()
.podAddressCidrBlocks("10.240.0.0/13")
.serviceAddressCidrBlocks("172.26.0.0/16")
.build())
.build())
.nodeAccessConfig(BareMetalAdminClusterNodeAccessConfigArgs.builder()
.loginUser("root")
.build())
.nodeConfig(BareMetalAdminClusterNodeConfigArgs.builder()
.maxPodsPerNode(250)
.build())
.proxy(BareMetalAdminClusterProxyArgs.builder()
.noProxies("127.0.0.1")
.uri("test proxy uri")
.build())
.securityConfig(BareMetalAdminClusterSecurityConfigArgs.builder()
.authorization(BareMetalAdminClusterSecurityConfigAuthorizationArgs.builder()
.adminUsers(BareMetalAdminClusterSecurityConfigAuthorizationAdminUserArgs.builder()
.username("admin@hashicorptest.com")
.build())
.build())
.build())
.storage(BareMetalAdminClusterStorageArgs.builder()
.lvpNodeMountsConfig(BareMetalAdminClusterStorageLvpNodeMountsConfigArgs.builder()
.path("/mnt/localpv-disk")
.storageClass("local-disks")
.build())
.lvpShareConfig(BareMetalAdminClusterStorageLvpShareConfigArgs.builder()
.lvpConfig(BareMetalAdminClusterStorageLvpShareConfigLvpConfigArgs.builder()
.path("/mnt/localpv-share")
.storageClass("local-shared")
.build())
.sharedPathPvCount(5)
.build())
.build())
.build());
}
}Import
BareMetalAdminCluster can be imported using any of these accepted formats* projects/{{project}}/locations/{{location}}/bareMetalAdminClusters/{{name}} * {{project}}/{{location}}/{{name}} * {{location}}/{{name}} In Terraform v1.5.0 and later, use an import block to import BareMetalAdminCluster using one of the formats above. For exampletf import { id = "projects/{{project}}/locations/{{location}}/bareMetalAdminClusters/{{name}}" to = google_gkeonprem_bare_metal_admin_cluster.default }
$ pulumi import gcp:gkeonprem/bareMetalAdminCluster:BareMetalAdminCluster When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), BareMetalAdminCluster can be imported using one of the formats above. For example$ pulumi import gcp:gkeonprem/bareMetalAdminCluster:BareMetalAdminCluster default projects/{{project}}/locations/{{location}}/bareMetalAdminClusters/{{name}}$ pulumi import gcp:gkeonprem/bareMetalAdminCluster:BareMetalAdminCluster default {{project}}/{{location}}/{{name}}$ pulumi import gcp:gkeonprem/bareMetalAdminCluster:BareMetalAdminCluster default {{location}}/{{name}}Constructors
Functions
Properties
Annotations on the Bare Metal Admin Cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix (optional) and name (required), separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effective_annotations for all of the annotations present on the resource.