Amazon Marketplace

Version 25.3.9411


Amazon Marketplace


CData API Server Amazon マシンイメージ(AMI)は、API Server があらかじめ設定されたLinux ベースのインスタンスで、追加の設定はほとんど必要なくすぐに利用できます。これはAmazon Web Services Marketplace でCData API Server を検索して入手可能です。

CData API Server インスタンスを起動

  1. 右上のContinue to Subscribe をクリックしてAmazon マシンイメージ(AMI)をサブスクライブします。次に、利用規約に同意します。サブスクライブすると、API Server の新しいインスタンスを設定できます。

  2. 次のようにインスタンスを設定します:

    1. インスタンスの種類を選択します。

    2. セキュリティグループを設定します。API Server はデフォルトのHTTPS ポート(443)で動作します。API Server にアクセスするIP アドレスがこのポートに接続できることを確認してください。

    3. 新しいキーペアを作成するか、既存のものを選択します。必ずPEM ファイルを保存してください。PEM ファイルは、後にSSH(secure shell)を介してAMI にアクセスする際に使用します。

  3. Launch をクリックしてEC2 インスタンスを作成し、API Server を起動します。

CData API Server へブラウザからアクセス

API Server インスタンスを起動すると、Amazon EC2 管理コンソールにリストされます。ブラウザから以下のURL でAPI Server にアクセスできます:

      https://InstancePublicDNS

次のクレデンシャルを使用してログインします:

  • ユーザー:デフォルトのユーザー名はadmin です。

  • パスワード:パスワードは、インスタンスのランダムに生成されたインスタンスId に接頭辞APIServer24: を付けたものです。例えば、インスタンス識別子がi-1234a の場合、API Server にアクセスするための初期パスワードはAPIServer24:i-1234a になります。ログイン後、ブラウザの右上からadmin ユーザーのパスワードを変更できます。

これで、接続ページを参考に接続を作成および管理することができます。

AMI の管理

CData API Server AMI は、追加設定なしで動作します。次のセクションでは、API Server の管理タスクに関するAMI 固有の情報を提供します。

セキュアシェル(SSH)からインスタンスに接続する

サービスの高度な設定をする際に、EC2 インスタンスへのSSH 接続が役立ちます。CData API Server AMI は標準のUbuntu 22 仮想マシン(VM)上に構築されており、メインユーザーはubuntu です。インスタンス起動時に選択したキーペアを使用して、以下に示すようにSSH を介して接続できます:

ssh -i MyKeyPair.pem ubuntu@InstancePublicDNS

CData API Server サービスを制御

API Server は、AMI デプロイメントで(インプロセスで実行されるのではなく)systemd サービスとして実行されます。サービス定義ファイルは次の場所にあります:

etc/systemd/system/apiserver.service

API Server の停止、起動、および再起動には次のsystemd コマンドを使用します:

sudo systemctl restart apiserver
sudo systemctl stop apiserver
sudo systemctl start apiserver

Note:API Server アプリケーションに変更を加える前に、まずサービスを停止する必要があります。

インストールディレクトリ

すべてのAPI Server の設定とアプリケーションデータは、アプリケーションディレクトリに存在します。デフォルトのアプリケーション ディレクトリ(_ApplicationDirectory_)は次のとおりです:

/opt/apiserver

アプリケーションディレクトリの設定で説明するように、apiserver.properties ファイルでアプリケーションディレクトリのパスを設定できます。

db フォルダ

db フォルダは、デフォルトのDerby データベースのデータベースファイルを含みます。アプリケーションデータベースで説明するように、外部データベースを利用してもアプリケーションデータベースを設定できることに留意してください。

libs フォルダ

libs フォルダは、アプリケーションが外部リソースを読み込む場所であり、外部ドライバをー必要とするコネクタのドライバーのようなものです。このフォルダにJAR ファイルを配置してAPI Server を再起動すると、アプリケーションがこれらのリソースを読み込めるようになります。

アプリケーションディレクトリの設定

ApplicationDirectory の場所は、apiserver.jar ファイルの隣にあるapiserver.properties ファイルで設定できます。

ApplicationDirectory をデフォルト以外の場所に設定するには:

  1. apiserver.properties ファイル内で次のスニペットを探します:

    cdata.app.directory =
    
  2. 次の例に示すように、アプリケーションディレクトリの新しい場所へのパスを追加します:

    cdata.app.directory=/mnt/shared/apiserver
    

