Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions content/getting-started/01-installation/_index.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,12 @@ We will use an Ubuntu 20.04 Linux virtual machine as the CFEngine Hub, and we wi
If you've never set up a virtual machine (VM) before, these are some easy ways:

- Cloud: Create a VM in Digital Ocean, AWS, or any other cloud vendor. **(Recommended)**
- Mac OS: Install and run Vagrant and Virtual Box.
- macOS: Install and run Vagrant and VirtualBox.
- Linux: Install and run Vagrant and libvirt.
- Windows: Use Windows Subsystem for Linux (WSL).

We recommend using Digital Ocean because it is very easy to use the GUI, and spawn a virtual without installing something locally.
However, since it requires you to create an account, some users might prefer to install virtualization software and run everything themself.
We recommend using Digital Ocean because it is very easy to use the GUI, and spawn a virtual machine without installing something locally.
However, since it requires you to create an account, some users might prefer to install virtualization software and run everything themselves.
This is also possible, for example using Vagrant and VirtualBox, and we will provide instructions for both.

## Development machine and CFEngine Hub
Expand Down Expand Up @@ -152,7 +152,7 @@ For example, in Digital Ocean, the username is `root`, and the IP might be `128.

**Note:** In the rest of this tutorial, replace the IP address we use in the examples, `192.168.56.2` with that IP.

**Using Vagrant and Virtualbox:**
**Using Vagrant and VirtualBox:**

Come back to this tutorial after you have completed the installation and setup of a VM as explained in this tutorial:

Expand Down Expand Up @@ -198,7 +198,7 @@ Policy server : None
Binaries : dpkg, apt
```

The output shows you the information needed for SSH (username and hostname / IP) as well as some key information about the host, such as architecture and operating system:
The output shows you the information needed for SSH (username and hostname / IP) as well as some key information about the host, such as architecture and operating system.

## Install CFEngine

Expand All @@ -217,7 +217,7 @@ Open the CFEngine web UI in a web browser by clicking this link, or typing the a
https://192.168.56.2/

You might get warnings about an insecure connection or invalid certificate.
At this point, your hub has a self signed certificate, which means there is no certificate authority that can verify which server you are talking to.
At this point, your hub has a self-signed certificate, which means there is no certificate authority that can verify which server you are talking to.
In the future you might want to set up a DNS entry for your hub and give it a proper certificate, but for now, you can click the options in your browser to Ignore / Continue.
(In Chrome, there might not be an "Accept and continue button", but you can type `thisisunsafe` to bypass the security warning).

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Check the [Pre-installation checklist][Pre-installation checklist] and [Supporte
CFEngine Enterprise is provided in two packages; one is for the Policy
Server (hub) and the other is for each Host (client).

Note: See [Installing Community][Installing Community] for the community version of CFEngine)
Note: See [Installing Community][Installing Community] for the community version of CFEngine.

**Log in as root** and then follow these steps to install CFEngine Enterprise:

Expand All @@ -35,7 +35,7 @@ Note: See [Installing Community][Installing Community] for the community version
[Debian/Ubuntu] # apt -y install /path/to/<agent package>.deb
```

Note: Install actions logged to `/var/logs/cfengine-install.log`.
Note: Install actions are logged to `/var/logs/cfengine-install.log`.

## Bootstrap

Expand All @@ -58,7 +58,7 @@ ifconfig
sudo /var/cfengine/bin/cf-agent --bootstrap <IP address of policy server>
```

The bootstrap command must then be run on any client attaching itself to this server, using the ip address of the policy server (i.e. exactly the same as the command run on the policy server itself).
The bootstrap command must then be run on any client attaching itself to this server, using the IP address of the policy server (i.e. exactly the same as the command run on the policy server itself).

## Post-installation configuration

