Git Product home page Git Product logo

haul's People

Contributors

cshields avatar danielhartnell avatar gozer avatar joekrejci avatar lhirlimann avatar limed avatar mozilla-github-standards avatar scottidler avatar tinnightcap avatar ziegeer avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

haul's Issues

Support CloudFront for publicsuffix.org

To support the publicsuffix.org website, we want to add CloudFront to the Haul stack. Within this issue, I want to plan that work. At the moment, I need to figure out if this should be additional Terraform within this repository or a new nubis-terraform module that we reference here.

[traefik] Ship logs out to fluentd

/var/log/upstart/traefik.log

2017/08/31 15:56:56 server.go:2317: http: TLS handshake error from X.X.X.X:DDDDD: tls: client offered an unsupported, maximum protocol version of 301

planet.mozilla.org/projects is not available

The Planet build container is failing to generate content for the projects planet. This issue was reported here:

https://bugzilla.mozilla.org/show_bug.cgi?id=1421778

I made a minor change to the container (changing relative paths to full paths) which seems to solve this issue. dhartnell/mozilla-planet-builder:4.5 was pushed to Docker Hub and it should solve the issue. I'll update planet-mozilla.groovy to use the newer container and validate that the site still builds successfully for the stage environment. After that, I can update the other Planet Groovy files and plan a production deploy.

Remove date/timestamps from Traefik error logs

Traefik error logs as seen in Kibana have timestamps in the message field and that makes searching for substrings very hard in Kibana due to Lucenes limited wildcard capabilities (especially not being able to query a field with an initial wildcard, e.g. '.substring.')

Example message field as seen in Kibana:
�[37mDEBU�[0m[2017-12-05T21:17:01Z] Round trip: http://127.0.0.1:82, code: 200, duration: 18.739618ms tls:version: 303, tls:resume:false, tls:csuite:c02f, tls:server:planet.mozilla.org

We should:

  1. Turn off Traefik debug logging if we don't need it any longer, it is extremely verbose
  2. Attempt to not grab timestamps as part of the Fluent log collection as Kibana keeps track of the timestamp in its own field.

Both of these will make searching for Traefik errors at least a bit easier.

Fluentd not starting up on haul

Log says

2018-05-24 17:20:53 +0000 [error]: config error file="/etc/td-agent/td-agent.conf" error_class=Fluent::ConfigError error="Other 'in_tail' plugin already use same pos_file path: plugin_id = object:3fa0711524ac, pos_file path = /var/log/traefik.pos"

Prefer rsync over cp -r

For instance:

sh "cp -r /data/genericrhel6/src/planet.mozilla.de/* dst/"

vs:

rsync -av /data/genericrhel6/src/planet.mozilla.de/ dst/

WIll not only only copy what has changed, but will also only show what has changed.

Stage deploy of Haul seems to have affected prod Haul

In troubleshooting Issue #54 we deployed a log-level change to Haul stage. (PR #53) Nothing was deployed to prod. During the deploy to stage though the prod Traefik appears to have been kicked into action and started renewing certs it was not renewing previously (but should have been). The timing is so coincidental it seems unlikely to have been an accident.

12:59:22 PST: Stage haul deploy initiated
13:00:03 PST: Prod Traefik leaps into action after not doing much for a long time: Logs in Kibana: https://sso.core.us-west-2.appsvcs-generic.nubis.allizom.org/kibana/app/kibana#/discover?_g=(refreshInterval:(display:Off,pause:!f,value:0),time:(from:'2018-01-09T17:00:00.000Z',mode:absolute,to:'2018-01-09T23:15:38.762Z'))&_a=(columns:!(message),index:'logstash-*',interval:auto,query:(query_string:(analyze_wildcard:!t,query:'tag:traefik.error%20AND%20stack:haul-prod')),sort:!('@timestamp',asc))

We verified that certs on prod and stage Haul were renewed today with Let's Encrypt, all appear to have the same date stamps.

Expected outcome of stage deploy:

No effects in prod or on prod certs

Observed outcome:

Stage deploy appears to have triggered prod Traefik into renewing prod certs that it was supposed to have renewed previously.

improve Observatory score

We had a score of 70/100 several months ago:
https://bugzilla.mozilla.org/show_bug.cgi?id=1375084

It looks like we lost that after the migration:
https://observatory.mozilla.org/analyze/static.mozilla.com

Let's improve that. The bug has a list of headers I added in the past. It should be fine to add them here:

https://github.com/mozilla-it/haul/blob/master/nubis/puppet/sites.pp#L1-L12

    Header always append X-Frame-Options SAMEORIGIN
    Header set X-Content-Type-Options "nosniff"
    Header set X-XSS-Protection "1; mode=block"
    Header set Strict-Transport-Security "max-age=31536000"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.