超高速でチャットサーバーを起動! ngIRCd編|アドカレ2013 : CFn #8

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは。くろの(福田)です。

このエントリは『アドベントカレンダー2013:AWS CloudFormationビッグバンテンプレート』8日目の内容となります。今回は『ngIRCd』を超高速で構築してみたいと思います。

昨日7日目は、武川さんの s3fs編 でした。

IRCとは

まず、IRCに関して簡単にご紹介しておきます。

『Internet Relay Chat(インターネット・リレー・チャット、略称 : IRC)とは、サーバを介してクライアントとクライアントが会話をする枠組みの名称である。文章のみをやり取りして会話を行い、DCCなどを利用することでファイル転送も対応する。』 - Wikipediaより

正式名称がわかるとなるほどという感じですね。

ngIRCdとは

今回はIRCのサービスとして『ngIRC』を採用してみました。

フリーの軽量なIRCサーバーで、小規模なネットワークやプライベートネットワーク向けに作られています。業務用やパブリックな利用でのチャットサービスはたくさんあるので、プライベートにチャットサーバーを立ててみたいといった場合にはngIRCdは良いのではないでしょうか。ちなみに、筆者が好きなスタートレックのシリーズはNext GenerationとVoygerです。

公開テンプレート

では早速IRCサーバーを超高速起動してみましょう。起動前に準備するものは下記2点です:

  • KeyPair
  • ngIRCd サーバーのパスワード

まず、AWS Management Consoleにログインし、EC2管理画面を開き、KeyPairを用意します。新規作成する場合はKeyPair→[Create KeyPair]でKey pairファイルを作成しておきましょう。

ngIRCd 01

また、サーバーにログインする際のパスワードを決めておきます。それでは IRCサーバーを起動してみましょう

ngIRCd サーバーを起動

上記ボタンをクリックすると、AWS Management Consoleが開き、下記のようにテンプレートが指定された状態で表示されます。「Continue」ボタンをクリックします。

ngIRCd 02

テンプレートを起動すると、入力パラメータとして3つ求められます。IRCパスワード、インスタンスタイプ、キーペアです。

  • IRCPassword:IRCのパスワードです。任意の値を指定できます。初期値は111です。
  • Instance Type:初期値はt1.micro。サイズを変更する必要はあまりないかと思います。
  • KeyName:前の手順で用意したKeyPairの名前を指定します。

ngIRCd 03

パラメータを入力したら、「Continue」ボタンをクリックします。Tagを指定する画面はそのまま「Continue」ボタンをクリックします。

ngIRCd 04

確認画面が表示されるので、「Continue」ボタンをクリックします。

ngIRCd 05

スタックが作成されますので、暫く待ちます。スタック作成が完了すると、[Outputs]タブの欄に[IRCURL]が表示されるので、IPアドレスの部分をコピーしておいて下さい。

ngIRCd 06

LimeChatからのアクセス(Windows)

 それではWindowsからチャットサーバーにログインしてみましょう。

今回はチャットクライアントとしてLimeChatを利用します。

LimeChatを起動したら、サーバーを追加しましょう。

ngIRCd 07

メモっておいたチャットサーバーのIPアドレスとパスワードを指定します。また、ニックネーム、ログイン名も指定し、[OK]ボタンをクリックしましょう。

ngIRCd 08

サーバーが作成できたので、サーバーを右クリックし、[接続]を選択してサーバーにログインします。

ngIRCd 09

次に、チャンネルを作成します。チャットの部屋ですね。

ngIRCd 10

チャンネル追加画面が表示されるので、チャンネル名を指定します。チャンネル名は#から始めます。最後に[OK]ボタンをクリックします。

ngIRCd 11

チャンネルができたら、チャンネルを右クリックし、[入る]を選択しチャンネルに入ります。

ngIRCd 12

あとは他のユーザーが同様の手順でチャンネルに入ればチャットが出来ます!

まとめ

AWS CloudFormationビッグバンテンプレート、8日目をお送り致しました。チャットサーバーが超高速で起動して、すぐに利用することが出来ました。

明日9日目のテンプレートにも乞うご期待!!!