olemyk.ansible_role_db2

DB2

IBM DB2をインストールするためのシンプルな役割

要件

DB2の圧縮コピーが必要です。この役割は、リモートURLからダウンロードすることも、Ansibleホストに存在するローカルコピーを使用することもできます。

ROOTアクセス

この役割は、rootアクセスでのみ使用できます。DB2はrootなしでもインストールできますが、インスタンスの作成などの多くの機能はrootとしてのみ利用できます。rootユーザーでインストールするか、sudoを使用して特権の昇格を行っていることを確認してください。

役割の変数

###DB2_BINARY

このハッシュは、DB2バイナリをリモートホストに送信する方法を制御します。

  • db2_binary.url: DB2ライセンスをダウンロードするためのURL(ローカルコピーを使用する場合は設定しないでください)
  • db2_binary.location: リモートファイルを保存するパス、またはURLが未定義の場合にファイルを取得する場所
  • db2_binary.dest: リモートホストでDB2を解凍する場所
db2_binary:
    url: https://mycompany.com/downloads/db2_11_5.tar.gz
    location: /ansible/files/db2_11.5.tar.gz
    dest: /tmp

DB2をリモートURLからダウンロードする方法はこちらで確認できます。

ローカルコピーを使用する場合は、このを参照してください。

###DB2_BINARY_LICENSE

Spectrum Scale DB2ライセンスパッケージ用:

  • db2_license_binary.url: DB2をダウンロードするためのURL(ローカルコピーを使用する場合は設定しないでください)
  • db2_license_binary.location: リモートファイルを保存するパス、またはURLが未定義の場合にファイルを取得する場所
  • db2_license_binary.dest: リモートホストでDB2を解凍する場所。
db2_license_binary:
  url: "https://mycompany.com/downloads/DB2_AWSE_Restricted_Activation_11.5.zip"
  location: "/download/installer/db2_license.tar.gz"
  dest: "/download/installer"

###DB2_CREATES

DB2のtar.gzは通常serverという名前のフォルダを作成しますが、異なるフォルダを作成するバイナリもあります。たとえば、DB2 Express Cはexpcという名前のフォルダを作成します。tar.gzが異なるフォルダを作成する場合は、この変数を変更してください。例:

db2_creates: 'expc'

###DB2_LICENSE_CREATES

DB2のtar.gzは通常awse_xという名前のフォルダを作成しますが、異なるフォルダを作成するバイナリもあります。tar.gzが異なるフォルダを作成する場合は、この変数を変更してください。例:

db2_license_creates: 'awse_o'

###DB2_PACKAGES

この役割がインストーラーを実行する前にインストールすべきパッケージのリスト。何をしているかわからない場合はデフォルトのままにしておいてください。

DB2はLinux上で正常に動作するためにいくつかのパッケージを必要とします。これについて詳しくはこちらをご覧ください。

###RESP

このハッシュはDB2インストールのカスタマイズに使用されます。

  • prod: インストールする製品
  • file: DB2をインストールする場所
  • lic_agreement: ライセンスを受け入れるか拒否する(拒否するとDB2はインストールされません)
  • install_type: インストールされる製品のカスタマイズ
resp:
   prod: "DB2_SERVER_EDITION"
   file: "/opt/ibm/db2/V11.1"
   lic_agreement: "ACCEPT" # ACCEPTまたはDECLINE
   install_type: "TYPICAL" # TYPICAL、COMPACT、CUSTOM
   install_tsamp: "NO"

DB2 Express-Cの場合(このファイルを確認):

 resp:
   prod: "EXPRESS_C"
   file: "/opt/ibm/db2/V11.1"
   lic_agreement: "ACCEPT" # ACCEPTまたはDECLINE
   install_type: "TYPICAL" # TYPICAL、COMPACT、CUSTOM

注意:この役割を使用することで、IBMライセンスに同意したことになります。

依存関係

なし

例のPlaybook

すべてのカスタムオプションは、examplesフォルダ内の例ファイルを通じて提供されます。

少なくともDB2の取得元を指定する必要があります。db2のダウンロード

- hosts: servers
  roles:
     - db2
  vars:
    db2_binary:
      location: /ansible/files/db2_11.1.tar.gz
      dest: /tmp

###インスタンスなしでDB2をインストールする

クラスターのフェイルオーバー展開などの特定のケースでは、DB2ソフトウェアのみをインストールし、インスタンスを作成しないことがあります。この場合、下記のようにcreate_instances: false変数を指定します。

vars:
  create_instances: false

完全な例はこちらです。

###カスタムインスタンスの作成

インスタンスはすべてのDB2デフォルトを使用して作成されますが、db2_instancesハッシュを使用してカスタマイズできます。

完全な例はこちらです。

db2_instances:
  - instance: "DB2INST"
    name: "myinstan" 
    group_name: "myinadm"
    fenced_username: "myfenc1"
    fenced_group_name: "myfadm1"

db2_instancesはインスタンスのリストで、複数作成できます。2つのインスタンスの例はこちらです。

###パラメータのカスタマイズ

グローバルとインスタンスの両方のパラメータをカスタマイズできます。

dbm_paramsハッシュを定義し、任意のkey: value DB2パラメータを設定します。キーは有効なDB2パラメータである必要があります。

db2_instances:
 - instance: "DB2INST"
   name: "myinstan" 
   group_name: "myinadm"
   fenced_username: "myfenc1"
   fenced_group_name: "myfadm1"
   dbm_params:
     intra_parallel: "YES"
     numdb: "20"

完全な例はこちらです。

###グローバルパラメータ

グローバルパラメータは、global_paramsハッシュを定義することで提供されます。

global_params:
    db2_antijoin: "YES"
    db2fcmcomm: "TCPIP4"

完全な例はこちらです。

###データベースの作成

デフォルトでは、この役割はデータベースを作成しません。作成したい場合は、ハッシュリストdatabasesを定義します。

完全な例はこちらです。

databases:
 - name: mydb
   instance: db2inst1
 - name: otherdb
   instance: db2inst2
   codeset: "UTF-8"
   territory: "en"
   pagesize: "16384"

免責事項

まだ作業が必要です。この役割がうまく機能する保証はありません。

開発

支援に興味がある場合は、問題を報告するか、プルリクエストを送信してください。

ライセンス

BSD

著者情報

元著者:Bernardo Vale

プロジェクトについて

Simple role to install IBM DB2 database

インストール
ansible-galaxy install olemyk.ansible_role_db2
ライセンス
Unknown
ダウンロード
186
所有者