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:05:13 UTC

directory-kerby git commit: Add license in docs.

Repository: directory-kerby
Updated Branches:
  refs/heads/trunk 4e5fe028a -> e804fb4c0


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/e804fb4c
Tree: http://git-wip-us.apache.org/repos/asf/directory-kerby/tree/e804fb4c
Diff: http://git-wip-us.apache.org/repos/asf/directory-kerby/diff/e804fb4c

Branch: refs/heads/trunk
Commit: e804fb4c096b2f1cbd6a504d9902abdcf9a08b0a
Parents: 4e5fe02
Author: plusplusjiajia <ji...@intel.com>
Authored: Thu Aug 9 11:02:18 2018 +0800
Committer: plusplusjiajia <ji...@intel.com>
Committed: Thu Aug 9 11:02:18 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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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/e804fb4c/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
 ===================