-
Notifications
You must be signed in to change notification settings - Fork 13
Amazon Appliance Workflow
Mike Dye edited this page Jan 4, 2017
·
1 revision
This is described for a Ruby on Rails environment, but other website frameworks could be used.
- The website application (e.g. Ruby project) is hosted on GitHub.
- Amazon OpsWorks is used for server configuration and deployment. Amazon has a good video on the following OpsWorks process.
- Create a new stack. The default Linux O/S with Ruby and MySQL will work. (S3 could also be used for testing).
- Add a layer for a Rail App Server.
- Add an App. (Specify the GitHub path to fetch the application code). The application contains an empty
- Create a "golden" instance of the stack. This instance will appear in your instances list on the EC2 dashboard.
- Create an AMI (image) of the running instance. Give this image a name that includes a version number, e.g. "CHORDS Server v0.9.1".
- (Later) The golden instance can be updated with new application code, using the "update" button in the OpsWorks Apps page.
- The user creates an instance of the AMI (e.g. CHORDS Server v0.9.1).
- The instance is given an application specific name, such as "CHORDS UMich HydroNet".
- The IP address of the CHORDS server is available in the instance details.
- (Probably should select a more permanent storage choice than the default ESD).
- The user browses to the CHORDS server, and logs in via the home page.
- Forms are available to configure the CHORDS server for data organization and ingest.
- Other pages are used to monitor and control the system.
- (Desirable) There is some way for the user to easily create a more memorable IP alias. Perhaps this can be done when the instance is created.
- HTTP queries to the same IP are used to submit data to the CHORDS server.
- HTTP queries to the same IP are used to fetch data from the CHORDS server.
- The CHORDS server can provide simple tabular listings of selected data. File downloads can be specified and dynamically created.
- (Desirable) How can we incorporate push delivery?
Project Management
- Stakeholders
- Communication
- Use Cases
- Requirements
- Deliverables
- Milestones Associated with a Release
- "Sandbox" Milestones
- Github Workflow
AWS
- AWS Portal Migrations
- Amazon Appliance Workflow
- Overview
- Bringing up a new CHORDS Portal
- Cloud Formation
- EC2 Costing and Memory Constraints
Docker
- Running CHORDS
- Docker on AWS
- Duplicating Docker/Influxdb portals
- Docker on Raspberry Pi
- Docker Details and Tips
- Running CHORDS on Windows 10
Influxdb
Data Formats
Google Maps
Ingest Utilities
Miscellaneous
- Recovery from a full disk
- Github/Dockerhub release scheme
- CHORDS gh-pages and jeykll
- Bootstrap
- CHORDS Portal Web Site
- Dashboard Helper Refactor
- Development Notes
- Heroku
- Meteobridge
- Migrating from mysql to mysql/influxdb portals
- NCAR Wx Stations into CHORDS
- PAWS to CHORDS
- Post Get Query Syntax
- Postgres Testing
- Rails Tips
- Ruby and Rails Resources
- CUAHSI Archive
Historical Archive