Uploaded image for project: 'Puppet Server'
  1. Puppet Server
  2. SERVER-2203

On upgrade from v3.8.7 puppetserver fails to start

    Details

    • Type: Bug
    • Status: Accepted
    • Priority: Normal
    • Resolution: Unresolved
    • Affects Version/s: SERVER 5.3.1
    • Fix Version/s: None
    • Component/s: Puppet Server
    • Labels:
      None
    • Template:
      PUP Bug Template
    • Method Found:
      Needs Assessment
    • QA Risk Assessment:
      Needs Assessment

      Description

      Puppet Version: n/a
      Puppet Server Version: 5.3.1
      OS Name/Version: CentOS 7.2

      I'm not absolutely sure if this is the correct place to report this issue, but here we go...

      I have Upgraded our puppetmaster from running version 3.8.7 (packaged version), to puppetserver 5.3.1. The puppetserver would not start and gave the error below.

      puppetserver[x]: Exception in thread "main" java.lang.Error: java.io.FileNotFoundException: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64/jre/lib/tzdb.dat (No such file or directory)

      In order to fix the problem, I needed to install the updated package "tzdata-java" as the file "tzdb.dat" was being linked to but did not exist. At this point puppetserver started...This could be useful for others having the same issue.

      Describe steps to reproduce… After puppetserver installation then try to start it... The CentOS version was installed as 7.2 but has some updated packages to version 7.4 equivalent.

      sudo /opt/puppetlabs/bin/puppet resource service puppetserver ensure=running enable=true

      Desired Behavior:

      Start Puppet Server

      Actual Behavior:

      $ sudo /opt/puppetlabs/bin/puppet resource service puppetserver ensure=running enable=true
      Error: Systemd start for puppetserver failed!
      journalctl log for puppetserver:
      – Logs begin at Mon 2018-03-19 08:17:26 MDT, end at Thu 2018-05-03 14:34:51 MDT. –
      May 03 14:34:50 HOST.DOMAIN systemd[1]: Starting puppetserver Service...
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: Exception in thread "main" java.lang.Error: java.io.FileNotFoundException: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64/jre/lib/tzdb.dat (No such file or directory)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at sun.util.calendar.ZoneInfoFile$1.run(ZoneInfoFile.java:261)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.security.AccessController.doPrivileged(Native Method)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at sun.util.calendar.ZoneInfoFile.<clinit>(ZoneInfoFile.java:251)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at sun.util.calendar.ZoneInfo.getTimeZone(ZoneInfo.java:589)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.TimeZone.getTimeZone(TimeZone.java:560)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.TimeZone.setDefaultZone(TimeZone.java:666)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.TimeZone.getDefaultRef(TimeZone.java:636)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.Date.<init>(Date.java:254)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.zip.ZipUtils.dosToJavaTime(ZipUtils.java:71)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.zip.ZipUtils.extendedDosToJavaTime(ZipUtils.java:88)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.zip.ZipEntry.getTime(ZipEntry.java:194)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.lastModified(RT.java:391)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.load(RT.java:434)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.load(RT.java:419)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.doInit(RT.java:461)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.<clinit>(RT.java:331)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.main.<clinit>(main.java:20)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: Caused by: java.io.FileNotFoundException: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64/jre/lib/tzdb.dat (No such file or directory)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.io.FileInputStream.open0(Native Method)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.io.FileInputStream.open(FileInputStream.java:195)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.io.FileInputStream.<init>(FileInputStream.java:138)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at sun.util.calendar.ZoneInfoFile$1.run(ZoneInfoFile.java:255)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: ... 16 more
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: Background process 4048 exited before start had completed
      May 03 14:34:51 HOST.DOMAIN systemd[1]: puppetserver.service: control process exited, code=exited status=1
      May 03 14:34:51 HOST.DOMAIN systemd[1]: Failed to start puppetserver Service.
      May 03 14:34:51 HOST.DOMAIN systemd[1]: Unit puppetserver.service entered failed state.

      Error: /Service[puppetserver]/ensure: change from 'stopped' to 'running' failed: Systemd start for puppetserver failed!
      journalctl log for puppetserver:
      – Logs begin at Mon 2018-03-19 08:17:26 MDT, end at Thu 2018-05-03 14:34:51 MDT. –
      May 03 14:34:50 HOST.DOMAIN systemd[1]: Starting puppetserver Service...
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: Exception in thread "main" java.lang.Error: java.io.FileNotFoundException: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64/jre/lib/tzdb.dat (No such file or directory)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at sun.util.calendar.ZoneInfoFile$1.run(ZoneInfoFile.java:261)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.security.AccessController.doPrivileged(Native Method)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at sun.util.calendar.ZoneInfoFile.<clinit>(ZoneInfoFile.java:251)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at sun.util.calendar.ZoneInfo.getTimeZone(ZoneInfo.java:589)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.TimeZone.getTimeZone(TimeZone.java:560)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.TimeZone.setDefaultZone(TimeZone.java:666)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.TimeZone.getDefaultRef(TimeZone.java:636)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.Date.<init>(Date.java:254)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.zip.ZipUtils.dosToJavaTime(ZipUtils.java:71)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.zip.ZipUtils.extendedDosToJavaTime(ZipUtils.java:88)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.util.zip.ZipEntry.getTime(ZipEntry.java:194)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.lastModified(RT.java:391)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.load(RT.java:434)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.load(RT.java:419)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.doInit(RT.java:461)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.lang.RT.<clinit>(RT.java:331)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at clojure.main.<clinit>(main.java:20)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: Caused by: java.io.FileNotFoundException: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64/jre/lib/tzdb.dat (No such file or directory)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.io.FileInputStream.open0(Native Method)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.io.FileInputStream.open(FileInputStream.java:195)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at java.io.FileInputStream.<init>(FileInputStream.java:138)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: at sun.util.calendar.ZoneInfoFile$1.run(ZoneInfoFile.java:255)
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: ... 16 more
      May 03 14:34:51 HOST.DOMAIN puppetserver[4039]: Background process 4048 exited before start had completed
      May 03 14:34:51 HOST.DOMAIN systemd[1]: puppetserver.service: control process exited, code=exited status=1
      May 03 14:34:51 HOST.DOMAIN systemd[1]: Failed to start puppetserver Service.
      May 03 14:34:51 HOST.DOMAIN systemd[1]: Unit puppetserver.service entered failed state.

      service

      Unknown macro: { 'puppetserver'}

      So I check the java installed...(trying to figure out the issue, lol)

      $ sudo yum list java*
      Installed Packages
      java-1.7.0-openjdk.x86_64 1:1.7.0.79-2.5.5.1.el7_1 @updates
      java-1.7.0-openjdk-headless.x86_64 1:1.7.0.79-2.5.5.1.el7_1 @updates
      java-1.8.0-openjdk-headless.x86_64 1:1.8.0.161-0.b14.el7_4 @updates
      java-1.8.0-openjdk.x86_64 1:1.8.0.161-0.b14.el7_4 @updates

      The file is linked to...

      $ sudo ls -lh /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64/jre/lib/tzdb.dat
      lrwxrwxrwx 1 root root 30 May 1 14:43 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64/jre/lib/tzdb.dat -> /usr/share/javazi-1.8/tzdb.dat

      But it doesn't exist...

      1. ls -lh /usr/share/javazi-1.8/tzdb.dat
        ls: cannot access /usr/share/javazi-1.8/tzdb.dat: No such file or directory

      Scratch my head a bit, search on the net... Found possible solution... Installed update to "tzdata-java". From "tzdata-java.noarch 2015d-1.el7" to "tzdata-java.noarch 2018d-1.el7".

      Now it works...

      $ sudo /opt/puppetlabs/bin/puppet resource service puppetserver ensure=running enable=true
      Notice: /Service[puppetserver]/ensure: ensure changed 'stopped' to 'running'
      service

      Unknown macro: { 'puppetserver'}

      $ systemctl status puppetserver.service
      puppetserver.service - puppetserver Service
      Loaded: loaded (/usr/lib/systemd/system/puppetserver.service; enabled)
      Active: active (running) since Thu 2018-05-03 17:01:50 MDT; 11s ago
      Main PID: 8966 (java)
      CGroup: /system.slice/puppetserver.service
      └─8966 /usr/bin/java -Xms2g -Xmx2g -Djruby.logger.class=com.puppetlabs.jruby_utils.jruby.Slf4jLogger -Djava.security.egd=/dev/urandom -XX:OnOutOfMemoryError=kil...

      Regards.

       

        Attachments

          Activity

            jsd-sla-details-panel

              People

              • Assignee:
                Unassigned
                Reporter:
                trekytech7 Scott Landsborough
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated: