using Tea; using AlibabaCloud.SDK.Ecs20140526.Models; namespace molilian.core { public partial class AliyunPlus { public DescribeNetworkInterfaceAttributeResponse DescribeNetworkInterfaceAttribute(string region, string networkInterfaceId) { AlibabaCloud.OpenApiClient.Models.Config config = new() { AccessKeyId = _app_key, AccessKeySecret = _app_secret, Endpoint = $"ecs.{region}.aliyuncs.com" }; AlibabaCloud.SDK.Ecs20140526.Client client = new(config); DescribeNetworkInterfaceAttributeRequest describeNetworkInterfaceAttributeRequest = new() { RegionId = region, NetworkInterfaceId = networkInterfaceId, }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new(); try { var response = client.DescribeNetworkInterfaceAttributeWithOptions(describeNetworkInterfaceAttributeRequest, runtime); return response; } catch (TeaException error) { // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } catch (Exception _error) { TeaException error = new TeaException(new Dictionary { { "message", _error.Message } }); // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } return null; } /// /// 可以指定ResourceGroupId、VSwitchId、InstanceId等参数,查询一个或多个弹性网卡(ENI)的详细信息 /// /// /// /// /// public DescribeNetworkInterfacesResponse DescribeNetworkInterfaces(string region, string instanceId) { AlibabaCloud.OpenApiClient.Models.Config config = new() { AccessKeyId = _app_key, AccessKeySecret = _app_secret, Endpoint = $"ecs.{region}.aliyuncs.com" }; AlibabaCloud.SDK.Ecs20140526.Client client = new(config); DescribeNetworkInterfacesRequest describeNetworkInterfacesRequest = new() { MaxResults = 500, RegionId = region, InstanceId = instanceId, }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new(); try { var response = client.DescribeNetworkInterfacesWithOptions(describeNetworkInterfacesRequest, runtime); return response; } catch (TeaException error) { // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } catch (Exception _error) { TeaException error = new TeaException(new Dictionary { { "message", _error.Message } }); // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } return null; } /// /// 为一块弹性网卡分配一个或多个辅助私网IP地址。可以为网卡指定在所属交换机(vSwitch)的空闲私网IP地址,或者通过指定私网地址数量自动分配私网IP地址 /// /// /// /// /// public AssignPrivateIpAddressesResponse AssignPrivateIpAddresses(string region, string networkInterfaceId, int count) { AlibabaCloud.OpenApiClient.Models.Config config = new() { AccessKeyId = _app_key, AccessKeySecret = _app_secret, Endpoint = $"ecs.{region}.aliyuncs.com" }; AlibabaCloud.SDK.Ecs20140526.Client client = new(config); AssignPrivateIpAddressesRequest assignPrivateIpAddressesRequest = new() { RegionId = region, NetworkInterfaceId = networkInterfaceId, SecondaryPrivateIpAddressCount = count, }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new(); try { var response = client.AssignPrivateIpAddressesWithOptions(assignPrivateIpAddressesRequest, runtime); return response; } catch (TeaException error) { // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } catch (Exception _error) { TeaException error = new TeaException(new Dictionary { { "message", _error.Message } }); // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } return null; } /// /// 从一块弹性网卡删除一个或多个辅助私有IP地址 /// /// /// /// /// public UnassignPrivateIpAddressesResponse UnassignPrivateIpAddresses(string region, string networkInterfaceId, params string[] privateIpAddress) { AlibabaCloud.OpenApiClient.Models.Config config = new() { AccessKeyId = _app_key, AccessKeySecret = _app_secret, Endpoint = $"ecs.{region}.aliyuncs.com" }; AlibabaCloud.SDK.Ecs20140526.Client client = new(config); UnassignPrivateIpAddressesRequest unassignPrivateIpAddressesRequest = new() { RegionId = region, NetworkInterfaceId = networkInterfaceId, PrivateIpAddress = privateIpAddress.ToList(), }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new(); try { var response = client.UnassignPrivateIpAddressesWithOptions(unassignPrivateIpAddressesRequest, runtime); return response; } catch (TeaException error) { // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } catch (Exception _error) { TeaException error = new TeaException(new Dictionary { { "message", _error.Message } }); // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } return null; } /// /// 本接口用于查询一台指定ECS实例的属性信息 /// /// /// /// public DescribeInstanceAttributeResponse DescribeInstanceAttribute(string region, string instanceId) { AlibabaCloud.OpenApiClient.Models.Config config = new() { AccessKeyId = _app_key, AccessKeySecret = _app_secret, Endpoint = $"ecs.{region}.aliyuncs.com" }; AlibabaCloud.SDK.Ecs20140526.Client client = new(config); DescribeInstanceAttributeRequest describeInstanceAttributeRequest = new() { InstanceId = instanceId }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new(); try { var response = client.DescribeInstanceAttributeWithOptions(describeInstanceAttributeRequest, runtime); return response; } catch (TeaException error) { // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } catch (Exception _error) { TeaException error = new TeaException(new Dictionary { { "message", _error.Message } }); // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } return null; /* */ } /// /// 创建一张弹性网卡(ENI),支持指定主私网IP地址 /// /// /// /// public CreateNetworkInterfaceResponse CreateNetworkInterface(string region, string vswitchId, List securityGroupId) { AlibabaCloud.OpenApiClient.Models.Config config = new() { AccessKeyId = _app_key, AccessKeySecret = _app_secret, Endpoint = $"ecs.{region}.aliyuncs.com" }; AlibabaCloud.SDK.Ecs20140526.Client client = new(config); CreateNetworkInterfaceRequest createNetworkInterfaceRequest = new() { RegionId = region, VSwitchId = vswitchId, SecurityGroupIds = securityGroupId }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new(); try { var response = client.CreateNetworkInterfaceWithOptions(createNetworkInterfaceRequest, runtime); return response; } catch (TeaException error) { // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } catch (Exception _error) { TeaException error = new TeaException(new Dictionary { { "message", _error.Message } }); // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } return null; /* */ } /// /// 附加一个弹性网卡(ENI)到一台专有网络VPC类型ECS实例上 /// /// /// /// /// public AttachNetworkInterfaceResponse AttachNetworkInterface(string region, string instanceId, string networkInterfaceId) { AlibabaCloud.OpenApiClient.Models.Config config = new() { AccessKeyId = _app_key, AccessKeySecret = _app_secret, Endpoint = $"ecs.{region}.aliyuncs.com" }; AlibabaCloud.SDK.Ecs20140526.Client client = new(config); AttachNetworkInterfaceRequest AttachNetworkInterfaceRequest = new() { RegionId = region, NetworkInterfaceId = networkInterfaceId, InstanceId = instanceId }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new(); try { var response = client.AttachNetworkInterfaceWithOptions(AttachNetworkInterfaceRequest, runtime); return response; } catch (TeaException error) { // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); throw; } catch (Exception _error) { TeaException error = new TeaException(new Dictionary { { "message", _error.Message } }); // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); throw; } return null; /* */ } /// /// 查询实例的详细信息列表 /// /// /// public DescribeInstancesResponse DescribeInstances(string region) { AlibabaCloud.OpenApiClient.Models.Config config = new() { AccessKeyId = _app_key, AccessKeySecret = _app_secret, Endpoint = $"ecs.{region}.aliyuncs.com" }; AlibabaCloud.SDK.Ecs20140526.Client client = new(config); DescribeInstancesRequest describeInstancesRequest = new() { MaxResults = 100, RegionId = region, }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new(); try { var response = client.DescribeInstancesWithOptions(describeInstancesRequest, runtime); return response; } catch (TeaException error) { // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } catch (Exception _error) { TeaException error = new TeaException(new Dictionary { { "message", _error.Message } }); // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } return null; /* { "Instances": { "Instance": [ { "ResourceGroupId": "", "Memory": 4096, "InstanceChargeType": "PrePaid", "Cpu": 2, "OSName": "Alibaba Cloud Linux 3.2104 LTS 64位", "InstanceNetworkType": "vpc", "InnerIpAddress": { "IpAddress": [] }, "ExpiredTime": "2025-04-09T16:00Z", "ImageId": "aliyun_3_x64_20G_alibase_20240819.vhd", "EipAddress": { "Bandwidth": 200, "AllocationId": "eip-2ze092o8df3jkykhjt5uw", "IpAddress": "47.93.249.227", "IsSupportUnassociate": true, "InternetChargeType": "PayByTraffic" }, "ImageOptions": {}, "HostName": "iZ2ze58hz63abqwi97eql5Z", "VlanId": "", "Status": "Running", "HibernationOptions": { "Configured": false }, "MetadataOptions": { "HttpTokens": "", "HttpEndpoint": "" }, "InstanceId": "i-2ze58hz63abqwi97eql5", "StoppedMode": "Not-applicable", "CpuOptions": { "ThreadsPerCore": 2, "Numa": "ON", "CoreCount": 1 }, "StartTime": "2024-11-11T18:55Z", "PrivateDnsNameOptions": {}, "DeletionProtection": false, "SecurityGroupIds": { "SecurityGroupId": [ "sg-2ze3ks3fd85brhe9c48x" ] }, "VpcAttributes": { "PrivateIpAddress": { "IpAddress": [ "172.26.246.235" ] }, "VpcId": "vpc-2zef23dd2ah5byvaampoh", "VSwitchId": "vsw-2ze1l2p0nwulsib3baj22", "NatIpAddress": "" }, "InternetChargeType": "", "InstanceName": "iZ2ze58hz63abqwi97eql5Z", "DeploymentSetId": "", "InternetMaxBandwidthOut": 0, "SerialNumber": "a784fa00-704d-4061-958d-956e60ec37b6", "OSType": "linux", "CreationTime": "2024-04-09T04:28Z", "AutoReleaseTime": "", "Description": "", "InstanceTypeFamily": "ecs.u1", "DedicatedInstanceAttribute": { "Tenancy": "", "Affinity": "" }, "PublicIpAddress": { "IpAddress": [] }, "GPUSpec": "", "NetworkInterfaces": { "NetworkInterface": [ { "Type": "Primary", "PrimaryIpAddress": "172.26.246.235", "MacAddress": "00:16:3e:37:f1:5e", "NetworkInterfaceId": "eni-2ze3ks3fd85brff1j4av", "PrivateIpSets": { "PrivateIpSet": [ { "PrivateIpAddress": "172.26.246.235", "Primary": true } ] } }, { "Type": "Secondary", "PrimaryIpAddress": "172.26.246.236", "MacAddress": "00:16:3e:3b:8e:f9", "NetworkInterfaceId": "eni-2ze2bgtgn8187kti5xlk", "PrivateIpSets": { "PrivateIpSet": [ { "PrivateIpAddress": "172.26.246.236", "Primary": true } ] } } ] }, "SpotPriceLimit": 0, "DeviceAvailable": true, "SaleCycle": "", "InstanceType": "ecs.u1-c1m2.large", "SpotStrategy": "NoSpot", "OSNameEn": "Alibaba Cloud Linux 3.2104 LTS 64 bit", "IoOptimized": true, "ZoneId": "cn-beijing-g", "ClusterId": "", "EcsCapacityReservationAttr": { "CapacityReservationPreference": "", "CapacityReservationId": "" }, "DedicatedHostAttribute": { "DedicatedHostId": "", "DedicatedHostName": "", "DedicatedHostClusterId": "" }, "GPUAmount": 0, "OperationLocks": { "LockReason": [] }, "InternetMaxBandwidthIn": 100, "Recyclable": false, "RegionId": "cn-beijing", "CreditSpecification": "" } ] }, "TotalCount": 1, "NextToken": "", "PageSize": 10, "RequestId": "EE630391-023A-511F-8368-09B48CA876CA", "PageNumber": 1 } */ } /// /// 查询一个或多个弹性网卡(ENI)的详细信息 /// /// /// public DescribeNetworkInterfacesResponse DescribeNetworkInterfaces(string region = "cn-beijing") { AlibabaCloud.OpenApiClient.Models.Config config = new() { AccessKeyId = _app_key, AccessKeySecret = _app_secret, Endpoint = $"ecs.{region}.aliyuncs.com" }; AlibabaCloud.SDK.Ecs20140526.Client client = new(config); DescribeNetworkInterfacesRequest describeNetworkInterfacesRequest = new() { MaxResults = 500, RegionId = region, }; AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions(); try { // 复制代码运行请自行打印 API 的返回值 var response = client.DescribeNetworkInterfacesWithOptions(describeNetworkInterfacesRequest, runtime); return response; } catch (Exception _error) { TeaException error = new TeaException(new Dictionary { { "message", _error.Message } }); // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 // 错误 message Console.WriteLine(error.Message); // 诊断地址 Console.WriteLine(error.Data["Recommend"]); AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message); } return null; } } }