LACHLAN DALLY • SENIOR SUPPORT ENGINEER • ATLASSIAN • @LACHED Scaling Without Expanding: A DevOps Story
LACHLAN DALLY • SENIOR SUPPORT ENGINEER • ATLASSIAN • @LACHED
Scaling Without Expanding: A DevOps Story
Automation
ChatOpsTracking
Support
The heart Of DevOps
Build Your Command Centre
Create an Army of Sentinels
Protect Your Project Work
MandateBuild and maintain the platform required by Atlasssian’s developers to build, test and release their products
Build Engineering’s
Automation
ChatOpsTracking
Support
The heart Of DevOps
Build Your Command Centre
Create an Army of Sentinels
Protect Your Project Work
Installing new infrastructure
Configuring your servers
Deploying a new release
Stuff you actually want to get done
file { ‘/etc/cron.daily/clean_m2_local': source => ‘puppet:///modules/bamboo_agent_support_maven /etc/cron.daily/clean_m2_local', owner => 'root', group => 'root', mode => '0755', }
Configuration as Code
ldally@ip-172-30-97-250:~$ ls -la /etc/cron.daily/clean_m2_local -rwxr-xr-x 1 root root 352 Sep 18 00:38 /etc/cron.daily/clean_m2_local
full bleed image - measuring something (olympics)? - science?
Test
Virtualization and Behavioural Testing
Spin up an instance
Apply your configuration management and deploy your app
Run your tests
The Testing Process
Spin up an exact mirror of your server
~/s/buildeng-puppet ❯❯❯ vagrant status
Current machine states:
aptly not created (aws)
consul not created (aws)
bambooagent not created (aws)
bambooserver running (aws)
efs not created (aws)
bambooserver_rds not created (aws)
dns not created (aws)
basebox not created (aws)
gnomes not created (aws)
status not created (aws)
graphite not created (aws)
full bleed image - shipping crates? - military drop from plane? - ice road trucker?
Configuring Hardware
Infrastructure as Code
# Create an instance for our JIRA server resource "aws_instance" “fried_fritter_jira” { instance_type = "m4.2xlarge" ami = "ami-dfb0e7b5" disable_api_termination = "true" ebs_optimized = "true" subnet_id = “${aws_subnet.ff_us_east_1b.id}” vpc_security_group_ids = [ “${aws_security_group.fried_fritter_jira.id}” ] provider = "aws.{{ vpc.provider }}"}
Infrastructure as Code
Automation
ChatOpsTracking
Support
The Heart Of DevOps
Build Your Command Centre
Create an Army of Sentinels
Protect Your Project Work
…software and IT teams evolved from email to chat. They also replaced repetitive tasks with automation, and replaced annual change control meetings with devops’ continuous collaboration. And they pulled it all together into a central tool like HipChat.S E A N R E G A N , H I P C H AT E VA N G E L I S T, AT L A S S I A N
“
”
Automation
ChatOpsTracking
Support
The Heart Of DevOps
Build Your Command Centre
Create an Army of Sentinels
Protect Your Project Work
Maven - Usage
External
Bamboo - Usage
Other
Agents - Capability Request
0 12.5 25 37.5 50
Contact Analysis
Automation
ChatOpsTracking
Support
The Heart Of DevOps
Build Your Command Centre
Create an Army of Sentinels
Protect Your Project Work
MaintenanceShields Development / Operations
HipChat
ConfluenceQuestions
ServiceDesk
“Shields”
Infrastructure specialists
Development specialists
MonitoringHostingDeployment
Configuration Testing Dependency Analytics + Security
Something for everybody
Automation
ChatOpsTracking
Support
The Heart Of DevOps
Build Your Command Centre
Create an Army of Sentinels
Protect Your Project Work
Factorio Splash - https://www.factorio.com/
Lego Splash - https://pixabay.com/en/lego-blocks-bricks-toy-game-252602/
Rulers Splash - https://pixabay.com/en/measure-yardstick-tape-ruler-1509707/
Rocket Launch Splash - https://pixabay.com/en/rocket-launch-rocket-take-off-nasa-67646/
Command Centre Splash - https://en.wikipedia.org/wiki/BM%26F_Bovespa
Forest Splash - https://commons.wikimedia.org/wiki/File:England_-
_English_Summer_Forest_(7183018142).jpg
Citations