Noah Zoschke at Waza 2013: Heroku Secrets

2,042 views
1,958 views

Published on

Noah Zoschke took to the Waza 2013 stage to present "Heroku Secrets". For more from Zoschke, ping him at @nzoschke. For more on Waza visit http://waza.heroku.com/2013.

For Waza videos stay tuned at http://blog.heroku.com or visit http://vimeo.com/herokuwaza

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,042
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

Noah Zoschke at Waza 2013: Heroku Secrets

  1. 1. nzoschke /Heroku Secrets - Waza 2013
  2. 2. Twelve-FactorAdam Wiggins The Twelve-Factor App (http://12factor.net/)Modern software design for software-as-a-serviceHeroku enables and enforces these patterns
  3. 3. Continuous DeploymentOne codebase - many deploys2 million releases in Feb alone600 "kernel" releases in Feb alone
  4. 4. Dependencies2x more Rails than Sinatra3x more Webrick than Thin5x more Thin than Unicorn10x more Unicorn than Puma
  5. 5. Bundler API6 web dynos, 1 data worker, 4 databases1 production DB2 read-only follower DBs1 test DB
  6. 6. ConfigEncryptedStored in Dynamo
  7. 7. Data$hrk adn:d hrk-otrsldv-vrin92 eou dosad eoupsgeq:e -eso=.Atce a HRK_OTRSLCPE_R tahd s EOUPSGEQ_OPRUL$hrk p:slCPE eou gpq OPR= shm.q > i ceaslCET TBE RAE AL= cet etninp_ttsaeet; > rae xeso gsa_ttmnsCET ETNIN RAE XESO
  8. 8. Data ToolsDatascope (https://datascope.herokuapp.com)Dataclips(https://dataclips.heroku.com/xqzzcwmlubhblavdipydzzqmlmbmDataclips(https://dataclips.heroku.com/xqzzcwmlubhblavdipydzzqmlmbmDataclips(https://docs.google.com/a/heroku.com/spreadsheet/ccc?key=0AuBDxqx7T2vodDhfZk1YR0xIXzl2ckJRaFA5RUZjU0E&rm
  9. 9. Build https://github.com/nzoschke/apache-http-git (https://github.com/nzoschke/apache-http-git) https://github.com/kr/heroku-buildpack-inline (https://github.com/kr/heroku-buildpack-inline)$ctbncmie a i/opl#/i/ah !bnbsst- e xBIDDR$pd UL_I=(w)mdr- $UL_I/r ki p BIDDRsccr - ht:/pcemrospi.o/tp/tp-..4trg |trx - $UL_I/r ul s tp/aah.irr.arcmhtdhtd222.a.z a z C BIDDRsccr - ht:/i-oegolcd.o/ie/i-....a.z |trx - $UL_I/r ul s tp/gtcr.ogeoecmflsgt1814trg a z C BIDDRscc $UL_I/r/i-... d BIDDRscgt1814.cniue-pei=apvno/i -wtottlk /ofgr -rfx/p/edrgt -ihu-ctmk - - ae i kDSDR$UL_I mk - isal ETI=BIDDR ae i ntlc $UL_I/r/tp-..4 d BIDDRschtd222.cniue-pei=apvno/tp /ofgr -rfx/p/edrhtdmk aeDSDR$UL_I mk isal ETI=BIDDR ae ntlr -f$UL_I/r m r BIDDRsc
  10. 10. Build Services$ctbnhtd a i/tp#/i/ah !bnbsPR={OT-00 OT$PR:50}RO=(d$drae$).;pd OT$c (inm 0/. w)epr GTDR/m/o.i xot I_I=tpfogtgtii -br $I_I i nt -ae GTDRgtcni ht.eevpc tu i ofg tprcieak rect>tphtd$.of<EF a /m/tp.$cn <OCsoLg"tpacs_o"cmiei utmo /m/ceslg obndoErro "tperrlg roLg /m/ro_o"Lgee dbg oLvl euStn GTPOETRO /m eEv I_RJC_OT tpStn GTHT_XOTAL eEv I_TPEPR_LSrpAis/$OTvno/i/iee/i-oegtht-akn/ citla RO/edrgtlbxcgtcr/i-tpbcedLse $OT itn PREF Otuh oc /m/ceslg tpacs_otuh oc /m/ro_o tperrlgti - al F /m/ceslg& tpacs_oti - al F /m/ro_o & tperrlgee /p/edrhtdbnhtd- FRGON - /m/tp.$cn & xc apvno/tp/i/tp D OERUD f tphtd$.of
  11. 11. Build Services https://github.com/ddollar/anvil (https://github.com/ddollar/anvil)$hrk bid. eou ulCekn frapflst sn..dn,2flsnee hcig o p ie o yc. oe ie eddUlaig 100 (T:0) podn: 0.% EA sLucigbidpoes. dn anhn ul rcs.. oeFthn bidak. dn ecig ulpc.. oeCmiigap. opln p..Sces su i hts/aiavlok.r/lg/d4c658-ab9e-ca9658tz ucs, lg s tp:/p.niwrsogsusc478-2a44-003e2b4e.g
  12. 12. Release API https://devcenter.heroku.com/articles/labs-pipelines (https://devcenter.heroku.com/articles/labs-pipelines)$cr -XPS hts/csuu.eoup.o/1ap/eouscesrlae ul v OT tp:/iarshrkapcmv/pshrk-ert/ees - "otn-ye tx/sn H CnetTp: etjo" - "$EOUAIKY u :HRK_P_E" - "p""eousces,"ecito""o" "lgul:hts/aiavlok.r/lg/d d {ap:hrk-ert" dsrpin:fo, su_r""tp:/p.niwrsogsusc44c658-ab9e-ca9658tz} 78-2a44-003e2b4e.g"<HT/. 22Acpe TP11 0 cetd
  13. 13. Run$hrk rnbs eou u ah~$d -h u s52 . .M~$hsnm otaee313-3e43-b07936c5 b47c73-d893-fd5f54~$eh $OT co PR278 22~$/bnicni |sd- /*ntad:(09]+)s*/|ha - si/fofg e n s.ie dr[-../1p ed 11.91117 02.4.9~$cr icni.ehs ul fofgm/ote25-3-85.opt-.mznw.o c-4245-9cmue1aaoascm~$bnl ee ib ude xc r
  14. 14. Profile Scripts$hrk rnbs eou u ahRnig`ah atce t tria..u,rn87 unn bs` tahd o emnl. p u.69SmtmsIwne i Imi m rgtmn. Te i pse ofadIm oeie odr f n y ih id hn t ass f n a itlieta ee. s nelgn s vr - Sme Bcet "ngm" - aul ekt, Edae~$$ct$OE.rfl./otn.h a HM/poiedfrues#/i/ah !bnbsrb <O uy <EF cnet =Dr"apvno/s/hr/ae/otns*]mp{||Fl.pnf.ed} otns i[/p/edrursaegmsfrue/".a f ieoe()ra frue =cnet.a {||fslt"n" } otns otnsmp f .pi(%n) pt frue.lte.hfl[] us otnsfatnsufe0EF O
  15. 15. Disposability56.5 million unique runs in February alone75000+ instances and counting in Herokus production cloudlife
  16. 16. Logs https://devcenter.heroku.com/articles/labs-https-drains (https://devcenter.heroku.com/articles/labs-https-drains)HTTP DrainsL2met Server / Service(https://github.com/ryandotsmith/l2met) -> Librato, etc.

×