Filesender: Sending large files across facilities – Ben Martin
- 10 Year old project
- Web based File Sharing
- Quick 1-to-few file sharing between people
- Files go away after a month by default
- Simpler to run than anon-ftp etc
- Stats of downloads available to sharer
- User only needs web browser
- Upload resume, important with TB sized files
- Notifications
- share with explicit groups
- Browser-to-browser encryption of data AES-256
- SAML for auth scale
- GDPR by default, about privacy page
- Overview
- Server side is PHP
- Client side JS with light widgets
- MariaDB
- Server Storage
- Chunked 5MB files
- Cept used at aarnet
- Downloading
- On the fly zip64 archive creation
- One of more files listed per transfer
- Links for console download if needed
- Dragons
- Auto Downloads and fast uploads cross browser is HARD
- Mixed browsers
- Long uploads can exceed auth sessions times
- Web crypto support w3c
- People use ancient versions of databases
- Lots of details on the Database and Encryption. Sounds like both have improved to a good state
- Future
- UI refresh
- Mobile App
- E2E Encryption
- Docker image for easy setup
- More SAML info, apache config?
- Integration of Endpoints ( auto youtube etc )
- Session Clone to investigate problems (but privacy?)
- Run the whole thing in the cloud
- Questions
- Command line? – REST API (php and client)
- RSYNC for slightly changing files – Being investigated
Hot Potato – James Forman and Callum Dickinson
- What is Hot potato
- Not a monitoring System
- monitoring System -> Hot potato -> On-call person
- Web app in python and flask
- Tells you things and stays out of the way
- Why ?
- Spark shutdown paging Network
- Needed quick version
- Goals
- Don’t get in the way
- Alert reduction
- Highly available
- Support any System – Nagios family now, Prometheus later
- Support methods – Pushover, SMS, Paging
- What else can it do
- Failure notifications when contacts are not working
- Heartbeats so know when monitoring system is down
- Planning stuff to add to it
- Teams – put everyone on call
- Team escalations
- Planned work ( go to person working before oncall, extend windows )
- Support Hotline integration
- Mobile App
- Adding German and Italian
- How it works
- Flask App
- RabbitMQ
- Database (cockroachDB)
- Apps talk via the Databases
- Alert -> Object in DB -> Put on Queue -> Worker
- Worker -> Get details to send to -> Try to send -> Store result in DB
- If Failure fails then work it’s way though the list.
- Questions:
- ACK can use pushover so don’t have to login to app
- Looking at teams functions
- CockroachDB picked since it seems very reliable
- Not sure about restoring/calendaring features going in since need to make it generic?
- Endpoints fairly modular so should be extendable to new ones.