Commit Graph

43 Commits

Author SHA1 Message Date
add20f0c6c Fixed indentation 2018-01-12 12:33:48 +01:00
996beaf090 Bump version of elasticproxy to 1.2 2018-01-12 11:55:13 +01:00
37b84cf75a Upgraded ElasticSearch and Kibana to 6.1.1
Requires a reset + reindex of everything (well, that's the easiest way to
get things indexed properly again), which will loose us the Cloud stats.
Before doing this, export those to MongDB and upgrade the statscollector
to the version that I'll be committing soon.
2018-01-12 11:55:13 +01:00
ab11f98331 Removed notifserv from docker-compose.yml 2018-01-12 11:55:13 +01:00
0ed03240e7 Made docker-compose.yml indentation consistent. 2018-01-12 11:55:07 +01:00
de6cdbaf19 Fixed broken networking with new docker-compose.yml
- No more 'links', all dockers can reach each other by name
- Added 'depends_on', which handles startup sequence
- Allowed haproxy connection to the docker daemon socket
- Told haproxy explicitly which services to proxy. The 'docker:' prefix
  comes from the fact that the directory containing the docker-compose.yml
  file is called 'docker'.
2018-01-03 15:27:28 +01:00
e641565e6a Docker: Limit logging for celery worker 2017-12-22 11:58:47 +01:00
617b600ce8 Upgraded docker-compose.yaml file format from 1 to 3.4
This allows us to set logging options, which weren't available in version 1.
I've also added newlines around each service definition, and made the
formatting consistent across the entire file (using align-yaml, one of the
tools of the atom-beautify plugin for Atom).
2017-12-22 11:54:06 +01:00
5e15185166 HaProxy: Explicitly configure allowed TLS ciphers 2017-12-13 14:00:51 +01:00
565e5e95a5 Disabled web frontend for Grafista.
It still collects daily statistics, until we're 100% sure our own
pillar-statscollector is doing its job correctly.
2017-09-26 12:27:24 +02:00
c2fff6a9cb Removed -verbose from elasticproxy CLI 2017-09-26 11:58:58 +02:00
d02de8e18b Disable Dev Tools panel. 2017-09-26 11:47:09 +02:00
c6d645f664 Removed old X-pack options
These aren't necessary any more now that we use an image with X-pack.
2017-09-26 11:46:59 +02:00
d90794a4f0 Put elasticproxy in between Kibana and ElasticSearch
This blocks any data-changing HTTP request from reaching ElasticSearch.
2017-09-26 11:27:45 +02:00
82a4bcd185 Allow letsencrypt to run on stats.cloud.blender.org 2017-09-21 13:50:44 +02:00
5948ee7c6f Kibana: more frequent garbage collection to limit memory usage
See https://github.com/elastic/kibana/issues/5170#issuecomment-163042525
2017-09-21 11:52:22 +02:00
5b5005f33e Oops 2017-09-21 11:46:01 +02:00
98177df7bd Elastic: moved memory limit to environment variable
This allows us to easily change it without rebuilding the Docker image.
2017-09-21 11:38:17 +02:00
8e6fc604e3 Build custom images for ElasticSearch & Kibana
We can then remove X-Pack and control ElasticSearch's memory usage.

This also gives us the opportunity to let Kibana do its optimization when
we build the image, rather than every time the container is recreated.
2017-09-21 11:28:16 +02:00
2e2fc791e1 Added Kibana to the docker-compose stack 2017-09-20 16:58:18 +02:00
00eb6d8685 Upgraded ElasticSearch 5.6.0 → 5.6.1 2017-09-19 13:48:53 +02:00
9034c36564 Added ElasticSearch docker container.
So far it's just a standalone docker container, as there is no publicly
accessible Kibana container yet. To use, just SSH-tunnel port 9200.
2017-09-18 17:38:55 +02:00
f74e05229c Replace pillar-web with blender-cloud, and add HTTPS support
Other vhosts are already configured to use the 'blender-cloud' hostname,
and now the main one is too. It also adds HTTPS support, so that you can
test locally without having to set FORCE_SSL to false. This does require
you to create a TLS certificate in /data/certs/blender-cloud.pem, using:

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes
cat key.pem cert.pem > blender-cloud.pem
rm key.pem cert.pem
2017-09-18 12:21:33 +02:00
b554756f54 HaProxy: enable gzip compression for certain content types. 2017-09-15 11:03:28 +02:00
22b8ed0bc0 Added "celery beat" docker container 2017-09-14 15:58:03 +02:00
69862b8416 Docker: removed blender-cloud/.well-known from letsencrypt
That domain is handled by a different host.
2017-07-07 11:40:27 +02:00
b9a7f501ba Docker: Dropping support for cloudapi.blender.org 2017-07-07 11:40:25 +02:00
6fc77522ea Removed localhost declaration 2017-07-07 11:24:14 +02:00
538a10af60 Added docker container for serving letsencrypt webroot. 2017-07-07 11:23:38 +02:00
9da841efc3 Added Celery worker docker container
This docker container uses the Blender Cloud image, but a different entry
point. It is not intended to be network-reachable from the outside world.
All it needs are connections to the databases (mongo, redis, rabbit).
2017-06-02 10:55:18 +02:00
c73efd5998 Added RabbitMQ, for serving as Celery broker. 2017-06-02 10:55:18 +02:00
2892a46a27 Docker: store Cloud container /var/log on host in /data/log 2017-05-17 10:07:40 +02:00
bd9265e4f1 Tag blender_cloud Docker image as latest 2017-04-11 12:52:44 +02:00
59ffebd33e Mount grafista storage volume in the correct path 2017-03-12 12:38:59 +01:00
6cfe00c3ca Docker-compose: pinning new version of haproxy
This is actually the one we used in production.
2017-03-10 11:16:28 +01:00
e31b3cf8b4 Docker: pin specific versions for images, for reproducible deploys. 2017-03-09 11:02:04 +01:00
30c9cfd538 Use armadillica/blender_cloud:latest-py36 in this branch 2017-03-08 17:18:52 +01:00
e27f5b7cec Docker-compose: use /data/git as one volume, instead of mapping all subdirs 2017-03-08 12:38:00 +01:00
8407230d81 Set VIRTUAL_HOST_WEIGHT: 20 for grafista docker image 2017-01-26 16:46:33 +01:00
8eeccb06c6 Introducing Grafista prototype to display stats
We configure haproxy to serve /stats as a separate app (from the
grafista container).
2017-01-24 16:02:31 +01:00
Dalai Felinto
a488ff4176 Use Flamenco module 2016-11-06 18:58:51 +01:00
9f886d51c2 Added commented-out notification server support for HAProxy. 2016-10-21 11:16:06 +02:00
7213368736 Added docker-compose.yml 2016-10-20 14:45:23 +02:00