LoginSignup
4
3

More than 5 years have passed since last update.

Ansible RoleでNew Relic INFRASTRUCTUREのインストールを自動化

Last updated at Posted at 2017-10-31

はじめに

Amazon EC2インスタンスにNew RelicのINFRASTRUCTUREをインストールする場合、コマンドラインで実行してもそこまで手間ではないのですが、インスタンスの複数台環境などにおいては手作業だと手間がかかります。可能であれば、サクッと自動化して、インストールしたいところ。

そこで今回は、Ansibleを使ってEC2インスタンスへのNew Relic INFRASTRUCTUREエージェントインストールを自動化したいと思います。

幸いにもNew Relic INFRASTRUCTUREにはAnsible Roleが用意されておりますので、git cloneでダウンロードしてしまえばとても簡単にAnsibleによるエージェントインストールが可能です!GitHubのURLはこちら GitHub infrastructure-agent-ansible

また、まだNew Relicをアカウント作成されていない方はこちらから。

インストール手順

0. インストール準備

今回は下記の構成にて、Playbookを作成していきます。

  • 起動環境: AWS EC2
  • OS: Amazon Linux AMI release 2017.09
Ansible-Playbook階層
ansible-playbooks
├── roles
│   └── nrainfragent
├── hosts
│   └── local
├── setup-infra.yml

まずはAnsibleのインストールから。pipを使ってインストールします。

pip及びAnsibleのインストール
$ sudo easy_install pip
$ sudo pip install ansible

1. New Relic INFRASTRUCTURE Agentインストール用ロールのダウンロード

rolesディレクトリ配下にgithub上のINFRASTRUCTURE Agentインストール用ロールをダウンロードします。ダウンロード後、ディレクトリ名を"nrinfragent"に修正します。

$ cd roles
$ git clone https://github.com/newrelic/infrastructure-agent-ansible.git
$ mv infrastructure-agent-ansible nrinfragent

2. Hostsファイルの作成

今回はローカルホストに対して、Agentインストールを実行するため、Hostsファイル"local"作成します。

ansible-playbooks/hosts/local
[localhost]
127.0.0.1

3. Playbookの作成

最後にINFRASTRUCTUREエージェントのインストールに必要な情報やロールを記載したPlaybookを作成します。ライセンスキー(nrinfragent_license_key)の箇所にご自身のNew Relic License Keyを入力ください。今回インストールするEC2のOSはAmazon Linuxとなりますが、OS名のオプション(nrinfragent_os_name)には"redhat"を、OSバージョン(nrinfragent_os_version)には"6"と入力します。

ansible-playbooks/setup-infra.yml
---
- hosts: localhost
  roles:
    - role: nrinfragent
      nrinfragent_license_key: #ライセンスキーを入力
      nrinfragent_os_name: redhat
      nrinfragent_os_version: 6 

4. Playbookの実行

ここまでくれば3で作成したPlaybookを実行するのみです。管理者権限のオプション(-s)を付けるのをお忘れなく!

$ ansible-playbook -s setup-infra.yml

~~~略~~~

PLAY RECAP *********************************************************************
localhost                  : ok=9    changed=7    unreachable=0    failed=0

5. New Relic INFRASTRUCTURE画面で確認

Playbook実行が成功したら、New Relic Infrastructure画面で当該ホストが監視できていることを確認しましょう!

SnapCrab_NoName_2017-10-31_9-40-58_No-00.png

最後に

いかがでしたか?New Relic INFRASTRUCTUREエージェントのインストール用ロールを使用することで、非常に簡単にAnsibleによる自動エージェントインストールを行うことができるようになりました。他のロールと組み合わせて、インスタンス起動時にはエージェントインストール用のAnsibleが走るように設定するとデプロイの手間はかなり減りそうですね。
当社ではソフトウェア関連取組みの一環として、クラウド型パフォーマンスモニタサービス「New Relic」を提供しています。詳しくはこちらから。

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3