LoginSignup
2
4

More than 5 years have passed since last update.

EC2+RDSの環境にAlfrescoを導入してみる

Last updated at Posted at 2018-02-14

参考記事

必要な情報の殆どを以下の記事から得ることができました。ありがとうございます。

構築環境

AWSリソース ソフトウェア バージョン
EC2 Ubuntu 16.04.3 LTS
RDS MySQL 5.6.37

WEBからダウンロードしたもの

  • Alfresco5.1のインストーラ
    Alfresco公式サイトよりlinux版を入手。

  • MySQLのJDBCドライバ
    tar.gzの方を入手。WEBからダウンロードする場合、Oracle IDの作成が必要だった。
    後から分かったが、EC2から以下のコマンドを実施しても入手できた。

$ sudo wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.45.tar.gz -P /opt

その後、EC2上に「/opt」を作成しダウンロードしたAlfresco5.1のインストーラとMySQLのJDBCドライバをアップロードした。

VPCについて

サブネット

  • パブリックサブネット 1個
  • プライベートサブネット 2個 (RDSを利用するために2個必要)

セキュリティグループ

  • EC2は8080ポートの開放が必要。

MySQLの設定

MySQLのRDSインスタンスを開始

コンソールから実施。

MySQLのRDSインスタンスにログイン

EC2からRDSに接続した。

$ mysql -u admin -p -h ${RDSのエンドポイント名}

MySQLの文字コードをUTF-8に設定

日本語対応にするためMySQLの文字コードをutf8に変更した。

デフォルトの文字コード

mysql> show variables like 'character%';
+--------------------------+-------------------------------------------+
| Variable_name            | Value                                     |
+--------------------------+-------------------------------------------+
| character_set_client     | utf8                                      |
| character_set_connection | utf8                                      |
| character_set_database   | latin1                                    |
| character_set_filesystem | binary                                    |
| character_set_results    | utf8                                      |
| character_set_server     | latin1                                    |
| character_set_system     | utf8                                      |
| character_sets_dir       | /rdsdbbin/mysql-5.6.37.R1/share/charsets/ |
+--------------------------+-------------------------------------------+
8 rows in set (0.00 sec)

mysql> 

RDSはAWSコンソール上のパラメータグループを作成し、作成したパラメータグループをRDSインスタンスに適用することで文字コードを設定する。
「latin1」が適用されている以下項目をutf-8に設定したパラメータグループを作成した。

  • character_set_server
  • character_set_database

パラメータグループを作成すると稼働中のRDSインスタンスに適用出来るようになった。
RDSインスタンスのパラメータグループを変更後、再起動実施。

mysql> show variables like 'char%';
+--------------------------+-------------------------------------------+
| Variable_name            | Value                                     |
+--------------------------+-------------------------------------------+
| character_set_client     | utf8                                      |
| character_set_connection | utf8                                      |
| character_set_database   | utf8                                      |
| character_set_filesystem | binary                                    |
| character_set_results    | utf8                                      |
| character_set_server     | utf8                                      |
| character_set_system     | utf8                                      |
| character_sets_dir       | /rdsdbbin/mysql-5.6.37.R1/share/charsets/ |
+--------------------------+-------------------------------------------+
8 rows in set (0.00 sec)

mysql> 

文字コードを変更できた。

データベースの作成

mysql> create database alfresco character set utf8;

ユーザの作成と権限設定

mysql> grant all privileges on alfresco.* to 'alfresco'@'%' identified by '${パスワード}' with grant option;

JDBCドライバの解凍

解凍

$ tar -xzvf mysql-connector-java-5.1.45.tar.gz

Alfrescoのインストールに必要なライブラリ準備

このままAlfresco5.1のインストーラを起動すると以下のようなメッセージが表示される。

Some or all of the libraries needed to support LibreOffice were not found on your system: fontconfig libSM libICE libXrender libXext libcups libGLU libcairo2 libgl1-mesa-glx
You are strongly advised to stop this installation and install the libraries.
For more information, see the LibreOffice documentation at http://docs.alfresco.com/search/site/all?keys=libfontconfig

Do you want to continue with the installation? [y/N]:

LibreOffice(オンラインのプレビュー機能で使用)をサポートするために必要なライブラリが不足している際に表示するメッセージ。
不足するライブラリを導入するためにapt-getを実施。

