SlideShare una empresa de Scribd logo
1 de 8
Asset	
  and	
  Configura/on
          Tracking:
   the	
  most	
  boring	
  topic	
  in	
  the	
  Universe

                Greg	
  Lindahl
                CTO,	
  blekko
The	
  problem(s)

• 100s	
  of	
  servers,	
  1000s	
  of	
  disks,	
  100s	
  of	
  desktops,
  100s	
  of	
  laptops
• Some	
  of	
  the	
  servers	
  are	
  leased.	
  Disks	
  move	
  around
  constantly.	
  Your	
  financial	
  people	
  want	
  to	
  do	
  an
  audit.	
  Your	
  startup	
  finally	
  is	
  old	
  enough	
  to	
  need	
  asset
  tags.	
  blah	
  blah	
  blah…
• How	
  many	
  hosts	
  got	
  that	
  new	
  kernel,	
  and	
  when?
  What	
  soOware	
  is	
  installed	
  on	
  that	
  host	
  that’s	
  down?
  What’s	
  the	
  up/me	
  history	
  of	
  the	
  en/re	
  cluster?
• Did	
  my	
  integrator	
  screw	
  up	
  and	
  return	
  broken	
  parts
  instead	
  of	
  sending	
  them	
  for	
  repair?
                                                                     1/3
System	
  requirements

• Based	
  on	
  tools	
  I	
  already	
  have
• Dead	
  simple
• Support	
  date	
  searches,	
  showing	
  when	
  a	
  string
  appears	
  and	
  disappears	
  from	
  the	
  database

• I	
  know	
  what	
  you’re	
  thinking…	
  I	
  mean
  something	
  simpler	
  than	
  that.
Global	
  part

• DVCS	
  -­‐-­‐	
  mercurial,	
  in	
  my	
  case
• Collect	
  text	
  files	
  for	
  every	
  host	
  in	
  a	
  separate
  directory
• Check	
  in	
  files	
  daily
• hg	
  log	
  -­‐p	
  to	
  see	
  changes,	
  global	
  or	
  per-­‐host
• hg	
  grep	
  -­‐-­‐all	
  -­‐f	
  -­‐d	
  6QG06ZQN
• (put	
  the	
  repo	
  on	
  an	
  SSD…)

                                                                 1/3
Local	
  part:	
  every	
  server
• Create	
  a	
  script	
  to	
  generate	
  text	
  files
  containing:
    – MAC	
  addrs,	
  running	
  kernel	
  version,	
  rpms	
  installed,
      disk	
  serial	
  #s,	
  dmidecode,	
  installed	
  sysctl,	
  installed
      firewall	
  config,	
  ipmi	
  info,	
  vendor	
  info
      (hpdiscovery)
• Important:	
  these	
  files	
  should	
  only	
  change	
  if
  there’s	
  a	
  change.	
  Don’t	
  store	
  up/me,	
  store
  the	
  boot	
  /me.
• Commit	
  these	
  files	
  locally
                                                                1/3
Tie	
  them	
  together

• Copy	
  the	
  local	
  files	
  to	
  a	
  central	
  server,	
  check
  in	
  there.	
  Push	
  to	
  several	
  backup	
  repos.

• See,	
  now	
  isn’t	
  this	
  simpler	
  than	
  what	
  you
  were	
  thinking?	
  NoSQL.
What	
  about	
  laptops?

•   Macs	
  are	
  Unix,	
  done.
•   mercurial	
  runs	
  under	
  Windoze,	
  too
•   They	
  need	
  their	
  own	
  data	
  collectors.
•   The	
  only	
  trick	
  is	
  delivering	
  files	
  to	
  the
    mothership	
  on	
  a	
  regular	
  basis.




                                                                    1/2
slash	
  the	
  web!

            • yes,	
  we’re	
  hiring
    • vote	
  for	
  us	
  in	
  the	
  Crunchies
• check	
  out:	
  /linux,	
  /python,	
  /ruby,	
  /…

Más contenido relacionado

Más de Chris Westin

