SlideShare a Scribd company logo
Central VA AWS UG
Jenkins in AWS
1 7 F E B R U A R Y 2 0 1 6
2
Agenda
Tonight’s AWS Architecture
Installation Options
Jenkins Overview
Security Options
Plugins
EC2 Integration (Roles, Users, Policies)
3
Jenkins Overview
“Jenkins is an open source continuous integration tool written in Java. The project was forked from
Hudson after a dispute with Oracle.
Jenkins provides continuous integration services for software development. It is a server-based
system running in a servlet container such as Apache Tomcat.” -
https://en.wikipedia.org/wiki/Jenkins_(software)
Easy Integration
900+ Plugins
Easy Installation
Customization
4
Tonight’s Architecture
5
Tonight’s Architecture
6
Tonight’s Architecture
7
Jenkins Installation Options
LTS Version*
Java, Git, Maven
Yum (AWS 64bt Linux AMI) or AWS Marketplace (Bitnami Jenkins on Ubuntu)
8
Groovy Startup Script
Performs post initialization tasks
Jenkins.properties/init.groovy in $JENKINS_HOME
9
Jenkins Plugins
Plugins are the key to enhancing Jenkins functionality, usability, and interoperability. Most plugins are
OSS.
Cloudbees - https://www.cloudbees.com/products/cloudbees-jenkins-platform/enterprise-
edition/features
Some are better supported than others.
Integration
900+
Customization
10
Jenkins Security
Authorization
Test with Mock Realm
Realms (test with Mock Realm)
Combine with AWS Shared Responsibility Model
11
EC2 Plugin
Easy to use EC2 IAM Roles
EC2 instances and IAM Roles (Don’t use *s)
Starting and managing slaves, to achieve dynamic horizontal scaling across the AWS cloud.
Setup AWS CLI as Jenkins user (sudo su -s /bin/bash jenkins, aws configure)
Demo
12
CodeDeploy Setup
IAM Users, Groups, Roles, Policies, Trust Relationships (resources that can assume the role)
AWS CodeDeploy Plugin
Deployment target EC2 instances run codedeploy-agent, and use IAM Role
Code deployment agent will run on deployment targets
Setup S3 bucket for Jenkins Code Deployment Plugin
13
CodeCommit Setup
Create IAM user, with groups and permissions (polices).
Use as Git repository.
Deployment target EC2 instances run codedeploy-agent, and use IAM Role
Use aws-cli that supports CodeCommit and Credential Helper commands.
Disable OSX Keychain Access Utility (Code Commit 15 minute password expiration)
14
Syncing Jenkins Config to AWS Code Commit
SCM Sync Config shared additionnal includes
SCM Sync configuration plugin
15
AWS CodePipeline
Visualization of CD stages
CD Service
Requires role with appropriate CodePipeline policies
Requires S3 bucket versioning enabled.
Can be integrated with remote Jenkins via AWS CodePipeline Plugin
16
Questions?
THANK
YOU.

More Related Content

What's hot (16)

PDF
Webinar: Continuous Deployment with MongoDB at Kitchensurfing
MongoDB
 
DOCX
Build Your Own SaaS using Docker
Julien Barbier
 
PPTX
DevOps, Microservices, and Azure Container Service
David Tesar
 
PPTX
ASP.NET Core deployment options
Ken Cenerelli
 
PDF
Zombies in Kubernetes
Thomas Fricke
 
PPT
Docker swarm
Gourav Varma
 
PDF
Azure ARM Template
DevOps Indonesia
 
PPTX
Amazon Web Services for the .NET Developer
Rob Gillen
 
PDF
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...
Edureka!
 
PPTX
Developer South Coast 2018: Docker on Windows - The Beginner's Guide
Elton Stoneman
 
PPTX
How Docker simplifies CI/CD
Gabriel N. Schenker
 
PDF
Drone Continuous Integration
Daniel Cerecedo
 
PDF
Automated-Testing-inside-containers
Manoj Kumar Kumar
 
PPTX
Power of Azure Devops
Azure Riyadh User Group
 
PDF
DCSF 19 Building Your Development Pipeline
Docker, Inc.
 
PPTX
CI/CD on AWS
Bhargav Amin
 
Webinar: Continuous Deployment with MongoDB at Kitchensurfing
MongoDB
 
Build Your Own SaaS using Docker
Julien Barbier
 
DevOps, Microservices, and Azure Container Service
David Tesar
 
ASP.NET Core deployment options
Ken Cenerelli
 
Zombies in Kubernetes
Thomas Fricke
 
Docker swarm
Gourav Varma
 
Azure ARM Template
DevOps Indonesia
 
Amazon Web Services for the .NET Developer
Rob Gillen
 
Docker Explained | What Is A Docker Container? | Docker Simplified | Docker T...
Edureka!
 
Developer South Coast 2018: Docker on Windows - The Beginner's Guide
Elton Stoneman
 
How Docker simplifies CI/CD
Gabriel N. Schenker
 
Drone Continuous Integration
Daniel Cerecedo
 
Automated-Testing-inside-containers
Manoj Kumar Kumar
 
Power of Azure Devops
Azure Riyadh User Group
 
DCSF 19 Building Your Development Pipeline
Docker, Inc.
 
CI/CD on AWS
Bhargav Amin
 

Similar to Jenkins and AWS DevOps Tools (20)

PDF
Different methods for aws integration with jenkins
Tarek Ali
 
PPTX
Building the Test Automation Framework - Jenkins for Testers
William Echlin
 
PDF
DevOps World | Jenkins World 2018 and The Future of Jenkins
Nigel Charman
 
PPTX
Introduction to jenkins
Abe Diaz
 
PDF
Building and Deploying a Static Application using Jenkins and Docker in AWS
ijtsrd
 
PDF
Pipeline as Code Continuous Delivery with Jenkins Kubernetes and Terraform 1s...
naveencwana55
 
PDF
Continuous Integration using Jenkins with Python
Inexture Solutions
 
PDF
Jenkins-Resource un documennt ingénierie.pdf
templatehtmlcssjss
 
PPTX
CICD with Jenkins
MoogleLabs default
 
PDF
Enabling Devops using Jenkins
Patrick Hynes
 
PPTX
Docker and Jenkins [as code]
Mark Waite
 
PDF
Jenkins vs. AWS CodePipeline (AWS User Group Berlin)
Steffen Gebert
 
PDF
Jenkins vs. AWS CodePipeline
Steffen Gebert
 
PDF
Who *is* Jenkins?
Andrew Bayer
 
PPTX
SD DevOps Meet-up - Jenkins 2.0 and Pipeline-as-Code
Brian Dawson
 
PPTX
DevOps-CI_CD_JAVA_JAVA______Jenkins.pptx
ajaysahu931430
 
PPTX
Build and deployment with Jenkins and Code Deploy on AWS
mitesh_sharma
 
PPTX
Jenkins user conference 2011
Kohsuke Kawaguchi
 
PDF
Aws project jenkins-build-server
saifam
 
PPTX
Continuous integration jenkins-installation in ec2 instace linux
Maheshnagakumar Tokala
 
Different methods for aws integration with jenkins
Tarek Ali
 
Building the Test Automation Framework - Jenkins for Testers
William Echlin
 
DevOps World | Jenkins World 2018 and The Future of Jenkins
Nigel Charman
 
Introduction to jenkins
Abe Diaz
 
Building and Deploying a Static Application using Jenkins and Docker in AWS
ijtsrd
 
Pipeline as Code Continuous Delivery with Jenkins Kubernetes and Terraform 1s...
naveencwana55
 
Continuous Integration using Jenkins with Python
Inexture Solutions
 
Jenkins-Resource un documennt ingénierie.pdf
templatehtmlcssjss
 
CICD with Jenkins
MoogleLabs default
 
Enabling Devops using Jenkins
Patrick Hynes
 
Docker and Jenkins [as code]
Mark Waite
 
Jenkins vs. AWS CodePipeline (AWS User Group Berlin)
Steffen Gebert
 
Jenkins vs. AWS CodePipeline
Steffen Gebert
 
Who *is* Jenkins?
Andrew Bayer
 
SD DevOps Meet-up - Jenkins 2.0 and Pipeline-as-Code
Brian Dawson
 
DevOps-CI_CD_JAVA_JAVA______Jenkins.pptx
ajaysahu931430
 
Build and deployment with Jenkins and Code Deploy on AWS
mitesh_sharma
 
Jenkins user conference 2011
Kohsuke Kawaguchi
 
Aws project jenkins-build-server
saifam
 
Continuous integration jenkins-installation in ec2 instace linux
Maheshnagakumar Tokala
 
Ad

Recently uploaded (20)

PDF
New Download FL Studio Crack Full Version [Latest 2025]
imang66g
 
PPTX
Role Of Python In Programing Language.pptx
jaykoshti048
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PPTX
Employee salary prediction using Machine learning Project template.ppt
bhanuk27082004
 
PDF
SAP GUI Installation Guide for macOS (iOS) | Connect to SAP Systems on Mac
SAP Vista, an A L T Z E N Company
 
PDF
Virtual Threads in Java: A New Dimension of Scalability and Performance
Tier1 app
 
PPTX
Presentation about variables and constant.pptx
kr2589474
 
PPTX
Presentation about Database and Database Administrator
abhishekchauhan86963
 
PPT
Brief History of Python by Learning Python in three hours
adanechb21
 
PDF
Protecting the Digital World Cyber Securit
dnthakkar16
 
PDF
AI Image Enhancer: Revolutionizing Visual Quality”
docmasoom
 
PDF
Why Are More Businesses Choosing Partners Over Freelancers for Salesforce.pdf
Cymetrix Software
 
PDF
Download iTop VPN Free 6.1.0.5882 Crack Full Activated Pre Latest 2025
imang66g
 
PPTX
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
PDF
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
PDF
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
PPTX
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
PDF
How to Download and Install ADT (ABAP Development Tools) for Eclipse IDE | SA...
SAP Vista, an A L T Z E N Company
 
