6. 付録¶
6.1. 設定パラメーター一覧¶
本節では、GridData Lake Serverで使用する設定ファイルとパラメーターを記述します。
6.1.1. Fluentdサーバー¶
■ /home/griddata/lake/fluentd-server/fluentd-server.properties
名前 | 値 | 説明 |
---|---|---|
coreSitePath | /home/griddata/griddata-core/hadoop/conf/core-site.xml | 出力先HDFSの設定ファイル(core-site.xml)の絶対パス |
hdfsSitePath | /home/griddata/griddata-core/hadoop/conf/hdfs-site.xml | 出力先HDFSの設定ファイル(hdfs-site.xml)の絶対パス |
TAGNAME | tag | タグ名(タグ情報にはHDFSの出力先パスを記述する) |
6.1.2. Embulkサーバー¶
■ /home/griddata/lake/embulk-server/embulk-server.properties
名前 | 値 | 説明 |
---|---|---|
port | 50021 | FTP制御ポート |
data-ports | 50025 | FTPデータ転送ポート(パッシブモードのみ使用) |
hdfs-uri | hdfs://griddataha | 出力先HDFSのURI |
coreSitePath | /home/griddata/griddata-core/hadoop/conf/core-site.xml | 出力先HDFSの設定ファイル(core-site.xml)の絶対パス |
hdfsSitePath | /home/griddata/griddata-core/hadoop/conf/hdfs-site.xml | 出力先HDFSの設定ファイル(hdfs-site.xml)の絶対パス |
superuser | griddata | 出力先HDFSにアクセスするユーザー名 |
supergroup | griddata | 出力先HDFSにアクセスするユーザーのグループ名 |
6.1.3. LakeStudio¶
■ /home/griddata/lake/lake-studio/conf/external_application.properties
名前 | 値 | 説明 |
---|---|---|
server.port | 8070 | LakeStudio起動ポート |
hdfs.hdfsSitePath | /home/griddata/griddata-core/hadoop/conf/hdfs-site.xml | 接続先HDFSの設定ファイル(hdfs-site.xml)の絶対パス |
hdfs.coreSitePath | /home/griddata/griddata-core/hadoop/conf/core-site.xml | 接続先HDFSの設定ファイル(core-site.xml)の絶対パス |
spring.datasource.driver-class-name | org.postgresql.Driver | ログイン情報格納先Driverクラス |
spring.datasource.url | jdbc:postgresql://SERVER0:5432/lake_studio | ログイン情報格納先URL |
spring.datasource.username | postgres | ログイン情報格納先アクセスユーザー名 |
spring.datasource.password | postgres | ログイン情報格納先アクセスパスワード |
thriftservice.driverClassName | org.apache.hive.jdbc.HiveDriver | メタデータ格納先Driverクラス |
thriftservice.url | jdbc:hive2://SERVER1:2181,SERVER2:2181,SERVER3:2181/ | メタデータ格納先URL |
thriftservice.urlParams | serviceDiscoveryMode=zooKeeper | メタデータ格納先アクセスパラメータ |
hive.hiveSitePath | /home/griddata/griddata-core/hive/conf/hive-site.xml | 接続先Hiveの設定ファイル(hive-site.xml)の絶対パス |
griddb.properties-path | /home/griddata/griddata-core/griddb.properties | 接続先GridDBの設定ファイル(griddb.properties)の絶対パス |
logging.file | /home/griddata/lake/lake-studio/logs/griddata-lake.log | LakeStudioのログファイル出力の絶対パス |
logging.level.root | ERROR | LakeStudioのログファイルの出力ログレベル |
lake.machines | SERVER1,SERVER2 | 接続先HDFSのNameNodeのホスト名 |
6.1.4. HDFS、YARN¶
HDFSの設定ファイルは、/home/griddata/griddata-core/hadoop/conf/にある各ファイルを使用します。
■ core-site.xml
名前 | 値 | 説明 |
---|---|---|
fs.defaultFS | hdfs://griddataha | デフォルトファイルシステムのURI |
fs.default.name | hdfs://griddataha | 同上(両パラメーターが必要) |
hadoop.tmp.dir | /home/griddata/griddata-core/hadoop/tmp | HDFSのデータファイルやメタデータを格納するディレクトリー |
hadoop.proxyuser.griddata.hosts | * | HDFSのプロキシ設定ホスト |
hadoop.proxyuser.griddata.users | * | HDFSのプロキシ設定ユーザー |
■ hdfs-site.xml
名前 | 値 | 説明 |
---|---|---|
dfs.nameservices | griddataha | NameNode HA構成の名称 |
dfs.ha.namenodes.griddataha | namenode1,namenode2 | HA構成(griddataha)に属するNameNodeの名称の一覧 |
dfs.namenode.rpc-address.griddataha.namenode1 | SERVER1:8020 | 一つめのNameNode(namenode1)のクライアント通信用RPCアドレス |
dfs.namenode.servicerpc-address.griddataha.namenode1 | SERVER1:8022 | 一つめのNameNode(namenode1)のHDFSサービス間通信用RPCアドレス |
dfs.namenode.http-address.griddataha.namenode1 | SERVER1:50070 | 一つめのNameNode(namenode1)のWeb UI用HTTPアドレス |
dfs.namenode.https-address.griddataha.namenode1 | SERVER1:50470 | 一つめのNameNode(namenode1)のWeb UI用HTTPSアドレス |
dfs.namenode.rpc-address.griddataha.namenode2 | SERVER2:8020 | 二つめのNameNode(namenode2)のクライアント通信用RPCアドレス |
dfs.namenode.servicerpc-address.griddataha.namenode2 | SERVER2:8022 | 二つめのNameNode(namenode2)のHDFSサービス間通信用RPCアドレス |
dfs.namenode.http-address.griddataha.namenode2 | SERVER2:50070 | 二つめのNameNode(namenode2)のWeb UI用HTTPアドレス |
dfs.namenode.https-address.griddataha.namenode2 | SERVER2:50470 | 二つめのNameNode(namenode2)のWeb UI用HTTPSアドレス |
dfs.namenode.shared.edits.dir | qjournal://SERVER1:8485;SERVER2:8485;SERVER3:8485/griddataha | NameNode HA構成のための共有ディレクトリー(Quorum Journal Managerで実現)のURI |
dfs.journalnode.edits.dir | /home/griddata/griddata-core/hadoop/tmp/jn | JournalNodeが状態を保存するディレクトリーの絶対パス |
dfs.client.failover.proxy.provider.griddataha | org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider | NameNodeのフェイルオーバーを実現するクラス |
dfs.ha.fencing.methods | shell(/bin/true) | フェイルオーバー中にActive NameNodeを切り離すために使用されるスクリプトまたはJavaクラスのリスト |
dfs.ha.automatic-failover.enabled | true | 自動フェイルオーバーの有効/無効 |
ha.zookeeper.quorum | SERVER1:2181,SERVER2:2181,SERVER3:2181 | NameNode HAのフェイルオーバーを管理するZookeeperアンサンブル |
dfs.replication | 2 | HDFSのレプリケーション数 |
dfs.hosts | /home/griddata/griddata-core/hadoop/conf/hosts.include | インクルードファイルのファイルパス |
dfs.hosts.exclude | /home/griddata/griddata-core/hadoop/conf/hosts.exclude | エクスクルードファイルのファイルパス |
■ yarn-site.xml
名前 | 値 | 説明 |
---|---|---|
yarn.nodemanager.aux-services | mapreduce_shuffle | シャッフルハンドラの設定 |
yarn.resourcemanager.ha.enabled | true | ResourceManagerをHA構成にするかの設定 |
yarn.resourcemanager.ha.automatic-failover.enabled | true | ResourceManagerを自動フェールオーバーの有効/無効 |
yarn.resourcemanager.ha.automatic-failover.embedded | true | ResourceManagerを自動フェールオーバーの有効/無効 |
yarn.client.failover-sleep-base-ms | 100 | フェールオーバーの標準待機時間[ms] |
yarn.client.failover-sleep-max-ms | 1000 | フェールオーバーの最大待機時間[ms] |
yarn.resourcemanager.cluster-id | rmcluster | HAを構成するResourceManagerのクラスタ名 |
yarn.resourcemanager.ha.rm-ids | rm1,rm2 | HAを構成するResourceManagerの別名 |
yarn.resourcemanager.recovery.enabled | true | ResourceManagerでリカバリを使用するかの設定 |
yarn.resourcemanager.store.class | org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore | フェールオーバー利用クラス |
yarn.resourcemanager.zk-address | SERVER1:2181,SERVER2:2181,SERVER3:2181 | ZooKeeperのURI |
yarn.resourcemanager.hostname.rm1 | SERVER2 | HAを構成するResourceManagerのホスト名(rm1と対応するホスト名) |
yarn.resourcemanager.hostname.rm2 | SERVER3 | HAを構成するResourceManagerのホスト名(rm2と対応するホスト名) |
yarn.nodemanager.pmem-check-enabled | false | コンテナの物理メモリ制限の有効/無効 |
yarn.nodemanager.vmem-check-enabled | false | コンテナの仮想メモリ制限の有効/無効 |
yarn.resourcemanager.nodes.include-path | /home/griddata/griddata-core/hadoop/conf/hosts.include | 稼働ノードのホスト一覧ファイルの設定 |
yarn.resourcemanager.nodes.exclude-path | /home/griddata/griddata-core/hadoop/conf/hosts.exclude | 縮退ノードのホスト一覧ファイルの設定 |
yarn.scheduler.maximum-allocation-mb | 24576 | ResourceManagerからのすべてのコンテナ要求に対する割り当て量の最大値[MB] |
yarn.nodemanager.resource.memory-mb | 24576 | コンテナ群に対して割り当て可能な物理メモリ量[MB] |
■ slaves
GridData Lake Serverクラスターに属するスレーブ・ノードのホスト名を改行区切りで記入します。
■ hosts.exclude
GridData Lake Serverクラスターに属するスレーブ・ノードのうち、一時的に離脱させるサーバーのホスト名を改行区切りで記入します。
設定方法は クラスターを縮退する を参照してください。
■ hosts.include
GridData Lake Serverクラスターに属するスレーブ・ノードのホスト名を改行区切りで記入します。
6.1.5. Spark¶
Sparkの設定ファイルは、/home/griddata/griddata-core/spark/conf/にある各ファイルを使用します。
■ spark-env.sh
名前 | 値 | 説明 |
---|---|---|
SPARK_PID_DIR | ${SPARK_HOME}/pids | プロセスIDファイルの格納場所 |
SPARK_HISTORY_OPTS | "-Dspark.history.fs.logDirectory=hdfs://griddataha/var/log/spark" | Sparkのアプリケーションログの格納先(Spark History Serverから閲覧できる) |
■ spark-defaults.conf
名前 | 値 | 説明 |
---|---|---|
spark.sql.crossJoin.enabled | true | SparkSQLでのクロス結合の許可/不許可 |
spark.eventLog.enabled | true | Sparkのイベントログ出力の有無 |
spark.eventLog.dir | hdfs://griddataha/var/log/spark | Sparkイベントログの出力先ディレクトリ |
spark.jars | /home/griddata/griddata-core/adapters/griddb/gridstore-4.0.3.jar,/home/griddata/griddata-core/adapters/griddb/gridstore-advanced-4.0.3.jar,/home/griddata/griddata-core/adapters/griddb/gridstore-jdbc-4.0.3.jar,/home/griddata/griddata-core/adapters/spark/datasource.jar | Sparkの外部jarファイル |
spark.yarn | hdfs:///user/griddata/jars-without-hive | Sparkのjarディレクトリ(YARN実行用) |
6.1.6. Hive¶
Hiveの設定ファイルは、/home/griddata/griddata-core/hive/conf/にある各ファイルを使用します。
■ hive-site.xml
名前 | 値 | 説明 |
---|---|---|
hive.metastore.uris | thrift://SERVER3:9083,thrift://SERVER1:9083 | HiveMetastoreのURI |
hive.server2.thrift.bind.host | SERVER1 または SERVER3 | HiveServer2の起動ホスト名 |
hive.server2.thrift.port | 10000 | HiveServer2のポート番号 |
hive.execution.engine | spark | HiveServer2を実行するエンジン |
spark.yarn.jars | hdfs:///user/griddata/jars-without-hive/* | Sparkのjar一覧のパス |
javax.jdo.option.ConnectionURL | jdbc:postgresql://SERVER0:5432/hive | HiveMetastoreの接続URL |
javax.jdo.option.ConnectionDriverName | org.postgresql.Driver | HiveMetastoreの接続用クラス |
javax.jdo.option.ConnectionUserName | postgres | HiveMetastoreの接続ユーザ名 |
javax.jdo.option.ConnectionPassword | postgres | HiveMetastoreの接続パスワード |
hive.server2.support.dynamic.service.discovery | true | HiveServer2の接続情報をZooKeeper登録の有効/無効 |
jhive.server2.zookeeper.namespace | hiveserver2 | ZooKeeperに出力するHiveServer2のNamespace名 |
hive.zookeeper.quorum | SERVER1,SERVER2,SERVER3 | ZooKeeperの接続ホスト |
hive.zookeeper.client.port | 2181 | ZooKeeperの接続ポート |
hive.server2.enable.doAs | true | HiveServer2の認証の有効/無効 |
hive.server2.authentication | CUSTOM | HiveServer2の認証モード |
hive.server2.custom.authentication.class | com.toshiba.mwcloud.griddatalake.security.GriddataLakeAuthenticationProvider | HiveServer2の認証クラス |
hive.security.authorization.enabled | true | Hiveの認証の有効/無効 |
hive.security.authorization.manager | org.apache.hadoop.hive.ql.security.authorization.StorageBasedAuthorizationProvider | Hiveの認証管理クラス |
hive.metastore.pre.event.listeners | org.apache.hadoop.hive.ql.security.authorization.AuthorizationPreEventListener | HiveMetastoreのイベントリスナークラス |
hive.security.metastore.authorization.manager | org.apache.hadoop.hive.ql.security.authorization.StorageBasedAuthorizationProvider | HiveMetastoreの認証管理クラス |
hive.users.in.admin.role | griddata | Hiveの認証管理ユーザー |
6.1.7. ZooKeeper¶
■ /home/griddata/griddata-core/zookeeper/conf/zoo.cfg
名前 | 値 | 説明 |
---|---|---|
tickTime | 3000 | ZooKeeper内の単位時間「tick」(ミリ秒) |
initLimit | 10 | フォロワーノードがリーダーノードに接続し、同期するための制限時間(tick数) |
syncLimit | 5 | リーダー・フォロワー間通信の制限時間(tick数) |
dataDir | /home/griddata/griddata-core/zookeeper/tmp/zookeeper | トランザクションログやスナップショットを格納するディレクトリーのパス |
clientPort | 2181 | クライアントが接続するポート |
server.X | server.1=SERVER1:3181:4181 server.2=SERVER2:3181:4181 server.3=SERVER3:3181:4181 |
ZooKeeperアンサンブルを構成するサーバーの一覧(キー名はmyidファイルの内容と対応、値はホスト名:リーダー・フォロワー間通信用ポート:リーダー選出のための通信用ポート) |
■ /home/griddata/griddata-core/zookeeper/tmp/zookeeper/myid
ZooKeeperを起動するサーバーに付与するIDを記述します。
各ファイルにはIDのみを記載します。IDは1から順に自然数で表します。
6.1.8. Spark-GridDBコネクター¶
■ griddb.properties
GridDB APIで規定された、接続用パラメーターを記述します。詳細はGridDB製品の『GridDB APIリファレンス』を参照してください。
Spark-GridDBコネクターは、環境変数GRIDDB_PROPERTIESが示すパスの設定ファイルを読み込みます。 ご購入時の状態は、/home/griddata/griddata-core/griddb.propertiesになっています。