$ sudo apt-get install libice6 libsm6 libxt6 libxrender1 libfontconfig1 libcups2 libglu1-mesa libcairo2 libgl1-mesa-glx

その後「mesa/libGL.so.1」のシンボリックリンクを作成

$ cd /usr/lib/x86_64-linux-gnu
$ sudo ln -s mesa/libGL.so.1 ./libGL.so.1
$ ls -l | grep libGL
lrwxrwxrwx  1 root root       15 Feb  8 17:29 libGL.so.1 -> mesa/libGL.so.1
lrwxrwxrwx  1 root root       15 Oct 24  2015 libGLU.so.1 -> libGLU.so.1.3.1
-rw-r--r--  1 root root   453352 Oct 24  2015 libGLU.so.1.3.1
$

参考記事:
https://community.alfresco.com/thread/200646-installing-alfresco-51

Ubuntu solution for alfresco5.2 and above:

sudo apt-get install libice6 libsm6 libxt6 libxrender1 libfontconfig1 libcups2 libglu1-mesa libcairo2 libgl1-mesa-glx
cd /usr/lib/x86_64-linux-gnu
ln -s mesa/libGL.so.1 ./libGL.so.1

actually all libraries locate in "mesa" folder.. but alfresco will not check this folder... so we need to link to the main folder... this resolves for the about error.. during alfresco installation in ubuntu..

Alfrescoインストール

$ sudo ./alfresco-community-installer-201707-linux-x64.bin

メモリが足りずインストールを進められなかった。

Please select the installation language
[1] English - English
[2] French - Francais
[3] Spanish - Espanol
[4] Italian - Italiano
[5] German - Deutsch
[6] Japanese - 日本語
[7] Dutch - Nederlands
[8] Russian - Русский
[9] Simplified Chinese - ?体中文
[10] Norwegian - Norsk bokmal
[11] Brazilian Portuguese - Portugues Brasileiro
Please choose an option [1] : 6

エラー: エラーが発生しました。
0.96 GB の RAM では、テストまたは本番環境で Alfresco Content Services を実行するには不十分です。Alfresco 
Content Services が正しく動作しないことがあり、その場合は正常に機能しません。サーバーの RAM を最低 2.0 GB 
にアップグレードしてください。推奨 RAM サイズは 4.0 GB です。
続けるには [Enter] キーを押してください : 

メモリ不足解消のためEC2のインスタンスタイプを「t2.medium」に変更。
その後は先に進むことが出来た。

Language Selection

Please select the installation language
[1] English - English
[2] French - Francais
[3] Spanish - Espanol
[4] Italian - Italiano
[5] German - Deutsch
[6] Japanese - 日本語
[7] Dutch - Nederlands
[8] Russian - Русский
[9] Simplified Chinese - ?体中文
[10] Norwegian - Norsk bokmal
[11] Brazilian Portuguese - Portugues Brasileiro
Please choose an option [1] : 6
----------------------------------------------------------------------------
ようこそ Alfresco Community セットアップウィザードへ。

----------------------------------------------------------------------------
インストールの種類

[1] 簡易 - デフォルトの設定を使ってインストールします。
[2] 詳細設定 - サーバーのポートとサービスのプロパティを設定できます。: 追加でインストールするコンポーネントを選択してください。
オプションを選択してください [1] : 2

----------------------------------------------------------------------------
インストールするコンポーネントを選択してください。準備ができたら“次へ“をクリックしてください 。

Java [Y/n] :

PostgreSQL [Y/n] :n

LibreOffice [Y/n] :

Alfresco Community : Y (Cannot be edited)

Solr1 [y/N] :

Solr4 [Y/n] :

Alfresco Office Services [Y/n] :

Web Quick Start [y/N] :

Google ドキュメントの統合 [Y/n] :

上記選択部分が正しいことを確認してください。 [Y/n]:

----------------------------------------------------------------------------
インストール先フォルダ

Alfresco Community をインストールするフォルダを選択してください。

インストール先フォルダ: [/opt/alfresco-community]:

----------------------------------------------------------------------------
データベースの設定

