160 likes | 332 Views
Oklahoma Information Technology Mentorship Program. A Day in the Life of a Systems Administrator. So you want to be a sysadmin? Presented by: Austin Grice and Gayathri Swaminathan. $ whois austin. Call center survivor Call center supervisor Junior systems administrator Systems Engineer
E N D
Oklahoma Information Technology Mentorship Program A Day in the Life of a Systems Administrator So you want to be a sysadmin? Presented by: Austin Grice and Gayathri Swaminathan
$whoisaustin • Call center survivor • Call center supervisor • Junior systems administrator • Systems Engineer • Tinkering with Linux since 2003 • Worked in Linux professionally since 2010 • Implemented ERPs since 2010 • But I still use a Mac for my daily driver
$whois gayathri • Programmer Analyst • Junior systems administrator • Remote applications engineer • Systems Engineer • worked in Unix/Linux since 2002 • performed large scale deployments since 2004 • implemented ERPs since 2008
What is a sysadmin? System users Applications DBA Storage Operations Systems Engineer Network Security Analysts Developers Image credit:http://personalpages.manchester.ac.uk/staff/m.dodge/
$whereis problem Image credit:Prologue Films VFX for Marvel Studios
$grep clues • Large infrastructure tied to service(s) • Constant refresh projects • Inconsistent or specific configurations • Tough to measure and metric • Tough to scale • No hope for automation • How do you document mammoth architectures of different types? • Instant large learning curve for new hires
$find solutions Adjust the perspectives! Credit:http://www.hubblesite.org/
$diff solution1 solution2 solution3... - Monitor monitor monitor - System profiling - Isolated test environment • Figure initial requirements • Record behaviors • Analyze metrics and identify the useful ones • Develop architecture • Narrow design constraints • Benchmark • Load and regression tests - A great place to get your teams to collaborate!
10 Model system Standard host profiles Hypervisor + OS Standard storage profile Standard network profile Standard system profile Standard metrics and monitors Credit: http://www.flickr.com/photos/jonfisher/465778825/sizes/z/in/photostream/
Iterative life cycle Gather requirements Profile system Dependencies Define metrics Discuss placement of Security controls Collect system behaviors Expect non-predictable behaviors Start communications on integrations Initiate conversations on external interfaces
Tool chest • A terminal and shell of your choice (bash/zsh) • Vim text editor (or EMACS) • A local hyper visor (VMWare View, VirtualBox) • An IRC client (for help from fellow sys admins) • Wiki for sharing docs and knowledge • An ssh bastion host for getting around • Wireshark for finding that pesky packet • GOOGLE! Someone has had the problem before
Now we have been introduced... A few questions to you! - How many of you can play a musical instrument? - Do you keep a log of number of lines of code you have written? - Who uses your code? - Who could use your code? - Raise your hand if you ever thought, I could write software for that! - How many of you use Linux? - How many of you use Unix/Linux? - How many of you have been in white board sessions with your professor or classmates?
The Unix Philosophy • Small is beautiful. • Make each program do one thing well. • Build a prototype as soon as possible. • Choose portability over efficiency. • Store numerical data in flat ASCII files. • Use software leverage to your advantage. • Use shell scripts to increase leverage and portability. • Avoid captive user interfaces. • Make every program a filter. Credit: Mike Gancarz Also refer: Notes of programming in C - Rob Pike - http://www.lysator.liu.se/c/pikestyle.html