AmazonLinuxにConfluenceを入れてみました。
はじめに
ご機嫌いかがでしょうか。豊崎です。 「とよさき」を入力すると変換候補に「豊崎愛生」がでてきて困っています。
AtlassianのConfluenceをAmaznLinuxに入れてみる機会がありました。 非常に簡単に利用ができましたので、ご紹介したいと思います。
Confluenceとは
Confluenceは企業向けのWikiです。 社内のナレッジを蓄積、管理、整理して、ビジネスに役立てることができるツールです。
詳しくは公式サイトをご覧ください。
準備をしましょう
VPCにグローバルIPを持つEC2(AmazonLinux)と、 そのEC2から疎通ができるRDS(PostgreSQLにしました)を用意しましょう。 今回は証明書も使うのでACMで事前に用意をしておきましょう。
PostgreSQLの対応Versionはこちらを参照
いれてみました
Confluenceのインストール
それでは早速インストールをしていきましょう。 EC2にログインし、Confluenceインストーラをダウンロードします。
wget https://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-6.0.4-x64.bin #Atlassianからのインストーラーをダウンロードします。versionは読み替えてください。 chmod a+x atlassian-confluence-6.0.4-x64.bin sudo ./atlassian-confluence-6.0.4-x64.bin ・ ・ ・ This will install Confluence 6.0.4 on your computer. OK [o, Enter], Cancel Choose the appropriate installation or upgrade option. Please choose one of the following: Express Install (uses default settings) [1], Custom Install (recommended for advanced users) [2, Enter], Upgrade an existing Confluence installation [3] 2 Where should Confluence 6.0.4 be installed? [/opt/atlassian/confluence] #ここではEnterでデフォルトでインストールしました。 Default location for Confluence data [/var/atlassian/application-data/confluence] #ここではEnterでデフォルトでインストールしました。 Configure which ports Confluence will use. Confluence requires two TCP ports that are not being used by any other applications on this machine. The HTTP port is where you will access Confluence through your browser. The Control port is used to Startup and Shutdown Confluence. Use default ports (HTTP: 8090, Control: 8000) - Recommended [1, Enter], Set custom value for HTTP and Control ports [2] 1 Confluence can be run in the background. You may choose to run Confluence as a service, which means it will start automatically whenever the computer restarts. Install Confluence as Service? Yes [y, Enter], No [n] y Extracting files ...
これでインストーラーの実行が完了しました。
次にブラウザからセットアップを行なっていきます。 http://<EC2のグローバルip>:8090/ にアクセスします。
画面右上から言語:日本語を選択します。 Production Installation(日本語だとプロダクション版のインストール)を選択し次へを押します。 ※Trial Installation(日本語だとトライアル版のインストール)を選択するとPostgreSQL on EC2として自動でインストールされるようです。
今回アドオンは選択せずに次へ
ライセンスキーのページになります。 今回は評価版ライセンスを取得して構築をしました。 (ライセンスの取得ページは割愛します)
データベースを選択します。 PostgreSQL用のJDBCドライバがバンドルされているので、 PostgreSQLを選択するとスムーズに構築ができます。
DBへの接続方法を選びます。 前述したJDBCドライバを使用して接続します。
次の画面では、 ドライバークラス名、データベースURL、ユーザ名、パスワードを入力します。 線を引いた箇所をRDSのエンドポイント+接続Portに置き換えます。 ユーザ名、パスワードはRDSのユーザ名、パスワードを入力します。
そしてセットアップ完了です。
ELBを経由した接続
ELBをEC2の前に置いてACMを利用した接続ができるようにしてみましょう。 ELBを配置することで拡張性も高まります。
公式サイトを確認すると、ELBを利用する際の手順が用意してありましたので、手順に沿って設定を行なっていきたいと思います。
ALBの使用を推奨しているようなので、今回はALBを使用します。 AWSマネジメントコンソールからALBを作成していきます。
ALBの名前、スキーム、IPアドレスタイプを指定し、リスナーはhttpsとしましょう。 配置するサブネットを選択し、次に進みます。
ACMで作成しておいた証明書を選択しましょう。
セキュリティグループではインターネットからのhttps接続を許可してください。
ターゲットグループの設定を行います。ALBからEC2への通信は8090とします。 (ターゲットを2つ以上指定する場合はALB作成した後に追加します。)
ターゲットの登録では、ターゲットとなるEC2を選択します。
これでALBができるので、 Route53でエンドポイントに対してエイリアスを使ってAレコードの登録を行っておきます。 今回はwww.xxxxxx.com <=>ALBエンドポイントとしました。 (外部のDNSであればALBエンドポイントに対してCNAMEの設定を行いましょう。)
httpsでの接続の際には、Confluenceの設定ファイルの修正が必要になります。
sudo /opt/atlassian/confluence/bin/stop-confluence.sh sudo cp /opt/atlassian/confluence/conf/server.xml /opt/atlassian/confluence/conf/server.xml.org #backupは大事です sudo vi /opt/atlassian/confluence/conf/server.xml --- #変更前 <Server port="8000" shutdown="SHUTDOWN" debug="0"> <Service name="Tomcat-Standalone"> <Connector port="8090" connectionTimeout="20000" redirectPort="8443" maxThreads="48" minSpareThreads="10" enableLookups="false" acceptCount="10" debug="0" URIEncoding="UTF-8" protocol="org.apache.coyote.http11.Http11NioProtocol" /> ・ ・ ・ #変更後 <Server port="8000" shutdown="SHUTDOWN" debug="0"> <Service name="Tomcat-Standalone"> <Connector port="8090" connectionTimeout="20000" redirectPort="8443" maxThreads="48" minSpareThreads="10" enableLookups="false" acceptCount="10" debug="0" URIEncoding="UTF-8" protocol="org.apache.coyote.http11.Http11NioProtocol" proxyName="www.XXXXX.com" proxyPort="443" scheme="https" /> --- sudo /opt/atlassian/confluence/bin/start-confluence.sh #起動するまでしばらく待つ
httpsでの接続確認
ブラウザからhttpsで接続するとログイン画面が表示されることが確認できました。
さいごに
javaも、JDBCドライバ(PostgreSQLの場合)もインスートラにバンドルされているので、 非常に簡単にインストールが可能した。 ELBとACMを使えば利用者が増えた際の拡張性も確保でき、証明書(DV)も無料で利用することができます。 IPアドレスでの接続制限や、VPNの導入などと併用してセキュリティを確保しつつ、社内のナレッジ蓄積してをビジネスに活用していきましょう。
※参考 インストール手順 https://ja.confluence.atlassian.com/doc/installing-confluence-on-linux-143556824.html
自動起動 https://ja.confluence.atlassian.com/doc/start-confluence-automatically-on-linux-183148.html