Integrating cf-remote in an existing setup #5545
-
We already integrated several clients manually but now I want to explore At the moment there are several open questions re The Now, I don't really get where to execute Our CFEngine server is a FreeBSD machine. This is clearly wrong on both sides, mine and
But CFEngine is installed, package cfengine321 (my colleague did that, don't know if it's the proper package). Seems like I think, FreeBSD is not officially supported by But when I run cf-remote on the controlling server,
Why might this be? The policy server has been locked down I think
Yet again, I think Is there a way to provide And lastly,
Sorry for all those questions. I feel a little bad because @olehermanse did such a great job advertising it to me, yet I still run into lots of blockers. I try to comfort myself with my questions maybe being helpful for improving the docs or the tool itself :-). |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
@MasinAD Lots of things to answer here so tell me if I miss something;
Up to you. I prefer to run some tools like this on my machine (terminal, SSH, editor, I'd like to recommend going through the getting started tutorial on our website: https://docs.cfengine.com/docs/3.21/getting-started.html It tries to make these things a bit more clear. It defaults to using CFEngine Enterprise, and letting you test some of the Enterprise features. But it should be valuable for you, IMO, even if you don't intend on using Enterprise after finishing the tutorial, since it introduces the various tools and concepts.
Yes. In a normal setup, the hub is the host responsible for serving policy (which clients fetch), and in CFEngine Enterprise it is also where the Web UI and reporting database is located. CFEngine is higly customizable / programmable - you can set up hosts to fetch policy from multiple servers, or even build something completely distributed ("peer-to-peer"), but I'm trying to focus on the easy / default case here. For small infrastructures it's normal to have 1 hub. For larger infrastructures it's common to have multiple. The 2 most common reasons for having multiple are: Separate environments (dev, test, prod) and scalability - we currently support up to 5000 hosts per hub.
Kind of. The short answer is that
(In this example I am using saved groups, which come from In Enterprise there are different packages for hubs and clients (since the hub package contains everything needed for the reporting database and Web UI - Apache, PostgreSQL, etc.). Furthermore, due to this separation, the default policy (Masterfiles Policy Framework) only exists in the hub packages, since it's not needed in the client. In Community, we've included the policy in the packages to make it easy, just one package for hub or client. So yea, in community you can use the same packages (provided you are talking about running the hub and the clients on the same OS).
This is a good idea. It's halfway there, in the form of the
Yes, there is
CFEngine does not officially support FreeBSD - we don't provide packages on FreeBSD and we don't regularly test on FreeBSD. Still, there are some people running CFEngine on FreeBSD, compiling it themself, and we are happy to accept their patches. In some cases we do go in and test and fix an issue on another platform like FreeBSD, but naturally, this is not a very high priority compared to the requests from paying customers. In order to improve the support for FreeBSD, there are 2 good routes I see:
Hard to say why this is happening. To debug it further, I'd try to log in on the host and run the same command as
FYI: It's not very common to bootstrap to domain names - people don't usually trust DNS for this kind of setup. CFEngine does support resolving the domain name, but once it starts changing, it becomes tricky, and when there inevitably is a DNS problem (The problem is always DNS), it's problematic. If you can avoid that and use a static IP address for the hub, I'd recommend doing that. |
Beta Was this translation helpful? Give feedback.
@MasinAD Lots of things to answer here so tell me if I miss something;
Up to you. I prefer to run some tools like this on my machine (terminal, SSH, editor,
scp
,cfbs
,cf-remote
, etc.). Sincecf-remote
uses SSH to communicate with the hosts, you will need to run it from a machine which has network access and SSH access to all the machines where you plan to install CFEngine with it.I'd like to recommend going through the getting started tutorial on our website:
…