導入の背景
インフラ環境を作る際、開発環境と本番環境の構築を同じ手順で進めているにも関わらず作業時間が異なる上に手動での設定は漏れやミスなどが発生しやすい状況でした。またマネジメントコンソールを確認するといつの間にか謎のインスタンスが作成されており、誰がどのような目的で作成したのかを把握することが難しい状態が続いていました。
これらの問題を解消するにあたりIaC(Infrastructure as Code)技術の研究及びTerraformツールの導入を進めるに至りました。
今までの課題
- サーバー構築に時間が掛かる
- インフラ構築に専門知識を備えたSEが必要
- 様々なサーバー環境に対応する際に都度設定を行う為、効率が悪かった
- 誰がどんな設定をいつ行ったかなどの管理が難しかった
IaCとは
Infrastructure as CodeとはOS・ミドルウェアなどのインフラ構築・運用をコード化することです。 また人の手によって対応する際に人為的ミスが起こりやすく工数が増えコストが上がるなどの問題があります。 IaCで構築作業を自動化することによりミスや全体的なコストの削減に繋げることができます。
導入により解決可能な問題
専用のUIを通さない為、インフラの変更を自動化できます。
従来はインフラ要件を専門知識を備えたSEに指示を行い対応を行なっていましたが、IaCを導入することにより開発者自身が作業を実施することができます。 作業ステップを削減し尚且つコードを自動化することにより、作業人員の コストも削減することが可能となります。
ソフトウェアの開発と同じ手法でバージョン管理を行える
コード化することによりバージョン管理ソフトを利用して管理を行えるようになるのに加え普段使い慣れているソフトウェアを導入することで管理者を限定することなく複数の開発者で対応することできるようになりました。 またこれらのバージョン管理ソフトを使うことで誰が、いつ、どのサービスを追加したなど対応状況を共有・周知させることが可能となりました。
Terraformとは
TerraformはHashicorp社製のインフラ構築自動化ツールです。
主な特徴
- インフラ構築のコード化
- インフラ構築のバージョン管理
- 主要なIaaS系のプロバイダに対応
- 脆弱性の事前感知
主要なIaaS系プロバイダに対応
Terraformは主要なIaaS系のプロバイダに対応している為、構築環境を変更した場合もスムーズに移行作業を行うことができます。 ▼プロバイダ一部▼ AWS, Azure, AliCloud, Google Cloud, Oracle Cloud Platform, Oracle Public Cloud, VMware NSX-T, VMware vSphere…など
コードの読み書きがしやす
Terraformの大きな特徴としてコードの読み書きが行いやすい点が挙げられます。その為、経験が少ない開発者でも実装しやすく又開発者間でも情報の共有・理解がしやすくなります。
導入例
資料スライド
IAJにお任せください
- お客様のご希望、環境に合った開発プランをご提案いたします。
- IAJでは経験豊富な技術者がお客様が不安とされている技術面でサポートいたします。
- CI/CDを導入して開発、テスト、運用まで効率良い開発プランをご提案いたします。