private async Task <string> SendBeat(CreateInstanceRequest request) { if (request == null) { return(string.Empty); } try { _logger.LogDebug($"发送心跳包:{request.serviceName},{request.ip}:{request.port}"); var beat = new InstanceBeat { serviceName = request.serviceName, ip = request.ip, port = request.port, weight = request.weight, cluster = string.Empty, metadata = request.Meta, scheduled = true }; return(await _client.InstanceBeat(new InstanceBeatRequest { namespaceId = request.namespaceId, serviceName = request.serviceName, groupName = request.groupName, ephemeral = request.ephemeral, beat = JsonConvert.SerializeObject(beat) })); } catch (Exception ex) { _logger.LogWarning($"心跳包发送异常:{ex.Message}"); return(string.Empty); } }
public async Task <ActionResult> CreateInstance([FromBody] CreateInstanceRequest request) { var resp = await(await factory.GetInstanceServiceClient()) .CreateInstanceAsync(new AcademyCloud.ResourceManagement.Protos.Instance.CreateInstanceRequest { Name = request.Name, ImageName = request.ImageName, FlavorName = request.FlavorName, Volume = request.Volume }); // add the resources usage to expenses await(await factory.GetExpensesInteropClientAsync()) .ChangeProjectUserResourcesAsync(new AcademyCloud.Expenses.Protos.Interop.ChangeProjectUserResourcesRequest { ResourcesDelta = new AcademyCloud.Expenses.Protos.Common.Resources { Cpu = resp.Flavor.Cpu, Memory = resp.Flavor.Memory, Storage = request.Volume, } }); return(Created(resp.InstanceId, resp.InstanceId)); }
/// <summary>Snippet for CreateInstanceAsync</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public async Task CreateInstanceRequestObjectAsync() { // Create client BigtableInstanceAdminClient bigtableInstanceAdminClient = await BigtableInstanceAdminClient.CreateAsync(); // Initialize request argument(s) CreateInstanceRequest request = new CreateInstanceRequest { ParentAsProjectName = ProjectName.FromProject("[PROJECT]"), InstanceId = "", Instance = new Instance(), Clusters = { { "", new Cluster() }, }, }; // Make the request Operation <Instance, CreateInstanceMetadata> response = await bigtableInstanceAdminClient.CreateInstanceAsync(request); // Poll until the returned long-running operation is complete Operation <Instance, CreateInstanceMetadata> completedResponse = await response.PollUntilCompletedAsync(); // Retrieve the operation result Instance result = completedResponse.Result; // Or get the name of the operation string operationName = response.Name; // This name can be stored, then the long-running operation retrieved later by name Operation <Instance, CreateInstanceMetadata> retrievedResponse = await bigtableInstanceAdminClient.PollOnceCreateInstanceAsync(operationName); // Check if the retrieved long-running operation has completed if (retrievedResponse.IsCompleted) { // If it has completed, then access the result Instance retrievedResult = retrievedResponse.Result; } }
/// <summary>Snippet for CreateInstance</summary> public void CreateInstanceRequestObject() { // Snippet: CreateInstance(CreateInstanceRequest, CallSettings) // Create client DataFusionClient dataFusionClient = DataFusionClient.Create(); // Initialize request argument(s) CreateInstanceRequest request = new CreateInstanceRequest { Parent = "", InstanceId = "", Instance = new Instance(), }; // Make the request Operation <Instance, OperationMetadata> response = dataFusionClient.CreateInstance(request); // Poll until the returned long-running operation is complete Operation <Instance, OperationMetadata> completedResponse = response.PollUntilCompleted(); // Retrieve the operation result Instance result = completedResponse.Result; // Or get the name of the operation string operationName = response.Name; // This name can be stored, then the long-running operation retrieved later by name Operation <Instance, OperationMetadata> retrievedResponse = dataFusionClient.PollOnceCreateInstance(operationName); // Check if the retrieved long-running operation has completed if (retrievedResponse.IsCompleted) { // If it has completed, then access the result Instance retrievedResult = retrievedResponse.Result; } // End snippet }
public void CreateNewInstanceFromRemote(ReceivedEvent received, CreateInstanceRequest request) { var response = _stitches.CreateInstances(request, null, false); if (request.ReceiptRequested) { _clusterSender.SendReceipt(response.IsSuccess, received.FromNetworkId, request.JobId, request.TaskId); } }
public override async Task Regist(IEnumerable <Assembly> assemblyList, ServiceAddress serverAddress) { foreach (var assembly in assemblyList) { var serviceName = assembly.ServiceName(); var meta = new Dictionary <string, string> { { KeyService, serverAddress.ToJson() }, { KeyMode, $"{Constants.Mode}" }, { KeyVersion, assembly.GetName().Version.ToString() } }; var request = new CreateInstanceRequest { serviceName = serviceName, namespaceId = _config.Tenant, groupName = _config.Group, clusterName = string.Empty, ip = serverAddress.IpAddress, port = serverAddress.Port, weight = serverAddress.Weight, Meta = meta, enabled = true, healthy = true, ephemeral = false }; try { var result = await _client.CreateInstance(request); if (result == "ok") { _services.Add(new RemoveInstanceRequest { namespaceId = request.namespaceId, serviceName = request.serviceName, groupName = request.groupName, clusterName = request.clusterName, ip = request.ip, port = request.port, ephemeral = request.ephemeral }); _logger.LogInformation($"服务注册成功 [{serviceName},{serverAddress}]"); //发送心跳包 _listenerHelper.AddServiceBeat(request, t => { }, 15); } else { throw new SpearException($"注册实例失败,{result}"); } } catch (Exception ex) { _logger.LogWarning( $"服务注册失败 [{serviceName},{serverAddress}]:{ex.Message}"); } } }
/// <summary> /// 创建缓存实例 /// </summary> public async Task <CreateInstanceResponse> CreateInstanceAsync(CreateInstanceRequest createInstanceRequest) { Dictionary <string, string> urlParam = new Dictionary <string, string>(); string urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/instances", urlParam); SdkRequest request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", createInstanceRequest); HttpResponseMessage response = await DoHttpRequestAsync("POST", request); return(JsonUtils.DeSerialize <CreateInstanceResponse>(response)); }
/// <summary> /// 创建文档数据库实例,包括集群实例、副本集实例、以及单节点实例。 /// </summary> public CreateInstanceResponse CreateInstance(CreateInstanceRequest createInstanceRequest) { Dictionary <string, string> urlParam = new Dictionary <string, string>(); string urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/instances", urlParam); SdkRequest request = HttpUtils.InitSdkRequest(urlPath, "application/json", createInstanceRequest); SdkResponse response = DoHttpRequest("POST", request); return(JsonUtils.DeSerialize <CreateInstanceResponse>(response)); }
public async Task <ActionResult> CreateInstance([FromBody] CreateInstanceRequest request) { if (request.BpmnProcessId == null && request.ProcessDefinitionKey == null) { return(BadRequest(new { error = "Either a bpmnProcessId or a processDefinitionKey must be given" })); } var result = await _daprClient.InvokeBindingAsync <CreateInstanceRequest, CreateInstanceResponse>( "command", Commands.CreateInstance, request); return(Ok(result)); }
public CreateInstanceResponse CreateNewInstances(CreateInstanceRequest arg) { // If we are creating the instances locally, redirect to the Stitches module if (arg.LocalOnly) { var localResponse = _stitches.CreateInstances(arg, null, false); return(new CreateInstanceResponse(localResponse)); } // Otherwise we're distributing. First, get the recipient nodes. // TODO: A better algorithm for selecting nodes. Add instances to nodes with the lowest number of instances first. var nodes = _data.GetAll <NodeStatus>() .Where(ns => ns.RunningModules.Contains(ModuleNames.Stitches)) .ToList(); var selectedNodes = new List <NodeStatus>(); for (int i = 0; i < arg.NumberOfInstances; i++) { // Do some scoring, to select the nodes with the most capacity var node = nodes[i % nodes.Count]; selectedNodes.Add(node); } // Create a job, and start dispatching commands var job = _jobManager.CreateJob("Command=CreateStitchInstance"); foreach (var node in selectedNodes) { var task = job.CreateSubtask(CommandType.CreateStitchInstance, node.Id, node.Id); var payload = new CreateInstanceRequest { GroupName = arg.GroupName, Name = arg.Name, NumberOfInstances = 1, JobId = job.Id, TaskId = task.Id }; bool isRemote = node.Id != _core.NodeId; var response = _stitches.CreateInstances(payload, node.NetworkNodeId, isRemote); if (!isRemote && response != null) { job.MarkTaskComplete(task.Id, response.IsSuccess); } } _jobManager.Save(job); return(new CreateInstanceResponse { JobId = job.Id, IsSuccess = true }); }
public LocalCreateInstanceResponse CreateInstances(CreateInstanceRequest request, string networkNodeId, bool remote) { if (remote) { var message = new ClusterMessageBuilder() .FromNode() .ToNode(networkNodeId) .WithObjectPayload(request) .Build(); _messageBus.Publish(ClusterMessage.SendEventName, message); return(null); } return(_messageBus.Request <LocalCreateInstanceRequest, LocalCreateInstanceResponse>(request)); }
/// <summary> /// 创建指定规格的ES集群实例 /// </summary> /// <param name="req"><see cref="CreateInstanceRequest"/></param> /// <returns><see cref="CreateInstanceResponse"/></returns> public CreateInstanceResponse CreateInstanceSync(CreateInstanceRequest req) { JsonResponseModel <CreateInstanceResponse> rsp = null; try { var strResp = this.InternalRequestSync(req, "CreateInstance"); rsp = JsonConvert.DeserializeObject <JsonResponseModel <CreateInstanceResponse> >(strResp); } catch (JsonSerializationException e) { throw new TencentCloudSDKException(e.Message); } return(rsp.Response); }
private Boolean ProcessedRequest(CreateInstanceRequest aCreateInstance, Dictionary <String, Object> aDictionary) { Boolean result = false; try { IRequest r = aCreateInstance(aDictionary); r.PrepareMessage(); r.Request(Response); FGlobalResult = r.ExecuteAfter(); result = true; } catch (Exception ex) { ExceptionMessage.ShowError(ex); result = false; } return(result); }
/// <summary>Snippet for CreateInstanceAsync</summary> public async Task CreateInstanceAsync_RequestObject() { // Snippet: CreateInstanceAsync(CreateInstanceRequest,CallSettings) // Create client CloudRedisClient cloudRedisClient = await CloudRedisClient.CreateAsync(); // Initialize request argument(s) CreateInstanceRequest request = new CreateInstanceRequest { ParentAsLocationName = new LocationName("[PROJECT]", "[LOCATION]"), InstanceId = "test_instance", Instance = new Instance { Tier = Instance.Types.Tier.Basic, MemorySizeGb = 1, }, }; // Make the request Operation <Instance, OperationMetadata> response = await cloudRedisClient.CreateInstanceAsync(request); // Poll until the returned long-running operation is complete Operation <Instance, OperationMetadata> completedResponse = await response.PollUntilCompletedAsync(); // Retrieve the operation result Instance result = completedResponse.Result; // Or get the name of the operation string operationName = response.Name; // This name can be stored, then the long-running operation retrieved later by name Operation <Instance, OperationMetadata> retrievedResponse = await cloudRedisClient.PollOnceCreateInstanceAsync(operationName); // Check if the retrieved long-running operation has completed if (retrievedResponse.IsCompleted) { // If it has completed, then access the result Instance retrievedResult = retrievedResponse.Result; } // End snippet }
/// <summary> 添加心跳包发送器 </summary> /// <param name="request"></param> /// <param name="callback"></param> /// <param name="interval">间隔(秒,默认:5)</param> /// <returns></returns> public string AddServiceBeat(CreateInstanceRequest request, Action <string> callback, int interval = 5) { var key = JsonConvert.SerializeObject(request).Md5(); if (_listeners.TryGetValue(key, out var listener)) { listener.Callbacks.Add(callback); return(key); } var timer = new Timer(async sender => await ConfigBeat(sender), new object[] { key, request, interval }, TimeSpan.FromSeconds(interval), Timeout.InfiniteTimeSpan); listener = new NacosListener(timer) { Callbacks = new List <Action <string> > { callback } }; _listeners.TryAdd(key, listener); return(key); }
/// <summary>Snippet for CreateInstanceAsync</summary> public async Task CreateInstanceAsync_RequestObject() { // Snippet: CreateInstanceAsync(CreateInstanceRequest,CallSettings) // Create client InstanceAdminClient instanceAdminClient = await InstanceAdminClient.CreateAsync(); // Initialize request argument(s) CreateInstanceRequest request = new CreateInstanceRequest { ParentAsProjectName = new ProjectName("[PROJECT]"), InstanceIdAsInstanceName = new InstanceName("[PROJECT]", "[INSTANCE]"), Instance = new Instance(), }; // Make the request Operation <Instance, CreateInstanceMetadata> response = await instanceAdminClient.CreateInstanceAsync(request); // Poll until the returned long-running operation is complete Operation <Instance, CreateInstanceMetadata> completedResponse = await response.PollUntilCompletedAsync(); // Retrieve the operation result Instance result = completedResponse.Result; // Or get the name of the operation string operationName = response.Name; // This name can be stored, then the long-running operation retrieved later by name Operation <Instance, CreateInstanceMetadata> retrievedResponse = await instanceAdminClient.PollOnceCreateInstanceAsync(operationName); // Check if the retrieved long-running operation has completed if (retrievedResponse.IsCompleted) { // If it has completed, then access the result Instance retrievedResult = retrievedResponse.Result; } // End snippet }
public void TestCreateInstance() { MongodbClient mongodbClient = GetMongodbClient(); CreateInstanceRequest request = new CreateInstanceRequest(); request.RegionId = "cn-north-1"; DBInstanceSpec dbInstanceSpec = new DBInstanceSpec(); dbInstanceSpec.InstanceClass = "mongo.s1.small"; dbInstanceSpec.InstanceStorageGB = 10; dbInstanceSpec.MultiAZ = false; dbInstanceSpec.AzId = new List <string>() { "cn-north-1a", "cn-north-1a", "cn-north-1a" }; dbInstanceSpec.VpcId = "vpc-zo33sfjnbo"; dbInstanceSpec.SubnetId = "subnet-j0yka3pkcu"; dbInstanceSpec.Password = "******"; dbInstanceSpec.InstanceName = "dotnetsdktest"; request.InstanceSpec = dbInstanceSpec; var response = mongodbClient.CreateInstance(request); _output.WriteLine(JsonConvert.SerializeObject(response)); }
/// <summary>Snippet for CreateInstanceAsync</summary> public async Task CreateInstanceRequestObjectAsync() { // Snippet: CreateInstanceAsync(CreateInstanceRequest, CallSettings) // Additional: CreateInstanceAsync(CreateInstanceRequest, CancellationToken) // Create client DataFusionClient dataFusionClient = await DataFusionClient.CreateAsync(); // Initialize request argument(s) CreateInstanceRequest request = new CreateInstanceRequest { ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"), InstanceId = "", Instance = new Instance(), }; // Make the request Operation <Instance, OperationMetadata> response = await dataFusionClient.CreateInstanceAsync(request); // Poll until the returned long-running operation is complete Operation <Instance, OperationMetadata> completedResponse = await response.PollUntilCompletedAsync(); // Retrieve the operation result Instance result = completedResponse.Result; // Or get the name of the operation string operationName = response.Name; // This name can be stored, then the long-running operation retrieved later by name Operation <Instance, OperationMetadata> retrievedResponse = await dataFusionClient.PollOnceCreateInstanceAsync(operationName); // Check if the retrieved long-running operation has completed if (retrievedResponse.IsCompleted) { // If it has completed, then access the result Instance retrievedResult = retrievedResponse.Result; } // End snippet }
private static void CreateDcsInstance(DcsClient dcsClient) { List <String> azCodes = new List <string>(); azCodes.Add("cn-north-7b"); List <int?> backupAt = new List <int?>(); backupAt.Add(1); backupAt.Add(2); backupAt.Add(3); backupAt.Add(4); backupAt.Add(5); backupAt.Add(6); backupAt.Add(7); var backupPlan = new BackupPlan() { BackupAt = backupAt, BeginAt = "16:00-17:00", PeriodType = "weekly" }; var backupPolicy = new BackupPolicy() { BackupType = "auto", PeriodicalBackupPlan = backupPlan, SaveDays = 7 }; var createInstanceRequest = new CreateInstanceRequest() { Body = new CreateInstanceBody() { Capacity = 2, Name = "dcs_create_instance_test", Engine = "Redis", EngineVersion = "4.0", NoPasswordAccess = true, VpcId = "5e37b3be-950a-48e1-b498-65b63d336481", SubnetId = "a4112635-3ec0-471c-95c3-5cf49b9533af", SpecCode = "redis.ha.au1.large.2", AzCodes = azCodes, InstanceBackupPolicy = backupPolicy } }; try { var response = dcsClient.CreateInstance(createInstanceRequest); Console.WriteLine(response.GetHttpBody()); } catch (RequestTimeoutException requestTimeoutException) { Console.WriteLine(requestTimeoutException.ErrorMessage); } catch (ServiceResponseException clientRequestException) { Console.WriteLine(clientRequestException.HttpStatusCode); Console.WriteLine(clientRequestException.ErrorCode); Console.WriteLine(clientRequestException.ErrorMsg); } catch (ConnectionException connectionException) { Console.WriteLine(connectionException.ErrorMessage); } }
public static object CreateDevInstance(string displayName) { // [START bigtable_create_bigtableInstanceAdminClient] BigtableInstanceAdminClient bigtableInstanceAdminClient = BigtableInstanceAdminClient.Create(); // [END bigtable_create_bigtableInstanceAdminClient] Console.WriteLine("Creating a DEVELOPMENT instance"); // [START bigtable_create_dev_instance] // Creates a DEVELOPMENT Instance with "<intanceId>-dev" instance id // with cluster id "hdd-cluster" and location us-east1-b. // Cluster node count should not be set while creating DEVELOPMENT instance. displayName += " Dev"; // display name is for display purposes only, it doesn't have to equal to instanceId and can be amended after instance is created. string instanceId = Regex.Replace(displayName, @"[^A-Za-z0-9_\.~]+", "-").ToLower(); // Please refer to the link below for the full list of availabel locations: // https://cloud.google.com/bigtable/docs/locations string zone = "us-east1-b"; // The instance to create. Instance myInstance = new Instance { DisplayName = displayName, // You can choose DEVELOPMENT or PRODUCTION type here. // If not set, will default to PRODUCTION type. // Instance type can be upgraded from DEVELOPMENT to PRODUCTION but can not be dowgraded after instance is created. Type = Instance.Types.Type.Development, Labels = { { "dev-label", "dev-label" } } }; // The first cluster to be created within the instance. Cluster myCluster = new Cluster { // You can choose SSD or HDD storage type here: StorageType.Ssd or StorageType.Hdd. // Cluster storage type can not be changed after instance is created. // If not set will default to SSD type. DefaultStorageType = StorageType.Hdd, LocationAsLocationName = new LocationName(projectId, zone), }; // Initialize request argument(s). CreateInstanceRequest request = new CreateInstanceRequest { ParentAsProjectName = new ProjectName(projectId), Instance = myInstance, InstanceId = instanceId, // Must specify at lease one cluster. // Only PRODUCTION type instance can be created with more than one cluster. Clusters = { { "hdd-cluster", myCluster } } }; try { // Make a request. Operation <Instance, CreateInstanceMetadata> createInstanceResponse = bigtableInstanceAdminClient.CreateInstance(request); Console.WriteLine("Waiting for operation to complete..."); // Poll until the returned long-running operation is complete Operation <Instance, CreateInstanceMetadata> completedResponse = createInstanceResponse.PollUntilCompleted(); // [END bigtable_create_dev_instance] Console.WriteLine( $"Instance: {displayName} {(completedResponse.IsCompleted ? "was successfully created in " : "failed to create in ")}{projectId} project"); PrintInstanceInfo(completedResponse.Result); // [START bigtable_create_dev_instance] } catch (Exception ex) { Console.WriteLine($"Exception while creating {displayName} instance"); Console.WriteLine(ex.Message); } // [END bigtable_create_dev_instance] return(0); }
/// <summary> /// 创建实例 /// </summary> /// <param name="request">请求参数信息</param> /// <returns>请求结果信息</returns> public async Task <CreateInstanceResponse> CreateInstance(CreateInstanceRequest request) { return(await new CreateInstanceExecutor().Client(this).Execute <CreateInstanceResponse, CreateInstanceResult, CreateInstanceRequest>(request).ConfigureAwait(false)); }
/// <summary> /// 创建实例 /// </summary> /// <param name="request">请求参数信息</param> /// <returns>请求结果信息</returns> public CreateInstanceResponse CreateInstance(CreateInstanceRequest request) { return(new CreateInstanceExecutor().Client(this).Execute <CreateInstanceResponse, CreateInstanceResult, CreateInstanceRequest>(request)); }
public static object CreateProdInstance(string displayName) { BigtableInstanceAdminClient bigtableInstanceAdminClient = BigtableInstanceAdminClient.Create(); Console.WriteLine("Creating a PRODUCTION instance"); // [START bigtable_create_prod_instance] // Creates a production instance with "<intanceId>-prod" instance ID, // with cluster ID "ssd-cluster1", 3 nodes and location us-east1-b. displayName += " Prod"; // Display name is for display purposes only. It doesn't have to equal instanceId and can be amended after instance is created. string instanceId = Regex.Replace(displayName, @"[^A-Za-z0-9_\.~]+", "-").ToLower(); // Please refer to the link below for the full list of available locations: // https://cloud.google.com/bigtable/docs/locations string zone1 = "us-east1-b"; // The instance to create. Instance myInstance = new Instance { DisplayName = displayName, // You can choose DEVELOPMENT or PRODUCTION type here. // If not set, will default to PRODUCTION type. // Instance type can be upgraded from DEVELOPMENT to PRODUCTION but cannot be dowgraded after the instance is created. Type = Instance.Types.Type.Production, Labels = { { "prod-label", "prod-label" } } }; // The first cluster to be created within the instance. Cluster myCluster1 = new Cluster { // You can choose SSD or HDD storage type here: StorageType.Ssd or StorageType.Hdd. // Cluster storage type can not be changed after the instance is created. // If not set will default to SSD type. DefaultStorageType = StorageType.Ssd, LocationAsLocationName = new LocationName(projectId, zone1), // Serve Nodes count can only be set if PRODUCTION type instance is being created. // Minimum count of 3 serve nodes must be specified. // Serve Nodes count can be increased and decreased after an instance is created. ServeNodes = 3 }; // Initialize request argument(s). CreateInstanceRequest request = new CreateInstanceRequest { ParentAsProjectName = new ProjectName(projectId), Instance = myInstance, InstanceId = instanceId, // Must specify at lease one cluster. // Only PRODUCTION type instance can be created with more than one cluster. // Currently all clusters must have the same storage type. // Clusters must be set to different locations. Clusters = { { "ssd-cluster1", myCluster1 } } }; try { // Make a request. Operation <Instance, CreateInstanceMetadata> createInstanceResponse = bigtableInstanceAdminClient.CreateInstance(request); Console.WriteLine("Waiting for operation to complete..."); // Poll until the returned long-running operation is complete Operation <Instance, CreateInstanceMetadata> completedResponse = createInstanceResponse.PollUntilCompleted(); // [END bigtable_create_prod_instance] Console.WriteLine( $"Instance: {displayName} {(completedResponse.IsCompleted ? "was successfully created in " : "failed to create in ")}{projectId} project"); PrintInstanceInfo(completedResponse.Result); // [START bigtable_create_prod_instance] } catch (Exception ex) { Console.WriteLine($"Exception while creating {displayName} instance"); Console.WriteLine(ex.Message); } // [END bigtable_create_prod_instance] return(0); }
/*********************************************Flavors End********************************************************/ /*******************************************Instances Start******************************************************/ /// <summary> /// 创建实例 /// </summary> public static void CreateInstance(DdsClient client) { CreateInstanceRequest req = new CreateInstanceRequest { /*Body = new CreateInstanceRequestBody * { * Name = "dds-test", * Datastore = new CreateInstanceDatastoreOption() * { * Type = "DDS-Community", * Version = "3.4", * StorageEngine = "wiredTiger" * }, * Region = "cn-guangzhou-1", * AvailabilityZone = "az2pod1gz", * VpcId = "50e61d1e-ac98-4f92-9505-bb1bfb01c84b", * SubnetId = "f5cfcd56-63ac-4dab-ae66-f7eb4cdd03b6", * SecurityGroupId = "f64c9fe9-2dbc-47ea-81cc-bea1c29e2c62", * Password = "******", * Mode = "Sharding", * Flavor = new List<CreateInstanceFlavorOption> * { * new CreateInstanceFlavorOption() * { * Type = "mongos", * Num = 2, * SpecCode = "dds.mongodb.s6.medium.4.mongos" * }, * new CreateInstanceFlavorOption() * { * Type = "shard", * Num = 2, * Storage = "ULTRAHIGH", * Size = 10, * SpecCode = "dds.mongodb.s6.medium.4.shard" * }, * new CreateInstanceFlavorOption() * { * Type = "config", * Num = 1, * Storage = "ULTRAHIGH", * Size = 20, * SpecCode = "dds.mongodb.s6.large.2.config" * } * }, * BackupStrategy = new CreateInstanceBackupStrategyOption() * { * StartTime = "08:15-09:15", * KeepDays = "8" * }, * Storage = new CreateInstanceStorageOption() * { * Size = 2 * }, * SslOption = "1" * }*/ Body = new CreateInstanceRequestBody { Name = "dds-test1", Datastore = new CreateInstanceDatastoreOption() { Type = CreateInstanceDatastoreOption.TypeEnum.DDS_COMMUNITY, Version = "3.4", StorageEngine = CreateInstanceDatastoreOption.StorageEngineEnum.WIREDTIGER }, Region = "cn-guangzhou-1", AvailabilityZone = "az2pod1gz", VpcId = "50e61d1e-ac98-4f92-9505-bb1bfb01c84b", SubnetId = "f5cfcd56-63ac-4dab-ae66-f7eb4cdd03b6", SecurityGroupId = "f64c9fe9-2dbc-47ea-81cc-bea1c29e2c62", Password = "******", Mode = "Single", Flavor = new List <CreateInstanceFlavorOption> { new CreateInstanceFlavorOption { Type = CreateInstanceFlavorOption.TypeEnum.SINGLE, Num = 1, Size = 10, SpecCode = "dds.mongodb.s6.medium.4.single" }, }, BackupStrategy = new CreateInstanceBackupStrategyOption() { StartTime = "08:15-09:15", KeepDays = "8" } } }; try { CreateInstanceResponse resp = client.CreateInstance(req); Console.WriteLine(resp.Id); Console.WriteLine(resp.Name); // InstanceStatus means status in response body Console.WriteLine(resp.Status); Console.WriteLine("Create Instance Success!"); } catch (RequestTimeoutException requestTimeoutException) { Console.WriteLine(requestTimeoutException.ErrorMessage); } catch (ServiceResponseException clientRequestException) { Console.WriteLine(clientRequestException.HttpStatusCode); Console.WriteLine(clientRequestException.ErrorCode); Console.WriteLine(clientRequestException.ErrorMsg); } catch (ConnectionException connectionException) { Console.WriteLine(connectionException.ErrorMessage); } }