-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error in Container Creation on Running Benchmark #257
Comments
vSwarm functions' YAML files need to be modified in the following format to use firecracker MicroVMs instead of containers or gVisor VMs: See vHive Issue 68 (link is above). @alannair could you add a note for this peculiarity to vSwarm's main README in a PR? |
The yaml (eg. In addition, please clarify the following: |
@alannair the stub image does nothing although it runs in the same pod. The sole purpose of the stub container is to serve heartbeats coming from knative & k8s. Ultimately, we should make sure the target container serves those messages on its own but for that we need to investigate the problem further. I think the env variables are set up for all containers. The arguments are just runtime arguments supplied to the command to run inside the target container. |
@ustiugov I am able to deploy the functions by using the modified yaml format. Here is the modified aes-python manifest.
As you can see, I have skipped the args parameters which were passed to the target container in the original manifest. Problem is, while I am able to deploy the function successfully, invocation fails.
I am speculating here, but this is probably because I did not pass the args to the target container (right?). But the new manifest does not instantiate the target container. It just instantiates the stub.
Passing args to the stub container is futile. |
Is there a workaround for this now? |
@jingren1021 can you please specify for what exactly? If you refer to using vSwarm with Firecracker, then the YAML format changes are described above. Sorry for the late response. |
I encounter the following issue when trying to deploy the benchmark chained-function-serving and also aes (these are the only 2 benchmarks I have attempted to deploy). As a representative example, I will include the details pertaining to aes here.
Steps to reproduce the issue
I used the vSwarm-u profile on CloudLab to reproduce the issue on.
Set up a single-node cluster as shown in the vHive quick-start guide and pull all the required images
Ensure that
kubectl get pods -A
shows all pods' status as Running or Completed (if not, wait till that happens).Now deploy a function. As a representative, we shall attempt to deploy kn-aes-go.
which gives the output
The Error
A
CreateContainerError
is encountered in one of the containers.outputs (first line shown here)
For the 3 containers user-container-0, user-container-1 and queue-proxy, here are the outputs of
kubectl logs aes-go-00001-deployment-86749dbdf9-qcrzc -c ${CONTAINER_NAME}
in that order:Therefore it is the queue-proxy container that generates the error.
Take a look at the list of events (a part of the output of
kubectl describe pod aes-go-00001-deployment-86749dbdf9-qcrzc
)Note the second last line which says VM config for pod does not exist. I saw the same mentioned on the vhive screen.
kn service list
gives the outputLogs
kubectl describe pod aes-go-00001-deployment-fdd5c869b-dx6sz
: kubectl-decribe-pod.logkubectl get service
: kubectl-get-service.logkubectl get pods -A
: kubectl-get-pods.logThe text was updated successfully, but these errors were encountered: