筆者が実際に行った事例をご紹介したいと思います
Ansibleとは
システム設定やソフトウェアのインストールなどを自動化、効率化する構成管理ツールです
RedHat が開発(GUI版は有償)するオープンソースソフトです
ステージング環境
オープンシステムのサーバー(UNIX)更改にともない 商用 RHEL へ移行します
ステージング環境は、A,BおよびCの3環境があり、それぞれ用途に応じて、運転されます
特にA環境は、システム障害、広域災害など本番機が使えず、BCP(事業継続計画)が発動
されると、本番機のDB更新ログを読み込んで本番機へ切り替わります
PCに導入するソフトウェア
概ね開発で使用するものと同じソフトウェアを導入します
・テキストエディタ、ファイルの比較、アーカイブ・圧縮・解凍、サーバー接続・
ファイル転送
・DB検証に欠かせない、Oracle クライアント、検証ツール用のマイクロソフト Office
ステージング環境では以下のソフトウェアを導入します
・ジョブ監視、システム監視
プラットフォームの構築
Windows の自動化手順については、こちらを参照ください
1)開発用ソフトの大半は、インターネットからダウンロードしたフリーソフトです
配布元 Ansible サーバーにインストールするプログラムファイルを格納します
2)次に Ansible で提供される様々なモジュール、今回は Windows 版を使用し、
ターゲットPCにコピー(win_copy)、圧縮ファイルの解凍(win_unzip)、そして
インストールプログラムを実行(win_shell)します
3)DB検証用のソフトウェアは、商用のものを使用します
Ansible では、無人インストールする必要があるので、インストール時に必要な
指示を構成ファイル(config, response など)に設定します
4)Windows のDBインターフェース、ODBC の設定を追加します
従来コマンドは将来廃止されるので、PowerShell スクリプト言語を使います
成功と失敗
成功:同時に、PC5台の自動構築に成功しました
PCのスペックは、ビジネス向け一般的なものです
所要時間は、1時間超かかりましたが、ほとんどがソフトウェアの転送時間です
PC5台が、サーバーのソフトウェアに同時にアクセスするため、仕方ありません
失敗:PC1台で自動構築を検証していた際、20分頃 Ansible タスクがエラー
になりました
原因は、PCのスリープ設定が標準20分のままでした
筆者の所感
構築したプラットフォームは、今後のプロジェクト標準として使用されます
若干、やり残した部分はありますが、まったく初めての人でも扱えるようにしています
インフラ構築は、滅多に行わないので専任者がいなかったり、手引きがどこにあるのか
それすら残っていない事が多々あります
Ansible は、RedHat が大規模サーバーの構築を自動化するために開発しています
今回、WindowsPC でも十分利用できることが確認できました