Skip to content

UT-SysML/ALAP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Steps to Launch ALAP

There are four main components to launch.

  1. OpenWhisk with ALAP's Scheduler
  2. ALAP's Resource Allocator
  3. MinIO database (equivalent of S3, open-source)
  4. ALAP's daemon.

We provide steps for each below.

Launching OpenWhisk with ALAP's Scheduler

The following should be run on the controller node.

  1. Update alap/config.yaml. Ensure you provide the file the controller's private IP and floating point IP. For the workers, use their floating point IP.
  2. Ensure all nodes are connected via ssh with authentication key -- no password should be required. You can use the script we've provided in alap/scripts/lachesis/connect-servers.sh to do this automatically.
  3. Update `openwhisk-3.0/ansible/environments/local/hosts.j2.ini
  4. Run alap/lachesis/setup-workers.sh 0 to copy installation scripts across all servers that will be workers in the setup
  5. Run alap/lachesis/setup-workers.sh 1 to install packages across across servers that will be workers in the setup
  6. Run alap/ow-scripts/wsk-setup.sh to install packages and build OpenWhisk on the controller node (where OpenWhisks's Conroller and ALAP's Scheduler sit)
  7. Run alap/ow-scripts/wsk-deploy.sh to deploy OpenWhisk across the distributred setup
  8. Run alap/ow-scripts/wsk-cli-setup.sh to deploy OpenWhisk's cli with our additions (specficying the number of CPU cores to allocate directly)

Launching ALAP's Resource Allocator

The following should be done on the controller node

  1. Run pip3 install -r alap/requirements.txt
  2. Run alap/scripts/lachesis/install-grpc.sh
  3. Run ala/scripts/lachesis/install-vw.sh
  4. Run sudo apt install vowpal-wabbit.sh
  5. Run python3 alap/src/alap-controller.py. This is a gRPC-based controller that is now ready to listen to gRPC requests and run functions.

Launch MinIO database

The MinIO database sits on the controller node. The following should be done on the controller node.

  1. Update alap/benchmarks/minio/make-minio-config.py to add the private IP of the controller node.
  2. Run python3 alap/benchmarks/minio/make-minio-config.py to create config file for MinIO.
  3. Get function inputs we use from Box: https://utexas.app.box.com/file/1360171127447?s=kev55un7ptl3hjoahdgkafv4x63depmq. Place them in alap/benchmarks/minio-data
  4. Run python3 alap/benchmarks/minio/setup-minio.py to launch MinIO and put inputs in the MinIO database.

Launch ALAP's daemon

The following should be done on the controller node.

  1. Run alap/lachesis/setup-workers.sh 2 to launch the daemons on each worker node.
  2. To clean up the daemon on each worker node, run alap/lachesis/setup-workers.sh 3.

About

Official repository of ALAP, an intent-based serverless computing system

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published