Skip to content

Commit 5c3d43e

Browse files
authored
[doc][yba] Changes to 2.20.8 node agent provisioning (yugabyte#25199)
* Changes to node agent provisioning * edits * review comments * edits
1 parent 29311bf commit 5c3d43e

File tree

3 files changed

+131
-86
lines changed

3 files changed

+131
-86
lines changed

docs/content/preview/yugabyte-platform/prepare/server-nodes-software/software-on-prem.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: YugabyteDB Anywhere node software requirements
33
headerTitle: Software requirements for on-premises nodes
44
linkTitle: On-premises provider
5-
description: Software requirements for on-premises provider nodes.
5+
description: Prepare a VM for deploying universes on-premises.
66
headContent: Prepare a VM for deploying universes on-premises
77
menu:
88
preview_yugabyte-platform:
@@ -12,9 +12,9 @@ menu:
1212
type: docs
1313
---
1414

15-
When deploying database clusters using an on-premises provider, YugabyteDB Anywhere (YBA) relies on you to manually create the VMs and provide these pre-created VMs to YBA.
15+
When deploying database clusters using an on-premises provider, YugabyteDB Anywhere relies on you to manually create the VMs and provide these pre-created VMs to YugabyteDB Anywhere.
1616

17-
With the on-premises provider, you must provide to YBA one, three, five, or more VM(s) with the following installed:
17+
With the on-premises provider, you must provide one, three, five, or more VM(s) with the following installed:
1818

1919
- [Supported Linux OS](../#linux-os)
2020
- [Additional software](../#additional-software)

docs/content/stable/yugabyte-platform/prepare/server-nodes-software/software-on-prem.md

Lines changed: 63 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: YugabyteDB Anywhere node software requirements
33
headerTitle: Automatically provision on-premises nodes
44
linkTitle: On-premises provider
5-
description: Software requirements for on-premises provider nodes.
5+
description: Prepare a VM for deploying universes on-premises.
66
headContent: Prepare a VM for deploying universes on-premises
77
menu:
88
stable_yugabyte-platform:
@@ -28,52 +28,66 @@ After you have created the VMs with the operating system and additional software
2828
1. Modify the configuration file.
2929
1. Run the provisioning script (as root or via sudo).
3030

31-
These steps prepare the node for use by YugabyteDB Anywhere. If YugabyteDB Anywhere is already installed and running, the last step additionally creates (or updates) an [on-premises provider](../../../configure-yugabyte-platform/on-premises/) with the node already added.
31+
These steps prepare the node for use by YugabyteDB Anywhere. If you have already installed YugabyteDB Anywhere and it is running, the last step additionally creates (or updates) an [on-premises provider](../../../configure-yugabyte-platform/on-premises/) with the node already added.
32+
33+
Root or sudo privileges are only required to provision the nodes. After the node is provisioned (with [YugabyteDB Anywhere node agent](/preview/faq/yugabyte-platform/#what-is-a-node-agent) installed), sudo is no longer required.
3234

3335
### Download the package
3436

3537
To begin, download the YugabyteDB Anywhere node agent package to the node you want to provision.
3638

37-
- If YugabyteDB Anywhere has been installed and is running, you can download the node agent package from YugabyteDB Anywhere using the following API command:
39+
#### Use the API
3840

39-
```sh
40-
curl https://<yba_address>/api/v1/node_agents/download\?downloadType\=package\&os\=LINUX\&arch\=AMD64 --fail --header 'X-AUTH-YW-API-TOKEN: <api_token>' > node-agent.tar.gz
41-
```
41+
If you have already installed YugabyteDB Anywhere and it is running, you can download the node agent package from YugabyteDB Anywhere using the [Download node agent API](https://api-docs.yugabyte.com/docs/yugabyte-platform/22174ba86f880-download-node-agent-installer-or-package).
4242

43-
`<yba_address>` is the address of your YugabyteDB Anywhere installation. `<api_token>` is an API token you created. For information on creating an API token, refer to [API authentication](../../../anywhere-automation/#authentication).
43+
```sh
44+
curl -k https://<yba_address>/api/v1/node_agents/download\?downloadType\=package\&os\=LINUX\&arch\=AMD64 --fail --header 'X-AUTH-YW-API-TOKEN: <api_token>' > node-agent.tar.gz
45+
```
4446

45-
Extract the package and go to the `scripts` directory.
47+
- `<yba_address>` is the address of your YugabyteDB Anywhere installation.
48+
- `<api_token>` is an API token you created. For information on creating an API token, refer to [API authentication](../../../anywhere-automation/#authentication).
49+
- You can change the architecture from AMD64 to ARM64 as appropriate.
4650

47-
```sh
48-
tar -xvzf node-agent.tar.gz && cd {{<yb-version version="stable" format="build">}}/scripts/
49-
```
51+
Use this method if you don't have internet connectivity. This downloads the same version of node agent as the version of YugabyteDB Anywhere you are running.
5052

51-
- Alternatively, the node agent package is included in the YBA Installer package. Download and extract the YBA Installer by entering the following commands:
53+
Extract the package and go to the `scripts` directory.
5254

53-
```sh
54-
wget https://downloads.yugabyte.com/releases/{{<yb-version version="stable" format="long">}}/yba_installer_full-{{<yb-version version="stable" format="build">}}-linux-x86_64.tar.gz
55-
tar -xf yba_installer_full-{{<yb-version version="stable" format="build">}}-linux-x86_64.tar.gz
56-
cd yba_installer_full-{{<yb-version version="stable" format="build">}}/
57-
```
55+
```sh
56+
tar -xvzf node-agent.tar.gz && cd {{<yb-version version="v2.20" format="build">}}/scripts/
57+
```
5858

59-
Extract the yugabundle package:
59+
#### Direct download
6060

61-
```sh
62-
tar -xf yugabundle-{{<yb-version version="stable" format="build">}}-centos-x86_64.tar.gz
63-
cd yugabyte-{{<yb-version version="stable" format="build">}}/
64-
```
61+
Alternatively, the node agent package is included in the YBA Installer package. Download and extract the YBA Installer by entering the following commands:
6562

66-
Extract the node agent package and go to the `scripts` directory:
63+
```sh
64+
wget https://downloads.yugabyte.com/releases/{{<yb-version version="stable" format="long">}}/yba_installer_full-{{<yb-version version="stable" format="build">}}-linux-x86_64.tar.gz
65+
tar -xf yba_installer_full-{{<yb-version version="stable" format="build">}}-linux-x86_64.tar.gz
66+
cd yba_installer_full-{{<yb-version version="stable" format="build">}}/
67+
```
6768

68-
```sh
69-
tar -xf node_agent-{{<yb-version version="stable" format="build">}}-linux-amd64.tar.gz && cd {{<yb-version version="stable" format="build">}}/scripts/
70-
```
69+
Extract the yugabundle package:
7170

72-
or
71+
```sh
72+
tar -xf yugabundle-{{<yb-version version="stable" format="build">}}-centos-x86_64.tar.gz
73+
cd yugabyte-{{<yb-version version="stable" format="build">}}/
74+
```
7375

74-
```sh
75-
tar -xf node_agent-{{<yb-version version="stable" format="build">}}-linux-arm64.tar.gz && cd {{<yb-version version="stable" format="build">}}/scripts/
76-
```
76+
Extract the node agent package and go to the `scripts` directory:
77+
78+
```sh
79+
tar -xf node_agent-{{<yb-version version="stable" format="build">}}-linux-amd64.tar.gz && cd {{<yb-version version="stable" format="build">}}/scripts/
80+
```
81+
82+
or
83+
84+
```sh
85+
tar -xf node_agent-{{<yb-version version="stable" format="build">}}-linux-arm64.tar.gz && cd {{<yb-version version="stable" format="build">}}/scripts/
86+
```
87+
88+
### Create data directories or mount points
89+
90+
Configure data directories or mount points for the node (typically `/data`). If you have multiple data drives, these might be for example `/mnt/d0`, `/mnt/d1`, and so on. The data drives must be accessible to the `yugabyte` user that will be created by the script.
7791

7892
### Modify the configuration file
7993

@@ -85,10 +99,10 @@ Set the following options in the provisioning file to the correct values:
8599
| :--- | :--- |
86100
| `yb_home_dir` | The directory on the node where YugabyteDB will be installed. |
87101
| `chrony_servers` | The addresses of your Network Time Protocol servers. |
88-
| `yb_user_id` | The UID for the `yugabyte` user. |
102+
| `yb_user_id` | Provide a UID to be used for the `yugabyte` user. The script creates the `yugabyte` user, and providing the same UID for each node ensures consistency across nodes. |
89103
| `is_airgap` | If you are performing an airgapped installation, set to true. |
90104
| `use_system_level_systemd` | Defaults to false (which uses user-level systemd for service management). |
91-
| `node_ip` | The IP address of the node you are provisioning. Must be accessible to other nodes. |
105+
| `node_ip` | The fully-qualified domain name or IP address of the node you are provisioning. Must be accessible to other nodes. |
92106
| `tmp_directory` | The directory on the node to use for storing temporary files during provisioning. |
93107

94108
Optionally, if YugabyteDB Anywhere is already installed and running, you can set the following options to have node agent conveniently create (or update) the [on-premises provider configuration](../../../configure-yugabyte-platform/on-premises-provider/) where you want to add the node.
@@ -99,20 +113,20 @@ Optionally, if YugabyteDB Anywhere is already installed and running, you can set
99113
| `customer_uuid` | Your customer ID. To view your customer ID, in YugabyteDB Anywhere, click the **Profile** icon in the top right corner of the window, and choose **User Profile**. |
100114
| `api_key` | Your API token. To obtain this, in YugabyteDB Anywhere, click the Profile icon in the top right corner of the window, and choose **User Profile**. Then click **Generate Key**. |
101115
| `node_name` | A name for the node. |
102-
| `node_external_fqdn` | The external FQDN or IP address of the node. Must be accessible from YugabyteDB Anywhere. |
116+
| `node_external_fqdn` | The fully qualified domain name or IP address of the node, must be accessible from the YugabyteDB Anywhere server. |
103117

104-
Enter the following provider details. If the provider does not exist, node agent creates it; otherwise, it adds the node instance to the existing provider.
118+
Enter the following on-premises provider configuration details. If the provider does not exist, node agent creates it; otherwise, it adds the node instance to the existing provider.
105119

106120
| Option | Value |
107121
| :--- | :--- |
108-
| `provider name` | Name for the provider (if new) or of the existing provider where you want to add the node. |
122+
| `provider name` | Name for the provider configuration (if new) or of the existing provider where you want to add the node. |
109123
| `region name` | Name of the region where the node is located. For example, `us-west-1`. |
110124
| `zone name` | Name of the zone where the node is located. For example, `us-west-1a`. |
111125
| `instance_type name` | Name of the instance type to use. If you are creating a new instance type, provide a name to be used internally to identify the type of VM. For example, for cloud provider VMs, you might name the instance type 'c5.large' for AWS, or 'n1-standard-4' for GCP. |
112126
| `cores` | The number of cores. Optional if the node is using an existing instance type. |
113127
| `memory_size` | The amount of memory (in GB) allocated to the instance. Optional if the node is using an existing instance type. |
114128
| `volume_size` | The size of the storage volume (in GB). Optional if the node is using an existing instance type. |
115-
| `mount_points` | List the mount points for data storage. This is where the data directories are mounted. Optional if the node is using an existing instance type. |
129+
| `mount_points` | List the mount points for data storage. This is where the data directories are mounted. You need to add the directories before running the script. Optional if the node is using an existing instance type. |
116130

117131
The following options are used for logging the provisioning itself.
118132

@@ -124,11 +138,19 @@ The following options are used for logging the provisioning itself.
124138

125139
### Run the provisioning script
126140

127-
Run the script either as a root user, or via sudo as follows:
141+
1. Run the preflight checks either as a root user, or via sudo as follows:
128142

129-
```sh
130-
sudo ./node-agent-provision.sh
131-
```
143+
```sh
144+
sudo ./node-agent-provision.sh preflight_checks
145+
```
146+
147+
1. Address any issues highlighted by the preflight checks.
148+
149+
1. When the preflight checks pass, run the script either as a root user, or via sudo as follows:
150+
151+
```sh
152+
sudo ./node-agent-provision.sh
153+
```
132154

133155
The script provisions the node and installs node agent.
134156

@@ -138,7 +160,7 @@ After the node is provisioned, YugabyteDB Anywhere does not need sudo access to
138160

139161
## Next steps
140162

141-
If you did not provide configuration details for the provider, you will need to do the following:
163+
If you did not provide details for the provider configuration, you will need to do the following:
142164

143165
1. If the on-premises provider has not been created, create one.
144166

0 commit comments

Comments
 (0)