Reproduce Evaluation of Real-world Deployment On evaluation AWS account, enable evaluated regions and add a key pair called "Ephemeral" * ap-east-1 (Hong Kong) * ap-southeast-1 (Singapore) * us-west-1 (North California) * eu-central-1 (Frankfurt) * sa-east-1 (Sao Paulo) * af-south-1 (Cape Town) Prepare control node * Run Ubuntu 22.04 (because artifact will be compiled on control node and send to cluster nodes) * As user "ubuntu" * Install Rust toolchain, C++ toolchain, CMake, Protocol Buffers toolchain, Terraform, Ansible, Jupyter Notebook, Seaborn * Set up AWS credential properly, so it has EC2 and VPC permissions * Add this section to SSH config ``` Host *.compute.amazonaws.com StrictHostKeyChecking no UserKnownHostsFile=/dev/null IdentityFile [path to "Ephemeral" key pair's PEM file] ``` Start evaluation ``` $ git submodule init $ terraform -chdir=crates/esys_entropy/terraform init $ terraform -chdir=crates/esys_entropy/terraform apply $ ansible-playbook -i crates/esys_entropy/terraform/inventory.ini crates/esys_entropy/playbooks/setup.yml ``` [Work in progress: pipe output CSV data into plot script] Clean up ``` $ ansible-playbook -i crates/esys_entropy/terraform/inventory.ini crates/esys_entropy/playbooks/shutdown.yml # optional $ terraform -chdir=crates/esys_entropy/terraform destroy ``` Reproduce Evaluation of Simulation Uncomment the desired evaluation setup in `crates/esys_simulate/src/main.rs` then run ``` $ terraform -chdir=crates/esys_simulate/terraform init $ terraform -chdir=crates/esys_simulate/terraform apply $ ansible-playbook -i crates/esys_simulate/terraform/invertory.ini crates/esys_simulate/playbook.yml \ -e prefix=<evaluation name> ``` Plot the results with `notebooks/<evaluation name>.ipynb`. Clean up ``` $ terraform -chdir=crates/esys_simulate/terraform destroy ```