DevOpsとは、アプリケーションを市場へ届ける革新的な手法で、組織のソフトウェア開発とシステム運用を融合させるものです。Tim Erlin氏が「The State of Security(ITセキュリティの現状)」で述べているように、クラウドにアプリケーションの組立てラインを構築することで、アプリケーション開発を迅速化し、よりスピーディにユーザへアプリケーションを届けられるようします。
DevOpsのプロセスは非常に集中的な作業が必要で、技術者は業務の効率化のための新しいツールを絶えず探しています。問題は、選択肢が広すぎることです。そこで今回は、時間の節約も兼ねて、DevOps推進チームをサポートする11の一般的なツールをご紹介しましょう。
1. Ansible(アンシブル)
Ansibleは、IT管理者の日常業務を自動化、簡素化します。Ansibleによって、組織のアカウンタビリティとITコンプライアンスが強化され、社員間の革新性と協調性が向上します。また、Ansibleよりさらに一歩進んだTowerには、コントロール、セキュリティなど、その他の追加機能が含まれます。
2. Docker(ドッカー)
Dockerは、どんなIT環境とも連携が可能で、フルスタックのアプリケーションポータビリティを提供するツールです。軽量のコンテナ型、よりセキュアでより安全なアプリケーションの構築が可能です。また、企業向けのEnterprise Editionでは、Windows と Linuxで動作するロケーションでのアプリケーション開発・生産のプロセスを効率化します。
Tripwire Enterpriseが、どのようにDockerコンテナを保護するかについてはこちら。
3. Chef(シェフ)
Chefは、ITインフラ構成管理を自動化するプラットフォームです。Chefサーバは、Chefが稼働している各ノードの詳細とともに「CookBook」と呼ばれる設定ファイルを格納します。組織の全てのオンプレミスとクラウド環境の運用を管理し、また、ワンクリックでコンプライアンス監査を実行できます。
TripwireとChefの具体的なコラボ事例は、こちら。
4. GIT
Gitは、バージョン管理システム(VCS)ツールで、開発者のプロジェクト管理の迅速化、効率化を促進します。Gitは無償のオープンソースで、誰でも自由に使えるメリットがあります。最大の特徴は、ブランチモデルの管理方法で、開発者は複数のローカルブランチを作成することが出来ます。作成したローカルブランチは、インフラ構成に合わせてマージ、追加作成、削除が可能です。
5. Jenkins(ジェンキンズ)
Jenkinsもまた開発者のソフトウェアの構築、デプロイ、自動化を支援する自動化サーバです。継続的インテグレーション(CI)サーバとして、または継続的デリバリー(CD)のために利用することが可能です。インストールと設定が容易なこのプラットフォームは、ほぼ全てのCIとCDのユーティリティータイプに1,000以上のプラグインを通じてカスタマイズすることが可能です。
6. JIRA(ジラ)
JIRAは、ソフト開発の共同作業を効率化するツールで、開発者一人ひとりのタスク分配を自動化します。JIRAは、開発チームの目標をリアルタイムで追跡し、データを視覚化します。これを活用して開発チームは、プロジェクト全体のパフォーマンス向上が図れます。JIRAは、3,000以上のアプリケーションとの同期が可能なためシステム連携の心配がありません。
7. New Relic(ニューレリック)
New Relicのユーザ数は16,000を超え、ITインフラ全体のモニタリングに利用されています。New Relicは、データの編成、可視化、評価を行う総合ツールで、開発者は言語や環境に関係なくアプリケーションの構築が可能です。アプリケーションはダッシュボードによる管理が可能で、組織の技術スタックをどう最適化するかを判断するために有益な情報が得られます。
8. SolarWinds(ソーラーウィンズ)
SolarWindsは、システム管理のトータルセットを提供し、組織のIT環境を管理するツールです。顧客数は25万を超え、事業成長に伴うコスト削減、スケーラビリティの改善、事業発展に利用されています。SolarWindsは特にネットワーク管理、ITセキュリティとコンプライナス、そしてクラウド監視については約30もの異なるソリューションを提供していることが特徴です。
9. Splunk(スプランク)
Splunkは、セキュリティ、データインテリジェンス、およびユーザの行動分析を中心としたソリューションを提供するプラットフォームです。Splunkの実装はカスタマイズが可能で、何百にも及ぶ豊富なアプリケーションが、Splunkとそのパートナー会社、そしてSplunkベースのコミュニティから直接提供されています。フォーチュン100の内85社が、Splunkをセキュリティの最後の砦として活用していることからも、その利便性の高さがうかがえます。
SplunkとTripwire Enterpriseを併用する方法についてはこちら。
10. Tripwire Enterprise(トリップワイヤ エンタープライズ)
Tripwire EnterpriseはDevOpsに対応、ファイル整合性機能を使えば、ファイル変更の検知と判断が可能です。それによって組織はファイルのセキュリティリスクに対する優先順位付けが可能で、セキュリティ構成の完全性が保証されます。
セキュリティコントロールをビルドインしたSaaSをご希望の場合は、ExpertOpsをご利用頂けます。
11. Visual Studio(ビジュアルスタジオ)
Visual Studioの開発環境を用いれば、コンピュータープログラムの作成が可能です。Windows、Mac、Android、IoS向けのみならず、ウェブやクラウド向けアプリケーションとサービスの開発に利用できます。IDEは、ソフトウェア開発から運用ライフサイクルまでトータルでサポートし、開発者のプログラムコードの作成、デバッグやテスト、そして製品リリースを促進します。
DevOps ツールと文化をバランスよく取り入れる
ツールは、ソフトウェア開発の効率化において欠かせないものですが、それが有効かどうかは、DevOpsの文化とセキュリティーのバランス次第です。このバランスがよくとれていれば、組織の運用と開発を再定義し、バラバラな部門間の連携強化、組織の成長拡大が見込まれ、目標に対する先見性が生まれます。このようなツールと文化のバランスのとれた融合は、まさにDevSecOpsとDevOpsが目指すものなのです。