Andrija,

file is missing in that path.

Follow the steps to enable the database high availability in cloudstack.

1)       Go to the path:

*“/usr/share/cloudstack-management/webapps/client/WEB-INF/lib/”*

Find the *“cloud-plugin-database-mysqlha-4.3.1.jar”  *file.

2)       Create the path:

*“/usr/share/cloudstack-mysql-ha/lib/”*

Copy the above file to this path.

3)       Edit the file *“/etc/cloudstack/management/catalina.properties”*

check the *“common.loader” *line looks like:

*“common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,/usr/share/java/mysql-connector-java.jar,/usr/share/cloudstack-mysql-ha/lib/*.jar”*

4)       Edit the file *“/etc/cloudstack/management/db.properties”*

*db.ha.enabled=true*

*db.cloud.slaves=<slave IP address>*

*db.usage.slaves=<slave IP address>*

5)       Restart the management server.

*“Service cloudstack-management restart”*



*Regards,*

*Rajasekhar.*

On Thu, Jun 11, 2015 at 8:52 PM, Andrija Panic <andrija.pa...@gmail.com>
wrote:

> HI Marcus, yes I'm familiar with that, that was my guess, based on some
> other ML thread :(
>
> Thx for confirmation...
>
> On 11 June 2015 at 17:03, Marcus <shadow...@gmail.com> wrote:
>
> > When I build CloudStack RPMs on 4.5 branch I get mysql ha RPMs. Looking
> at
> > the specfile:
> >
> > %if "%{_ossnoss}" == "noredist"
> >
> > %package mysql-ha
> >
> > Summary: Apache CloudStack Balancing Strategy for MySQL
> >
> > Requires: mysql-connector-java
> >
> > Requires: %{_tomcatversion}
> >
> > Group: System Environmnet/Libraries
> >
> > %description mysql-ha
> >
> > Apache CloudStack Balancing Strategy for MySQL
> >
> >
> > %endif
> >
> >
> > Looks like you need to "./package.sh -p noredist" when packaging. Not
> sure
> > what the equivalent is for .deb packaging.  That means you also have to
> be
> > set up with the non-oss dependencies. If you're not familiar with that
> let
> > us know.
> >
> > On Thu, Jun 11, 2015 at 7:06 AM, Andrija Panic <andrija.pa...@gmail.com>
> > wrote:
> >
> > > Actually, on another ACS installation, there is file:
> > >
> > >
> >
> /usr/share/cloudstack-management/webapps/client/WEB-INF/lib/cloud-plugin-database-mysqlha-4.3.2.jar
> > > (acs 4.3.2 :) )
> > >
> > > But on this 4.5.1 there is no such file.
> > >
> > > Is it possible that we didnt compile 4.5.1 in appropriate way ?
> > >
> > > Thanks,
> > > Andrija
> > >
> > > On 11 June 2015 at 15:14, Andrija Panic <andrija.pa...@gmail.com>
> wrote:
> > >
> > > > Hi,
> > > >
> > > > I'm trying the DB HA setup, by chaning 3 lines in db.properties file
> > > > (enable HA, define slaves for cloud, define slaves for usage DB)
> > > >
> > > > After restart, mgmt server doesn start with folowing error, as it
> seems
> > > > invalid load balancing strategy variable...
> > > >
> > > > Any clues on this ?
> > > >
> > > > mysql setup is galera 3 node cluster, 1st node being used as master
> in
> > > > db.properties, and only second node being used as slave (galera2
> node)
> > > > I confirmed I can telnet, login etc... also mysql login from mgmt to
> > > these
> > > > master/slaves works of course...
> > > >
> > > >
> > > >
> > > > 2015-06-11 14:25:03,149 INFO  [c.c.u.d.T.Transaction] (main:null) Is
> > Data
> > > > Base High Availiability enabled? Ans : true
> > > > 2015-06-11 14:25:03,191 INFO  [c.c.u.d.T.Transaction] (main:null) The
> > > > slaves configured for Cloud Data base is/are : 10.20.10.6
> > > > 2015-06-11 14:25:03,269 ERROR [c.c.u.d.Merovingian2] (main:null)
> Unable
> > > to
> > > > get a new db connection
> > > > java.sql.SQLException: Invalid load balancing strategy
> > > > 'com.cloud.utils.db.StaticStrategy'.
> > > >         at
> > com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
> > > >         at
> > com.mysql.jdbc.SQLError.createSQLException(SQLError.java:924)
> > > >         at com.mysql.jdbc.Util.loadExtensions(Util.java:602)
> > > >         at
> > > >
> > >
> >
> com.mysql.jdbc.LoadBalancingConnectionProxy.<init>(LoadBalancingConnectionProxy.java:285)
> > > >         at
> > > >
> > >
> >
> com.mysql.jdbc.FailoverConnectionProxy.<init>(FailoverConnectionProxy.java:67)
> > > >         at
> > > >
> > >
> >
> com.mysql.jdbc.NonRegisteringDriver.connectFailover(NonRegisteringDriver.java:430)
> > > >         at
> > > >
> > >
> >
> com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:343)
> > > >         at
> java.sql.DriverManager.getConnection(DriverManager.java:571)
> > > >         at
> java.sql.DriverManager.getConnection(DriverManager.java:215)
> > > >         at
> > > >
> > >
> >
> org.apache.commons.dbcp.DriverManagerConnectionFactory.createConnection(DriverManagerConnectionFactory.java:75)
> > > >         at
> > > >
> > >
> >
> org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582)
> > > >         at
> > > >
> > >
> >
> org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1188)
> > > >         at
> > > >
> > >
> >
> org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:106)
> > > >         at
> > > >
> > >
> >
> com.cloud.utils.db.TransactionLegacy.getStandaloneConnectionWithException(TransactionLegacy.java:203)
> > > >         at
> com.cloud.utils.db.Merovingian2.<init>(Merovingian2.java:68)
> > > >         at
> > > >
> com.cloud.utils.db.Merovingian2.createLockMaster(Merovingian2.java:80)
> > > >         at
> > > >
> com.cloud.server.LockMasterListener.<init>(LockMasterListener.java:33)
> > > >         at
> > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> > > > Method)
> > > >         at
> > > >
> > >
> >
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> > > >         at
> > > >
> > >
> >
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> > > >         at
> > > java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> > > >         at
> > > >
> > org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:148)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:121)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:280)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1045)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:949)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:487)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
> > > >         at
> > > >
> > >
> >
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:628)
> > > >         at
> > > >
> > >
> >
> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)
> > > >         at
> > > >
> > >
> >
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)
> > > >         at
> > > >
> > >
> >
> org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.loadContext(DefaultModuleDefinitionSet.java:145)
> > > >         at
> > > >
> > >
> >
> org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet$2.with(DefaultModuleDefinitionSet.java:122)
> > > >         at
> > > >
> > >
> >
> org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.withModule(DefaultModuleDefinitionSet.java:245)
> > > >         at
> > > >
> > >
> >
> org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.withModule(DefaultModuleDefinitionSet.java:250)
> > > >         at
> > > >
> > >
> >
> org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.withModule(DefaultModuleDefinitionSet.java:233)
> > > >         at
> > > >
> > >
> >
> org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.loadContexts(DefaultModuleDefinitionSet.java:117)
> > > >         at
> > > >
> > >
> >
> org.apache.cloudstack.spring.module.model.impl.DefaultModuleDefinitionSet.load(DefaultModuleDefinitionSet.java:79)
> > > >         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:52)
> > > >         at
> > > >
> > >
> >
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4210)
> > > >         at
> > > >
> > org.apache.catalina.core.StandardContext.start(StandardContext.java:4709)
> > > >         at
> > > >
> > >
> >
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:802)
> > > >         at
> > > >
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
> > > >         at
> > > > org.apache.catalina.core.StandardHost.addChild(StandardHost.java:583)
> > > >         at
> > > >
> > >
> >
> org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1079)
> > > >         at
> > > >
> > >
> >
> org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
> > > >         at
> > > >
> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
> > > >         at
> > > > org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
> > > >         at
> > > >
> > >
> >
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
> > > >         at
> > > >
> > >
> >
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
> > > >         at
> > > > org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1068)
> > > >         at
> > > > org.apache.catalina.core.StandardHost.start(StandardHost.java:822)
> > > >         at
> > > > org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1060)
> > > >         at
> > > >
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
> > > >         at
> > > >
> > org.apache.catalina.core.StandardService.start(StandardService.java:525)
> > > >         at
> > > >
> org.apache.catalina.core.StandardServer.start(StandardServer.java:759)
> > > >         at
> > org.apache.catalina.startup.Catalina.start(Catalina.java:595)
> > > >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> > > >         at
> > > >
> > >
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> > > >         at
> > > >
> > >
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> > > >         at java.lang.reflect.Method.invoke(Method.java:606)
> > > >         at
> > > org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
> > > >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> > > >         at
> > > >
> > >
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
> > > >         at
> > > >
> > >
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> > > >         at java.lang.reflect.Method.invoke(Method.java:606)
> > > >         at
> > > >
> > >
> >
> org.apache.commons.daemon.support.DaemonLoader.start(DaemonLoader.java:243)
> > > > Caused by: java.lang.ClassNotFoundException:
> > > > com.cloud.utils.db.StaticStrategy
> > > >         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 java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> > > >         at java.lang.Class.forName0(Native Method)
> > > >         ... 74 more
> > > >
> > > > --
> > > >
> > > > Andrija Panić
> > > >
> > >
> > >
> > >
> > > --
> > >
> > > Andrija Panić
> > >
> >
>
>
>
> --
>
> Andrija Panić
>

Reply via email to