You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by pl...@apache.org on 2018/08/09 03:47:49 UTC
[2/3] directory-kerby git commit: Add license in docs.
Add license in docs.
Project: http://git-wip-us.apache.org/repos/asf/directory-kerby/repo
Commit: http://git-wip-us.apache.org/repos/asf/directory-kerby/commit/48aa21fb
Tree: http://git-wip-us.apache.org/repos/asf/directory-kerby/tree/48aa21fb
Diff: http://git-wip-us.apache.org/repos/asf/directory-kerby/diff/48aa21fb
Branch: refs/heads/kerby-2.0.0
Commit: 48aa21fb636cddd709b3588f85f2da587327debd
Parents: 5513aee
Author: plusplusjiajia <ji...@intel.com>
Authored: Thu Aug 9 11:02:18 2018 +0800
Committer: plusplusjiajia <ji...@intel.com>
Committed: Thu Aug 9 11:44:26 2018 +0800
----------------------------------------------------------------------
has-project/README.md | 21 +++-
has-project/docs/cross-realm.md | 73 +++++++++++++
has-project/docs/deploy-https.md | 19 ++++
has-project/docs/deploy-spnego.md | 19 ++++
has-project/docs/has-ha.md | 143 ++++++++++++++++++++++++++
has-project/docs/has-start.md | 19 ++++
has-project/docs/ldap-plugin.md | 19 ++++
has-project/docs/mysql-backend.md | 42 ++++++++
has-project/docs/mysql-plugin.md | 18 ++++
has-project/docs/performance-report.md | 19 ++++
has-project/supports/hadoop/README.md | 19 ++++
has-project/supports/hbase/README.md | 19 ++++
has-project/supports/hive/README.md | 19 ++++
has-project/supports/oozie/README.md | 19 ++++
has-project/supports/phoenix/README.md | 19 ++++
has-project/supports/presto/README.md | 19 ++++
has-project/supports/spark/README.md | 19 ++++
has-project/supports/thrift/README.md | 19 ++++
has-project/supports/zookeeper/README.md | 19 ++++
19 files changed, 562 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/README.md
----------------------------------------------------------------------
diff --git a/has-project/README.md b/has-project/README.md
index e90fbe4..58451c1 100644
--- a/has-project/README.md
+++ b/has-project/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
# Hadoop Authentication Service (HAS)
A dedicated Hadoop Authentication Server to support various authentication mechanisms other than just Kerberos.
@@ -46,7 +65,7 @@ Please look at [High Availability](docs/has-ha.md) for details.
Please look at [How to setup cross-realm](docs/cross-realm.md) for details.
## Performance test report
-Please look at [docs/performance-report.md) for details.
+Please look at [Performance test report](docs/performance-report.md) for details.
## List of supported Hadoop ecosystem components
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/docs/cross-realm.md
----------------------------------------------------------------------
diff --git a/has-project/docs/cross-realm.md b/has-project/docs/cross-realm.md
new file mode 100644
index 0000000..8c1fb36
--- /dev/null
+++ b/has-project/docs/cross-realm.md
@@ -0,0 +1,73 @@
+<!--
+ 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.
+-->
+
+Establish cross realm trust
+============
+
+### Synchronize time of realms
+The time of realms should be synchronized.
+
+### Add the same special principals in realms, please select a very strong password
+```
+cd kerby-dist/kdc-dist
+sh bin/kadmin.sh [server-conf-dir] -k [keytab]
+// A.EXAMPLE.COM realm to access a service in the B.EXAMPLE.COM realm
+HadminLocalTool.local: addprinc -pw [same-password] krbtgt/B.EXAMPLE.COM@A.EXAMPLE.COM
+// Make sure that both principals have matching key version numbers and encryption types
+HadminLocalTool.local: getprinc krbtgt/B.EXAMPLE.COM@A.EXAMPLE.COM
+```
+
+### Configure krb5.conf of realms
+
+* config realms and domain_realms sections, make sure the realms are contained.
+
+* config capaths section, which contains the realm chain.
+
+An example of krb5.conf:
+```
+[realms]
+ A.EXAMPLE.COM = {
+ kdc = A.EXAMPLE.COM
+ }
+ B.EXAMPLE.COM = {
+ kdc = B.EXAMPLE.COM
+ }
+
+[domain_realm]
+ .A.EXAMPLE.COM = a.example.com
+ A.EXAMPLE.COM = a.example.com
+ .B.EXAMPLE.COM = b.example.com
+ B.EXAMPLE.COM = b.example.com
+
+[capaths]
+ A.EXAMPLE.COM = {
+ B.EXAMPLE.COM = .
+ }
+ B.EXAMPLE.COM = {
+ A.EXAMPLE.COM = .
+ }
+```
+
+> Make sure the FQDN match the realm name, e.g. if the FQDN is localhost.hadoop.com, the realm should be HADOOP.COM.
+
+### Validate
+```
+cd kerby-dist/tool-dist
+sh bin/kinit.sh -conf [client-conf-dir] -c [credential-cache-of-local-realm] -S [principal-name-of-remote-realm]
+```
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/docs/deploy-https.md
----------------------------------------------------------------------
diff --git a/has-project/docs/deploy-https.md b/has-project/docs/deploy-https.md
index d221e5b..13dc0a1 100644
--- a/has-project/docs/deploy-https.md
+++ b/has-project/docs/deploy-https.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Deploy HTTPS
===============
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/docs/deploy-spnego.md
----------------------------------------------------------------------
diff --git a/has-project/docs/deploy-spnego.md b/has-project/docs/deploy-spnego.md
index d86922b..803c345 100644
--- a/has-project/docs/deploy-spnego.md
+++ b/has-project/docs/deploy-spnego.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Deploy SPNEGO
================
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/docs/has-ha.md
----------------------------------------------------------------------
diff --git a/has-project/docs/has-ha.md b/has-project/docs/has-ha.md
new file mode 100644
index 0000000..5376b48
--- /dev/null
+++ b/has-project/docs/has-ha.md
@@ -0,0 +1,143 @@
+<!--
+ 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.
+-->
+
+High Availability Using MySQL Backend
+========================================
+
+The HAS High Availability feature implemented by providing the option of running two redundant HAS servers.
+
+## Deployment
+
+### 1. Configure has-server.conf
+
+The two redundant HAS servers must have same https ports. Below are examples:
+
+* has-server.conf of HAS server on emr-header-1:
+```
+[HAS]
+ https_host = emr-header-1
+ https_port = 8092
+ filter_auth_type = kerberos
+ enable_conf = true
+
+[PLUGIN]
+ auth_type = RAM
+```
+
+* has-server.conf of HAS server on emr-worker-1:
+```
+[HAS]
+ https_host = emr-worker-1
+ https_port = 8092
+ filter_auth_type = kerberos
+ enable_conf = true
+
+[PLUGIN]
+ auth_type = RAM
+```
+
+### 2. Start HAS servers
+
+### 3. Configure HAS backend
+
+The two redundant HAS servers must use **mysql** backend, and have same *mysql_url*, *mysql_user* and *mysql_password*.
+
+Please look at [How to use mysql backend](docs/mysql-backend.md) for mysql backend configuration.
+
+### 4. Configure HAS KDC
+
+The two redundant HAS servers must have same ports and realms.
+
+### 5. Start and init HAS KDC servers
+
+> After doing init on either HAS server, the other one has been initialized too.
+>
+> Please keep the shared admin.keytab safely.
+
+### 6. Reexport has-client.conf for HAS web server HA
+
+```
+cd HAS/has-dist
+// Start KDC init tool
+sh bin/kdcinit.sh <conf_dir>
+// Get has-client.conf, and put it to /etc/has:
+KdcInitTool: gethas -p /etc/has
+KdcInitTool: exit
+```
+
+You will get has-client.conf like the following:
+```
+[HAS]
+ https_host = emr-header-1,emr-worker-1
+ https_port = 8092
+ filter_auth_type = kerberos
+ enable_conf = true
+
+[PLUGIN]
+ auth_type = RAM
+```
+
+Hadoop user can use HAS HA feature by updating **core-site.xml** without Reexport has-client.conf.
+add the following properties:
+```
+<property>
+ <name>hadoop.security.has</name>
+ <value>https://emr-header-1:8092/has/v1?auth_type=RAM;https://emr-worker-1:8092/has/v1?auth_type=RAM</value>
+</property>
+```
+
+### 7. Reexport krb5.conf for HAS KDC HA
+
+```
+cd HAS/has-dist
+// Start KDC init tool:
+sh bin/kdcinit.sh <conf_dir>
+// Get krb5.conf, and put it to /etc:
+KdcInitTool: getkrb5 -p /etc
+KdcInitTool: exit
+```
+
+You will get krb5.conf like the following:
+```
+[libdefaults]
+ kdc_realm = HADOOP.COM
+ default_realm = HADOOP.COM
+ udp_preference_limit = 4096
+ kdc_tcp_port = 88
+ kdc_udp_port = 88
+
+[realms]
+ HADOOP.COM = {
+ kdc = localhost:88
+ kdc = localhost:88
+ }
+```
+
+## Verification
+
+You can use login-test tool to verify:
+
+### 1. Update hadmin.conf in <conf_dir>
+
+### 2. Run login-test tool
+```
+cd HAS/has-dist
+// Use tgt to login
+sh bin/login-test.sh tgt <conf_dir> MySQL
+```
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/docs/has-start.md
----------------------------------------------------------------------
diff --git a/has-project/docs/has-start.md b/has-project/docs/has-start.md
index 8fbf825..e46ddec 100644
--- a/has-project/docs/has-start.md
+++ b/has-project/docs/has-start.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Getting Started
================
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/docs/ldap-plugin.md
----------------------------------------------------------------------
diff --git a/has-project/docs/ldap-plugin.md b/has-project/docs/ldap-plugin.md
index 5694e95..8738f37 100644
--- a/has-project/docs/ldap-plugin.md
+++ b/has-project/docs/ldap-plugin.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
LDAP Plugin
===============
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/docs/mysql-backend.md
----------------------------------------------------------------------
diff --git a/has-project/docs/mysql-backend.md b/has-project/docs/mysql-backend.md
new file mode 100644
index 0000000..93e5d76
--- /dev/null
+++ b/has-project/docs/mysql-backend.md
@@ -0,0 +1,42 @@
+<!--
+ 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.
+-->
+
+MySQL Backend
+===============
+
+## Install MySQL
+
+Please refer to [install mysql](https://dev.mysql.com/doc/refman/5.7/en/linux-installation.html).
+
+## Config backend
+```
+// Url: jdbc url of mysql database; mysqlbackend: name of has mysql backend database; username: mysql user name; password: mysql password
+cd HAS/has-dist
+sh bin/kdcinit.sh conf
+KdcInitTool: config_kdcBackend mysql jdbc:mysql://127.0.0.1:3306/mysqlbackend?createDB=true root passwd
+KdcInitTool: exit
+```
+
+## Config kdc
+```
+cd HAS/has-dist
+sh bin/kdcinit.sh conf
+KdcInitTool: config_kdc localhost 88 HADOOP.COM
+KdcInitTool: exit
+```
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/docs/mysql-plugin.md
----------------------------------------------------------------------
diff --git a/has-project/docs/mysql-plugin.md b/has-project/docs/mysql-plugin.md
index d7b697b..1aea246 100644
--- a/has-project/docs/mysql-plugin.md
+++ b/has-project/docs/mysql-plugin.md
@@ -1,3 +1,21 @@
+<!--
+ 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.
+-->
MySQL Plugin
===============
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/docs/performance-report.md
----------------------------------------------------------------------
diff --git a/has-project/docs/performance-report.md b/has-project/docs/performance-report.md
index 319bec2..6ecf2c5 100644
--- a/has-project/docs/performance-report.md
+++ b/has-project/docs/performance-report.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
# HAS Performance Test Report
## 1. Overview
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/supports/hadoop/README.md
----------------------------------------------------------------------
diff --git a/has-project/supports/hadoop/README.md b/has-project/supports/hadoop/README.md
index 70da3a4..8b741de 100644
--- a/has-project/supports/hadoop/README.md
+++ b/has-project/supports/hadoop/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Enable Hadoop
================
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/supports/hbase/README.md
----------------------------------------------------------------------
diff --git a/has-project/supports/hbase/README.md b/has-project/supports/hbase/README.md
index 5b1b826..468e6b7 100644
--- a/has-project/supports/hbase/README.md
+++ b/has-project/supports/hbase/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Enable HBase
===============
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/supports/hive/README.md
----------------------------------------------------------------------
diff --git a/has-project/supports/hive/README.md b/has-project/supports/hive/README.md
index d00e629..0d39f44 100644
--- a/has-project/supports/hive/README.md
+++ b/has-project/supports/hive/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Enable Hive
==============
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/supports/oozie/README.md
----------------------------------------------------------------------
diff --git a/has-project/supports/oozie/README.md b/has-project/supports/oozie/README.md
index 4760f97..7fcf76f 100644
--- a/has-project/supports/oozie/README.md
+++ b/has-project/supports/oozie/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Enable Oozie
===============
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/supports/phoenix/README.md
----------------------------------------------------------------------
diff --git a/has-project/supports/phoenix/README.md b/has-project/supports/phoenix/README.md
index 05755fb..a454c96 100644
--- a/has-project/supports/phoenix/README.md
+++ b/has-project/supports/phoenix/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Enable Phoenix
=================
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/supports/presto/README.md
----------------------------------------------------------------------
diff --git a/has-project/supports/presto/README.md b/has-project/supports/presto/README.md
index 244efe6..e83270b 100644
--- a/has-project/supports/presto/README.md
+++ b/has-project/supports/presto/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Enable Presto
================
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/supports/spark/README.md
----------------------------------------------------------------------
diff --git a/has-project/supports/spark/README.md b/has-project/supports/spark/README.md
index 84e9eac..5e1988b 100644
--- a/has-project/supports/spark/README.md
+++ b/has-project/supports/spark/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Enable Spark
===============
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/supports/thrift/README.md
----------------------------------------------------------------------
diff --git a/has-project/supports/thrift/README.md b/has-project/supports/thrift/README.md
index db49d38..a35b8d2 100644
--- a/has-project/supports/thrift/README.md
+++ b/has-project/supports/thrift/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Enable Thrift
================
http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/48aa21fb/has-project/supports/zookeeper/README.md
----------------------------------------------------------------------
diff --git a/has-project/supports/zookeeper/README.md b/has-project/supports/zookeeper/README.md
index f74c5dd..be9229a 100644
--- a/has-project/supports/zookeeper/README.md
+++ b/has-project/supports/zookeeper/README.md
@@ -1,3 +1,22 @@
+<!--
+ 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.
+-->
+
Enable ZooKeeper
===================