mhoffmann21 opened a new issue #4928:
URL: https://github.com/apache/cloudstack/issues/4928


   
   ##### ISSUE TYPE
    * Bug Report
   
   ##### COMPONENT NAME
   ~~~
   Cloudstack management server
   ~~~
   
   ##### CLOUDSTACK VERSION
   ~~~
   4.15.0
   ~~~
   
   ##### CONFIGURATION
   <!--
   Information about the configuration if relevant, e.g. basic network, 
advanced networking, etc.  N/A otherwise
   -->
   Two management servers and several kvm hosts, aggregated to one cluster.
   Advanced networking is used, since there is no other option. Networking 
works fine.
   
   The cloudstack ist configured so that both management servers are populated 
to the host ('host' global configuration parameter). The lb algorithm is 
roundrobin. 
   
   Both management servers use the same ntp servers and have a connection.
   
   ##### OS / ENVIRONMENT
   Ubuntu 20.04 LTS
   
   ##### SUMMARY
   I'm not able to add an additional management server, following the official 
documentation.
   
   ##### STEPS TO REPRODUCE
   
   - follow the instructions of the documentation, describing how to add 
another management server
   
   
   ##### EXPECTED RESULTS
   
   ~~~
   The second management server is added und can be seen within the ui, without 
any error message inside the logs.
   ~~~
   
   ##### ACTUAL RESULTS
   
   I followed the documentation on adding another management server.
   After the second management server finishes the 
`cloudstack-setup-management` command and starts the cloudstack service, I got 
the following error within the `management.log` of the FIRST management server.
   
   ~~~
   2021-04-15 17:35:42,971 ERROR  [c.c.c.d.ManagementServerHostDaoImpl] 
(Cluster-Heartbeat-1:ctx-9ae6e55f) (logid:d5142009) Unexpected exception,
   com.cloud.utils.exception.CloudRuntimeException: Invalid cluster session 
detected, runId 1618500697537 is no longer valid
           at 
com.cloud.cluster.dao.ManagementServerHostDaoImpl.update(ManagementServerHostDaoImpl.java:144)
           at jdk.internal.reflect.GeneratedMethodAccessor74.invoke(Unknown 
Source)
           at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
           at java.base/java.lang.reflect.Method.invoke(Method.java:566)
           at 
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
           at 
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198)
           at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
           at 
com.cloud.utils.db.TransactionContextInterceptor.invoke(TransactionContextInterceptor.java:34)
           at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
           at 
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:95)
           at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
           at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)
           at com.sun.proxy.$Proxy184.update(Unknown Source)
           at 
com.cloud.cluster.ClusterManagerImpl$4.runInContext(ClusterManagerImpl.java:555)
           at 
org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:48)
           at 
org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:55)
           at 
org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:102)
           at 
org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:52)
           at 
org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:45)
           at 
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
           at 
java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
           at 
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
           at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
           at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
           at java.base/java.lang.Thread.run(Thread.java:834)
   Caused by: com.cloud.cluster.ClusterInvalidSessionException: runId 
1618500697537 is no longer valid
           at 
com.cloud.cluster.dao.ManagementServerHostDaoImpl.update(ManagementServerHostDaoImpl.java:144)
           at jdk.internal.reflect.GeneratedMethodAccessor74.invoke(Unknown 
Source)
           at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
           ... 22 more
   ~~~
   
   The error repeats every second.
   If I restart the first managment server, I get the error within the SECOND 
management server log. So both switched roles (that makes sense).
   
   Furthermore, if both managers are running, I can only see one manager up in 
th UI (the one which has been started at last).
   Also within the database (`cloud.mshost`) there is only one management 
server.
   
   So my question here is, why the additional management server is not added, 
but the old one is replaced?
   Do I miss a configuration detail, which is not mentioned in the docs?
   
   Thanks in advance.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to