Tech 1 - Deploying Sahana Eden

1,358 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,358
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
41
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Tech 1 - Deploying Sahana Eden

  1. 1. Deploying Sahana Eden Fran Boon fran@sahanafoundation.org SahanaCamp Viet Nam 1
  2. 2. Agenda Project Plan Deployment Options Hardware Requirements Skills required   For Installation/Configuration For Customization SahanaCamp Viet Nam
  3. 3. Project Plan IT costs of a project unlikely to be the largest element      Building Buy-In Requirements Gathering Change Management User Training User Support SahanaCamp Viet Nam
  4. 4. Deployment Options Host locally in the command center on a Laptop Host in the Cloud Synchronize these 2 together... SahanaCamp Viet Nam 4
  5. 5. Hardware Requirements Standalone PC  Windows or Mac Server  Virtual Server: 512 Mb RAM, 4 Gb HDD Cloud    Amazon EC2 (free tier available for 1 year) Heroku OpenShift SahanaCamp Viet Nam
  6. 6. Architecture Web Server e.g. Apache Application Sahana Eden Web Framework Web2Py Programming Language Python Database MySQL or PostgreSQL Operating System Windows, Linux or Mac SahanaCamp Viet Nam
  7. 7. Installation process Wizard on Wiki to select correct instructions: http://eden.sahanafoundation.org/wiki/InstallationGuidelines Windows Installer:   Local hard disk Flash drive SahanaCamp Viet Nam
  8. 8. Production Server Physical/Dedicated Server or Virtual Server Base OS  Debian Linux best-supported Database   MySQL PostgreSQL Installation scripts   Pre-image Post-Image configuration SahanaCamp Viet Nam
  9. 9. Amazon EC2 Sign-up with credit card Select Data Center closest to you  e.g. Singapore SSH key (private/public) Marketplace AMI: Debian Wheezy Normal Server Install Scripts SahanaCamp Viet Nam
  10. 10. Scaling: Amazon EC2 SahanaCamp Viet Nam
  11. 11. Configuration eden/models/000_config.py settings.  Database database.db_type = "mysql" database.host = "10.14.6.3"  Select Template template = "IFRC"  Branding system_name = T("Sahana Eden Emergency Portal") SahanaCamp Viet Nam
  12. 12. Configuration Security Policy  1: Simple (default):    2: Editor role required for Update/Delete        Global as Reader Authenticated as Editor unless record owned by session 3: Controller ACLs 4: + Function ACLs 5: + Table ACLs 6: + Entity Realm (Multi-tenant) 7: + Hierarchy 8: + Delegations SahanaCamp Viet Nam
  13. 13. Configuration  Authentication options self_registration = True registration_requires_verification = True registration_requires_approval = True  Facebook, Google, LDAP google_id = "645861.apps.googleusercontent.com" google_secret = "1EZYxpRV4iMAVvv_pA"  Workflows req.use_commit = False req.generate_req_number = False SahanaCamp Viet Nam
  14. 14. Configuration  Localization options settings.L10n.languages = OrderedDict([ ("vi", "Tiếng Việt"), L10n.date_format = T("%m-%d-%Y") L10n.decimal_separator = "." L10n.thousands_separator = "," SahanaCamp Viet Nam
  15. 15. Templates private/templates  config.py CSVs to prepopulate data      tasks.cfg Roles Lookup Lists (Types) Assessment Templates Test/Demo Data Import data after Install  Same CSVs SahanaCamp Viet Nam
  16. 16. Maintenance Backups Upgrades  /usr/local/bin/clean  /usr/local/bin/pull  /usr/local/bin/compile  Maintenance Mode   Disable Web Access: Holding Page Disable Scheduler SahanaCamp Viet Nam
  17. 17. Development Customising Sahana Eden    Python & JavaScript Version Control: Git Get changes merged upstream to simplify upgrades SahanaCamp Viet Nam
  18. 18. Testing Manual  Document Test Cases    Normal Workflows Exception Conditions Security Automated  Selenium (Browser-based)     Suite of reusable libraries Run with different data sets Write Test-friendly code Check preconditions directly as faster SahanaCamp Viet Nam
  19. 19. Release Process
  20. 20. Summary Flexible Deployment Options    Laptop: Windows or Mac Server: Linux Cloud: Amazon, Heroku, OpenShift Configuration    Deployment Settings Templates Import CSVs Customisation   Development: Python & JavaScript Testing, Release Management SahanaCamp Viet Nam

×