Ambari hadoop-ops-meetup-2013-09-19.final
Ambari hadoop-ops-meetup-2013-09-19.finalAmbari hadoop-ops-meetup-2013-09-19.final
Ambari hadoop-ops-meetup-2013-09-19.finalChris Westin
 
Cluster management and automation with cloudera manager
Cluster management and automation with cloudera managerCluster management and automation with cloudera manager
Cluster management and automation with cloudera managerChris Westin
 
Building low latency java applications with ehcache
Building low latency java applications with ehcacheBuilding low latency java applications with ehcache
Building low latency java applications with ehcacheChris Westin
 
SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspeChris Westin
 
cfengine3 at #lspe
cfengine3 at #lspecfengine3 at #lspe
cfengine3 at #lspeChris Westin
 
mongodb-aggregation-may-2012
mongodb-aggregation-may-2012mongodb-aggregation-may-2012
mongodb-aggregation-may-2012Chris Westin
 
Nimbula lspe-2012-04-19
Nimbula lspe-2012-04-19Nimbula lspe-2012-04-19
Nimbula lspe-2012-04-19Chris Westin
 
mongodb-brief-intro-february-2012
mongodb-brief-intro-february-2012mongodb-brief-intro-february-2012
mongodb-brief-intro-february-2012Chris Westin
 
Stingray - Riverbed Technology
Stingray - Riverbed TechnologyStingray - Riverbed Technology
Stingray - Riverbed TechnologyChris Westin
 
MongoDB's New Aggregation framework
MongoDB's New Aggregation frameworkMongoDB's New Aggregation framework
MongoDB's New Aggregation frameworkChris Westin
 
Replication and replica sets
Replication and replica setsReplication and replica sets
Replication and replica setsChris Westin
 
Architecting a Scale Out Cloud Storage Solution
Architecting a Scale Out Cloud Storage SolutionArchitecting a Scale Out Cloud Storage Solution
Architecting a Scale Out Cloud Storage SolutionChris Westin
 
MongoDB: An Introduction - July 2011
MongoDB:  An Introduction - July 2011MongoDB:  An Introduction - July 2011
MongoDB: An Introduction - July 2011Chris Westin
 
Practical Replication June-2011
Practical Replication June-2011Practical Replication June-2011
Practical Replication June-2011Chris Westin
 
MongoDB: An Introduction - june-2011
MongoDB:  An Introduction - june-2011MongoDB:  An Introduction - june-2011
MongoDB: An Introduction - june-2011Chris Westin
 
Ganglia Overview-v2
Ganglia Overview-v2Ganglia Overview-v2
Ganglia Overview-v2Chris Westin
 
MongoDB Aggregation MongoSF May 2011
MongoDB Aggregation MongoSF May 2011MongoDB Aggregation MongoSF May 2011
MongoDB Aggregation MongoSF May 2011Chris Westin
 

Más de Chris Westin (20)

Gripshort
GripshortGripshort
Gripshort
 
Ambari hadoop-ops-meetup-2013-09-19.final
Ambari hadoop-ops-meetup-2013-09-19.finalAmbari hadoop-ops-meetup-2013-09-19.final
Ambari hadoop-ops-meetup-2013-09-19.final
 
Cluster management and automation with cloudera manager
Cluster management and automation with cloudera managerCluster management and automation with cloudera manager
Cluster management and automation with cloudera manager
 
Building low latency java applications with ehcache
Building low latency java applications with ehcacheBuilding low latency java applications with ehcache
Building low latency java applications with ehcache
 
SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspe
 
cfengine3 at #lspe
cfengine3 at #lspecfengine3 at #lspe
cfengine3 at #lspe
 
mongodb-aggregation-may-2012
mongodb-aggregation-may-2012mongodb-aggregation-may-2012
mongodb-aggregation-may-2012
 
Nimbula lspe-2012-04-19
Nimbula lspe-2012-04-19Nimbula lspe-2012-04-19
Nimbula lspe-2012-04-19
 
mongodb-brief-intro-february-2012
mongodb-brief-intro-february-2012mongodb-brief-intro-february-2012
mongodb-brief-intro-february-2012
 