PDF
SAP GUI Installation Guide for Windows | Step-by-Step Setup for SAP Access
SAP Vista, an A L T Z E N Company
 
PDF
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
New Download FL Studio Crack Full Version [Latest 2025]
imang66g
 
Role Of Python In Programing Language.pptx
jaykoshti048
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
Employee salary prediction using Machine learning Project template.ppt
bhanuk27082004
 
SAP GUI Installation Guide for macOS (iOS) | Connect to SAP Systems on Mac
SAP Vista, an A L T Z E N Company
 
Virtual Threads in Java: A New Dimension of Scalability and Performance
Tier1 app
 
Presentation about variables and constant.pptx
kr2589474
 
Presentation about Database and Database Administrator
abhishekchauhan86963
 
Brief History of Python by Learning Python in three hours
adanechb21
 
Protecting the Digital World Cyber Securit
dnthakkar16
 
AI Image Enhancer: Revolutionizing Visual Quality”
docmasoom
 
Why Are More Businesses Choosing Partners Over Freelancers for Salesforce.pdf
Cymetrix Software
 
Download iTop VPN Free 6.1.0.5882 Crack Full Activated Pre Latest 2025
imang66g
 
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
How to Download and Install ADT (ABAP Development Tools) for Eclipse IDE | SA...
SAP Vista, an A L T Z E N Company
 
SAP GUI Installation Guide for Windows | Step-by-Step Setup for SAP Access
SAP Vista, an A L T Z E N Company
 
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
Ad

Jenkins and AWS DevOps Tools

  • 1. Central VA AWS UG Jenkins in AWS 1 7 F E B R U A R Y 2 0 1 6
  • 2. 2 Agenda Tonight’s AWS Architecture Installation Options Jenkins Overview Security Options Plugins EC2 Integration (Roles, Users, Policies)
  • 3. 3 Jenkins Overview “Jenkins is an open source continuous integration tool written in Java. The project was forked from Hudson after a dispute with Oracle. Jenkins provides continuous integration services for software development. It is a server-based system running in a servlet container such as Apache Tomcat.” - https://en.wikipedia.org/wiki/Jenkins_(software) Easy Integration 900+ Plugins Easy Installation Customization
  • 7. 7 Jenkins Installation Options LTS Version* Java, Git, Maven Yum (AWS 64bt Linux AMI) or AWS Marketplace (Bitnami Jenkins on Ubuntu)
  • 8. 8 Groovy Startup Script Performs post initialization tasks Jenkins.properties/init.groovy in $JENKINS_HOME
  • 9. 9 Jenkins Plugins Plugins are the key to enhancing Jenkins functionality, usability, and interoperability. Most plugins are OSS. Cloudbees - https://www.cloudbees.com/products/cloudbees-jenkins-platform/enterprise- edition/features Some are better supported than others. Integration 900+ Customization
  • 10. 10 Jenkins Security Authorization Test with Mock Realm Realms (test with Mock Realm) Combine with AWS Shared Responsibility Model
  • 11. 11 EC2 Plugin Easy to use EC2 IAM Roles EC2 instances and IAM Roles (Don’t use *s) Starting and managing slaves, to achieve dynamic horizontal scaling across the AWS cloud. Setup AWS CLI as Jenkins user (sudo su -s /bin/bash jenkins, aws configure) Demo
  • 12. 12 CodeDeploy Setup IAM Users, Groups, Roles, Policies, Trust Relationships (resources that can assume the role) AWS CodeDeploy Plugin Deployment target EC2 instances run codedeploy-agent, and use IAM Role Code deployment agent will run on deployment targets Setup S3 bucket for Jenkins Code Deployment Plugin
  • 13. 13 CodeCommit Setup Create IAM user, with groups and permissions (polices). Use as Git repository. Deployment target EC2 instances run codedeploy-agent, and use IAM Role Use aws-cli that supports CodeCommit and Credential Helper commands. Disable OSX Keychain Access Utility (Code Commit 15 minute password expiration)
  • 14. 14 Syncing Jenkins Config to AWS Code Commit SCM Sync Config shared additionnal includes SCM Sync configuration plugin
  • 15. 15 AWS CodePipeline Visualization of CD stages CD Service Requires role with appropriate CodePipeline policies Requires S3 bucket versioning enabled. Can be integrated with remote Jenkins via AWS CodePipeline Plugin

Editor's Notes

  • #11: Set <useSecurity> element to false to disable security settings.
  • #12: Labels – control where builds execute. Choose whether for not to use auto-install options for Java/Maven or use AWS AMIs to pre-configure slaves.
  • #13: YAML appsepc.yml Similar to Travis CI Control app configuration at the project level. http://docs.aws.amazon.com/codedeploy/latest/userguide/app-spec-ref.html
  • #14: http://stackshare.io/stackups/github-vs-gogs-vs-aws-codecommit
  • #16: Allows multiple stages and actions to be configured. Issues: Jenkins jobs names does not support nesting in folders. No way to stop long running pipeline without deleting pipeline.