1. Registry
  2. Packages
  3. Alibaba Cloud Provider
  4. API Docs
  5. ehpc
  6. User
Viewing docs for Alibaba Cloud v3.108.0
published on Thursday, Sep 17, 2026 by Pulumi
alicloud logo alicloud logo
Viewing docs for Alibaba Cloud v3.108.0
published on Thursday, Sep 17, 2026 by Pulumi

    Provides a Ehpc User resource.

    A user in an E-HPC cluster.

    For information about Ehpc User and how to use it, see What is User.

    NOTE: Available since v1.292.0.

    Example Usage

    Basic Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    
    const config = new pulumi.Config();
    const name = config.get("name") || "terraform-example";
    const userPasswordExampleVpc = new alicloud.vpc.Network("user_password_example_vpc", {
        isDefault: false,
        cidrBlock: "10.0.0.0/8",
        vpcName: "user-password-example-vpc",
    });
    const userPasswordExampleVswitch = new alicloud.vpc.Switch("user_password_example_vswitch", {
        isDefault: false,
        vpcId: userPasswordExampleVpc.id,
        zoneId: "cn-hangzhou-k",
        cidrBlock: "10.0.0.0/24",
        vswitchName: "user-password-example-vsw",
    });
    const userPasswordExampleNas = new alicloud.nas.FileSystem("user_password_example_nas", {
        description: "user-password-example-nas",
        storageType: "Capacity",
        nfsAcl: {
            enabled: false,
        },
        zoneId: "cn-hangzhou-k",
        encryptType: 0,
        protocolType: "NFS",
        fileSystemType: "standard",
        recycleBin: {
            status: "Disable",
            reservedDays: 7,
        },
    });
    const userPasswordExampleAccessGroup = new alicloud.nas.AccessGroup("user_password_example_access_group", {
        accessGroupType: "Vpc",
        description: "user password example access group",
        accessGroupName: "UserPasswordTest",
        fileSystemType: "standard",
    });
    const userPasswordExampleMountDomain = new alicloud.nas.MountTarget("user_password_example_mount_domain", {
        vpcId: userPasswordExampleVpc.id,
        networkType: "Vpc",
        accessGroupName: userPasswordExampleAccessGroup.accessGroupName,
        vswitchId: userPasswordExampleVswitch.id,
        fileSystemId: userPasswordExampleNas.id,
    });
    const userPasswordExampleSecurityGroup = new alicloud.ecs.SecurityGroup("user_password_example_security_group", {
        vpcId: userPasswordExampleVpc.id,
        securityGroupType: "normal",
    });
    const userPasswordExampleAccessRule = new alicloud.nas.AccessRule("user_password_example_access_rule", {
        priority: 1,
        accessGroupName: userPasswordExampleAccessGroup.accessGroupName,
        fileSystemType: userPasswordExampleNas.fileSystemType,
        sourceCidrIp: "10.0.0.0/8",
    });
    const userPasswordExampleCluster = new alicloud.ehpc.ClusterV2("user_password_example_cluster", {
        clusterCredentials: {
            password: "aliHPC123",
        },
        clusterVpcId: userPasswordExampleVpc.id,
        clusterCategory: "Standard",
        clusterMode: "Integrated",
        securityGroupId: userPasswordExampleSecurityGroup.id,
        clusterName: "user-password-example-cluster",
        deletionProtection: false,
        sharedStorages: [
            {
                mountDirectory: "/home",
                nasDirectory: "/",
                mountTargetDomain: userPasswordExampleMountDomain.mountTargetDomain,
                protocolType: "NFS",
                fileSystemId: userPasswordExampleNas.id,
                mountOptions: "-t nfs -o vers=3,nolock,proto=tcp,noresvport",
            },
            {
                mountDirectory: "/opt",
                nasDirectory: "/",
                mountTargetDomain: userPasswordExampleMountDomain.mountTargetDomain,
                protocolType: "NFS",
                fileSystemId: userPasswordExampleNas.id,
                mountOptions: "-t nfs -o vers=3,nolock,proto=tcp,noresvport",
            },
            {
                mountDirectory: "/ehpcdata",
                nasDirectory: "/",
                mountTargetDomain: userPasswordExampleMountDomain.mountTargetDomain,
                protocolType: "NFS",
                fileSystemId: userPasswordExampleNas.id,
                mountOptions: "-t nfs -o vers=3,nolock,proto=tcp,noresvport",
            },
        ],
        clusterVswitchId: userPasswordExampleVswitch.id,
        manager: {
            managerNode: {
                systemDisk: {
                    category: "cloud_essd",
                    size: 40,
                    level: "PL0",
                },
                enableHt: true,
                instanceChargeType: "PostPaid",
                imageId: "centos_7_6_x64_20G_alibase_20211130.vhd",
                instanceType: "ecs.c6.xlarge",
                spotStrategy: "NoSpot",
            },
            scheduler: {
                type: "SLURM",
                version: "22.05.8",
            },
            dns: {
                type: "nis",
                version: "1.0",
            },
            directoryService: {
                type: "nis",
                version: "1.0",
            },
        },
    });
    const _default = new alicloud.ehpc.User("default", {
        group: "users",
        userName: "passworduser1",
        clusterId: userPasswordExampleCluster.id,
        password: "UserPass123",
    });
    
    import pulumi
    import pulumi_alicloud as alicloud
    
    config = pulumi.Config()
    name = config.get("name")
    if name is None:
        name = "terraform-example"
    user_password_example_vpc = alicloud.vpc.Network("user_password_example_vpc",
        is_default=False,
        cidr_block="10.0.0.0/8",
        vpc_name="user-password-example-vpc")
    user_password_example_vswitch = alicloud.vpc.Switch("user_password_example_vswitch",
        is_default=False,
        vpc_id=user_password_example_vpc.id,
        zone_id="cn-hangzhou-k",
        cidr_block="10.0.0.0/24",
        vswitch_name="user-password-example-vsw")
    user_password_example_nas = alicloud.nas.FileSystem("user_password_example_nas",
        description="user-password-example-nas",
        storage_type="Capacity",
        nfs_acl={
            "enabled": False,
        },
        zone_id="cn-hangzhou-k",
        encrypt_type=0,
        protocol_type="NFS",
        file_system_type="standard",
        recycle_bin={
            "status": "Disable",
            "reserved_days": 7,
        })
    user_password_example_access_group = alicloud.nas.AccessGroup("user_password_example_access_group",
        access_group_type="Vpc",
        description="user password example access group",
        access_group_name="UserPasswordTest",
        file_system_type="standard")
    user_password_example_mount_domain = alicloud.nas.MountTarget("user_password_example_mount_domain",
        vpc_id=user_password_example_vpc.id,
        network_type="Vpc",
        access_group_name=user_password_example_access_group.access_group_name,
        vswitch_id=user_password_example_vswitch.id,
        file_system_id=user_password_example_nas.id)
    user_password_example_security_group = alicloud.ecs.SecurityGroup("user_password_example_security_group",
        vpc_id=user_password_example_vpc.id,
        security_group_type="normal")
    user_password_example_access_rule = alicloud.nas.AccessRule("user_password_example_access_rule",
        priority=1,
        access_group_name=user_password_example_access_group.access_group_name,
        file_system_type=user_password_example_nas.file_system_type,
        source_cidr_ip="10.0.0.0/8")
    user_password_example_cluster = alicloud.ehpc.ClusterV2("user_password_example_cluster",
        cluster_credentials={
            "password": "aliHPC123",
        },
        cluster_vpc_id=user_password_example_vpc.id,
        cluster_category="Standard",
        cluster_mode="Integrated",
        security_group_id=user_password_example_security_group.id,
        cluster_name="user-password-example-cluster",
        deletion_protection=False,
        shared_storages=[
            {
                "mount_directory": "/home",
                "nas_directory": "/",
                "mount_target_domain": user_password_example_mount_domain.mount_target_domain,
                "protocol_type": "NFS",
                "file_system_id": user_password_example_nas.id,
                "mount_options": "-t nfs -o vers=3,nolock,proto=tcp,noresvport",
            },
            {
                "mount_directory": "/opt",
                "nas_directory": "/",
                "mount_target_domain": user_password_example_mount_domain.mount_target_domain,
                "protocol_type": "NFS",
                "file_system_id": user_password_example_nas.id,
                "mount_options": "-t nfs -o vers=3,nolock,proto=tcp,noresvport",
            },
            {
                "mount_directory": "/ehpcdata",
                "nas_directory": "/",
                "mount_target_domain": user_password_example_mount_domain.mount_target_domain,
                "protocol_type": "NFS",
                "file_system_id": user_password_example_nas.id,
                "mount_options": "-t nfs -o vers=3,nolock,proto=tcp,noresvport",
            },
        ],
        cluster_vswitch_id=user_password_example_vswitch.id,
        manager={
            "manager_node": {
                "system_disk": {
                    "category": "cloud_essd",
                    "size": 40,
                    "level": "PL0",
                },
                "enable_ht": True,
                "instance_charge_type": "PostPaid",
                "image_id": "centos_7_6_x64_20G_alibase_20211130.vhd",
                "instance_type": "ecs.c6.xlarge",
                "spot_strategy": "NoSpot",
            },
            "scheduler": {
                "type": "SLURM",
                "version": "22.05.8",
            },
            "dns": {
                "type": "nis",
                "version": "1.0",
            },
            "directory_service": {
                "type": "nis",
                "version": "1.0",
            },
        })
    default = alicloud.ehpc.User("default",
        group="users",
        user_name="passworduser1",
        cluster_id=user_password_example_cluster.id,
        password="UserPass123")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ehpc"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/nas"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		name := "terraform-example"
    		if param := cfg.Get("name"); param != "" {
    			name = param
    		}
    		userPasswordExampleVpc, err := vpc.NewNetwork(ctx, "user_password_example_vpc", &vpc.NetworkArgs{
    			IsDefault: pulumi.Bool(false),
    			CidrBlock: pulumi.String("10.0.0.0/8"),
    			VpcName:   pulumi.String("user-password-example-vpc"),
    		})
    		if err != nil {
    			return err
    		}
    		userPasswordExampleVswitch, err := vpc.NewSwitch(ctx, "user_password_example_vswitch", &vpc.SwitchArgs{
    			IsDefault:   pulumi.Bool(false),
    			VpcId:       userPasswordExampleVpc.ID().ToIDOutput().ToStringOutput(),
    			ZoneId:      pulumi.String("cn-hangzhou-k"),
    			CidrBlock:   pulumi.String("10.0.0.0/24"),
    			VswitchName: pulumi.String("user-password-example-vsw"),
    		})
    		if err != nil {
    			return err
    		}
    		userPasswordExampleNas, err := nas.NewFileSystem(ctx, "user_password_example_nas", &nas.FileSystemArgs{
    			Description: pulumi.String("user-password-example-nas"),
    			StorageType: pulumi.String("Capacity"),
    			NfsAcl: &nas.FileSystemNfsAclArgs{
    				Enabled: pulumi.Bool(false),
    			},
    			ZoneId:         pulumi.String("cn-hangzhou-k"),
    			EncryptType:    pulumi.Int(0),
    			ProtocolType:   pulumi.String("NFS"),
    			FileSystemType: pulumi.String("standard"),
    			RecycleBin: &nas.FileSystemRecycleBinArgs{
    				Status:       pulumi.String("Disable"),
    				ReservedDays: pulumi.Int(7),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		userPasswordExampleAccessGroup, err := nas.NewAccessGroup(ctx, "user_password_example_access_group", &nas.AccessGroupArgs{
    			AccessGroupType: pulumi.String("Vpc"),
    			Description:     pulumi.String("user password example access group"),
    			AccessGroupName: pulumi.String("UserPasswordTest"),
    			FileSystemType:  pulumi.String("standard"),
    		})
    		if err != nil {
    			return err
    		}
    		userPasswordExampleMountDomain, err := nas.NewMountTarget(ctx, "user_password_example_mount_domain", &nas.MountTargetArgs{
    			VpcId:           userPasswordExampleVpc.ID().ToIDOutput().ToStringOutput(),
    			NetworkType:     pulumi.String("Vpc"),
    			AccessGroupName: userPasswordExampleAccessGroup.AccessGroupName,
    			VswitchId:       userPasswordExampleVswitch.ID().ToIDOutput().ToStringOutput(),
    			FileSystemId:    userPasswordExampleNas.ID().ToIDOutput().ToStringOutput(),
    		})
    		if err != nil {
    			return err
    		}
    		userPasswordExampleSecurityGroup, err := ecs.NewSecurityGroup(ctx, "user_password_example_security_group", &ecs.SecurityGroupArgs{
    			VpcId:             userPasswordExampleVpc.ID().ToIDOutput().ToStringOutput(),
    			SecurityGroupType: pulumi.String("normal"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = nas.NewAccessRule(ctx, "user_password_example_access_rule", &nas.AccessRuleArgs{
    			Priority:        pulumi.Int(1),
    			AccessGroupName: userPasswordExampleAccessGroup.AccessGroupName,
    			FileSystemType:  userPasswordExampleNas.FileSystemType,
    			SourceCidrIp:    pulumi.String("10.0.0.0/8"),
    		})
    		if err != nil {
    			return err
    		}
    		userPasswordExampleCluster, err := ehpc.NewClusterV2(ctx, "user_password_example_cluster", &ehpc.ClusterV2Args{
    			ClusterCredentials: &ehpc.ClusterV2ClusterCredentialsArgs{
    				Password: pulumi.String("aliHPC123"),
    			},
    			ClusterVpcId:       userPasswordExampleVpc.ID().ToIDOutput().ToStringOutput(),
    			ClusterCategory:    pulumi.String("Standard"),
    			ClusterMode:        pulumi.String("Integrated"),
    			SecurityGroupId:    userPasswordExampleSecurityGroup.ID().ToIDOutput().ToStringOutput(),
    			ClusterName:        pulumi.String("user-password-example-cluster"),
    			DeletionProtection: pulumi.Bool(false),
    			SharedStorages: ehpc.ClusterV2SharedStorageArray{
    				&ehpc.ClusterV2SharedStorageArgs{
    					MountDirectory:    pulumi.String("/home"),
    					NasDirectory:      pulumi.String("/"),
    					MountTargetDomain: userPasswordExampleMountDomain.MountTargetDomain,
    					ProtocolType:      pulumi.String("NFS"),
    					FileSystemId:      userPasswordExampleNas.ID().ToIDOutput().ToStringOutput(),
    					MountOptions:      pulumi.String("-t nfs -o vers=3,nolock,proto=tcp,noresvport"),
    				},
    				&ehpc.ClusterV2SharedStorageArgs{
    					MountDirectory:    pulumi.String("/opt"),
    					NasDirectory:      pulumi.String("/"),
    					MountTargetDomain: userPasswordExampleMountDomain.MountTargetDomain,
    					ProtocolType:      pulumi.String("NFS"),
    					FileSystemId:      userPasswordExampleNas.ID().ToIDOutput().ToStringOutput(),
    					MountOptions:      pulumi.String("-t nfs -o vers=3,nolock,proto=tcp,noresvport"),
    				},
    				&ehpc.ClusterV2SharedStorageArgs{
    					MountDirectory:    pulumi.String("/ehpcdata"),
    					NasDirectory:      pulumi.String("/"),
    					MountTargetDomain: userPasswordExampleMountDomain.MountTargetDomain,
    					ProtocolType:      pulumi.String("NFS"),
    					FileSystemId:      userPasswordExampleNas.ID().ToIDOutput().ToStringOutput(),
    					MountOptions:      pulumi.String("-t nfs -o vers=3,nolock,proto=tcp,noresvport"),
    				},
    			},
    			ClusterVswitchId: userPasswordExampleVswitch.ID().ToIDOutput().ToStringOutput(),
    			Manager: &ehpc.ClusterV2ManagerArgs{
    				ManagerNode: &ehpc.ClusterV2ManagerManagerNodeArgs{
    					SystemDisk: &ehpc.ClusterV2ManagerManagerNodeSystemDiskArgs{
    						Category: pulumi.String("cloud_essd"),
    						Size:     pulumi.Int(40),
    						Level:    pulumi.String("PL0"),
    					},
    					EnableHt:           pulumi.Bool(true),
    					InstanceChargeType: pulumi.String("PostPaid"),
    					ImageId:            pulumi.String("centos_7_6_x64_20G_alibase_20211130.vhd"),
    					InstanceType:       pulumi.String("ecs.c6.xlarge"),
    					SpotStrategy:       pulumi.String("NoSpot"),
    				},
    				Scheduler: &ehpc.ClusterV2ManagerSchedulerArgs{
    					Type:    pulumi.String("SLURM"),
    					Version: pulumi.String("22.05.8"),
    				},
    				Dns: &ehpc.ClusterV2ManagerDnsArgs{
    					Type:    pulumi.String("nis"),
    					Version: pulumi.String("1.0"),
    				},
    				DirectoryService: &ehpc.ClusterV2ManagerDirectoryServiceArgs{
    					Type:    pulumi.String("nis"),
    					Version: pulumi.String("1.0"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = ehpc.NewUser(ctx, "default", &ehpc.UserArgs{
    			Group:     pulumi.String("users"),
    			UserName:  pulumi.String("passworduser1"),
    			ClusterId: userPasswordExampleCluster.ID().ToIDOutput().ToStringOutput(),
    			Password:  pulumi.String("UserPass123"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var name = config.Get("name") ?? "terraform-example";
        var userPasswordExampleVpc = new AliCloud.Vpc.Network("user_password_example_vpc", new()
        {
            IsDefault = false,
            CidrBlock = "10.0.0.0/8",
            VpcName = "user-password-example-vpc",
        });
    
        var userPasswordExampleVswitch = new AliCloud.Vpc.Switch("user_password_example_vswitch", new()
        {
            IsDefault = false,
            VpcId = userPasswordExampleVpc.Id,
            ZoneId = "cn-hangzhou-k",
            CidrBlock = "10.0.0.0/24",
            VswitchName = "user-password-example-vsw",
        });
    
        var userPasswordExampleNas = new AliCloud.Nas.FileSystem("user_password_example_nas", new()
        {
            Description = "user-password-example-nas",
            StorageType = "Capacity",
            NfsAcl = new AliCloud.Nas.Inputs.FileSystemNfsAclArgs
            {
                Enabled = false,
            },
            ZoneId = "cn-hangzhou-k",
            EncryptType = 0,
            ProtocolType = "NFS",
            FileSystemType = "standard",
            RecycleBin = new AliCloud.Nas.Inputs.FileSystemRecycleBinArgs
            {
                Status = "Disable",
                ReservedDays = 7,
            },
        });
    
        var userPasswordExampleAccessGroup = new AliCloud.Nas.AccessGroup("user_password_example_access_group", new()
        {
            AccessGroupType = "Vpc",
            Description = "user password example access group",
            AccessGroupName = "UserPasswordTest",
            FileSystemType = "standard",
        });
    
        var userPasswordExampleMountDomain = new AliCloud.Nas.MountTarget("user_password_example_mount_domain", new()
        {
            VpcId = userPasswordExampleVpc.Id,
            NetworkType = "Vpc",
            AccessGroupName = userPasswordExampleAccessGroup.AccessGroupName,
            VswitchId = userPasswordExampleVswitch.Id,
            FileSystemId = userPasswordExampleNas.Id,
        });
    
        var userPasswordExampleSecurityGroup = new AliCloud.Ecs.SecurityGroup("user_password_example_security_group", new()
        {
            VpcId = userPasswordExampleVpc.Id,
            SecurityGroupType = "normal",
        });
    
        var userPasswordExampleAccessRule = new AliCloud.Nas.AccessRule("user_password_example_access_rule", new()
        {
            Priority = 1,
            AccessGroupName = userPasswordExampleAccessGroup.AccessGroupName,
            FileSystemType = userPasswordExampleNas.FileSystemType,
            SourceCidrIp = "10.0.0.0/8",
        });
    
        var userPasswordExampleCluster = new AliCloud.Ehpc.ClusterV2("user_password_example_cluster", new()
        {
            ClusterCredentials = new AliCloud.Ehpc.Inputs.ClusterV2ClusterCredentialsArgs
            {
                Password = "aliHPC123",
            },
            ClusterVpcId = userPasswordExampleVpc.Id,
            ClusterCategory = "Standard",
            ClusterMode = "Integrated",
            SecurityGroupId = userPasswordExampleSecurityGroup.Id,
            ClusterName = "user-password-example-cluster",
            DeletionProtection = false,
            SharedStorages = new[]
            {
                new AliCloud.Ehpc.Inputs.ClusterV2SharedStorageArgs
                {
                    MountDirectory = "/home",
                    NasDirectory = "/",
                    MountTargetDomain = userPasswordExampleMountDomain.MountTargetDomain,
                    ProtocolType = "NFS",
                    FileSystemId = userPasswordExampleNas.Id,
                    MountOptions = "-t nfs -o vers=3,nolock,proto=tcp,noresvport",
                },
                new AliCloud.Ehpc.Inputs.ClusterV2SharedStorageArgs
                {
                    MountDirectory = "/opt",
                    NasDirectory = "/",
                    MountTargetDomain = userPasswordExampleMountDomain.MountTargetDomain,
                    ProtocolType = "NFS",
                    FileSystemId = userPasswordExampleNas.Id,
                    MountOptions = "-t nfs -o vers=3,nolock,proto=tcp,noresvport",
                },
                new AliCloud.Ehpc.Inputs.ClusterV2SharedStorageArgs
                {
                    MountDirectory = "/ehpcdata",
                    NasDirectory = "/",
                    MountTargetDomain = userPasswordExampleMountDomain.MountTargetDomain,
                    ProtocolType = "NFS",
                    FileSystemId = userPasswordExampleNas.Id,
                    MountOptions = "-t nfs -o vers=3,nolock,proto=tcp,noresvport",
                },
            },
            ClusterVswitchId = userPasswordExampleVswitch.Id,
            Manager = new AliCloud.Ehpc.Inputs.ClusterV2ManagerArgs
            {
                ManagerNode = new AliCloud.Ehpc.Inputs.ClusterV2ManagerManagerNodeArgs
                {
                    SystemDisk = new AliCloud.Ehpc.Inputs.ClusterV2ManagerManagerNodeSystemDiskArgs
                    {
                        Category = "cloud_essd",
                        Size = 40,
                        Level = "PL0",
                    },
                    EnableHt = true,
                    InstanceChargeType = "PostPaid",
                    ImageId = "centos_7_6_x64_20G_alibase_20211130.vhd",
                    InstanceType = "ecs.c6.xlarge",
                    SpotStrategy = "NoSpot",
                },
                Scheduler = new AliCloud.Ehpc.Inputs.ClusterV2ManagerSchedulerArgs
                {
                    Type = "SLURM",
                    Version = "22.05.8",
                },
                Dns = new AliCloud.Ehpc.Inputs.ClusterV2ManagerDnsArgs
                {
                    Type = "nis",
                    Version = "1.0",
                },
                DirectoryService = new AliCloud.Ehpc.Inputs.ClusterV2ManagerDirectoryServiceArgs
                {
                    Type = "nis",
                    Version = "1.0",
                },
            },
        });
    
        var @default = new AliCloud.Ehpc.User("default", new()
        {
            Group = "users",
            UserName = "passworduser1",
            ClusterId = userPasswordExampleCluster.Id,
            Password = "UserPass123",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.alicloud.vpc.Network;
    import com.pulumi.alicloud.vpc.NetworkArgs;
    import com.pulumi.alicloud.vpc.Switch;
    import com.pulumi.alicloud.vpc.SwitchArgs;
    import com.pulumi.alicloud.nas.FileSystem;
    import com.pulumi.alicloud.nas.FileSystemArgs;
    import com.pulumi.alicloud.nas.inputs.FileSystemNfsAclArgs;
    import com.pulumi.alicloud.nas.inputs.FileSystemRecycleBinArgs;
    import com.pulumi.alicloud.nas.AccessGroup;
    import com.pulumi.alicloud.nas.AccessGroupArgs;
    import com.pulumi.alicloud.nas.MountTarget;
    import com.pulumi.alicloud.nas.MountTargetArgs;
    import com.pulumi.alicloud.ecs.SecurityGroup;
    import com.pulumi.alicloud.ecs.SecurityGroupArgs;
    import com.pulumi.alicloud.nas.AccessRule;
    import com.pulumi.alicloud.nas.AccessRuleArgs;
    import com.pulumi.alicloud.ehpc.ClusterV2;
    import com.pulumi.alicloud.ehpc.ClusterV2Args;
    import com.pulumi.alicloud.ehpc.inputs.ClusterV2ClusterCredentialsArgs;
    import com.pulumi.alicloud.ehpc.inputs.ClusterV2SharedStorageArgs;
    import com.pulumi.alicloud.ehpc.inputs.ClusterV2ManagerArgs;
    import com.pulumi.alicloud.ehpc.inputs.ClusterV2ManagerManagerNodeArgs;
    import com.pulumi.alicloud.ehpc.inputs.ClusterV2ManagerManagerNodeSystemDiskArgs;
    import com.pulumi.alicloud.ehpc.inputs.ClusterV2ManagerSchedulerArgs;
    import com.pulumi.alicloud.ehpc.inputs.ClusterV2ManagerDnsArgs;
    import com.pulumi.alicloud.ehpc.inputs.ClusterV2ManagerDirectoryServiceArgs;
    import com.pulumi.alicloud.ehpc.User;
    import com.pulumi.alicloud.ehpc.UserArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    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("terraform-example");
            var userPasswordExampleVpc = new Network("userPasswordExampleVpc", NetworkArgs.builder()
                .isDefault(false)
                .cidrBlock("10.0.0.0/8")
                .vpcName("user-password-example-vpc")
                .build());
    
            var userPasswordExampleVswitch = new Switch("userPasswordExampleVswitch", SwitchArgs.builder()
                .isDefault(false)
                .vpcId(userPasswordExampleVpc.id())
                .zoneId("cn-hangzhou-k")
                .cidrBlock("10.0.0.0/24")
                .vswitchName("user-password-example-vsw")
                .build());
    
            var userPasswordExampleNas = new FileSystem("userPasswordExampleNas", FileSystemArgs.builder()
                .description("user-password-example-nas")
                .storageType("Capacity")
                .nfsAcl(FileSystemNfsAclArgs.builder()
                    .enabled(false)
                    .build())
                .zoneId("cn-hangzhou-k")
                .encryptType(0)
                .protocolType("NFS")
                .fileSystemType("standard")
                .recycleBin(FileSystemRecycleBinArgs.builder()
                    .status("Disable")
                    .reservedDays(7)
                    .build())
                .build());
    
            var userPasswordExampleAccessGroup = new AccessGroup("userPasswordExampleAccessGroup", AccessGroupArgs.builder()
                .accessGroupType("Vpc")
                .description("user password example access group")
                .accessGroupName("UserPasswordTest")
                .fileSystemType("standard")
                .build());
    
            var userPasswordExampleMountDomain = new MountTarget("userPasswordExampleMountDomain", MountTargetArgs.builder()
                .vpcId(userPasswordExampleVpc.id())
                .networkType("Vpc")
                .accessGroupName(userPasswordExampleAccessGroup.accessGroupName())
                .vswitchId(userPasswordExampleVswitch.id())
                .fileSystemId(userPasswordExampleNas.id())
                .build());
    
            var userPasswordExampleSecurityGroup = new SecurityGroup("userPasswordExampleSecurityGroup", SecurityGroupArgs.builder()
                .vpcId(userPasswordExampleVpc.id())
                .securityGroupType("normal")
                .build());
    
            var userPasswordExampleAccessRule = new AccessRule("userPasswordExampleAccessRule", AccessRuleArgs.builder()
                .priority(1)
                .accessGroupName(userPasswordExampleAccessGroup.accessGroupName())
                .fileSystemType(userPasswordExampleNas.fileSystemType())
                .sourceCidrIp("10.0.0.0/8")
                .build());
    
            var userPasswordExampleCluster = new ClusterV2("userPasswordExampleCluster", ClusterV2Args.builder()
                .clusterCredentials(ClusterV2ClusterCredentialsArgs.builder()
                    .password("aliHPC123")
                    .build())
                .clusterVpcId(userPasswordExampleVpc.id())
                .clusterCategory("Standard")
                .clusterMode("Integrated")
                .securityGroupId(userPasswordExampleSecurityGroup.id())
                .clusterName("user-password-example-cluster")
                .deletionProtection(false)
                .sharedStorages(            
                    ClusterV2SharedStorageArgs.builder()
                        .mountDirectory("/home")
                        .nasDirectory("/")
                        .mountTargetDomain(userPasswordExampleMountDomain.mountTargetDomain())
                        .protocolType("NFS")
                        .fileSystemId(userPasswordExampleNas.id())
                        .mountOptions("-t nfs -o vers=3,nolock,proto=tcp,noresvport")
                        .build(),
                    ClusterV2SharedStorageArgs.builder()
                        .mountDirectory("/opt")
                        .nasDirectory("/")
                        .mountTargetDomain(userPasswordExampleMountDomain.mountTargetDomain())
                        .protocolType("NFS")
                        .fileSystemId(userPasswordExampleNas.id())
                        .mountOptions("-t nfs -o vers=3,nolock,proto=tcp,noresvport")
                        .build(),
                    ClusterV2SharedStorageArgs.builder()
                        .mountDirectory("/ehpcdata")
                        .nasDirectory("/")
                        .mountTargetDomain(userPasswordExampleMountDomain.mountTargetDomain())
                        .protocolType("NFS")
                        .fileSystemId(userPasswordExampleNas.id())
                        .mountOptions("-t nfs -o vers=3,nolock,proto=tcp,noresvport")
                        .build())
                .clusterVswitchId(userPasswordExampleVswitch.id())
                .manager(ClusterV2ManagerArgs.builder()
                    .managerNode(ClusterV2ManagerManagerNodeArgs.builder()
                        .systemDisk(ClusterV2ManagerManagerNodeSystemDiskArgs.builder()
                            .category("cloud_essd")
                            .size(40)
                            .level("PL0")
                            .build())
                        .enableHt(true)
                        .instanceChargeType("PostPaid")
                        .imageId("centos_7_6_x64_20G_alibase_20211130.vhd")
                        .instanceType("ecs.c6.xlarge")
                        .spotStrategy("NoSpot")
                        .build())
                    .scheduler(ClusterV2ManagerSchedulerArgs.builder()
                        .type("SLURM")
                        .version("22.05.8")
                        .build())
                    .dns(ClusterV2ManagerDnsArgs.builder()
                        .type("nis")
                        .version("1.0")
                        .build())
                    .directoryService(ClusterV2ManagerDirectoryServiceArgs.builder()
                        .type("nis")
                        .version("1.0")
                        .build())
                    .build())
                .build());
    
            var default_ = new User("default", UserArgs.builder()
                .group("users")
                .userName("passworduser1")
                .clusterId(userPasswordExampleCluster.id())
                .password("UserPass123")
                .build());
    
        }
    }
    
    configuration:
      name:
        type: string
        default: terraform-example
    resources:
      userPasswordExampleVpc:
        type: alicloud:vpc:Network
        name: user_password_example_vpc
        properties:
          isDefault: false
          cidrBlock: 10.0.0.0/8
          vpcName: user-password-example-vpc
      userPasswordExampleVswitch:
        type: alicloud:vpc:Switch
        name: user_password_example_vswitch
        properties:
          isDefault: false
          vpcId: ${userPasswordExampleVpc.id}
          zoneId: cn-hangzhou-k
          cidrBlock: 10.0.0.0/24
          vswitchName: user-password-example-vsw
      userPasswordExampleNas:
        type: alicloud:nas:FileSystem
        name: user_password_example_nas
        properties:
          description: user-password-example-nas
          storageType: Capacity
          nfsAcl:
            enabled: false
          zoneId: cn-hangzhou-k
          encryptType: '0'
          protocolType: NFS
          fileSystemType: standard
          recycleBin:
            status: Disable
            reservedDays: '7'
      userPasswordExampleAccessGroup:
        type: alicloud:nas:AccessGroup
        name: user_password_example_access_group
        properties:
          accessGroupType: Vpc
          description: user password example access group
          accessGroupName: UserPasswordTest
          fileSystemType: standard
      userPasswordExampleMountDomain:
        type: alicloud:nas:MountTarget
        name: user_password_example_mount_domain
        properties:
          vpcId: ${userPasswordExampleVpc.id}
          networkType: Vpc
          accessGroupName: ${userPasswordExampleAccessGroup.accessGroupName}
          vswitchId: ${userPasswordExampleVswitch.id}
          fileSystemId: ${userPasswordExampleNas.id}
      userPasswordExampleSecurityGroup:
        type: alicloud:ecs:SecurityGroup
        name: user_password_example_security_group
        properties:
          vpcId: ${userPasswordExampleVpc.id}
          securityGroupType: normal
      userPasswordExampleAccessRule:
        type: alicloud:nas:AccessRule
        name: user_password_example_access_rule
        properties:
          priority: '1'
          accessGroupName: ${userPasswordExampleAccessGroup.accessGroupName}
          fileSystemType: ${userPasswordExampleNas.fileSystemType}
          sourceCidrIp: 10.0.0.0/8
      userPasswordExampleCluster:
        type: alicloud:ehpc:ClusterV2
        name: user_password_example_cluster
        properties:
          clusterCredentials:
            password: aliHPC123
          clusterVpcId: ${userPasswordExampleVpc.id}
          clusterCategory: Standard
          clusterMode: Integrated
          securityGroupId: ${userPasswordExampleSecurityGroup.id}
          clusterName: user-password-example-cluster
          deletionProtection: false
          sharedStorages:
            - mountDirectory: /home
              nasDirectory: /
              mountTargetDomain: ${userPasswordExampleMountDomain.mountTargetDomain}
              protocolType: NFS
              fileSystemId: ${userPasswordExampleNas.id}
              mountOptions: -t nfs -o vers=3,nolock,proto=tcp,noresvport
            - mountDirectory: /opt
              nasDirectory: /
              mountTargetDomain: ${userPasswordExampleMountDomain.mountTargetDomain}
              protocolType: NFS
              fileSystemId: ${userPasswordExampleNas.id}
              mountOptions: -t nfs -o vers=3,nolock,proto=tcp,noresvport
            - mountDirectory: /ehpcdata
              nasDirectory: /
              mountTargetDomain: ${userPasswordExampleMountDomain.mountTargetDomain}
              protocolType: NFS
              fileSystemId: ${userPasswordExampleNas.id}
              mountOptions: -t nfs -o vers=3,nolock,proto=tcp,noresvport
          clusterVswitchId: ${userPasswordExampleVswitch.id}
          manager:
            managerNode:
              systemDisk:
                category: cloud_essd
                size: '40'
                level: PL0
              enableHt: true
              instanceChargeType: PostPaid
              imageId: centos_7_6_x64_20G_alibase_20211130.vhd
              instanceType: ecs.c6.xlarge
              spotStrategy: NoSpot
            scheduler:
              type: SLURM
              version: 22.05.8
            dns:
              type: nis
              version: '1.0'
            directoryService:
              type: nis
              version: '1.0'
      default:
        type: alicloud:ehpc:User
        properties:
          group: users
          userName: passworduser1
          clusterId: ${userPasswordExampleCluster.id}
          password: UserPass123
    
    pulumi {
      required_providers {
        alicloud = {
          source = "pulumi/alicloud"
        }
      }
    }
    
    resource "alicloud_vpc_network" "user_password_example_vpc" {
      is_default = false
      cidr_block = "10.0.0.0/8"
      vpc_name   = "user-password-example-vpc"
    }
    resource "alicloud_vpc_switch" "user_password_example_vswitch" {
      is_default   = false
      vpc_id       = alicloud_vpc_network.user_password_example_vpc.id
      zone_id      = "cn-hangzhou-k"
      cidr_block   = "10.0.0.0/24"
      vswitch_name = "user-password-example-vsw"
    }
    resource "alicloud_nas_filesystem" "user_password_example_nas" {
      description  = "user-password-example-nas"
      storage_type = "Capacity"
      nfs_acl = {
        enabled = false
      }
      zone_id          = "cn-hangzhou-k"
      encrypt_type     = "0"
      protocol_type    = "NFS"
      file_system_type = "standard"
      recycle_bin = {
        status        = "Disable"
        reserved_days = "7"
      }
    }
    resource "alicloud_nas_accessgroup" "user_password_example_access_group" {
      access_group_type = "Vpc"
      description       = "user password example access group"
      access_group_name = "UserPasswordTest"
      file_system_type  = "standard"
    }
    resource "alicloud_nas_mounttarget" "user_password_example_mount_domain" {
      vpc_id            = alicloud_vpc_network.user_password_example_vpc.id
      network_type      = "Vpc"
      access_group_name = alicloud_nas_accessgroup.user_password_example_access_group.access_group_name
      vswitch_id        = alicloud_vpc_switch.user_password_example_vswitch.id
      file_system_id    = alicloud_nas_filesystem.user_password_example_nas.id
    }
    resource "alicloud_ecs_securitygroup" "user_password_example_security_group" {
      vpc_id              = alicloud_vpc_network.user_password_example_vpc.id
      security_group_type = "normal"
    }
    resource "alicloud_nas_accessrule" "user_password_example_access_rule" {
      priority          = "1"
      access_group_name = alicloud_nas_accessgroup.user_password_example_access_group.access_group_name
      file_system_type  = alicloud_nas_filesystem.user_password_example_nas.file_system_type
      source_cidr_ip    = "10.0.0.0/8"
    }
    resource "alicloud_ehpc_clusterv2" "user_password_example_cluster" {
      cluster_credentials = {
        password = "aliHPC123"
      }
      cluster_vpc_id      = alicloud_vpc_network.user_password_example_vpc.id
      cluster_category    = "Standard"
      cluster_mode        = "Integrated"
      security_group_id   = alicloud_ecs_securitygroup.user_password_example_security_group.id
      cluster_name        = "user-password-example-cluster"
      deletion_protection = false
      shared_storages {
        mount_directory     = "/home"
        nas_directory       = "/"
        mount_target_domain = alicloud_nas_mounttarget.user_password_example_mount_domain.mount_target_domain
        protocol_type       = "NFS"
        file_system_id      = alicloud_nas_filesystem.user_password_example_nas.id
        mount_options       = "-t nfs -o vers=3,nolock,proto=tcp,noresvport"
      }
      shared_storages {
        mount_directory     = "/opt"
        nas_directory       = "/"
        mount_target_domain = alicloud_nas_mounttarget.user_password_example_mount_domain.mount_target_domain
        protocol_type       = "NFS"
        file_system_id      = alicloud_nas_filesystem.user_password_example_nas.id
        mount_options       = "-t nfs -o vers=3,nolock,proto=tcp,noresvport"
      }
      shared_storages {
        mount_directory     = "/ehpcdata"
        nas_directory       = "/"
        mount_target_domain = alicloud_nas_mounttarget.user_password_example_mount_domain.mount_target_domain
        protocol_type       = "NFS"
        file_system_id      = alicloud_nas_filesystem.user_password_example_nas.id
        mount_options       = "-t nfs -o vers=3,nolock,proto=tcp,noresvport"
      }
      cluster_vswitch_id = alicloud_vpc_switch.user_password_example_vswitch.id
      manager = {
        manager_node = {
          system_disk = {
            category = "cloud_essd"
            size     = "40"
            level    = "PL0"
          }
          enable_ht            = true
          instance_charge_type = "PostPaid"
          image_id             = "centos_7_6_x64_20G_alibase_20211130.vhd"
          instance_type        = "ecs.c6.xlarge"
          spot_strategy        = "NoSpot"
        }
        scheduler = {
          type    = "SLURM"
          version = "22.05.8"
        }
        dns = {
          type    = "nis"
          version = "1.0"
        }
        directory_service = {
          type    = "nis"
          version = "1.0"
        }
      }
    }
    resource "alicloud_ehpc_user" "default" {
      group      = "users"
      user_name  = "passworduser1"
      cluster_id = alicloud_ehpc_clusterv2.user_password_example_cluster.id
      password   = "UserPass123"
    }
    variable "name" {
      type    = string
      default = "terraform-example"
    }
    

    📚 Need more examples? VIEW MORE EXAMPLES

    Create User Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new User(name: string, args: UserArgs, opts?: CustomResourceOptions);
    @overload
    def User(resource_name: str,
             args: UserArgs,
             opts: Optional[ResourceOptions] = None)
    
    @overload
    def User(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             cluster_id: Optional[str] = None,
             group: Optional[str] = None,
             user_name: Optional[str] = None,
             key_pair_name: Optional[str] = None,
             password: Optional[str] = None)
    func NewUser(ctx *Context, name string, args UserArgs, opts ...ResourceOption) (*User, error)
    public User(string name, UserArgs args, CustomResourceOptions? opts = null)
    public User(String name, UserArgs args)
    public User(String name, UserArgs args, CustomResourceOptions options)
    
    type: alicloud:ehpc:User
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "alicloud_ehpc_user" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args UserArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args UserArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args UserArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args UserArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args UserArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var exampleuserResourceResourceFromEhpcuser = new AliCloud.Ehpc.User("exampleuserResourceResourceFromEhpcuser", new()
    {
        ClusterId = "string",
        Group = "string",
        UserName = "string",
        KeyPairName = "string",
        Password = "string",
    });
    
    example, err := ehpc.NewUser(ctx, "exampleuserResourceResourceFromEhpcuser", &ehpc.UserArgs{
    	ClusterId:   pulumi.String("string"),
    	Group:       pulumi.String("string"),
    	UserName:    pulumi.String("string"),
    	KeyPairName: pulumi.String("string"),
    	Password:    pulumi.String("string"),
    })
    
    resource "alicloud_ehpc_user" "exampleuserResourceResourceFromEhpcuser" {
      lifecycle {
        create_before_destroy = true
      }
      cluster_id    = "string"
      group         = "string"
      user_name     = "string"
      key_pair_name = "string"
      password      = "string"
    }
    
    var exampleuserResourceResourceFromEhpcuser = new com.pulumi.alicloud.ehpc.User("exampleuserResourceResourceFromEhpcuser", com.pulumi.alicloud.ehpc.UserArgs.builder()
        .clusterId("string")
        .group("string")
        .userName("string")
        .keyPairName("string")
        .password("string")
        .build());
    
    exampleuser_resource_resource_from_ehpcuser = alicloud.ehpc.User("exampleuserResourceResourceFromEhpcuser",
        cluster_id="string",
        group="string",
        user_name="string",
        key_pair_name="string",
        password="string")
    
    const exampleuserResourceResourceFromEhpcuser = new alicloud.ehpc.User("exampleuserResourceResourceFromEhpcuser", {
        clusterId: "string",
        group: "string",
        userName: "string",
        keyPairName: "string",
        password: "string",
    });
    
    type: alicloud:ehpc:User
    properties:
        clusterId: string
        group: string
        keyPairName: string
        password: string
        userName: string
    

    User Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The User resource accepts the following input properties:

    ClusterId string
    The cluster ID.
    Group string
    The user group. Valid values: users, wheel.
    UserName string
    The username.
    KeyPairName string

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    Password string

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    ClusterId string
    The cluster ID.
    Group string
    The user group. Valid values: users, wheel.
    UserName string
    The username.
    KeyPairName string

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    Password string

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    cluster_id string
    The cluster ID.
    group string
    The user group. Valid values: users, wheel.
    user_name string
    The username.
    key_pair_name string

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password string

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    clusterId String
    The cluster ID.
    group String
    The user group. Valid values: users, wheel.
    userName String
    The username.
    keyPairName String

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password String

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    clusterId string
    The cluster ID.
    group string
    The user group. Valid values: users, wheel.
    userName string
    The username.
    keyPairName string

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password string

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    cluster_id str
    The cluster ID.
    group str
    The user group. Valid values: users, wheel.
    user_name str
    The username.
    key_pair_name str

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password str

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    clusterId String
    The cluster ID.
    group String
    The user group. Valid values: users, wheel.
    userName String
    The username.
    keyPairName String

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password String

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the User resource produces the following output properties:

    GroupId string
    The user group ID.
    Id string
    The provider-assigned unique ID for this managed resource.
    UserId string
    The user ID.
    GroupId string
    The user group ID.
    Id string
    The provider-assigned unique ID for this managed resource.
    UserId string
    The user ID.
    group_id string
    The user group ID.
    id string
    The provider-assigned unique ID for this managed resource.
    user_id string
    The user ID.
    groupId String
    The user group ID.
    id String
    The provider-assigned unique ID for this managed resource.
    userId String
    The user ID.
    groupId string
    The user group ID.
    id string
    The provider-assigned unique ID for this managed resource.
    userId string
    The user ID.
    group_id str
    The user group ID.
    id str
    The provider-assigned unique ID for this managed resource.
    user_id str
    The user ID.
    groupId String
    The user group ID.
    id String
    The provider-assigned unique ID for this managed resource.
    userId String
    The user ID.

    Look up Existing User Resource

    Get an existing User resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: UserState, opts?: CustomResourceOptions): User
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            cluster_id: Optional[str] = None,
            group: Optional[str] = None,
            group_id: Optional[str] = None,
            key_pair_name: Optional[str] = None,
            password: Optional[str] = None,
            user_id: Optional[str] = None,
            user_name: Optional[str] = None) -> User
    func GetUser(ctx *Context, name string, id IDInput, state *UserState, opts ...ResourceOption) (*User, error)
    public static User Get(string name, Input<string> id, UserState? state, CustomResourceOptions? opts = null)
    public static User get(String name, Output<String> id, UserState state, CustomResourceOptions options)
    resources:  _:    type: alicloud:ehpc:User    get:      id: ${id}
    import {
      to = alicloud_ehpc_user.example
      id = "${id}"
    }
    
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    ClusterId string
    The cluster ID.
    Group string
    The user group. Valid values: users, wheel.
    GroupId string
    The user group ID.
    KeyPairName string

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    Password string

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    UserId string
    The user ID.
    UserName string
    The username.
    ClusterId string
    The cluster ID.
    Group string
    The user group. Valid values: users, wheel.
    GroupId string
    The user group ID.
    KeyPairName string

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    Password string

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    UserId string
    The user ID.
    UserName string
    The username.
    cluster_id string
    The cluster ID.
    group string
    The user group. Valid values: users, wheel.
    group_id string
    The user group ID.
    key_pair_name string

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password string

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    user_id string
    The user ID.
    user_name string
    The username.
    clusterId String
    The cluster ID.
    group String
    The user group. Valid values: users, wheel.
    groupId String
    The user group ID.
    keyPairName String

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password String

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    userId String
    The user ID.
    userName String
    The username.
    clusterId string
    The cluster ID.
    group string
    The user group. Valid values: users, wheel.
    groupId string
    The user group ID.
    keyPairName string

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password string

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    userId string
    The user ID.
    userName string
    The username.
    cluster_id str
    The cluster ID.
    group str
    The user group. Valid values: users, wheel.
    group_id str
    The user group ID.
    key_pair_name str

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password str

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    user_id str
    The user ID.
    user_name str
    The username.
    clusterId String
    The cluster ID.
    group String
    The user group. Valid values: users, wheel.
    groupId String
    The user group ID.
    keyPairName String

    The SSH public-key content. This field is accepted only for create and is never returned. This parameter is mutually exclusive with the password parameter. This parameter takes effect when the cluster authentication method is set to key (not recommended).

    NOTE: This parameter is immutable. Changing it after creation has no effect.

    password String

    The user password. This parameter is mutually exclusive with the keyPairName parameter. This parameter takes effect when the cluster authentication method is set to password (recommended).

    NOTE: This parameter is only evaluated during resource creation and update. Modifying it in isolation will not trigger any action.

    userId String
    The user ID.
    userName String
    The username.

    Import

    Ehpc User can be imported using the id, e.g.

    $ pulumi import alicloud:ehpc/user:User example <cluster_id>:<user_name>
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Alibaba Cloud pulumi/pulumi-alicloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the alicloud Terraform Provider.
    alicloud logo alicloud logo
    Viewing docs for Alibaba Cloud v3.108.0
    published on Thursday, Sep 17, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial