Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion dev-support/ranger-docker/Dockerfile.ranger-tagsync
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ RUN tar xvfz /home/ranger/dist/ranger-${TAGSYNC_VERSION}-tagsync.tar.gz --direct
ln -s ${RANGER_HOME}/ranger-${TAGSYNC_VERSION}-tagsync ${RANGER_HOME}/tagsync && \
rm -f /home/ranger/dist/ranger-${TAGSYNC_VERSION}-tagsync.tar.gz && \
rm -f ${RANGER_HOME}/tagsync/install.properties && \
mkdir -p /opt/ranger/tagsync/data /var/run/ranger /var/log/ranger/tagsync /etc/ranger && \
mkdir -p /opt/ranger/tagsync/data /var/run/ranger /var/log/ranger/tagsync /etc/ranger/tagsync/conf && \
cp -f ${RANGER_SCRIPTS}/ranger-tagsync-install.properties ${RANGER_HOME}/tagsync/install.properties && \
mkdir /etc/init.d || true && \
mkdir /etc/rc2.d || true && \
Expand Down
3 changes: 3 additions & 0 deletions dev-support/ranger-docker/docker-compose.ranger-tagsync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ services:
tty: true
networks:
- ranger
ports:
- "8180:8180"
- "8185:8185"
depends_on:
ranger:
condition: service_started
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -125,3 +125,16 @@ JVM_METRICS_FILEPATH=
#frequency for jvm metrics to be updated
# default value : 10000 milliseconds
JVM_METRICS_FREQUENCY_TIME_IN_MILLIS=

TAGSYNC_HTTP_PORT = 8180
TAGSYNC_HTTPS_PORT = 8183

TAGSYNC_KEYSTORE_FILE_ALIAS =
TAGSYNC_KEYSTORE_CRED_ALIAS = sslkeystore
TAGSYNC_TRUSTSTORE_ALIAS = sslTrustStore
TAGSYNC_CLIENT_AUTH = want
TAGSYNC_SERVICE_HOST = ranger-tagsync.example.com
TAGSYNC_CRED_PROVIDER_PATH =
TAGSYNC_KEYSTORE_FILE_TYPE =
TAGSYNC_TRUSTSTORE_FILE_TYPE =
TAGSYNC_SHUTDOWN_PORT = 8185
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ fi

cd ${RANGER_HOME}/tagsync && ./ranger-tagsync-services.sh start

RANGER_TAGSYNC_PID=`ps -ef | grep -v grep | grep -i "org.apache.ranger.tagsync.process.TagSynchronizer" | awk '{print $2}'`
RANGER_TAGSYNC_PID=`ps -ef | grep -v grep | grep -i "org.apache.ranger.tagsync.server.RangerTagSyncServer" | awk '{print $2}'`

# prevent the container from exiting
if [ -z "$RANGER_TAGSYNC_PID" ]
Expand Down
27 changes: 26 additions & 1 deletion distro/src/main/assembly/tagsync.xml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
<fileMode>644</fileMode>
<dependencySets>
<dependencySet>
<outputDirectory>lib</outputDirectory>
<outputDirectory>ews/lib</outputDirectory>
<unpack>false</unpack>
<includes>
<include>ch.qos.logback:logback-classic:jar:${logback.version}</include>
Expand Down Expand Up @@ -91,6 +91,8 @@
<include>org.apache.ranger:ranger-plugins-common</include>
<include>org.apache.ranger:ranger-util</include>
<include>org.apache.ranger:ugsync-util</include>
<include>org.apache.tomcat.embed:tomcat-embed*</include>
<include>org.apache.tomcat:tomcat-annotations-api*</include>
<include>org.apache.zookeeper:zookeeper-jute:jar:${zookeeper.version}</include>
<include>org.apache.zookeeper:zookeeper:jar:${zookeeper.version}</include>
<include>org.codehaus.woodstox:stax2-api:jar:${codehaus.woodstox.stax2api.version}</include>
Expand All @@ -102,11 +104,23 @@
<include>org.glassfish.hk2:hk2-runlevel</include>
<include>org.glassfish.hk2:hk2-utils</include>
<include>org.glassfish.hk2:hk2</include>
<include>org.glassfish.jersey.containers:jersey-container-servlet</include>
<include>org.glassfish.jersey.containers:jersey-container-servlet-core</include>
<include>org.glassfish.jersey.core:jersey-client</include>
<include>org.glassfish.jersey.core:jersey-common</include>
<include>org.glassfish.jersey.core:jersey-server</include>
<include>org.glassfish.jersey.ext:jersey-entity-filtering</include>
<include>org.glassfish.jersey.inject:jersey-hk2</include>
<include>org.glassfish.jersey.media:jersey-media-json-jackson</include>
<include>org.springframework.security:spring-security-config</include>
<include>org.springframework.security:spring-security-web</include>
<include>org.springframework:spring-aop</include>
<include>org.springframework:spring-beans</include>
<include>org.springframework:spring-context</include>
<include>org.springframework:spring-context-support</include>
<include>org.springframework:spring-core</include>
<include>org.springframework:spring-expression</include>
<include>org.springframework:spring-web</include>
<include>org.scala-lang:scala-library:jar:${scala.version}</include>
<include>org.slf4j:log4j-over-slf4j:jar:${slf4j.version}</include>
<include>org.slf4j:slf4j-api:jar:${slf4j.version}</include>
Expand All @@ -115,6 +129,17 @@
</dependencySets>
</binaries>
</moduleSet>
<moduleSet>
<useAllReactorProjects>true</useAllReactorProjects>
<includes>
<include>org.apache.ranger:ranger-tagsync</include>
</includes>
<binaries>
<outputDirectory>ews/webapp</outputDirectory>
<includeDependencies>false</includeDependencies>
<unpack>true</unpack>
</binaries>
</moduleSet>
</moduleSets>

<fileSets>
Expand Down
93 changes: 42 additions & 51 deletions tagsync/conf/templates/installprop2xml.properties
Original file line number Diff line number Diff line change
Expand Up @@ -13,60 +13,51 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.


TAGSYNC_ENABLED = ranger.tagsync.enabled

TAG_DEST_RANGER_ENDPOINT = ranger.tagsync.dest.ranger.endpoint
TAG_DEST_RANGER_SSL_CONFIG_FILENAME = ranger.tagsync.dest.ranger.ssl.config.filename

TAG_SOURCE_ATLAS_ENABLED = ranger.tagsync.source.atlas

TAG_SOURCE_ATLAS_KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR = atlas.kafka.offsets.topic.replication.factor
TAG_SOURCE_ATLAS_KAFKA_BOOTSTRAP_SERVERS = atlas.kafka.bootstrap.servers
TAG_SOURCE_ATLAS_KAFKA_ENTITIES_GROUP_ID = atlas.kafka.entities.group.id

TAG_SOURCE_ATLAS_KAFKA_SERVICE_NAME = atlas.kafka.sasl.kerberos.service.name
TAG_SOURCE_ATLAS_KAFKA_SECURITY_PROTOCOL = atlas.kafka.security.protocol

TAG_SOURCE_ATLAS_KERBEROS_PRINCIPAL = atlas.jaas.kafkaClient.option.principal
TAG_SOURCE_ATLAS_KERBEROS_KEYTAB = atlas.jaas.kafkaClient.option.keyTab

TAG_SOURCE_ATLASREST_ENABLED = ranger.tagsync.source.atlasrest

TAG_SOURCE_ATLASREST_ENDPOINT = ranger.tagsync.source.atlasrest.endpoint
TAG_SOURCE_ATLASREST_DOWNLOAD_INTERVAL_IN_MILLIS = ranger.tagsync.source.atlasrest.download.interval.millis

TAG_SOURCE_ATLASREST_USERNAME = ranger.tagsync.source.atlasrest.username
TAG_SOURCE_ATLASREST_PASSWORD = ranger.tagsync.source.atlasrest.password

TAG_SOURCE_FILE_ENABLED = ranger.tagsync.source.file

TAG_SOURCE_FILE_FILENAME = ranger.tagsync.source.file.filename
TAG_SOURCE_FILE_CHECK_INTERVAL_IN_MILLIS = ranger.tagsync.source.file.check.interval.millis

TAGSYNC_ATLAS_TO_RANGER_SERVICE_MAPPING = ranger.tagsync.atlas.to.ranger.service.mapping
TAGSYNC_ATLAS_CUSTOM_RESOURCE_MAPPERS = ranger.tagsync.atlas.custom.resource.mappers

TAGSYNC_KEYSTORE_FILENAME = ranger.tagsync.keystore.filename
TAG_SOURCE_ATLASREST_KEYSTORE_FILENAME = ranger.tagsync.source.atlasrest.keystore.filename
TAG_SOURCE_ATLASREST_SSL_CONFIG_FILENAME = ranger.tagsync.source.atlasrest.ssl.config.filename


unix_user = unix_user
unix_group = unix_group

logdir = ranger.tagsync.logdir

tagsync_principal = ranger.tagsync.kerberos.principal
tagsync_keytab = ranger.tagsync.kerberos.keytab


TAGSYNC_ENABLED=ranger.tagsync.enabled
TAG_DEST_RANGER_ENDPOINT=ranger.tagsync.dest.ranger.endpoint
TAG_DEST_RANGER_SSL_CONFIG_FILENAME=ranger.tagsync.dest.ranger.ssl.config.filename
TAG_SOURCE_ATLAS_ENABLED=ranger.tagsync.source.atlas
TAG_SOURCE_ATLAS_KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=atlas.kafka.offsets.topic.replication.factor
TAG_SOURCE_ATLAS_KAFKA_BOOTSTRAP_SERVERS=atlas.kafka.bootstrap.servers
TAG_SOURCE_ATLAS_KAFKA_ENTITIES_GROUP_ID=atlas.kafka.entities.group.id
TAG_SOURCE_ATLAS_KAFKA_SERVICE_NAME=atlas.kafka.sasl.kerberos.service.name
TAG_SOURCE_ATLAS_KAFKA_SECURITY_PROTOCOL=atlas.kafka.security.protocol
TAG_SOURCE_ATLAS_KERBEROS_PRINCIPAL=atlas.jaas.kafkaClient.option.principal
TAG_SOURCE_ATLAS_KERBEROS_KEYTAB=atlas.jaas.kafkaClient.option.keyTab
TAG_SOURCE_ATLASREST_ENABLED=ranger.tagsync.source.atlasrest
TAG_SOURCE_ATLASREST_ENDPOINT=ranger.tagsync.source.atlasrest.endpoint
TAG_SOURCE_ATLASREST_DOWNLOAD_INTERVAL_IN_MILLIS=ranger.tagsync.source.atlasrest.download.interval.millis
TAG_SOURCE_ATLASREST_USERNAME=ranger.tagsync.source.atlasrest.username
TAG_SOURCE_ATLASREST_PASSWORD=ranger.tagsync.source.atlasrest.password
TAG_SOURCE_FILE_ENABLED=ranger.tagsync.source.file
TAG_SOURCE_FILE_FILENAME=ranger.tagsync.source.file.filename
TAG_SOURCE_FILE_CHECK_INTERVAL_IN_MILLIS=ranger.tagsync.source.file.check.interval.millis
TAGSYNC_ATLAS_TO_RANGER_SERVICE_MAPPING=ranger.tagsync.atlas.to.ranger.service.mapping
TAGSYNC_ATLAS_CUSTOM_RESOURCE_MAPPERS=ranger.tagsync.atlas.custom.resource.mappers
TAGSYNC_KEYSTORE_FILENAME=ranger.tagsync.keystore.filename
TAG_SOURCE_ATLASREST_KEYSTORE_FILENAME=ranger.tagsync.source.atlasrest.keystore.filename
TAG_SOURCE_ATLASREST_SSL_CONFIG_FILENAME=ranger.tagsync.source.atlasrest.ssl.config.filename
unix_user=unix_user
unix_group=unix_group
logdir=ranger.tagsync.logdir
tagsync_principal=ranger.tagsync.kerberos.principal
tagsync_keytab=ranger.tagsync.kerberos.keytab
# TODO - What property in ranger-tagsync-site.xml should hadoop_conf map to??
hadoop_conf = hadoop_conf

hadoop_conf=hadoop_conf
#JVM metrics related property
JVM_METRICS_ENABLED=ranger.tagsync.metrics.enabled
JVM_METRICS_FILENAME=ranger.tagsync.metrics.filename
JVM_METRICS_FILEPATH=ranger.tagsync.metrics.filepath
JVM_METRICS_FREQUENCY_TIME_IN_MILLIS=ranger.tagsync.metrics.frequencytimeinmillis
# Ports
TAGSYNC_HTTP_PORT=ranger.tagsync.service.http.port
TAGSYNC_HTTPS_PORT=ranger.tagsync.service.https.port
TAGSYNC_KEYSTORE_FILE_ALIAS=ranger.tagsync.service.https.attrib.keystore.keyalias
TAGSYNC_KEYSTORE_CRED_ALIAS=ranger.tagsync.service.https.attrib.keystore.credential.alias
TAGSYNC_TRUSTSTORE_ALIAS=ranger.tagsync.truststore.alias
TAGSYNC_CLIENT_AUTH=ranger.tagsync.service.https.attrib.client.auth
TAGSYNC_SERVICE_HOST=ranger.tagsync.service.host
TAGSYNC_CRED_PROVIDER_PATH=ranger.tagsync.credential.provider.path
TAGSYNC_KEYSTORE_FILE_TYPE=ranger.tagsync.keystore.file.type
TAGSYNC_TRUSTSTORE_FILE_TYPE=ranger.tagsync.truststore.file.type
TAGSYNC_SHUTDOWN_PORT=ranger.tagsync.service.shutdown.port
124 changes: 124 additions & 0 deletions tagsync/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -322,6 +322,11 @@
<artifactId>ranger-common-ha</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.ranger</groupId>
<artifactId>ranger-metrics</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.ranger</groupId>
<artifactId>ranger-plugins-common</artifactId>
Expand All @@ -342,6 +347,31 @@
<artifactId>ranger-util</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-annotations-api</artifactId>
<version>${tomcat.embed.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
<version>${tomcat.embed.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-el</artifactId>
<version>${tomcat.embed.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>${tomcat.embed.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-websocket</artifactId>
<version>${tomcat.embed.version}</version>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
Expand Down Expand Up @@ -426,6 +456,54 @@
<artifactId>log4j-over-slf4j</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${springframework.version}</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-jcl</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>${springframework.security.version}</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>${springframework.security.version}</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.glassfish.hk2</groupId>
<artifactId>class-model</artifactId>
Expand Down Expand Up @@ -475,6 +553,12 @@
</dependency>
</dependencies>
<build>
<resources>
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
Expand All @@ -487,6 +571,46 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>${maven-war-plugin.version}</version>
<executions>
<execution>
<id>prepare</id>
<goals>
<goal>exploded</goal>
</goals>
<phase>prepare-package</phase>
<configuration>
<packagingExcludes>WEB-INF/classes/ranger-tagsync-site.xml,
WEB-INF/lib/jersey-client-1.*.jar,
WEB-INF/lib/jersey-core-1.*.jar,
WEB-INF/lib/jersey-json-1.*.jar,
WEB-INF/lib/jersey-multipart-1.*.jar,
WEB-INF/lib/jersey-server-1.*.jar,
WEB-INF/lib/jersey-servlet-1.*.jar</packagingExcludes>
</configuration>
</execution>
<execution>
<id>default-war</id>
<goals>
<goal>war</goal>
</goals>
<phase>package</phase>
<configuration>
<packagingExcludes>WEB-INF/classes/ranger-tagsync-site.xml,
WEB-INF/lib/jersey-client-1.*.jar,
WEB-INF/lib/jersey-core-1.*.jar,
WEB-INF/lib/jersey-json-1.*.jar,
WEB-INF/lib/jersey-multipart-1.*.jar,
WEB-INF/lib/jersey-server-1.*.jar,
WEB-INF/lib/jersey-servlet-1.*.jar</packagingExcludes>
<warSourceDirectory>${project.build.directory}/${project.build.finalName}</warSourceDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Loading