DevOps (Why, What and How) - Arab web summit 2016
-
Upload
ahmed-fawzy -
Category
Software
-
view
400 -
download
2
Transcript of DevOps (Why, What and How) - Arab web summit 2016
http://ahmedfawzy.com
DevOpsWhy, What and How
1
(development and operations)
http://ahmedfawzy.com
Ahmed FawzyLead software engineer @ MIMVhttp://ahmedfawzy.com
2
Working in Software development since 2005
http://ahmedfawzy.com 4
Dev Ops
Add Juri infrastructure pictures and how process is going
and describe every thing like production server
and verify preprod server right naming
Dev Team Ops Team
http://ahmedfawzy.com 5
http://ahmedfawzy.com 6
Dev Ops
Add Juri infrastructure pictures and how process is going
and describe every thing like production server
and verify preprod server right naming
Dev Team Ops Team
StabilityMore features quicker
Why?
http://ahmedfawzy.com
DevOps - Definition
Is a culture, movement or practice that emphasizes the collaboration and communication of both Software Developers and other Information-
Technology professionals while automating the process of software delivery and infrastructure
changes
8
What?
http://ahmedfawzy.com
DevOps Practices• Infrastructure as Code (IaC).
• Monitoring Application Performance & Availability (APM).
• Continuous Integration (CI).
• Continuous Deployment and Release Management (CD).
• AND MORE !
10
http://www.itproguy.com/devops-practices/
How?
http://ahmedfawzy.com
Infrastructure as Code (IaC)
11
FROM eboraas/apache-php
RUN apt-get update && apt-get -y install git curl php5-mcrypt php5-json && apt-get -y autoremove && apt-get clean && rm -rf /var/lib/apt/lists/*
RUN /usr/sbin/a2enmod rewrite
ADD 000-laravel.conf /etc/apache2/sites-available/ADD 001-laravel-ssl.conf /etc/apache2/sites-available/RUN /usr/sbin/a2dissite '*' && /usr/sbin/a2ensite 000-laravel 001-laravel-ssl
RUN /usr/bin/curl -sS https://getcomposer.org/installer |/usr/bin/phpRUN /bin/mv composer.phar /usr/local/bin/composerRUN /usr/local/bin/composer create-project laravel/laravel /var/www/laravel --prefer-distRUN /bin/chown www-data:www-data -R /var/www/laravel/storage /var/www/laravel/bootstrap/cache
EXPOSE 80EXPOSE 443
CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
http://ahmedfawzy.com
Monitoring Application Performance & Availability (APM)
• URL Pings and web tests from different location.
• Observe user behavior.
• Application insights.
• Application behavior (slow queries, response time, exceptions, logs,…).
• Infrastructure performance 12
http://ahmedfawzy.com
• Source control.
• Code check.
• Automated testing.
Continuous Integration (CI)
13
http://ahmedfawzy.com 15
https://puppet.com/resources/white-paper/2016-state-of-devops-report
25,000 technical professionals over the past five years.
This year we surveyed more than 4,600 technical professionals.
http://ahmedfawzy.com
• http://devops.com
• http://www.itproguy.com
• https://newrelic.com/devops/toolset
16
http://ahmedfawzy.com
Ahmed FawzyLead software engineer @ MIMVhttp://ahmedfawzy.com
17
Working in Software development since 2005