You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cloudstack.apache.org by Francisco Arencibia Quesada <ar...@gmail.com> on 2024/09/13 20:49:40 UTC
CloudStack Compatibility with Percona XtraDB
Hello Guys,
I am currently using Percona XtraDB Cluster for my database, but CloudStack
relies on functions like GET_LOCK and RELEASE_LOCK, which are not
recommended in a Galera-based cluster. Setting pxc_strict_mode = PERMISSIVE
allows CloudStack to function, but this causes issues with replication
consistency and stability. If I set pxc_strict_mode = ENFORCING, CloudStack
stops working because it uses these functions, but setting it to PERMISSIVE
breaks the replication in the cluster.
Is there any way to configure Percona XtraDB Cluster to allow CloudStack to
work properly without compromising the integrity of the replication?
I use CS 4.18, 4.19 both with the same problem.
Thanks a lot in advance
:)
--
*Francisco Arencibia Quesada.*
*DevOps Engineer*
Re: CloudStack Compatibility with Percona XtraDB
Posted by Francisco Arencibia Quesada <ar...@gmail.com>.
Thanks a lot for your feedback,
We will go with MariaDB, since we need a productive environment, and
MariaDB Galera seems to work with no issues.
Thank you all.
I really appreciate it.
Kind regards
On Thu, Sep 19, 2024 at 9:38 AM Jürgen Gotteswinter
<ju...@mgm-tp.com.invalid> wrote:
> The easiest approach is to set ip_nonlocal_bind to 1 and install
> keepalived on each node to handle the vip. Send all requests to this vip.
> Setting permissive mode is required. Apart from that I use the same
> settings as with normal Mysql
>
>
> sql-mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_ENGINE_SUBSTITUTION"
> innodb_rollback_on_timeout=1
> innodb_lock_wait_timeout=600
> max_connections=1000
>
> and the "usual" modifications like innodb buffer pool.
>
> We are still in the implementation phase, so its limited tested. But so
> far, I didn’t have any issues. If you have multiple control planes, make
> sure to start only one initially. That one will provision the database
> schema.
>
> Cheers
>
> Juergen
>
> Am 17.09.24, 11:13 schrieb "Francisco Arencibia Quesada" <
> arencibia.francisco@gmail.com <ma...@gmail.com>>:
>
>
> Good morning guys,
>
>
> I will go with mariadb, because percona +cloudstack is a nightmare.
>
>
> Thank you all
> Best regards
>
>
> On Mon, Sep 16, 2024 at 10:50 AM Rohit Yadav <rohit.yadav@shapeblue.com
> <ma...@shapeblue.com>>
> wrote:
>
>
> > Hi Francisco,
> >
> > Active-active DB cluster setup isn't supported or possible due to the
> > GET_LOCK/RELEASE_LOCK limitations you've found. However, if you're using
> a
> > MySQL router or ProxySQL or similar middleware, then you can split reads
> > across nodes but write to only a single node at a time.
> >
> > Alternatively, you can use Active-Backup setup, such that you allow ACS
> > mgmt servers to write (&read) from a single node but switch in case it
> goes
> > down. Many users actually use an primary-backup DB deployment model with
> > frequent/hourly DB backups.
> >
> >
> > Regards.
> >
> >
> >
> >
> > ________________________________
> > From: Francisco Arencibia Quesada <arencibia.francisco@gmail.com
> <ma...@gmail.com>>
> > Sent: Saturday, September 14, 2024 02:19
> > To: users@cloudstack.apache.org <ma...@cloudstack.apache.org> <
> users@cloudstack.apache.org <ma...@cloudstack.apache.org>>
> > Subject: CloudStack Compatibility with Percona XtraDB
> >
> > Hello Guys,
> >
> > I am currently using Percona XtraDB Cluster for my database, but
> CloudStack
> > relies on functions like GET_LOCK and RELEASE_LOCK, which are not
> > recommended in a Galera-based cluster. Setting pxc_strict_mode =
> PERMISSIVE
> > allows CloudStack to function, but this causes issues with replication
> > consistency and stability. If I set pxc_strict_mode = ENFORCING,
> CloudStack
> > stops working because it uses these functions, but setting it to
> PERMISSIVE
> > breaks the replication in the cluster.
> >
> > Is there any way to configure Percona XtraDB Cluster to allow CloudStack
> to
> > work properly without compromising the integrity of the replication?
> >
> > I use CS 4.18, 4.19 both with the same problem.
> > Thanks a lot in advance
> > :)
> > --
> > *Francisco Arencibia Quesada.*
> > *DevOps Engineer*
> >
>
>
>
>
> --
> *Francisco Arencibia Quesada.*
> *DevOps Engineer*
>
>
>
>
--
*Francisco Arencibia Quesada.*
*DevOps Engineer*
Re: CloudStack Compatibility with Percona XtraDB
Posted by Jürgen Gotteswinter <ju...@mgm-tp.com.INVALID>.
The easiest approach is to set ip_nonlocal_bind to 1 and install keepalived on each node to handle the vip. Send all requests to this vip. Setting permissive mode is required. Apart from that I use the same settings as with normal Mysql
sql-mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_ENGINE_SUBSTITUTION"
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=1000
and the "usual" modifications like innodb buffer pool.
We are still in the implementation phase, so its limited tested. But so far, I didn’t have any issues. If you have multiple control planes, make sure to start only one initially. That one will provision the database schema.
Cheers
Juergen
Am 17.09.24, 11:13 schrieb "Francisco Arencibia Quesada" <arencibia.francisco@gmail.com <ma...@gmail.com>>:
Good morning guys,
I will go with mariadb, because percona +cloudstack is a nightmare.
Thank you all
Best regards
On Mon, Sep 16, 2024 at 10:50 AM Rohit Yadav <rohit.yadav@shapeblue.com <ma...@shapeblue.com>>
wrote:
> Hi Francisco,
>
> Active-active DB cluster setup isn't supported or possible due to the
> GET_LOCK/RELEASE_LOCK limitations you've found. However, if you're using a
> MySQL router or ProxySQL or similar middleware, then you can split reads
> across nodes but write to only a single node at a time.
>
> Alternatively, you can use Active-Backup setup, such that you allow ACS
> mgmt servers to write (&read) from a single node but switch in case it goes
> down. Many users actually use an primary-backup DB deployment model with
> frequent/hourly DB backups.
>
>
> Regards.
>
>
>
>
> ________________________________
> From: Francisco Arencibia Quesada <arencibia.francisco@gmail.com <ma...@gmail.com>>
> Sent: Saturday, September 14, 2024 02:19
> To: users@cloudstack.apache.org <ma...@cloudstack.apache.org> <users@cloudstack.apache.org <ma...@cloudstack.apache.org>>
> Subject: CloudStack Compatibility with Percona XtraDB
>
> Hello Guys,
>
> I am currently using Percona XtraDB Cluster for my database, but CloudStack
> relies on functions like GET_LOCK and RELEASE_LOCK, which are not
> recommended in a Galera-based cluster. Setting pxc_strict_mode = PERMISSIVE
> allows CloudStack to function, but this causes issues with replication
> consistency and stability. If I set pxc_strict_mode = ENFORCING, CloudStack
> stops working because it uses these functions, but setting it to PERMISSIVE
> breaks the replication in the cluster.
>
> Is there any way to configure Percona XtraDB Cluster to allow CloudStack to
> work properly without compromising the integrity of the replication?
>
> I use CS 4.18, 4.19 both with the same problem.
> Thanks a lot in advance
> :)
> --
> *Francisco Arencibia Quesada.*
> *DevOps Engineer*
>
--
*Francisco Arencibia Quesada.*
*DevOps Engineer*
Re: CloudStack Compatibility with Percona XtraDB
Posted by Francisco Arencibia Quesada <ar...@gmail.com>.
Good morning guys,
I will go with mariadb, because percona +cloudstack is a nightmare.
Thank you all
Best regards
On Mon, Sep 16, 2024 at 10:50 AM Rohit Yadav <ro...@shapeblue.com>
wrote:
> Hi Francisco,
>
> Active-active DB cluster setup isn't supported or possible due to the
> GET_LOCK/RELEASE_LOCK limitations you've found. However, if you're using a
> MySQL router or ProxySQL or similar middleware, then you can split reads
> across nodes but write to only a single node at a time.
>
> Alternatively, you can use Active-Backup setup, such that you allow ACS
> mgmt servers to write (&read) from a single node but switch in case it goes
> down. Many users actually use an primary-backup DB deployment model with
> frequent/hourly DB backups.
>
>
> Regards.
>
>
>
>
> ________________________________
> From: Francisco Arencibia Quesada <ar...@gmail.com>
> Sent: Saturday, September 14, 2024 02:19
> To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
> Subject: CloudStack Compatibility with Percona XtraDB
>
> Hello Guys,
>
> I am currently using Percona XtraDB Cluster for my database, but CloudStack
> relies on functions like GET_LOCK and RELEASE_LOCK, which are not
> recommended in a Galera-based cluster. Setting pxc_strict_mode = PERMISSIVE
> allows CloudStack to function, but this causes issues with replication
> consistency and stability. If I set pxc_strict_mode = ENFORCING, CloudStack
> stops working because it uses these functions, but setting it to PERMISSIVE
> breaks the replication in the cluster.
>
> Is there any way to configure Percona XtraDB Cluster to allow CloudStack to
> work properly without compromising the integrity of the replication?
>
> I use CS 4.18, 4.19 both with the same problem.
> Thanks a lot in advance
> :)
> --
> *Francisco Arencibia Quesada.*
> *DevOps Engineer*
>
--
*Francisco Arencibia Quesada.*
*DevOps Engineer*
Re: CloudStack Compatibility with Percona XtraDB
Posted by Rohit Yadav <ro...@shapeblue.com>.
Hi Francisco,
Active-active DB cluster setup isn't supported or possible due to the GET_LOCK/RELEASE_LOCK limitations you've found. However, if you're using a MySQL router or ProxySQL or similar middleware, then you can split reads across nodes but write to only a single node at a time.
Alternatively, you can use Active-Backup setup, such that you allow ACS mgmt servers to write (&read) from a single node but switch in case it goes down. Many users actually use an primary-backup DB deployment model with frequent/hourly DB backups.
Regards.
________________________________
From: Francisco Arencibia Quesada <ar...@gmail.com>
Sent: Saturday, September 14, 2024 02:19
To: users@cloudstack.apache.org <us...@cloudstack.apache.org>
Subject: CloudStack Compatibility with Percona XtraDB
Hello Guys,
I am currently using Percona XtraDB Cluster for my database, but CloudStack
relies on functions like GET_LOCK and RELEASE_LOCK, which are not
recommended in a Galera-based cluster. Setting pxc_strict_mode = PERMISSIVE
allows CloudStack to function, but this causes issues with replication
consistency and stability. If I set pxc_strict_mode = ENFORCING, CloudStack
stops working because it uses these functions, but setting it to PERMISSIVE
breaks the replication in the cluster.
Is there any way to configure Percona XtraDB Cluster to allow CloudStack to
work properly without compromising the integrity of the replication?
I use CS 4.18, 4.19 both with the same problem.
Thanks a lot in advance
:)
--
*Francisco Arencibia Quesada.*
*DevOps Engineer*
Re: CloudStack Compatibility with Percona XtraDB
Posted by Francisco Arencibia Quesada <ar...@gmail.com>.
Could you share your config file Juergen?
I have a keepalive but in the haproxies.
Kind regards
On Mon, Sep 16, 2024 at 3:03 PM Jürgen Gotteswinter
<ju...@mgm-tp.com.invalid> wrote:
> Hello,
>
> i am currently also working on such a setup, like you said it causes
> issues when distributing the write requests. My solution is to use
> keepalived on each cluster node to make sure writes only go to a single
> node (VIP with NAT 3306 -> 127.0.0.1:3306).
>
> So far, no problems.
>
> Cheers,
>
> Juergen
>
> Am 13.09.24, 22:51 schrieb "Francisco Arencibia Quesada" <
> arencibia.francisco@gmail.com <ma...@gmail.com>>:
>
>
> Hello Guys,
>
>
> I am currently using Percona XtraDB Cluster for my database, but CloudStack
> relies on functions like GET_LOCK and RELEASE_LOCK, which are not
> recommended in a Galera-based cluster. Setting pxc_strict_mode = PERMISSIVE
> allows CloudStack to function, but this causes issues with replication
> consistency and stability. If I set pxc_strict_mode = ENFORCING, CloudStack
> stops working because it uses these functions, but setting it to PERMISSIVE
> breaks the replication in the cluster.
>
>
> Is there any way to configure Percona XtraDB Cluster to allow CloudStack to
> work properly without compromising the integrity of the replication?
>
>
> I use CS 4.18, 4.19 both with the same problem.
> Thanks a lot in advance
> :)
> --
> *Francisco Arencibia Quesada.*
> *DevOps Engineer*
>
>
>
>
--
*Francisco Arencibia Quesada.*
*DevOps Engineer*
Re: CloudStack Compatibility with Percona XtraDB
Posted by Jürgen Gotteswinter <ju...@mgm-tp.com.INVALID>.
Hello,
i am currently also working on such a setup, like you said it causes issues when distributing the write requests. My solution is to use keepalived on each cluster node to make sure writes only go to a single node (VIP with NAT 3306 -> 127.0.0.1:3306).
So far, no problems.
Cheers,
Juergen
Am 13.09.24, 22:51 schrieb "Francisco Arencibia Quesada" <arencibia.francisco@gmail.com <ma...@gmail.com>>:
Hello Guys,
I am currently using Percona XtraDB Cluster for my database, but CloudStack
relies on functions like GET_LOCK and RELEASE_LOCK, which are not
recommended in a Galera-based cluster. Setting pxc_strict_mode = PERMISSIVE
allows CloudStack to function, but this causes issues with replication
consistency and stability. If I set pxc_strict_mode = ENFORCING, CloudStack
stops working because it uses these functions, but setting it to PERMISSIVE
breaks the replication in the cluster.
Is there any way to configure Percona XtraDB Cluster to allow CloudStack to
work properly without compromising the integrity of the replication?
I use CS 4.18, 4.19 both with the same problem.
Thanks a lot in advance
:)
--
*Francisco Arencibia Quesada.*
*DevOps Engineer*