Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
2.4.0
Description
STR:
- Install cluster 2.4.2.0-258 on Ambari 2.2.2.0
- Enable HA
- Enable security
- Upgrade ambari to 240
- Perform RU to 2.5.0.0-1208
Deeper study shows that kerberos descriptor json in database ("artifact" table) still contains values and properties that are actual for 2.4 stack.
So the issue workflow should look like:
- Old stack version is installed
- Kerberos descriptor gets saved to database
- Security is enabled
- Stack upgrade is performed
- Keytab regeneration is performed, and it populates service config with obsolete property values
The issue happens on "Stack upgrade is performed" step. We never update kerberos descriptor json in database to correspond to a new stack.
From nimbus.out
Exception in thread "main" java.lang.ExceptionInInitializerError at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:270) at clojure.lang.RT.classForName(RT.java:2154) at clojure.lang.RT.classForName(RT.java:2163) at clojure.lang.RT.loadClassForName(RT.java:2182) at clojure.lang.RT.load(RT.java:436) at clojure.lang.RT.load(RT.java:412) at clojure.core$load$fn__5448.invoke(core.clj:5866) at clojure.core$load.doInvoke(core.clj:5865) at clojure.lang.RestFn.invoke(RestFn.java:408) at clojure.core$load_one.invoke(core.clj:5671) at clojure.core$load_lib$fn__5397.invoke(core.clj:5711) at clojure.core$load_lib.doInvoke(core.clj:5710) at clojure.lang.RestFn.applyTo(RestFn.java:142) at clojure.core$apply.invoke(core.clj:632) at clojure.core$load_libs.doInvoke(core.clj:5749) at clojure.lang.RestFn.applyTo(RestFn.java:137) at clojure.core$apply.invoke(core.clj:632) at clojure.core$require.doInvoke(core.clj:5832) at clojure.lang.RestFn.invoke(RestFn.java:408) at org.apache.storm.daemon.nimbus$loading__5340__auto____8560.invoke(nimbus.clj:16) at org.apache.storm.daemon.nimbus__init.load(Unknown Source) at org.apache.storm.daemon.nimbus__init.<clinit>(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:270) at clojure.lang.RT.classForName(RT.java:2154) at clojure.lang.RT.classForName(RT.java:2163) at clojure.lang.RT.loadClassForName(RT.java:2182) at clojure.lang.RT.load(RT.java:436) at clojure.lang.RT.load(RT.java:412) at clojure.core$load$fn__5448.invoke(core.clj:5866) at clojure.core$load.doInvoke(core.clj:5865) at clojure.lang.RestFn.invoke(RestFn.java:408) at clojure.lang.Var.invoke(Var.java:379) at org.apache.storm.daemon.nimbus.<clinit>(Unknown Source) Caused by: java.lang.ClassNotFoundException: backtype.storm.security.auth.authorizer.SimpleACLAuthorizer at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:190) at org.apache.storm.daemon.common$mk_authorization_handler.invoke(common.clj:412) at org.apache.storm.ui.core__init.load(Unknown Source) at org.apache.storm.ui.core__init.<clinit>(Unknown Source) ... 35 more
Attachments
Attachments
Issue Links
- links to