# Installation of Insights for LMS on Hawthorn

**URL:** <https://discuss.openedx.org/t/installation-of-insights-for-lms-on-hawthorn/2662>\
**Category:** Site Operations Help\
**Created:** [July 7, 2020, 11:21am UTC](https://discuss.openedx.org/t/installation-of-insights-for-lms-on-hawthorn/2662 "2020-07-07T11:21:54Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![bindu\_rajesh](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/bindu_rajesh/32/1248_2.png) [@bindu\_rajesh](https://discuss.openedx.org/u/bindu_rajesh)\
**Post date:** [July 7, 2020, 11:21am UTC](https://discuss.openedx.org/t/installation-of-insights-for-lms-on-hawthorn/2662/1 "2020-07-07T11:21:54Z")

</div>

Hi

I want to configure Insights for LMS on Hawthorn (hawthorn.master).  
I tried without specifying the INSIGHTS\_VERSION in ansible-playbook.  
Installation was successful. But I am unable to login because of below error.

" invalid\_request The requested redirect didn’t match the client settings" .

I found a resolution in one of the post that we need to specify INSIGHTS\_VERSION in the installation command.

However, when I try to install with INSIGHTS\_VERSION,

ansible-playbook -i localhost, -c local analytics\_single.yml --extra-vars “INSIGHTS\_LMS\_BASE=10.20.10.80 INSIGHTS\_VERSION=open-release/hawthorn.master ANALYTICS\_API\_VERSION=open-release/hawthorn.master”

it is failing with below error:

TASK [edx\_django\_service : install production requirements] \*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*  
fatal: [localhost]: FAILED! =\> {“changed”: true, “cmd”: [“make”, “production-requirements”], “delta”: “0:00:11.291446”, “end”: “2020-07-07 16:40:24.216449”, “msg”: “non-zero return code”, “rc”: 2, “start”: “2020-07-07 16:40:12.925003”, “stderr”: “ERROR: Could not find a version that satisfies the requirement futures==3.2.0 (from -r requirements/production.txt (line 43)) (from versions: 0.2.python3, 0.1, 0.2, 1.0, 2.0, 2.1, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.1.6, 2.2.0, 3.0.0, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.1.0, 3.1.1)\nERROR: No matching distribution found for futures==3.2.0 (from -r requirements/production.txt (line 43))\nWARNING: You are using pip version 20.0.2; however, version 20.1.1 is available.\nYou should consider upgrading via the ‘/edx/app/analytics\_api/venvs/analytics\_api/bin/python3 -m pip install --upgrade pip’ command.\nmake: \*\*\* [production-requirements] Error 1”, “stderr\_lines”: [“ERROR: Could not find a version that satisfies the requirement futures==3.2.0 (from -r requirements/production.txt (line 43)) (from versions: 0.2.python3, 0.1, 0.2, 1.0, 2.0, 2.1, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.1.6, 2.2.0, 3.0.0, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.1.0, 3.1.1)”, “ERROR: No matching distribution found for futures==3.2.0 (from -r requirements/production.txt (line 43))”, “WARNING: You are using pip version 20.0.2; however, version 20.1.1 is available.”, “You should consider upgrading via the ‘/edx/app/analytics\_api/venvs/analytics\_api/bin/python3 -m pip install --upgrade pip’ command.”, “make: \*\*\* [production-requirements] Error 1”], “stdout”: “pip install -r requirements.txt\nCollecting amqp==1.4.9\n Using cached amqp-1.4.9-py2.py3-none-any.whl (51 kB)\nCollecting anyjson==0.3.3\n Using cached anyjson-0.3.3.tar.gz (8.3 kB)\nCollecting asn1crypto==0.24.0\n Using cached asn1crypto-0.24.0-py2.py3-none-any.whl (101 kB)\nCollecting awscli==1.11.178\n Using cached awscli-1.11.178-py2.py3-none-any.whl (1.2 MB)\nCollecting bcrypt==3.1.4\n Using cached bcrypt-3.1.4-cp35-cp35m-manylinux1\_x86\_64.whl (54 kB)\nCollecting billiard==3.3.0.23\n Using cached billiard-3.3.0.23.tar.gz (151 kB)\nCollecting boto3==1.4.7\n Using cached boto3-1.4.7-py2.py3-none-any.whl (128 kB)\nCollecting boto==2.42.0\n Using cached boto-2.42.0-py2.py3-none-any.whl (1.3 MB)\nCollecting botocore==1.7.36\n Using cached botocore-1.7.36-py2.py3-none-any.whl (3.7 MB)\nCollecting celery==3.1.18\n Using cached celery-3.1.18-py2.py3-none-any.whl (515 kB)\nCollecting cffi==1.11.5\n Using cached cffi-1.11.5-cp35-cp35m-manylinux1\_x86\_64.whl (420 kB)\nCollecting click==6.7\n Using cached click-6.7-py2.py3-none-any.whl (71 kB)\nCollecting colorama==0.3.7\n Using cached colorama-0.3.7-py2.py3-none-any.whl (19 kB)\nCollecting coreapi==2.3.3\n Using cached coreapi-2.3.3-py2.py3-none-any.whl (25 kB)\nCollecting coreschema==0.0.4\n Using cached coreschema-0.0.4.tar.gz (10 kB)\nCollecting cryptography==1.9\n Using cached cryptography-1.9.tar.gz (409 kB)\nCollecting django-countries==4.5\n Using cached django\_countries-4.5-py2.py3-none-any.whl (612 kB)\nCollecting django-fernet-fields==0.5\n Using cached django-fernet-fields-0.5.tar.gz (6.8 kB)\nCollecting django-rest-swagger==2.1.2\n Using cached django\_rest\_swagger-2.1.2-py2.py3-none-any.whl (747 kB)\nCollecting django-storages==1.5.2\n Using cached django\_storages-1.5.2-py2.py3-none-any.whl (51 kB)\nCollecting django==1.11.15\n Using cached Django-1.11.15-py2.py3-none-any.whl (6.9 MB)\nCollecting djangorestframework-csv==2.0.0\n Using cached djangorestframework-csv-2.0.0.tar.gz (16 kB)\nCollecting djangorestframework-jwt==1.11.0\n Using cached djangorestframework\_jwt-1.11.0-py2.py3-none-any.whl (13 kB)\nCollecting djangorestframework==3.6.3\n Using cached djangorestframework-3.6.3-py2.py3-none-any.whl (1.3 MB)\nCollecting docutils==0.14\n Using cached docutils-0.14-py3-none-any.whl (543 kB)\nCollecting edx-ccx-keys==0.2.1\n Using cached edx-ccx-keys-0.2.1.tar.gz (3.5 kB)\nCollecting edx-django-release-util==0.3.1\n Using cached edx\_django\_release\_util-0.3.1-py3-none-any.whl (15 kB)\nCollecting edx-drf-extensions==1.2.4\n Using cached edx\_drf\_extensions-1.2.4-py2.py3-none-any.whl (10 kB)\nCollecting edx-enterprise-data==0.2.2\n Using cached edx\_enterprise\_data-0.2.2-py3-none-any.whl (43 kB)\nCollecting edx-opaque-keys==0.4\n Using cached edx-opaque-keys-0.4.tar.gz (36 kB)\nCollecting edx-rest-api-client==1.7.1\n Using cached edx\_rest\_api\_client-1.7.1-py3-none-any.whl (5.8 kB)\nCollecting elasticsearch-dsl==0.0.11\n Using cached elasticsearch\_dsl-0.0.11-py2.py3-none-any.whl (40 kB)\nCollecting elasticsearch==1.9.0\n Using cached elasticsearch-1.9.0-py2.py3-none-any.whl (59 kB)\nCollecting enum34==1.1.6\n Using cached enum34-1.1.6-py3-none-any.whl (12 kB)\nCollecting first==2.0.1\n Using cached first-2.0.1-py2.py3-none-any.whl (7.4 kB)\nCollecting future==0.16.0\n Using cached future-0.16.0.tar.gz (824 kB)\nMakefile:15: recipe for target ‘production-requirements’ failed”, “stdout\_lines”: [“pip install -r requirements.txt”, “Collecting amqp==1.4.9”, " Using cached amqp-1.4.9-py2.py3-none-any.whl (51 kB)", “Collecting anyjson==0.3.3”, " Using cached anyjson-0.3.3.tar.gz (8.3 kB)", “Collecting asn1crypto==0.24.0”, " Using cached asn1crypto-0.24.0-py2.py3-none-any.whl (101 kB)", “Collecting awscli==1.11.178”, " Using cached awscli-1.11.178-py2.py3-none-any.whl (1.2 MB)", “Collecting bcrypt==3.1.4”, " Using cached bcrypt-3.1.4-cp35-cp35m-manylinux1\_x86\_64.whl (54 kB)", “Collecting billiard==3.3.0.23”, " Using cached billiard-3.3.0.23.tar.gz (151 kB)", “Collecting boto3==1.4.7”, " Using cached boto3-1.4.7-py2.py3-none-any.whl (128 kB)", “Collecting boto==2.42.0”, " Using cached boto-2.42.0-py2.py3-none-any.whl (1.3 MB)", “Collecting botocore==1.7.36”, " Using cached botocore-1.7.36-py2.py3-none-any.whl (3.7 MB)", “Collecting celery==3.1.18”, " Using cached celery-3.1.18-py2.py3-none-any.whl (515 kB)", “Collecting cffi==1.11.5”, " Using cached cffi-1.11.5-cp35-cp35m-manylinux1\_x86\_64.whl (420 kB)", “Collecting click==6.7”, " Using cached click-6.7-py2.py3-none-any.whl (71 kB)", “Collecting colorama==0.3.7”, " Using cached colorama-0.3.7-py2.py3-none-any.whl (19 kB)", “Collecting coreapi==2.3.3”, " Using cached coreapi-2.3.3-py2.py3-none-any.whl (25 kB)", “Collecting coreschema==0.0.4”, " Using cached coreschema-0.0.4.tar.gz (10 kB)", “Collecting cryptography==1.9”, " Using cached cryptography-1.9.tar.gz (409 kB)", “Collecting django-countries==4.5”, " Using cached django\_countries-4.5-py2.py3-none-any.whl (612 kB)", “Collecting django-fernet-fields==0.5”, " Using cached django-fernet-fields-0.5.tar.gz (6.8 kB)", “Collecting django-rest-swagger==2.1.2”, " Using cached django\_rest\_swagger-2.1.2-py2.py3-none-any.whl (747 kB)", “Collecting django-storages==1.5.2”, " Using cached django\_storages-1.5.2-py2.py3-none-any.whl (51 kB)", “Collecting django==1.11.15”, " Using cached Django-1.11.15-py2.py3-none-any.whl (6.9 MB)", “Collecting djangorestframework-csv==2.0.0”, " Using cached djangorestframework-csv-2.0.0.tar.gz (16 kB)", “Collecting djangorestframework-jwt==1.11.0”, " Using cached djangorestframework\_jwt-1.11.0-py2.py3-none-any.whl (13 kB)", “Collecting djangorestframework==3.6.3”, " Using cached djangorestframework-3.6.3-py2.py3-none-any.whl (1.3 MB)", “Collecting docutils==0.14”, " Using cached docutils-0.14-py3-none-any.whl (543 kB)", “Collecting edx-ccx-keys==0.2.1”, " Using cached edx-ccx-keys-0.2.1.tar.gz (3.5 kB)", “Collecting edx-django-release-util==0.3.1”, " Using cached edx\_django\_release\_util-0.3.1-py3-none-any.whl (15 kB)", “Collecting edx-drf-extensions==1.2.4”, " Using cached edx\_drf\_extensions-1.2.4-py2.py3-none-any.whl (10 kB)", “Collecting edx-enterprise-data==0.2.2”, " Using cached edx\_enterprise\_data-0.2.2-py3-none-any.whl (43 kB)", “Collecting edx-opaque-keys==0.4”, " Using cached edx-opaque-keys-0.4.tar.gz (36 kB)", “Collecting edx-rest-api-client==1.7.1”, " Using cached edx\_rest\_api\_client-1.7.1-py3-none-any.whl (5.8 kB)", “Collecting elasticsearch-dsl==0.0.11”, " Using cached elasticsearch\_dsl-0.0.11-py2.py3-none-any.whl (40 kB)", “Collecting elasticsearch==1.9.0”, " Using cached elasticsearch-1.9.0-py2.py3-none-any.whl (59 kB)", “Collecting enum34==1.1.6”, " Using cached enum34-1.1.6-py3-none-any.whl (12 kB)", “Collecting first==2.0.1”, " Using cached first-2.0.1-py2.py3-none-any.whl (7.4 kB)", “Collecting future==0.16.0”, " Using cached future-0.16.0.tar.gz (824 kB)", “Makefile:15: recipe for target ‘production-requirements’ failed”]}

Can anybody help please.

Thanks  
Bindu

---

<div class="post-metadata">

**Author:** ![JavaMatt](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/javamatt/32/1024_2.png) [@JavaMatt](https://discuss.openedx.org/u/JavaMatt)\
**Post date:** [July 7, 2020, 5:45pm UTC](https://discuss.openedx.org/t/installation-of-insights-for-lms-on-hawthorn/2662/2 "2020-07-07T17:45:45Z")

</div>

It sounds like the issue is coming from your python version.

> “ERROR: Could not find a version that satisfies the requirement futures==3.2.0 (from -r requirements/production.txt (line 43)) (from versions: 0.2.python3, 0.1, 0.2, 1.0, 2.0, 2.1, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.1.6, 2.2.0, 3.0.0, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.1.0, 3.1.1)

I found these resources maybe it will help:

[https://edx.readthedocs.io/projects/edx-installing-configuring-and-running/en/latest/insights/install\_insights.html](https://edx.readthedocs.io/projects/edx-installing-configuring-and-running/en/latest/insights/install_insights.html)

> - [Hadoop](http://hadoop.apache.org/) version 1.0.3 or higher
> - [Hive](https://hive.apache.org/) version 0.11.0.2 or higher
> - [Sqoop](http://sqoop.apache.org/) version 1.4.5
> - Python 2.7
> - Either Debian version 6.0 or higher, or Ubuntu version 12.04 or higher
> - A MySQL server version 5.6 or higher

> **[futures](https://pypi.org/project/futures/3.2.0/)**
>
> Backport of the concurrent.futures package from Python 3

---

<div class="post-metadata">

**Author:** ![bindu\_rajesh](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.openedx.org/bindu_rajesh/32/1248_2.png) [@bindu\_rajesh](https://discuss.openedx.org/u/bindu_rajesh)\
**Post date:** [July 9, 2020, 5:17am UTC](https://discuss.openedx.org/t/installation-of-insights-for-lms-on-hawthorn/2662/3 "2020-07-09T05:17:22Z")

</div>

Hi

Thanks for the reply.  
I am having python 2.7 in my virtual environment.  
I am sorry I am not familiar with python. I didn’t understand what is supposed to be done here.  
Will it work if I manually install futures 3.2.0 in my virtual environment?

Thanks  
Bindu
