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
Copy file name to clipboardExpand all lines: docs/README.md
+43-30Lines changed: 43 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1387,46 +1387,59 @@ for more information.
1387
1387
1388
1388
## 8. Deployment
1389
1389
1390
-
To create the resources defined by your main, enter the following command
1391
-
```
1390
+
To create the resources defined in your Terraform configuration, run:
1391
+
1392
+
```bash
1392
1393
terraform apply
1393
1394
```
1394
1395
1395
-
The command will produce the same output as the `plan` command, but after
1396
-
the output it will ask for a confirmation to perform the proposed actions.
1397
-
Enter `yes`.
1396
+
This command will first display the execution plan (equivalent to `terraform plan`) and then prompt you to confirm the proposed actions. Type `yes` to proceed.
1397
+
1398
+
Terraform will then create the infrastructure resources defined in the configuration. This step typically takes a few minutes. Once completed, Terraform will output:
1399
+
1400
+
- Guest account usernames and passwords
1401
+
- The sudo-enabled username
1402
+
- The floating IP address of the login node
1403
+
1404
+
### Important: Cluster Readiness
1405
+
1406
+
Although Terraform reports completion once the connection information is displayed,
1407
+
**the cluster is not immediately ready for use**.
1408
+
1409
+
Instance creation is only the first phase of the cluster build. A second, automated configuration phase follows, during which Magic Castle installs and configures core services such as:
1410
+
user accounts, FreeIPA, Slurm, JupyterHub, etc.
1398
1411
1399
-
Terraform will then proceed to create the resources defined by the
1400
-
configuration file. It should take a few minutes. Once the creation process
1401
-
is completed, Terraform will output the guest account usernames and password,
1402
-
the sudoer username and the floating ip of the login
1403
-
node.
1412
+
This configuration phase typically takes **approximately 15 minutes** after the instances are created.
1404
1413
1405
-
**Warning**: although the instance creation process is finished once Terraform
1406
-
outputs the connection information, you will not be able to
1407
-
connect and use the cluster immediately. The instance creation is only the
1408
-
first phase of the cluster-building process. The configuration: the
1409
-
creation of the user accounts, installation of FreeIPA, Slurm, configuration
1410
-
of JupyterHub, etc.; takes around 15 minutes after the instances are created.
1414
+
### Instance Configuration Process
1411
1415
1412
-
Once booted, instances follow a twostage configuration process:
1416
+
Each instance goes through a two-stage configuration process:
1413
1417
1414
-
1. Using cloud-init, upgrade operating system packages and install puppet.
1415
-
2. Using puppet, install and configure software specific to the instance roles as defined by tags (i.e.: `node`).
1418
+
1. **cloud-init**
1419
+
- Upgrades operating system packages
1420
+
- Installs Puppet
1421
+
2. **Puppet**
1422
+
- Installs and configures software based on the instance role, as defined by instance tags (e.g. `node`)
If an error occurs during the first (cloud-init) stage, a warning is displayed in the instance
1432
+
message of the day (e.g.: `/etc/motd`). The failed commands are recorded in:
1433
+
1434
+
```
1435
+
/run/cloud-init-failed
1436
+
```
1416
1437
1417
-
The log for each are available under :
1438
+
Because successful completion of the first stage is required for the second stage to proceed, the configuration process halts if cloud-init fails.
1418
1439
1419
-
1. cloud-init: `/var/log/cloud-init-output.log`
1420
-
2. puppet: `journalctl -u puppet`
1440
+
You may resume the configuration by manually re-running the failed commands listed in `/run/cloud-init-failed` once the underlying issue has been resolved.
1421
1441
1422
-
When an issue happen during an instance first stage, a warning is logged in its `/etc/motd`.
1423
-
The configuration commands that had issue are logged `/run/cloud-init-failed`. Because the
1424
-
first stage completion is essential to the second stage, the configuration process is halted
1425
-
when issues arise during the first stage. You may relaunch the configuration
1426
-
process by running manually the commands that have failed and that are listed in
1427
-
`/run/cloud-init-failed`. Issues during the first stage are rare events and most often the
1428
-
result of issue with external dependencies i.e.: github is unavailable,
1429
-
rpm repo is not responsive.
1442
+
Failures during the first stage are rare and are most often caused by external dependencies, such as temporary unavailability of GitHub or package repositories.
0 commit comments