You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by st...@apache.org on 2014/09/10 18:10:43 UTC
[25/36] git commit: SLIDER-417,
SLIDER-415 Enable local package building for accumulo,
fix tests to work in secure mode
SLIDER-417, SLIDER-415 Enable local package building for accumulo, fix tests to work in secure mode
Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/3c1d9dc2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/3c1d9dc2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/3c1d9dc2
Branch: refs/heads/feature/SLIDER-149_Support_a_YARN_service_registry
Commit: 3c1d9dc2fcec1a897a26388865194c99fc28e2f8
Parents: e24060b
Author: Billie Rinaldi <bi...@gmail.com>
Authored: Tue Sep 9 22:14:36 2014 -0700
Committer: Billie Rinaldi <bi...@gmail.com>
Committed: Tue Sep 9 22:14:36 2014 -0700
----------------------------------------------------------------------
app-packages/accumulo/README.txt | 17 ++--
app-packages/accumulo/pom.xml | 90 ++++++++++++++++++--
app-packages/accumulo/src/assembly/accumulo.xml | 2 +-
.../funtest/accumulo/AccumuloBasicIT.groovy | 7 ++
.../accumulo/AccumuloMonitorSSLIT.groovy | 7 +-
.../funtest/accumulo/AccumuloSSLTestBase.groovy | 7 +-
.../accumulo/src/test/resources/appConfig.json | 55 ++++++++++++
.../src/test/resources/appConfig_kerberos.json | 8 +-
.../test/resources/appConfig_monitor_ssl.json | 4 +-
.../appConfig_monitor_ssl_kerberos.json | 57 +++++++++++++
.../src/test/resources/appConfig_ssl.json | 4 +-
.../test/resources/appConfig_ssl_kerberos.json | 59 +++++++++++++
12 files changed, 294 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/README.txt
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/README.txt b/app-packages/accumulo/README.txt
index 634296a..f75814c 100644
--- a/app-packages/accumulo/README.txt
+++ b/app-packages/accumulo/README.txt
@@ -17,21 +17,28 @@
# How to create a Slider package for Accumulo?
- mvn clean package -DskipTests -Paccumulo-app-package
+ mvn clean package -DskipTests -Paccumulo-app-package-maven
+ OR
+ mvn clean package -DskipTests -Paccumulo-app-package -Dpkg.version=1.6.1 \
+ -Dpkg.name=accumulo-1.6.1-bin.tar.gz -Dpkg.src=/local/path/to/tarball
App package can be found in
- app-packages/accumulo/target/apache-slider-accumulo-${accumulo.version}-app-package-${slider.version}.zip
+ app-packages/accumulo/target/slider-accumulo-app-package-*.zip
+
+In the first case, the version number of the app package will match the
+slider version, and in the second case it will match the pkg.version
+(intended to be the accumulo version).
Verify the content using
- zip -Tv apache-slider-accumulo-*.zip
+ zip -Tv slider-accumulo-app-package*.zip
While appConfig.json and resources.json are not required for the package they
work well as the default configuration for Slider apps. So it is advisable that
when you create an application package for Slider, include sample/default
resources.json and appConfig.json for a minimal Yarn cluster.
-The version of Accumulo used for the app package can be adjusted by adding a
-flag such as
+In the maven packaging case, the version of Accumulo used for the app package
+can be adjusted by adding a flag such as
-Daccumulo.version=1.5.1
**Note that the LICENSE.txt and NOTICE.txt that are bundled with the app
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/pom.xml
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/pom.xml b/app-packages/accumulo/pom.xml
index 548ced8..f074b01 100644
--- a/app-packages/accumulo/pom.xml
+++ b/app-packages/accumulo/pom.xml
@@ -30,17 +30,20 @@
<properties>
<work.dir>package-tmp</work.dir>
- <app.package.name>${project.artifactId}-${project.version}</app.package.name>
+ <app.package.name>${project.artifactId}-${pkg.version}</app.package.name>
+ <pkg.src>${project.build.directory}/${work.dir}</pkg.src>
+ <pkg.version>${project.version}</pkg.version>
+ <pkg.name>accumulo-${accumulo.version}-bin.tar.gz</pkg.name>
+ <!-- the following properties are used for testing -->
+ <app.user>yarn</app.user>
+ <app.user.group>hadoop</app.user.group>
+ <accumulo.keytab></accumulo.keytab>
+ <accumulo.principal></accumulo.principal>
</properties>
<profiles>
<profile>
<id>accumulo-app-package</id>
- <activation>
- <property>
- <name>!skipAccumulo</name>
- </property>
- </activation>
<build>
<plugins>
<plugin>
@@ -64,6 +67,79 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.7</version>
+ <executions>
+ <execution>
+ <id>copy</id>
+ <phase>validate</phase>
+ <configuration>
+ <target name="copy and rename file">
+ <copy file="${pkg.src}/${pkg.name}" tofile="${project.build.directory}/${work.dir}/${pkg.name}" />
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ <version>${maven-failsafe-plugin.version}</version>
+ <executions>
+ <execution>
+ <id>run-integration-tests</id>
+ <goals>
+ <goal>integration-test</goal>
+ <goal>verify</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <systemPropertyVariables>
+ <java.net.preferIPv4Stack>true</java.net.preferIPv4Stack>
+ <java.awt.headless>true</java.awt.headless>
+ <!-- this property must be supplied-->
+ <slider.conf.dir>${slider.conf.dir}</slider.conf.dir>
+ <slider.bin.dir>../../slider-assembly/target/slider-${project.version}-all/slider-${project.version}</slider.bin.dir>
+ <test.app.pkg.dir>target</test.app.pkg.dir>
+ <test.app.pkg.file>${app.package.name}.zip</test.app.pkg.file>
+ <test.app.resource>target/test-config/resources.json</test.app.resource>
+ <test.app.template>target/test-config/appConfig.json</test.app.template>
+ </systemPropertyVariables>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>accumulo-app-package-maven</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptor>src/assembly/accumulo.xml</descriptor>
+ <appendAssemblyId>false</appendAssemblyId>
+ <finalName>${project.artifactId}-${pkg.version}</finalName>
+ </configuration>
+ <executions>
+ <execution>
+ <id>build-app-package</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>${maven-dependency-plugin.version}</version>
<executions>
@@ -106,7 +182,7 @@
<test.app.pkg.dir>target</test.app.pkg.dir>
<test.app.pkg.file>${app.package.name}.zip</test.app.pkg.file>
<test.app.resource>target/test-config/resources.json</test.app.resource>
- <test.app.template>target/${app.package.name}/appConfig.json</test.app.template>
+ <test.app.template>target/test-config/appConfig.json</test.app.template>
</systemPropertyVariables>
</configuration>
</plugin>
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/assembly/accumulo.xml
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/assembly/accumulo.xml b/app-packages/accumulo/src/assembly/accumulo.xml
index ca39d53..c45cad7 100644
--- a/app-packages/accumulo/src/assembly/accumulo.xml
+++ b/app-packages/accumulo/src/assembly/accumulo.xml
@@ -42,7 +42,7 @@
<fileMode>0755</fileMode>
</file>
<file>
- <source>${project.build.directory}/${work.dir}/accumulo-${accumulo.version}-bin.tar.gz</source>
+ <source>${project.build.directory}/${work.dir}/${pkg.name}</source>
<outputDirectory>package/files</outputDirectory>
<filtered>false</filtered>
<fileMode>0755</fileMode>
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy
index dc9b1aa..81f7b58 100644
--- a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy
+++ b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy
@@ -28,6 +28,7 @@ import org.apache.slider.accumulo.CustomAuthenticator
import org.apache.slider.api.ClusterDescription
import org.apache.slider.client.SliderClient
import org.apache.slider.common.SliderKeys
+import org.apache.slider.common.tools.SliderUtils
import org.apache.slider.core.conf.ConfTree
import org.apache.slider.core.persist.ConfTreeSerDeser
import org.apache.slider.core.registry.docstore.PublishedConfiguration
@@ -46,6 +47,12 @@ class AccumuloBasicIT extends AccumuloAgentCommandTestBase {
protected static final String TRUST_PASS = "trustpass"
protected ConfTree tree
+ AccumuloBasicIT() {
+ if (SliderUtils.isHadoopClusterSecure(SLIDER_CONFIG)) {
+ APP_TEMPLATE = "target/test-config/appConfig_kerberos.json"
+ }
+ }
+
@Before
public void createKeyStore() {
ConfTreeSerDeser c = new ConfTreeSerDeser()
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy
index b5dd77e..3cabfd7 100644
--- a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy
+++ b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy
@@ -20,6 +20,7 @@ package org.apache.slider.funtest.accumulo
import groovy.util.logging.Slf4j
import org.apache.slider.api.ClusterDescription
import org.apache.slider.client.SliderClient
+import org.apache.slider.common.tools.SliderUtils
import javax.net.ssl.KeyManager
import javax.net.ssl.SSLContext
@@ -32,7 +33,11 @@ import java.security.cert.X509Certificate
@Slf4j
class AccumuloMonitorSSLIT extends AccumuloSSLTestBase {
AccumuloMonitorSSLIT() {
- APP_TEMPLATE = "target/test-config/appConfig_monitor_ssl.json"
+ if (SliderUtils.isHadoopClusterSecure(SLIDER_CONFIG)) {
+ APP_TEMPLATE = "target/test-config/appConfig_monitor_ssl_kerberos.json"
+ } else {
+ APP_TEMPLATE = "target/test-config/appConfig_monitor_ssl.json"
+ }
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy
index 8a1b0d2..eca7da3 100644
--- a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy
+++ b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy
@@ -22,6 +22,7 @@ import org.apache.accumulo.core.conf.Property
import org.apache.hadoop.conf.Configuration
import org.apache.hadoop.fs.Path
import org.apache.hadoop.yarn.conf.YarnConfiguration
+import org.apache.slider.common.tools.SliderUtils
import org.apache.slider.funtest.framework.AgentUploads
import org.junit.Before
@@ -30,7 +31,11 @@ class AccumuloSSLTestBase extends AccumuloBasicIT {
File clientKeyStoreFile = new File(TEST_APP_PKG_DIR, "keystore.jks")
AccumuloSSLTestBase() {
- APP_TEMPLATE = "target/test-config/appConfig_ssl.json"
+ if (SliderUtils.isHadoopClusterSecure(SLIDER_CONFIG)) {
+ APP_TEMPLATE = "target/test-config/appConfig_ssl_kerberos.json"
+ } else {
+ APP_TEMPLATE = "target/test-config/appConfig_ssl.json"
+ }
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/appConfig.json b/app-packages/accumulo/src/test/resources/appConfig.json
new file mode 100644
index 0000000..c113d4a
--- /dev/null
+++ b/app-packages/accumulo/src/test/resources/appConfig.json
@@ -0,0 +1,55 @@
+{
+ "schema": "http://example.org/specification/v2.0.0",
+ "metadata": {
+ },
+ "global": {
+ "application.def": "${app.package.name}.zip",
+ "java_home": "/usr/lib/jvm/java",
+ "site.global.app_user": "${app.user}",
+ "site.global.app_log_dir": "${AGENT_LOG_ROOT}",
+ "site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
+ "site.global.app_root": "${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
+ "site.global.tserver_heapsize": "256m",
+ "site.global.master_heapsize": "128m",
+ "site.global.monitor_heapsize": "64m",
+ "site.global.gc_heapsize": "64m",
+ "site.global.other_heapsize": "128m",
+ "site.global.hadoop_prefix": "/usr/lib/hadoop",
+ "site.global.hadoop_conf_dir": "/etc/hadoop/conf",
+ "site.global.zookeeper_home": "/usr/lib/zookeeper",
+ "site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
+ "site.global.accumulo_root_password": "NOT_USED",
+ "site.global.user_group": "${app.user.group}",
+ "site.global.security_enabled": "false",
+ "site.global.ssl_cert_dir": "ssl",
+ "site.global.monitor_protocol": "http",
+ "site.accumulo-site.instance.volumes": "${DEFAULT_DATA_DIR}/data",
+ "site.accumulo-site.instance.zookeeper.host": "${ZK_HOST}",
+ "site.accumulo-site.instance.security.authenticator": "org.apache.slider.accumulo.CustomAuthenticator",
+ "site.accumulo-site.general.security.credential.provider.paths": "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks",
+ "site.accumulo-site.tserver.memory.maps.native.enabled": "false",
+ "site.accumulo-site.tserver.memory.maps.max": "80M",
+ "site.accumulo-site.tserver.cache.data.size": "7M",
+ "site.accumulo-site.tserver.cache.index.size": "20M",
+ "site.accumulo-site.trace.user": "root",
+ "site.accumulo-site.tserver.sort.buffer.size": "50M",
+ "site.accumulo-site.tserver.walog.max.size": "40M",
+ "site.accumulo-site.master.port.client": "0",
+ "site.accumulo-site.trace.port.client": "0",
+ "site.accumulo-site.tserver.port.client": "0",
+ "site.accumulo-site.gc.port.client": "0",
+ "site.accumulo-site.monitor.port.client": "${ACCUMULO_MONITOR.ALLOCATED_PORT}",
+ "site.accumulo-site.monitor.port.log4j": "0",
+ "site.accumulo-site.master.replication.coordinator.port": "0",
+ "site.accumulo-site.replication.receipt.service.port": "0",
+ "site.accumulo-site.general.classpaths": "$ACCUMULO_HOME/lib/accumulo-server.jar,\n$ACCUMULO_HOME/lib/accumulo-core.jar,\n$ACCUMULO_HOME/lib/accumulo-start.jar,\n$ACCUMULO_HOME/lib/accumulo-fate.jar,\n$ACCUMULO_HOME/lib/accumulo-proxy.jar,\n$ACCUMULO_HOME/lib/[^.].*.jar,\n$ZOOKEEPER_HOME/zookeeper[^.].*.jar,\n$HADOOP_CONF_DIR,\n$HADOOP_PREFIX/[^.].*.jar,\n$HADOOP_PREFIX/lib/[^.].*.jar,\n$HADOOP_PREFIX/share/hadoop/common/.*.jar,\n$HADOOP_PREFIX/share/hadoop/common/lib/.*.jar,\n$HADOOP_PREFIX/share/hadoop/hdfs/.*.jar,\n$HADOOP_PREFIX/share/hadoop/mapreduce/.*.jar,\n$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,\n/usr/lib/hadoop/.*.jar,\n/usr/lib/hadoop/lib/.*.jar,\n/usr/lib/hadoop-hdfs/.*.jar,\n/usr/lib/hadoop-mapreduce/.*.jar,\n/usr/lib/hadoop-yarn/.*.jar,"
+ },
+ "credentials": {
+ "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks": ["root.initial.password", "instance.secret", "trace.token.property.password"]
+ },
+ "components": {
+ "slider-appmaster": {
+ "jvm.heapsize": "256M"
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_kerberos.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/appConfig_kerberos.json b/app-packages/accumulo/src/test/resources/appConfig_kerberos.json
index b1bff37..d6f849c 100644
--- a/app-packages/accumulo/src/test/resources/appConfig_kerberos.json
+++ b/app-packages/accumulo/src/test/resources/appConfig_kerberos.json
@@ -5,7 +5,7 @@
"global": {
"application.def": "${app.package.name}.zip",
"java_home": "/usr/lib/jvm/java",
- "site.global.app_user": "accumulo",
+ "site.global.app_user": "${app.user}",
"site.global.app_log_dir": "${AGENT_LOG_ROOT}",
"site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
"site.global.app_root": "${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
@@ -19,7 +19,7 @@
"site.global.zookeeper_home": "/usr/lib/zookeeper",
"site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
"site.global.accumulo_root_password": "NOT_USED",
- "site.global.user_group": "accumulo",
+ "site.global.user_group": "${app.user.group}",
"site.global.security_enabled": "false",
"site.global.ssl_cert_dir": "ssl",
"site.global.monitor_protocol": "http",
@@ -27,8 +27,8 @@
"site.accumulo-site.instance.zookeeper.host": "${ZK_HOST}",
"site.accumulo-site.instance.security.authenticator": "org.apache.slider.accumulo.CustomAuthenticator",
"site.accumulo-site.general.security.credential.provider.paths": "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks",
- "site.accumulo-site.general.kerberos.keytab": "/etc/security/keytabs/accumulo.service.keytab",
- "site.accumulo-site.general.kerberos.principal": "accumulo/_HOST@EXAMPLE.COM",
+ "site.accumulo-site.general.kerberos.keytab": "${accumulo.keytab}",
+ "site.accumulo-site.general.kerberos.principal": "${accumulo.principal}",
"site.accumulo-site.tserver.memory.maps.native.enabled": "false",
"site.accumulo-site.tserver.memory.maps.max": "80M",
"site.accumulo-site.tserver.cache.data.size": "7M",
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json b/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json
index 61a9bb1..d860e96 100644
--- a/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json
+++ b/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json
@@ -5,7 +5,7 @@
"global": {
"application.def": "${app.package.name}.zip",
"java_home": "/usr/lib/jvm/java",
- "site.global.app_user": "yarn",
+ "site.global.app_user": "${app.user}",
"site.global.app_log_dir": "${AGENT_LOG_ROOT}",
"site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
"site.global.app_root": "${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
@@ -19,7 +19,7 @@
"site.global.zookeeper_home": "/usr/lib/zookeeper",
"site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
"site.global.accumulo_root_password": "NOT_USED",
- "site.global.user_group": "hadoop",
+ "site.global.user_group": "${app.user.group}",
"site.global.security_enabled": "false",
"site.global.ssl_cert_dir": "ssl",
"site.global.monitor_protocol": "https",
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl_kerberos.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl_kerberos.json b/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl_kerberos.json
new file mode 100644
index 0000000..1357c4e
--- /dev/null
+++ b/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl_kerberos.json
@@ -0,0 +1,57 @@
+{
+ "schema": "http://example.org/specification/v2.0.0",
+ "metadata": {
+ },
+ "global": {
+ "application.def": "${app.package.name}.zip",
+ "java_home": "/usr/lib/jvm/java",
+ "site.global.app_user": "${app.user}",
+ "site.global.app_log_dir": "${AGENT_LOG_ROOT}",
+ "site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
+ "site.global.app_root": "${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
+ "site.global.tserver_heapsize": "256m",
+ "site.global.master_heapsize": "128m",
+ "site.global.monitor_heapsize": "64m",
+ "site.global.gc_heapsize": "64m",
+ "site.global.other_heapsize": "128m",
+ "site.global.hadoop_prefix": "/usr/lib/hadoop",
+ "site.global.hadoop_conf_dir": "/etc/hadoop/conf",
+ "site.global.zookeeper_home": "/usr/lib/zookeeper",
+ "site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
+ "site.global.accumulo_root_password": "NOT_USED",
+ "site.global.user_group": "${app.user.group}",
+ "site.global.security_enabled": "false",
+ "site.global.ssl_cert_dir": "ssl",
+ "site.global.monitor_protocol": "https",
+ "site.accumulo-site.instance.volumes": "${DEFAULT_DATA_DIR}/data",
+ "site.accumulo-site.instance.zookeeper.host": "${ZK_HOST}",
+ "site.accumulo-site.instance.security.authenticator": "org.apache.slider.accumulo.CustomAuthenticator",
+ "site.accumulo-site.general.security.credential.provider.paths": "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks",
+ "site.accumulo-site.general.kerberos.keytab": "${accumulo.keytab}",
+ "site.accumulo-site.general.kerberos.principal": "${accumulo.principal}",
+ "site.accumulo-site.tserver.memory.maps.native.enabled": "false",
+ "site.accumulo-site.tserver.memory.maps.max": "80M",
+ "site.accumulo-site.tserver.cache.data.size": "7M",
+ "site.accumulo-site.tserver.cache.index.size": "20M",
+ "site.accumulo-site.trace.user": "root",
+ "site.accumulo-site.tserver.sort.buffer.size": "50M",
+ "site.accumulo-site.tserver.walog.max.size": "40M",
+ "site.accumulo-site.master.port.client": "0",
+ "site.accumulo-site.trace.port.client": "0",
+ "site.accumulo-site.tserver.port.client": "0",
+ "site.accumulo-site.gc.port.client": "0",
+ "site.accumulo-site.monitor.port.client": "${ACCUMULO_MONITOR.ALLOCATED_PORT}",
+ "site.accumulo-site.monitor.port.log4j": "0",
+ "site.accumulo-site.master.replication.coordinator.port": "0",
+ "site.accumulo-site.replication.receipt.service.port": "0",
+ "site.accumulo-site.general.classpaths": "$ACCUMULO_HOME/lib/accumulo-server.jar,\n$ACCUMULO_HOME/lib/accumulo-core.jar,\n$ACCUMULO_HOME/lib/accumulo-start.jar,\n$ACCUMULO_HOME/lib/accumulo-fate.jar,\n$ACCUMULO_HOME/lib/accumulo-proxy.jar,\n$ACCUMULO_HOME/lib/[^.].*.jar,\n$ZOOKEEPER_HOME/zookeeper[^.].*.jar,\n$HADOOP_CONF_DIR,\n$HADOOP_PREFIX/[^.].*.jar,\n$HADOOP_PREFIX/lib/[^.].*.jar,\n$HADOOP_PREFIX/share/hadoop/common/.*.jar,\n$HADOOP_PREFIX/share/hadoop/common/lib/.*.jar,\n$HADOOP_PREFIX/share/hadoop/hdfs/.*.jar,\n$HADOOP_PREFIX/share/hadoop/mapreduce/.*.jar,\n$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,\n/usr/lib/hadoop/.*.jar,\n/usr/lib/hadoop/lib/.*.jar,\n/usr/lib/hadoop-hdfs/.*.jar,\n/usr/lib/hadoop-mapreduce/.*.jar,\n/usr/lib/hadoop-yarn/.*.jar,"
+ },
+ "credentials": {
+ "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks": ["root.initial.password", "instance.secret", "trace.token.property.password", "monitor.ssl.keyStorePassword", "monitor.ssl.trustStorePassword"]
+ },
+ "components": {
+ "slider-appmaster": {
+ "jvm.heapsize": "256M"
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_ssl.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/appConfig_ssl.json b/app-packages/accumulo/src/test/resources/appConfig_ssl.json
index e46d40e..b0bc981 100644
--- a/app-packages/accumulo/src/test/resources/appConfig_ssl.json
+++ b/app-packages/accumulo/src/test/resources/appConfig_ssl.json
@@ -5,7 +5,7 @@
"global": {
"application.def": "${app.package.name}.zip",
"java_home": "/usr/lib/jvm/java",
- "site.global.app_user": "yarn",
+ "site.global.app_user": "${app.user}",
"site.global.app_log_dir": "${AGENT_LOG_ROOT}",
"site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
"site.global.app_root": "${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
@@ -19,7 +19,7 @@
"site.global.zookeeper_home": "/usr/lib/zookeeper",
"site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
"site.global.accumulo_root_password": "NOT_USED",
- "site.global.user_group": "hadoop",
+ "site.global.user_group": "${app.user.group}",
"site.global.security_enabled": "false",
"site.global.ssl_cert_dir": "ssl",
"site.global.monitor_protocol": "http",
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_ssl_kerberos.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/appConfig_ssl_kerberos.json b/app-packages/accumulo/src/test/resources/appConfig_ssl_kerberos.json
new file mode 100644
index 0000000..8072446
--- /dev/null
+++ b/app-packages/accumulo/src/test/resources/appConfig_ssl_kerberos.json
@@ -0,0 +1,59 @@
+{
+ "schema": "http://example.org/specification/v2.0.0",
+ "metadata": {
+ },
+ "global": {
+ "application.def": "${app.package.name}.zip",
+ "java_home": "/usr/lib/jvm/java",
+ "site.global.app_user": "${app.user}",
+ "site.global.app_log_dir": "${AGENT_LOG_ROOT}",
+ "site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
+ "site.global.app_root": "${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
+ "site.global.tserver_heapsize": "256m",
+ "site.global.master_heapsize": "128m",
+ "site.global.monitor_heapsize": "64m",
+ "site.global.gc_heapsize": "64m",
+ "site.global.other_heapsize": "128m",
+ "site.global.hadoop_prefix": "/usr/lib/hadoop",
+ "site.global.hadoop_conf_dir": "/etc/hadoop/conf",
+ "site.global.zookeeper_home": "/usr/lib/zookeeper",
+ "site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
+ "site.global.accumulo_root_password": "NOT_USED",
+ "site.global.user_group": "${app.user.group}",
+ "site.global.security_enabled": "false",
+ "site.global.ssl_cert_dir": "ssl",
+ "site.global.monitor_protocol": "http",
+ "site.accumulo-site.instance.volumes": "${DEFAULT_DATA_DIR}/data",
+ "site.accumulo-site.instance.zookeeper.host": "${ZK_HOST}",
+ "site.accumulo-site.instance.security.authenticator": "org.apache.slider.accumulo.CustomAuthenticator",
+ "site.accumulo-site.instance.rpc.ssl.enabled": "true",
+ "site.accumulo-site.instance.rpc.ssl.clientAuth": "true",
+ "site.accumulo-site.general.security.credential.provider.paths": "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks",
+ "site.accumulo-site.general.kerberos.keytab": "${accumulo.keytab}",
+ "site.accumulo-site.general.kerberos.principal": "${accumulo.principal}",
+ "site.accumulo-site.tserver.memory.maps.native.enabled": "false",
+ "site.accumulo-site.tserver.memory.maps.max": "80M",
+ "site.accumulo-site.tserver.cache.data.size": "7M",
+ "site.accumulo-site.tserver.cache.index.size": "20M",
+ "site.accumulo-site.trace.user": "root",
+ "site.accumulo-site.tserver.sort.buffer.size": "50M",
+ "site.accumulo-site.tserver.walog.max.size": "40M",
+ "site.accumulo-site.master.port.client": "0",
+ "site.accumulo-site.trace.port.client": "0",
+ "site.accumulo-site.tserver.port.client": "0",
+ "site.accumulo-site.gc.port.client": "0",
+ "site.accumulo-site.monitor.port.client": "${ACCUMULO_MONITOR.ALLOCATED_PORT}",
+ "site.accumulo-site.monitor.port.log4j": "0",
+ "site.accumulo-site.master.replication.coordinator.port": "0",
+ "site.accumulo-site.replication.receipt.service.port": "0",
+ "site.accumulo-site.general.classpaths": "$ACCUMULO_HOME/lib/accumulo-server.jar,\n$ACCUMULO_HOME/lib/accumulo-core.jar,\n$ACCUMULO_HOME/lib/accumulo-start.jar,\n$ACCUMULO_HOME/lib/accumulo-fate.jar,\n$ACCUMULO_HOME/lib/accumulo-proxy.jar,\n$ACCUMULO_HOME/lib/[^.].*.jar,\n$ZOOKEEPER_HOME/zookeeper[^.].*.jar,\n$HADOOP_CONF_DIR,\n$HADOOP_PREFIX/[^.].*.jar,\n$HADOOP_PREFIX/lib/[^.].*.jar,\n$HADOOP_PREFIX/share/hadoop/common/.*.jar,\n$HADOOP_PREFIX/share/hadoop/common/lib/.*.jar,\n$HADOOP_PREFIX/share/hadoop/hdfs/.*.jar,\n$HADOOP_PREFIX/share/hadoop/mapreduce/.*.jar,\n$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,\n/usr/lib/hadoop/.*.jar,\n/usr/lib/hadoop/lib/.*.jar,\n/usr/lib/hadoop-hdfs/.*.jar,\n/usr/lib/hadoop-mapreduce/.*.jar,\n/usr/lib/hadoop-yarn/.*.jar,"
+ },
+ "credentials": {
+ "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks": ["root.initial.password", "instance.secret", "trace.token.property.password", "rpc.javax.net.ssl.keyStorePassword", "rpc.javax.net.ssl.trustStorePassword"]
+ },
+ "components": {
+ "slider-appmaster": {
+ "jvm.heapsize": "256M"
+ }
+ }
+}