JDBC の URL: [jdbc:postgresql://localhost/alfresco]: jdbc:mysql://${RDSのエンドポイント}:3306/alfresco?useUnicode=yes&characterEncoding=UTF-8

JDBC ドライバー: [org.postgresql.Driver]: org.gjt.mm.mysql.Driver

Database name: [alfresco]:

ユーザー名: []:${作成したユーザ名}

パスワード: :${作成したユーザのパスワード}
確認: :
----------------------------------------------------------------------------
Tomcat のポート設定

Tomcat の設定パラメータを入力してください。

Web サーバードメイン: [127.0.0.1]:

Tomcat サーバー用ポート: [8080]:

Tomcat のシャットダウン用ポート: [8005]:

Tomcat の SSL ポート: [8443]:

Tomcat の AJP ポート: [8009]:

----------------------------------------------------------------------------
LibreOffice サーバーのポート

LibreOffice サーバーがリッスンするポート番号を入力してください。

LibreOffice サーバーのポート: [8100]:

----------------------------------------------------------------------------
FTP ポート

統合された FTP サーバーに使用するポート番号を選択してください。

ポート: [21]:

----------------------------------------------------------------------------
管理者のパスワード

Alfresco Content Services 管理者アカウントのパスワードを指定してください。

管理者のパスワード: :
パスワードの再入力: :
----------------------------------------------------------------------------
サービスとしてインストールする

Alfresco Community をサービスとして登録すると、マシンの起動時に自動的に Alfresco Community が開始されます。

Alfresco Community をサービスとしてインストールしますか? [Y/n]:


----------------------------------------------------------------------------
警告

この環境は Alfresco Content Services
を適切に実行するのに十分な構成ではありません。インストールする前に、以下の問題をチェックしてく ださい。

これらの問題があっても Alfresco Content Services
は機能しますが、一部の製品機能が使用できないか、システムが適切に動作しない場合があります。

Not enough system RAM available
 (4.0GB+): 3.85GB


続けるには [Enter] キーを押してください :

----------------------------------------------------------------------------
お使いのコンピュータに Alfresco Community をインストールする準備が整いました。

続けますか? [Y/n]:

----------------------------------------------------------------------------
しばらくお待ちください。 Alfresco Community をお使いのコンピュータにインストール中です。

 インストール中
 0% ______________ 50% ______________ 100%
 #########################################

----------------------------------------------------------------------------
セットアップウィザードによる Alfresco Community のインストールが完了しました。

Readme ファイルを表示 [Y/n]: n

Alfresco Community を起動する [Y/n]:

Using CATALINA_BASE:   /opt/alfresco-community/tomcat
Using CATALINA_HOME:   /opt/alfresco-community/tomcat
Using CATALINA_TMPDIR: /opt/alfresco-community/tomcat/temp
Using JRE_HOME:        /opt/alfresco-community/java
Using CLASSPATH:       /opt/alfresco-community/tomcat/bin/bootstrap.jar:/opt/alfresco-community/tomcat/bin/tomcat-juli.jar
Using CATALINA_PID:    /opt/alfresco-community/tomcat/temp/catalina.pid
Tomcat started.
/opt/alfresco-community/tomcat/scripts/ctl.sh : tomcat started
$

tomcat/lib配下にMySQLのJARファイルをコピー

$ sudo cp -p /opt/mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar /opt/alf*/tomcat/lib/

参考記事:
Configuring the MySQL database on Amazon RDS

5.Install the MySQL database connector.

   The MySQL database connector is required when installing with MySQL. The database connector allows MySQL database to talk to the server.

     a.Download mysql-connector-java-5.1.32 from the MySQL download site: http://dev.mysql.com/.
     b.Copy the JAR file into the /lib directory.

       For example, for Tomcat, copy the JAR file into the <TOMCAT_HOME>/lib directory.

ログイン

http://${IPアドレス}:8080/share/

「認証情報が認識されていないか、現在 Alfresco Content Services が使用できない可能性があります。」と表示されログイン出来ない場合はalfresco-community/alfresco.logを見る。
ERRORの中に「Context initialization failed」がある場合は、Alfrescono起動に失敗しており、以下の可能性がある。

  • ホスト名の名前解決に失敗している

hostsファイルを確認。

  • DBの接続に失敗している

例えば以下を確認。

  • tomcat/lib配下にMySQLのJARファイルがあるか
  • DBの接続情報に誤りはないか

参考記事:
Alfrescoにログインできない

その後の課題

  • S3も連携したい
  • EC2、RDS、S3の整合性のあるバックアップの取り方
2
4
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
2
4