Stingray - Riverbed Technology
Stingray - Riverbed TechnologyStingray - Riverbed Technology
Stingray - Riverbed Technology
 
MongoDB's New Aggregation framework
MongoDB's New Aggregation frameworkMongoDB's New Aggregation framework
MongoDB's New Aggregation framework
 
Replication and replica sets
Replication and replica setsReplication and replica sets
Replication and replica sets
 
Architecting a Scale Out Cloud Storage Solution
Architecting a Scale Out Cloud Storage SolutionArchitecting a Scale Out Cloud Storage Solution
Architecting a Scale Out Cloud Storage Solution
 
FlashCache
FlashCacheFlashCache
FlashCache
 
Large Scale Cacti
Large Scale CactiLarge Scale Cacti
Large Scale Cacti
 
MongoDB: An Introduction - July 2011
MongoDB:  An Introduction - July 2011MongoDB:  An Introduction - July 2011
MongoDB: An Introduction - July 2011
 
Practical Replication June-2011
Practical Replication June-2011Practical Replication June-2011
Practical Replication June-2011
 
MongoDB: An Introduction - june-2011
MongoDB:  An Introduction - june-2011MongoDB:  An Introduction - june-2011
MongoDB: An Introduction - june-2011
 
Ganglia Overview-v2
Ganglia Overview-v2Ganglia Overview-v2
Ganglia Overview-v2
 
MongoDB Aggregation MongoSF May 2011
MongoDB Aggregation MongoSF May 2011MongoDB Aggregation MongoSF May 2011
MongoDB Aggregation MongoSF May 2011
 

Asset and Configuration Tracking

  • 1. Asset  and  Configura/on Tracking: the  most  boring  topic  in  the  Universe Greg  Lindahl CTO,  blekko
  • 2. The  problem(s) • 100s  of  servers,  1000s  of  disks,  100s  of  desktops, 100s  of  laptops • Some  of  the  servers  are  leased.  Disks  move  around constantly.  Your  financial  people  want  to  do  an audit.  Your  startup  finally  is  old  enough  to  need  asset tags.  blah  blah  blah… • How  many  hosts  got  that  new  kernel,  and  when? What  soOware  is  installed  on  that  host  that’s  down? What’s  the  up/me  history  of  the  en/re  cluster? • Did  my  integrator  screw  up  and  return  broken  parts instead  of  sending  them  for  repair? 1/3
  • 3. System  requirements • Based  on  tools  I  already  have • Dead  simple • Support  date  searches,  showing  when  a  string appears  and  disappears  from  the  database • I  know  what  you’re  thinking…  I  mean something  simpler  than  that.
  • 4. Global  part • DVCS  -­‐-­‐  mercurial,  in  my  case • Collect  text  files  for  every  host  in  a  separate directory • Check  in  files  daily • hg  log  -­‐p  to  see  changes,  global  or  per-­‐host • hg  grep  -­‐-­‐all  -­‐f  -­‐d  6QG06ZQN • (put  the  repo  on  an  SSD…) 1/3
  • 5. Local  part:  every  server • Create  a  script  to  generate  text  files containing: – MAC  addrs,  running  kernel  version,  rpms  installed, disk  serial  #s,  dmidecode,  installed  sysctl,  installed firewall  config,  ipmi  info,  vendor  info (hpdiscovery) • Important:  these  files  should  only  change  if there’s  a  change.  Don’t  store  up/me,  store the  boot  /me. • Commit  these  files  locally 1/3
  • 6. Tie  them  together • Copy  the  local  files  to  a  central  server,  check in  there.  Push  to  several  backup  repos. • See,  now  isn’t  this  simpler  than  what  you were  thinking?  NoSQL.
  • 7. What  about  laptops? • Macs  are  Unix,  done. • mercurial  runs  under  Windoze,  too • They  need  their  own  data  collectors. • The  only  trick  is  delivering  files  to  the mothership  on  a  regular  basis. 1/2
  • 8. slash  the  web! • yes,  we’re  hiring • vote  for  us  in  the  Crunchies • check  out:  /linux,  /python,  /ruby,  /…