Przeglądaj źródła

AMBARI-10483. Provide option to not install Kerberos Client packages (rlevas)

Robert Levas 10 lat temu
rodzic
commit
12d608141f

+ 10 - 0
ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/kerberos-env.xml

@@ -38,6 +38,16 @@
     <value>true</value>
   </property>
 
+  <property>
+    <name>install_packages</name>
+    <description>
+      Indicates whether Ambari should install the Kerberos client package(s) or not. If not, it is
+      expected that Kerberos utility programs (such as kadmin, kinit, klist, and kdestroy) are
+      compatible with MIT Kerberos 5 version 1.10.3 in command line options and behaviors.
+    </description>
+    <value>true</value>
+  </property>
+
   <property require-input="true">
     <name>ldap_url</name>
     <description>

+ 6 - 1
ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/package/scripts/kerberos_client.py

@@ -22,7 +22,12 @@ from resource_management.libraries.functions.security_commons import cached_kini
 
 class KerberosClient(KerberosScript):
   def install(self, env):
-    self.install_packages(env, ['krb5-server', 'krb5-libs', 'krb5-auth-dialog', 'krb5', 'krb5-kdc', 'krb5-admin-server'])
+    install_packages = default('/configurations/kerberos-env/install_packages', "true")
+    if install_packages:
+      self.install_packages(env, ['krb5-server', 'krb5-libs', 'krb5-auth-dialog', 'krb5', 'krb5-kdc', 'krb5-admin-server'])
+    else:
+      print "Kerberos client packages are not being installed, manual installation is required."
+
     self.configure(env)
 
 

+ 9 - 0
ambari-web/app/data/HDP2/site_properties.js

@@ -1968,6 +1968,15 @@ var hdp2properties = [
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env"
   },
+  {
+    "id": "puppet var",
+    "name": "install_packages",
+    "displayName": "Install OS-specific Kerberos client package(s)",
+    "displayType": "checkbox",
+    "serviceName": "KERBEROS",
+    "filename": "kerberos-env.xml",
+    "category": "Advanced kerberos-env"
+  },
   {
     "id": "puppet var",
     "name": "create_attributes_template",