<commit_before># Puppet Agent Installation & Setup: Cisco Nexus

--
#### Table of Contents

1. [Overview](#overview)
1. [Pre-Install Tasks](#pre-install-tasks)
1. [Agent Environments](#env-bs)
  * [bash-shell](#env-bs)
  * [guestshell](#env-gs)
  * [open agent container (OAC)](#env-oac)
1. [Agent Installation, Configuration and Usage](#agent-config)
1. Optional Setups
  * [Guestshell on High Availability (HA) Platforms](#ha)
  * [Agent Persistence](#persistence)

[References](#references)

[How to get a virtual Nexus N9k](#VIRT_9K)

--
## <a name="overview">Overview</a>

This document describes Puppet agent installation and setup on Cisco Nexus switches. These instructions focus on manual setup.

![1](puppet_outline.png)

See [References](#references) for alternative installation methods.

**NOTE:** The Puppet agent is not supported for the `OAC` or `Native Bash` hosting environments on NX-OS beyond Puppet Enterprise 2018.1. The agentless workflow is recommended for managing Cisco NX-OS devices. Agent based workflows will continue to be supported in the NX-OS Guestshell hosting environment.

## <a name="pre-install-tasks">Pre-Install Tasks</a>

#### *Step 1. Platform / Software Minimum Requirements*

Puppet Versions |
:--|
Open Source Puppet 4.0 |
Puppet Enterprise 2015.2 |
<br>

Supported Platforms | OS    | OS Version           |
:-------------------|-------|----------------------|
Cisco Nexus N9k <br>*[How to get a virtual Nexus N9k](#VIRT_9K)* | NX-OS  | 7.0(3)I2(5) and later
Cisco Nexus N3k    | NX-OS  | 7.0(3)I2(5) and later
Cisco Nexus N5k    | NX-OS  | 7.3(0)N1(1) and later
Cisco Nexus N6k    | NX-OS  | 7.3(0)N1(1) and later
Cisco Nexus N7k    | NX-OS  | 7.3(0)D1(1) and later
Cisco Nexus N9k-F  | NX-OS  | 7.0(3)F1(1) and later
Cisco Nexus N3k-F  | NX-OS  | 7.0(3)F3(2) and later
<br>


Resource| Recommended| |
:--|:--:|:--|
Disk   | **400 MB** | Minimum free space before installing Puppet agent |

<br>

#### *Step 2. Choose an environment for running a Puppet agent*

**NOTE:** Starting in release `9.2(1)` and onward, installing a Puppet agent in the `bash-shell` hosting environment is no longer supported.  Instead, the Puppet agent software should be installed on the [`guestshell` hosting environment](#env-gs).

NX-OS Environment | Supported Platforms | |
:--|:--:|:--|
`bash-shell` | N3k, N9k | This is the native WRL Linux environment underlying NX-OS. It is disabled by default on NX-OS. |
`guestshell` | N3k, N9k | This is a secure Linux container environment running CentOS. It is enabled by default in most platforms that support it. |
`open agent`<br>`container (OAC)` | N5k, N6k, N7k | This is a 32-bit CentOS-based container created specifically for running Puppet Agent software. <br><br> **Note:** As of the Cisco NX-OS `8.4.1` release, the Open Agent Container support that was added in the Cisco NX-OS 7.3(0)D1(1) release with the purpose of providing an execution space for configuration management agents is being phased out.  It is recommended to use Puppet agent-less workflows, with the N7000 series of switches.|

* *OAC containers are created for specific platforms and must be downloaded from Cisco (see [OAC Download](#env-oac)). The OAC must be installed before a Puppet agent can be installed.*

* *Running a Puppet agent from multiple environments simultaneously is not supported*


#### *Step 3. Network Connectivity*
<commit_msg>Update README-agent-install.md<commit_after># Puppet Agent Installation & Setup: Cisco Nexus

--
#### Table of Contents

1. [Overview](#overview)
1. [Pre-Install Tasks](#pre-install-tasks)
1. [Agent Environments](#env-bs)
  * [bash-shell](#env-bs)
  * [guestshell](#env-gs)
  * [open agent container (OAC)](#env-oac)
1. [Agent Installation, Configuration and Usage](#agent-config)
1. Optional Setups
  * [Guestshell on High Availability (HA) Platforms](#ha)
  * [Agent Persistence](#persistence)

[References](#references)

[How to get a virtual Nexus N9k](#VIRT_9K)

--
## <a name="overview">Overview</a>

This document describes Puppet agent installation and setup on Cisco Nexus switches. These instructions focus on manual setup.

![1](puppet_outline.png)

See [References](#references) for alternative installation methods.

**NOTE:** The Puppet agent is not supported for the `OAC` or `Native Bash` hosting environments on NX-OS beyond Puppet Enterprise 2018.1. The agentless workflow is recommended for managing Cisco NX-OS devices. Agent based workflows will continue to be supported in the NX-OS Guestshell hosting environment.

## <a name="pre-install-tasks">Pre-Install Tasks</a>

#### *Step 1. Platform / Software Minimum Requirements*

Puppet Versions |
:--|
Open Source Puppet 4.0 |
Puppet Enterprise 2015.2 |
<br>

Supported Platforms | OS    | OS Version           |
:-------------------|-------|----------------------|
Cisco Nexus N9k <br>*[How to get a virtual Nexus N9k](#VIRT_9K)* | NX-OS  | 7.0(3)I2(5) and later
Cisco Nexus N3k    | NX-OS  | 7.0(3)I2(5) and later
Cisco Nexus N5k    | NX-OS  | 7.3(0)N1(1) and later
Cisco Nexus N6k    | NX-OS  | 7.3(0)N1(1) and later
Cisco Nexus N7k    | NX-OS  | 7.3(0)D1(1) and later
Cisco Nexus N9k-F  | NX-OS  | 7.0(3)F1(1) and later
Cisco Nexus N3k-F  | NX-OS  | 7.0(3)F3(2) and later
<br>


Resource| Recommended| |
:--|:--:|:--|
Disk   | **400 MB** | Minimum free space before installing Puppet agent |

<br>

#### *Step 2. Choose an environment for running a Puppet agent*

**NOTE:** Starting in release `9.2(1)` and onward, installing a Puppet agent in the `bash-shell` hosting environment is no longer supported.  Instead, the Puppet agent software should be installed on the [`guestshell` hosting environment](#env-gs).

NX-OS Environment | Supported Platforms | |
:--|:--:|:--|
`bash-shell` | N3k, N9k | This is the native WRL Linux environment underlying NX-OS. It is disabled by default on NX-OS. |
`guestshell` | N3k, N9k | This is a secure Linux container environment running CentOS. It is enabled by default in most platforms that support it. |
`open agent`<br>`container (OAC)` | N5k, N6k, N7k | This is a 32-bit CentOS-based container created specifically for running Puppet Agent software. <br><br> **Note:** As of the Cisco NX-OS `8.4.1` release, the Open Agent Container support that was added in the Cisco NX-OS `7.3(0)D1(1) / 7.3(0)N1(1)` release with the purpose of providing an execution space for configuration management agents is being phased out.  It is recommended to use Puppet agent-less workflows, with the N5K, N6k and N7k series of switches.|

* *OAC containers are created for specific platforms and must be downloaded from Cisco (see [OAC Download](#env-oac)). The OAC must be installed before a Puppet agent can be installed.*

* *Running a Puppet agent from multiple environments simultaneously is not supported*


#### *Step 3. Network Connectivity*

{'fraction_non_alphanumeric': 0.13197080291970803, 'fraction_numerical': 0.02802919708029197, 'mean_word_length': 3.9146341463414633, 'pattern_counts': {'":': 0, '<': 25, '<?xml version=': 0, '>': 25, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1977951', 'n_tokens_mistral': 2415, 'n_tokens_neox': 2194, 'n_words': 843}