さくらクラウドで CData Sync を構築する

by 杉本和也 | 2020年06月22日

こんにちは。CData Software Japan リードエンジニアの杉本です。

前回、さくらクラウドでCData API Serverを構成する方法を紹介しました。

www.cdatablog.jp

今回はそのさくらクラウドにCDataSyncを構成方法も紹介したいと思います。

自動データレプリケーション | CData Software Japan

f:id:sugimomoto:20200622105809p:plain

cloud.sakura.ad.jp

f:id:sugimomoto:20200617221944p:plain

CData Sync の構成方法

CData Sync はAPI Serverと同様に現在 .NET ベースの「Windows版」とJavaベースの「Cross-Platform版」、およびCross-Platformを予めAMIイメージとして提供している「Amazon AMI版」の3種類が提供されています。

https://www.cdata.com/jp/sync/www.cdata.com

f:id:sugimomoto:20200622105940p:plain

今回はその中の「Cross-Platform版」を使って、さくらクラウドのIaaSへ展開する方法を紹介します。

なお、細かな構成方法は以下のヘルプにも掲載されています。

cdn.cdata.com

Cross-Platform版を構成するにあたって

Cross-Platform版は現在大きく分けて2種類の構成方法があります。

一つはCData Sync に予め組み込まれている組み込みJetty サーバーを使うパターン

もう一つはユーザーが任意のJava Servlet コンテナ(Tomcat、JBoss、WebLogic、WebSphere、またはJetty)を使うパターンです。

CData Sync をダウンロードすると、以下の2種類のファイルが混同されており、「setup.jar」を実行すればそのままマシンにCData Sync がインストールされますし、

Tomcatなどに「datasync.war」を配置すれば、そのままその Java Servlet コンテナ上でCData Sync が利用できるように展開されます。

今回は後者の任意のJava Servletコンテナに展開する例としてさくらクラウドIaaSを立ち上げて、Tomcatを構成し、CData Sync を展開する方法で進めます。

手順

必要なもの

必要になるものは、さくらクラウドのアカウントとSyncの本体です。

  • さくらクラウドアカウント
  • CData Sync Cross-Platform版

さくらクラウドではIaaSを利用します。テスト用なので、構成は最小のものを利用しました。

f:id:sugimomoto:20200617221953p:plain

CData Syncのダウンロード

まず、CData Sync 本体を入手します。以下のURLからダウンロードに移動し「Cross-Platform版」をダウンロードしてください。

https://www.cdata.com/jp/sync/

ZIPファイルを解答すると、以下のファイルが展開されますので、前述の通り「datasync.war」ファイルをこの後利用します。

f:id:sugimomoto:20200622105955p:plain

なお、サーバーにこの後このwarファイルをアップするのですが、今回はwgetコマンドでインスタンス上にダウンロードするので、予め私はクラウドストレージにアップロードしておきました。もちろん、FTPやSCPでアップロードしてもかまいません。

パケットフィルタの作成

次にさくらクラウドにログインして、環境を構成していきます。

今回はTomcatを構成して、最終的に「8080」ポートでアクセスを行います。そのため、予めパケットフィルタで8080を許可するフィルタ条件を作成しておきましょう。

合わせて、SSH 用の22番ポートを自社のIPアドレスだけ許可し、それ以外をすべてクローズしました。

f:id:sugimomoto:20200618143500p:plain

さくらクラウドの IaaSを構成する

次にIaaSのインスタンスを構成していきます。

サーバ一覧画面に移動して「追加」をクリックし

f:id:sugimomoto:20200617222007p:plain

構成する環境の情報を入力します。今回は検証用途のため、コア数やメモリは最小のものを選択しています。運用環境の場合は、アクセス数などに応じて、選択してください。

アーカイブは「CentOS 7.8」を選択しました。yumからTomcatがインストールしやすいバージョンとして選んだだけなので、Tomcatのインストールが面倒で無い方は任意のOSを選んでかまいません。

f:id:sugimomoto:20200617222019p:plain

あとは「インターネットに接続」する構成を選択し、予め用意しておいたTomcat用のパケットフィルタを選択します。

f:id:sugimomoto:20200617222027p:plain

後ほどSSHでアクセスするので管理者パスワードもしくは公開鍵を指定しておきましょう。

f:id:sugimomoto:20200617222034p:plain

これで構成を行います。

f:id:sugimomoto:20200617222042p:plain

SSH でアクセス

構成が完了したら、対象のIPアドレスを指定して、SSHでアクセスします。

ssh [email protected]

ログインパスワードは先程指定した管理者パスワードを入力します。

必要なパッケージのインストール

それでは環境構築を進めていきましょう。まずyumをアップデートして

yum update

Tomcatとwgetをyumからインストールします。

sudo yum install tomcat
sudo yum install wget 

インストール完了後、tomcatのWebAppsフォルダにSyncのwarファイルを配置します。

cd usr/share/tomcat/webapps
sudo wget https://XXXXX/datasync.war

次に、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" />

Firewall の構成

続いて、TomcatのPort「8080」をFirewallが通過できるように、「tomcat.xml」を作成します。

cd /usr/lib/firewalld/services/
sudo touch tomcat.xml
sudo vi tomcat.xml

「tomcat.xml」の内容は以下のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>Apache Tomcat 8</short>
  <description>Apache Tomcat 8</description>
  <port protocol="tcp" port="8080"/>
</service>

あとは、先程作成したXMLをFirewallに登録して、リスタートすればOKです。

sudo firewall-cmd --zone=public --permanent --add-service=tomcat
sudo systemctl restart firewalld.service

tomcat の起動

それではTomcatを起動してみましょう。

sudo systemctl start tomcat

起動後、以下のURLでアクセスすることができます。

http://XXX.XXX.XXX.XXX:8080/datasync/

以下のように画面が表示され、ログインできれば作業完了です。

f:id:sugimomoto:20200622110019p:plain

ログイン後、忘れずにトライアルを有効化しておきましょう。

f:id:sugimomoto:20200622110026p:plain

おわりに

さくらクラウドはMariaDB・PostgreSQLのクラウドデータベースのサービスも提供されているので、CDataSyncを使ってそういったデータベースにレプリケーションも可能です。

f:id:sugimomoto:20200622110054p:plain

もちろん、RDB以外にも様々なNoSQL・DWHをサポートしているので、お好みのデータソースにレプリケーションを試してみてください。

https://www.cdata.com/jp/sync/#destinations

f:id:sugimomoto:20200622110100p:plain

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。