Uploaded image for project: 'Artifactory Binary Repository'
  1. Artifactory Binary Repository
  2. RTFACT-14867

Nodes should not fail a restart if the Bootstrap bundle is present under an $NFS_MOUNT/ha-etc

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 5.5.0
    • Fix Version/s: 5.7.0
    • Component/s: HA, Installer
    • Labels:
      None

      Description

      Artifactory version 5.2.1 presented the automatic deployment of the bootstrap bundle (BSB) for HA installations on the shared NFS/ha-etc.

      If the BSB is not removed from the shared ha-etc, and a node (e.g. the primary node) was restarted (after a successful first startup and DB schema update, among other actions) it will attempt to redeploy the bootstrap bundle since it was present on the shared NFS/ha-etc location.

      • No UI message is presented about the existence of the node if you attempt to address the primary node
      • Possibly copy the bundle under the nodes' $ART_HOME/etc in order for it to be attempted to be redeployed (only) from nodes' home only if is the first startup as the behavior for deploying the BSB from the nodes' home exists.

      $ tail -f -n 50 jfrog-access.bootstrap.log

      2017-08-24 15:02:11 [jfrog-access] [INFO ] Found bootstrap bundle file: /clusterhome/ha-etc/bootstrap.bundle.tar.gz
      2017-08-24 15:02:11 [jfrog-access] [INFO ] Deploying bootstrap bundle file to: /var/opt/jfrog/artifactory
      

      $ tail -f -n 300 catalina.out

      2017-08-24 15:02:10 [ARTIFACTORY] [INFO ] Starting Artifactory [artifactory.home=/var/opt/jfrog/artifactory].
      2017-08-24 15:02:11,246 [art-init] [INFO ] (o.a.w.s.ArtifactoryContextConfigListener:280) -
                      _   _  __           _                     _    _
           /\        | | (_)/ _|         | |                   | |  | |   /\
          /  \   _ __| |_ _| |_ __ _  ___| |_ ___  _ __ _   _  | |__| |  /  \
         / /\ \ | '__| __| |  _/ _` |/ __| __/ _ \| '__| | | | |  __  | / /\ \
        / ____ \| |  | |_| | || (_| | (__| || (_) | |  | |_| | | |  | |/ ____ \
       /_/    \_\_|   \__|_|_| \__,_|\___|\__\___/|_|   \__, | |_|  |_/_/    \_\
       Version:  5.4.6                                   __/ |
       Revision: 50406900                               |___/
       Artifactory Home: '/var/opt/jfrog/artifactory'
       Artifactory data dir: '/clusterhome/ha-data'
       HA Node ID: 'primary'
      
      2017-08-24 15:02:11.253  INFO 783 --- [ost-startStop-1] o.j.a.s.startup.AccessHomeFinderImpl     : Using JFrog Access home at '/var/opt/jfrog/artifactory/access' resolved from: System property (Artifactory)
      2017-08-24 15:02:11 [jfrog-access] [INFO ] Found bootstrap bundle file: /clusterhome/ha-etc/bootstrap.bundle.tar.gz
      2017-08-24 15:02:11 [jfrog-access] [INFO ] Deploying bootstrap bundle file to: /var/opt/jfrog/artifactory
      Aug 24, 2017 3:02:11 PM org.apache.catalina.startup.HostConfig deployDescriptor
      INFO: Deployment of configuration descriptor /opt/jfrog/artifactory/tomcat/conf/Catalina/localhost/artifactory.xml has finished in 2,949 ms
      2017-08-24 15:02:11.458  WARN 783 --- [ost-startStop-1] o.s.boot.SpringApplication               : Error handling failed (ApplicationEventMulticaster not initialized - call 'refresh' before multicasting events via the context: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@3270a0b: startup date [Thu Jan 01 00:00:00 UTC 1970]; root of context hierarchy)
      2017-08-24 15:02:11.488 ERROR 783 --- [ost-startStop-1] o.s.boot.SpringApplication               : Application startup failed
      
      java.lang.IllegalStateException: Found conflicting files in the bootstrap bundle: /var/opt/jfrog/artifactory/access/etc/keys/private.key, /var/opt/jfrog/artifactory/access/etc/keys/root.crt, /var/opt/jfrog/artifactory/etc/db.properties, /var/opt/jfrog/artifactory/etc/security/communication.key
      	at org.jfrog.access.server.startup.BootstrapBundleHandler.assertNoConflicts(BootstrapBundleHandler.java:82) ~[access-server-core-2.0.2.jar:na]
      	at org.jfrog.access.server.startup.BootstrapBundleHandler.lambda$deployIfExists$0(BootstrapBundleHandler.java:58) ~[access-server-core-2.0.2.jar:na]
      	at java.util.Optional.ifPresent(Optional.java:159) ~[na:1.8.0_91]
      
      Causing to Access to fail after the 60 timeout seconds:
      
      2017-08-24 15:03:23,643 [art-init] [ERROR] (o.a.w.s.ArtifactoryContextConfigListener:97) - Application could not be initialized: Waiting for access server to respond timed-out after 60000 milliseconds.
      java.lang.reflect.InvocationTargetException: null
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.8.0_91]
      ...
      2017-08-24 15:03:24,479 [http-nio-8081-exec-3] [ERROR] (o.a.w.s.ArtifactoryFilter:188) - Artifactory failed to initialize: Context is null
      

        Attachments

          Activity

            People

            • Assignee:
              shayb Shay Bagants
              Reporter:
              andreik Andrei Komarov
              Assigned QA:
              Gilad Kalchheim (Inactive)
            • Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: