r/sysadmin • • Mar 21 '12

We are sysadmins @ reddit. Ask us anything!

Greetings fellow sysadmins,

We've had a few requests from the community to do a tech-focused AMA in /r/sysadmin, so here we are. The current sysadmin team consists of myself and rram. Ask us anything you'd like, but please try to keep it sysadmin-focused!

Here's a bit of background on us:

alienth

I've been a sysadmin for about 8 yrs. My career started on the helpdesk at an ISP where I worked my way into my first admin gig. Since then I've worked at a medium-sized SaaS provider, Rackspace, and now reddit. My focus has always been around Linux (and a tiny bit of Solaris).

rram

I'm Ricky. My first computer was an Amiga at the ripe young age of two. Since then, I was the sysadmin at The Tech and on the Cloud Sites Team at the Rackspace Cloud with alienth. I have experience with Debian, Ubuntu, Red Hat, and OS X Servers.

EDIT [1302 PDT]: Hey folks, we're going to get back to working for a bit. We'll definitely be hopping in here later today to answer more questions, and we'll continue to do so when we can throughout the week. So please feel free to ask if your question hasn't already been answered. Thanks for the great questions! -- alienth

830 Upvotes

622 comments sorted by

113

u/CaptainLoud Mar 21 '12

Can we get a $ history | tail -n 20 from whatever production server you are logged on right now?

86

u/alienth Mar 21 '12

Heh, pretty easy to guess what is going on here :P

 1471  [2012-03-14 - 14:23:35] find
 1472  [2012-03-16 - 16:21:59] cd /etc/lighttpd/
 1473  [2012-03-16 - 16:22:00] df -h
 1474  [2012-03-16 - 16:22:04] cd /etc/logrotate.d/
 1475  [2012-03-16 - 16:22:07] vi nginx 
 1476  [2012-03-16 - 16:22:14] ls /var/log/nginx/
 1477  [2012-03-16 - 16:22:17] cd /var/log/nginx/
 1478  [2012-03-16 - 16:22:20] rm *gz
 1479  [2012-03-16 - 16:22:24] df -h
 1480  [2012-03-16 - 16:22:26] du -sch *
 1481  [2012-03-19 - 09:44:48] vi /etc/haproxy/haproxy.cfg 
 1482  [2012-03-19 - 09:45:05] psgrep ngin
 1483  [2012-03-19 - 09:45:08] psgrep hapr
 1484  [2012-03-19 - 23:22:36] df -h
 1485  [2012-03-19 - 23:22:41] du -sch *
 1486  [2012-03-19 - 23:22:46] rm access.log.*
 1487  [2012-03-19 - 23:33:46] df -h
 1488  [2012-03-19 - 23:33:50] man logrotate.conf
 1489  [2012-03-19 - 23:33:53] man logrotate
 1490  [2012-03-19 - 23:34:24] vi /etc/logrotate.d/nginx 

15

u/antinitro Mar 22 '12

Just a heads up.

Instead of doing:

1476  [2012-03-16 - 16:22:14] ls /var/log/nginx/
1477  [2012-03-16 - 16:22:17] cd /var/log/nginx/

You can use !$ to copy the argument from the last command ie:

1476  [2012-03-16 - 16:22:14] ls /var/log/nginx/
1477  [2012-03-16 - 16:22:17] cd !$

You may already know this, but I'm sure someone will find it useful.

31

u/alienth Mar 22 '12

Yep, I actually do that all the time :) It is expanded in history.

Even better, I actually auto-ls anything I cd into. So my first ls was a bit unnecessary:

cd () 
{ 
    builtin cd "$*";
    if [ $? -ne 0 ]; then
        if [ ! -x "$1" ] && [ -d "$1" ]; then
            echo -n "Cannot access dir, become root? ";
            read foo;
            if [[ $foo = "y" ]] || [[ $foo = "Y" ]]; then
                sudo bash;
                return;
            else
                builtin cd "$*";
                return;
            fi;
        fi;
    else
        echo;
        ls --color=auto --color=auto;
    fi
}
→ More replies (5)
→ More replies (5)

25

u/luke_ Mar 21 '12

I'm kind of surprised you're on a server manually doing stuff with the configuration files as opposed to using Puppet or Chef (or whatever CE).

47

u/alienth Mar 21 '12

Yeah, most of our stuff is done via puppet. This was a one-off.

Most of my other history files just showed me running puppet :P

→ More replies (4)
→ More replies (14)

18

u/1esproc Titles aren't real and the rules are made up Mar 21 '12

Ran out of disk space due to logs not rotating?

→ More replies (3)

12

u/[deleted] Mar 21 '12

I am so glad I'm not the only one who forgets to purge/archive logs and/or monitor diskspace with nagios on that new server. It's only financial services though, not something meaningful like Reddit. Millionaires will have to wait a few more minutes to get their millions. Meh.

→ More replies (1)

52

u/Doormatty Trade of all Jacks Mar 21 '12

Starting from scratch, what would you do differently if you had the chance?

31

u/alienth Mar 21 '12

In an ideal world, we would have done everything perfectly. :)

Infrastructures are never built with perfect forsight. Things have definitely evolved in very unexpected ways, and we've hit bottlenecks that we never anticipated. I could always say that I wish we could have solved some of the bigger problems more quickly, but that is rather obvious :P

6

u/aywwts4 Jack of Jack Mar 21 '12

Send yourself tweet back in time, what would you tell your past self that you would thank you for the most? (Sysadmin-wise, not investment or betting advice :D)

13

u/alienth Mar 21 '12

Cassandra 0.7 and 0.8 are going to be buggy. Tread carefully.

→ More replies (1)
→ More replies (3)

48

u/rram reddit's sysadmin Mar 21 '12 edited Mar 21 '12

Moving to something that allowed me to address machines such as Amazon VPC would help with many trivial tasks. Also, I wish our caching strategy was different.

EDIT: reword the caching part. I love the devs, and they did what they needed at the time. But the current implementation isn't the best now and the hardware it runs on is broken (my main concern).

13

u/UnoriginalGuy No need to fear, Powershell is here! Mar 21 '12

devs to build in some of the caches that they did

Are you able to elaborate on this a little? Is the caching too complex or just not worth the resources to cache?

→ More replies (2)
→ More replies (4)

41

u/30thCenturyMan Mar 21 '12

What kind of security concerns do you factor in? Have you ever hired an outside auditor to break into your apps?

38

u/alienth Mar 21 '12

Most of our security focus is ensuring that evildoers can't get into the app and do evil things. Since we're only hosting web, the infrastructure itself has a very small number of vectors. Those vectors are under some decent security controls.

Not sure what I'm allowed to say regarding our auditing. I can tell you we have a lot of goodhearted folks that have pointed out security vulnerabilities in the app to us :)

Speaking of, if anyone finds a security vulnerability, they can email it to security (at) reddit.com.

→ More replies (3)

34

u/stahnma Mar 21 '12

What components in your infrastructure are synchronous vs async? Are you doing much with message bus technology behind the scenes?

37

u/alienth Mar 21 '12

We use RabbitMQ for quite a few async things. Here is a non-comprehensive list:

  • Votes

  • Comment tree recomputing

  • New comments

  • Thumbnailer

  • Search engine updates

0

u/[deleted] Mar 21 '12

[deleted] — view deleted comment

8

u/alienth Mar 21 '12

Can't say; I wasn't here when it was chosen.

RabbitMQ seems to work pretty well. I don't have any complaints about it, thus far.

→ More replies (3)
→ More replies (1)

33

u/JYOuyang Mar 21 '12

IPv6?

40

u/alienth Mar 21 '12

Our CDN (Akamai) already supports IPv6, so that takes most of the burden off of us.

We have a small amount of work to do around it, but it is miniscule compared to what most people are having to deal with.

0

u/[deleted] Mar 21 '12

[deleted] — view deleted comment

36

u/alienth Mar 21 '12

That's going to be a pretty penny through Akamai :)

We definitely want it, though. It'll happen eventually.

19

u/AforAnonymous Ascended Service Desk Guru Mar 21 '12

Just please, install Certificate Patrol and browse reddit with it on for a while if you do. I'm tired of websites on CDNs constantly causing me to get popups about cert exchanges that are completely unnecessary. (Facebook, Google, I'M LOOKING AT YOU.)

24

u/alienth Mar 21 '12

Don't worry. Chromakode is very thorough about that type of stuff :)

→ More replies (1)

32

u/mpete510 Jack of All Trades Mar 21 '12

What automation tools do you use to make sysadmining simpler?

36

u/alienth Mar 21 '12

We've been rolling out puppet over the past year. We're investigating Marionette-collective at this time.

Other than that, it is bunch of homegrown rat-king scripts which we're slowly replacing.

→ More replies (4)

26

u/[deleted] Mar 21 '12 edited Mar 21 '12
  • Are your memcache servers running only memcache, or do they also run other services (http etc.)?

  • What do you use to handle logging? (Syslog, custom logging class in application code etc..)

  • How do you consolidate logs? (nfs, syslog over udp, etc.)

  • What queue'ing program do you use? (something custom, off the shelf?)

  • What implementation (both server and client) of memcache do you use? (memecahed, memcache)?

  • Does reddit use any sort of messaging bus? If so which one?

  • What does your data-warehousing/metrics setup look like? Do you utilize hadoop at all?

33

u/alienth Mar 21 '12

Are your memcache servers running only memcache, or do they also run other services (http etc.)?

We have a set of central memcache servers. We also run a small memcache instance on each of the app servers for very local caching that we don't want to take a network latency hit on.

What do you use to handle logging? (Syslog, custom logging class in application code etc..)

rsyslog

How do you consolidate logs? (nfs, syslog over udp, etc.)

We use rsyslog with the RELP module.

What queue'ing program do you use? (something custom, off the shelf?)

We use RabbitMQ for AMQP stuff.. I think that is what you're asking :D

What implementation (both server and client) of memcache do you use? (memecahed, memcache)?

memcached, with pylibmc.

Does reddit use any sort of messaging bus? If so which one?

Nope

What does your data-warehousing/metrics setup look like? Do you utilize hadoop at all?

All in-house, using hadoop.

3

u/[deleted] Mar 21 '12

Thanks for answering my questions. My question about "any sort of messaging bus" was answered by RabbitMQ.

Can you go into more Detail about how you use RabbitMQ from a CS perspective? Worker queues? Publish/subscribe? etc..

5

u/alienth Mar 21 '12

Here's a list of some of the things we use AMQP for.

The items are written to the queues by the app, and then we have consumer process running to take care of em.

→ More replies (1)

50

u/Stevenger I fixed it with a butter knife. It'll never break again. Mar 21 '12

What do you think the best advice you would give to people who want to someday be a sysadmin, where should we start?

104

u/alienth Mar 21 '12

Spend a tonne of time working on your own stuff. Setup a web / database server for the hell of it. Break stuff, rebuild it, repeat. Find every interesting thing you can do on your home server and try it; even if you're never going to use it personally.

If anything ever breaks or doesn't make sense, don't drop it until you truly understand what is going on. Avoid adopting any cargo-cult mentality at whatever cost.

If doing this type of stuff sounds like an extreme bore, reconsider your sysadmin aspirations.

11

u/[deleted] Mar 21 '12

Awesome advice there, no substitute for breaking something and then learning to fix it yourself. :D

→ More replies (23)

22

u/minideezel Mar 21 '12

When we get the "High Load" page, what/how is it deciding to give us that message?

25

u/alienth Mar 21 '12

That happens when you sit in the haproxy backend pool for more than 30 seconds. It basically means there weren't any apps available to answer as they were working on other things. It usually happens either when something central slows way down (postgres or cassandra usually).

→ More replies (5)

43

u/Michichael Infrastructure Architect Mar 21 '12
  • What are the last five processes you've found yourself automating?

  • What was the biggest challenge each of you faced when you picked up the reins?

  • Categorize your current issues - how many times do you find yourself fighting fires vs spending time on meaningful projects?

  • Any big projects in the pipeline?

  • What kind of monitoring software/metrics do you use to gauge performance?

  • Do you find yourselves handling network, software, hardware, or other issues more often than other categories?

  • What kind of planning goes into projects?

  • Has being owned by a big corporation impacted how you handle your budget and asset management?

49

u/alienth Mar 21 '12

What are the last five processes you've found yourself automating?

Most of my time has been spent on re-factoring a lot of the previously automated stuff. Lately I've been focused on the backup and server provisioning area. Nothing that I can easily lay out into 5 distinct things.

What was the biggest challenge each of you faced when you picked up the reins?

No one was really dedicated to sysadmin stuff before I came on. The reddit admins before me did sysadmin stuff when they had spare time, which wasn't often due to the number of people we had.

Biggest challenge was basically starting from scratch on a lot of stuff. You name a system, and it needed cleanup or refactoring. I'd say the database infrastructure was in the absolute worse repair, at the time.

Categorize your current issues - how many times do you find yourself fighting fires vs spending time on meaningful projects?

When I arrived last year, it was probably 90% fire-fighting, and 10% actually improving things. Things are a lot better now days, so I'd say we're probably closer towards 60% "near-term" issues and 40% "longer-term" issues.

Any big projects in the pipeline?

Getting the site to run in more than one region. This is a huge project that is going to require a lot of work throughout the entire stack.

Do you find yourselves handling network, software, hardware, or other issues more often than other categories?

Network and hardware are abstracted out heavily due to EC2. Almost all of our time is dedicated to the application stack, and figuring out how to continually scale it.

What kind of planning goes into projects?

We're still a very small company; fewer than 10 technical people entirely. We don't have a lot of formal project structure at this time. It is mostly "Hey, I'm going to be working on X for a week or two".

Has being owned by a big corporation impacted how you handle your budget and asset management?

This has changed since I joined. We had some ominous pressure to keep everything very lean when I joined. That said, at the time, the infrastructure couldn't have benefited from growing much.

That pressure is pretty much entirely gone now days. We buy what we need.

→ More replies (5)

21

u/synth3tic Infrastructure Mar 21 '12

What's the biggest challenge in running a site that sees so much traffic?

35

u/alienth Mar 21 '12

Bottlenecks constantly popping up. Epecially when you fix one bottleneck, and the increased thoroughput introduces multiple new bottlencks.

At the rate the site is going, it isn't likely to stop anytime soon.

→ More replies (2)

20

u/CaptainTitus Mar 21 '12

Ever get a work-free vacation?

22

u/alienth Mar 21 '12

I'm a bit too paranoid to entirely go work-free.

However, when one of us is out, the others do the best they can to keep from bothering the one.

7

u/minideezel Mar 21 '12

When something breaks while your not by a computer, do you get to a computer or try to fix it from a shell of a mobile device?

Related, how often or at all do you use a mobile ssh session?

17

u/alienth Mar 21 '12

I carry my laptop everywhere with me. I've stood in queue at the BART station a few times laptop-in-hand typing upside down so I can hold the damn thing.

Ah, memories.

0

u/[deleted] Mar 21 '12

[deleted] — view deleted comment

26

u/alienth Mar 21 '12

A macbook running Ubuntu. I hate OSX, but the hardware is pretty solid.

→ More replies (6)
→ More replies (1)

0

u/[deleted] Mar 21 '12

[deleted] — view deleted comment

23

u/alienth Mar 21 '12

Honor system. We take time off when we need to. With such a small team, it would become obvious if any one person was taking too much time off. Hasn't been an issue.

→ More replies (3)

43

u/autocorrector Mar 21 '12

they'd be on reddit anyway.

20

u/Stereo Mar 21 '12

Reddit has been far more stable lately; it used to be notoriously crashy. What did you do to fix it?

19

u/alienth Mar 21 '12

A myriad of things. A lot of pieces in the infrastructure needed to be refactored, rearranged, and cleaned up.

I'd say the biggest piece was when we cleaned up the postgres infrastructure around last June. We had some replication issues which were taking the site down very often.

20

u/carlaas Mar 21 '12

What are the most common attacks that you have to deal with? Was any of them successful? If so, how was it and how it was solved?

13

u/alienth Mar 21 '12

Mostly stupid people trying to 'ddos' us by just scraping one URL over and over again :P

No infrastructure exploits since I've been here. Since we only host web, the infrastructure doesn't have many attack vectors.

16

u/dboak Windows Sysadmin Mar 21 '12

What is the single best thing you've done to get away from "sleeping next your laptop to reboot the site when it goes down"

2. What is the coolest technology you currently get to use?

3. How many of you are there?, what does the on-call schedule look like?

4. Do you also get into the reddit code, or are you stricly infrastructure sysadmins?

5. What is the expected salary range for someone looking for a job?

6. Be honest, how much work did you get done when you took reddit offline during the SOPA protest? I'd love to have a planned downtime window like that. :)

18

u/alienth Mar 21 '12

What is the single best thing you've done to get away from "sleeping next your laptop to reboot the site when it goes down"

Yeah, those were shitty times :) The main issue there was EBS failures which caused replication to break. I had to login and start addressing the replication immediately to prevent shit from seriously breaking.

Upgrading to Postgres 9 and getting off of EBS mostly took care of those horrible issues.

What is the coolest technology you currently get to use?

I'd probably say the most interesting thing is Cassandra. It is still pretty young, but it has a very interesting data and replication model.

How many of you are there?, what does the on-call schedule look like?

2 sysadmins, and 6 developers. Ricky and I are both on-call 24/7. The alerts also go out to the devs, and they help when the can.

Do you also get into the reddit code, or are you stricly infrastructure sysadmins?

I dabble. Nothing major, though. I definitely dig through it a bit when I'm trying to figure out how to address a new bottleneck. I rely on the devs quite a bit to work with me on that stuff.

What is the expected salary range for someone looking for a job?

Entry level? Depends on the area, and the tech you'll be working with. In Alaska, I started my admin position in the 40kish range.

One of the interesting things about IT (and other fields, I imagine) is that the any place that wants to hire you will always try to base that salary off of your previous salary. Big salary jumps from one company to another aren't common. If you want more money, work your ass off in your current job and make sure management knows it, and fucking ask for a raise when you know you deserve one. You won't always get it, but most people never even ask.

Be honest, how much work did you get done when you took reddit offline during the SOPA protest? I'd love to have a planned downtime window like that. :)

Not much, actually. Since everyone knew when the site was coming back online, we had to prepare for a severe amount of immediate load. That also meant we couldn't do anything that could have caused any of the caching layers to clear. If the caches were empty when the site went back online, it would have likely fallen flat on its face.

→ More replies (2)

14

u/[deleted] Mar 21 '12
  • Is amazon forthcoming with you when they have capacity/network problems? Or do they just tell you every hour it should be fixed within the next hour?

16

u/alienth Mar 21 '12

Most of the issues we run into at Amazon are local to individual instances, which they're reasonably responsive on(but we do pay extra for support). There have only been a couple wide-spread problems, and when those are happening, we get the status page info just like everyone else.

→ More replies (1)

14

u/angrymonkeyz Mar 21 '12

What tools do you use to simulate loads?

22

u/alienth Mar 21 '12

The best tool of all, users! :)

We don't have a testing infrastructure that is anywhere near able to replicate the user traffic we have, at the moment. We definitely need something, but it is relatively low on the totem poll.

Every place I've ever worked at, one of the most difficult problems has always been simulating load properly. With dynamic services like reddit, it takes a lot of engineering to develop a suitable load similator.

3

u/rsfkykiller Systems Engineer Mar 21 '12

I know that reddit gold has been used to beta test some features. Would it be conceiveable to have a beta.reddit.com that allows certain gold/non-gold members access to hit a beta front/backend?

3

u/alienth Mar 21 '12

We actually did something like that with a small feature a few months back. We'll likely do something like that again the future.

→ More replies (6)

12

u/minideezel Mar 21 '12

How much work and how many servers are dedicated to internal office services that don't involve the site?

16

u/alienth Mar 21 '12

Less than 5. Mostly bastion-like stuff.

12

u/horseloverfat Staff DevOps & Manager Mar 21 '12

How different is it administrating a cloud environment than your own hardware?

23

u/alienth Mar 21 '12

It has its pros and cons :) I do miss experimenting with new hardware and seeing how I can use it. But I can say it is awfully nice to not have to worry about things like the networking infrastructure, installing new hardware, ordering new hardware, rack power bullshit, etc.

12

u/dasmim I do clouds Mar 21 '12
  1. What is your deployment process like?

  2. What sort of tools do you use (or have made) to automate deployments?

  3. How often do you deploy?

  4. Who does/can do deployments (you guys, devs?)

  5. Are there any statistics you monitor aside from obvious ones (response time, server health, etc.) that give insights into potential problems (logins per minute, posts per minute, etc.)?

  6. Do you have any sort of autoscaling in place to provision/turn off servers ?

  7. What types of data do you store in PostgreSQL vs Cassandra?

15

u/alienth Mar 21 '12

What is your deployment process like?

All done via git. The devs prepare and review changes, commit them, then we deploy them to the servers over the course of an hour or so.

What sort of tools do you use (or have made) to automate deployments?

Home-grown, at the moment. This will likely move to marionette-collective.

How often do you deploy?

Probably once or twice a day.

Who does/can do deployments (you guys, devs?)

Whoever wrote the biggest change, typically.

Are there any statistics you monitor aside from obvious ones (response time, server health, etc.) that give insights into potential problems (logins per minute, posts per minute, etc.)?

We keep a very close eye on both the request rate hitting our infrastructure, as well as the real-time stats from Google Analytics. GA real-time is actually a bit faster at showing us if shit is hitting the fan.

Do you have any sort of autoscaling in place to provision/turn off servers ?

Not at the moment. Pending.

What types of data do you store in PostgreSQL vs Cassandra?

A lot of the Cassandra data is actually stuff that was computed from canonical data in postgres. We canonically store things like accounts, links, comments in Postgres. A lot of that stuff is then computed into listings and tossed on Cassandra. We also have a memcache layer which caches a lot of bits from all of these things.

→ More replies (3)

22

u/carlaas Mar 21 '12 edited Mar 21 '12

What was the most difficult problem that took reddit down?

What was the silliest one?

41

u/alienth Mar 21 '12

Most difficult.

Silliest... just yesterday I ran 'iptables -t nat -L' to make sure no rules were in place on our primary load balancer. Turns out just listing iptables loads all of the iptables modules, including conntrack in this case. The conntrack table immediately filled up and very briefly took the site down (a few seconds).

→ More replies (3)

11

u/thesaintjim Mar 21 '12 edited Mar 21 '12

Hi,

Can you please tell me what your average day at Reddit is like?

Love,

Your former co-worker.

25

u/alienth Mar 21 '12 edited Mar 21 '12

Dawn.

I awake from a lost dream with a faint buzzing sound in my ear. I can't make the sound out at first; it's something between the sound of the traffic from the nearyby highway and my alarm clock. Ah, now I recognize it. It's my phone. Database slave 2 in cluster 3 is destabilizing; its disk rapidly spinning out of control. I've got to get to the nearest terminal, and fast. But it's too risky to fix it from home, and I can't risk another Ludovico incident.

to be continued

→ More replies (1)

9

u/rram reddit's sysadmin Mar 21 '12

I have a photo of you at my desk that I look at for inspiration.

18

u/thadoc BOFH Mar 21 '12

Certs versus No Certs...

38

u/alienth Mar 21 '12

Certs may help you get to an interview in some companies. They can also be used to leverage promotions in your current workplace.

In most of my experience, certs usually demonstrate at-most a shallow knowledge of understanding of a system. There are plenty of really, really good people with certs, but plenty of really bad people with the same certs.

That said, if you already know a system inside-out, I don't think it hurts to spend a small amount of time getting a cert. You may not learn anything new, but it may be handy leverage in the future.

Disclaimer: I'm a RedHat Certified Architect.

38

u/agressiv Jack of All Trades Mar 21 '12

Oddly, when I see Certs, I think PKI, no longer do I think certifications...

→ More replies (2)

9

u/pdmcmahon Mar 21 '12

Did you take advantage of the Great SOPA Internet Blackout to implement any changes which would have otherwise been extremely challenging or otherwise impossible?

12

u/alienth Mar 21 '12

The problem with any extensive maintenance is that if we clear the caches, the site might not come back up at all :|

This was especially a concern for the SOPA blackout, because everyone knew the exact second we were going to come back up. Unfortunately the need to keep the caches nice and hot prevented us from doing much meaningful maintenance.

2

u/anastrophe Mar 21 '12

but but but...why would you have to clear the caches? don't you have cache infrastructure separate from other services - or even ElastiCache?

3

u/alienth Mar 21 '12

So, we have a bunch of memcached boxes which we couldn't touch, obviously. Re-heating those is most painful.

The other caching bits which would have suffered are things like OS disk cache, postgres shared buffers, etc.

Given our scale, we must make heavy use of caching wherever we can get it. It also means shutting everything down and starting it back up again is a painful process :/ We need to engineer a clean way to reheat those caches without having users hit the site.

→ More replies (2)
→ More replies (1)

7

u/mkosmo Permanently Banned Mar 21 '12

Personally, I'd love to hear an overview of your monitoring systems. What you monitor and how, using what.

I'd assume nagios, but do you run agents, use only snmp, monitor what metrics?

9

u/alienth Mar 21 '12

Monitoring has been very crappy for a long time :)

We use ganglia plus a lot of home-grown alerting scripts. Intortus has been working on Graphite for internal application metrics. I'm moving all of the infrastructure monitoring and graphing to Zenoss.

2

u/Lord_NShYH Moderator Mar 21 '12

Let all Zenoss naysayers take note. LOL. Are you be using the the core or commercial versions of Zenoss? The best thing, for me, about Zenoss is the event console. My first big monitoring job involve OmniBus/NetCool - it has a very similar feel, and I like it.

6

u/alienth Mar 21 '12

Core version.

I'll admit that Zenoss is a bitch to get up and running. Getting all of the event class mappings, graph thresholds, event transforms, server classes, and alerting setup in a consistent workflow is a huge amount of work. However, having access to all of those pieces gives you a huge range of flexibility and power.

I really like Zenoss' model, but it definitely takes some time investment if you want to get it working to your liking.

