Ubuntu 12.04 LTS and Ubuntu 14.04 LTS, both 32 and 64 bit, are supported and deb packages provided.
RHEL7 and its clones are supported and RPM packages provided.
Starting from release 1.8 Celery isn't needed (and not recommended) on a single machine setup anymore; the OpenQuake Engine is able to use all the available CPU cores even without Celery. Celery can still be enabled on a cluster / multi node setup. To enable it please refer to the multiple nodes installation guidelines for Ubuntu or RHEL.
A more detailed stack trace:
Traceback (most recent call last):
File "/usr/bin/openquake", line 9, in <module>
load_entry_point('openquake==0.8.3', 'console_scripts', 'openquake')()
File "/usr/lib/pymodules/python2.7/openquake/bin/oqscript.py", line 192, in main
args.config_file, ajob, user_name, args.force_inputs)
File "/usr/lib/pymodules/python2.7/openquake/engine.py", line 996, in import_job_profile
job_profile = _prepare_job(params, sections, user_name, job, force_inputs)
File "/usr/lib/python2.7/dist-packages/django/db/transaction.py", line 217, in inner
res = func(*args, **kwargs)
File "/usr/lib/pymodules/python2.7/openquake/engine.py", line 718, in _prepare_job
job_profile = _get_job_profile(calc_mode, job_type, owner)
File "/usr/lib/python2.7/dist-packages/django/db/transaction.py", line 217, in inner
res = func(*args, **kwargs)
File "/usr/lib/pymodules/python2.7/openquake/engine.py", line 706, in _get_job_profile
job_profile.save()
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 460, in save
self.save_base(using=using, force_insert=force_insert, force_update=force_update)
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 553, in save_base
result = manager._insert(values, return_id=update_pk, using=using)
File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 195, in _insert
return insert_query(self.model, values, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 1436, in insert_query
return query.get_compiler(using=using).execute_sql(return_id)
File "/usr/lib/python2.7/dist-packages/django/db/models/sql/compiler.py", line 791, in execute_sql
cursor = super(SQLInsertCompiler, self).execute_sql(None)
File "/usr/lib/python2.7/dist-packages/django/db/models/sql/compiler.py", line 735, in execute_sql
cursor.execute(sql, params)
File "/usr/lib/python2.7/dist-packages/django/db/backends/postgresql_psycopg2/base.py", line 44, in execute
return self.cursor.execute(query, args)
django.db.utils.DatabaseError: invalid byte sequence for encoding "UTF8": 0x00This error is related to a bug in Django 1.3.x and requires a custom PostgreSQL configuration. To fix it edit the /etc/postgresql/9.1/main/postgresql.conf file and set standard_conforming_strings to off:
standard_conforming_strings = off
Save and restart PostgreSQL
$ sudo service postgresql restartSee also:
A more detailed stack trace:
File "/usr/lib/pymodules/python2.6/redis/client.py", line 315, in _execute_command
self.connection.send(command, self)
File "/usr/lib/pymodules/python2.6/redis/client.py", line 82, in send
self.connect(redis_instance)
File "/usr/lib/pymodules/python2.6/redis/client.py", line 62, in connect
raise ConnectionError(error_message)
redis.exceptions.ConnectionError: Error 111 connecting localhost:6379. Connection refused.This is because Redis server is not running. You can start it running
$ sudo service redis-server startA more detailed stack trace:
File "/usr/local/lib/python2.6/dist-packages/carrot/connection.py", line 135, in connection
self._connection = self._establish_connection()
File "/usr/local/lib/python2.6/dist-packages/carrot/connection.py", line 148, in _establish_connection
return self.create_backend().establish_connection()
File "/usr/local/lib/python2.6/dist-packages/carrot/backends/pyamqplib.py", line 208, in establish_connection
connect_timeout=conninfo.connect_timeout)
File "/usr/local/lib/python2.6/dist-packages/amqplib/client_0_8/connection.py", line 125, in __init__
self.transport = create_transport(host, connect_timeout, ssl)
File "/usr/local/lib/python2.6/dist-packages/amqplib/client_0_8/transport.py", line 220, in create_transport
return TCPTransport(host, connect_timeout)
File "/usr/local/lib/python2.6/dist-packages/amqplib/client_0_8/transport.py", line 58, in __init__
self.sock.connect((host, port))
File "", line 1, in connect
error: [Errno 111] Connection refusedThis is because RabbitMQ server is not running. You can start it running
$ sudo service rabbitmq-server startThis happens because RabbitMQ default log level is INFO and every connection is logged.
To avoid this, if you are using RabbitMQ >= 2.8 (provided by the OpenQuake > 1.0), simply create the file /etc/rabbitmq/rabbitmq.config with this content
[
{rabbit, [{log_levels, [{connection, warning}]}]}
].and restart RabbitMQ
$ sudo service rabbitmq-server restart