Set up Data Project Beta
After installing Puppet Application Manager (PAM), complete the Data Project Beta setup process in an online environment.
Step 1: Configure and deploy Data Project Beta
Configure and deploy Data Project Beta in Puppet Application Manager (PAM).
-
In Puppet Application Manager, upload your license and follow the
prompts.
Note: The license file is issued by Puppet. If you do not have a license file, contact your Puppet representative.
-
Under Data Project Beta, in the Provide a hostname
field, enter the fully qualified domain name (FQDN) that you want to use to
access the Data Project Beta UI.
For example, this could be the name of the node you have installed Data Project Beta on. If you choose to use an FQDN that is different from the name of this node, you must configure your domain name system (DNS) to resolve the FQDN to the IP address of the Data Project Beta node.
The Data Project Beta TLS certificates — that allow you to access the UI — have already been generated and uploaded to Puppet Application Manager. You do not need to do anything else, unless you want to change these (select Provide my own certs, and click Upload a file).
- Read and accept the Beta Agreement.
-
In the NodePort field, provide a NodePort between
30000-32768.
NodePort is the default endpoint. It allows Data Project Beta to use Mutual Transport Layer Security (MTLS) to validate clients.
-
Interactions between Data Project Beta and Puppet Enterprise (PE) require authentication from Puppet's Certificate Authority (CA). SSH into
your PE primary server and run the following
command to generate a certificate and private key from Puppet CA.
puppetserver ca generate --certname <HOSTNAME>
This command does the following:- Saves the generated certificate to
/etc/puppetlabs/puppet/ssl/certs/<data-project-HOSTNAME>.pem
- Saves the generated private key to
/etc/puppetlabs/puppet/ssl/private_keys/<data-project-HOSTNAME>.pem
- Saves the generated certificate to
-
Upload the generated certificate, the generated private key, and your existing
Puppet CA certificate to PAM.
- Upload the generated certificate in
/etc/puppetlabs/puppet/ssl/certs/<data-project-HOSTNAME>.pem
to the TLS certificate (from Puppet CA) field. - Upload the generated private key in
/etc/puppetlabs/puppet/ssl/private_keys/<data-project-HOSTNAME>.pem
to the TLS private key field. - Upload your CA certificate in
/etc/puppetlabs/puppet/ssl/ca/ca_crt.pem
to the Puppet CA certificate field. Note that the Puppet CA certificate is part of Puppet Server and existed before you generated a new one.
- Upload the generated certificate in
-
In the Authentication mode section, choose whether to
access Data Project Beta using basic authentication
(username and password) or Okta.
Note: Data Project Beta supports pre-hashed passwords using the posix crypt (c) format, for example,
openssl -6 <PASSWORD>
. - Configure any other settings on the page relevant to your installation. When you have finished making any necessary changes to the configuration, click Continue
-
Monitor the new version's preflight checks. The Running Checks indicator
is shown on the screen while your system is checked to make sure your cluster
meets minimum system requirements. When the preflight check is complete:
- If the status is Checks Failed, click View preflights. Correct the issues and click Re-run. Repeat this step as needed.
- If the status is Ready to Deploy, move on to the next step.
-
Once the version is ready to deploy, click Deploy. On
the Application tab, monitor the application for
readiness.
The application's status is shown as Missing for several minutes while deployment is underway.Tip: You can monitor the deployment's progress by running
kubectl get pods --watch
.When the deployment is complete, the application status changes to Ready. Data Project Beta is now deployed!
data_entitlement
module.Step 2: Install and configure the data_entitlement
module
Modules are self-contained, shareable bundles of code and data. The data_entitlement
module enables Puppet Enterprise (PE) to send
node data to Data Project Beta.
-
Add the
data_entitlement
module and its dependencies (if you do not already have these) to your Puppetfile:# Puppet data_entitlement module mod 'puppetlabs-data_entitlement', '0.1.2' # dependencies for data_entitlement mod 'puppetlabs-docker', '4.2.0' mod 'puppetlabs-inifile', '5.2.0' mod 'puppetlabs-stdlib', '7.1.0'
-
Add the data processor class to your PE primary
server and any compilers:
class { 'data_entitlement::data_processor': data_entitlement_url => 'https://<data.your_dns.io>:<NodePort>', }
Note: The primary server contacts Data Project Beta on port 443. -
Deploy the code on your primary server:
puppet-code deploy --all
-
Run the Puppet agent:
puppet agent -t
-
Navigate to the Data Project Beta UI at
https://<data-project-HOSTNAME>
and log in using your username and password.- username: ?
- password: ?