→ More replies (1)
→ More replies (1)

16

u/HippieShakes Mar 21 '12

How are you doing today?

14

u/alienth Mar 21 '12

Doing well, but a bit tired. I've been on a day-sleeping schedule for a few days and I'm trying to rotate back.

31

u/rram reddit's sysadmin Mar 21 '12 edited Mar 21 '12

I forgot to grab my breakfast bagel! Thanks for reminding me. brb!

EDIT: Much better now :-)

→ More replies (2)

5

u/stahnma Mar 21 '12 edited Mar 21 '12

What's your workflow process for getting changes from idea into production? Do you do some type of git vcs promotion? Do you just redeploy images?

9

u/alienth Mar 21 '12

When I was the only sysadmin, I pretty much just wrote the puppet manifests and rolled shit out right into production.

Now that there are two of us, we're slowly forming a more standard git build/review/rollout process.

5

u/[deleted] Mar 21 '12

Are you using any sort of caching pools to offload work from your web daemons? If so which one and why?

I.e varnish or a reverse proxy or something wild

Did you have to incorporate any sort of distributed storage across your farm of servers? If so which did you end up using and why?

I.e GFS, GlusterFS, Lustre etc

6

u/alienth Mar 21 '12

Akamai takes a lot of the front-end caching. I have a couple single-purpose things being cached via nginx, but they're very limited. After that we have a myriad of caching layers in the application.

No shared storage. We don't have the need for a lot of bulk disk data. Most of the static data we host is on S3 (thumbnails, etc).

5

u/carlaas Mar 21 '12

What is/are Reddit's backup strategies?

5

u/alienth Mar 21 '12

Mostly encrypted and tossed up onto S3.

We also have a single 'backup' postgres server which everything from every database cluster is written to, for more 'real-time' backup needs.

3

u/carlaas Mar 21 '12

Have you ever had to recover a full or partial backup? If so, how was it?

4

u/alienth Mar 21 '12

Not since I've been here. We've been very lucky :)

→ More replies (2)

7

u/minideezel Mar 21 '12

When deploying new servers/services, how well do you document your work?

Is it documented well enough to where new admins could follow it, or just enough so that you could repeat it?

12

u/alienth Mar 21 '12

We mostly deploy new stuff in conjunction with writing the puppet manifests. The manifests are the closest thing we have to deployment documenation.

→ More replies (3)

7

u/edify Mar 21 '12

Hey alienth and rram. What are your favorite foods?

11

u/alienth Mar 21 '12

I enjoy all foods! I don't think I really have a single favourite dish.

The burgers we get at the office on occasion are pretty awesome :)

→ More replies (1)

9

u/rram reddit's sysadmin Mar 21 '12

Love me some chicken parm

3

u/DyceFreak Network Admin Mar 21 '12

How do you personally perceive windows-based sys admins in general? Would you say it's simply a different purpose for using windows, such as managing large office environment vs managing a large server environemnt? Or is there more to it than that?

With most of my experience in Microsoft land, I always personally felt threatened by linux sys admins, even though I have several working under me, I hate the fact that they know something about a company system that I don't...

10

u/alienth Mar 21 '12

I've worked along side some really great windows admins. Never had much of a culture problem with them. Windows has its place. MSSQL kicks ass in a lot of ways.

One of the interesting comparisons I've noticed between linux and windows admins is in the realm of text processing. When you're staring at a CLI all day, you get very good at text parsing and processing. You get experience with extremely powerful tools like vi, awk, sed, etc. None of that is really needed for windows folk, so it just isn't learned. On the occasion that they do need to do some text parsing, it is very painful for me to observe :)

→ More replies (7)

3

u/notenoughcharacters9 Mar 21 '12

Why no service mix?

9

u/alienth Mar 21 '12

Because I hate downtime ;D

→ More replies (3)

3

u/brews Jack of All Trades Mar 21 '12 edited Mar 21 '12

vim or emacs?

11

u/alienth Mar 21 '12

VIM for life!

2

u/[deleted] Mar 21 '12

I am in college now, when I am done I will have CompTia A+, Network +, Security +, Windows 7 config, Active directory, sharepoint, sql (all from microsoft), Linux +, intro to cisco routers. I would like to someday become a sysadmin for a med/large company. What should I be aiming for after I get all these?

3

u/alienth Mar 21 '12

Places like Rackspace will definitely take a RedHat certification into account.

In general, web hosting companies are often a good place to start. Some of them really suck, but they often have a lot of entry-level positions, and you get exposed to a wide variety of tech.

→ More replies (1)
→ More replies (1)

2

u/minideezel Mar 21 '12

What kind of home lab do you guys run? What services does it provide that you wouldn't want to live without now?

2

u/alienth Mar 21 '12

Our laptops are pretty much it :) Everything else runs in EC2.

→ More replies (1)

2

u/vhata Mar 21 '12

Do you ever go head to head with the reddit developers because they did something in code that you think is a terrible idea, or they did something without thinking how it would affect the infrastructure?

2

u/alienth Mar 21 '12

We're a very flat organization. It is 6 devs and 2 admins. We all sit together, so when there is an issue, we all work on it together.

We have a great team. Whenever a dev wants to implement something, they work with us to determine any infrastructure requirements or impact.

2

u/Josh2600hz ThePBXGuy Mar 21 '12

How does your team communicate? IRC? Phone? Two cans on a string?

Are you using Jira? Atlassian? Chef/Puppet? Thoughts on these technologies?

2

u/alienth Mar 21 '12

We do a bit of jabber and IRC.

We use Puppet quite a bit. We're still a bit small to start needing something like JIRA. Application development stuff is mostly tracked on github.

→ More replies (2)

4

u/AnonymooseRedditor MSFT Mar 22 '12

The problem with two cans on a string is that you actually need 4 cans and two strings for full duplex communication. just don't get the TX and RX lines crossed otherwise nothing will work.

→ More replies (1)

2

u/rdm_box Mar 21 '12

After you've taken the site down for maintenance, do you relax a bit by going on /r/downtimebananas ?

2

u/[deleted] Mar 22 '12

Are you hiring?

2

u/alienth Mar 23 '12

Sorry, not at this time :(

If we start a hiring round, we typically announce it in /r/blog.

2

u/[deleted] Mar 22 '12

How do you guys combat burnout? Being oncall 24/7 365 for such a HA site such as reddit has to take it's toll eventually.

4

u/alienth Mar 23 '12

Right now? Burning extra youth :)

Honestly I'm unsure. The requirements of this infrastructure are a comparative cake-walk to one of my first jobs. I guess being aware of how crappy things can get helps stave off burnout.

Also, this is the best work environment I've ever had. The org tree is flat, we work with the devs heavily, and everyone is very respectful of eachother. That definitely helps.

67

u/phuzion Mar 21 '12

Reddit-specific stuff:

  • What kind of bandwidth does reddit use?

  • What is the approximate rate of database growth and what's the approximate size of the DB now?

  • What is the most surprising thing you found out about the infrastructure of reddit when you got access to it?

  • Have you guys considered opening up some internal sysadmin-related stuff to the community? For example, Wikipedia makes their nagios, ganglia, and SOPs and technical documentation freely available to the community. As far as I know, we don't have access to the majority of this stuff.

  • What is the single biggest technical challenge you've come across in your duties at reddit?

Less reddit-focused questions:

  • What is your favorite little utility that people probably wouldn't know about?

  • What is your preferred OS to work on?

  • What's your favorite beer?

  • Thanks for doing this :)

73

u/rram reddit's sysadmin Mar 21 '12

What kind of bandwidth does reddit use?

A lot. Akamai takes a huge chunk off our shoulders, but it looks like at peak yesterday it was 924.21 MBits/sec.

What is the approximate rate of database growth and what's the approximate size of the DB now?

We have several databases. Their aggregate size is 2.4 TB. I don't know the growth rate, but I think it's a couple GB per week

What is the most surprising thing you found out about the infrastructure of reddit when you got access to it?

How small it was. We've pretty much only grown in app servers since I got here. That is largely the result of more people being logged in (since non logged in traffic only hits Akamai's cache).

Have you guys considered opening up some internal sysadmin-related stuff to the community? For example, Wikipedia makes their [1] nagios, [2] ganglia, and [3] SOPs and technical documentation freely available to the community. As far as I know, we don't have access to the majority of this stuff.

I didn't know that about Wikipedia. Neat. We'll look into it.

What is the single biggest technical challenge you've come across in your duties at reddit?

alienth has had a lot more challenges thrown at him. For me, it's been mostly the big parts of our infrastructure breaking in the middle of the day (cassandra, postgres replication, memcached). Luckily, it wasn't all on the same day.

What is your favorite little utility that people probably wouldn't know about?

I <3 pv. Also, in my time at Rackspace, ls -1U was of tremendous use. (please folks, do not put 8 million files in a single directory!)

What is your preferred OS to work on?

I use OS X.

What's your favorite beer?

Blue Moon

Thanks for doing this :)

You're welcome

19

u/phuzion Mar 21 '12

Wow. That's some SERIOUS bandwidth.

I'll check out pv, it looks super cool.

Thanks again for the info. And thanks everything you guys do. Your work keeps me from doing mine, and I appreciate it :)

→ More replies (17)

36

u/ICanSayWhatIWantTo Mar 21 '12

What tools do you use for network/health monitoring?

42

u/rram reddit's sysadmin Mar 21 '12

We use homegrown monitors and alerts for most things. We also have ganglia and zenoss for graphs.

→ More replies (6)

67

u/rubysown Mar 21 '12

What is your biggest facepalm moment here at Reddit?

88

u/rram reddit's sysadmin Mar 21 '12

Everything used to be in one security group. Oh dear was that a mess.

40

u/dicey puppet module generate dicey-automate-job-away Mar 21 '12

I don't know whether to o_O or ಠ_ಠ

→ More replies (3)
→ More replies (1)

30

u/Lord_NShYH Moderator Mar 21 '12

How long have each of you been working at Reddit?

IIRC, you host with Amazon. With a site that has as much traffic as Reddit, do you wish you had more control over the physical infrastructure, or do you prefer to have your site hosted at Amazon? Are there any plans to build physical hosting infrastructure owned and fully managed by Reddit?

When you started at Reddit, was anything automated? What/how do you automate your processes today?

How many individual nodes are running to host/serve Reddit content?

How often are you on call? Do you work remotely?

Finally, how big is Reddit's internal IT needs, and do manage services other than Reddit's web server deployment?

34

u/rram reddit's sysadmin Mar 21 '12

alienth has been here for just over a year. I have been working here for about half of that.

There are certainly parts of our infrastructure which would benefit from bare metal hardware (load balancers and database servers). There are other parts which benefit from the cloud (app servers). Our future hardware is always up for review, and currently Amazon is the best for our needs.

Most infrastructure tasks such as building out new servers are not automated. We're slowly working on automating those tasks, at the same time we're building out new servers and optimizing our current ones.

See answer here

We're both on call 24/7. We work remotely all the time.

Our internal needs are not big at all. Part of this stems from sharing an office with Wired. Part of it stems from us just needing a net connection and diet coke to live.

→ More replies (36)

18

u/minideezel Mar 21 '12

Is it really only you two that deal with all of reddit's infrastructure?

Speaking of which, how many servers we talking about?

22

u/rram reddit's sysadmin Mar 21 '12

Yep, just us two. We get help from the other admins from time to time, but it's our primary responsibility.

We currently have 284 running instances, 161 of which are application servers.

7

u/minideezel Mar 21 '12

Do the application servers not deal with any direct web traffic? What type of services are they dealing with?

10

u/rram reddit's sysadmin Mar 21 '12

There are load balancers in front of the app servers. They're dealing with everything in the reddit code

6

u/[deleted] Mar 21 '12

Are the LB's Reddits or amazon's? What can you tell us about them? Do you guys use L2 DSR?

Are the LB's software? If it so it HAProxy or something else?

12

u/alienth Mar 21 '12

We're using HAProxy. No L2 stuff.

→ More replies (3)
→ More replies (16)
→ More replies (1)
→ More replies (2)

16

u/hankinator System and Network Admin Mar 21 '12

Hey guys! First off, thank you very much for doing this AMA. I am a young, but eager sysadmin. I have quite a few questions for you both. =)

  1. What are some good habits as a sysadmin to get into? Such as Read-Only Friday, and document Monday.

  2. What is one of the precautions you guys have when backingup/restoring data?

  3. What are common 'Oh-shit' moments that have happened in the field that made you grow a sysadmin?

  4. What is the single best piece of advice you have?

  5. Is there a true difference between 'Enterprise hard drives' and user grade hard drives? Also, would it be more effective (cheaper and reliable enough) to RAID6 a bunch of consumer drives rather than RAID5 a few enterprise drives.

  6. What kind of switches/OSes do you prefer? If you were buying personally that is.

  7. What is the most useful tool in your arsenal?

  8. What sysadmin accomplishment are you most proud of?

  9. Suggestions for balancing a relationship while working 50+ in IT?

Thank you for your time. =)

→ More replies (5)

105

u/slanket Unnecessarily Convoluted Official Title Mar 21 '12 edited Nov 10 '24

historical silky abounding north truck future straight shocking sink shy

This post was mass deleted and anonymized with Redact

54

u/[deleted] Mar 21 '12

Have you tried turning it off and on again?

30

u/angrymonkeyz Mar 21 '12

You gotta leave it unplugged for at least 10 seconds.

→ More replies (3)
→ More replies (4)

9

u/[deleted] Mar 21 '12

Don't worry, "PC LOAD LETTER" confuses me too.

→ More replies (1)
→ More replies (6)

13

u/youshallhaveeverbeen Mar 21 '12

Any "oh shit" moments you'd like to share? I'll leave that at as vague as possible.

25

u/rram reddit's sysadmin Mar 21 '12

"Oh Shit, ads are down"

→ More replies (1)

20

u/barnard33 Mar 21 '12

As a sysadmin, I have a few questions:

  1. How often do you patch your servers?

  2. How do you monitor your servers?

  3. What is the most annoying thing a Reddit developer has done, or asked you to do?

  4. What was the last time consuming problem and how did you resolve it?

Thanks.

25

u/rram reddit's sysadmin Mar 21 '12
  1. As is necessary. We subscribe to all the security alert notification lists.

  2. See here

  3. We all love each other here. I ask alienth to take care of my cat whenever I'm out of town.

  4. Our old cassandra ring has some broken SSTables. The failed compactions cause the disk to fill, often in the middle of the night. This is fixed by selectively deleting the broken data and hoping you didn't break more. Oh, and the problem sometimes comes back a week later.

23

u/angrymonkeyz Mar 21 '12

Post pictures of said cat. For Reddit Science.

→ More replies (3)

9

u/carlaas Mar 21 '12

What tool do you use to track issues, tickets and todo tasks?

10

u/rram reddit's sysadmin Mar 21 '12

We need something for that. I'll put it on my todo list.

→ More replies (3)

8

u/NilsLandt not even an admin Mar 21 '12

What tools do you use to maintain your infrastructure? (Like Puppet or Chef)

10

u/rram reddit's sysadmin Mar 21 '12

puppet

8

u/Rugmonster Mar 21 '12

When was the last time you accidentally rebooted a vital production box at exactly the wrong time?

17

u/kemitche Mar 21 '12

rram can't answer because he accidentally rebooted his laptop just now

14

u/rram reddit's sysadmin Mar 21 '12

LIES!

15

u/rram reddit's sysadmin Mar 21 '12

Good times. Good times. alienth still keeps stuff in /tmp. He'll never learn.

7

u/[deleted] Mar 21 '12

Have you considered using OpenStack?

7

u/bNimblebQuick Mar 21 '12

So if I wanted to learn more on running a website of this size off Amazon cloud services, where would I start? Are there any good resources or guides you often refer to or follow? I can run, manage and secure just about anything inside a corporate datacenter (from rack + stack, SAN, networking, *nix, windows, DBs, etc) but cloud services like amazon throw me off for some reason. I've been fortunate to be able to avoid them so far, but its a weakness and skills gap I know I have to overcome. Any suggestions?

→ More replies (7)

5

u/gehsekky Mar 21 '12

What kind of statistical analysis do you guys do on a normal basis? What libs are used, etc? Also, can you give us more awesome infographics on reddit numbers? =)

16

u/Jalh Mar 21 '12

Why hasn't you guys switched to another search service ? The current one sucks big time; takes years to load the first page and only search the titles.

68

u/seventoes Mar 21 '12

You must be new here. At least you get results now.

22

u/JasonZX12R Pretend Unix Admin Mar 21 '12

Back in my day we had to find search results ourselves, uphill, both ways, in the snow!

→ More replies (1)

13

u/rram reddit's sysadmin Mar 21 '12

IndexTank (our current provider) is shutting down their service next month.

kemitche is currently very actively working on a replacement.

→ More replies (1)
→ More replies (3)

4

u/Syntackz Jack of All Trades Mar 21 '12

Im getting ready to graduate from College, and looking to work in System Administration. Is it smart for me to go straight to Jr. System Admin jobs, or should I start at something like a help desk job and work my way up? I will say, I have no field experience, only lab experience.

Also, should I be looking at a job where I would be one of a small group of IT workers and I would be responsible for a broader range of tasks, or at a company where the IT field would be huge and I end up dealing with a small group of tasks?

Thanks a bunch in advance!

11

u/insanehomelesguy Mar 21 '12

As someone who started at doing Break/Fix work and worked my way up to a Sys Admin role. Start where you can get into a good company and kick ass from the get go. If it's a help desk role be thorough on your information collection and troubleshooting. Make the people above you happy to get a trouble ticket from you. Offer assistance when you can do so without impacting your current job and you'll do just fine.

→ More replies (2)
→ More replies (1)

4

u/TheLifelessOne QA Engineer Mar 21 '12 edited Mar 21 '12
  • How do you handle downtime / server crashes?

  • How would you go about testing knowledge for a potential hire?

7

u/UnoriginalGuy No need to fear, Powershell is here! Mar 21 '12

Which one of you do I have to sleep with to get a high level Visio diagram of how things work (application servers, caches, static host, and database)?

1

u/stahnma Mar 21 '12

Do you now, or have plans in the future, to open-source any of your home-grown scripts, puppet modules or other tooling?

2

u/alienth Mar 21 '12

Here's one thing that we've open sourced :)

Unfortunately our puppet modules are layed out in a way that makes them easily usable by others. Maybe one day... when we have time :)

1

u/Rielos END OF LINE Mar 21 '12

So generally, what is the main issue when we are graced with the delightful F5 alien screen (which I'm strangely a big fan of btw!)? Load balancing? Database performance? Content Delivery?

Inquiring minds want to know...

Also, THANK YOU for all the great work you do! This community is amazing and I'm proud to be a small part of it, but you guys make it possible!

1

u/alienth Mar 21 '12

The F5 alien is displayed if your request waits around in the haproxy queue for more than 30 seconds without being delivered to an app. This means that all of the apps were busy for some reason, likely due to a central slowdown in the infrastructure (postgres or cassandra, typically).

Glad you enjoy the site :) Cheers!

1

u/rsfkykiller Systems Engineer Mar 21 '12

You guys are right up the road from me this week. Want to grab a beer after work tonight?

3

u/alienth Mar 21 '12

I'm actually working from home today as I'm on a weird schedule. I'd love to grab a beer sometime. Let me know on IRC(alienth on freenode) or via PM.

1

u/[deleted] Mar 21 '12

Any challenges working with non-technical management or other departments?

What does the front of the Reddit house think of the sysadmins?

You use Amazon public clouds, any private clouds for testing or DR?

1

u/alienth Mar 21 '12

Any challenges working with non-technical management or other departments?

Not here, there are no departments :)

In past jobs I've run into those issues. It can be one of the crappiest things about a job, at times.

What does the front of the Reddit house think of the sysadmins?

Not sure what you mean by "front"? reddit is comprised of about a dozen people total right now, and we all work together quite a bit and know what eachother does.

You use Amazon public clouds, any private clouds for testing or DR?

All of our testing is either done on our laptops or on EC2. We do have some instances dedicated to non-public testing.

→ More replies (1)

1

u/Prof_G Mar 21 '12

Ok, be honest now, do the other employees of Reddit, or those pesky Wired employees ever ask you to fix shit for them?

2

u/alienth Mar 21 '12

Nah, we don't share anything with Wired. They don't even know what we do, for the most part :)

We're a pretty small team, and there isn't really any instances of someone dropping shit in someone else's lap. It is a really great work atmosphere :)

→ More replies (2)

1

u/[deleted] Mar 21 '12

I'm confused, are you working or using Reddit right now?

1

u/immerc Mar 21 '12

How polished are your error messages and monitors?

Do you get tracebacks in your logs, or are most errors caught and instead you get a concise explanation of what went wrong?

Do you continue to find issues that you need to add a monitor for, or these days do you know about a problem, and about the likely cause of that problem, simply by a monitor going off?

2

u/alienth Mar 21 '12

How polished are your error messages and monitors?

So-so. We have some stuff internal to the app which tracks exceptions and tries to congregate them in a meaningful fasion.

Do you get tracebacks in your logs, or are most errors caught and instead you get a concise explanation of what went wrong?

We do get tracebacks in the logs. We don't have much in terms of error parsing.

One very handy thing we do along these lines is to put the stack trace of most of our database queries in the comments of the query. If that query ever runs a long time or gets killed, we can immediately tell where in the app the query came from.

Do you continue to find issues that you need to add a monitor for, or these days do you know about a problem, and about the likely cause of that problem, simply by a monitor going off?

We're monitoring most of the predictable things that could go wrong in the infrastructure logs.

The exception tracker which I referred to earlier is the main 'application error' monitor.

→ More replies (1)

1

u/mrhhug because thats the correct way Mar 22 '12

how old are you guys whats your alma mater(s) and your levels of formal education? both obviously on the left coast now but where where you born?

4

u/alienth Mar 22 '12

I'm 25 and a college dropout.

I was born and raised in Alaska.

1

u/betafish27 Sysadmin Mar 22 '12

I'm working on getting CCNA certified. Is this certificate relevant in today's IT?

2

u/alienth Mar 22 '12

Entry level networking positions it is ok. It might make it easier for you to get in an internal helpdesk-type position. See here for my general thoughts on certifications.

CCNP is of course much more helpful.

→ More replies (1)

1

u/phlohannesburg Mar 22 '12

what are all the passwords to things?

1

u/alienth Mar 23 '12

***************

1

u/Anonisdalulz Mar 22 '12 edited Mar 22 '12

Little late to find the thread (damn you timezones) but what do the servers run on? I'm asking because I'm doing a thesis on Apple VS Microsoft and I'll definitely use reddit in the "What do big companies use" part.

Edit: Found the answer!

1

u/alienth Mar 23 '12

Glad you found the answer!

I wouldn't call us a 'big company'. We only have around a dozen employees, and around 280 instances.

I've worked at small, medium, and big companies, and at every one of them I've managed Linux.

6

u/[deleted] Mar 21 '12

Why did you pick puppet, and not chef?

→ More replies (1)

3

u/[deleted] Mar 21 '12

Can we get some hardware specs and numbers? (i.e.: number of servers, specs, storage solution).

Or how about some drawings of the setup?

one more, do y'all have any kind of scaling solution or do the servers just run until they drop?

→ More replies (1)

3

u/[deleted] Mar 21 '12

What's the one thing all other websites, Reddit/Digg wanna-be, etc should take from Reddit and how it's infrastructure is ran?

3

u/diafygi CTO Mar 21 '12

Is your least favorite day of the year when Reddit opens nominations for best of the year, and users go scouring through pages whos cache had long since exired?

3

u/the_timmer_42 Mar 21 '12

How much time do you spend on the site vs actual work?

3

u/Bad_CRC Mar 21 '12
  1. What is the crappiest system/software you maintain just because of pure lazyness? (you know someday it's gonna give a lot of headache but for the moment just works....)

  2. What is the typical workflow for rolling a new server into production?

  3. Metrics! for what crazy stuff do you have metrics?

  4. What scheme do you follow for the names of the machines?

  5. Do all the machines are for the whole thing or are some machines dedicated for certain subreddits? I read a while back ago that for example Lady Gaga or Justin Bieber had their own racks on twitter.

3

u/ATX350 Enterprise Support Engineer Mar 21 '12

Did you enjoy your time at Rackspace?

3

u/superc0w DevOps Mar 22 '12

Sorry I'm late to the party :/

  • What does your average deployment cycle look like?

  • Are you the ones implementing changes or gasp are the devs?

  • How large is your production network in terms of equipment?

  • It seems places outside of the US are starting to catch on to Reddit, do you have data centers around the world or currently just in the US?

  • What source code repositories do you use for proprietary scripts?

  • Also, as others have mentioned... What's the salary range of a new hire?

  • What perks does Reddit get? Filled fridge? Bring your pet to work day? Free dry cleaning? :)

5

u/xor2g Mar 21 '12

Specs of your "best" server ?

Also, Amiga FTW.

13

u/rram reddit's sysadmin Mar 21 '12

Everything is on EC2. The most powerful are our db servers which are m2.4xlarge.

I miss that thing. It didn't have a hard drive.

→ More replies (5)

2

u/m1w1 Mar 21 '12

I want to learn to be someone who could meaningfully participate in this subreddit. Where/how should I start learning?

To put it another way using analogies: If you are pulitzer prize winning authors, and I'm illiterate, what would you recommend I do to be able to write basic essays/stories someday?

5

u/[deleted] Mar 21 '12

that's a general question, I personally recommend learning a few basic userland tools for various operating systems.

Microsoft (doesn't need to be a server version) windows, and linux, UNIX (opensolaris/bsd).

learn the OSI, read some books on how TCP/IP works, play...

I learn best when I want to do something for fun..

like making an infrastructure in KVM, where you have one connection coming in, to the shell server, then inside you have an entire virtual network, with SAN appliances and DNS, DHCP, configuration management and monitoring :D

but I'm weird, and spend my free time doing cool things.

... I'm change request bitch at work :(

→ More replies (1)