Cloud machine setup (VM alternative)
This is an experimental setup. It has not been thoroughly tested.
As an alternative to using the Hive machines, you can do development in the cloud with AWS (Amazon Web Services) or GCE (Google Compute Engine). Both AWS and GCE provide specific VMs free-of-charge under certain usage limits. In particular, see here and here.
Warning: signing up for AWS or GCE will require you to register a billing account. To ensure you do not incur billing charges, you should be very careful. Make sure you are always operating within free tier restrictions and only using free tier resources. We are NOT responsible for any billing charges.
A few notes:
- When signing up for GCE, we recommend you do NOT use your Berkeley email. This is because you cannot directly create projects outside of any organization with a GSuite account.
- The AWS t2.micro free tier expires after 1 year.
- When creating your VM instance, make sure to select Ubuntu 18.04 LTS and x86 architecture.
Here are some guides that you may find useful:
- AWS: Create a VM, SSH access
- GCE: Create a VM, SSH access
Once you have launched and ssh’d into your VM, follow the instructions below to set up your development environment.
- Clone the vagrant repository and checkout the
git clone --recursive https://github.com/Berkeley-CS162/vagrant.git cd vagrant git checkout cloud-setup
- Switch to superuser.
- Create a new user called
vagrant. Choose a password that you can remember; the personal information section doesn’t matter and can be left blank.
- To give password-less sudo access to the user vagrant, open up
/etc/sudoersand add the following line:
vagrant ALL=(ALL) NOPASSWD: ALL
- Install puppet.
apt-get update apt-get install puppet
- Go to the cloned vagrant repo and run puppet. This may take a while.
cd /path/to/vagrant/ puppet apply manifests/site.pp --modulepath modules/
- Switch user to vagrant.
su vagrant cd