アプリケーションデータベース

デフォルトでは、API Server は接続、アプリケーション設定、および一般的なアプリケーションログにDerby データベースを使用します。このDerby データベースは、前のセクションで説明したように、アプリケーションディレクトリのdb フォルダにあります。

API Server を設定してMySQL のような外部データベースを使用できます。アプリケーションディレクトリと同様に、apiserver.properties ファイルでアプリケーションデータベースを設定します。

アプリケーションデータベースを設定するには:

  1. apiserver.properties ファイル内で次のスニペットを探します:

    cdata.app.db=
    
  2. 次の例のように、接続文字列を使用したいターゲットデータベースに設定します:

    cdata.app.db=jdbc:cdata:mysql:Server=MySQLServer;Port=3306;Database=mysql;User=User;Password=Password;useconnectionpooling=true
    
  3. API Server のサービスを再起動して、以上の手順の変更を有効にします。

ポートとSSL

デフォルトでは、API Server はポート8443でSSL 接続(HTTPS)をリッスンします。API Server は、アクセス許可の制限事項によりデフォルトのHTTPS ポート(443)にバインドできません。そのため、iptables のルールによりポート443からポート8443にトラフィックをリダイレクトします。標準的なHTTPS トラフィックであれば、API Server Web サーバーに到達するためにこれ以上のアクションは必要ありません。

API Server AMI には、SSL サーバーをホスティングする際に使用する自己署名証明書が含まれています。証明機関(CA)によって署名された証明書を使用してSSL サーバーをホストしなければならない場合は、直接CA に連絡して証明書を取得する必要があります。

プレーンテキスト / 非SSL ポート(例えば、HTTPS の代わりにHTTP)を追加したい場合は、apiserver.properties ファイルを編集してプレーンテキストのリスナーを有効化する必要があります。アクセス許可の制限事項により、リスナーはポート80に直接バインドできません。そのためポート8181を確立しますが、次の手順でポート80からポート8181にトラフィックを転送するiptables ルールを確立する必要があります:

  1. 次のコマンドを実行してAPI Server のサービスを停止します:

    sudo systemctl stop apiserver
    
  2. apiserver.properties ファイル内でhttp.port スニペットを探します:

    cdata.http.port=
    
  3. ポートを8181に設定して変更を保存します。

  4. ポート80からポート8181にトラフィックを転送するための新しいiptables ルールを作成します:

    iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8181
    /usr/libexec/iptables/iptables.init save
    
  5. API Server のサービスを再起動して、以上の手順の変更を有効にします。

アップグレード

api server をアップグレードするには、最新のAPI Server AMI の新しいインスタンスを起動する必要があります。新しいインスタンスを起動する前に、古いインスタンスからデータをコピーして、新しいインスタンスでアプリケーションの設定が保持されるようにする必要があります。

API Server には、設定された接続をアプリケーション上で簡単にエクスポートおよびインポートできる移行ツールが搭載されています。

移行ツールを使用するには:

  1. 設定画面で移行タブに移動します。

  2. エクスポートをクリックして、すべての設定(接続、ユーザー、および履歴)をZIP ファイルにエクスポートします。

  3. 同じ移行タブで、新しいインスタンスに設定をインポートします。

  4. インポートをクリックします。

  5. 手順2で作成したZIP ファイルを設定します。

新しいコネクタを追加

接続ページの手順に従ってUI から新しいコネクタを追加できます。ただし、次の手順に従ってインスタンスのコネクタを手動で更新、または追加しなければならない場合があります:

  1. SSH を使用してAMI に移動します。

  2. 次のコマンドを実行してJetty のサービスを停止します:

    sudo systemctl stop apiserver
    
  3. 新しいコマンドプロンプトを開き、次のscp コマンドを使用してコネクタをインスタンスにコピーします:

    scp -i ./FolderPath/MyKeyPair.pem ./FolderPath/cdata.jdbc.ProviderName.jar ubuntu@InstancePublicDNS:/home/ubuntu/cdata.jdbc.ProviderName.jar
    
  4. このコマンドを実行して、コネクタをlibs フォルダにコピーします:

    sudo cp ./home/ubuntu/cdata.jdbc.ProviderName.jar /opt/apiserver/libs/cdata.jdbc.ProviderName.jar
    
  5. 次のコマンドを実行してAPI Server のサービスを再起動します:

    sudo systemctl start apiserver