SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

LINEフロントエンドレンジャーのWeb開発術

フロントエンド開発環境構築のためのAnsible入門

LINEフロントエンドレンジャーのWeb開発術 第7回

  • X ポスト
  • このエントリーをはてなブックマークに追加

 本連載はLINEのフロントエンドエンジニアのチームがWeb開発において注目・活用している技術を紹介します。今回は構成管理ツールの一つである「Ansible」を使って、開発環境構築を自動化する方法について簡単にご説明します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

フロントエンド開発現場の環境構築

 昨今の複雑化したWebフロントエンドの開発を行うには、テキストエディタのみならず、さまざまな開発ツールやミドルウェアを駆使する必要があります。

 必然的に、日常的に開発で使用するマシンの環境構築もまた複雑なものになりました。環境構築に時間を取られてしまったり、その時間を惜しんで、なかなかOSのメジャーアップデートやマシンのリプレイスに踏み切れなかったりする方も、多いのではないでしょうか。

 また、複数人のチームで連携して開発を進めるためには、メンバー同士で開発環境を共有する必要がありますが、前述の複雑化のこともあり、それらすべてを人の手で行うことは難しくなりつつあります。

 LINE社のフロントエンドエンジニアのチームでは、それらの問題を解決すべく、本稿で紹介する構成管理ツールであるAnsibleを活用し開発環境構築を自動化しています。

構成管理ツールという選択

 構成管理ツールとは、主にサーバーマシンの環境構築のために必要なファイルやコマンド群を管理し、実行を自動化するツールです。

 構成管理ツールというと、リモートサーバーや仮想環境のゲストマシンに環境構築を行うイメージが強いかと思いますが、ローカルの環境構築についても、特に初期状態のマシンに対しては運用しやすいツールです。初期構築の自動化は、新規メンバーの負担軽減や、マシンの移行を容易にするなど、多くのメリットがあります。

 また、多くの構成管理ツールはシェルスクリプトよりも簡潔な記法で、べき等性(注1)を保つことができるように作られているため、開発環境をあるべき状態に維持するための、継続的な管理に適しています。

注1

 ここでは、何回行っても同じ結果になること。

Ansibleとは

 構成管理ツールといえば、ChefBoxenPuppet)など、有力なツールがいくつかありますが、今回は、よりシンプルで手軽に扱えることで人気のある、Ansibleを利用して開発環境構築を行います。

 Ansibleは、ホストマシンで定義したPlaybookと呼ばれる実行タスクの一覧を、管理対象のサーバーに対して、ssh接続を通して実行します。Chefなどでは管理対象のサーバー側でもChefが実行できる環境が必要ですが、Ansibleの場合は、管理対象サーバー側では特に準備が必要ないため、シンプルではじめやすいところが人気の理由の一つとなっています。

 Ansible自体はPythonで記述されていますが、yaml形式でタスクを定義するため、使い始めるのに新たにプログラミング言語を習得する必要はありません。また、仮想環境のプロビジョニングツールとしてよく利用されるため、普段からVagrantなどを扱うような環境であれば、学習しておくことで役立つ場面は少なくありません。

次のページ
Ansibleのインストール

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
LINEフロントエンドレンジャーのWeb開発術連載記事一覧

もっと読む

この記事の著者

川崎 康平(LINE株式会社)(カワサキ コウヘイ)

デジタルマーケティングの代理店にて、プロダクトサイトのインタラクションやデジタルサイネージの制作に携わった後、現在はLINE株式会社のJavaScriptエンジニアとして、Webサービスの開発を担当。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/8954 2015/10/02 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング