forked from ISTI-ansible-roles/ansible-roles
templates to configure zeppelin.
This commit is contained in:
parent
a4010fd63b
commit
d8b613a7f2
|
@ -45,7 +45,37 @@ cdh_zeppelin_work_dirs:
|
||||||
- '{{ cdh_zeppelin_home }}/log'
|
- '{{ cdh_zeppelin_home }}/log'
|
||||||
- '{{ cdh_zeppelin_home }}/run'
|
- '{{ cdh_zeppelin_home }}/run'
|
||||||
- '{{ cdh_zeppelin_home }}/base_tmp/tmp'
|
- '{{ cdh_zeppelin_home }}/base_tmp/tmp'
|
||||||
|
|
||||||
|
cdh_zeppelin_conf_files:
|
||||||
|
- zeppelin-env.sh
|
||||||
|
- shiro.ini
|
||||||
|
- zeppelin-site.xml
|
||||||
cdh_zeppelin_ldap_auth: True
|
cdh_zeppelin_ldap_auth: True
|
||||||
|
cdh_zeppelin_notebook_public: 'false'
|
||||||
cdh_zeppelin_dedicated_node: False
|
cdh_zeppelin_dedicated_node: False
|
||||||
|
|
||||||
cdh_impala_load_balancer: False
|
cdh_impala_load_balancer: False
|
||||||
|
|
||||||
|
cdh_zeppelin_ldap_enabled: False
|
||||||
|
cdh_zeppelin_ldap_advanced_config: True
|
||||||
|
cdh_zeppelin_ldap_starttls: 'true'
|
||||||
|
cdh_zeppelin_search_bind_authentication: 'false'
|
||||||
|
cdh_zeppelin_username_pattern: "uid={0},ou=People,dc=mycompany,dc=com"
|
||||||
|
cdh_zeppelin_ldap_search_base: "dc=mycompany,dc=com"
|
||||||
|
cdh_zeppelin_ldap_users_base: "ou=People,dc=mycompany,dc=com"
|
||||||
|
cdh_zeppelin_user_objectclass: posixUser
|
||||||
|
cdh_zeppelin_ldap_group_base: "ou=Groups,dc=mycompany,dc=com"
|
||||||
|
cdh_zeppelin_ldap_group_obj_class: groupofnames
|
||||||
|
cdh_zeppelin_group_template: "cn={0},ou=Groups,dc=mycompany,dc=com"
|
||||||
|
cdh_zeppelin_group_search_filter: '(memberUid={0})'
|
||||||
|
cdh_zeppelin_ldap_nested_groups: 'false'
|
||||||
|
cdh_zeppelin_ldap_roles_by_group: 'cdh_hadoop: userrole, cdh_admin: adminrole'
|
||||||
|
cdh_zeppelin_ldap_bind_u: zeppelin
|
||||||
|
#cdh_zeppelin_ldap_bind_pwd: "use a vault file"
|
||||||
|
|
||||||
|
cdh_zeppelin_ldap_user_attr: uid
|
||||||
|
cdh_zeppelin_ldap_member_attr: member
|
||||||
|
cdh_zeppelin_ldap_group: zeppelin_hadoop
|
||||||
|
cdh_zeppelin_ldap_url: 'ldap://ldap.test.com:389'
|
||||||
|
cdh_zeppelin_secure_urls: True
|
||||||
|
cdh_zeppelin_secure_roles: 'authc, roles[adminrole]'
|
||||||
|
|
|
@ -21,9 +21,11 @@
|
||||||
- name: zeppelin wants to write into the conf directory
|
- name: zeppelin wants to write into the conf directory
|
||||||
file: dest={{ cdh_zeppelin_home }}/{{ cdh_zeppelin_dir }}/conf owner={{ cdh_zeppelin_user }} group={{ cdh_zeppelin_group }}
|
file: dest={{ cdh_zeppelin_home }}/{{ cdh_zeppelin_dir }}/conf owner={{ cdh_zeppelin_user }} group={{ cdh_zeppelin_group }}
|
||||||
|
|
||||||
- name: Install the zeppelin env file
|
- name: Install the zeppelin configuration files
|
||||||
template: src=zeppelin-env.sh dest={{ cdh_zeppelin_home }}/{{ cdh_zeppelin_dir }}/conf/zeppelin-env.sh owner=root group=root mode=0444
|
template: src={{ item }} dest={{ cdh_zeppelin_home }}/{{ cdh_zeppelin_dir }}/conf/{{ item }} owner=root group={{ cdh_zeppelin_group }} mode=0440
|
||||||
|
with_items: '{{ cdh_zeppelin_conf_files }}'
|
||||||
notify: Restart zeppelin
|
notify: Restart zeppelin
|
||||||
|
tags: [ 'cdh', 'zeppelin', 'zeppelin_conf' ]
|
||||||
|
|
||||||
- name: Install the zeppelin upstart startup script
|
- name: Install the zeppelin upstart startup script
|
||||||
template: src=zeppelin_upstart.conf dest=/etc/init/zeppelin.conf
|
template: src=zeppelin_upstart.conf dest=/etc/init/zeppelin.conf
|
||||||
|
|
|
@ -18,32 +18,53 @@
|
||||||
[users]
|
[users]
|
||||||
# List of users with their password allowed to access Zeppelin.
|
# List of users with their password allowed to access Zeppelin.
|
||||||
# To use a different strategy (LDAP / Database / ...) check the shiro doc at http://shiro.apache.org/configuration.html#Configuration-INISections
|
# To use a different strategy (LDAP / Database / ...) check the shiro doc at http://shiro.apache.org/configuration.html#Configuration-INISections
|
||||||
admin = password1, admin
|
{% if not cdh_zeppelin_ldap_enabled %}
|
||||||
user1 = password2, role1, role2
|
admin = {{ cdh_zeppelin_admin_password | default('admin') }}, admin
|
||||||
user2 = password3, role3
|
{% endif %}
|
||||||
user3 = password4, role2
|
|
||||||
|
|
||||||
# Sample LDAP configuration, for user Authentication, currently tested for single Realm
|
# Sample LDAP configuration, for user Authentication, currently tested for single Realm
|
||||||
[main]
|
[main]
|
||||||
### A sample for configuring Active Directory Realm
|
{% if cdh_zeppelin_ldap_enabled %}
|
||||||
#activeDirectoryRealm = org.apache.zeppelin.realm.ActiveDirectoryGroupRealm
|
{% if cdh_zeppelin_ldap_advanced_config %}
|
||||||
#activeDirectoryRealm.systemUsername = userNameA
|
ldapRealm = org.apache.zeppelin.realm.LdapRealm
|
||||||
|
ldapRealm.contextFactory.url = {{ cdh_zeppelin_ldap_url }}
|
||||||
#use either systemPassword or hadoopSecurityCredentialPath, more details in http://zeppelin.apache.org/docs/latest/security/shiroauthentication.html
|
ldapRealm.contextFactory.authenticationMechanism=simple
|
||||||
#activeDirectoryRealm.systemPassword = passwordA
|
ldapRealm.contextFactory.systemUsername = {{ cdh_zeppelin_ldap_bind_u }}
|
||||||
#activeDirectoryRealm.hadoopSecurityCredentialPath = jceks://file/user/zeppelin/zeppelin.jceks
|
ldapRealm.contextFactory.systemPassword = {{ cdh_zeppelin_ldap_bind_pwd }}
|
||||||
#activeDirectoryRealm.searchBase = CN=Users,DC=SOME_GROUP,DC=COMPANY,DC=COM
|
ldapRealm.authorizationEnabled = true
|
||||||
#activeDirectoryRealm.url = ldap://ldap.test.com:389
|
#ldapRealm.userDnTemplate = {{ cdh_zeppelin_username_pattern }}
|
||||||
#activeDirectoryRealm.groupRolesMap = "CN=admin,OU=groups,DC=SOME_GROUP,DC=COMPANY,DC=COM":"admin","CN=finance,OU=groups,DC=SOME_GROUP,DC=COMPANY,DC=COM":"finance","CN=hr,OU=groups,DC=SOME_GROUP,DC=COMPANY,DC=COM":"hr"
|
# Ability to set ldap paging Size if needed default is 100
|
||||||
#activeDirectoryRealm.authorizationCachingEnabled = false
|
#ldapRealm.pagingSize = 200
|
||||||
|
#ldapRealm.searchBase = {{ cdh_zeppelin_ldap_search_base }}
|
||||||
|
ldapRealm.userSearchBase = {{ cdh_zeppelin_ldap_users_base }}
|
||||||
|
ldapRealm.userObjectClass = {{ cdh_zeppelin_user_objectclass }}
|
||||||
|
ldapRealm.groupSearchBase = {{ cdh_zeppelin_ldap_group_base }}
|
||||||
|
ldapRealm.groupObjectClass = {{ cdh_zeppelin_ldap_group_obj_class }}
|
||||||
|
ldapRealm.groupSearchFilter = '{{ cdh_zeppelin_group_search_filter }}'
|
||||||
|
# Allow userSearchAttribute to be customized
|
||||||
|
ldapRealm.userSearchAttributeName = {{ cdh_zeppelin_ldap_user_attr }}
|
||||||
|
ldapRealm.memberAttribute = {{ cdh_zeppelin_ldap_member_attr }}
|
||||||
|
# force usernames returned from ldap to lowercase useful for AD
|
||||||
|
#ldapRealm.userLowerCase = true
|
||||||
|
#ldapRealm.memberAttributeValueTemplate = {{cdh_zeppelin_group_template}}
|
||||||
|
# enable support for nested groups using the LDAPMATCHINGRULEINCHAIN operator
|
||||||
|
#ldapRealm.groupSearchEnableMatchingRuleInChain = {{ cdh_zeppelin_ldap_nested_groups }}
|
||||||
|
# optional mapping from physical groups to logical application roles
|
||||||
|
ldapRealm.rolesByGroup = {{ cdh_zeppelin_ldap_roles_by_group }}
|
||||||
|
# optional list of roles that are allowed to authenticate. In case not present all groups are allowed to authenticate (login).
|
||||||
|
# This changes nothing for url specific permissions that will continue to work as specified in [urls].
|
||||||
|
#ldapRealm.allowedRolesForAuthentication = adminrole,userrole
|
||||||
|
#ldapRealm.permissionsByRole = userrole = *:ToDoItem::*, adminrole = *
|
||||||
|
{% else %}
|
||||||
### A sample for configuring LDAP Directory Realm
|
### A sample for configuring LDAP Directory Realm
|
||||||
#ldapRealm = org.apache.zeppelin.realm.LdapGroupRealm
|
ldapRealm = org.apache.zeppelin.realm.LdapGroupRealm
|
||||||
## search base for ldap groups (only relevant for LdapGroupRealm):
|
## search base for ldap groups (only relevant for LdapGroupRealm):
|
||||||
#ldapRealm.contextFactory.environment[ldap.searchBase] = dc=COMPANY,dc=COM
|
ldapRealm.contextFactory.environment[ldap.searchBase] = {{ cdh_zeppelin_ldap_search_base }}
|
||||||
#ldapRealm.contextFactory.url = ldap://ldap.test.com:389
|
ldapRealm.contextFactory.url = {{ cdh_zeppelin_ldap_url }}
|
||||||
#ldapRealm.userDnTemplate = uid={0},ou=Users,dc=COMPANY,dc=COM
|
ldapRealm.userDnTemplate = {{ cdh_zeppelin_username_pattern }}
|
||||||
#ldapRealm.contextFactory.authenticationMechanism = simple
|
ldapRealm.contextFactory.authenticationMechanism = simple
|
||||||
|
{% endif %}
|
||||||
|
securityManager.realms = $ldapRealm
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
### A sample PAM configuration
|
### A sample PAM configuration
|
||||||
#pamRealm=org.apache.zeppelin.realm.PamRealm
|
#pamRealm=org.apache.zeppelin.realm.PamRealm
|
||||||
|
@ -61,16 +82,22 @@ sessionManager = org.apache.shiro.web.session.mgt.DefaultWebSessionManager
|
||||||
#cacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager
|
#cacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager
|
||||||
#securityManager.cacheManager = $cacheManager
|
#securityManager.cacheManager = $cacheManager
|
||||||
|
|
||||||
|
### Enables 'HttpOnly' flag in Zeppelin cookies
|
||||||
|
cookie = org.apache.shiro.web.servlet.SimpleCookie
|
||||||
|
cookie.name = JSESSIONID
|
||||||
|
cookie.httpOnly = true
|
||||||
|
### Uncomment the below line only when Zeppelin is running over HTTPS
|
||||||
|
cookie.secure = true
|
||||||
|
sessionManager.sessionIdCookie = $cookie
|
||||||
|
|
||||||
securityManager.sessionManager = $sessionManager
|
securityManager.sessionManager = $sessionManager
|
||||||
# 86,400,000 milliseconds = 24 hour
|
# 86,400,000 milliseconds = 24 hour
|
||||||
securityManager.sessionManager.globalSessionTimeout = 86400000
|
securityManager.sessionManager.globalSessionTimeout = 86400000
|
||||||
shiro.loginUrl = /api/login
|
shiro.loginUrl = /api/login
|
||||||
|
|
||||||
[roles]
|
[roles]
|
||||||
role1 = *
|
|
||||||
role2 = *
|
|
||||||
role3 = *
|
|
||||||
admin = *
|
admin = *
|
||||||
|
user = *
|
||||||
|
|
||||||
[urls]
|
[urls]
|
||||||
# This section is used for url-based security.
|
# This section is used for url-based security.
|
||||||
|
@ -79,8 +106,17 @@ admin = *
|
||||||
# authc means Form based Auth Security
|
# authc means Form based Auth Security
|
||||||
# To enfore security, comment the line below and uncomment the next one
|
# To enfore security, comment the line below and uncomment the next one
|
||||||
/api/version = anon
|
/api/version = anon
|
||||||
#/api/interpreter/** = authc, roles[admin]
|
{% if not cdh_zeppelin_secure_urls %}
|
||||||
#/api/configurations/** = authc, roles[admin]
|
/** = anon
|
||||||
#/api/credential/** = authc, roles[admin]
|
{% else %}
|
||||||
#/** = anon
|
{% if cdh_zeppelin_ldap_advanced_config %}
|
||||||
|
/api/interpreter/setting/restart/** = authc
|
||||||
|
/api/interpreter/** = {{ cdh_zeppelin_secure_roles }}
|
||||||
|
/api/configurations/** = {{ cdh_zeppelin_secure_roles }}
|
||||||
|
/api/credential/** = {{ cdh_zeppelin_secure_roles }}
|
||||||
/** = authc
|
/** = authc
|
||||||
|
{% else %}
|
||||||
|
/** = authc
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,360 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
|
||||||
|
<!--
|
||||||
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
|
this work for additional information regarding copyright ownership.
|
||||||
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
(the "License"); you may not use this file except in compliance with
|
||||||
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
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.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<configuration>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.addr</name>
|
||||||
|
<value>0.0.0.0</value>
|
||||||
|
<description>Server address</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.port</name>
|
||||||
|
<value>8080</value>
|
||||||
|
<description>Server port.</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.ssl.port</name>
|
||||||
|
<value>8443</value>
|
||||||
|
<description>Server ssl port. (used when ssl property is set to true)</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.context.path</name>
|
||||||
|
<value>/</value>
|
||||||
|
<description>Context Path of the Web Application</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.war.tempdir</name>
|
||||||
|
<value>webapps</value>
|
||||||
|
<description>Location of jetty temporary directory</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.dir</name>
|
||||||
|
<value>notebook</value>
|
||||||
|
<description>path or URI for notebook persist</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.homescreen</name>
|
||||||
|
<value></value>
|
||||||
|
<description>id of notebook to be displayed in homescreen. ex) 2A94M5J1Z Empty value displays default home screen</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.homescreen.hide</name>
|
||||||
|
<value>false</value>
|
||||||
|
<description>hide homescreen notebook from list when this value set to true</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Amazon S3 notebook storage -->
|
||||||
|
<!-- Creates the following directory structure: s3://{bucket}/{username}/{notebook-id}/note.json -->
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.s3.user</name>
|
||||||
|
<value>user</value>
|
||||||
|
<description>user name for s3 folder structure</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.s3.bucket</name>
|
||||||
|
<value>zeppelin</value>
|
||||||
|
<description>bucket name for notebook storage</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.s3.endpoint</name>
|
||||||
|
<value>s3.amazonaws.com</value>
|
||||||
|
<description>endpoint for s3 bucket</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.storage</name>
|
||||||
|
<value>org.apache.zeppelin.notebook.repo.S3NotebookRepo</value>
|
||||||
|
<description>notebook persistence layer implementation</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- Additionally, encryption is supported for notebook data stored in S3 -->
|
||||||
|
<!-- Use the AWS KMS to encrypt data -->
|
||||||
|
<!-- If used, the EC2 role assigned to the EMR cluster must have rights to use the given key -->
|
||||||
|
<!-- See https://aws.amazon.com/kms/ and http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html -->
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.s3.kmsKeyID</name>
|
||||||
|
<value>AWS-KMS-Key-UUID</value>
|
||||||
|
<description>AWS KMS key ID used to encrypt notebook data in S3</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- provide region of your KMS key -->
|
||||||
|
<!-- See http://docs.aws.amazon.com/general/latest/gr/rande.html#kms_region for region codes names -->
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.s3.kmsKeyRegion</name>
|
||||||
|
<value>us-east-1</value>
|
||||||
|
<description>AWS KMS key region in your AWS account</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- Use a custom encryption materials provider to encrypt data -->
|
||||||
|
<!-- No configuration is given to the provider, so you must use system properties or another means to configure -->
|
||||||
|
<!-- See https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/model/EncryptionMaterialsProvider.html -->
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.s3.encryptionMaterialsProvider</name>
|
||||||
|
<value>provider implementation class name</value>
|
||||||
|
<description>Custom encryption materials provider used to encrypt notebook data in S3</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- If using Azure for storage use the following settings -->
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.azure.connectionString</name>
|
||||||
|
<value>DefaultEndpointsProtocol=https;AccountName=<accountName>;AccountKey=<accountKey></value>
|
||||||
|
<description>Azure account credentials</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.azure.share</name>
|
||||||
|
<value>zeppelin</value>
|
||||||
|
<description>share name for notebook storage</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.azure.user</name>
|
||||||
|
<value>user</value>
|
||||||
|
<description>optional user name for Azure folder structure</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.storage</name>
|
||||||
|
<value>org.apache.zeppelin.notebook.repo.AzureNotebookRepo</value>
|
||||||
|
<description>notebook persistence layer implementation</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- Notebook storage layer using local file system
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.storage</name>
|
||||||
|
<value>org.apache.zeppelin.notebook.repo.VFSNotebookRepo</value>
|
||||||
|
<description>local notebook persistence layer implementation</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- For connecting your Zeppelin with ZeppelinHub -->
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.storage</name>
|
||||||
|
<value>org.apache.zeppelin.notebook.repo.GitNotebookRepo, org.apache.zeppelin.notebook.repo.zeppelinhub.ZeppelinHubRepo</value>
|
||||||
|
<description>two notebook persistence layers (versioned local + ZeppelinHub)</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.storage</name>
|
||||||
|
<value>org.apache.zeppelin.notebook.repo.GitNotebookRepo</value>
|
||||||
|
<description>versioned notebook persistence layer implementation</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.one.way.sync</name>
|
||||||
|
<value>false</value>
|
||||||
|
<description>If there are multiple notebook storages, should we treat the first one as the only source of truth?</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.interpreter.dir</name>
|
||||||
|
<value>interpreter</value>
|
||||||
|
<description>Interpreter implementation base directory</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.interpreter.localRepo</name>
|
||||||
|
<value>local-repo</value>
|
||||||
|
<description>Local repository for interpreter's additional dependency loading</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.interpreter.dep.mvnRepo</name>
|
||||||
|
<value>http://repo1.maven.org/maven2/</value>
|
||||||
|
<description>Remote principal repository for interpreter's additional dependency loading</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.dep.localrepo</name>
|
||||||
|
<value>local-repo</value>
|
||||||
|
<description>Local repository for dependency loader</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.helium.npm.registry</name>
|
||||||
|
<value>http://registry.npmjs.org/</value>
|
||||||
|
<description>Remote Npm registry for Helium dependency loader</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.interpreters</name>
|
||||||
|
<value>org.apache.zeppelin.spark.SparkInterpreter,org.apache.zeppelin.spark.PySparkInterpreter,org.apache.zeppelin.rinterpreter.RRepl,org.apache.zeppelin.rinterpreter.KnitR,org.apache.zeppelin.spark.SparkRInterpreter,org.apache.zeppelin.spark.SparkSqlInterpreter,org.apache.zeppelin.spark.DepInterpreter,org.apache.zeppelin.markdown.Markdown,org.apache.zeppelin.angular.AngularInterpreter,org.apache.zeppelin.shell.ShellInterpreter,org.apache.zeppelin.file.HDFSFileInterpreter,org.apache.zeppelin.flink.FlinkInterpreter,,org.apache.zeppelin.python.PythonInterpreter,org.apache.zeppelin.python.PythonInterpreterPandasSql,org.apache.zeppelin.python.PythonCondaInterpreter,org.apache.zeppelin.python.PythonDockerInterpreter,org.apache.zeppelin.lens.LensInterpreter,org.apache.zeppelin.ignite.IgniteInterpreter,org.apache.zeppelin.ignite.IgniteSqlInterpreter,org.apache.zeppelin.cassandra.CassandraInterpreter,org.apache.zeppelin.geode.GeodeOqlInterpreter,org.apache.zeppelin.postgresql.PostgreSqlInterpreter,org.apache.zeppelin.jdbc.JDBCInterpreter,org.apache.zeppelin.kylin.KylinInterpreter,org.apache.zeppelin.elasticsearch.ElasticsearchInterpreter,org.apache.zeppelin.scalding.ScaldingInterpreter,org.apache.zeppelin.alluxio.AlluxioInterpreter,org.apache.zeppelin.hbase.HbaseInterpreter,org.apache.zeppelin.livy.LivySparkInterpreter,org.apache.zeppelin.livy.LivyPySparkInterpreter,org.apache.zeppelin.livy.LivyPySpark3Interpreter,org.apache.zeppelin.livy.LivySparkRInterpreter,org.apache.zeppelin.livy.LivySparkSQLInterpreter,org.apache.zeppelin.bigquery.BigQueryInterpreter,org.apache.zeppelin.beam.BeamInterpreter,org.apache.zeppelin.pig.PigInterpreter,org.apache.zeppelin.pig.PigQueryInterpreter,org.apache.zeppelin.scio.ScioInterpreter</value>
|
||||||
|
<description>Comma separated interpreter configurations. First interpreter become a default</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.interpreter.group.order</name>
|
||||||
|
<value>spark,md,angular,sh,livy,alluxio,file,psql,flink,python,ignite,lens,cassandra,geode,kylin,elasticsearch,scalding,jdbc,hbase,bigquery,beam</value>
|
||||||
|
<description></description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.interpreter.connect.timeout</name>
|
||||||
|
<value>30000</value>
|
||||||
|
<description>Interpreter process connect timeout in msec.</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.interpreter.output.limit</name>
|
||||||
|
<value>102400</value>
|
||||||
|
<description>Output message from interpreter exceeding the limit will be truncated</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.ssl</name>
|
||||||
|
<value>false</value>
|
||||||
|
<description>Should SSL be used by the servers?</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.ssl.client.auth</name>
|
||||||
|
<value>false</value>
|
||||||
|
<description>Should client authentication be used for SSL connections?</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.ssl.keystore.path</name>
|
||||||
|
<value>keystore</value>
|
||||||
|
<description>Path to keystore relative to Zeppelin configuration directory</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.ssl.keystore.type</name>
|
||||||
|
<value>JKS</value>
|
||||||
|
<description>The format of the given keystore (e.g. JKS or PKCS12)</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.ssl.keystore.password</name>
|
||||||
|
<value>change me</value>
|
||||||
|
<description>Keystore password. Can be obfuscated by the Jetty Password tool</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.ssl.key.manager.password</name>
|
||||||
|
<value>change me</value>
|
||||||
|
<description>Key Manager password. Defaults to keystore password. Can be obfuscated.</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.ssl.truststore.path</name>
|
||||||
|
<value>truststore</value>
|
||||||
|
<description>Path to truststore relative to Zeppelin configuration directory. Defaults to the keystore path</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.ssl.truststore.type</name>
|
||||||
|
<value>JKS</value>
|
||||||
|
<description>The format of the given truststore (e.g. JKS or PKCS12). Defaults to the same type as the keystore type</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.ssl.truststore.password</name>
|
||||||
|
<value>change me</value>
|
||||||
|
<description>Truststore password. Can be obfuscated by the Jetty Password tool. Defaults to the keystore password</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.allowed.origins</name>
|
||||||
|
<value>*</value>
|
||||||
|
<description>Allowed sources for REST and WebSocket requests (i.e. http://onehost:8080,http://otherhost.com). If you leave * you are vulnerable to https://issues.apache.org/jira/browse/ZEPPELIN-173</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.anonymous.allowed</name>
|
||||||
|
<value>true</value>
|
||||||
|
<description>Anonymous user allowed by default</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.notebook.public</name>
|
||||||
|
<value>{{ cdh_zeppelin_notebook_public }}</value>
|
||||||
|
<description>Make notebook public by default when created, private otherwise</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.websocket.max.text.message.size</name>
|
||||||
|
<value>1024000</value>
|
||||||
|
<description>Size in characters of the maximum text message to be received by websocket. Defaults to 1024000</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.default.dir.allowed</name>
|
||||||
|
<value>false</value>
|
||||||
|
<description>Enable directory listings on server.</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.jetty.name</name>
|
||||||
|
<value>Jetty(7.6.0.v20120127)</value>
|
||||||
|
<description>Hardcoding Application Server name to Prevent Fingerprinting</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.xframe.options</name>
|
||||||
|
<value>SAMEORIGIN</value>
|
||||||
|
<description>The X-Frame-Options HTTP response header can be used to indicate whether or not a browser should be allowed to render a page in a frame/iframe/object.</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.strict.transport</name>
|
||||||
|
<value>max-age=631138519</value>
|
||||||
|
<description>The HTTP Strict-Transport-Security response header is a security feature that lets a web site tell browsers that it should only be communicated with using HTTPS, instead of using HTTP. Enable this when Zeppelin is running on HTTPS. Value is in Seconds, the default value is equivalent to 20 years.</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
<property>
|
||||||
|
<name>zeppelin.server.xxss.protection</name>
|
||||||
|
<value>1</value>
|
||||||
|
<description>The HTTP X-XSS-Protection response header is a feature of Internet Explorer, Chrome and Safari that stops pages from loading when they detect reflected cross-site scripting (XSS) attacks. When value is set to 1 and a cross-site scripting attack is detected, the browser will sanitize the page (remove the unsafe parts).</description>
|
||||||
|
</property>
|
||||||
|
-->
|
||||||
|
</configuration>
|
Loading…
Reference in New Issue