PuppetConf 2016: Avoiding Toxic Technical Debt Derivatives – R. Tyler Croy, CloudBees, Inc

Preview:

Citation preview

Avoiding Toxic Tech Debt

Sad Stories By R Tyler Croy

Welcome to the future

Welcome to the future

You're an ops now

You will need independent

infrastructure

Choosing tools

Choosing tools

Tech debt

Tech debt

Tech debt

Automation

Automation

Automation

Security

Managing secrets

Managing secrets

- Certificates

- Signing keys

- API keys / tokens

Managing secrets

- Certificates

- Signing keys

- API keys / tokens

Access control

Access Control

- GitHub Organization

- LDAP

- Artifactory

- Jenkins Matrix Authorization

- SSH keys

Access Control

- *GitHub Organization*

- LDAP

- Artifactory

- Jenkins Matrix Authorization

- SSH keys

Access Control

- GitHub Organization

- *LDAP*

- Artifactory

- Jenkins Matrix Authorization

- SSH keys

Access Control

- GitHub Organization

- LDAP

- *Artifactory*

- Jenkins Matrix Authorization

- SSH keys

Access Control

- GitHub Organization

- LDAP

- Artifactory

- *Jenkins Matrix Authorization*

- SSH keys

Access Control

- GitHub Organization

- LDAP

- Artifactory

- Jenkins Matrix Authorization

- *SSH keys*

Service balkanization

Service balkanization

- Virtual machines

- Jails/chroot

- Containers

Service balkanization

- *Virtual machines*

- Jails/chroot

- Containers

Service balkanization

- Virtual machines

- *Jails/chroot*

- Containers

Service balkanization

- Virtual machines

- Jails/chroot

- *Containers*

Security Lifecycle

Security Lifecycle

- Security advisory lists

- Automation => Easier upgrades

- Don't be dumb

Security Lifecycle

- *Security advisory lists*

- Automation => Easier upgrades

- Don't be dumb

Security Lifecycle

- Security advisory lists

- *Automation => Easier upgrades*

- Don't be dumb

Security Lifecycle

- Security advisory lists

- Automation => Easier upgrades

- *Don't be dumb*

Security

Security

Manual work

"Automatingthis

is hard"

"Automating this is hard"

- Difficult services

- Custom packaging

- Monitoring

"Automating this is hard"

- *Difficult services*

- Custom packaging

- Monitoring

"Automating this is hard"

- Difficult services

- *Custom packaging*

- Monitoring

"Automating this is hard"

- Difficult services

- Custom packaging

- *Monitoring*

Incident response

Incident response

- Application problems

- Resource exhaustion

- Cache issues

- Insufficient file descriptors

- Log rotation

Incident response

- *Application problems*

- Resource exhaustion

- Cache issues

- Insufficient file descriptors

- Log rotation

Incident response

- Application problems

- *Resource exhaustion*

- Cache issues

- Insufficient file descriptors

- Log rotation

Incident response

- Application problems

- Resource exhaustion

- *Cache issues*

- Insufficient file descriptors

- Log rotation

Incident response

- Application problems

- Resource exhaustion

- Cache issues

- *Insufficient file descriptors*

- Log rotation

Incident response

- Application problems

- Resource exhaustion

- Cache issues

- Insufficient file descriptors

- *Log rotation*

Laziness

Laziness

Manual work

Manual work

Derployment

Derployment

- Document deployment processes

- Continuous delivery saves time

Derployment

- *Document deployment processes*

- Continuous delivery saves time

Derployment

- Document deployment processes

- *Continuous delivery saves time*

Derployment

Good luck

Good luck

Go automate