amazon-web-servicesturi-create

Is it possible to get turicreate to run on an AWS instance?


I haven't had any trouble getting turicreate to run on my Ubuntu OS - however when deploying to an AWS EB instance (Python 3.6) I get the error: ImportError: libblas.so.3: cannot open shared object file: No such file or directory.

This is clearly a problem with not completing the setup instructions found here.

So I tried to update my /.ebextensions/setup.config to resemble the following to try to update the environment so turicreate can run.

packages:
  yum:
    libstdc++6: []
    python-setuptools: []

I needed to use yum because the AWS instance doesn't have apt-get. However this comes with its own errors: Activity execution failed, because: Yum does not have python-setuptools available for installation (ElasticBeanstalk::ExternalInvocationError) and Activity execution failed, because: Yum does not have libstdc++6 available for installation (ElasticBeanstalk::ExternalInvocationError).

If I ssh into the environment...

[ec2-user@ip-***-**-**-*** ~]$ sudo yum install -y libstdc++6 python-setuptools
Loaded plugins: priorities, update-motd, upgrade-helper
amzn-main                                                                                                                                                           | 2.1 kB  00:00:00     
amzn-updates                                                                                                                                                        | 2.5 kB  00:00:00     
No package libstdc++6 available.
Package python26-setuptools-36.2.7-1.33.amzn1.noarch already installed and latest version
Nothing to do
[ec2-user@ip-***-**-**-*** ~]$

What's going on here? How can I configure the EB instance to run turicreate?


Solution

  • Turicreate can run on AWS instances but you have to install the dependencies using Yum. Yum has different file names and the following install config should work.

    packages:
      yum:
        blas-devel : []
        lapack-devel: []