Add instructions to run Ansible playbooks on remote machines #5
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
hosts.ini
|
43
README.md
43
README.md
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
- Set Locale Encoding to `UTF-8`
|
- Set Locale Encoding to `UTF-8`
|
||||||
|
|
||||||
Ansible requires the locale encoding to be `UTF-8`. You can either use the `LANG` prefix when running Ansible commands or set the system-wide locale.
|
Ansible requires the locale encoding to be `UTF-8`. You can either use the `LANG` prefix when running Ansible commands or set the system-wide locale
|
||||||
|
|
||||||
- Option 1: Use `LANG` Prefix in Commands
|
- Option 1: Use `LANG` Prefix in Commands
|
||||||
|
|
||||||
@ -32,12 +32,51 @@
|
|||||||
LANG="en_US.UTF-8"
|
LANG="en_US.UTF-8"
|
||||||
```
|
```
|
||||||
|
|
||||||
- Reboot your system or log out and log back in to apply the changes.
|
- Reboot your system or log out and log back in to apply the changes
|
||||||
|
|
||||||
- Reference: <https://udhayakumarc.medium.com/error-ansible-requires-the-locale-encoding-to-be-utf-8-detected-iso8859-1-6da808387f7d>
|
- Reference: <https://udhayakumarc.medium.com/error-ansible-requires-the-locale-encoding-to-be-utf-8-detected-iso8859-1-6da808387f7d>
|
||||||
|
|
||||||
|
## Setup Remote Hosts
|
||||||
|
|
||||||
|
To run the playbook on a remote machine, setup the required ansible inventory:
|
||||||
|
|
||||||
|
- Create a new `hosts.ini` file:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cp example-hosts.ini hosts.ini
|
||||||
|
```
|
||||||
|
|
||||||
|
- Edit the [`hosts.ini`](./hosts.ini) file to run the playbook on a remote machine:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
[<deployment_host>]
|
||||||
|
<host_name> ansible_host=<target_ip> ansible_user=<ssh_user> ansible_ssh_common_args='-o ForwardAgent=yes'
|
||||||
|
```
|
||||||
|
|
||||||
|
- Replace `<deployment_host>` with the appropriate host group for the deployment
|
||||||
|
- Replace `<host_name>` with the alias of your choice
|
||||||
|
- Replace `<target_ip>` with the IP address or hostname of the target machine
|
||||||
|
- Replace `<ssh_user>` with the SSH username (e.g., dev, ubuntu)
|
||||||
|
|
||||||
|
- Verify that you are able to connect to the host using the following command
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ansible all -m ping -i hosts.ini -k
|
||||||
|
|
||||||
|
# Expected output:
|
||||||
|
|
||||||
|
# <host_name> | SUCCESS => {
|
||||||
|
# "ansible_facts": {
|
||||||
|
# "discovered_interpreter_python": "/usr/bin/python3.10"
|
||||||
|
# },
|
||||||
|
# "changed": false,
|
||||||
|
# "ping": "pong"
|
||||||
|
# }
|
||||||
|
```
|
||||||
|
|
||||||
## Playbooks
|
## Playbooks
|
||||||
|
|
||||||
- [l2-setup](./l2-setup/README.md)
|
- [l2-setup](./l2-setup/README.md)
|
||||||
- [nitro-node-setup](./nitro-nodes-setup/README.md)
|
- [nitro-node-setup](./nitro-nodes-setup/README.md)
|
||||||
- [nitro-bridge-setup](./nitro-bridge-setup/README.md)
|
- [nitro-bridge-setup](./nitro-bridge-setup/README.md)
|
||||||
|
- [nitro-contracts-setup](./nitro-contracts-setup/)
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
[nitro_host]
|
[deployment_host]
|
||||||
<host_name> ansible_host=<TARGET_IP> ansible_user=<SSH_USER> ansible_ssh_common_args='-o ForwardAgent=yes'
|
<host_name> ansible_host=<target_ip> ansible_user=<ssh_user> ansible_ssh_common_args='-o ForwardAgent=yes'
|
@ -4,42 +4,13 @@
|
|||||||
|
|
||||||
To get started, follow the [installation](../README.md#installation) guide to setup ansible on your machine
|
To get started, follow the [installation](../README.md#installation) guide to setup ansible on your machine
|
||||||
|
|
||||||
## Setup Remote Hosts
|
## Setup for Remote Host
|
||||||
|
|
||||||
To run the playbook on a remote machine, follow these steps:
|
To run the playbook on a remote host:
|
||||||
|
|
||||||
- In the [`l2-setup`](./) directory, create a new file named hosts.ini:
|
- Follow steps from [setup remote hosts](../README.md#setup-remote-hosts)
|
||||||
|
|
||||||
```bash
|
- Update / append the [`hosts.ini`](../hosts.ini) file for your remote host with `<deployment_host>` set as `l2_host`
|
||||||
cp ../example-hosts.ini hosts.ini
|
|
||||||
```
|
|
||||||
|
|
||||||
- Edit the [`hosts.ini`](./hosts.ini) file to run the playbook on a remote machine
|
|
||||||
|
|
||||||
```bash
|
|
||||||
[nitro_host]
|
|
||||||
<host_name> ansible_host=<TARGET_IP> ansible_user=<SSH_USER> ansible_ssh_common_args='-o ForwardAgent=yes'
|
|
||||||
```
|
|
||||||
|
|
||||||
- Replace `<host_name>` with the alias of your choice.
|
|
||||||
- Replace `<TARGET_IP>` with the IP address or hostname of the target machine.
|
|
||||||
- Replace `<SSH_USER>` with the SSH username (e.g., dev, ubuntu).
|
|
||||||
|
|
||||||
- Verify that you are able to connect to the host using the following command
|
|
||||||
|
|
||||||
```bash
|
|
||||||
ansible all -m ping -i hosts.ini -k
|
|
||||||
|
|
||||||
# Expected output:
|
|
||||||
|
|
||||||
# <host_name> | SUCCESS => {
|
|
||||||
# "ansible_facts": {
|
|
||||||
# "discovered_interpreter_python": "/usr/bin/python3.10"
|
|
||||||
# },
|
|
||||||
# "changed": false,
|
|
||||||
# "ping": "pong"
|
|
||||||
# }
|
|
||||||
```
|
|
||||||
|
|
||||||
## Setup and Run Optimism
|
## Setup and Run Optimism
|
||||||
|
|
||||||
@ -85,10 +56,10 @@ The following commands have to be executed in [`l2-setup`](./) directory
|
|||||||
LANG=en_US.utf8 ansible-playbook run-optimism.yml --extra-vars='{ "target_host": "localhost"}' -kK --user $USER
|
LANG=en_US.utf8 ansible-playbook run-optimism.yml --extra-vars='{ "target_host": "localhost"}' -kK --user $USER
|
||||||
```
|
```
|
||||||
|
|
||||||
- For remote deployment, provide an inventory and specify the `"target_host": nitro_host` in the `--extra-vars` parameter:
|
- For remote deployment, provide an inventory and specify the `"target_host": l2_host` in the `--extra-vars` parameter:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
LANG=en_US.utf8 ansible-playbook -i ./hosts.ini run-optimism.yml --extra-vars='{ "target_host": "nitro_host"}' -kK
|
LANG=en_US.utf8 ansible-playbook -i ../hosts.ini run-optimism.yml --extra-vars='{ "target_host": "l2_host"}' -kK
|
||||||
```
|
```
|
||||||
|
|
||||||
NOTE: By default, deployments are created in a `out` directory. To change this location, update the `l2_directory` variable in the [setup-vars.yml](./setup-vars.yml) file.
|
NOTE: By default, deployments are created in a `out` directory. To change this location, update the `l2_directory` variable in the [setup-vars.yml](./setup-vars.yml) file.
|
||||||
@ -96,7 +67,7 @@ The following commands have to be executed in [`l2-setup`](./) directory
|
|||||||
- For skipping container build, set `"skip_container_build" : true` in the `--extra-vars` parameter:
|
- For skipping container build, set `"skip_container_build" : true` in the `--extra-vars` parameter:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
LANG=en_US.utf8 ansible-playbook -i ./hosts.ini run-optimism.yml --extra-vars='{"target_host" : "nitro_host", "skip_container_build": true}' -kK
|
LANG=en_US.utf8 ansible-playbook -i ../hosts.ini run-optimism.yml --extra-vars='{"target_host" : "l2_host", "skip_container_build": true}' -kK
|
||||||
```
|
```
|
||||||
|
|
||||||
- To run using existing contracts deployment
|
- To run using existing contracts deployment
|
||||||
@ -106,7 +77,7 @@ The following commands have to be executed in [`l2-setup`](./) directory
|
|||||||
- Run the ansible playbook with `"existing_contracts_deployment": true` in the `--extra-vars` parameter:
|
- Run the ansible playbook with `"existing_contracts_deployment": true` in the `--extra-vars` parameter:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
LANG=en_US.utf8 ansible-playbook -i ./hosts.ini run-optimism.yml --extra-vars='{"target_host" : "nitro_host", "existing_contracts_deployment": true}' -kK
|
LANG=en_US.utf8 ansible-playbook -i ../hosts.ini run-optimism.yml --extra-vars='{"target_host" : "l2_host", "existing_contracts_deployment": true}' -kK
|
||||||
```
|
```
|
||||||
|
|
||||||
## Check Deployment Status
|
## Check Deployment Status
|
||||||
|
@ -4,42 +4,13 @@
|
|||||||
|
|
||||||
To get started, follow the [installation](../README.md#installation) guide to setup ansible on your machine
|
To get started, follow the [installation](../README.md#installation) guide to setup ansible on your machine
|
||||||
|
|
||||||
## Setup Remote Hosts
|
## Setup for Remote Host
|
||||||
|
|
||||||
To run the playbook on a remote machine, follow these steps:
|
To run the playbook on a remote host:
|
||||||
|
|
||||||
- In the [`nitro-bridge-setup`](./) directory, create a new file named hosts.ini:
|
- Follow steps from [setup remote hosts](../README.md#setup-remote-hosts)
|
||||||
|
|
||||||
```bash
|
- Update / append the [`hosts.ini`](../hosts.ini) file for your remote host with `<deployment_host>` set as `nitro_host`
|
||||||
cp ../example-hosts.ini hosts.ini
|
|
||||||
```
|
|
||||||
|
|
||||||
- Edit the [`hosts.ini`](./hosts.ini) file to run the playbook on a remote machine
|
|
||||||
|
|
||||||
```bash
|
|
||||||
[nitro_host]
|
|
||||||
<host_name> ansible_host=<TARGET_IP> ansible_user=<SSH_USER> ansible_ssh_common_args='-o ForwardAgent=yes'
|
|
||||||
```
|
|
||||||
|
|
||||||
- Replace `<host_name>` with the alias of your choice.
|
|
||||||
- Replace `<TARGET_IP>` with the IP address or hostname of the target machine.
|
|
||||||
- Replace `<SSH_USER>` with the SSH username (e.g., dev, ubuntu).
|
|
||||||
|
|
||||||
- Verify that you are able to connect to the host using the following command
|
|
||||||
|
|
||||||
```bash
|
|
||||||
ansible all -m ping -i hosts.ini -k
|
|
||||||
|
|
||||||
# Expected output:
|
|
||||||
|
|
||||||
# <host_name> | SUCCESS => {
|
|
||||||
# "ansible_facts": {
|
|
||||||
# "discovered_interpreter_python": "/usr/bin/python3.10"
|
|
||||||
# },
|
|
||||||
# "changed": false,
|
|
||||||
# "ping": "pong"
|
|
||||||
# }
|
|
||||||
```
|
|
||||||
|
|
||||||
## Run Nitro Bridge
|
## Run Nitro Bridge
|
||||||
|
|
||||||
|
@ -4,42 +4,13 @@
|
|||||||
|
|
||||||
To get started, follow the [installation](../README.md#installation) guide to setup ansible on your machine
|
To get started, follow the [installation](../README.md#installation) guide to setup ansible on your machine
|
||||||
|
|
||||||
## Setup Remote Hosts
|
## Setup for Remote Host
|
||||||
|
|
||||||
To run the playbook on a remote machine, follow these steps:
|
To run the playbook on a remote host:
|
||||||
|
|
||||||
- In the [`nitro-contracts-setup`](./) directory, create a new file named hosts.ini:
|
- Follow steps from [setup remote hosts](../README.md#setup-remote-hosts)
|
||||||
|
|
||||||
```bash
|
- Update / append the [`hosts.ini`](../hosts.ini) file for your remote host with `<deployment_host>` set as `nitro_host`
|
||||||
cp ../example-hosts.ini hosts.ini
|
|
||||||
```
|
|
||||||
|
|
||||||
- Edit the [`hosts.ini`](./hosts.ini) file to run the playbook on a remote machine
|
|
||||||
|
|
||||||
```bash
|
|
||||||
[nitro_host]
|
|
||||||
<host_name> ansible_host=<TARGET_IP> ansible_user=<SSH_USER> ansible_ssh_common_args='-o ForwardAgent=yes'
|
|
||||||
```
|
|
||||||
|
|
||||||
- Replace `<host_name>` with the alias of your choice.
|
|
||||||
- Replace `<TARGET_IP>` with the IP address or hostname of the target machine.
|
|
||||||
- Replace `<SSH_USER>` with the SSH username (e.g., dev, ubuntu).
|
|
||||||
|
|
||||||
- Verify that you are able to connect to the host using the following command
|
|
||||||
|
|
||||||
```bash
|
|
||||||
ansible all -m ping -i hosts.ini -k
|
|
||||||
|
|
||||||
# Expected output:
|
|
||||||
|
|
||||||
# <host_name> | SUCCESS => {
|
|
||||||
# "ansible_facts": {
|
|
||||||
# "discovered_interpreter_python": "/usr/bin/python3.10"
|
|
||||||
# },
|
|
||||||
# "changed": false,
|
|
||||||
# "ping": "pong"
|
|
||||||
# }
|
|
||||||
```
|
|
||||||
|
|
||||||
## Deploy Nitro Contracts
|
## Deploy Nitro Contracts
|
||||||
|
|
||||||
|
@ -4,42 +4,13 @@
|
|||||||
|
|
||||||
To get started, follow the [installation](../README.md#installation) guide to setup ansible on your machine
|
To get started, follow the [installation](../README.md#installation) guide to setup ansible on your machine
|
||||||
|
|
||||||
## Setup Remote Hosts
|
## Setup for Remote Host
|
||||||
|
|
||||||
To run the playbook on a remote machine, follow these steps:
|
To run the playbook on a remote host:
|
||||||
|
|
||||||
- In the [`nitro-nodes-setup`](./) directory, create a new file named hosts.ini:
|
- Follow steps from [setup remote hosts](../README.md#setup-remote-hosts)
|
||||||
|
|
||||||
```bash
|
- Update / append the [`hosts.ini`](../hosts.ini) file for your remote host with `<deployment_host>` set as `nitro_host`
|
||||||
cp ../example-hosts.ini hosts.ini
|
|
||||||
```
|
|
||||||
|
|
||||||
- Edit the [`hosts.ini`](./hosts.ini) file to run the playbook on a remote machine
|
|
||||||
|
|
||||||
```bash
|
|
||||||
[nitro_host]
|
|
||||||
<host_name> ansible_host=<TARGET_IP> ansible_user=<SSH_USER> ansible_ssh_common_args='-o ForwardAgent=yes'
|
|
||||||
```
|
|
||||||
|
|
||||||
- Replace `<host_name>` with the alias of your choice.
|
|
||||||
- Replace `<TARGET_IP>` with the IP address or hostname of the target machine.
|
|
||||||
- Replace `<SSH_USER>` with the SSH username (e.g., dev, ubuntu).
|
|
||||||
|
|
||||||
- Verify that you are able to connect to the host using the following command
|
|
||||||
|
|
||||||
```bash
|
|
||||||
ansible all -m ping -i hosts.ini -k
|
|
||||||
|
|
||||||
# Expected output:
|
|
||||||
|
|
||||||
# <host_name> | SUCCESS => {
|
|
||||||
# "ansible_facts": {
|
|
||||||
# "discovered_interpreter_python": "/usr/bin/python3.10"
|
|
||||||
# },
|
|
||||||
# "changed": false,
|
|
||||||
# "ping": "pong"
|
|
||||||
# }
|
|
||||||
```
|
|
||||||
|
|
||||||
## Run a nitro node
|
## Run a nitro node
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user