Puppet doesn't support cross-node relationships. You'll have to manage
that on a similar level as you are managing maintenance windows, that is
by scheduling when changes to your manifests are actually applied to
your nodes.
On a related note you need to make sure that the database_grant is able
to manage its state without the other server being available, else you
will run into troubles when you have transient problems with the other
server or network later. In the simplest case a re-try might be
sufficient, but, depending on your actual situation, might also be the
worst thing that could happen.
Best Regards, David