mirror of
https://github.com/viq/NewsBlur.git
synced 2025-09-18 21:43:31 +00:00
Adding elasticsearch to py3, upgrading monitor, need to fix boto -> boto3.
This commit is contained in:
parent
040c165164
commit
af390d5fd1
8 changed files with 52 additions and 28 deletions
4
Makefile
4
Makefile
|
@ -75,6 +75,10 @@ keys:
|
|||
# Digital Ocean / Terraform
|
||||
list:
|
||||
- doctl -t `cat /srv/secrets-newsblur/keys/digital_ocean.token` compute droplet list
|
||||
sizes:
|
||||
- doctl -t `cat /srv/secrets-newsblur/keys/digital_ocean.token` compute size list
|
||||
ratelimit:
|
||||
- doctl -t `cat /srv/secrets-newsblur/keys/digital_ocean.token` account ratelimit
|
||||
ansible-deps:
|
||||
ansible-galaxy install -p roles -r ansible/roles/requirements.yml --roles-path ansible/roles
|
||||
tfrefresh:
|
||||
|
|
|
@ -14,6 +14,6 @@
|
|||
- {role: 'dnsmasq', tags: 'dnsmasq'}
|
||||
- {role: 'consul', tags: 'consul'}
|
||||
- {role: 'consul-client', tags: 'consul'}
|
||||
- {role: 'node-exporter', tags: ['node-exporter', 'metrics']}
|
||||
- {role: 'elasticsearch', tags: 'elasticsearch'}
|
||||
- {role: 'node-exporter', tags: ['node-exporter', 'metrics']}
|
||||
- {role: 'monitor', tags: 'monitor'}
|
||||
|
|
|
@ -1,16 +1,39 @@
|
|||
---
|
||||
- name: Permissions for elasticsearch
|
||||
become: yes
|
||||
file:
|
||||
state: directory
|
||||
mode: 0777
|
||||
path: /var/log/elasticsearch
|
||||
|
||||
- name: Make docker network for newsblurnet
|
||||
become: yes
|
||||
docker_network:
|
||||
name: newsblurnet
|
||||
notify: restart docker
|
||||
|
||||
- name: Start Elasticsearch Docker container
|
||||
become: yes
|
||||
docker_container:
|
||||
name: elasticsearch
|
||||
image: elasticsearch:1.7.6
|
||||
image: elasticsearch:7.14.0
|
||||
state: started
|
||||
hostname: "{{ inventory_hostname }}"
|
||||
ports:
|
||||
- '9200:9200'
|
||||
restart_policy: unless-stopped
|
||||
container_default_behavior: no_defaults
|
||||
networks_cli_compatible: yes
|
||||
# network_mode: host
|
||||
network_mode: default
|
||||
networks:
|
||||
- name: newsblurnet
|
||||
aliases:
|
||||
- elasticsearch
|
||||
user: 1000:1001
|
||||
volumes:
|
||||
- /srv/newsblur/docker/volumes/elasticsearch:/usr/share/elasticsearch/data
|
||||
- /var/log/elasticsearch/:/var/log/elasticsearch/
|
||||
|
||||
- name: Register elasticsearch in consul
|
||||
tags: consul
|
||||
|
|
|
@ -15,22 +15,6 @@
|
|||
lineinfile:
|
||||
path: /srv/newsblur/newsblur_web/app_env.py
|
||||
line: 'SERVER_NAME = "{{ inventory_hostname }}"'
|
||||
|
||||
# Unused because the IP address can change as other containers are added and then the host reboots
|
||||
- block:
|
||||
- name: Register MONGO_DOCKER_IP
|
||||
become: yes
|
||||
shell:
|
||||
cmd: "docker inspect -f '{% raw %}{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}{% endraw %}' mongo "
|
||||
register: mongo_docker_ip
|
||||
when: "'db-mongo' in inventory_hostname"
|
||||
|
||||
- name: Add MONGO_DOCKER_IP to app env
|
||||
lineinfile:
|
||||
path: /srv/newsblur/newsblur_web/app_env.py
|
||||
line: 'MONGO_DOCKER_IP = "{{ mongo_docker_ip.stdout }}"'
|
||||
when: "'db-mongo' in inventory_hostname"
|
||||
when: False
|
||||
|
||||
- name: Make docker network for newsblurnet
|
||||
become: yes
|
||||
|
|
|
@ -8,6 +8,16 @@ import elasticsearch
|
|||
|
||||
from newsblur_web import settings
|
||||
|
||||
import sentry_sdk
|
||||
from flask import Flask
|
||||
from sentry_sdk.integrations.flask import FlaskIntegration
|
||||
|
||||
sentry_sdk.init(
|
||||
dsn=settings.FLASK_SENTRY_DSN,
|
||||
integrations=[FlaskIntegration()],
|
||||
traces_sample_rate=1.0,
|
||||
)
|
||||
|
||||
app = Flask(__name__)
|
||||
|
||||
PRIMARY_STATE = 1
|
||||
|
@ -131,7 +141,7 @@ def db_check_mongo_analytics():
|
|||
@app.route("/db_check/redis_user")
|
||||
def db_check_redis_user():
|
||||
try:
|
||||
r = redis.Redis('db-redis-user.server.nyc1.consul', db=0)
|
||||
r = redis.Redis('db-redis-user.service.nyc1.consul', db=0)
|
||||
except:
|
||||
abort(503)
|
||||
|
||||
|
@ -148,7 +158,7 @@ def db_check_redis_user():
|
|||
@app.route("/db_check/redis_story")
|
||||
def db_check_redis_story():
|
||||
try:
|
||||
r = redis.Redis('db-redis-story.server.nyc1.consul', db=1)
|
||||
r = redis.Redis('db-redis-story.service.nyc1.consul', db=1)
|
||||
except:
|
||||
abort(503)
|
||||
|
||||
|
@ -165,7 +175,7 @@ def db_check_redis_story():
|
|||
@app.route("/db_check/redis_sessions")
|
||||
def db_check_redis_sessions():
|
||||
try:
|
||||
r = redis.Redis('db-redis-sessions.server.nyc1.consul', db=5)
|
||||
r = redis.Redis('db-redis-sessions.service.nyc1.consul', db=5)
|
||||
except:
|
||||
abort(503)
|
||||
|
||||
|
@ -182,7 +192,7 @@ def db_check_redis_sessions():
|
|||
@app.route("/db_check/redis_pubsub")
|
||||
def db_check_redis_pubsub():
|
||||
try:
|
||||
r = redis.Redis('db-redis-pubsub.server.nyc1.consul', db=1)
|
||||
r = redis.Redis('db-redis-pubsub.service.nyc1.consul', db=1)
|
||||
except:
|
||||
abort(503)
|
||||
|
||||
|
@ -199,7 +209,7 @@ def db_check_redis_pubsub():
|
|||
@app.route("/db_check/elasticsearch")
|
||||
def db_check_elasticsearch():
|
||||
try:
|
||||
conn = elasticsearch.Elasticsearch('elasticsearch')
|
||||
conn = elasticsearch.Elasticsearch('db-elasticsearch.service.nyc1.consul')
|
||||
except:
|
||||
abort(503)
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
flask==1.1.2
|
||||
flask==2.0.1
|
||||
pymongo==3.11.2
|
||||
psycopg2>=2,<3
|
||||
redis==3.5.3
|
||||
|
@ -6,7 +6,5 @@ elasticsearch>=7,<8
|
|||
pymysql==0.10.1
|
||||
celery>=4,<5
|
||||
Django>=3.1,<3.2
|
||||
sentry-sdk==0.20.3
|
||||
sentry-sdk[flask]
|
||||
mongoengine==0.21.0
|
||||
boto==2.49.0
|
||||
pyyaml==5.3.1
|
||||
|
|
|
@ -287,7 +287,7 @@ resource "digitalocean_droplet" "db-elasticsearch" {
|
|||
image = var.droplet_os
|
||||
name = "db-elasticsearch"
|
||||
region = var.droplet_region
|
||||
size = var.droplet_size
|
||||
size = var.elasticsearch_droplet_size
|
||||
ssh_keys = [digitalocean_ssh_key.default.fingerprint]
|
||||
provisioner "local-exec" {
|
||||
command = "/srv/newsblur/ansible/utils/generate_inventory.py; sleep 120"
|
||||
|
|
|
@ -45,3 +45,8 @@ variable "mongo_analytics_droplet_size" {
|
|||
type = string
|
||||
default = "s-2vcpu-4gb"
|
||||
}
|
||||
|
||||
variable "elasticsearch_droplet_size" {
|
||||
type = string
|
||||
default = "m3-2vcpu-16gb"
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue