Ansibleによる作業の自動化と効率化
弊社が構築・運用する自社およびお客様のサーバーにインストールしている
アプリケーション…Apache,BIND,OpenSSL,OpenSSHなど重要なものは
パッケージではなく最新のソースコードをダウンロード→コンパイルして
インストールしております。アプリケーションに脆弱性が発生され
最新版が公開されるとまずはテスト環境でインストールし問題なければ
本番サーバーへ展開していきます。影響のあるサーバーを優先して
更新していくのですが、台数が多いのですべて最新版になるまでには
他の作業の合間に作業を実施するので1ヶ月ほどかかる場合があります。
サーバーにリモートからログインして何度もコマンドを入力する…
という事を多数のサーバーで実施します。ほぼ同じ事の繰り返しです。
これを何とか自動化し効率化出来ないかと悩んでおりました。
以前から気になっており調べていたのですが、
どうやら「構成管理ツール」というのがあることがわかりました。
色々あるので悩みましたが、管理対象のサーバーにエージェントソフトを
インストールする必要の無い「Ansible」を使用する事にしました。
仕組みを簡単に説明すると…人間に変わってAnsibleのサーバーが
予め作成した設定ファイルに従い管理対象のサーバーへリモートで
ログインしてコマンドを実行してくれるというものです。
・Ansibleのコマンド1つで同時に複数のサーバーを変更出来る。
・機械なので人間のようにミスしない。
・作業時間が大幅に短縮される1ヶ月→数日
実際に使ってみたところ…Ansibleコマンドを実行して
しばらく他の作業をしていると…すでにサーバーが更新されています。
感動しました。今までの作業がいかに無駄であったかということが
思い知らされました。しかも作業ミスが無い。最高です。
これからは人間にしか出来ない事に作業を集中出来ます。
■ あとがき
そのうち人間にしか出来ないと思われていた事がAIが
忖度してやってくれるようになるのでしょうか?