SlideShare a Scribd company logo
Self hosted server applications
   Why and how to pack the kitchen sink into your server

    Presenter:
          Adam Horvath
          (adam@teamleadnet.com)


21 Mar 2013, DevOps Sydney   Adam Horvath              1
Who had any problems with…
• Differences in
      – Runtime/library environment in dev and prod
      – Configuration settings in dev and prod
•   Setting up A-B testing
•   Setting up load balancing
•   Rolling out a new version to a subset of users
•   Rolling back a malfunctioning version


21 Mar 2013, DevOps Sydney   Adam Horvath             2
Data, Binary, Runtime, Config
• Data is anything that the user creates
      – Files
      – Database entries
• Binary is anything that works or supports work
      – Compiled binaries
      – Script files
      – Images, styles
• Runtime is anything that Binary requires
      – Framework
      – Application server
• Config is anything that advises binary how to behave
      – Config file
      – Command line parameter

21 Mar 2013, DevOps Sydney   Adam Horvath                3
Binary (Code)
              HTTP              Configuration files      Database
             Server
                             User data (Images, files)

                                   Runtime libraries




21 Mar 2013, DevOps Sydney           Adam Horvath                   4
Pack in everything you’d need
• Storage is cheap
      – Store as many binary packages as you want
• The binary package is a ‘throwaway’ container
      – Adding/removing does not affect the system
•   All Binary is internal
•   Most runtime is internal
•   Some configuration is external
•   All data is external

21 Mar 2013, DevOps Sydney   Adam Horvath            5
Self hosting
• Think in small services
• Reduce external dependencies
      –   Ship the application servers with the app
      –   HTTP server
      –   Static content server
      –   Health monitor server
• Run as a simple console application
• Embed most of the configuration
      – Required config in command line - fail early
• Make directory, port, environment irrelevant
• Collect health information centrally

21 Mar 2013, DevOps Sydney       Adam Horvath          6
Forwarding requests
• Treat the external webserver as a forwarder
• Use a lightweight HTTP server like nginx
• What belongs here is
      – Rollout plan to internal users first
      – Rollout plan to small percentage of live users
      – A-B testing
      – Dynamic load balancing
• Tip – set up your own DNS
21 Mar 2013, DevOps Sydney     Adam Horvath              7
HTTP Server
                                                   User data
                              Binary (Code)      (Images, files)

         HTTP                Runtime libraries
         Server



                                                   Database




21 Mar 2013, DevOps Sydney       Adam Horvath                      8
URLs
• This presentation
  http://bit.ly/devops-selfhosted
• nginx
  http://nginx.org/
• dnsmasq
  http://www.thekelleys.org.uk/dnsmasq




21 Mar 2013, DevOps Sydney   Adam Horvath   9
Questions




    Adam Horvath
    (adam@teamleadnet.com)



21 Mar 2013, DevOps Sydney     Adam Horvath   10

More Related Content

PPTX
From Windows to Linux: Converting a Distributed Perforce Helix Infrastructure
PPTX
Tips for Administering Complex Distributed Perforce Environments
PDF
Plugging the Holes: Security and Compatability in Hadoop
PPTX
Award winning scale-up and scale-out storage for Xen
PPTX
2015 deploying flash in the data center
PDF
Webinar Sept 22: Gluster Partners with Redapt to Deliver Scale-Out NAS Storage
PPTX
Spectrum Scale Unified File and Object with WAN Caching
PPTX
World Domination Through Helix Broker
From Windows to Linux: Converting a Distributed Perforce Helix Infrastructure
Tips for Administering Complex Distributed Perforce Environments
Plugging the Holes: Security and Compatability in Hadoop
Award winning scale-up and scale-out storage for Xen
2015 deploying flash in the data center
Webinar Sept 22: Gluster Partners with Redapt to Deliver Scale-Out NAS Storage
Spectrum Scale Unified File and Object with WAN Caching
World Domination Through Helix Broker

What's hot (13)