Expand All @@ -68,10 +68,10 @@ CFEngine itself is configured through policy as well (see [Components][] and

### Configure agent email settings

By default an email a summary of any `cf-agent` run initiated by `cf-execd`. You
By default, `cf-execd` emails a summary of any `cf-agent` run. You
may want to adjust the mailto or mailfrom. If you have a centralized reporting
system like CFEngine Enterprise you may wish to disable agent emails all
together.
system like CFEngine Enterprise you may wish to disable agent emails
altogether.

#### Configure mailto and mailfrom

Expand All @@ -94,7 +94,7 @@ needing to make any additional changes elsewhere. However, any emails sent from
the system might also end up flagged as spam and sent directly to a user's junk
mailbox.

**Note:** It's best practice to restart daemons after adjusting it's settings to
**Note:** It's best practice to restart daemons after adjusting its settings to
ensure they have taken effect.

#### Disable agent emails
Expand All @@ -110,7 +110,7 @@ The preferred way to disable the agent from sending emails is to define

Alternatively you can define the class from `def.cf`.

**Note:** It's best practice to restart daemons after adjusting it's settings to
**Note:** It's best practice to restart daemons after adjusting its settings to
ensure they have taken effect.

### Server IP address and hostname
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ docker exec cfengine-hub bash -c "/usr/local/sbin/cf-agent --bootstrap \$(ip -4

## Preparing CFEngine host in container

The procedure to setup **cfengine-host** is similar to the **cfengine-hub** deployment. The changes are to name of the host container for better identification and bootstrap IP of the **cfengine-hub**.
The procedure to setup **cfengine-host** is similar to the **cfengine-hub** deployment. The changes are to the name of the host container for better identification and bootstrap IP of the **cfengine-hub**.

```command
docker run --privileged -dit --name=cfengine-host registry.access.redhat.com/ubi9-init /usr/sbin/init
Expand Down Expand Up @@ -108,7 +108,7 @@ docker exec cfengine-host bash -c "/usr/local/sbin/cf-agent --bootstrap ${CFENGI

### Preparing container image for CFEngine

Create a `Dockerfile` with following contents:
Create a `Dockerfile` with the following contents:

```Dockerfile
FROM registry.access.redhat.com/ubi9-init:latest
Expand Down Expand Up @@ -162,7 +162,7 @@ cfengine lts <IMAGE_ID> About an hour ago 302MB

### Using docker compose service

Create a `compose.yaml` file with following contents:
Create a `compose.yaml` file with the following contents:

```yaml {file="compose.yaml"}
name: cfengine-demo
Expand Down Expand Up @@ -211,7 +211,7 @@ Validate the `compose.yaml` file
docker compose -f compose.yaml config 1>/dev/null
```

**Note**: No output means valid yaml file.
**Note**: No output means a valid YAML file.

Start service cfengine-demo

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ sudo /var/cfengine/bin/cf-agent --bootstrap 192.168.1.12

Upon successful completion, a confirmation message appears: "Bootstrap to '192.168.1.12' completed successfully!"

Type the following to check which version of CFEngine your are running:
Type the following to check which version of CFEngine you are running:

```command
/var/cfengine/bin/cf-promises --version
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ This tutorial will cover the following steps:

### Configure 2 RHEL virtual machine instances in AWS

- Login to AWS.
- Log in to AWS.
- Under `Create Instance` click on `Launch Instance`.
- On the line `Red Hat Enterprise Linux 64 Bit Free tier eligible` press the `Select` button.
- On the `Choose Instance Type` screen ensure the `Micro Instances` tab on the left is selected.
Expand All @@ -51,7 +51,7 @@ This tutorial will cover the following steps:

### Configure the security group

- On the left hand side of the AWS console click `NETWORK & SECURITY > Security Groups`
- On the left-hand side of the AWS console click `NETWORK & SECURITY > Security Groups`
- Remembering the `Security group` name from earlier, click on the appropriate line item in the list.
- Below the list of security group names will display details for the current security group.
- Click the `Inbound` tab.
Expand Down Expand Up @@ -117,7 +117,7 @@ Note: Turning off the firewall in a production environment is considered unsafe.

## CFEngine installation overview

We ready now ready to install the CFEngine software on both the server and client virtual machines. These also referred to as the "hub" and "host" machines, respectively. During the course of the instructions outlined in this guide, you will perform the following tasks:
We are now ready to install the CFEngine software on both the server and client virtual machines. These are also referred to as the "hub" and "host" machines, respectively. During the course of the instructions outlined in this guide, you will perform the following tasks:

- Install CFEngine Enterprise onto a Policy Server and onto Hosts. A Policy Server (hub) is a CFEngine instance that contains promises (business policy) that get deployed to Hosts. Hosts are clients that retrieve and execute promises.
- Bootstrap the policy server to itself and then bootstrap each of the Hosts to the Policy Server. Bootstrapping establishes a trust relationship between the Policy Server and all Hosts. Thus, business policy that you create in the Policy Server can be deployed to Hosts throughout your company. Bootstrapping completes the installation process.
Expand Down Expand Up @@ -147,7 +147,7 @@ This script installs the latest CFEngine Enterprise Policy Server on your server

Upon successful completion, a confirmation message appears: "Bootstrap to '172.31.3.25' completed successfully!"

- Type the following to check which version of CFEngine your are running:
- Type the following to check which version of CFEngine you are running:

`/var/cfengine/bin/cf-promises --version`

Expand All @@ -166,7 +166,7 @@ Note: The installation will work on 64-bit and 32-bit client machines (the host

![Bootstrap the policy server](Installing-CFE-on-AWS-11.png)

The client software (host), has been installed on the second virtual machine.
The client software (host) has been installed on the second virtual machine.

Note: You can install CFEngine Enterprise on up to 25 hosts using the script above.

Expand All @@ -184,7 +184,7 @@ Note: You can install CFEngine Enterprise on up to 25 hosts using the script abo
- The Mission Portal is immediately accessible. Connect to the Policy Server through your web browser at: http://<External IP address of your Policy Server> (Note: The External IP address is available in the AWS console).
- The default username for the Mission Portal is `admin`, and the password is also `admin`.
- The Mission Portal runs TCP port 80 by default. [Configure mission portal to use HTTPS instead of HTTP](https://cfengine.zendesk.com/entries/25005193-Configure-Mission-Portal-to-use-HTTPS-instead-of-HTTP).
- During the initial setup, the Host(s) might take a few minutes to show up in the Mission Portal. Refresh the web page and login again if necessary.
- During the initial setup, the Host(s) might take a few minutes to show up in the Mission Portal. Refresh the web page and log in again if necessary.

## What next?

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ version of CFEngine Enterprise, but the number of Hosts (clients) is limited to
- You need a minimum of 2 GB of available memory and a modern 64 bit processor.
- Plan for approximately 100MB of disk space per host. You should provide an
extra 2G to 4G of disk space if you plan to bootstrap more hosts later.
- You need a least two VMs/servers, one for the Policy Server and one for a Host (client). They must be on the same network.
- You need at least two VMs/servers, one for the Policy Server and one for a Host (client). They must be on the same network.
- The Policy Server needs to run on a dedicated OS with a vanilla installation (i.e. it only has repositories and packages officially
supported by the OS vendor)

Expand All @@ -31,7 +31,7 @@ During the course of the instructions outlined in this guide, you will perform t
and all Hosts. Thus, business policy that you create in the Policy Server can be deployed to Hosts throughout your company.
Bootstrapping completes the installation process.
- **Log in to the Mission Portal.** The Mission Portal is a graphical user interface that allows you to verify the
the actual state of all your Hosts, thus ensuring that your promises are being executed.
actual state of all your Hosts, thus ensuring that your promises are being executed.
- **Try out the Tutorials.** Links to three tutorials give you a head start on learning CFEngine.

## 1. Download and install Enterprise on a policy server
Expand Down Expand Up @@ -60,7 +60,7 @@ sudo /var/cfengine/bin/cf-agent --bootstrap <IP address of policy server>

Upon successful completion, a confirmation message appears: "Bootstrap to '192.168.1.12' completed successfully!"

Type the following to check which version of CFEngine your are running:
Type the following to check which version of CFEngine you are running:

```command
/var/cfengine/bin/cf-promises --version
Expand Down Expand Up @@ -105,7 +105,7 @@ password: admin

The Mission Portal runs TCP port 80 by default. (Click [here] (https://cfengine.zendesk.com/entries/25005193-Configure-Mission-Portal-to-use-HTTPS-instead-of-HTTP)
to configure the Mission Portal to use HTTPS instead of HTTP.) During the initial setup, the Host(s) might take a few minutes to show up in the Mission Portal. Simply refresh the web page
and login again if necessary.
and log in again if necessary.

Note: If you are running Enterprise with Vagrant, you must add the
correct port: http://localhost:<port> in your browser. The <port> is the port-forwarder
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ explore CFEngine Enterprise. This guide describes how to set up a client-server
model with CFEngine and, through policy, manage both machines. Vagrant will
create one VirtualBox VM to be the Policy Server (server), and another machine
that will be the Host Agent (client), or host that can be managed by CFEngine.
Both running 64-bit Debian and communicate on a host-only network.
Both run 64-bit Debian and communicate on a host-only network.
Apart from a one-time download of Vagrant and VirtualBox, this setup requires
just one command and takes between 5 and 15 minutes to complete (determined by
your Internet connection and disk speed). Upon completion, you are ready to
Expand Down Expand Up @@ -46,7 +46,7 @@ different approach][General installation#More detailed installation guides].
This tutorial uses Vagrant to configure your VMs. It is available for Linux,
Windows and MacOS and can be downloaded from vagrantup.com. After
downloading Vagrant, install it on your computer. You may want to reference the
Windows Mac or Linux vagrant install guides.
Windows, Mac, or Linux Vagrant install guides.

## Install Virtualbox

Expand Down Expand Up @@ -75,7 +75,7 @@ vagrant up
Vagrant performs the following processes:

- Downloads the basebox for both the hub and the client (if it has
not already been cached by vagrant.
not already been cached by vagrant).
- Provisions, installs and bootstraps the hub
- Provisions, installs and bootstraps clients

Expand Down Expand Up @@ -125,15 +125,15 @@ Last login: Fri Jun 13 18:58:10 2014 from 10.0.2.2

#### Accessing via GUI

If you launch the virtualbox GUI you should find the vagrant vms named
If you launch the VirtualBox GUI, you should find the vagrant vms named
`CFEngine Enterprise {{< params "cfengine.branch" >}}.{{< params "cfengine.latest_patch_release" >}}-{{< params "cfengine.latest_package_build" >}} hub`, and `CFEngine Enterprise {{< params "cfengine.branch" >}}.{{< params "cfengine.latest_patch_release" >}}-{{< params "cfengine.latest_package_build" >}} agent host001`. Additionally, you can uncomment the `v.gui=true`
option in the `Vagrantfile` to have the console gui start with the vms.
**Note:** There are two `v.gui` settings to uncomment; one for the hub, and one
for the clients.

### Check the status of the vms

Running `vagrant status` from the vagrant project directroy will produce
Running `vagrant status` from the vagrant project directory will produce
output like this.

```command
Expand Down Expand Up @@ -175,7 +175,7 @@ vagrant suspend
```

To suspend the vms run `vagrant suspend`. This will freeze the state of each vm
and allows for latter resuming of the environment.
and allows for later resuming of the environment.

```command
vagrant halt
Expand Down Expand Up @@ -210,7 +210,7 @@ vagrant destroy

## Uninstall Vagrant environment

When you have completed your evaluation are ready to use CFEngine on
When you have completed your evaluation and are ready to use CFEngine on
production servers, remove the VMs that you created above by following these
simple instructions:

Expand Down
Loading