こんにちは。CData Software Japan リードエンジニアの杉本です。
今回は国産クラウドサービス、IDCFクラウド上にCData Sync の環境を構築する方法を紹介したいと思います。
IDCF クラウドとは?
IDCF クラウドはIDCフロンティアが提供する国産クラウドサービスです。仮想マシンやRDB、クラウドストレージサービスをお手頃な価格から利用することができます。
https://www.idcf.jp/cloud/idcfcloud.html
ちなみにIDCフロンティアではデータセンターサービスやプライベートクラウドのサービスも提供しています。今回はパブリッククラウドを利用していますが、用途や目的に応じて選択できるのが良いですね。
CData Sync とは?
CData Sync とは多様なSaaS、DB のデータをRDB やDWH に同期するELT ツールです。データパイプラインツールとも呼ばれます。400種類以上のデータソースをノーコードでDWHやRDBに同期できます。
https://www.cdata.com/jp/sync/
自由にホスティング環境を選べることが特徴で、Windows ServerやLinux環境など、お好みの環境にセットアップして利用できます。
今回はCData SyncのCross-Platform(Java)を使って、IDCFクラウド環境にセットアップしてみたいと思います。
CData Sync の準備
まずCData Sync のインストーラーをダウンロードしてきましょう。以下のリンクから「Cross-Platform(Java)」をダウンロードしておきます。
https://www.cdata.com/jp/sync/download/
ZIP ファイルがダウンロードされるので任意の場所に保存しておきましょう。
IDCF クラウドで仮想マシンの構成
続いて、IDCF クラウド環境で仮想マシンを構成します。
IDCF クラウドの管理画面に移動し、「コンピュート」を選択します。
ここから仮想マシンの作成を開始します。「仮想マシンの作成」をクリックし
以下のような内容で今回は作成します。検証環境のため、最小構成で構築しました。OSはCentOS 7.9 64-Bit を選択しています。
これで以下のように環境が構築できればOKです。
CData Sync の環境要件は以下のページを参考にしてみてください。
https://cdn.cdata.com/help/ASH/jp/sync/Starting-The-Server.html
ファイアウォールとポートフォワードの構成
続いてネットワーク周りを調整していきます。IDCFクラウドではIPアドレスにファイアウォールや仮想マシンへのポートフォワードの設定を追加します。
CData Sync ではデフォルトで8181ポートでWebサービスが立ち上がるので、SSHと合わせてこのポートへのポートフォワードの構成と、ファイアウォールの設定を調整します。
https://cdn.cdata.com/help/ASH/jp/sync/Java-Edition.html
対象のIPアドレスを選択し
まず、ファイアウォールにアクセス許可を追加します。SSH用の22ポートとCData Sync用の8181ポートを許可しました。
続いてポートフォワードです。先程開放したポートをそのまま作成した仮想マシンのポートにフォワードします。
CData Sync 環境構築
仮想マシンにSSHで接続できるようになったので、CData Sync 本体を仮想マシンにアップロードします。アプローチはなんでも構いませんが、今回はscpコマンドでアップロードしました。
scp -i C:\Work\IDCF\IDCF.txt C:\Work\IDCF\CDataSync.zip [email protected]:/root/
続いてSSHで仮想マシンにログインし、セットアップを進めます。
ssh -i C:\Work\IDCF\IDCF.txt [email protected]
「yum update」を実施したあと、CData Syncを動かすのに必要となるopen-JDKをインストールします。
yum update -y
yum install java-11-openjdk -y
JDKをインストールしたら、先程アップロードしたCDataSyncのZIPファイルを解凍し、javaコマンドで起動します。
unzip CDataSync.zip
java -jar sync.jar
以下のようにメッセージが表示されればOKです。
情報: Sync is now running. Please visit http://localhost:8181 to login.
対象のIPアドレスの8181ポートでアクセスしてみると、以下のようにCData Syncの画面が表示されました! あとは任意のユーザーを作成し
作成したユーザーでログイン
「30日の評価版をアクティベート」を実施するだけでOKです。これでIDCFクラウドの環境でCData Syncが使えるようになりました。
Salesforce のデータをIDCFクラウドのRDBにレプリケーションしてみる
せっかくなので、IDCFクラウドで提供されているRDBサービスと組み合わせてCData Syncを使ってみましょう。
以下のようにRDBを構成すると対象の仮想マシンからMySQLサービスが利用できるようになります。このRDB にCData Sync を使ってSalesforce のデータをレプリケーションしてみます。
CData Sync の「接続」画面に移動して、「Salesforce」と「MySQL」のコネクションをそれぞれ追加します。
Salesforce は以下のようにUserID・PWおよびセキュリティトークンを用いたBasic認証でアクセスします。なお、デフォルトではHTTPS化されていないので、OAuthは利用できません。注意しましょう。
MySQLの接続ではIDCFクラウドで構築したRDBの情報を設定します。
あとはジョブの画面から「データソース:Salesforce」、「同期先:MySQL」を選択したジョブを作成します。
ジョブにはタスクとして「Account:取引先」を追加しました。
あとは対象のタスクを選択して「実行」をクリックすれば、RDBにデータがレプリケーションされます。実際の運用時にはスケジュールを構成して利用してみてください。
おわりに
このようにCData Sync は様々な環境にレプリケーションサービスを構成して、データ分析基盤の構築をサポートします。
IDCFクラウドだけでなく、データセンターやプライベートクラウド環境に構成して、BigQuery などにデータをレプリケーションするようなことも可能です。
ぜひ30日間のトライアルで試してみてください。ご不明な点があれば、テクニカルサポートまでお気軽にお問い合わせください。
https://www.cdata.com/jp/support/submit.aspx
関連コンテンツ