On Wed, Jul 27, 2022 at 4:33 PM Reid Wahl <nw...@redhat.com> wrote: > > On Wed, Jul 27, 2022 at 2:08 AM lejeczek via Users > <users@clusterlabs.org> wrote: > > > > > > > > On 26/07/2022 20:56, Reid Wahl wrote: > > > On Tue, Jul 26, 2022 at 4:21 AM lejeczek via Users > > > <users@clusterlabs.org> wrote: > > >> Hi guys > > >> > > >> I set up a clone of a new instance of mariadb galera - which otherwise, > > >> outside of pcs works - but I see something weird. > > >> > > >> Firstly cluster claims it's all good: > > >> > > >> -> $ pcs status --full > > >> ... > > >> > > >> * Clone Set: mariadb-apps-clone [mariadb-apps] (promotable): > > >> * mariadb-apps (ocf::heartbeat:galera): Master > > >> sucker.internal.ccn > > >> * mariadb-apps (ocf::heartbeat:galera): Master > > >> drunk.internal.ccn > > > Clearly the problem is that your server is drunk. > > > > > >> but that mariadb is _not_ started actually. > > >> > > >> In clone's attr I set: > > >> > > >> config=/apps/etc/mariadb-server.cnf > > >> > > >> I also for peace of mind set: > > >> > > >> datadir=/apps/mysql/data > > >> > > >> even tough '/apps/etc/mariadb-server.cnf' declares that & other bits - > > >> again, works outside of pcs. > > >> > > >> Then I see in pacemaker logs: > > >> > > >> notice: mariadb-apps_star...@drunk.internal.ccn output [ 220726 11:56:13 > > >> mysqld_safe Logging to '/tmp/tmp.On5VnzOyaF'.\n220726 11:56:13 > > >> mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql\n ] > > >> > > >> .. and I think what the F? > > >> > > >> resource-agents-4.9.0-22.el8.x86_64 > > >> > > >> All thoughts share are much appreciated. > > >> > > >> many thanks, L. > > >> > > > How do you start mariadb outside of pacemaker's control? > > simply by: > > -> $ sudo -u mysql /usr/libexec/mysqld > > --defaults-file=/apps/etc/mariadb-server.cnf > > --wsrep-new-clusterrep > > Got it. FWIW, `--wsrep-new-clusterrep` doesn't appear to be a valid > option (no search results and nothing in the help output). Maybe this > is a typo in the email; `--wsrep-new-cluster` is valid. > > > > > > > It seems that *something* is running, based on the "Starting" message > > > and the fact that the resources are still in Started state... > > Yes, a "regular" instance of galera (which outside of > > pacemaker works with "regular" systemd) is running as ofc > > one resource already. > > > > > > > > The logic to start and promote the galera resource is contained within > > > /usr/lib/ocf/resource.d/heartbeat/galera and > > > /usr/lib/ocf/lib/heartbeat/mysql-common.sh. I encourage you to inspect > > > those for any relevant differences between your own startup method and > > > that of the resource agent. > > > > > > As one example, note that the resource agent uses mysqld_safe by > > > default. This is configurable via the `binary` option for the > > > resource. Be sure that you've looked at all the available options > > > (`pcs resource describe ocf:heartbeat:galera`) and configured any of > > > them that you need. You've definitely at least started that process > > > with config and datadir. > > log snippet I pasted was not to emphasize 'mysqld_safe' but > > the fact that resource does: > > ... > > Starting mysqld daemon with databases from /var/lib/mysql > > ... > > > > Yes, I did check man pages for options and if if you suggest > > checking source code then I say that's case for a bug report. > > For something like pacemaker, I wouldn't point a user to the code. > galera and mysql-common.sh are shell scripts, so they're easier to > interpret. The idea was "maybe you can find a discrepancy between how > the scripts are starting mysql, and how you're manually starting > mysql." > > Filing a bug might be reasonable. I don't have much hands-on > experience with mysql or with this resource agent. > > > I tried my best to make it clear, doubt can do that better > > but I'll re-try: > > a) bits needed to run a "new/second" instance are all in > > 'mariadb-server.cnf' and galera works outside of pacemaker > > (cmd above) > > b) if I use attrs: 'datadir' & 'config' yet resource tells > > me "..daemon with databases from /var/lib/mysql..." then.. > > people looking into the code should perhaps be you (as > > Redhat employee) and/or other authors/developers - if I > > filed it as BZ - no? > > > > It should be easily reproducible, have: > > 1) a galera (as a 2nd/3rd/etc. instance, outside & with > > different settings from "standard" OS's rpm installation) > > work & tested > > 2) set up a resource: > > -> $ pcs resource create mariadb-apps ocf:heartbeat:galera > > cluster_host_map="drunk.internal.ccn:10.0.1.6;sucker.internal.ccn:10.0.1.7" > > config="/apps/etc/mariadb-server.cnf" > > wsrep_cluster_address="gcomm://10.0.1.6:5567,10.0.1.7:5567" > > user=mysql group=mysql check_user="pacemaker" > > check_passwd="pacemaker#9897" op monitor OCF_CHECK_LEVEL="0" > > timeout="30s" interval="20s" op monitor role="Master" > > OCF_CHECK_LEVEL="0" timeout="30s" interval="10s" op monitor > > role="Slave" OCF_CHECK_LEVEL="0" timeout="30s" > > interval="30s" promotable promoted-max=2 meta > > failure-timeout=30s > > The datadir option isn't specified in the resource create command > above. If datadir not explicitly set, then the resource agent uses > /var/lib/mysql by default: > ``` > mysql_common_start() > { > local mysql_extra_params="$1" > local pid > > $SU - $OCF_RESKEY_user -s /bin/sh -c \ > "${OCF_RESKEY_binary} --defaults-file=$OCF_RESKEY_config \ > --pid-file=$OCF_RESKEY_pid \ > --socket=$OCF_RESKEY_socket \ > --datadir=$OCF_RESKEY_datadir \ > --log-error=$OCF_RESKEY_log \ > $OCF_RESKEY_additional_parameters \ > $mysql_extra_params >/dev/null 2>&1" & > pid=$! > ``` > > where OCF_RESKEY_datadir is set to /var/lib/mysql if you don't set it > yourself. > > As mentioned above, I'm not very familiar with mysql, but I would > expect the CLI --datadir=/var/lib/mysql option to override anything in > the defaults-file.
To be clear: I know you already mentioned setting datadir=/apps/mysql/data. Just wondering if that was missed somewhere since it's not part of the given command. > > > > and you should get (give version & evn is the same) see what > > I see - weird "misbehavior" > > > > many thanks, L. > > > > _______________________________________________ > > Manage your subscription: > > https://lists.clusterlabs.org/mailman/listinfo/users > > > > ClusterLabs home: https://www.clusterlabs.org/ > > > > -- > Regards, > > Reid Wahl (He/Him) > Senior Software Engineer, Red Hat > RHEL High Availability - Pacemaker -- Regards, Reid Wahl (He/Him) Senior Software Engineer, Red Hat RHEL High Availability - Pacemaker _______________________________________________ Manage your subscription: https://lists.clusterlabs.org/mailman/listinfo/users ClusterLabs home: https://www.clusterlabs.org/