ログイン / 登録 アカウント

自動化

Ansible で Windows を自動化する

Jump to section

Ansible では、Windows の運用管理やコア機能の実行 (セキュリティアップデートの適用や WinRM を使用したリモート管理など) を行うことができます。Ansible 自体は Linux® で実行する必要がありますが、Linux ターミナルの使い方を知らない場合も、Ansible を使用して Windows システムの管理と自動化を行うことが可能です。

Ansible は Windows をネイティブにサポートしており、Windows PowerShell Remoting を使用することで、Windows 管理者にも馴染みのある方法で Windows 管理を行えます。

エンタープライズ (大企業) での自動化を支援する機能として、Red Hat® Ansible® Automation Platform には、Microsoft Windows 環境の運用管理と自動化のための先進的ツールが含まれます。
Red Hat Ansible Automation Platform は、マルチベンダー環境におけるプロビジョニング、アプリケーションのデプロイ、構成管理の自動化に役立ちます。

Ansible で自動化できる Windows の管理操作

Red Hat Ansible Automation Platform の Windows サポートを使用すると、以下のことができます。

  • MSI のインストールとアンインストール
  • Windows 機能の有効化と無効化
  • Windows サービスの開始、停止、管理
  • ローカルユーザーとグループの作成と管理
  • Chocolatey パッケージマネージャーによる Windows パッケージの管理
  • Windows の更新の管理とインストール
  • リモートサイトからのファイルの取得
  • PowerShell スクリプトのプッシュと実行

下記のチェックリストではさらに詳しく、Red Hat Ansible Automation Platform で Windows システムを自動化する 10 の方法についてご紹介します。

Ansible で Windows ホストを管理する

構文ルール

Ansible を使用して Windows を管理するとき、Unix または Linux ホストに適用される構文とルールの多くは Windows にも適用できます。ただしコンポーネントについては、パスのセパレーターや OS 固有のタスクなど、いくつかの違いもあります。

WinRM の設定

Windows サーバーまたはクライアントに Ansible 制御マシンからアクセスできるように WinRM を設定する必要があります。 

開発環境またはテスト環境で Ansible による Windows 管理を始める場合は、PowerShell スクリプト ConfigureRemotingForAnsible が便利です。このスクリプトは WinRM を、対応するあらゆる Windows サーバーまたはクライアントターゲット上に構成します。

Ansible を使い始める

Ansible を使い始めるには、こちらの Windows 管理者向けのチュートリアルをご利用ください。

Windows 専用モジュール

Ansible モジュールのほとんどは Linux マシンと任意の Web サービス向けに作成されています。これらのモジュールは Python で記述され、そのほとんどは Windows では機能しません。

このため、Windows ホスト上での実行を目的とした、PowerShell で作成された Windows 専用モジュールが存在します。 

ユーザー固有のモジュールを作成したり Ansible Playbook を使用することで、Windows システムの自動化やタスクのオーケストレーションを行えます。Ansible Playbook は YAML 形式のファイルで、Playbook に含まれる一連の構成とタスクにより、Ansible、Windows、Linux ターゲットホストで最終状態を達成します。

 

Windows システムを自動化する方法

PowerShell

PowerShell は Windows に付属しているタスクベースのコマンドラインシェルおよびスクリプト言語です。 

Red Hat Ansible Automation Platform を使用すると、最新の Windows システムを自動化できます。.NET と DSC のあらゆる機能を自動化でき、他のスクリプト言語をインストールする必要はありません。

Windows Remote Management (WinRM)

WinRM は Microsoft が組み込みで提供している HTTP ベースのリモート管理テクノロジーです。ログインが非対話式であるため、ダブルホップ認証や Windows の更新など一部のタスクの実行は簡単ではありません。 

Red Hat Ansible Automation Platform を使えば、認証をコード化し、Windows で行うこれらの管理タスクを自動化できます。

アプリケーションのインストールと管理

Windows には統合されたパッケージ管理システムがなく、Microsoft Store を使用してアプリケーションの配信とメンテナンスを行います。Microsoft Store の自動化は簡単ではありませんが、 

Red Hat Ansible Automation Platform には Windows の基本的なパッケージ管理を自動化するモジュールがあります。また、Windows 向けのソフトウェア管理自動化ツール Chocolatey と連携して、冪等性のある自動パッケージ管理を行うこともできます。

Windows の更新

更新の管理は、継続的に対応しなくてはならないタスクの 1 つです。Windows システムのソフトウェアアップデートは Windows Update で提供され、多くの IT チームは Microsoft System Center Configuration Manager (SCCM) を使用して更新を管理しています。 

ところが、更新を自動化する場合、特に再起動が必要なケースでは SCCM の信頼性はそれほど高いとは言えず、メンテナンスの予定時間内に完了できなくなってしまうこともあります。 

Red Hat Ansible Automation Platform では Windows Update を使用して基本的な同期更新を実施できるため、自動更新の信頼性を高めることができます。途中で必要となる再起動を自動管理できるので、1 つの Ansible タスクで数百もの更新をシームレスにインストールできます。

 

Windows 自動化のトレーニングを受ける

コース:
Red Hat Ansible Automation Platform で Windows を自動化する

このトレーニングコースでは、Red Hat Ansible Automation Platform を使用して Windows Server での管理を自動化し、DevOps ワークフローに組み込めるようにする方法を学びます。 

Ansible を使用して Microsoft Windows システム用の自動化 Playbook を作成し、一般的なシステム管理タスクを大規模に、再現可能な方法で実行します。また、Red Hat Ansible Tower を使用して、中央の Web ベースのユーザー・インタフェースから Ansible Playbook を安全に管理および実行する方法を学びます。

 

事例:シーメンスが Windows 環境を自動化した方法

テクノロジー分野のグローバル企業であるシーメンスは、Red Hat Ansible Automation Platform を使用して、Windows ベースの公開鍵インフラストラクチャ (PKI) 環境を自動化しました。 

Ansible Automation Platform を実装することで、シーメンスの PKI チームは Ansible を Windows 上で使用して手動の運用管理タスクを自動化し、社内全体で通信セキュリティを向上させています。

 

Red Hat の自動化を選ぶ理由

Red Hat Ansible Automation Platform は IT 自動化のスケーリング、複雑なデプロイの管理、自動化の管理に役立ちます。ビジュアル・ダッシュボード、ロールベースのアクセス制御、Playbook、分析により IT インフラストラクチャを一元的に制御し、運用の複雑さを低減できます。

また、Red Hat Ansible Automation Platform は Forrester Research により 2020 年第 3 四半期の Forrester Wave™: Infrastructure Automation Platforms でリーダーに選出されています。

Ansible Automation Platform の明確な構文とタスクベースの性質により、サーバーの構成と管理や、アプリケーションのデプロイといったタスクをオーケストレーションし、必要なときに適切な順序で確実に実行することができます。

適切な自動化ソリューションを導入すれば、新しいアプリケーションやサービスの迅速な導入、IT インフラストラクチャの効率的な管理、アプリケーション開発の生産性向上が可能になります。

自動化に必要なプラットフォーム

Red Hat Ansible Automation Platform

大規模な IT 自動化を構築するためのシンプルなエージェントレス・プラットフォーム。ビジュアル・ダッシュボードやロールベースのアクセス制御などにより IT インフラストラクチャを一元的に制御できます。

Ansible での Windows 自動化についてさらに詳しく