On Jul 26,  1:26pm, Kern Sibbald wrote:
} On 07/26/2018 05:54 AM, John Nemeth wrote:
} > On Jul 25,  7:35pm, Kern Sibbald wrote:
} > }
} > } Yes, it was a big release. There are lots of little goodies in it. I
} > } worked on the documentation a bit to integrate
} > } some of the features only in the New Features chapter into the main
} > } manual. There is still a lot more documentation
} > } to do, but I am going to break from documentation a bit and add a MySQL
} > } plugin for the FD, and Bacula native S3
} > } backup/restore for the next release in a few months ...
} >
} >       Any chance for getting support for using MySQL cluster for
} > the catalog? This would be a good thing as it means that if you
} > lose a data node, you don't lose the catalog and save some big
} > headaches.  I'm not a database expert, but I could probably provide
} > some help with this.
} 
} Yes, there is a possibility of getting MySQL cluster support, but since I
} don't use it or understand exactly what is required to support a
} cluster, someone will need to fill me in and explain to me what
} is lacking in Bacula and how it would work.

     From the application point of view, the basics aren't a lot
different.  The application links with libmysqlclient and accesses
the database just like it would any other MySQL database.  However,
one thing that would be nice is the ability to do failover, i.e.
given:

# Generic catalog service
Catalog {
  Name = MyCatalog
  password = XXX
  DB Name = bacula
  user = bacula
  DB Address = 1.2.3.4
}

It would be nice to be able to specify multiple DB Address and have
it automatically failover if there is a problem with one.  Not
having that limits the utility of a database cluster as there is
redundant data but not redundant access.  What I've been doing so
far for most applications is installing haproxy on the machine that
the application is running on.  The application would be pointed
to a socket provided by haproxy and haproxy would do the failover
by transparently proxying the connection to multiple servers.  This
works but it does introduce another possible point of failure.

     A significant difference is that it uses the NDBCLUSTER (or
NDB for short) engine, not the InnoDB engine.  NDB is an ACID
compliant tranaction oriented engine.  However, it does have some
limitations such as not allowing indexes to be created for BLOB
and TEXT datatypes, so there would need to be some schema changes.
When I asked about this before somebody said that BLOB and TEXT
datatypes are likely to cause performance problems and that it
would be better to use VARBINARY or VARCAHR BINARY.  You can create
an index on those datatypes.

     The big thing would be setting up test servers.  You don't
install a package and start mysqld.  It's a more complex system
with multiple pieces.  I use six VMs for each cluster.  However,
it can be done on a single VM to have a degenerate system with no
redundancy (or two VMs if you wish to be able to test failover).
I can assist with the server side of things.

}-- End of excerpt from Kern Sibbald

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Bacula-devel mailing list
Bacula-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-devel

Reply via email to