Skip to content

Commit

Permalink
Migrated RC1 content from Confluence (#6)
Browse files Browse the repository at this point in the history
* Initial two main sections migrated to markdown

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* Signed-off by: Lisa Barry <lisa.barry@progress.com> More updates

* More changes

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* More updates

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* More updates

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* Added 10 based on input from Sonida Arora ("we can say for free nodes, number is 10 as of now")

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* Made updates based on changes from Rahul (in Confluence)

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* Added Migration Tools content

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* Added Test Kitchen content

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* Couple of updates

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* Removed content relating to assess and remove because they are not implemented yet (after getting confirmation from Varun)

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* Fixing some errors

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>

* Removed --version content (as confirmed by Brian Loomis) - installing_the_chef_client_migration_tool.md Signed-off by: Lisa Barry <lisa.barry@progress.com>

* Removed the --version content (confirmed by Brian Loomis) - get_started_in_a_production_environment.md. Signed-off by: Lisa Barry <lisa.barry@progress.com>

* Removed airgap section (as confirmed by Brian Loomis) - installing_the_chef_client_migration_tool.md - Signed-off by: Lisa Barry <lisa.barry@progress.com>

* Removed content relating to an internal bug (confirmed by Brian Loomis) - _index.md - Signed-off by: Lisa Barry <lisa.barry@progress.com>

* Apply suggestions from code review

Co-authored-by: Vasundhara Jagdale <vjagdale@progress.com>

* Correct licensing details

Signed-off-by: Ian Maddaus <ian.maddaus@progress.com>

---------

Signed-off-by: LisaBarry316 <lisa.barry@progress.com>
Signed-off-by: Ian Maddaus <ian.maddaus@progress.com>
Co-authored-by: LisaBarry316 <lisa.barry@progress.com>
Co-authored-by: Ian Maddaus <IanMadd@users.noreply.github.com>
Co-authored-by: Vasundhara Jagdale <vjagdale@progress.com>
Co-authored-by: Ian Maddaus <ian.maddaus@progress.com>
  • Loading branch information
5 people authored Nov 27, 2024
1 parent e169097 commit 07edd34
Show file tree
Hide file tree
Showing 24 changed files with 1,061 additions and 6 deletions.
19 changes: 19 additions & 0 deletions content/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,22 @@ linkTitle = "Chef Infra Client"
[menu.landing_page]
title = "Chef Infra Client"
+++

To provide enterprise stability with long term solutions, Progress Chef has stated its' [Long Term Support (LTS) model](https://www.chef.io/blog/long-term-support-progress-chef-providing-stability) for products. Infra Client 19 is the LTS version of client software for Infrastructure Management. With the first Release Candidate 1 (RC1) of Infra Client 19 we are moving to a Habitat (HAB) based package of Client bundle. This will work in tandem with a Test Kitchen Enterprise bundle (a Chef-maintained version of Test Kitchen included with Chef Workstation) and a migration or installable utility to migrate existing installations of omnibus builds to HAB builds.

Key capabilities in Infra Client 19 include:

- The introduction of licensing for Client software
- A Habitat (HAB) based builds mechanism of Infra Client
- The ability to manage clients with an agent-less mode of operation with out-of-the-box resources
- The usage of a Chef-maintained Test Kitchen bundle with the Client 19 package
- The usage of a migration or installation utility to migrate from an existing omnibus build package to a HAB package

Infra Client 19 RC1 is non-production usage software that can be used to verify existing deployment patterns of your client systems.

Some significant changes (which customers moving to Infra Client 19 should be aware of) include:

- Omnibus builds will not be provided for Infra Client and associated tools​
- All components of workstation packaged together through omnibus will cease to work​
- Native installers will cease to support esoteric platforms like AIX and Solaris​
- Resource packs will be modularized for InSpec as a part of the LTS release
2 changes: 2 additions & 0 deletions content/get_started/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,5 @@ identifier = "get_started/overview"
parent = "get_started"
weight = 10
+++

Refer to the sub-sections for details on how to get started in a production or acceptance environment, and troubleshooting information.
49 changes: 49 additions & 0 deletions content/get_started/get_started_in_a_production_environment.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
+++
title = "Getting Started in a Production Environment"
linkTitle = "Getting Started in a Production Environment"

[menu.get_started]
title = "Getting Started in a Production Environment"
identifier = "get_started/production"
parent = "get_started"
weight = 11
+++

The usage instructions are identical across all operating systems, with the only difference being the method for setting environment variables. The `CHEF_LICENSE_SERVER` environment variable is only required for accessing the acceptance environment of the licensing server.

To get started in a production environment, follow these steps:

1. Run the chef-client in local-mode using the `--why-run` flag, which is a type of Chef Infra Client run on your local that does everything except modify the system.
1. Accept the EULA if prompted, which typically occurs during the first run of Chef products:

```sh
chef-client --local-mode --why-run
```

Chef Infra looks for valid licenses on your system and at the initial run (because a license is unavailable), it prompts you to enter a license key:

![Enter a license key](/images/chef-client/get_started/enter-license-key.png)

1. Select `I already have a license ID` and enter one of the license keys from the **License Keys for the Production Environment** table int he following section: [How to Apply a License]({{< relref "how_to_apply_a_license" >}}). Because an environment variable has not been set to use the acceptance environment of the license server, communication defaults to the production environment.

![License validated successfully](/images/chef-client/get_started/license-validated-successfully-edited.png)

1. After entering one of the license keys, the run should proceed and complete successfully.

![License details](/images/chef-client/get_started/license-details.png)

## License generation

To generate a license, follow these steps:

1. Select `I don't have a license ID and would like to generate a new license ID`.
![Generate a new license ID](/images/chef-client/get_started/generate-a-new-license-id.png)
1. Select the desired license type and follow the link provided on the screen to generate your license by completing the form. You will receive the license in an email.
![Registration link](/images/chef-client/get_started/registration-link.png)
1. Select `Validate license now` and enter the license ID you received in the email. After that, the run should proceed and complete successfully.
![Generated license validated successfully](/images/chef-client/get_started/generated-license-validated-successfully.png)
58 changes: 58 additions & 0 deletions content/get_started/get_started_in_an_acceptance_environment.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
+++
title = "Getting Started in an Acceptance Environment"
linkTitle = "Getting Started in a Acceptance Environment"

[menu.get_started]
title = "Getting Started in a Acceptance Environment"
identifier = "get_started/acceptance"
parent = "get_started"
weight = 12
+++

The experience of using Chef Infra with the acceptance environment is identical to that of the production environment, with only one additional step required before executing the commands.

To avoid potential conflicts, consider removing the license file before switching to the acceptance environment.

To delete the license file, use the following commands:

- **macOS or Linux:**

```sh
rm /Users/<YourUsername>/.chef/licenses.yaml
```

- **Windows (Command Prompt):**

```sh
del C:\Users\<YourUsername>\.chef\licenses.yaml
```

- **Windows (PowerShell):**

```sh
Remove-Item C:\Users\<YourUsername>\.chef\licenses.yaml
```

To set the license server URL for the acceptance environment, use the following commands for your operating system:

- **macOS or Linux:** Open your terminal and run:

```sh
export CHEF_LICENSE_SERVER=https://licensing-acceptance.chef.co/License
```

- **Windows (Command Prompt):** Open the Command Prompt and run:

```sh
set CHEF_LICENSE_SERVER=https://licensing-acceptance.chef.co/License
```

- **Windows (PowerShell):** Open PowerShell and run:

```sh
$env:CHEF_LICENSE_SERVER="https://licensing-acceptance.chef.co/License"
```

This sets the `CHEF_LICENSE_SERVER` environment variable to direct it to the acceptance environment of the licensing server.

You can proceed to use Chef Infra with one of the license keys provided in the [License Keys for the Acceptance Environment]({{< relref "how_to_apply_a_license/#license-keys-for-the-acceptance-environment" >}}) section.
96 changes: 96 additions & 0 deletions content/get_started/troubleshooting.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
+++
title = "Troubleshooting"
linkTitle = "Troubleshooting"

[menu.get_started]
title = "Troubleshooting"
identifier = "get_started/troubleshooting"
parent = "get_started"
weight = 13
+++

If you initially chose to use the production environment but later decide to explore the acceptance environment, the license keys from the production environment will still be on your system. To avoid potential conflicts, consider removing the license file before switching to the acceptance environment.

The `licenses.yaml` exists in the following locations based on your operating system:

- **macOS or Unix system:** On macOS or Unix systems, the `licenses.yaml` file is located here:

```sh
/Users/<YourUsername>/.chef/
```

Replace \<YourUsername\> with your actual username.

- **Windows Systems:** On Windows systems, the `licenses.yaml` file is typically located at:

```sh
C:\Users\<YourUsername>\.chef\
```

Replace \<YourUsername\> with your actual Windows username.

To delete the license file, use the following commands:

- **macOS or Linux:**

```sh
rm /Users/sosaha/.chef/licenses.yaml
```

- **Windows (Command Prompt):**

```sh
del C:\Users\<YourUsername>\.chef\licenses.yaml
```

- **Windows (PowerShell):**

```sh
Remove-Item C:\Users\<YourUsername>\.chef\licenses.yaml
```

You can remove your `licenses.yaml` file to clear any existing licenses on your system.

## Check if the license server URL for acceptance is set

You can verify if the `CHEF_LICENSE_SERVER` environment variable is set by running the following command:

- **macOS or Linux:**

```sh
echo $CHEF_LICENSE_SERVER
```

- **Windows (Command Prompt):**

```sh
echo %CHEF_LICENSE_SERVER%
```

- **Windows (PowerShell):**

```sh
$env:CHEF_LICENSE_SERVER
```

## Unset the license server URL

If you need to unset the `CHEF_LICENSE_SERVER`, you can use the following commands:

- **macOS or Linux:**

```sh
unset CHEF_LICENSE_SERVER
```

- **Windows (Command Prompt):**

```sh
set CHEF_LICENSE_SERVER=
```

- **Windows (PowerShell):**

```sh
Remove-Item Env:CHEF_LICENSE_SERVER
```
32 changes: 32 additions & 0 deletions content/hab_builds/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,35 @@ identifier = "hab/overview"
parent = "hab"
weight = 10
+++

**Habitat-based Build and Delivery System:** The migration of Chef 19 to Habitat reduces dependencies on specific operating systems, enabling support for new platforms and systems more efficiently. The flexibility of this architecture also allows organizations to scale operations across diverse infrastructures effectively.

For RC1, the Habitat package for Infra Client 19 has been exported to tar. The tar is available off-the-shelf using the location specified in the download instructions or you can generate it on-demand using the instructions in the following section.

## How do I generate the tar if I need to?

To generate the tar, follow these steps:

1. Install Habitat. Follow the instructions at the following page to do this: [Get Chef Habitat](https://docs.chef.io/habitat/install_habitat/). Alternatively, use the following command to install Habitat:

```curl
curl https://raw.githubusercontent.com/habitat-sh/habitat/main/components/hab/install.sh | sudo bash -s -- -c stable -v 1.6.652
```
1. When Habitat is installed, run through the Habitat setup by running the following command:
```sh
hab setup
```
1. Create a tar using the following command:
```sh
hab pkg export tar chef/chef-infra-client --auth <auth-token>
```
## How to install Chef Infra Client RC1
You can use the migration tool to install Chef Infra Client 19 RC1 as a fresh install. You can also use the migration tool to install Chef Infra client 19 RC1 when migrating from older Omnibus builds of Chef Infra Client.
Refer to the migration tool documentation for instructions on how to install Infra Client using the migration tool.
30 changes: 30 additions & 0 deletions content/install/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,33 @@ identifier = "install/overview"
parent = "install"
weight = 10
+++

Chef Infra Client will be primarily downloaded and installed using the migration tool. For instructions relating to the migration tool, refer to the migration tool specific download instructions.

For RC1, Chef infra Client and the migration tool will be available through pre-signed URLs for S3 buckets where a Chef Infra Client tarball and migration tool utility is available for download.

## Prerequisites

Before you begin using Chef Infra 19 with its integrated licensing, follow these general instructions:

1. You can choose to work with either the "acceptance" or "production" environment for the licensing server.
- If you opt for the "acceptance" environment, you must set an environment variable. Regular customers do not need to perform this step.
1. If any other version of Chef Infra is already installed on your system, uninstall it before continuing.
1. Install the Chef Infra 19 package. The installation process is the same as the existing and older versions of Chef Infra.
1. Use one of the provided test license keys (when prompted) while running Chef Infra commands.

If you encounter any difficulties, feel free to comment on this page for support.

## Installation steps

Chef Infra Client 19 RC1 can be installed as a fresh install or as a migration from an existing version of Chef Infra Client using the migration tool. After the migration tool has been installed, use the following command to download and install Chef Infra Client RC1:

```sh
/chef-migrate --version
```

Lastly, run the migration using the online flags, as follows:

- `--download.url` with the location provided by Chef to download the Chef 19 RC1 Client. If the location is not supplied, this is the default Chef download API.
- `--license.key` with the license key for the download URL.
- `--fresh_install` (optional) to re-install a previous installation or when no previous Chef client install exists.
24 changes: 21 additions & 3 deletions content/kitchen/_index.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,28 @@
+++
title = "Test Kitchen"
linkTitle = "Test Kitchen"
title = "Installing Test Kitchen Enterprise"
linkTitle = "Installing Test Kitchen Enterprise"

[menu.kitchen]
title = "Overview"
title = "Installing Test Kitchen Enterprise"
identifier = "kitchen/overview"
parent = "kitchen"
weight = 10
+++

To install the new Chef Test Kitchen Enterprise, first ensure you have the latest Habitat installer. For details on how to do this, refer to the following section: [Hab-based builds]({{< relref "hab_builds" >}}).

Then use the Habitat installer to get the latest package from the Habitat Builder site:

```sh
sudo hab pkg install --binlink --force chef/chef-test-kitchen-enterprise --channel unstable
```

To test that Test Kitchen Enterprise is installed, check the version with:

```sh
kitchen --version
```

{{< note >}}
Windows is currently unsupported.
{{< /note >}}
Loading

0 comments on commit 07edd34

Please sign in to comment.