PPTX
Storage Enhancements in Windows 2012 R2
PPTX
GWAVACon 2013: Novell GroupWise Windermere Deep Dive
PDF
Migrating from OCLC's Digital Archive to DuraCloud
PDF
Redis - The Universal NoSQL Tool
PDF
Docker 101 for Oracle DBAs - Oracle OpenWorld 2017
PPTX
Redis Replication
PPTX
Redis for Data Science and Engineering by Dmitry Polyakovsky of Oracle
PDF
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best Practices
PPTX
REDIS327
PPTX
Geek Sync | Infrastructure for the Data Professional: An Introduction
PPTX
Gears of Perforce: AAA Game Development Challenges
PPTX
The DuraCloud Workshop - Open Repositories 2015
PPTX
Apache Performance Tuning: Scaling Out
Storage Enhancements in Windows 2012 R2
GWAVACon 2013: Novell GroupWise Windermere Deep Dive
Migrating from OCLC's Digital Archive to DuraCloud
Redis - The Universal NoSQL Tool
Docker 101 for Oracle DBAs - Oracle OpenWorld 2017
Redis Replication
Redis for Data Science and Engineering by Dmitry Polyakovsky of Oracle
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best Practices
REDIS327
Geek Sync | Infrastructure for the Data Professional: An Introduction
Gears of Perforce: AAA Game Development Challenges
The DuraCloud Workshop - Open Repositories 2015
Apache Performance Tuning: Scaling Out
Ad

Viewers also liked (20)

PDF
01 บทที่ 1-บทนำ แก้
PDF
00 ส่วนนำ1 แก้
PPTX
Powerful presentation
PDF
02 บทที่ 2-เอกสารที่เกี่ยวข้อง
PPT
Presentatie elma multimedia 2208
PDF
Creative lanna booklet(3)
PPT
Presentatie elma multimedia 2208
DOC
PDF
310174 แมตทีเรีย
PPTX
Learning Commons Update 5/21/14
PDF
Fallo acción popular 2009 0111
PPTX
งานนำเสนอ ข้อมูลโรงเรียนบ้านโปร่ง esanNB
PPTX
Twitter for Professional Development
PDF
12 segd xlab_abigail_hartgray_slideshare
PDF
310252 แมคคานิก
PDF
00 ส่วนนำ1 แก้
PPT
Teaching principles
PPT
Lockhart art analys upload
PDF
Creative Cloud デザインツールの便利な8つの機能 - ADC MEETUP ROUND 08 SESSION2 -
PPTX
การคิดอัตราค่าไฟ
01 บทที่ 1-บทนำ แก้
00 ส่วนนำ1 แก้
Powerful presentation
02 บทที่ 2-เอกสารที่เกี่ยวข้อง
Presentatie elma multimedia 2208
Creative lanna booklet(3)
Presentatie elma multimedia 2208
310174 แมตทีเรีย
Learning Commons Update 5/21/14
Fallo acción popular 2009 0111
งานนำเสนอ ข้อมูลโรงเรียนบ้านโปร่ง esanNB
Twitter for Professional Development
12 segd xlab_abigail_hartgray_slideshare
310252 แมคคานิก
00 ส่วนนำ1 แก้
Teaching principles
Lockhart art analys upload
Creative Cloud デザインツールの便利な8つの機能 - ADC MEETUP ROUND 08 SESSION2 -
การคิดอัตราค่าไฟ
Ad

Similar to Self hosted server applications - Adam Horvath (20)

PPTX
Hadoop operations-2014-strata-new-york-v5
PPTX
Hadoop engineering bo_f_final
PPTX
Architecting Applications with Hadoop
PDF
Strata EU tutorial - Architectural considerations for hadoop applications
PDF
Strata NY 2014 - Architectural considerations for Hadoop applications tutorial
PPT
Net essentials6e ch8
PDF
Application Architectures with Hadoop | Data Day Texas 2015
PDF
Application Architectures with Hadoop
PPTX
YARN Ready: Integrating to YARN with Tez
PPTX
HDFS- What is New and Future
PDF
Architecting application with Hadoop - using clickstream analytics as an example
PPTX
Big data - Online Training
PDF
Application Architectures with Hadoop
PPTX
Lessons Learned Running Hadoop and Spark in Docker Containers
PDF
Tapping into New Postgres Resources with Remote DBAs
 
PPTX
Hadoop.pptx
PPTX
Hadoop.pptx
PPTX
List of Engineering Colleges in Uttarakhand
PDF
Nicholas:hdfs what is new in hadoop 2
PDF
Petabyte scale on commodity infrastructure
Hadoop operations-2014-strata-new-york-v5
Hadoop engineering bo_f_final
Architecting Applications with Hadoop
Strata EU tutorial - Architectural considerations for hadoop applications
Strata NY 2014 - Architectural considerations for Hadoop applications tutorial
Net essentials6e ch8
Application Architectures with Hadoop | Data Day Texas 2015
Application Architectures with Hadoop
YARN Ready: Integrating to YARN with Tez
HDFS- What is New and Future
Architecting application with Hadoop - using clickstream analytics as an example
Big data - Online Training
Application Architectures with Hadoop
Lessons Learned Running Hadoop and Spark in Docker Containers
Tapping into New Postgres Resources with Remote DBAs
 
Hadoop.pptx
Hadoop.pptx
List of Engineering Colleges in Uttarakhand
Nicholas:hdfs what is new in hadoop 2
Petabyte scale on commodity infrastructure

Recently uploaded (20)

PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
A Presentation on Artificial Intelligence
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
cuic standard and advanced reporting.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Encapsulation theory and applications.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Programs and apps: productivity, graphics, security and other tools
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Building Integrated photovoltaic BIPV_UPV.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Digital-Transformation-Roadmap-for-Companies.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
sap open course for s4hana steps from ECC to s4
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
A comparative analysis of optical character recognition models for extracting...
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
A Presentation on Artificial Intelligence
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Machine learning based COVID-19 study performance prediction
cuic standard and advanced reporting.pdf
The AUB Centre for AI in Media Proposal.docx
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Chapter 3 Spatial Domain Image Processing.pdf
Encapsulation theory and applications.pdf
MIND Revenue Release Quarter 2 2025 Press Release
Programs and apps: productivity, graphics, security and other tools

Self hosted server applications - Adam Horvath

  • 1. Self hosted server applications Why and how to pack the kitchen sink into your server Presenter: Adam Horvath (adam@teamleadnet.com) 21 Mar 2013, DevOps Sydney Adam Horvath 1
  • 2. Who had any problems with… • Differences in – Runtime/library environment in dev and prod – Configuration settings in dev and prod • Setting up A-B testing • Setting up load balancing • Rolling out a new version to a subset of users • Rolling back a malfunctioning version 21 Mar 2013, DevOps Sydney Adam Horvath 2
  • 3. Data, Binary, Runtime, Config • Data is anything that the user creates – Files – Database entries • Binary is anything that works or supports work – Compiled binaries – Script files – Images, styles • Runtime is anything that Binary requires – Framework – Application server • Config is anything that advises binary how to behave – Config file – Command line parameter 21 Mar 2013, DevOps Sydney Adam Horvath 3
  • 4. Binary (Code) HTTP Configuration files Database Server User data (Images, files) Runtime libraries 21 Mar 2013, DevOps Sydney Adam Horvath 4
  • 5. Pack in everything you’d need • Storage is cheap – Store as many binary packages as you want • The binary package is a ‘throwaway’ container – Adding/removing does not affect the system • All Binary is internal • Most runtime is internal • Some configuration is external • All data is external 21 Mar 2013, DevOps Sydney Adam Horvath 5
  • 6. Self hosting • Think in small services • Reduce external dependencies – Ship the application servers with the app – HTTP server – Static content server – Health monitor server • Run as a simple console application • Embed most of the configuration – Required config in command line - fail early • Make directory, port, environment irrelevant • Collect health information centrally 21 Mar 2013, DevOps Sydney Adam Horvath 6
  • 7. Forwarding requests • Treat the external webserver as a forwarder • Use a lightweight HTTP server like nginx • What belongs here is – Rollout plan to internal users first – Rollout plan to small percentage of live users – A-B testing – Dynamic load balancing • Tip – set up your own DNS 21 Mar 2013, DevOps Sydney Adam Horvath 7
  • 8. HTTP Server User data Binary (Code) (Images, files) HTTP Runtime libraries Server Database 21 Mar 2013, DevOps Sydney Adam Horvath 8
  • 9. URLs • This presentation http://bit.ly/devops-selfhosted • nginx http://nginx.org/ • dnsmasq http://www.thekelleys.org.uk/dnsmasq 21 Mar 2013, DevOps Sydney Adam Horvath 9
  • 10. Questions Adam Horvath (adam@teamleadnet.com) 21 Mar 2013, DevOps Sydney Adam Horvath 10