Re: slave to master

Mahmoud Alshinhab <[email protected]>
Newsgroups gmane.comp.db.mysql.general
Message-ID <CAEDFMZJu8P8kD098ZPEqJA0vpzufBXnRk3tWqEO4kmFkhsZ9Eg@mail.gmail.com>
I was think of it from the cloud prospective, as for example you can
guarantee that Amazon's Elastic Load Balancer won't be a single point of
failure, so I was thinking how can I use MariaDB MaxScale and in the same
time guarantee that it won't be a single point of failure.

--
Eng. Mahmoud Alshinhab
AWS Cloud Support Engineer
Fedora Ambassador
Wiki : https://fedoraproject.org/wiki/User:Tuxawy
[email protected]
[email protected]

On Fri, Apr 29, 2016 at 5:34 PM, Reindl Harald <[email protected]>
wrote:

>
>
> Am 29.04.2016 um 17:27 schrieb Mahmoud Alshinhab:
>
>> I also like the MariaDB Max scale that Reindl Harald Sent -Thanks-
>> However I don't know if it is possible to use 2 servers of the max scale
>> with a load balancer in front of them or not.
>> I always try to avoid the Single Point of Failure
>>
>
> get rid of the idea that your "load-balancer" not a single point
>
> in a sane environment there is no single point of failure because max
> scale *is the load balancer* and typically runs on a HA cluster where it
> never goes away (virtual machine on a cluster FS - as example - VMware
> vSphere with two hosts and VMware HA enabled)
>
> why do you want a load balancer in front of a load balancer and how do you
> make sure that this load balancer is redundant and not a single point of
> failure itself?
>
> "https://mariadb.com/products/mariadb-maxscale/how-maxscale-works"
>> On Fri, Apr 29, 2016 at 5:20 PM, Mahmoud Alshinhab
>> <[email protected] <mailto:[email protected]>> wrote:
>>
>>     I quote this from the page[1]:
>>
>>
>>           Load balancing implementation
>>
>>
>>             Random picking
>>
>>     When initializing a connection or after a failed connection, the
>>     connector will attempt to connect to a host with a certain role
>>     (slave/master). The connection is selected randomly among the valid
>>     hosts. Thereafter, all statements will run on that database server
>>     until the connection will be closed (or fails).
>>
>>     The load-balancing will includes a pooling mechanism. Example: when
>>     creating a pool of 60 connections, each one will use a random host.
>>     With 3 master hosts, the pool will have about 20 connections to each
>>     host.
>>
>>
>>             Master/slave distributed load
>>
>>     For a cluster composed of masters and slaves on connection
>>     initialization, there will be 2 underlying connections: one with a
>>     master host, another with a slave host. Only one connection is used
>>     at a time.
>>     For a cluster composed of master hosts only, each connection has
>>     only one underlying connection.
>>     The load will be distributed due to the random distribution of
>>     connections..
>>
>>
>>             Master/slave connection selection
>>
>>     It’s the application that has to decide to use master or slave
>>     connection (the master connection is set by default).
>>     Switching the type of connection is done by using JDBC
>>     connection.setReadOnly(boolean readOnly)
>>     <
>> http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#setReadOnly%28boolean%29
>> >
>>     method. Setting read-only to true will use the slave connection,
>>     false, the master connection.
>>
>>     [1]
>>
>> https://mariadb.com/kb/en/mariadb/failover-and-high-availability-with-mariadb-connector-j/
>>
>>     So I think it is not implemented yet. as "the application has to
>>     decide to use master or slave connection (the master connection is
>>     set by default)."
>>
>>     --
>>     Eng. Mahmoud Alshinhab
>>     AWS Cloud Support Engineer
>>     Fedora Ambassador
>>     Wiki : https://fedoraproject.org/wiki/User:Tuxawy
>>     [email protected] <mailto:[email protected]>
>>     [email protected] <mailto:[email protected]>
>>
>>     On Fri, Apr 29, 2016 at 5:14 PM, Mahmoud Alshinhab
>>     <[email protected] <mailto:[email protected]>>
>>     wrote:
>>
>>         It was actually built for Amazon's Aurora, but it should work
>>         with any mysql-compatible protoco.
>>
>>         --
>>         Eng. Mahmoud Alshinhab
>>         AWS Cloud Support Engineer
>>         Fedora Ambassador
>>         Wiki : https://fedoraproject.org/wiki/User:Tuxawy
>>         [email protected] <mailto:[email protected]>
>>         [email protected] <mailto:[email protected]>
>>
>>         On Fri, Apr 29, 2016 at 3:13 PM, Reindl Harald
>>         <[email protected] <mailto:[email protected]>> wrote:
>>
>>
>>             Am 29.04.2016 um 15:07 schrieb Johan De Meersman:
>>
>>                     From: "Mahmoud Alshinhab"
>>                     <[email protected]
>>                     <mailto:[email protected]>>
>>                     Subject: Re: slave to master
>>
>>
>>                     I think you should have a look at MariaDB
>> Connector[1].
>>
>>
>>                     It provides Load balancing and failover as Failover
>>                     occurs when a connection to
>>                     a primary database server fails and the connector
>>                     will open up a connection to
>>                     another database server.
>>
>>
>>                 Hmm, I didn't know that they built that into it,
>>                 interesting. Does it require server features, or would
>>                 it work with any mysql-compatible protocol ?
>>
>>                     Load balancing allows load (read and write) to be
>>                     distributed over multiple
>>                     servers.
>>
>>
>>                 Is read-write splitting also built-in, then?
>>
>>
>>             here you go:
>>             https://mariadb.com/de/products/mariadb-maxscale and forget
>>             about "MariaDB Connector" whatever that is
>>
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.