You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This section provides quickstart guides for getting started with Chef 360 SaaS and its tools.
12
+
This section is a quickstart guide to using Chef 360 SaaS and its tools.
13
13
14
-
## Get started guides
14
+
## How Chef 360 SaaS works
15
15
16
-
Before you begin with these guides, [review the system requirements]({{< relref "system_requirements" >}}).
16
+
Chef 360 SaaS consists of three main components:
17
17
18
-
Chef 360 SaaS guides:
18
+
-**Chef 360 SaaS CLIs**: Users use the CLIs to define and invoke Chef Courier jobs, and configure user accounts, tenants, organizations, and nodes.
19
+
-**Chef 360 SaaS**: Manages users, organizations, and tenants, schedules and distributes Courier jobs, and monitors nodes and job results.
20
+
-**Chef skills**: Chef 360 SaaS installs skills on each node that manage the node, execute jobs, and report to Chef 360 SaaS.
19
21
20
-
-[Set up Chef 360 SaaS]({{< relref "set_up" >}})
22
+
## What this guide covers
21
23
22
-
Chef 360 Platform CLI guides:
24
+
This guide walks you through the following steps:
23
25
24
-
-[Install and register the Chef 360 Platform CLIs]({{< relref "install_cli" >}})
26
+
1. Installing Chef 360 SaaS in a single-node Kubernetes cluster.
27
+
1. Installing Chef 360 SaaS CLIs on a local workstation and registering it with Chef 360 SaaS.
28
+
1. Enrolling a node with Chef 360 SaaS. Nodes can be enrolled using a Chef 360 SaaS CLI or by uploading a Chef Infra cookbook if Chef Infra Client is already installed on the node.
29
+
1. Defining and running a basic job on a node, and reviewing the job's execution details and the results of each step.
25
30
26
-
Chef Node Management guides:
31
+
## Before you begin
27
32
28
-
-[Register the Node Management agent]({{< relref "register_node_agent" >}})
29
-
-[Define skills]({{< relref "define_skills" >}})
30
-
-[Create a skill assembly]({{< relref "create_skill_assembly" >}})
Node enrollment brings nodes under management by Chef 360 SaaS.
11
+
When you enroll a node into a node cohort, Chef 360 Platform installs the Chef skills and skill settings that are defined for all nodes in that cohort.
12
+
These skills allow Chef 360 Platform to manage the node, execute Chef Courier jobs, and report back to Chef 360 Platform.
13
+
14
+
Chef 360 Platform installs the following skills in the default skill assembly:
15
+
16
+
-**Chef Infra Client interpreter skill**: Executes Chef Infra Client runs.
17
+
-**Courier Runner skill**: Interprets and executes Chef Courier jobs.
18
+
-**Gohai skill**: Reports node attribute data to Chef 360 Platform.
19
+
-**Inspec interpreter skill**: Executes Chef InSpec audits.
20
+
-**Node Management agent**: Manages and installs other skills on the node.
For more information, see the [Chef 360 skills](https://docs.chef.io/360/1.3/node_management/skills/) documentation.
25
+
26
+
## Node enrollment methods
12
27
13
28
This document demonstrates two different methods of node enrollment:
14
29
15
30
- cookbook-based enrollment
16
31
- single-node enrollment
17
32
33
+
For more information, see the [node enrollment documentation](https://docs.chef.io/360/1.3/node_management/enroll_nodes/).
34
+
18
35
{{< note >}}
19
36
20
-
This version of Chef 360 SaaS doesn't support node re-enrollment.
37
+
Chef 360 Platform doesn't support node re-enrollment.
21
38
22
39
{{< /note >}}
23
40
24
-
## Prerequisites
41
+
## Role requirements
25
42
26
-
-[A node cohort has been created]({{< relref "node_cohort" >}}).
43
+
To enroll nodes, use a profile with the [node-manager role](https://docs.chef.io/360/1.3/administration/system_roles/).
27
44
28
-
## Requirements
45
+
## Before you begin
29
46
30
-
Review the [node requirements]({{< relref "system_requirements#node-requirements" >}}) before enrolling nodes.
47
+
-Review the [node requirements]({{< relref "/360/saas/system_requirements#node-requirements" >}}).
31
48
32
49
## Single-node enrollment
33
50
34
-
Single-node enrollment enrolls nodes from the server side.
35
-
With this method, you define connection and configuration details and push them up to Chef 360 SaaS, which connects to each node and installs Chef Habitat, Chef Node Management, and any skills or agents assigned to a node cohort.
51
+
Single-node enrollment allows you to enroll nodes directly from the server side. With this method, you specify the connection and configuration details for each node and upload them to Chef 360 Platform. Chef 360 Platform then connects to each node, installs Chef Habitat, Chef Node Management, and any skills or agents associated with the node's cohort.
A Courier job defines the actions performed on a node or set of nodes, the schedule that the actions are performed on, and the group of nodes that the actions are performed on.
12
-
A job can be executed multiple times across multiple nodes for multiple actions.
11
+
A Courier job specifies the actions to perform, the schedule for execution, and the target nodes where the actions will run. Jobs can execute multiple actions, across multiple nodes, and can run multiple times as defined by the schedule.
13
12
14
-
## Prerequisites
13
+
## How jobs are executed on a node
15
14
16
-
-[Nodes are enrolled]({{< relref "enroll_nodes" >}}).
15
+
Chef 360 SaaS uses skills to execute Courier jobs.
16
+
For example, the Courier Runner is a skill that interprets jobs and executes them, the Shell interpreter is a skill that executes shell scripts included in a job, and the Node Management agent is a skill that manages nodes and other skills.
17
+
18
+
In this example, the Courier Runner skill interprets the job definition and passes a shell command to the Shell interpreter.
19
+
20
+
## Before you begin
21
+
22
+
- You'll need at least one [enrolled node]({{< relref "enroll_nodes.md" >}}).
17
23
18
24
## Define a job
19
25
20
-
Jobs are defined using a job template, which is a file in JSON, YAML, or TOML format that tells Chef Courier the name of the job, when the job should run, the nodes that the job should run on, and the actions that the job should take.
26
+
You define a job with a job template, which is a JSON, YAML, or TOML file that tells Chef Courier the name of the job, when the job should run, the nodes that the job should run on, and the actions that the job should take.
21
27
22
-
This job template creates a job that's executed one node, it runs immediately, and it uses the `chef-platform/shell-interpreter` to run the `sleep 10` command.
28
+
This job template creates a job that's executed on one node, it runs immediately, and runs the `sleep 10` command using the Shell interpreter skill.
23
29
24
-
- Create a file called `create-job-simple.json` and with the following JSON string:
Replace the node ID in the JSON file with the node identifier of an enrolled node.
31
41
32
-
When you add the job to Chef 360 SaaS, the Courier Dispatcher sends the job definition to the Courier Runner on the specified node which determines when and how to run the job.
42
+
## Submit the job
43
+
44
+
When you send the job to Chef 360 SaaS, the Courier Dispatcher sends the job definition to the Courier Runner on the specified node which determines when and how to run the job.
33
45
You can submit a job definition using a JSON, YAML, or TOML file. The default format is JSON.
34
46
35
47
- Add the job run using the job template file:
36
48
37
49
```sh
38
-
chef-courier-cli scheduler jobs add-job --body-file create-job-simple.json --profile <COURIER_OPERATOR_PROFILE_NAME>
50
+
chef-courier-cli scheduler jobs add-job --body-file <PATH_TO_JSON_FILE> --profile <COURIER_OPERATOR_PROFILE_NAME>
39
51
```
40
52
41
53
The default file format is JSON, you can also submit the job using YAML or TOML using the `--body-format` option. For example:
@@ -71,7 +83,6 @@ A job instance is created every time the job executes. This job is set to run im
71
83
The response is similar to the following:
72
84
73
85
```json
74
-
75
86
{
76
87
"items": [
77
88
{
@@ -272,7 +283,7 @@ A job run is created for each target node in a job instance.
272
283
}
273
284
```
274
285
275
-
## Debug Courier jobs
286
+
## Debug Chef Courier jobs
276
287
277
288
You can also review the job step details by connecting to a node with SSH and checking the Courier Runner logs.
278
289
@@ -289,3 +300,10 @@ For a Windows node:
289
300
cd C:\hab\svc\courier-runner\logs
290
301
gc .\courier-log -Wait
291
302
```
303
+
304
+
## More information
305
+
306
+
To define and run jobs, see the following documentation:
307
+
308
+
- [Create a Courier job](https://docs.chef.io/360/1.3/courier/jobs/).
309
+
- [Create a Courier job template](https://docs.chef.io/360/1.3/courier/jobs/template/).
0 commit comments