Hi Rohit, Yes, I’ve done all of those and it’s connecting properly. That’s why I’m really confused why it was working via mysql-client cli in the mgmt server but not when trying to run cloudstack service in the same mgmt server.
Thanks, Irvin > On Dec 21, 2021, at 6:13 PM, Rohit Yadav <[email protected]> wrote: > > Hi SVI, > > Can you check if you've allowed firewall rules and MySQL config to access the > server remotely for the configured MySQL user. One way to test that would be > to use the mysql-client on the management server for the remote DB server > with the same user as configured/used by CloudStack. > > > Regards. > > ________________________________ > From: SVI <[email protected]> > Sent: Friday, December 17, 2021 15:17 > To: [email protected] <[email protected]> > Subject: Database connection issue > > Hi, > > I’ve installed a fresh cloudstack in Ubuntu 20.04 with version 4.16 with a > database server on a separate Debian 11 server provisioned using DebOps > MariaDB server with version Server version: > 5.5.5-10.5.12-MariaDB-0+deb11u1-log Debian 11 . I am able to connect from the > management server using the cloudstack user and pass to the mariadb server > and was able to run cloudstack-setup-databases successfully. But I’m still > getting database connection issue when I restarted the cloudstack-management > service as show in the log below. Not sure else what to check as via mysql > cli in the management server I am able to connect using the same credentials > used by cloudstack. > > 2021-12-17 01:03:31,159 ERROR [c.c.u.d.Merovingian2] (main:null) (logid:) > Unable to get a new db connection > java.sql.SQLNonTransientConnectionException: Could not create connection to > database server. Attempted reconnect 3 times. Giving up. > at > com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110) > at > com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) > at > com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89) > at > com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63) > at > com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73) > at > com.mysql.cj.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:906) > at > com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:831) > at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456) > at > com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246) > at > com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:197) > at > java.sql/java.sql.DriverManager.getConnection(DriverManager.java:677) > at > java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228) > at > org.apache.commons.dbcp2.DriverManagerConnectionFactory.createConnection(DriverManagerConnectionFactory.java:121) > at > org.apache.commons.dbcp2.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:357) > at > org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:918) > at > org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:431) > at > org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:356) > at > org.apache.commons.dbcp2.PoolingDataSource.getConnection(PoolingDataSource.java:134) > at > com.cloud.utils.db.TransactionLegacy.getStandaloneConnectionWithException(TransactionLegacy.java:211) > at com.cloud.utils.db.Merovingian2.<init>(Merovingian2.java:68) > at > com.cloud.utils.db.Merovingian2.createLockController(Merovingian2.java:88) > at > com.cloud.server.LockControllerListener.<init>(LockControllerListener.java:33) > at > java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at > java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) > at > org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:212) > at > org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:117) > at > org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:311) > at > org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:296) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1356) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1206) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:571) > at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:531) > at > org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) > at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) > at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) > at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) > at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944) > at > org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:923) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:588) > at > org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.loadContext(DefaultModuleDefinitionSet.java:144) > at > org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet$2.with(DefaultModuleDefinitionSet.java:121) > at > org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.withModule(DefaultModuleDefinitionSet.java:244) > at > org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.withModule(DefaultModuleDefinitionSet.java:249) > at > org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.withModule(DefaultModuleDefinitionSet.java:232) > at > org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.loadContexts(DefaultModuleDefinitionSet.java:116) > at > org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.load(DefaultModuleDefinitionSet.java:78) > at > org.apache.cloudstack.spring.module.factory.ModuleBasedContextFactory.loadModules(ModuleBasedContextFactory.java:37) > at > org.apache.cloudstack.spring.module.factory.CloudStackSpringContext.init(CloudStackSpringContext.java:70) > at > org.apache.cloudstack.spring.module.factory.CloudStackSpringContext.<init>(CloudStackSpringContext.java:57) > at > org.apache.cloudstack.spring.module.factory.CloudStackSpringContext.<init>(CloudStackSpringContext.java:61) > at > org.apache.cloudstack.spring.module.web.CloudStackContextLoaderListener.contextInitialized(CloudStackContextLoaderListener.java:51) > at > org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:1068) > at > org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:572) > at > org.eclipse.jetty.server.handler.ContextHandler.contextInitialized(ContextHandler.java:997) > at > org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:746) > at > org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:379) > at > org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1457) > at > org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1422) > at > org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:911) > at > org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:288) > at > org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524) > at > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73) > at > org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169) > at > org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110) > at > org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97) > at > org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:426) > at > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73) > at > org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169) > at > org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117) > at > org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97) > at > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73) > at > org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169) > at org.eclipse.jetty.server.Server.start(Server.java:423) > at > org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110) > at > org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97) > at org.eclipse.jetty.server.Server.doStart(Server.java:387) > at > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73) > at org.apache.cloudstack.ServerDaemon.start(ServerDaemon.java:192) > at org.apache.cloudstack.ServerDaemon.main(ServerDaemon.java:107) > Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications > link failure > > The last packet sent successfully to the server was 0 milliseconds ago. The > driver has not received any packets from the server. > at > java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > ... 87 more > Caused by: javax.net.ssl.SSLHandshakeException: Received fatal alert: > protocol_version > at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:131) > at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:117) > at > java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:336) > ... 92 more > > Thanks, > Irvin > > > >
