The document discusses writing portable PostgreSQL applications for the open cloud. It covers open cloud platforms like OpenStack that avoid lock-in, and platforms like OpenShift that provide portable PostgreSQL applications using cartridges and scaling hooks. Examples are given of simple applications like a TODO app using Flask, SQLAlchemy and PostgreSQL that can be easily deployed to OpenShift.
Simplifying and accelerating converged media with Open Visual CloudLiz Warner
Challenges exist with media transformation into Visual Cloud services and the flexibility to migrate those services to new HW platforms. Learn how Intel and partners are solving these challenges with highly optimized cloud native media processing, media analytics, and graphics/rendering components to quickly and easily deliver end-to-end visual cloud services with scalable open source software. Two visual cloud services around media delivery and media analytics will be demonstrated to showcase how to enable faster time to market for innovative “new media” services.
Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation ...Igalia
By Žan Doberšek.
WebKit and its multi-process architecture might not seem suitable for embedded systems at first, but Wayland, the next-gen display system, has already proven itself by running efficiently on TVs, smartphones and single-board computers. This talk will present the techniques that were used to achieve efficient, hardware-accelerated rendering of Web content across the multiple processes of WebKit running under Wayland. Žan Doberšek will also share his experiences of deploying the two technologies on everyone's favorite mini-sized computer, the Raspberry Pi. He will also present and discuss further ideas and possible solutions for creating efficient and optimized Web content presentation systems specifically crafted for embedded systems like Smart TVs and in-vehicle infotainment by using Linux, Wayland and WebKit.
Simplifying and accelerating converged media with Open Visual CloudLiz Warner
Challenges exist with media transformation into Visual Cloud services and the flexibility to migrate those services to new HW platforms. Learn how Intel and partners are solving these challenges with highly optimized cloud native media processing, media analytics, and graphics/rendering components to quickly and easily deliver end-to-end visual cloud services with scalable open source software. Two visual cloud services around media delivery and media analytics will be demonstrated to showcase how to enable faster time to market for innovative “new media” services.
Pairing WebKit and Wayland for Linux-Based Embedded Web Content Presentation ...Igalia
By Žan Doberšek.
WebKit and its multi-process architecture might not seem suitable for embedded systems at first, but Wayland, the next-gen display system, has already proven itself by running efficiently on TVs, smartphones and single-board computers. This talk will present the techniques that were used to achieve efficient, hardware-accelerated rendering of Web content across the multiple processes of WebKit running under Wayland. Žan Doberšek will also share his experiences of deploying the two technologies on everyone's favorite mini-sized computer, the Raspberry Pi. He will also present and discuss further ideas and possible solutions for creating efficient and optimized Web content presentation systems specifically crafted for embedded systems like Smart TVs and in-vehicle infotainment by using Linux, Wayland and WebKit.
Haroon walked us through various tips and tricks on how we can enhance PostgreSQL performance while highlighting some typical pitfalls people encounter. If you are planning for capacity, doing scalability analysis, or simply facing degradation in performance of your apps or queries running against PostgreSQL, you should definitely attend this session.
Haroon walked us through various tips and tricks on how we can enhance PostgreSQL performance while highlighting some typical pitfalls people encounter. If you are planning for capacity, doing scalability analysis, or simply facing degradation in performance of your apps or queries running against PostgreSQL, you should definitely attend this session.
A look at what HA is and what PostgreSQL has to offer for building an open source HA solution. Covers various aspects in terms of Recovery Point Objective and Recovery Time Objective. Includes backup and restore, PITR (point in time recovery) and streaming replication concepts.
microXchg 2019, Berlin: Talk by Mario-Leander Reimer (@LeanderReimer, Principal Software Architect at QAware)
=== Please download slides if blurred! ===
Abstract: Only a few years ago the move towards microservice architecture was the first big disruption in software engineering: instead of running monoliths, systems were now build, composed and run as autonomous services. But this came at the price of added development and infrastructure complexity. Serverless and FaaS seem to be the next disruption, they are the logical evolution trying to address some of the inherent technology complexity we are currently faced when building cloud native apps.
FaaS frameworks are currently popping up like mushrooms: Knative, Kubeless, OpenFn, Fission, OpenFaas or Open Whisk are just a few to name. But which one of these is safe to pick and use in your next project? Let's find out. This session will start off by briefly explaining the essence of Serverless application architecture. We will then define a criteria catalog for FaaS frameworks and continue by comparing and showcasing the most promising ones.
Haroon walked us through various tips and tricks on how we can enhance PostgreSQL performance while highlighting some typical pitfalls people encounter. If you are planning for capacity, doing scalability analysis, or simply facing degradation in performance of your apps or queries running against PostgreSQL, you should definitely attend this session.
Haroon walked us through various tips and tricks on how we can enhance PostgreSQL performance while highlighting some typical pitfalls people encounter. If you are planning for capacity, doing scalability analysis, or simply facing degradation in performance of your apps or queries running against PostgreSQL, you should definitely attend this session.
A look at what HA is and what PostgreSQL has to offer for building an open source HA solution. Covers various aspects in terms of Recovery Point Objective and Recovery Time Objective. Includes backup and restore, PITR (point in time recovery) and streaming replication concepts.
microXchg 2019, Berlin: Talk by Mario-Leander Reimer (@LeanderReimer, Principal Software Architect at QAware)
=== Please download slides if blurred! ===
Abstract: Only a few years ago the move towards microservice architecture was the first big disruption in software engineering: instead of running monoliths, systems were now build, composed and run as autonomous services. But this came at the price of added development and infrastructure complexity. Serverless and FaaS seem to be the next disruption, they are the logical evolution trying to address some of the inherent technology complexity we are currently faced when building cloud native apps.
FaaS frameworks are currently popping up like mushrooms: Knative, Kubeless, OpenFn, Fission, OpenFaas or Open Whisk are just a few to name. But which one of these is safe to pick and use in your next project? Let's find out. This session will start off by briefly explaining the essence of Serverless application architecture. We will then define a criteria catalog for FaaS frameworks and continue by comparing and showcasing the most promising ones.
WebAssembly - czy dzisiaj mi się to przyda do pracy?Brainhub
Rust, Go, AssemblyScript - wszystko co chcesz wiedzieć o WebAssembly, a o co boisz się zapytać. WebAssembly jest bardzo młodą technologią i jeszcze wiele pracy czeka programistów stojących za projektem. Benedykt opowiadał już na ten temat podczas dev.js Summit 2021, ale postanowił zgłębić niektóre wątki i uzupełnić o nowości ze świata WebAssembley.
We współpracy z Mateuszem Koniecznym opowiedzą o WASM i pokażą kilka przykładów podczas live-codingu.
CA Performance Manager Agility by using Docker Containers for Network Manag...CA Technologies
Everything is moving more quickly as companies try to achieve first-mover advantage by leveraging their network and offering advanced services. Join the experts at CA technologies to learn how using Docker containers can help expedite your testing and delivery of new network and product offerings.
For more information, please visit http://cainc.to/Nv2VOe
DCEU 18: Developing with Docker ContainersDocker, Inc.
Laura Frank Tacho - Director of Engineering, CloudBees
Wouldn't it be great for a new developer on your team to have their dev environment totally set up on their first day? What about having the confidence that your dev environment mirrors testing and prod? Containers enable this to become reality, along with other great benefits like keeping dependencies nice and tidy and making packaged code easier to share. Come learn about the ways containers can help you build and ship software easily, and walk away with two actionable steps you can take to start using Docker containers for development.
EDW CENIPA is a opensource project designed to enable analysis of aeronautical incidentes that occured in the brazilian civil aviation. The project uses techniques and BI tools that explore innovative low-cost technologies. Historically, Business Intelligence platforms are expensive and impracticable for small projects. BI projects require specialized skills and high development costs. This work aims to break this barrier.
stackconf 2022: Data Management in Kubernetes – Backup, DR, HANETWAYS
Kubernetes is everywhere now, right? You see how companies are embracing this technology more and more, it’s like the Kardashians or Rosalía or TikTok; MAINSTREAM! BUT, as companies evolve and grow their container environments, they realize that stateful apps require more than a robust Kubernetes distribution, data is the key of their apps. Applications are as important as the data that they use. Managing 1M bank transactions is not the same as using bridge images, so you have to be very careful on how you control and use that data. Portworx is here to help with those problems. In this session, we will see how Portworx is able to manage volumes in the cloud with Kubernetes in seconds AND migrate that data from cluster to cluster in minutes, even a Disaster Recovery environment with ZERO data loss and NO downtime. Do you want to see it live? join this session!
Scaleable PHP Applications in KubernetesRobert Lemke
Kubernetes is also called the "distributed Linux of the cloud" – which implies that it provides fundamental infrastructure, which can solve a lot of challenges. Let’s see how PHP applications fit into this picture. In this presentation, we are going to explore when Kubernetes is a good fit for operating your PHP application and how it can be done in practice. We’ll look at the whole lifecycle: how to build your application, create or choose the right Docker images, deploy and scale, and how to deal with performance and monitoring. At the end you will have a good understanding about all the different stages and building blocks for running a PHP application with Kubernetes in production.
DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...Olivier Destrebecq
Comment Docker peu faciliter la création de vos applications mobiles Android? Nous tenterons ici de répondre à cette question en expliquant la méthode de création d'une chaîne d'intégration continue pour une application mobile Android, à l'aide de Jenkins, Docker et Fastlane.
PT-4142, Porting and Optimizing OpenMP applications to APU using CAPS tools, ...AMD Developer Central
Presentation PT-4142, Porting and Optimizing OpenMP applications to APU using CAPS tools, by Jean-Charles Vasnier, at the AMD Developer Summit (APU13) November 11-13, 2013.
[DSC DACH 23] Creating Production-Ready Shiny Apps - Mario AnnauDataScienceConferenc1
We show how to turn a simple Shiny App into a state-of-the-art Shiny package which checks all boxes for production and maintenance:
Install R and package dependencies on server
Eliminate “dumb” errors
Eliminate semantic errors
Facilitate Maintenance through Structure/Doc
Eliminate issues through different OS (Win vs Linux)
To accomplish these goals we use a bunch of helper packages (), Github actions and - of course - ChatGPT :)
Github: https://github.com/quantargo/shinyproduction
Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)3scale
Presentation gave by Nicolas Grenié (@picsoung) at APIdays Nordic in Tampere, Finland in 2016
He covered the principles of serverless infrastructure, explaining the pros and cons about it and the different platforms.
He also gave an overview of the Serverless (serverless.com) framework.
Docker is a very useful tool in every data scientists toolbox. In this talk I present motivations to use Docker and made some live demos of typical tools used in data science, such as RStudio, Jupyter Notebook, or Elasticsearch.
Wouldn't it be great for a new developer on your team to have their dev environment totally set up on their first day? What about having your CI tests running in the background while you work on new features? What about having the confidence that your dev environment mirrors testing and prod? Containers enable this to become reality, along with other great benefits like keeping dependencies nice and tidy and making packaged code easier to share. Come learn about the ways containers can help you build and ship software easily.
Become an hackathon champion with this useful collection of tutorials and examples with links to source code and videos.
Get ready for the next hackathon with IBM Bluemix.
Similar to Ryan Jarvinen Open Shift Talk @ Postgres Open 2013 (20)
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
The Art of the Pitch: WordPress Relationships and Sales
Ryan Jarvinen Open Shift Talk @ Postgres Open 2013
1. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 1/48
PG OPEN CLOUD
Portable PG applications
http://bit.ly/1eddml6
http://ryanjarvinen.com/presentations/pg_open_cloud
2. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 2/48
presented by
/ryan jarvinen @ryanj
3. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 3/48
Open Platforms Engineer
at
Red Hat
ryanj@redhat.com
4. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 4/48
AGENDA
1. Open Cloud Overview
2. Learn how to write for the Open Cloud
5. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 5/48
the Cloud
"what is it made of?"
6. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 6/48
The cloud is:
hot air?
a series of tubes?
mostly cat photos✓
7. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 7/48
INFRASTRUCTURE
Communications: fiber, switches, wireless
Storage and Compute: chips, servers, disks, databases
…
DevOps (and friction)
…
Software as a Service: Dropbox, Gmail
8. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 8/48
IAAS
Amazon EC2
RackSpace
Linode
BlueHost
* Many are VM / VPS-based services
9. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 9/48
BUILDING WITH POSTGRES NORMALLY LOOKS LIKE:
10. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 10/48
1. Install Apache with Mod_WSGI
2. Make sure we have all the Python extensions set so
Apache can see them
3. Configure firewall so that only http, https, and ssh are
available to outside world
4. Install Postgresql, and plugins
5. update PG_hba.conf, create db user, create db user
password, set up access privs, and a test account
6. Create DB, give user permissions to the DB
7. Set up a git repository and then figure out how to
structure and deploy
8. Now I can write code - hello world, then database
connection, then real app
9. Get it working with a public DNS
10. Now you are stuck maintaining the machine
11. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 11/48
OR - if your Ops team offers pre-built VMs:
1. Fill out a mile high stack of request forms for a VM
from Ops and wait
2. Then realize it's not configured properly, submit ticket
and wait
3. Repeat same information, and wait
4. Your ops person moves to a different group, GOTO
Line 1....
12. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 12/48
As a sysadmin:
1. We're busy keeping the site up, we'll need to provision
your VM later
2. Developers always want to try a new language or
datastore that they don't know how to install, let alone
manage
3. There is whole bunch of account creation and
lockdown for each VM. I'll need to give them Sudo or
they'll annoy me all the time
4. Each machine ends up with a wildly different config
5. Developers never give up the resources from their
VMs - spreadsheets and emails
6. If there is a security fix I need to go into each VM and
update it
7. I don't want to spend my time updating DNS tables
13. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 13/48
PLATFORMS PROVIDE A PEACEFUL ENVIRONMENT FOR
DEVS AND SYSADMINS
Operations can ensure stability and performance
Developers can self-provision environments without
waiting
The discussion shifts toward establishing policies for
scaling
14. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 14/48
15. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 15/48
PUBLIC / HOSTED PAAS
Heroku
EngineYard
Google App Engine
Amazon BeanStalk
* usually VM-based or proprietary application container
technologies
16. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 16/48
the public cloud
17. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 17/48
This all sounds great, but what about…
LOCK-IN?
18. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 18/48
THE OPEN CLOUD
19. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 19/48
IAAS
OpenStack
Eucalptus
CloudStack
Or, roll your own
20. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 20/48
21. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 21/48
OPEN PAAS
OpenShift
Cloud Foundry
Built around Containers
22. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 22/48
TRIUMPH OF THE OPEN CLOUD
When "Big Cloud" fails you, you can always decide to host
your own
23. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 23/48
TINYTINYRSS
Reusable, Redeployable code - host it anywhere
https://github.com/openshift-quickstart/tiny_tiny_rss-
openshift-quickstart
rhc app create rss php-5 postgresql-9 cron-1.4 --from-code=https:/
/github.com/openshift-quickstart/tiny_tiny_rss-openshift-quickstar
t.git
https://rss-shifter.rhcloud.com/
24. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 24/48
ADDING POSTGRES TO EXISTING APPLICATIONS:
done!
rhc cartridge add postgres-8.4
rhc cartridge add postgres-9.2
blog post: PostgreSQL 9.2 Comes to OpenShift
25. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 25/48
Or, while connected over ssh:
rhc app show rss
env | grep DB
OPENSHIFT_POSTGRESQL_DB_PASSWORD=lXcFVx4hIZgR
OPENSHIFT_POSTGRESQL_DB_SOCKET=/var/lib/openshift/523672f7e0b8cd02
d70003bc/postgresql/socket/
OPENSHIFT_POSTGRESQL_DB_HOST=127.7.8.130
OPENSHIFT_POSTGRESQL_DB_PID=/var/lib/openshift/523672f7e0b8cd02d70
003bc/postgresql/pid/postgres.pid
OPENSHIFT_POSTGRESQL_DB_USERNAME=adminpahue6e
OPENSHIFT_POSTGRESQL_DB_URL=postgresql://adminpahue6e:lXcFVx4hIZgR
@127.7.8.130:5432
OPENSHIFT_POSTGRESQL_DB_PORT=5432
OPENSHIFT_POSTGRESQL_DB_LOG_DIR=/var/lib/openshift/523672f7e0b8cd0
2d70003bc/postgresql/log/
26. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 26/48
TERMINOLOGY (RED HAT)
Broker – Management host, orchestration of Nodes
Node – Compute host containing Gears
Gear – Allocation of fixed memory, compute, and
storage resources for running applications
Cartridge – A technology/framework (Python, Ruby,
Javascript, PHP, Perl, Java/JEE, PG, MySQL, etc.) for
application service dependencies
27. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 27/48
GEARS: SECURE AND EFFICIENT
,SELinux Cgroups
28. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 28/48
AN OPEN CARTRIDGE FORMAT
cart developer's guide
29. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 29/48
30. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 30/48
OPEN, AND WORKING IN THE UPSTREAM
31. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 31/48
WRITING APPS FOR THE OPEN CLOUD
32. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 32/48
TODO APP
(FLASK AND SQLALCHEMY)
https://github.com/shekhargulati/todo-flask-openshift-
quickstart
blog post: Build Your App on OpenShift Using Flask,
SQLAlchemy, and PostgreSQL 9.2
33. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 33/48
rhc app create -s task python-2.7 postgresql-9.2 --from-code=https
://github.com/shekhargulati/todo-flask-openshift-quickstart.git
http://task-shifter.rhcloud.com/
34. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 34/48
OPENSHIFT SCALING HOOKS
Setting a min and max scale from the command line
rhc cartridge-scale python-2.7 -a task --min 3 --max 5
35. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 35/48
SCALING WEB UI
36. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 36/48
HAPROXY SCALING HOOKS
Adding and removing instances / scaling up and down
HAProxy on / off switches
These hooks are available on the command line within
your gear, and via a REST API
haproxy_ctld --up
haproxy_ctld --down
haproxy_ctld_daemon start
haproxy_ctld_daemon stop
haproxy_ctld_daemon restart
37. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 37/48
HAPROXY WEB UI
http://$YOUR_APP_DNS/haproxy-status/
HAPROXY RAW DATA
http://$YOUR_APP_DNS/haproxy-status/;csv
38. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 38/48
LIVING IN THE CLOUDS
Code for America
39. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 39/48
ADOPT A CAUSE
This app should be using PostGIS for spatial queries:
https://github.com/openshift-quickstart/adopt-a-
hydrant-openshift-quickstart
blog post: More Spatial in Your Database with PostGIS
2.0
40. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 40/48
Persist configuration details,
while keeping your source clean:
rhc app create hydrant ruby-1.9 postgresql-8.4 --from=code=http://
github.com/ryanj/adopt-a-hydrant.git --env SECRET_TOKEN="YOUR_SECR
ET_TOKEN"
http://hydrant-shifter.rhcloud.com/
41. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 41/48
ENVIRONMENT VARIABLES
Listing your custom env vars:
Setting a variable:
Help with configuration:
cd hydrant
rhc env list
rhc env set SECRET_TOKEN="a1fdacc3b1d14d6a92ed1219ed304d02529f5350
85262a90c39f072ef6de0ee9fe3a3d0194f02a2a8eb3"
rhc help env
42. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 42/48
DEPENDENCIES
Automatic support for dependency resolution using
standard packaging, native to each language:
(ruby), (python), and (node.js)gems eggs npm modules
43. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 43/48
ACTION HOOKS
1. enable postgis
2. bootstrap your db
https://github.com/ryanj/pg_parks/tree/master/.openshift/action_ho
44. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 44/48
BANNERS?
http://citibike-shifter.rhcloud.com/
rhc env set CITIBIKE_NEARBY_STATIONS="268,257,258" -a citibikes
45. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 45/48
DISTRIBUTED MULTI-CLOUD FEDERATED APPLICATIONS
46. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 46/48
JOIN THE COMMUNITY
Meritocracy for our pull requests
Help with anything from core, quickstarts, and
cartridges, to small typo fixes in the command line tools
PEPs for major feature enhancements
Contribution Guidelines
Public Trello cards
Public Test plans
Public Bugzilla
Vote on Features
47. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 47/48
Check out the upstream source:
Try our hosted solution (3 apps free):
Request an evaluation for:
OpenShift Origin
OpenShift Online
OpenShift Enterprise
48. 9/21/13 Writing portable postgreSQL-backed applications for the Open Cloud
ryanjarvinen.com/presentations/pg_open_cloud/#/ 48/48
Thanks for following along! --ryanj
slides: http://bit.ly/1eddml6