こんにちは。CData Software Japan リードエンジニアの杉本です。
今日はいくつかパターンのあるCDataSync構成方法の一つをご紹介します。
CDataSyncの構成方法
CDataSyncでは現在 .NET ベースの「Windows版」とJavaベースの「Cross-Platform版」、およびCross-Platformを予めAMIイメージとして提供している「Amazon AMI版」の3種類が提供されています。
https://www.cdata.com/jp/sync/
今回はその中でも「Cross-Platform版」を使って、自前でAWS EC2を構成し、展開する方法を紹介したいと思います。
なお、細かな構成方法は以下のヘルプにも掲載されています。
Cross-Platform版を構成するにあたって
Cross-Platform版は現在大きく分けて2種類の構成方法があります。
一つはCDataSyncに予め組み込まれている組み込みJetty サーバーを使うパターン
もう一つはユーザーが任意のJava Servlet コンテナ(Tomcat、JBoss、WebLogic、WebSphere、またはJetty)を使うパターンです。
CdataSyncをダウンロードすると、以下の2種類のファイルが混同されており、「setup.jar」を実行すればそのままマシンにCDataSyncがインストールされますし、
Tomcatなどに「datasync.war」を配置すれば、そのままその Java Servlet コンテナ上でCDataSyncが利用できるように展開されます。
今回は後者の任意のJava Servletコンテナに展開する例として「AWS EC2」のAmazon Linuxを立ち上げて、Tomcatを構成し、CDataSyncを展開する方法を紹介します。
手順
CDataSyncのダウンロード
まず、CDataSync本体を入手します。以下のURLからダウンロードに移動し「Cross-Platform版」をダウンロードしてください。
https://www.cdata.com/jp/sync/
ZIPファイルを解答すると、以下のファイルが展開されますので、前述の通り「datasync.war」ファイルをこの後利用します。
なお、EC2 にこの後このwarファイルをアップするのですが、今回はwgetコマンドでEC2上にダウンロードするので、予め私はAmazon S3にアップロードしておきました。
AWS EC2 Amazon Linux の立ち上げ
なお、今回は最小環境で構成しますが、必要な性能要件は利用するデータソースや頻度、求めるパフォーマンスによって異なります。
最低限必要な環境要件は以下のURLから確認してください。
http://cdn.cdata.com/help/ASE/jp/sync/Server-Administration.html
今回はベーシックな「Amazon Linux 2 AMI(HVM) SSD Volume Type」
無料利用枠の対象である「t2.micro」で立ち上げました。
環境構成で唯一注意したい点はセキュリティグループの設定で開けるポートです。8080ポートで接続することになるので、以下のようにカスタムTCPでポートを許可しておきましょう。
環境構成後、SSHで接続しますが、今回はお手軽な EC2 Instance Connect で行いました。
JDK Install
まず、JDKをインストールします。今回は手軽にインストールできる yum から「java-1.8.0-openjdk」をインストールしました。
sudo yum install -y java-1.8.0-openjdk
Tomcat Install
続いて、yumでJava Servlet コンテナとして利用する「tomcat」をインストールします。
sudo yum install tomcat
CDataSync
Tomcatをインストール後、tomcatのWebAppsフォルダにCDataSyncのwarファイルを配置します。
cd /usr/share/tomcat/webapps
前述の通り、あらかじめS3にアップロードしておいたので、wgetで取得しました。
sudo wget https://XXXXXX/datasync.war
最後にTomcat ユーザーにCData Sync へのアクセスを許容します。「conf/tomcat-users.xml」を編集し
sudo vi /usr/share/tomcat/conf/tomcat-users.xml
以下の行を追加します。
<user name="admin" password="admin" roles="cdata_admin,admin-gui,manager-gui,manager-status,manager-script,manager-jmx" />
以上で構成は完了です。
Tomcat 起動
あとはTomcatを起動して、アクセスするだけです。
sudo systemctl start tomcat
前述の通り、8080ポートを開けていたので、以下のようなURLでアクセスできます。
http://XXXXXX.ap-northeast-1.compute.amazonaws.com:8080/datasync
先程設定した Tomcat ユーザーでログインして利用できます。
その他
もし対象環境でSSL/TLSを利用したい場合は以下の設定も必要です。
http://cdn.cdata.com/help/ASE/jp/sync/Java-Edition.html#ssltls-%E3%81%AE%E6%9C%89%E5%8A%B9%E5%8C%96
おわりに
思いの外簡単にセットアップできることがわかってもらえたんじゃないでしょうか。
もちろん、AWS AMI版の場合は特にLinuxにアクセスする必要なく利用可能です。
皆さんの環境に合わせて構成してみてください。