On Oct 14, 2014, at 11:36 AM, raja sekhar <rajsekhar....@gmail.com> wrote:

> Hi All,
> 
> I got the solution for cloudstack database high availability.
> 
> 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”*
> 
> 

Would be great if you could contribute/correct the docs at:

http://docs.cloudstack.apache.org

You can fork on github and submit a pull request.

thanks

> 
> *Regards,*
> 
> *Rajasekhar.*
> 
> On Wed, Sep 24, 2014 at 5:33 PM, Rajani Karuturi <raj...@apache.org> wrote:
> 
>> I dont know if they are readily available. probably you could check
>> jenkins.buildacloud.org
>> 
>> You could build one from source using the procedure at
>> 
>> http://cloudstack-installation.readthedocs.org/en/latest/building_from_source.html#building-non-oss
>> 
>> 
>> It also has some information about non-oss/no-redist packages.
>> 
>> ~Rajani
>> 
>> On Wed, Sep 24, 2014 at 5:11 PM, Venkata Suneel Babu Mallela <
>> sunee...@simplifydc.com> wrote:
>> 
>>> This setup is installed using RPM package repository. Can you please
>> guide
>>> how to check this is a noredist build or not? And what is the use of it?
>>> 
>>> There is no directory "cloudstack-mysql-ha" under /usr/share/.
>>> 
>>> [root@cs01 share]# ls cloudstack-*
>>> cloudstack-bridge/     cloudstack-management/
>>> cloudstack-common/     cloudstack-usage/
>>> 
>>> Thank you,
>>> Suneel Mallela.
>>> 
>>> -----Original Message-----
>>> From: Rajani Karuturi [mailto:raj...@apache.org]
>>> Sent: Wednesday, September 24, 2014 3:30 PM
>>> To: users@cloudstack.apache.org
>>> Subject: Re: CloudStack DataBase HA Restoration Test
>>> 
>>> Is this a noredist build? Did you verify that the mysql-ha jar exists at
>>> /usr/share/cloudstack-mysql-ha/lib/*jar?
>>> 
>>> 
>>> 
>>> 
>>> 
>>> ~Rajani
>>> 
>>> On Wed, Sep 24, 2014 at 12:06 PM, Venkata Suneel Babu Mallela <
>>> sunee...@simplifydc.com> wrote:
>>> 
>>>> Hi Rajani,
>>>> 
>>>> Thank you for your response. I was stuck with some work last week.
>>>> 
>>>> I've reinstalled a new CloudStack4.4.0 and added below line to the
>>>> file "/etc/cloudstack/management/catalina.properties",
>>>> 
>>>> 
>>>> common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catali
>>>> na.home}/lib,${catalina.home}/lib/*.jar,/usr/share/java/mysql-connecto
>>>> r-java.jar,/usr/share/cloudstack-mysql-ha/lib/*jar
>>>> 
>>>> Restarted the management service, but still getting http status 404
>>>> error, the log is below.
>>>> 
>>>> 2014-09-23 05:24:14,176 INFO
>>>> [o.a.c.s.m.m.i.DefaultModuleDefinitionSet]
>>>> (main:null) Loading module context [system] from URL
>>>> [jar:file:/usr/share/cloudstack-management/webapps/client/WEB-INF/lib/
>>>> cloud-core-4.4.0.jar!/META-INF/cloudstack/system/spring-core-system-co
>>>> ntext-inheritable.xml]
>>>> 2014-09-23 05:24:14,176 INFO
>>>> [o.a.c.s.m.m.i.DefaultModuleDefinitionSet]
>>>> (main:null) Loading module context [system] from URL
>>>> [jar:file:/usr/share/cloudstack-management/webapps/client/WEB-INF/lib/
>>>> cloud-framework-config-4.4.0.jar!/META-INF/cloudstack/system/spring-fr
>>>> amework-config-system-context-inheritable.xml]
>>>> 2014-09-23 05:24:14,176 INFO
>>>> [o.a.c.s.m.m.i.DefaultModuleDefinitionSet]
>>>> (main:null) Loading module context [system] from URL
>>>> [jar:file:/usr/share/cloudstack-management/webapps/client/WEB-INF/lib/
>>>> cloud-plugin-network-contrail-4.4.0.jar!/META-INF/cloudstack/system/sp
>>>> ring-contrail-system-context-inheritable.xml]
>>>> 2014-09-23 05:24:14,176 INFO
>>>> [o.a.c.s.m.m.i.DefaultModuleDefinitionSet]
>>>> (main:null) Loading module context [system] from URL
>>>> [jar:file:/usr/share/cloudstack-management/webapps/client/WEB-INF/lib/
>>>> cloud-core-4.4.0.jar!/META-INF/cloudstack/bootstrap/spring-bootstrap-c
>>>> ontext-inheritable.xml]
>>>> 2014-09-23 05:24:18,016 INFO  [c.c.u.d.T.Transaction] (main:null) Is
>>>> Data Base High Availiability enabled? Ans : true
>>>> 2014-09-23 05:24:18,053 INFO  [c.c.u.d.T.Transaction] (main:null) The
>>>> slaves configured for Cloud Data base is/are : 10.0.60.204
>>>> 2014-09-23 05:24:18,130 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:934)
>>>>        at
>> com.mysql.jdbc.SQLError.createSQLException(SQLError.java:931)
>>>>        at com.mysql.jdbc.Util.loadExtensions(Util.java:588)
>>>>        at
>>>> 
>>> 
>> com.mysql.jdbc.LoadBalancingConnectionProxy.<init>(LoadBalancingConnectionProxy.java:280)
>>>>        at
>>>> 
>>> 
>> com.mysql.jdbc.FailoverConnectionProxy.<init>(FailoverConnectionProxy.java:66)
>>>>        at
>>>> 
>>> 
>> com.mysql.jdbc.NonRegisteringDriver.connectFailover(NonRegisteringDriver.java:382)
>>>>        at
>>>> 
>>> 
>> com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:301)
>>>>        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:205)
>>>>        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:791)
>>>>        at
>>>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
>>>>        at
>>>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
>>>>        at
>>>> 
>>> 
>> org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
>>>>        at
>>>> 
>>> 
>> org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
>>>>        at
>>>> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
>>>>        at
>>>> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
>>>>        at
>>>> 
>>> 
>> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
>>>>        at
>>>> 
>>> 
>> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
>>>>        at
>>>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
>>>>        at
>>>> org.apache.catalina.core.StandardHost.start(StandardHost.java:722)
>>>>        at
>>>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
>>>>        at
>>>> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
>>>>        at
>>>> 
>> org.apache.catalina.core.StandardService.start(StandardService.java:516)
>>>>        at
>>>> org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
>>>>        at
>> org.apache.catalina.startup.Catalina.start(Catalina.java:593)
>>>>        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
>>>> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
>>>> 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)
>>>>        ... 70 more
>>>> 2014-09-23 05:24:29,485 INFO  [c.c.u.c.ComponentContext] (main:null)
>>>> Configuring
>>>> com.cloud.bridge.persist.dao.CloudStackAccountDaoImpl_EnhancerByCloudS
>>>> tack_901525bd
>>>> 2014-09-23 05:24:29,497 INFO  [c.c.u.c.ComponentContext] (main:null)
>>>> Configuring
>>>> com.cloud.bridge.persist.dao.OfferingDaoImpl_EnhancerByCloudStack_251f
>>>> 9517
>>>> 2014-09-23 05:24:29,497 INFO  [c.c.u.c.ComponentContext] (main:null)
>>>> Configuring
>>>> com.cloud.bridge.persist.dao.SMetaDaoImpl_EnhancerByCloudStack_41c6850
>>>> f
>>>> 2014-09-23 05:24:29,502 INFO  [c.c.u.c.ComponentContext] (main:null)
>>>> Configuring
>>>> com.cloud.bridge.persist.dao.UserCredentialsDaoImpl_EnhancerByCloudSta
>>>> ck_e2c8502e
>>>> 2014-09-23 05:24:29,502 INFO  [c.c.u.c.ComponentContext] (main:null)
>>>> Configuring
>>>> com.cloud.bridge.persist.dao.MultipartMetaDaoImpl_EnhancerByCloudStack
>>>> _292f07ce
>>>> 2014-09-23 05:24:29,502 INFO  [c.c.u.c.ComponentContext] (main:null)
>>>> Configuring
>>>> com.cloud.bridge.persist.dao.CloudStackConfigurationDaoImpl_EnhancerBy
>>>> CloudStack_50fa97ec
>>>> 
>>>> Thank you,
>>>> Suneel Mallela.
>>>> 
>>>> -----Original Message-----
>>>> From: Rajani Karuturi [mailto:raj...@apache.org]
>>>> Sent: Thursday, September 18, 2014 6:08 PM
>>>> To: users@cloudstack.apache.org
>>>> Subject: Re: CloudStack DataBase HA Restoration Test
>>>> 
>>>> Can you share the logs?
>>>> 
>>>> you might be hitting the bug
>>>> https://issues.apache.org/jira/browse/CLOUDSTACK-6892
>>>> The fix is in 4.4.1 branch.
>>>> As workaround, you can manually update catalina.properties as per the
>>>> changes in the fix [1]
>>>> 
>>>> [1]
>>>> 
>>>> https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;a=blobdiff;f=
>>>> client/tomcatconf/catalina.properties.in;h=282892bb763a74b3898c9402423
>>>> 245670f69d546;hp=ce03ff6390b19e21d11c87c68adb7bd07a8c95eb;hb=539db08;h
>>>> pb=cc913cf0bb7e62b7a216e2de793336e61a49b485
>>>> 
>>>> ~Rajani
>>>> 
>>>> On Thu, Sep 18, 2014 at 5:25 PM, Venkata Suneel Babu Mallela <
>>>> sunee...@simplifydc.com> wrote:
>>>> 
>>>>> Hi All,
>>>>> 
>>>>> I've configured CloudStack DataBase replication(Master-Slave)
>>>>> successfully and the setup is,
>>>>> 
>>>>> Management Server   - 10.0.0.10
>>>>> DataBase_1(Master)   - 10.0.0.11
>>>>> DataBase_2(Slave)       - 10.0.0.12
>>>>> 
>>>>> I want to test restoration process. I've followed the below link and
>>>>> edited the "/etc/cloudstack/management/db.properties" file,
>>>>> 
>>>>> 
>>>>> http://docs.cloudstack.apache.org/projects/cloudstack-administration
>>>>> /e
>>>>> n/4.4/reliability.html
>>>>> 
>>>>> db.ha.enabled=true
>>>>> db.cloud.slaves=10.0.0.12
>>>>> db.usage.slaves=10.0.0.12
>>>>> 
>>>>> But, I'm getting HTTP Status 404 error.
>>>>> 
>>>>> Can anyone explain the step by step process to make slave as mater
>>>>> and master as slave in CloudStack point of view?
>>>>> 
>>>>> I'm using ACS4.4.0.
>>>>> 
>>>>> Thank you,
>>>>> Suneel Mallela
>>>>> 
>>>> 
>>> 
>> 

Reply via email to