import os from dotenv import load_dotenv # 加载环境变量 load_dotenv() # AWS EBS定价(GP3) AWS_PRICING_EBS = { "us-east-1": 0.08, "us-east-2": 0.08, "us-west-1": 0.096, "us-west-2": 0.08, "af-south-1": 0.1047, "ap-east-1": 0.1056, "ap-south-1": 0.0912, "ap-northeast-3": 0.096, "ap-northeast-2": 0.0912, "ap-southeast-1": 0.096, "ap-southeast-2": 0.096, "ap-northeast-1": 0.096, "ca-central-1": 0.088, "eu-central-1": 0.0952, "eu-west-1": 0.088, "eu-west-2": 0.0928, "eu-west-3": 0.0928, "eu-north-1": 0.0836, "me-central-1": 0.0968, "sa-east-1": 0.152, } # 区域中文名称映射 AWS_REGION_NAMES = { "Asia Pacific (Malaysia)":"区域:亚太地区(马来西亚)", "Asia Pacific (Taipei)":"区域:亚太地区(台北)", "Asia Pacific (Thailand)":"区域:亚太地区(泰国)", "Mexico (Central)":"区域:墨西哥(中部)", "Africa (Cape Town)":"区域:非洲(开普敦)", "Asia Pacific (Hong Kong)":"区域:亚太地区(香港)", "Asia Pacific (Hyderabad)":"区域:亚太地区(海得拉巴)", "Asia Pacific (Jakarta)":"区域:亚太地区(雅加达)", "Asia Pacific (Melbourne)":"区域:亚太地区(墨尔本)", "Asia Pacific (Osaka)":"区域:亚太地区(大阪)", "Canada West (Calgary)":"区域:加拿大西部(卡尔加里)", "EU (Milan)":"区域:欧洲地区(米兰)", "EU (Spain)":"区域:欧洲(西班牙)", "EU (Stockholm)":"区域:欧洲地区(斯德哥尔摩)", "EU (Zurich)":"区域:欧洲(苏黎世)", "Israel (Tel Aviv)":"区域:以色列(特拉维夫)", "Middle East (Bahrain)":"区域:中东(巴林)", "Middle East (UAE)":"区域:中东(阿联酋)", "US West (N. California)":"区域:美国西部(北加利福尼亚)", "Argentina (Buenos Aires)":"本地区域:阿根廷(布宜诺斯艾利斯)", "Asia Pacific (KDDI) - Osaka":"运营商区域:亚太地区(KDDI)– 大阪", "Asia Pacific (KDDI) - Tokyo":"运营商区域:亚太地区(KDDI)– 东京", "Asia Pacific (SKT) - Daejeon":"运营商区域:亚太地区(SKT)– 大田", "Asia Pacific (SKT) - Seoul":"运营商区域:亚太地区(SKT)– 首尔", "Australia (Perth)":"本地区域:澳大利亚(珀斯)", "Canada (BELL) - Toronto":"运营商区域:加拿大(BELL)– 多伦多", "Chile (Santiago)":"本地区域:智利(圣地亚哥)", "Denmark (Copenhagen)":"本地区域:丹麦(哥本哈根)", "EU (British Telecom) - Manchester":"运营商区域:欧洲(英国电信)- 曼彻斯特", "EU (Vodafone) - Berlin":"运营商区域:欧洲(Vodafone)– 柏林", "EU (Vodafone) - Dortmund":"运营商区域:欧洲(Vodafone)– 多特蒙德", "EU (Vodafone) - London":"运营商区域:欧洲(Vodafone)– 伦敦", "EU (Vodafone) - Manchester":"运营商区域:欧洲(Vodafone)– 曼彻斯特", "EU (Vodafone) - Munich":"运营商区域:欧洲(Vodafone)– 慕尼黑", "Finland (Helsinki)":"本地区域:芬兰(赫尔辛基)", "Germany (Hamburg)":"本地区域:德国(汉堡)", "India (Delhi)":"本地区域:印度(德里)", "India (Kolkata)":"本地区域:印度(加尔各答)", "Mexico (Queretaro)":"本地区域:墨西哥(克雷塔罗)", "Morocco (Casablanca)":"运营商区域:摩洛哥(卡萨布兰卡)", "New Zealand (Auckland)":"本地区域:新西兰(奥克兰)", "Nigeria (Lagos)":"本地区域:尼日利亚(拉各斯)", "Oman (Muscat)":"本地区域:阿曼(马斯喀特)", "Peru (Lima)":"本地区域:秘鲁(利马)", "Philippines (Manila)":"本地区域:菲律宾(马尼拉)", "Poland (Warsaw)":"本地区域:波兰(华沙)", "Senegal (Dakar)":"运营商区域:塞内加尔(达喀尔)", "Taiwan (Taipei)":"本地区域:台湾(台北)", "Thailand (Bangkok)":"本地区域:泰国(曼谷)", "US East (Atlanta)":"本地区域:美国东部(亚特兰大)", "US East (Boston)":"本地区域:美国东部(波士顿)", "US East (Chicago)":"本地区域:美国东部(芝加哥)", "US East (Dallas)":"本地区域:美国东部(达拉斯)", "US East (Houston)":"本地区域:美国东部(休斯顿)", "US East (Kansas City 2)":"本地区域:美国东部(堪萨斯城 2)", "US East (Lenexa)":"运营商区域:美国东部(列涅萨)", "US East (Miami)":"本地区域:美国东部(迈阿密)", "US East (Minneapolis)":"本地区域:美国东部(明尼阿波利斯)", "US East (New York City)":"本地区域:美国东部(纽约市)", "US East (Philadelphia)":"本地区域:美国东部(费城)", "US East (Verizon) - Atlanta":"运营商区域:美国东部(威瑞森)– 亚特兰大", "US East (Verizon) - Boston":"运营商区域:美国东部(威瑞森)– 波士顿", "US East (Verizon) - Charlotte":"运营商区域:美国东部(威瑞森)– 夏洛特", "US East (Verizon) - Chicago":"运营商区域:美国东部(威瑞森)– 芝加哥", "US East (Verizon) - Dallas":"运营商区域:美国东部(威瑞森)– 达拉斯", "US East (Verizon) - Detroit":"运营商区域:美国东部(威瑞森)– 底特律", "US East (Verizon) - Houston":"运营商区域:美国东部(威瑞森)– 休斯顿", "US East (Verizon) - Miami":"运营商区域:美国东部(威瑞森)– 迈阿密", "US East (Verizon) - Minneapolis":"运营商区域:美国东部(威瑞森)– 明尼阿波利斯", "US East (Verizon) - Nashville":"运营商区域:美国东部(威瑞森)- 纳什维尔", "US East (Verizon) - New York":"运营商区域:美国东部(威瑞森)– 纽约", "US East (Verizon) - Tampa":"运营商区域:美国东部(威瑞森)– 坦帕", "US East (Verizon) - Washington DC":"运营商区域:美国东部(威瑞森)– 华盛顿特区", "US West (Denver)":"本地区域:美国西部(丹佛)", "US West (Honolulu)":"本地区域:美国西部(檀香山)", "US West (Las Vegas)":"本地区域:美国西部(拉斯维加斯)", "US West (Los Angeles)":"本地区域:美国西部(洛杉矶)", "US West (Phoenix)":"本地区域:美国西部(菲尼克斯)", "US West (Portland)":"本地区域:美国西部(波特兰)", "US West (Seattle)":"本地区域:美国西部(西雅图)", "US West (Verizon) - Denver":"运营商区域:美国西部(威瑞森)- 丹佛", "US West (Verizon) - Las Vegas":"运营商区域:美国西部(威瑞森)- 拉斯维加斯", "US West (Verizon) - Los Angeles":"运营商区域:美国西部(威瑞森)– 洛杉矶", "US West (Verizon) - Phoenix":"运营商区域:美国东部(威瑞森)– 凤凰城", "US West (Verizon) - San Francisco Bay Area":"运营商区域:美国西部(威瑞森)– 旧金山港湾区", "US West (Verizon) - Seattle":"运营商区域:美国西部(威瑞森)- 西雅图", "AWS GovCloud (US)":"区域:AWS GovCloud(美国西部)", "AWS GovCloud (US-East)":"区域:AWS GovCloud(美国东部)", "Asia Pacific (Mumbai)":"区域:亚太地区(孟买)", "Asia Pacific (Seoul)":"区域:亚太地区(首尔)", "Asia Pacific (Singapore)":"区域:亚太地区(新加坡)", "Asia Pacific (Sydney)":"区域:亚太地区(悉尼)", "Asia Pacific (Tokyo)":"区域:亚太地区(东京)", "Canada (Central)":"区域:加拿大(中部)", "EU (Frankfurt)":"区域:欧洲地区(法兰克福)", "EU (Ireland)":"区域:欧洲地区(爱尔兰)", "EU (London)":"区域:欧洲地区(伦敦)", "South America (Sao Paulo)":"区域:南美洲(圣保罗)", "US East (N. Virginia)":"区域:美国东部(弗吉尼亚州北部)", "US East (Ohio)":"区域:美国东部(俄亥俄州)", "US West (Oregon)":"区域:美国西部(俄勒冈州)", "EU (Paris)":"区域:欧洲地区(巴黎)" } AWS_REGION_NAMES_EN = { "Asia Pacific (Malaysia)":"Asia Pacific (Malaysia)", "Asia Pacific (Taipei)":"Asia Pacific (Taipei)", "Asia Pacific (Thailand)":"Asia Pacific (Thailand)", "Mexico (Central)":"Mexico (Central)", "Africa (Cape Town)":"Africa (Cape Town)", "Asia Pacific (Hong Kong)":"Asia Pacific (Hong Kong)", "Asia Pacific (Hyderabad)":"Asia Pacific (Hyderabad)", "Asia Pacific (Jakarta)":"Asia Pacific (Jakarta)", "Asia Pacific (Melbourne)":"Asia Pacific (Melbourne)", "Asia Pacific (Osaka)":"Asia Pacific (Osaka)", "Canada West (Calgary)":"Canada West (Calgary)", "EU (Milan)":"EU (Milan)", "EU (Spain)":"EU (Spain)", "EU (Stockholm)":"EU (Stockholm)", "EU (Zurich)":"EU (Zurich)", "Israel (Tel Aviv)":"Israel (Tel Aviv)", "Middle East (Bahrain)":"Middle East (Bahrain)", "Middle East (UAE)":"Middle East (UAE)", "US West (N. California)":"US West (N. California)", "External":"External", "Amazon CloudFront":"Amazon CloudFront", "Argentina (Buenos Aires)":"Argentina (Buenos Aires)", "Asia Pacific (KDDI) - Osaka":"Asia Pacific (KDDI) - Osaka", "Asia Pacific (KDDI) - Tokyo":"Asia Pacific (KDDI) - Tokyo", "Asia Pacific (New Zealand)":"Asia Pacific (New Zealand)", "Asia Pacific (SKT) - Daejeon":"Asia Pacific (SKT) - Daejeon", "Asia Pacific (SKT) - Seoul":"Asia Pacific (SKT) - Seoul", "Australia (Perth)":"Australia (Perth)", "Canada (BELL) - Toronto":"Canada (BELL) - Toronto", "Chile (Santiago)":"Chile (Santiago)", "Denmark (Copenhagen)":"Denmark (Copenhagen)", "EU (British Telecom) - Manchester":"EU (British Telecom) - Manchester", "EU (Vodafone) - Berlin":"EU (Vodafone) - Berlin", "EU (Vodafone) - Dortmund":"EU (Vodafone) - Dortmund", "EU (Vodafone) - London":"EU (Vodafone) - London", "EU (Vodafone) - Manchester":"EU (Vodafone) - Manchester", "EU (Vodafone) - Munich":"EU (Vodafone) - Munich", "Finland (Helsinki)":"Finland (Helsinki)", "Germany (Hamburg)":"Germany (Hamburg)", "India (Delhi)":"India (Delhi)", "India (Kolkata)":"India (Kolkata)", "Mexico (Queretaro)":"Mexico (Queretaro)", "Morocco (Casablanca)":"Morocco (Casablanca)", "New Zealand (Auckland)":"New Zealand (Auckland)", "Nigeria (Lagos)":"Nigeria (Lagos)", "Oman (Muscat)":"Oman (Muscat)", "Peru (Lima)":"Peru (Lima)", "Philippines (Manila)":"Philippines (Manila)", "Poland (Warsaw)":"Poland (Warsaw)", "SG Government (Singapore)":"SG Government (Singapore)", "Senegal (Dakar)":"Senegal (Dakar)", "Taiwan (Taipei)":"Taiwan (Taipei)", "Thailand (Bangkok)":"Thailand (Bangkok)", "US East (Atlanta)":"US East (Atlanta)", "US East (Boston)":"US East (Boston)", "US East (Chicago)":"US East (Chicago)", "US East (Dallas)":"US East (Dallas)", "US East (Houston)":"US East (Houston)", "US East (Kansas City 2)":"US East (Kansas City 2)", "US East (Kansas City)":"US East (Kansas City)", "US East (Lenexa)":"US East (Lenexa)", "US East (Miami)":"US East (Miami)", "US East (Minneapolis)":"US East (Minneapolis)", "US East (New York City)":"US East (New York City)", "US East (Philadelphia)":"US East (Philadelphia)", "US East (South Bend)":"US East (South Bend)", "US East (Verizon) - Atlanta":"US East (Verizon) - Atlanta", "US East (Verizon) - Boston":"US East (Verizon) - Boston", "US East (Verizon) - Charlotte":"US East (Verizon) - Charlotte", "US East (Verizon) - Chicago":"US East (Verizon) - Chicago", "US East (Verizon) - Dallas":"US East (Verizon) - Dallas", "US East (Verizon) - Detroit":"US East (Verizon) - Detroit", "US East (Verizon) - Houston":"US East (Verizon) - Houston", "US East (Verizon) - Miami":"US East (Verizon) - Miami", "US East (Verizon) - Minneapolis":"US East (Verizon) - Minneapolis", "US East (Verizon) - Nashville":"US East (Verizon) - Nashville", "US East (Verizon) - New York":"US East (Verizon) - New York", "US East (Verizon) - Tampa":"US East (Verizon) - Tampa", "US East (Verizon) - Washington DC":"US East (Verizon) - Washington DC", "US West (Denver)":"US West (Denver)", "US West (Honolulu)":"US West (Honolulu)", "US West (Las Vegas)":"US West (Las Vegas)", "US West (Los Angeles)":"US West (Los Angeles)", "US West (Phoenix)":"US West (Phoenix)", "US West (Portland)":"US West (Portland)", "US West (Seattle)":"US West (Seattle)", "US West (Verizon) - Denver":"US West (Verizon) - Denver", "US West (Verizon) - Las Vegas":"US West (Verizon) - Las Vegas", "US West (Verizon) - Los Angeles":"US West (Verizon) - Los Angeles", "US West (Verizon) - Phoenix":"US West (Verizon) - Phoenix", "US West (Verizon) - San Francisco Bay Area":"US West (Verizon) - San Francisco Bay Area", "US West (Verizon) - Seattle":"US West (Verizon) - Seattle", "AWS GovCloud (US)":"AWS GovCloud (US)", "AWS GovCloud (US-East)":"AWS GovCloud (US-East)", "Asia Pacific (Mumbai)":"Asia Pacific (Mumbai)", "Asia Pacific (Seoul)":"Asia Pacific (Seoul)", "Asia Pacific (Singapore)":"Asia Pacific (Singapore)", "Asia Pacific (Sydney)":"Asia Pacific (Sydney)", "Asia Pacific (Tokyo)":"Asia Pacific (Tokyo)", "Canada (Central)":"Canada (Central)", "EU (Frankfurt)":"EU (Frankfurt)", "EU (Ireland)":"EU (Ireland)", "EU (London)":"EU (London)", "South America (Sao Paulo)":"South America (Sao Paulo)", "US East (N. Virginia)":"US East (N. Virginia)", "US East (Ohio)":"US East (Ohio)", "US West (Oregon)":"US West (Oregon)", "EU (Paris)":"EU (Paris)" } # 可以添加其他云平台的配置 AZURE_REGION_NAMES = { # 待添加Azure区域 } ALIYUN_REGION_NAMES = { # 待添加阿里云区域 } # 支持的平台列表 SUPPORTED_PLATFORMS = ["aws", "azure", "aliyun"]