FAQ
I have an application package that needs to be installed on certain
application servers but before it can be installed, database access has to
be setup on a database server.

I have figured out how to export a resource on the app server that gets
collected and realized on the database server, but I cannot figure out how
to make the package on the app server depend on the exported resource that
gets realized on the database server.

I have tried something like this:

@@numerex_percona::database_grant { $::mysql_hostname:
user => 'root',
password => $::mysql_server_root_password,
host => $::fqdn,
before => Package['ublipgw'],
}

But that doesn't work because Package['ublipgw'] is not on the server where
the database_grant is realized, but on the server where it is exported.
What is the best way to handle a situation like this?

--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/p4-htQc4UgkJ.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.

Search Discussions

  • David Schmitt at Jun 18, 2012 at 8:40 am

    On 15.06.2012 21:19, Byron Appelt wrote:
    I have an application package that needs to be installed on certain
    application servers but before it can be installed, database access has
    to be setup on a database server.

    I have figured out how to export a resource on the app server that gets
    collected and realized on the database server, but I cannot figure out
    how to make the package on the app server depend on the exported
    resource that gets realized on the database server.

    I have tried something like this:

    @@numerex_percona::database_grant{ $::mysql_hostname:
    user => 'root',
    password => $::mysql_server_root_password,
    host => $::fqdn,
    before => Package['ublipgw'],
    }


    But that doesn't work because Package['ublipgw'] is not on the server
    where the database_grant is realized, but on the server where it is
    exported. What is the best way to handle a situation like this?
    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

    --
    You received this message because you are subscribed to the Google Groups "Puppet Users" group.
    To post to this group, send email to puppet-users@googlegroups.com.
    To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com.
    For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppuppet-users @
categoriespuppet
postedJun 15, '12 at 7:19p
activeJun 18, '12 at 8:40a
posts2
users2
websitepuppetlabs.com

2 users in discussion

David Schmitt: 1 post Byron Appelt: 1 post

People

Translate

site design / logo © 2021 Grokbase