以前、Terraform を使用して Proxmox 仮想マシンをデプロイする方法についての記事を書きました。それは、Core i7-8700 + 64G Homelab 上に構築された仮想マシン環境であり、常に私の実験環境となっていました。昨年 Microsoft MVP に参加して Azure クレジットを取得するまでは、特に最近はマルチクラスター環境でテストを行うことが多いため、より多くのリソースが必要になったり、イメージが頻繁にプルされたりするときには Azure 仮想マシンを使用することを選択しました。 Azure 上で仮想マシンを作成するときは、Web ページ CLI から始めましたが、複雑な構成が必要な場合は Terraform を使用するようになりました。この記事では、Terraform を使用して Azure 仮想マシンの作成を構成する方法について説明します。 Terraform[1]は、インフラストラクチャ・アズ・コード・ソフトウェア・ツールです。 Terraform を使用すると、インフラストラクチャ (仮想マシン、ロード バランサ、データベースなどのクラウド リソースとローカル リソースを含む) の望ましい状態を記述するコードを記述し、クラウド リソースとローカル リソースを安全、柔軟、効率的に構築、変更、バージョン管理できます。 前提条件始める前に、次のものがあることを確認してください。
認証自動化したいので、最初のステップは認証の問題を解決することです。結局、毎回手動で認証を行うのは非現実的であり、怠け者の特性に合わないのです。 TerraformのAzureプロバイダー[4]は5つの認証方法[5]をサポートしています。ローカルでのみ使用するため、この記事では認証にAzure CLI [6]を使用します。 認証を有効にするには、次のコマンドを実行します。認証する前に、https://portal.azure.com/#settings/directory にアクセスしてテナント情報を取得してください。 az ログイン--テナント xxxx コマンドを実行すると、ページが自動的にブラウザにジャンプし、認証プロセスが完了します。 認証が成功すると、コマンドを通じてアカウント情報を表示できます。 az アカウント表示 複数のサブスクリプションがある場合は、現在のアカウントで使用されているサブスクリプションを設定する必要があります。 az アカウントセット--サブスクリプション 00000000-0000-0000-0000-0000-000000000000 コードこのスクリプトは GitHub に送信されており、https://github.com/addozhang/terraform-azure-sample にアクセスして入手できます。 コードをローカルに複製します。 gitクローンhttps://github.com/addozhang/terraform-azure-sample.git スクリプトは次の 2 つの部分で構成されます。
リソースグループを作成するリソース グループ ディレクトリに移動し、次のコマンドを実行して Terraform を初期化し、Azure プロバイダーをダウンロードします。 テラフォーム初期化 入力パラメータは variables.tf ファイルで定義されます: リソース グループ名と場所。次のコマンドを実行してリソース グループを作成します。作成時にパラメータを使用して名前と場所を指定することもできます。 コマンドを実行して、Terraform コードを確認します。 テラフォーム検証 コードを適用するには、次のコマンドを実行します。 # リソースグループディレクトリで実行 作成されたリソースを表示するには、terraform state list を使用します。または、terrafor show を使用して詳細なリソース情報を表示します。 terraform 状態リスト 仮想マシンの作成仮想マシンのディレクトリに入り、コマンドを実行して初期化します。 テラフォーム初期化 仮想マシンを作成するためのパラメータがさらにあります。具体的なパラメータ定義については、variables.tf を参照してください。 terraform.tfvars ファイルを通じてパラメータ値を設定できます。ここで、使用するサブスクリプション ID を指定する必要があります。 コードとパラメータのチェックを実行します。 テラフォーム検証 コマンドを実行して仮想マシンを作成します。 # 仮想マシンディレクトリで実行 たとえば、仮想マシンの数 vm_count を 3 に設定し、上記のコマンドを実行した後にリソースを確認します。 terraform 状態リスト terraform show コマンドを使用すると、パブリック IP アドレスなどのリソースに関する詳細情報を表示できます。 参考文献[1] テラフォーム: https://developer.hashicorp.com/terraform/intro [2] Terraform CLI: https://developer.hashicorp.com/terraform/downloads [3] Azure CLI: https://learn.microsoft.com/en-us/cli/azure/install-azure-cli [4] Azureプロバイダー: https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs [5] 5つの認証方法: https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs#authenticating-to-azure [6] Azure CLIメソッド: https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/guides/azure_cli |
<<: 【クラウドネイティブ】Apache Livy on k8s 解説と実践操作
>>: Kubernetes Ingress はどのように機能しますか?
Serverless は、新たに登場したサーバーレス アーキテクチャです。これにより、開発者は操作、...
かつては「コンテンツは王、外部リンクは皇帝」という言葉がありました。外部リンクはウェブサイトの重みを...
最近、IDCが発表した「中国のソフトウェア定義ストレージおよびハイパーコンバージド市場追跡調査レポー...
Google 検索では通常、句読点や一部の数学記号は無視されますが、最近検索アルゴリズムが変更され、...
月給5,000~50,000のこれらのプロジェクトはあなたの将来ですプロモーションの知識と専門スタッ...
ユーザー エクスペリエンスとは? Web サイトのユーザー エクスペリエンスは、特に 2013 年で...
多くの企業は、マルチクラウドとも呼ばれる複数のパブリック クラウド プロバイダーのクラウド コンピュ...
お金をかけずに Taobao オンライン ストアを開設することはほぼ不可能です。Taobao ストア...
記事「Baidu Weight」の計算方法と脆弱性分析では、AizhanのBaidu Weightと...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスプロモーションとトラフィ...
Greenvaluehost は 2003 年に設立されたアメリカの会社です。登録番号も調べてみまし...
みなさんこんにちは。私はppnbaのウェブマスターです。PPNBAは私が2006年から一生懸命に取り...
[51CTO.comからのオリジナル記事] 午後2時30分7月20日、「イノベーションと包摂」をテー...
会社のウェブサイトを引き継いだとき、リスクを十分に評価しなかったか、検索エンジンのペナルティ制限と強...
[[407592]]先ほど、Jenkins パイプラインを使用して Kubernetes アプリケー...