{"id":48836,"date":"2023-05-13T21:19:40","date_gmt":"2023-04-27T22:53:02","guid":{"rendered":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/"},"modified":"2024-04-30T04:00:18","modified_gmt":"2024-04-29T20:00:18","slug":"%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/","title":{"rendered":"\u5c1d\u8bd5\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u914d\u7f6e"},"content":{"rendered":"<h1>\u5f00\u573a\u767d sh\u016b<\/h1>\n<p>\u4eca\u5e74\u4e5f\u5230\u4e86\u5723\u8bde\u8282\u65e5\u5386\u6d3b\u52a8\u7684\u65f6\u5019\u3002\u56e0\u4e3a\u6211\u7684\u751f\u65e5\u662f12\u67086\u65e5\uff0c\u53ea\u8981\u5230\u4e86\u8fd9\u4e2a\u65e5\u671f\u5c31\u4f1a\u88ab\u6307\u5b9a\u3002<br \/>\n\u8fd9\u6b21\u6211\u9ed8\u9ed8\u5730\u9690\u85cf\u8d77\u6765\uff0c\u4f46\u88ab\u67d0\u4e2a\u524d\u8f88\u6307\u5b9a\u4e86\uff0c\u6240\u4ee5\u5c31\u5199\u51fa\u6765\u4e86\u3002<br \/>\n\u4e0d\u8fc7\uff0c\u751f\u65e5\u90a3\u5929\u5df2\u7ecf\u88ab\u586b\u6ee1\u4e86\uff0c\u6240\u4ee5\u6211\u4f1a\u5728\u751f\u65e5\u524d\u4e00\u5929\u5199\uff01\uff08\u67d0\u4e2a\u524d\u8f88\uff0c\u548cI Sam\u540c\u4e00\u5929\u751f\u65e5\uff09<\/p>\n<h1>\u6211\u60f3\u5199\u4e00\u4e0b\u6709\u5173Terraform\u7684\u6587\u7ae0\u3002<\/h1>\n<h1>\u7ae0\u8282\u76ee\u5f55<\/h1>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">terraform\u3068\u306f<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">terraform\u5316\u3057\u305f\u30ea\u30bd\u30fc\u30b9<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">terraform\u306e\u57fa\u672c<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">EC2\u306eterraform\u5316<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">SecurityGroup\u306eterraform\u5316<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">Route53\u306eterraform\u5316<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\u307e\u3068\u3081\uff1f<\/ul>\n<hr \/>\n<h2>Terraform\u662f\u4ec0\u4e48\uff1f<\/h2>\n<p>Terraform\u662f\u4e00\u4e2a\u4ee5IaC\u7684\u65b9\u5f0f\u6765\u7ba1\u7406\u4e3b\u8981\u7684\u516c\u5171\u4e91\u8d44\u6e90\uff0c\u5982AWS\u548cGCP\u7b49\u3002<br \/>\n\u4f8b\u5982\uff0c\u53ef\u4ee5\u5c06Route53\u7684DNS\u8bb0\u5f55\u7f16\u7801\u5316\uff0c\u4f7f\u5176\u66f4\u5bb9\u6613\u8fdb\u884c\u5ba1\u67e5\uff1b\u4e5f\u53ef\u4ee5\u4e00\u6b21\u6027\u5730\u66f4\u6539EC2\u5b9e\u4f8b\u7684\u5927\u5c0f\u3002<br \/>\n\u7531\u4e8e\u6211\u4eec\u516c\u53f8\u4f7f\u7528AWS\uff0c\u6240\u4ee5\u6211\u60f3\u5199\u4e00\u4e0b\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u7684\u7ecf\u9a8c\u3002<br \/>\n\u4e0d\u8fc7\uff0c\u6211\u5bf9Terraform\u5e76\u4e0d\u662f\u5f88\u4e86\u89e3\uff0c\u6240\u4ee5\u5982\u679c\u6211\u5199\u9519\u4e86\u4ec0\u4e48\uff0c\u8bf7\u7b11\u7740\u539f\u8c05\u6211\u3002<\/p>\n<hr \/>\n<h2>\u4f7f\u7528Terraform\u8fdb\u884c\u8d44\u6e90\u5efa\u8bbe<\/h2>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">EC2<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">SecurityGroup<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">ELB<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">Route53<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">ECS Fargate<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul class=\"post-ul\">etc&#8230;<\/ul>\n<p>\u6211\u5c06\u4e0a\u8ff0\u5185\u5bb9\u8fdb\u884c\u4e86Terraform\u5316\u5904\u7406\uff0c\u4f46\u8003\u8651\u5230\u5168\u90e8\u90fd\u5199\u51fa\u6765\u4f1a\u5f88\u7e41\u7410\uff0c\u6240\u4ee5\u6253\u7b97\u53ea\u5199\u4e00\u4e9b\u50cfEC2\u3001SecurityGroup\u548cRoute53\u8fd9\u6837\u7684\u57fa\u672c\u8981\u7d20\u5427\u3002\uff08\u4e0d\u786e\u5b9a\u662f\u5426\u7b26\u5408\u4e3b\u6d41\u505a\u6cd5\u3002\uff09<\/p>\n<hr \/>\n<h2>\u57fa\u672c\u6982\u5ff5\u662f\u5173\u4e8eterraform<\/h2>\n<p>\u5728\u521b\u5efaAWS\u8d44\u6e90\u4e4b\u524d\uff0c\u6211\u4eec\u5c06\u5148\u4ecb\u7ecdterraform\u7684\u57fa\u672c\u77e5\u8bc6\u3002\u5728\u7f16\u5199terraform\u65f6\uff0c\u9700\u8981\u786e\u5b9a\u4f7f\u7528\u54ea\u79cd\u6700\u4f73\u5b9e\u8df5\uff0c\u800c\u672c\u6b21\u6211\u4eec\u5c06\u91c7\u7528\u88ab\u79f0\u4e3a\u6a21\u5757\u5316\u5199\u6cd5\u7684\u65b9\u5f0f\u8fdb\u884c\u7f16\u5199\u3002<\/p>\n<p>\u6a21\u5757\u5316\u662f\u4ec0\u4e48\uff1f<\/p>\n<pre class=\"post-pre\"><code>.\r\n\u251c\u2500\u2500 env                            # env...\u4e3b\u306b\u30b9\u30c6\u30fc\u30b8\u3067\u5206\u3051\u3089\u308c\u308b\u3053\u3068\u304c\u591a\u3044\r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 product\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 default_variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 main.tf\r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 staging\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 default_variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 main.tf\r\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 dev\r\n\u2502\u00a0\u00a0  \u00a0\u00a0 \u251c\u2500\u2500 default_variable.tf\r\n\u2502\u00a0\u00a0  \u00a0\u00a0 \u2514\u2500\u2500 main.tf\r\n\u251c\u2500\u2500 modules                        # modules ... AWS\u30ea\u30bd\u30fc\u30b9\u3054\u3068\u306b\u5206\u3051\u3089\u308c\u308b\u3053\u3068\u304c\u591a\u3044\r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Route53\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 main.tf\r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 ELB\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 alb.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 nlb.tf\r\n\u2502   \u251c\u2500\u2500 EC2\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 main.tf\r\n\u2502   \u251c\u2500\u2500 other_resource...\r\n.\r\n.\r\n.\r\n<\/code><\/pre>\n<p>terraform\u4ee5\u6a21\u5757\u5316\u5f62\u5f0f\u7f16\u5199\u7684\u4ee3\u7801\u9075\u5faa\u7c7b\u4f3c\u4e8eenv\uff08\u73af\u5883\uff09\u548cmodules\uff08\u5404\u4e2a\u8d44\u6e90\uff09\u7684\u76ee\u5f55\u7ed3\u6784\uff0c\u6240\u4ee5\u88ab\u79f0\u4e3a\u6a21\u5757\u5316terraform\u3002<br \/>\n\u867d\u7136\u6211\u6b64\u6b21\u7f16\u5199\u7684\u4ee3\u7801\u4e0e\u6b64\u76f8\u4f3c\uff0c\u4f46\u5b9e\u9645\u4e0a\u5b83\u4eec\u662f\u4e0d\u540c\u7684\uff08\u4e8b\u5b9e\u4e0a\uff0c\u4e0d\u77e5\u4e0d\u89c9\u4e2d\u53d8\u5f97\u4e0d\u540c\u4e86&#8230;\uff09\u3002<\/p>\n<h5>\u4ee5\u4e0b\u4e3a\u6240\u4e66\u5199\u7684\u6587\u4ef6\/\u6587\u4ef6\u5939\u7ed3\u6784\u3002<\/h5>\n<pre class=\"post-pre\"><code>.\r\n\u251c\u2500\u2500 env\r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 product\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 default_variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 main.tf\r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 staging\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 default_variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 main.tf\r\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 dev\r\n\u2502\u00a0\u00a0  \u00a0\u00a0 \u251c\u2500\u2500 default_variable.tf\r\n\u2502\u00a0\u00a0  \u00a0\u00a0 \u2514\u2500\u2500 main.tf\r\n\u251c\u2500\u2500 modules                       # \u3053\u3053\u3082\u30b9\u30c6\u30fc\u30b8\u3054\u3068\u306b\u4f5c\u3063\u3061\u3083\u3063\u305f\u3002\r\n\u2502\u00a0\u00a0 \u2502                             # dev\u74b0\u5883\u306b\u3057\u304b\u306a\u3044\u30a4\u30f3\u30b9\u30bf\u30f3\u30c8\u3082\u3042\u308b\u306e\u3067\u306a\u3093\u304b\u3053\u3046\u306a\u3063\u3066\u3057\u307e\u3063\u305f\u3002\r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 product\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 alb.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 securitygroup.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 alb.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 other.tf\r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 staging\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 alb.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 securitygroup.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 alb.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 other.tf\r\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 dev\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 alb.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 securitygroup.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 alb.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 variable.tf\r\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 other.tf\r\n.\r\n.\r\n.\r\n<\/code><\/pre>\n<p>\u8fd9\u4e2a\u5728\u81ea\u5df1\u7684\u4f7f\u7528\u4e0a\u8fd8\u662f\u53ef\u4ee5\u7684\uff0c\u4f46\u662f\u5728dev\u3001staging\u548cproduct\u5206\u522b\u8981\u91cd\u590d\u5199\u7c7b\u4f3c\u7684\u5185\u5bb9\uff0c\u6240\u4ee5\u8fd9\u6837\u505a\u4e5f\u4e0d\u592a\u597d\u3002\u5206\u914d\u8d44\u6e90\u65f6\uff0c\u6709\u4e00\u4e9b\u5b9e\u4f8b\u53ea\u80fd\u5728dev\u73af\u5883\u4e2d\u4f7f\u7528\uff0c\u8fd8\u6709\u4e00\u4e9bDNS\u8bb0\u5f55\u4e5f\u53ea\u5b58\u5728\u4e8edev\u73af\u5883\u4e2d\uff0c\u8fd9\u771f\u7684\u5f88\u9ebb\u70e6\u554a&#8230;\u597d\u4e86\uff0c\u63a5\u4e0b\u6765\u662f\u4ec0\u4e48\u95ee\u9898\uff1f<\/p>\n<p>\u6211\u5011\u5c07\u67e5\u770b .\/env\/dev\/main.tf \u9700\u8981\u7684\u8a18\u8ff0\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"k\">terraform<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nx\">backend<\/span> <span class=\"s2\">\"s3\"<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"nx\">bucket<\/span>  <span class=\"p\">=<\/span> <span class=\"s2\">\"terraform_state\"<\/span>\r\n        <span class=\"nx\">key<\/span>     <span class=\"p\">=<\/span> <span class=\"s2\">\"dev.tfstate\"<\/span>\r\n        <span class=\"nx\">region<\/span>  <span class=\"p\">=<\/span> <span class=\"s2\">\"ap-northeast-1\"<\/span>\r\n        <span class=\"nx\">profile<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"terraform-dev\"<\/span>\r\n    <span class=\"p\">}<\/span>\r\n\r\n    <span class=\"nx\">required_providers<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"nx\">aws<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\r\n            <span class=\"nx\">source<\/span>  <span class=\"p\">=<\/span> <span class=\"s2\">\"hashicorp\/aws\"<\/span>\r\n            <span class=\"nx\">version<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"3.72.0\"<\/span>\r\n        <span class=\"p\">}<\/span>\r\n    <span class=\"p\">}<\/span>\r\n<span class=\"p\">}<\/span>\r\n\r\n<span class=\"k\">provider<\/span> <span class=\"s2\">\"aws\"<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nx\">region<\/span>  <span class=\"p\">=<\/span> <span class=\"s2\">\"ap-northeast-1\"<\/span>\r\n    <span class=\"nx\">profile<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"terraform-dev\"<\/span>\r\n<span class=\"p\">}<\/span>\r\n\r\n<span class=\"k\">module<\/span> <span class=\"s2\">\"module_name\"<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nx\">source<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"..\/..\/modules\/dev\/\"<\/span>\r\n\r\n    <span class=\"c1\"># \u74b0\u5883\u3054\u3068\u306b\u9055\u3046\u90e8\u5206\u3092\u5b9a\u7fa9\u3002variable.tf\u306b\u3066\u8aad\u307f\u8fbc\u307e\u306a\u3044\u3068\u30c0\u30e1\u3002<\/span>\r\n    <span class=\"nx\">vpc_cidr<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">xxx<\/span><span class=\"p\">.<\/span><span class=\"nx\">xxx<\/span><span class=\"p\">.<\/span><span class=\"mf\">0.0<\/span><span class=\"err\">\/<\/span><span class=\"mi\">16<\/span>\r\n    <span class=\"nx\">subent<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">xxx<\/span><span class=\"p\">.<\/span><span class=\"nx\">xxx<\/span><span class=\"p\">.<\/span><span class=\"nx\">xxx<\/span><span class=\"p\">.<\/span><span class=\"mi\">0<\/span><span class=\"err\">\/<\/span><span class=\"mi\">24<\/span>\r\n    <span class=\"p\">.<\/span>\r\n    <span class=\"p\">.<\/span>\r\n    <span class=\"p\">.<\/span>\r\n<\/code><\/pre>\n<p>\u8bf7\u6309\u987a\u5e8f\u89e3\u91ca<\/p>\n<div>\n<div class=\"post-table\">Name\u8aac\u660ebackend &#8220;s3&#8243;S3\u306bstate\u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3059\u308b\u3068\u3044\u3046\u610f\u5473\u3002\u30ed\u30fc\u30ab\u30eb\u306a\u3069\u3082\u6307\u5b9a\u3067\u304d\u305f\u306f\u305a\u3002bucketS3\u306e\u30d0\u30b1\u30c3\u30c8\u540d\u3092\u8a18\u8f09keystate\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u8a18\u8f09\u3002\u521d\u56de\u5b9f\u884c\u6642\u306f\u306a\u3044\u306e\u304c\u5f53\u305f\u308a\u524d\u306a\u306e\u3067\u3069\u3093\u306a\u30d5\u30a1\u30a4\u30eb\u306estate\u30d5\u30a1\u30a4\u30eb\u306b\u3057\u305f\u3044\u304b\u3092\u66f8\u304f\u3002regionAWS\u306e\u5229\u7528\u3057\u3066\u3044\u308b\u30ea\u30fc\u30b8\u30e7\u30f3\u3092\u8a18\u8f09profileAWS\u3092\u64cd\u4f5c\u3059\u308bprofile\u3092\u6307\u5b9a\u3002IAM\u3067terraform\u7528\u306e\u30e6\u30fc\u30b6\u306a\u308a\u4f55\u306a\u308a\u3092\u4f5c\u6210\u3057\u306a\u3051\u308c\u3070\u3044\u3051\u306a\u3044\u3002<\/div>\n<\/div>\n<div>\n<div class=\"post-table\">Name\u8aac\u660erequired_providers\u3069\u306e\u30d1\u30d6\u30ea\u30c3\u30af\u30af\u30e9\u30a6\u30c9\u3092\u5229\u7528\u3059\u308b\u306e\u304b\u3092\u8a18\u8f09awsAWS\u306e\u30ea\u30bd\u30fc\u30b9\u3092\u4f7f\u3046\u3068\u5ba3\u8a00sourcehashicorp\u306eaws\u3092\u4f7f\u3046\u3068\u3044\u3046\u5ba3\u8a00\u3002(\u3060\u3068\u601d\u3046\u3002)versionsource\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u6307\u5b9a\u3002<\/div>\n<\/div>\n<div>\n<div class=\"post-table\">Name\u8aac\u660eprovider &#8220;aws&#8221;\u3069\u306e\u30d1\u30d6\u30ea\u30c3\u30af\u30af\u30e9\u30a6\u30c9\u3092\u5229\u7528\u3059\u308b\u306e\u304b\u3092\u8a18\u8f09regionAWS\u306e\u5229\u7528\u3057\u3066\u3044\u308b\u30ea\u30fc\u30b8\u30e7\u30f3\u3092\u8a18\u8f09profileAWS\u3092\u64cd\u4f5c\u3059\u308bprofile\u3092\u6307\u5b9a\u3002IAM\u3067terraform\u7528\u306e\u30e6\u30fc\u30b6\u306a\u308a\u4f55\u306a\u308a\u3092\u4f5c\u6210\u3057\u306a\u3051\u308c\u3070\u3044\u3051\u306a\u3044\u3002backend \u3067\u8a2d\u5b9a\u3057\u305fprofile\u3068\u540c\u3058\u306b\u306a\u308b\u3068\u601d\u3046\u3002<\/div>\n<\/div>\n<div>\n<div class=\"post-table\">Name\u8aac\u660emodule &#8220;module_name&#8221;module_name \u306f\u306a\u3093\u3067\u3082OK\u3002\u3042\u3068\u304b\u3089\u5909\u3048\u308b\u306e\u306f\u3081\u3061\u3083\u304f\u3061\u3083\u3081\u3093\u3069\u3044\u306e\u3067\u3061\u3083\u3093\u3068\u8003\u3048\u3066\u4ed8\u3051\u305f\u307b\u3046\u304c\u826f\u3044\u3002source\u3069\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u5b9f\u884c\u3059\u308b\u304b\u3092\u8a18\u8f09\u3059\u308bvpc_cidr\u3053\u306e\u8fba\u306f\u74b0\u5883\u306b\u3088\u3063\u3066\u5dee\u5206\u304c\u3042\u308b\u5834\u5408\u3001\u3053\u3053\u3067\u5909\u6570\u5b9a\u7fa9\u3057\u3066\u304a\u304f\u3068\u5f8c\u3005\u5909\u66f4\u7b49\u304c\u697d\u3002<\/div>\n<\/div>\n<p>\u8fd9\u91cc\u53ea\u662f\u5173\u4e8eenv\u7684\u8bf4\u660e\u3002<br \/>\ndefault_variable.tf\u662f\u6ca1\u6709\u5fc5\u8981\u7684\uff0c\u6240\u4ee5\u6211\u6ca1\u6709\u5199\u3002<br \/>\n\u4e3a\u4e86\u8fdb\u884c\u5e94\u7528\u7a0b\u5e8f\u7684\u7248\u672c\u5347\u7ea7\u7b49\u64cd\u4f5c\uff0c\u6211\u53ea\u662f\u5c06\u7248\u672c\u53f7\u7b49\u4fe1\u606f\u4ecemain.tf\u4e2d\u63d0\u53d6\u51fa\u6765\u3002<\/p>\n<p>\u55ef\uff0c\u8bdd\u9898\u6709\u70b9\u957f\uff0c\u57fa\u672c\u4e0a\u5c31\u662f\u8fd9\u6837\u3002<br \/>\n\u7ec8\u4e8e\u8981\u5f00\u59cb\u5199\u5173\u4e8e\u6bcf\u4e2a\u8d44\u6e90\u7684\u5185\u5bb9\u4e86\u3002<\/p>\n<hr \/>\n<h2>\u5728\u6bcf\u4e2a\u8d44\u6e90\u4e4b\u524d\uff0c<\/h2>\n<p>\u5728\u6bcf\u4e2a\u8d44\u6e90\u4e4b\u524d\u89e3\u91ca\u4e00\u4e0b variable.tf\u3002<br \/>\n\u4e3a\u4e86\u5728 module \u4e2d\u4f7f\u7528\u5728 .\/env\/dev\/main.tf \u4e2d\u5b9a\u4e49\u7684\u53d8\u91cf\uff0c\u6211\u4eec\u4f1a\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a variable.tf \u7684\u6587\u4ef6\u3002\uff08\u5176\u5b9e\u540d\u5b57\u53ef\u4ee5\u968f\u4fbf\u53d6\u3002\uff09<\/p>\n<h5>.\/\u6a21\u5757\/\u5f00\u53d1\/\u53d8\u91cf.tf<\/h5>\n<pre class=\"post-pre\"><code>variable \"vpc_cidr\" {}\r\nvariable \"subent\" {}\r\n\r\n# \u4ed6\u306b\u3082 .\/env\/dev\/main.tf \u3067\u5b9a\u7fa9\u3057\u305f\u5909\u6570\u304c\u3042\u308c\u3070\u8a18\u8f09\r\nvariable \"...\" {}\r\nvariable \"...\" {}\r\nvariable \"...\" {}\r\n<\/code><\/pre>\n<p>\u53ea\u9700\u8fdb\u884c\u4ee5\u4e0b\u8bb0\u5f55\uff0c\u5373\u53ef\u5728\u6a21\u5757\u5185\u4f7f\u7528 var.vpc_cidr \u8fd9\u79cd\u5199\u6cd5\u3002<\/p>\n<hr \/>\n<h2>Terraform \u6a21\u5757\u7684\u5171\u901a\u5199\u6cd5\u3002<\/h2>\n<p>\u57fa\u672c\u4e0a<\/p>\n<p>\u5728\u4e2d\u6587\u4e2d\uff0c\u6211\u4eec\u53ef\u4ee5\u8fd9\u6837\u8868\u8fbe\uff1a<br \/>\n\u901a\u8fc7&#8221;AWS\u8d44\u6e90\u540d\u79f0&#8221; &#8220;\u72ec\u7279\u7684\u6a21\u5757\u540d\u79f0&#8221;\u7684\u65b9\u5f0f\u8fdb\u884c\u58f0\u660e\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"k\">resource<\/span> <span class=\"s2\">\"aws_instance\"<\/span> <span class=\"s2\">\"ec2-example-com\"<\/span> <span class=\"p\">{<\/span>\r\n\r\n<span class=\"p\">}<\/span>\r\n<span class=\"k\">resource<\/span> <span class=\"s2\">\"aws_security_group\"<\/span> <span class=\"s2\">\"access-from-vpc\"<\/span> <span class=\"p\">{<\/span>\r\n\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<p>\u7c7b\u4f3c\u90a3\u79cd\u611f\u89c9\u3002<\/p>\n<p>\u597d\uff0c\u6211\u4eec\u5728\u638c\u63e1\u4e86\u8fd9\u4e00\u70b9\u4e4b\u540e\uff0c\u7ee7\u7eed\u8bb2\u89e3\u5404\u79cd\u8d44\u6e90\u7684\u4f7f\u7528\u65b9\u6cd5\u5427\u3002<\/p>\n<hr \/>\n<h2>EC2 \u53ef\u5f39\u6027\u53d8\u5316<\/h2>\n<pre class=\"post-pre\"><code><span class=\"c1\"># aws_instance \u306fEC2\u306e\u3053\u3068\u3060\u3088\u3002\u3068\u3044\u3046\u5ba3\u8a00\u7684\u306a\u610f\u5473\u5408\u3044\u3002<\/span>\r\n<span class=\"c1\"># resource_name\u306fterraform\u5185\u3067\u30e6\u30cb\u30fc\u30af\u306e\u5024\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3002<\/span>\r\n<span class=\"c1\"># \u3042\u3068\u3067\u5909\u66f4\u3082\u53ef\u80fd\u3060\u3051\u3069\u3001\u7d50\u69cb\u3081\u3093\u3069\u304f\u3055\u3044\u306e\u3067\u308f\u304b\u308a\u3084\u3059\u304f\u3001\u88ab\u3089\u306a\u3044\u3088\u3046\u306b\u3057\u305f\u307b\u3046\u304c\u826f\u3044\u3002<\/span>\r\n<span class=\"k\">resource<\/span> <span class=\"s2\">\"aws_instance\"<\/span> <span class=\"s2\">\"ec2-example-com\"<\/span> <span class=\"p\">{<\/span> \r\n    <span class=\"nx\">ami<\/span>                         <span class=\"p\">=<\/span> <span class=\"s2\">\"ami-xxxxxxxxxxxxxxxxx\"<\/span>         <span class=\"c1\"># \u30de\u30fc\u30b1\u30c3\u30c8\u30d7\u30ec\u30a4\u30b9\u306a\u3069\u306eAMI_ID\u3092\u8a18\u8f09<\/span>\r\n    <span class=\"nx\">availability_zone<\/span>           <span class=\"p\">=<\/span> <span class=\"s2\">\"ap-northeast-1c\"<\/span>               <span class=\"c1\"># \u4f5c\u6210\u3059\u308bAZ\u3092\u8a18\u8f09<\/span>\r\n    <span class=\"nx\">ebs_optimized<\/span>               <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>                            <span class=\"c1\"># boolean \u3042\u3068\u3067\u5909\u66f4\u3059\u308b\u3068\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304c\u4f5c\u308a\u76f4\u3055\u308c\u308b\u306e\u3067\u6ce8\u610f\uff01<\/span>\r\n    <span class=\"nx\">instance_type<\/span>               <span class=\"p\">=<\/span> <span class=\"s2\">\"t3.small\"<\/span>                      <span class=\"c1\"># \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u30b5\u30a4\u30ba\u3092\u8a18\u8f09<\/span>\r\n    <span class=\"nx\">monitoring<\/span>                  <span class=\"p\">=<\/span> <span class=\"kc\">false<\/span>                           <span class=\"c1\"># \u8a73\u7d30\u30e2\u30cb\u30bf\u30ea\u30f3\u30b0\u3092\u6709\u52b9\u306b\u3059\u308b\u304b\u3069\u3046\u304b\uff1f\u304b\u306a\uff1f\u308f\u304b\u3089\u3093<\/span>\r\n    <span class=\"nx\">key_name<\/span>                    <span class=\"p\">=<\/span> <span class=\"s2\">\"key-name\"<\/span>                      <span class=\"c1\"># \u30c7\u30d5\u30a9\u30eb\u30c8\u30e6\u30fc\u30b6\u3067ssh\u3059\u308b\u305f\u3081\u306e\u9375\u3092\u8a18\u8f09<\/span>\r\n    <span class=\"nx\">subnet_id<\/span>                   <span class=\"p\">=<\/span> <span class=\"kd\">var<\/span><span class=\"p\">.<\/span><span class=\"nx\">subnet<\/span>                      <span class=\"c1\"># .\/env\/dev\/main.tf \u3067\u5b9a\u7fa9\u3057\u305f\u5024\u3092\u4f7f\u7528<\/span>\r\n    <span class=\"nx\">vpc_security_group_ids<\/span>      <span class=\"p\">=<\/span> <span class=\"p\">[<\/span>\r\n        <span class=\"nx\">aws_security_group<\/span><span class=\"p\">.<\/span><span class=\"nx\">hogehoge<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span><span class=\"p\">,<\/span> \r\n        <span class=\"nx\">aws_security_group<\/span><span class=\"p\">.<\/span><span class=\"nx\">fugafuga<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span>\r\n        <span class=\"p\">]<\/span>                                                         <span class=\"c1\"># \u30a2\u30bf\u30c3\u30c1\u3059\u308b\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30b0\u30eb\u30fc\u30d7\u3092\u8a18\u8f09\u3002<\/span>\r\n                                                                  <span class=\"c1\"># aws_security_group.hogehoge\u307f\u305f\u3044\u306a\u66f8\u304d\u65b9\u306f\u3044\u3044\u611f\u3058\u306b\u30b0\u30b0\u3063\u3066\u304f\u3060\u3055\u3044\u3002<\/span>\r\n\r\n    <span class=\"nx\">associate_public_ip_address<\/span> <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>                            <span class=\"c1\"># boolean PublicIP\u3092\u30a2\u30bf\u30c3\u30c1\u3059\u308b\u304b\u3069\u3046\u304b<\/span>\r\n    <span class=\"nx\">private_ip<\/span>                  <span class=\"p\">=<\/span> <span class=\"s2\">\"xxx.xxx.xxx.xxx\"<\/span>               <span class=\"c1\"># \u30ed\u30fc\u30ab\u30ebIP\u3092\u8a18\u8f09<\/span>\r\n    <span class=\"nx\">source_dest_check<\/span>           <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>                            <span class=\"c1\"># \u3088\u304f\u308f\u304b\u3089\u3093\u3002<\/span>\r\n\r\n    <span class=\"nx\">lifecycle<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"nx\">ignore_changes<\/span> <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"nx\">associate_public_ip_address<\/span><span class=\"p\">]<\/span>            <span class=\"c1\"># associate_public_ip_address\u3053\u308c\u304c\u5909\u308f\u3063\u3066\u3082\u7121\u8996\u3059\u308b\u3068\u3044\u3046\u8a2d\u5b9a<\/span>\r\n    <span class=\"p\">}<\/span>\r\n\r\n    <span class=\"c1\"># \u3053\u3053\u304b\u3089\u306f\u7121\u304f\u3066\u3082\u3044\u3044<\/span>\r\n    <span class=\"nx\">root_block_device<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"nx\">volume_type<\/span>           <span class=\"p\">=<\/span> <span class=\"s2\">\"gp3\"<\/span>\r\n        <span class=\"nx\">volume_size<\/span>           <span class=\"p\">=<\/span> <span class=\"mi\">20<\/span>\r\n        <span class=\"nx\">delete_on_termination<\/span> <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>\r\n\r\n        <span class=\"nx\">tags<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\r\n            <span class=\"nx\">Name<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"dev.example.com\"<\/span>\r\n        <span class=\"p\">}<\/span>\r\n    <span class=\"p\">}<\/span>\r\n\r\n    <span class=\"nx\">tags<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"s2\">\"Name\"<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"dev.example.com\"<\/span>                                 <span class=\"c1\"># \u4e3b\u306b\u30db\u30b9\u30c8\u540d\u3068\u304b\u3092\u8a18\u8f09 <\/span>\r\n    <span class=\"p\">}<\/span>\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<p>\u5c31\u53ef\u4ee5\u521b\u5efa\u5b9e\u4f8b\u4e86\u3002\u6b64\u5916\uff0c\u5982\u679c\u5b58\u5728\u73b0\u6709\u8d44\u6e90\uff0c\u53ef\u4ee5\u5728\u4e0a\u8ff0terraform\u4e4b\u540e\u7f16\u5199\u8fd9\u6837\u7684\u4ee3\u7801\u3002<\/p>\n<pre class=\"post-pre\"><code>terraform import <span class=\"o\">[<\/span>\u30e2\u30b8\u30e5\u30fc\u30eb\u540d] <span class=\"o\">[<\/span>\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9ID]<span class=\"sb\">`<\/span>\r\n<span class=\"c\"># \u4f8b)<\/span>\r\n<span class=\"c\"># terraform import module.module_name.aws_instance.ec2-example-com i-xxxxxxxx<\/span>\r\n<span class=\"c\"># \u3068\u3044\u3046\u611f\u3058\u3002<\/span>\r\n<\/code><\/pre>\n<h3>\u5b89\u5168\u7ec4<\/h3>\n<pre class=\"post-pre\"><code><span class=\"k\">resource<\/span> <span class=\"s2\">\"aws_security_group\"<\/span> <span class=\"s2\">\"default-securitygroup\"<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nx\">name<\/span>        <span class=\"p\">=<\/span> <span class=\"s2\">\"hogehoge-securitygroup\"<\/span>                              <span class=\"c1\"># SecurityGroup\u540d\u3092\u8a18\u8f09\u3002\u78ba\u304b\u3042\u3068\u3067\u5909\u66f4\u3057\u3088\u3046\u3068\u601d\u3046\u3068\u4f5c\u308a\u76f4\u3055\u308c\u308b\u3088\u3046\u306a\u6c17\u304c\u3059\u308b\u306e\u3067\u6ce8\u610f<\/span>\r\n    <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"attach all ec2\"<\/span>                                      <span class=\"c1\"># \u8aac\u660e\u3092\u66f8\u304f<\/span>\r\n    <span class=\"nx\">vpc_id<\/span>      <span class=\"p\">=<\/span> <span class=\"s2\">\"var.vpc_id\"<\/span>                                          <span class=\"c1\"># \u5909\u6570\u5316\u3057\u3066\u308b\u3068\u697d\u3002<\/span>\r\n\r\n    <span class=\"c1\"># ingress \u306f\u5916\u304b\u3089\u306e\u901a\u4fe1(inbound)\u306e\u8a31\u53ef\u8a2d\u5b9a<\/span>\r\n    <span class=\"nx\">ingress<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"nx\">description<\/span>     <span class=\"p\">=<\/span> <span class=\"s2\">\"\"<\/span>                                            <span class=\"c1\"># \u8aac\u660e<\/span>\r\n        <span class=\"nx\">from_port<\/span>       <span class=\"p\">=<\/span> <span class=\"mi\">22<\/span>                                            <span class=\"c1\"># \u4f55\u756a\u30dd\u30fc\u30c8\u304b\u3089\u4f55\u756a\u30dd\u30fc\u30c8\u307e\u3067\u7a7a\u3051\u308b\u306e\u304b\u3092\u6307\u5b9a<\/span>\r\n        <span class=\"nx\">to_port<\/span>         <span class=\"p\">=<\/span> <span class=\"mi\">22<\/span>                                            <span class=\"c1\"># \u4eca\u56de\u3067\u3044\u3046\u306822\u756a\u30dd\u30fc\u30c8\u306e\u307f\u7a7a\u3051\u3066\u3044\u308b<\/span>\r\n        <span class=\"nx\">protocol<\/span>        <span class=\"p\">=<\/span> <span class=\"s2\">\"tcp\"<\/span>\r\n        <span class=\"nx\">cidr_blocks<\/span>     <span class=\"p\">=<\/span> <span class=\"p\">[<\/span> <span class=\"nx\">xxx<\/span><span class=\"p\">.<\/span><span class=\"nx\">xxx<\/span><span class=\"p\">.<\/span><span class=\"nx\">xxx<\/span><span class=\"p\">.<\/span><span class=\"nx\">xxx<\/span><span class=\"err\">\/<\/span><span class=\"mi\">32<\/span><span class=\"p\">,<\/span> <span class=\"nx\">yyy<\/span><span class=\"p\">.<\/span><span class=\"nx\">yyy<\/span><span class=\"p\">.<\/span><span class=\"nx\">yyy<\/span><span class=\"p\">.<\/span><span class=\"mi\">0<\/span><span class=\"err\">\/<\/span><span class=\"mi\">24<\/span> <span class=\"p\">]<\/span>      <span class=\"c1\"># Cidr\u3067\u6307\u5b9a\u3057\u305f\u308a1\u3064\u306eIP\u3092\u6307\u5b9a\u3057\u3066\u7a7a\u3051\u308b\u3053\u3068\u304c\u3067\u304d\u308b<\/span>\r\n    <span class=\"p\">}<\/span>\r\n\r\n    <span class=\"c1\"># egress\u306f\u5185\u304b\u3089\u306e\u901a\u4fe1(outbound)\u8a31\u53ef\u8a2d\u5b9a<\/span>\r\n    <span class=\"c1\"># \u57fa\u672c\u7684\u306bingress\u3068\u4f3c\u3066\u3044\u308b\u306e\u3067\u5272\u611b<\/span>\r\n    <span class=\"nx\">egress<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"nx\">from_port<\/span>       <span class=\"p\">=<\/span> <span class=\"mi\">0<\/span>\r\n        <span class=\"nx\">to_port<\/span>         <span class=\"p\">=<\/span> <span class=\"mi\">0<\/span>\r\n        <span class=\"nx\">protocol<\/span>        <span class=\"p\">=<\/span> <span class=\"s2\">\"-1\"<\/span>\r\n        <span class=\"nx\">cidr_blocks<\/span>     <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"s2\">\"0.0.0.0\/0\"<\/span><span class=\"p\">]<\/span>\r\n    <span class=\"p\">}<\/span>\r\n\r\n    <span class=\"c1\"># \u306a\u304f\u3066\u3082\u3044\u3044<\/span>\r\n    <span class=\"nx\">tags<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"s2\">\"Name\"<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"hogehoge\"<\/span>\r\n    <span class=\"p\">}<\/span>\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<p>\u60a8\u53ef\u4ee5\u6839\u636e\u4e0a\u8ff0\u5199\u6cd5\u5927\u81f4\u521b\u5efa\u5b89\u5168\u7ec4\u3002<br \/>\n\u800c\u4e14\uff0c\u5982\u679c\u6709\u73b0\u6709\u8d44\u6e90\uff0c\u5728\u4e0a\u8ff0\u7c7b\u4f3c\u7684\u65b9\u5f0f\u4e0b\uff0c\u53ef\u4ee5\u7f16\u5199terraform\u3002<\/p>\n<pre class=\"post-pre\"><code>terraform import <span class=\"o\">[<\/span>\u30e2\u30b8\u30e5\u30fc\u30eb\u540d] <span class=\"o\">[<\/span>\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30b0\u30eb\u30fc\u30d7ID]\r\n<span class=\"c\"># \u4f8b)<\/span>\r\n<span class=\"c\"># terraform import module.module_name.aws_security_group.default-securitygroup sg-xxxxxxxx<\/span>\r\n<span class=\"c\"># \u3068\u3044\u3046\u611f\u3058\u3002<\/span>\r\n<\/code><\/pre>\n<hr \/>\n<h3>\u8def\u753153<\/h3>\n<pre class=\"post-pre\"><code><span class=\"c1\"># Alias\u30ec\u30b3\u30fc\u30c9<\/span>\r\n<span class=\"k\">resource<\/span> <span class=\"s2\">\"aws_route53_record\"<\/span> <span class=\"s2\">\"ec2-example-com-Alias\"<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nx\">zone_id<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"xxxxxxxxxxxxxxxxxxxx\"<\/span>                               <span class=\"c1\"># \u30db\u30b9\u30c8\u30be\u30fc\u30f3ID\u3092\u8a18\u8f09<\/span>\r\n    <span class=\"nx\">name<\/span>    <span class=\"p\">=<\/span> <span class=\"s2\">\"alias.ec2.example.com\"<\/span>                              <span class=\"c1\"># \u767b\u9332\u3057\u305f\u3044\u30ec\u30b3\u30fc\u30c9\u540d<\/span>\r\n    <span class=\"nx\">type<\/span>    <span class=\"p\">=<\/span> <span class=\"s2\">\"A\"<\/span>                                                  <span class=\"c1\"># Alias\u30ec\u30b3\u30fc\u30c9\u306e\u30bf\u30a4\u30d7\u306fA\u30ec\u30b3\u30fc\u30c9\u306a\u306e\u3067A\u3092\u66f8\u304f\u3002<\/span>\r\n\r\n    <span class=\"nx\">alias<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"nx\">name<\/span>    <span class=\"p\">=<\/span> <span class=\"s2\">\"dualstack.hogehoge.ap-northeast-1.elb.amazonaws.com\"<\/span>  <span class=\"c1\"># ELB\u3084CloudFront\u306a\u3069\u306eDNS\u30ec\u30b3\u30fc\u30c9\u3092\u8a18\u8f09<\/span>\r\n        <span class=\"nx\">zone_id<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"xxxxxxxxxxxxx\"<\/span>                                        <span class=\"c1\"># ELB\u3068\u304b\u306e\u30db\u30b9\u30c8\u30be\u30fc\u30f3\u306f(\u78ba\u304b)\u56fa\u5b9a\u306a\u306e\u3067\u30b0\u30b0\u3063\u3066\u8abf\u3079\u308b<\/span>\r\n        <span class=\"nx\">evaluate_target_health<\/span> <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>\r\n    <span class=\"p\">}<\/span>\r\n<span class=\"p\">}<\/span>\r\n<span class=\"c1\"># A\u30ec\u30b3\u30fc\u30c9<\/span>\r\n<span class=\"k\">resource<\/span> <span class=\"s2\">\"aws_route53_record\"<\/span> <span class=\"s2\">\"ec2-example-com-A\"<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nx\">zone_id<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"xxxxxxxxxxxxxxxxxxxx\"<\/span>                               <span class=\"c1\"># \u30db\u30b9\u30c8\u30be\u30fc\u30f3ID\u3092\u8a18\u8f09<\/span>\r\n    <span class=\"nx\">name<\/span>    <span class=\"p\">=<\/span> <span class=\"s2\">\"a.ec2.example.com\"<\/span>                                  <span class=\"c1\"># \u767b\u9332\u3057\u305f\u3044\u30ec\u30b3\u30fc\u30c9\u540d<\/span>\r\n    <span class=\"nx\">type<\/span>    <span class=\"p\">=<\/span> <span class=\"s2\">\"A\"<\/span>                                                  <span class=\"c1\"># A\u30ec\u30b3\u30fc\u30c9\u306a\u306e\u3067A\u3092\u66f8\u304f\u3002<\/span>\r\n    <span class=\"nx\">records<\/span> <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"s2\">\"xxx.xxx.xxx.xxx\"<\/span><span class=\"p\">]<\/span>                                  <span class=\"c1\"># IP\u30a2\u30c9\u30ec\u30b9\u3092\u66f8\u304f<\/span>\r\n    <span class=\"nx\">ttl<\/span>     <span class=\"p\">=<\/span> <span class=\"s2\">\"300\"<\/span>\r\n\r\n<span class=\"p\">}<\/span>\r\n<span class=\"c1\"># CNAME\u30ec\u30b3\u30fc\u30c9<\/span>\r\n<span class=\"k\">resource<\/span> <span class=\"s2\">\"aws_route53_record\"<\/span> <span class=\"s2\">\"ec2-example-com-CNAME\"<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nx\">zone_id<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"xxxxxxxxxxxxxxxxxxxx\"<\/span>                               <span class=\"c1\"># \u30db\u30b9\u30c8\u30be\u30fc\u30f3ID\u3092\u8a18\u8f09<\/span>\r\n    <span class=\"nx\">name<\/span>    <span class=\"p\">=<\/span> <span class=\"s2\">\"cname.ec2.example.com\"<\/span>                              <span class=\"c1\"># \u767b\u9332\u3057\u305f\u3044\u30ec\u30b3\u30fc\u30c9\u540d<\/span>\r\n    <span class=\"nx\">type<\/span>    <span class=\"p\">=<\/span> <span class=\"s2\">\"CNAME\"<\/span>                                              <span class=\"c1\"># CNAME\u30ec\u30b3\u30fc\u30c9\u306a\u306e\u3067CNAME\u3092\u66f8\u304f\u3002<\/span>\r\n    <span class=\"nx\">records<\/span> <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"s2\">\"a.ec2.example.com\"<\/span><span class=\"p\">]<\/span>                                <span class=\"c1\"># CNAME\u5148\u3092\u66f8\u304f<\/span>\r\n    <span class=\"nx\">ttl<\/span>     <span class=\"p\">=<\/span> <span class=\"s2\">\"300\"<\/span>\r\n\r\n<span class=\"p\">}<\/span>\r\n<span class=\"c1\"># MX\u30ec\u30b3\u30fc\u30c9<\/span>\r\n<span class=\"k\">resource<\/span> <span class=\"s2\">\"aws_route53_record\"<\/span> <span class=\"s2\">\"ec2-example-com-MX-0\"<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nx\">zone_id<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"xxxxxxxxxxxxxxxxxxxx\"<\/span>                               <span class=\"c1\"># \u30db\u30b9\u30c8\u30be\u30fc\u30f3ID\u3092\u8a18\u8f09<\/span>\r\n    <span class=\"nx\">name<\/span>    <span class=\"p\">=<\/span> <span class=\"s2\">\"a.ec2.example.com\"<\/span>                                  <span class=\"c1\"># \u767b\u9332\u3057\u305f\u3044\u30ec\u30b3\u30fc\u30c9\u540d<\/span>\r\n    <span class=\"nx\">type<\/span>    <span class=\"p\">=<\/span> <span class=\"s2\">\"MX\"<\/span>                                                 <span class=\"c1\"># MX\u30ec\u30b3\u30fc\u30c9\u306a\u306e\u3067MX\u3092\u66f8\u304f\u3002<\/span>\r\n    <span class=\"nx\">records<\/span> <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"s2\">\"0 mail.ec2.example.com\"<\/span><span class=\"p\">]<\/span>                           <span class=\"c1\"># Priority\u3068\u30ec\u30b3\u30fc\u30c9\u3092\u66f8\u304f<\/span>\r\n    <span class=\"nx\">ttl<\/span>     <span class=\"p\">=<\/span> <span class=\"s2\">\"300\"<\/span>\r\n\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<p>\u53ef\u4ee5\u5927\u81f4\u521b\u5efa\u5b89\u5168\u7ec4\u3002<br \/>\n\u6b64\u5916\uff0c\u5982\u679c\u5b58\u5728\u73b0\u6709\u8d44\u6e90\uff0c\u53ef\u4ee5\u5728\u4e0a\u8ff0\u7684terraform\u4ee3\u7801\u4e4b\u540e\u8fdb\u884c\u7f16\u5199\u3002<\/p>\n<pre class=\"post-pre\"><code>terraform import <span class=\"o\">[<\/span>\u30e2\u30b8\u30e5\u30fc\u30eb\u540d] <span class=\"o\">[<\/span>\u30be\u30fc\u30f3ID_\u30ec\u30b3\u30fc\u30c9\u540d_\u30ec\u30b3\u30fc\u30c9\u30bf\u30a4\u30d7_]\r\n<span class=\"c\"># \u4f8b)<\/span>\r\n<span class=\"c\"># terraform import module.module_name.aws_route53_record.ec2-example-com-Alias Z4KAPRWWNC7JR_dev.example.com_Alias<\/span>\r\n<span class=\"c\"># \u3068\u3044\u3046\u611f\u3058\u3002<\/span>\r\n<span class=\"c\"># Route53\u306eimport\u304c\u4e00\u756a\u3081\u3093\u3069\u304f\u3055\u3044\u3002\u3002\u3002<\/span>\r\n<\/code><\/pre>\n<hr \/>\n<h3>\u603b\u7ed3<\/h3>\n<p>\u6211\u4ee5\u76f8\u5f53\u968f\u4fbf\u7684\u65b9\u5f0f\u5199\u4e86\u4e00\u4e0b\u6709\u5173terraform\u7684\u5199\u4f5c\u65b9\u6cd5\u3002\u6211\u5e0c\u671b\u8fd9\u5bf9\u5c06\u8981\u4f7f\u7528terraform\u6765\u8fdb\u884cIaC\u7684\u4eba\u6709\u6240\u5e2e\u52a9\u3002AWS\u548c\u516c\u5171\u4e91\u7684\u8d44\u6e90\u53d8\u66f4\u6709\u4e9b\u4e0d\u5bb9\u6613\u5ba1\u67e5\uff0c\u6709\u65f6\u53ea\u80fd\u901a\u8fc7\u622a\u56fe\u6765\u5907\u4efd\u3002\u6211\u60f3\u8fdb\u884cIaC\u5316\uff0c\u4e0d\u65ad\u8fdb\u884c\u8fd0\u7ef4\u9519\u8bef\u4fee\u6b63\u548c\u63d0\u9ad8\u6548\u7387\u3002\u8fd9\u662f\u524d\u4e00\u5929\u6211\u7684\u751f\u65e5\u7684\u65f6\u5019\u60f3\u5230\u7684\u3002<\/p>\n<hr \/>\n<p>\u53c2\u8003<\/p>\n<p>terraform &#8211; \u53d8\u5f62\u91d1\u521a<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5f00\u573a\u767d sh\u016b \u4eca\u5e74\u4e5f\u5230\u4e86\u5723\u8bde\u8282\u65e5\u5386\u6d3b\u52a8\u7684\u65f6\u5019\u3002\u56e0\u4e3a\u6211\u7684\u751f\u65e5\u662f12\u67086\u65e5\uff0c\u53ea\u8981\u5230\u4e86\u8fd9\u4e2a\u65e5\u671f\u5c31\u4f1a\u88ab\u6307\u5b9a\u3002 \u8fd9\u6b21\u6211 [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-48836","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u5c1d\u8bd5\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u914d\u7f6e - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/zh\/blog\/\u5c1d\u8bd5\u5c06aws\u8d44\u6e90\u8f6c\u6362\u4e3aterraform\u914d\u7f6e\u3002\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u5c1d\u8bd5\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u914d\u7f6e\" \/>\n<meta property=\"og:description\" content=\"\u5f00\u573a\u767d sh\u016b \u4eca\u5e74\u4e5f\u5230\u4e86\u5723\u8bde\u8282\u65e5\u5386\u6d3b\u52a8\u7684\u65f6\u5019\u3002\u56e0\u4e3a\u6211\u7684\u751f\u65e5\u662f12\u67086\u65e5\uff0c\u53ea\u8981\u5230\u4e86\u8fd9\u4e2a\u65e5\u671f\u5c31\u4f1a\u88ab\u6307\u5b9a\u3002 \u8fd9\u6b21\u6211 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/zh\/blog\/\u5c1d\u8bd5\u5c06aws\u8d44\u6e90\u8f6c\u6362\u4e3aterraform\u914d\u7f6e\u3002\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2023-04-27T22:53:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-29T20:00:18+00:00\" \/>\n<meta name=\"author\" content=\"\u96c5, \u609f\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u96c5, \u609f\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/\",\"name\":\"\u5c1d\u8bd5\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u914d\u7f6e - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\"},\"datePublished\":\"2023-04-27T22:53:02+00:00\",\"dateModified\":\"2024-04-29T20:00:18+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/f044a4b7fa4ee2701702942002419ca6\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/zh\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u5c1d\u8bd5\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u914d\u7f6e\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/f044a4b7fa4ee2701702942002419ca6\",\"name\":\"\u96c5, \u609f\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/e71a913e914f1aad1efc391f92084294bac54bc782acd289638580134cf667a6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/e71a913e914f1aad1efc391f92084294bac54bc782acd289638580134cf667a6?s=96&d=mm&r=g\",\"caption\":\"\u96c5, \u609f\"},\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/author\/yawu\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u5c1d\u8bd5\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u914d\u7f6e - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/zh\/blog\/\u5c1d\u8bd5\u5c06aws\u8d44\u6e90\u8f6c\u6362\u4e3aterraform\u914d\u7f6e\u3002\/","og_locale":"zh_CN","og_type":"article","og_title":"\u5c1d\u8bd5\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u914d\u7f6e","og_description":"\u5f00\u573a\u767d sh\u016b \u4eca\u5e74\u4e5f\u5230\u4e86\u5723\u8bde\u8282\u65e5\u5386\u6d3b\u52a8\u7684\u65f6\u5019\u3002\u56e0\u4e3a\u6211\u7684\u751f\u65e5\u662f12\u67086\u65e5\uff0c\u53ea\u8981\u5230\u4e86\u8fd9\u4e2a\u65e5\u671f\u5c31\u4f1a\u88ab\u6307\u5b9a\u3002 \u8fd9\u6b21\u6211 [&hellip;]","og_url":"https:\/\/www.silicloud.com\/zh\/blog\/\u5c1d\u8bd5\u5c06aws\u8d44\u6e90\u8f6c\u6362\u4e3aterraform\u914d\u7f6e\u3002\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2023-04-27T22:53:02+00:00","article_modified_time":"2024-04-29T20:00:18+00:00","author":"\u96c5, \u609f","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u96c5, \u609f","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"3 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/","url":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/","name":"\u5c1d\u8bd5\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u914d\u7f6e - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website"},"datePublished":"2023-04-27T22:53:02+00:00","dateModified":"2024-04-29T20:00:18+00:00","author":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/f044a4b7fa4ee2701702942002419ca6"},"breadcrumb":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/zh\/blog\/"},{"@type":"ListItem","position":2,"name":"\u5c1d\u8bd5\u5c06AWS\u8d44\u6e90\u8f6c\u6362\u4e3aTerraform\u914d\u7f6e"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website","url":"https:\/\/www.silicloud.com\/zh\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/f044a4b7fa4ee2701702942002419ca6","name":"\u96c5, \u609f","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/e71a913e914f1aad1efc391f92084294bac54bc782acd289638580134cf667a6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e71a913e914f1aad1efc391f92084294bac54bc782acd289638580134cf667a6?s=96&d=mm&r=g","caption":"\u96c5, \u609f"},"url":"https:\/\/www.silicloud.com\/zh\/blog\/author\/yawu\/"},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e5%b0%9d%e8%af%95%e5%b0%86aws%e8%b5%84%e6%ba%90%e8%bd%ac%e6%8d%a2%e4%b8%baterraform%e9%85%8d%e7%bd%ae%e3%80%82\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/48836","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/comments?post=48836"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/48836\/revisions"}],"predecessor-version":[{"id":89552,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/48836\/revisions\/89552"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/media?parent=48836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/categories?post=48836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/tags?post=48836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}