HNHacker News
TopNewBestAskShowJobs

It takes $420k per year to run Lichess

twitter.com

298 points·i0exception··266 comments
Open articleView on HN
The author did an AMA on Reddit 9 months ago that I think is relevant here: https://old.reddit.com/r/chess/comments/mpasyl/i_started_lic...

In particular:

How they remain free: https://www.reddit.com/r/chess/comments/mpasyl/i_started_lic...

On his salary: https://www.reddit.com/r/chess/comments/mpasyl/i_started_lic...

It's truly amazing that a product with the reach of Lichess can be run so cheaply. Comments here criticizing the hosting costs extremely myopic - dev time isn't free, and doing a rewrite to chase down hosting savings isn't necessarily a good call.

I just signed up for a monthly donation. I complain about the ad supported internet all the time, but had never donated to LiChess. This thread is a good reminder of how far dollars to support projects like this can go.

FWIW, in the earlier days of lichess, IIRC when it had barely broken the Alexa top 10,000 threshold, lichess ran on like 2 boxes despite serving millions of users.

There's a good chance that many AWS slinging devs here have not actually had to deal with the volume of traffic that lichess sees. Half a mil yearly to run the entire lichess infrastructure, including dev salary and providing stockfish analysis for every user for free takes an insanely efficient setup that most big tech companies could only dream of.

> providing stockfish analysis for every user for free

Edit: As discussed in another subthread most of the analysis happens in the user's browser, the rest is run via a fishnet by volunteers.

While we're in the topic of impressive technological achievements, it's probably also worth mentioning how crazy it is that just a few decades ago, Deep Blue running on a supercomputer was the state of art in chess analysis, and nowadays we can just casually say, oh lichess runs stockfish on users' phones via wasm to cut on server costs.
Most engineers in the world never saw such daily traffic.

I doubt you can't make Alexa top 10k with a million of daily unique visitors.

And people here be afraid of serving small HN traffic without using cloudlfare.
I was wondering what the cost per game is on lichess, and fortunately the linked spreadsheet includes the answer: lichess currently runs at a cost of $0.00022 per game (4545 games to the dollar).
That's good to know. I've played 12,316 games on lichess so almost $3 worth. Might donate $10 or so soon.
Do you computer-analyze your games?

One stockfish computer analysis must cost more than merely playing 1,000 unanalyzed games.

You're downloading the engine from the Lichess server but the analysis is done on your computer, with your resources.
Computer analyses are done on a distributed network called fishnet[0], not locally

0: https://github.com/niklasf/fishnet

Except fishnet is used to analyze broadcasted games, puzzle discovery and others. Not used when analyzing your own games. You can easily test this by opening your task manager, monitoring your CPU usage, then opening a game you played on Lichess and toggling the aptly named "local evaluation". It's the toggle bar on the upper right, next to the text "Stockfish 14+ NNUE in local browser". You will see your CPU usage increase while the evaluation is on.
That is true when you’re playing in your browser. On the mobile app (at least the iOS version) you can request computer analysis for your game done on the server.
You can request server analysis for your own games, up to 40 per day. They use fishnet.
No, that is an analysis of a single position, not a game. The big button under every game which says "Request Computer Analysis" is done on fishnet as well, it literally says "Stockfish 14.1 server analysis".
<sarcasm> So ... time to implement fishcoins?</sarcasm>

Analyzing a chess game or two is not exactly easily verifiable, but it should be somehow possible to shoehorn that into a proof of work thing.

Only if you toggle local-evaluation in the analysis board. When you "request a computer analysis", the computation is done by fishnet [1] on volunteers' hardware.

[1] https://github.com/niklasf/fishnet

But can you request a computer analysis with fishnet anymore? I have a non-patron account and I can't find that option anywhere. Old forum posts seem to talk about it working by pressing Z and being limited, but when I press Z I get a message that it is disabled by default and a link to enable it. When pressing to enable, nothing happens.
It's been a while since I used Lichess anonymously, but I suspect you do need an account to request a server analysis – that way they can limit the number of analyses per day for a user [1].

[1] 40 a day per https://lichess.org/features

You don't need to be a patron, you just need an account. One of the many amazing things about lichess is it's 100% free and donators get no extra privileges except a little logo next to their user
Stockfish runs in your own browser using your own CPU.
Not if you do a game analysis
I think Stockfish usually runs clientside but it does look like they do some server side too

https://lichess.org/blog/YOCx7hIAACUAgsUo/stockfish-14-has-a...

For this reason I wish I could run something locally to generate the same analysis UI and therefore not put any load on the Lichess servers.
I do run a computer analysis on maybe 10% of games, but I also participate in fishnet (explained elsewhere in this thread) on a local machine so that hopefully offsets it
I love Lichess's feature comparison page (https://lichess.org/features), which helps users decide whether to upgrade to a premium account.
Lots of people saying "You can improve costs here!" without factoring in the developer time/learning/upkeep dollars it would take to do that. Sometimes the best solution is the one you know that will be easiest for you.
It only 420k because they pay themselves minimum salaries. The founder/lead dev is easily worth mid 6 figures on the market and yet his salary is not even 60k EUR.

It's a great project, great quality and run at a low cost but it's all that because it's run by people who sacrifice their financial situation to make their idea happen.

And I wish they would be rewarded by their users even more.
They should charge. And I would pay.
They have users because the service is accessible. If they charge, many would playe elsewhere. There is a lot of competition.
In this thread: people with zero knowledge who can cut costs drastically without impacting the service (that they have never used and don't understand).
Putting others down doesn't help. If you know more than others, the thing to do is to share some of what you know, so the rest of us can learn. Then you're addressing the underlying ignorance as well as contributing to the ecosystem, instead of poisoning it further.

https://hn.algolia.com/?dateRange=all&page=0&prefix=true&sor...

https://news.ycombinator.com/newsguidelines.html

It's not a put down to say that there are people without knowledge of Lichess's operations or infrastructure. I'm one of those people. I don't presume to have any knowledge of effective cost cutting measures. Others do.
It's a putdown to snarkily sneer at others in the community, which is why the site guidelines specifically ask you not to: https://news.ycombinator.com/newsguidelines.html.

I understand the temptation to do this—we all feel it. That's why that guideline is in there. Such comments reliably lead to lower-quality threads, because they don't add anything that anyone can learn from. They just assert the commenter as somehow different from / better than others.

That's not to say the comments you were criticizing aren't bad. Of course, shallow dismissals are bad. But it only makes things worse to respond with a different sort of shallow dismissal.

As someone who is working on a similar project (a chess mmo) and looking to validate a business model in order to get funding, how are they covering the costs? The answer usually is "donations", but there are only 402 patrons on https://lichess.org/patron and Thibault said on twitter that the average donation is $8. That's $3216/mo, less than a tenth of monthly costs. Is the rest coming from the swag store? From coaches? How much do the donations surpass the costs? Lots of missing pieces from the revenue puzzle.
That’s definitely not every patron
These are just the most recent. ATM there are 10,722 active patron accounts.
Maybe you should look at a model where your chess mmo runs on top of another platform? That way a lot of your costs would go down and you could focus on the core parts that you want to build. E.g. you dont really want to spend time paying for or optimizing for hundreds of simultaneous users from multiple countries.
Main developer gets a monthly salary of $4705, is that normal in Europe? (Assuming Europe because they pay French taxes).
It's somewhat low but they've probably made a concious choice to accept a lower salary to work for a project they are passionate about.
I don't know how much time he dedicates to running the service at this point but the salary seems light if it's full time work.
It's his hobby project that he turned into this, it runs completely by his philosophy, and it's decent money for the country he's in. I think he's won.
Maybe a bit low for someone this experienced, but actually its just above the median salary for a developer in Paris.

Developer salaries in Europe are not the astronomic salaries you see in the US in the major cities. Probably the highest paying in Europe is London in the UK, and even then its still less than 50% of what developers in SF make at probably around 75k USD per year/6-7k USD per month in London.

worth baring in mind that there's a lot of extra paid by the employer on top of the "gross" salary someone gets in Europe (especially in France) that someone in the US would have to cover by himself (hence why i't typical to see double that amount for someone in the US).
I'm pretty sure once you cost out everything from taxes, health insurance, housing, etc.. whether business or personal costs an equivalent developer in say Paris will have much less disposable income and overall assets than one in SF.
I've posted this reply numerous times here but a junior dev in San Francisco on 120k, after paying taxes and rent has more left over than a mid level engineer in the UK makes in gross pay.
In quite a few European countries it's really not that much on top it. UK is the primary example of it.
Employers national insurance is basically 13.8% on top of salary in the Uk up top some limit.
See graph here: https://en.m.wikipedia.org/wiki/Payroll_tax

Though rates probably depend on income so maybe the graph only gives a rough idea (e.g. top taxpayer rates probably higher in Europe and higher rates may kick in earlier in Europe.)

Really? Can't speak for France, but it's definity low, specially for a senior dev. USD 56 470,69 equals EUR 49 465,78 as of today. You still need to pay taxes and (compulsory) social insurance from that. IMHO this is low, in some (western) european countries that amount may is junior dev entry salary IMHO. But someone responsible for a project that big could easily start at EUR 90 000,- or more (~USD 100 000,-). At least this is my experience. Experienced senior devs in German speaking countries I know, which know what they are talking about, don't consider to work for less than EUR 80 000,- gross per year, for some this is the lowest base line. Just recently talked to a friend about that who works for a middle sized (~200 people), not very well known software company in Germany.
I can’t find anything in normal EU companies that would be over €80k for IC positions. Where do you find these magic opportunities?
Probably depends on the industry. If you're a wordpress programmer at an ad agency there's no way you are making €80k. But if you're a senior embedded engineer at a big company like Bosch or Siemens, €80k sounds plausible.
Ireland.

* https://ie.indeed.com/jobs?q=developer%20%E2%82%AC80%2C000&l...

* https://ie.indeed.com/jobs?q=developer%20%E2%82%AC80%2C000&l...

* https://ie.indeed.com/jobs?q=developer%20%E2%82%AC80%2C000&l...

Just the first three I found with a salary >= €80k attached to the job listing

yes, but France is cheaper/less well paid than Germany (my guesstimation would be 20-30% less). Most countries are, e.g. Spain, Italy, and of course eastern Europe. Actually, 80k€ is VERY good for developers in Germany, you are not paid these sums easily, but yes if you're good (and willing to change employers and good in interviews) you will get there, that's true.
Funny enough, I just posted a comment about this the other day, how basically every SF/NYC company that has gone full remote could cut their employee costs by nearly 2-3X by switching their dev team to a European time zone. And this is including all the extra taxes involved with having employees there.

And I'm not talking about having to hire in Romania or something (where you could save 4-8X or more). You could hire the top 5% of talent in expensive cities like London and still cut your payroll costs by 2-3X

You can't save that much by hiring in Romania. The differences between developer compensation in europe don't follow cost of living differences, an average software engineer in Poland is likely in a better position when compared to an average Pole than an average software engineer in France vs an average Frenchman.
Maybe 10 years ago I hung out with a Java developer from Hungary for a while, he worked on stuff for Lufthansa. Hopefully I'm not remembering this wrong, but I think he told me his salary was like 1000EUR / month after tax (maybe even less) and that he was still able to afford a large house for his wife & kids and everything he wanted.
There are many companies hiring Brazilians for the same reason, since 1 USD is 5,56 brazilian real and 1 eur is 6,30 brazilian real, it's dirty cheap to hire brazilians on these conditions!
Highest paying in Europe is probably Zurich, not London. Salaries are comparable to sub-million-population US cities, which considering Zurich is also sub-million seems like it's actually pretty competitive with the US.
Not really, you're competing against a ton of people from different countries if you want to work in Zurich. Switzerland has a ton of foreign people working there.
This doesn't mean dev salaries are lower. Swiss immigration rules are actually quite strict, and between Facebook/Google/Apple/MicrosoftReseach there is a heavy upwards pull on salaries.
I didn't mean that salaries are lower, I meant you need to put it a lot more effort to get them.
Zurich and Switzerland generally is also much more expensive. Accommodation is hard to find, rents are 50+% over somewhere like London, groceries 2x or more the price, especially beef, and is often low quality. Imported food is harder to find and restaurants are pretty dire.

Good wine is easy enough to find though, and the outdoor scenery is pretty.

I cannot wait until end of Covid and try and spend a large fraction of our weekends outside this place.

From what I've seen, rent is comparable to London when you take things like location and access to the city center into account.

Agreed that restaurants and food are expensive. Selection is smaller than somewhere like London, but with a population 10x lower that's to be expected. Size-wise Zurich is more like Birmingham. If you take local cuisine differences into account I don't think it's that different.

Crime, taxes and pollution are also much lower. It really depends on your priorities.

I rent a 4 bed house in Baden for about 2x the cost of the mortgage on my London house in Enfield (it's not sold yet). The distance to Zurich central is about the same (London is very large, Baden / Zug / Winterthur would be on the edges of Greater London if you overlayed it), but the train is faster for several reasons: geography (mountains) encourages locally dense living, but the overall density is lower, so my house and work offices are closer to stations at either end.

Rental yields are capped in Switzerland, and in practice Zurich rents are not at the market clearing level - renting is actually a beauty contest between applicants. Great apartments are restricted by availability instead of rent level, but even considering that, the rent levels are higher than London, excluding central London - but I lived in London for 14 years, and I'd never really consider living centrally.

I'll reserve judgement on restaurants until post-Covid permits more eating out. I've ordered deliveries from about 20 different places (mostly Zurich, some Baden) and eaten out in three different places. I have a number of preliminary conclusions (Swiss don't know how to make a good burger, Indian restaurant portions are too large and too expensive, there are far too many pizza places and the highest rated ones have been very mediocre, and the most reliably good food has had a high cheese content, whether it's fondue or cordon bleu) but I'll pass deeper judgement later.

Good wine is easy to find though, and my house has a wine cellar.

The restaurant scene has exploded in Zürich over the last 20 years, but this means it's a bit of work to sort between the wheat and the chafe.

It also sounds like you're still trying to eat the cuisine you were in London, and finding the (reliably) high quality food to be the local cuisine.

A few quick recommendations:

Pizza: Napulé (the sit down in Meilen, not the takeaway by Bellevue)

Indian: Kerala (real Indian food, not sweet British-style curry)

Hearty European: Wirtschaft zur Au

Eritrean: Mesob

American: Grain Bar & Restaurant

Turkish: Gül

European breakfast/brunch: Baboo's

Ice-cream: Gelati Tellhof

Enjoy!

The real issue with London is not much rent but the quality of housing. I think London is the last European city where people deal with pests (mice, bed bugs, etc…) in their houses.
Depends where in Europe. In Norway or Switzerland that would be low. In Croatia or Italy that would be high.
I know some developers making that in Norway - but that would be after taxes, not before.
Starting income for developers in Norway are normally ~€55k. The average 33yo developer income is ~€75k.
Yes that's probably near the median dev salary locally.

Some FAANGs understand this and have decided to hire more in Europe.

It’s high. You never get these insane american salaries in europe. I’m lucky if I’ll ever get 60K annually.
It is normal in Stockholm, Sweden, but the local FAANG offices pay much more along with some others. There is a wide distribution.
$56k is €49k at the current moment.

Europe is not all one market price wise, with big differences internally. But you can certainly get a developer for €49k. You might have trouble retaining them, as based on salary surveys on the subreddit Irish developers it's like a 20th-30th percentile salary, and this developer has a track record of leading a successful customer facing web service, but not preposterous.

For reference $420k is about the cost of 2 employees at a typical tech company.
Which typical tech company outside of Silicon Valley would that be? I’ve never seen wages at $210k for a „typical tech company“
An employee costs more than just their salary.
My company isn’t based out of SV, we pay 130-220k base depending on team and experience. Senior devs are 200k+
Hey, it’s me, your future employee!
A rough estimate is that the cost of an employee is 1.25x - 1.4x the salary of an employee in the US. With health insurance, Social Security taxes, 401K matching, office expenses, and more.
That seems exceedingly low. I've generally seen 2x. It's a bit less than that as salary goes up, but I can't imagine hitting 1.25x.
Wages are just part of the total cost of a employee.
The cost of an employee is much higher than just the wages you pay them.
In Silicon Valley that would be a salary of a single engineer.
About 8 tech employees where I am in Europe. And that's after all the additional costs apart from salary.
5k in French taxes to run a non profit site, why?
Because the state was never about making things easier for people.
Non profit does not mean that it do not have to pay taxes on the money it manipulates.

Non profit orgs receive services from the state and they have a cost to fund social security and such.

Other non profits which do not have a very nice situation can receive help from the state, so why not share the bits of success of Lichess to everyone else?

It's the norm in France for employers to pay another euro of tax for each euro their employees earn.
I assume with "tax" you mean "tax + health insurance + unemployment insurance + retirement savings etc"?
Yes and it was a mistake in my opinion. It make employees feel that the company is paying for these benefits and it makes the company believe that they are spending money for things they should not (I've heard so many CEOs complaining about having to pay "all those taxes for their employees"). I prefer a way where the employee is responsible for all costs with a deduction at the source to make sure you don't get nasty surprises at the end of the year. In term of numbers that's all the same, not in term of psychology.
Incentives and human responses are endlessly weird and interesting.
Sure
Why should non-profit be tax exempt at all?
> $68,600 in Servers
> Candles $3,600

That being said, it's probably a lot cheaper than rewriting it to run on less.

i will never financially recover from this
So, 4 developer salaries for a service used worldwide. Not bad at all.
I love lichess! In addition to the web interface, it's got a great iPad interface too.
> Accountancy - 5,160 > Independent Audit - 6,000

I studied accounting at university and no one plans to do anything but auditing or consulting. I still love accounting, gives the most straight answer of how a business is run. Case in point.

I’m actually surprised how cheap the server cost is , given the scale of linchess… Great job!

Recent years, I have a feeling that HN commenters would assume server cost should always approach $0, not matter how big, or how different a real world online service is different from their single page web app side project :)

For any server cost sharing posts, we’ll see people making comments like “I can run this under $10/month” . Ha

Where does funding come from?
Donations
You can also buy some swag: https://lichess-org.myspreadshop.com/
I wonder google doesn't show Lichess in the first page when I search "lichess"?
I’m surprised French taxes are so high for a non profit
And freechess.org ?
JVM and then probably Cassandra as DB. Had they used something other than Java, it would've costed 10% of what it does. A rewrite may make sense.

I don't use Lichess. If I did, I would have donated. But after knowing that they throw money down the sink like this, I would be hesitant.

I too looked at the infrastructure list and wondered.

While I know many people are saying don't look at the cloud costs, when I look at those numbers it makes me think of CAPEX vs OPEX trades, and the OPEX here is non-trivial, but potentially a variable offset by some labor costs. I think some of this is being driven by a dated tech stack and technical debt.

Now, I am not one to trivialize the work that may need to go into getting this efficient, but I think you are right, we should consider investing into modernization of the stack.

Yeah, sure.

Maybe you could rewrite it in assembler over the weekend and run it on a Raspberry Pi, right?

I worked on Java codebases that absolutely squeezed every bit of performance from a machine and that would be very hard to do in other languages.

Tell us, this language 10x more efficient than Java, what is it?
Considering Java and JVM power some of the highest performance server and HFT on the planet. Tell me about the language or ecosystem that give you 90% cost savings?
Fine, please do rewrite this in the language of your choice and use postgress/mysql as DB and lets see if it can handle the HN traffic which is not really that huge. Waiting for the Show HN post.
He should take a better salary and figure out a more viable business model. Running it this way is a risk to its future.
...for 12 seconds.

https://www.youtube.com/watch?v=jHgZh4GV9G0&t=28s

It's the minority of the total spend, but it seems the hosting costs are too high.

For example, they are paying $266/month for 16 thread 128GB 3.8TB SSD, but you can rent a better machine for 99$/month from Hetzner (AX61-NVME).

They are also spending $40k/year on "data protection services" (?!?) and 60k for "site moderation" (they could instead not moderate or rely on third-party forums and messaging services they don't need to moderate).

"they could instead not moderate or rely on third-party forums and messaging services they don't need to moderate" at that point, you might as well not run the service. moderation isn't optional if you want a healthy community.
>$40k/year on "data protection services" (?!?)

I'm guessing this is paying an employee/consultant to ensure they are compliant with everyone's policies. At that scale you have to care about every jurisdiction and letting the one dev guess at compliance might not be ideal.

> 60k for "site moderation" (they could instead not moderate or rely on third-party forums and messaging services they don't need to moderate).

Can you even just not moderate? There's some stuff you legally have to due to say NetzDG for German users, and compliance with everyone else.

Everybody complains when someone gets inexplicably/stupidly banned by an AI and there are no humans to review it. Spending money on moderation by actual skilled people is how you solve the problem. This is one place I’m very happy to see them not skimping.
> (they could instead not moderate or rely on third-party forums and messaging services they don't need to moderate)

Have you ever used the site? How does that work by not moderating? When I report someone for being racist, spamming or submit a game where I think someone cheated... who handles that, what forum or open service doesn't have some type of moderation and in this case were you want a seamless experience with your app as they do with chat, blog, forum and multiple daily tournaments.

Some of those pricing seems strange, for example, OVH listed its Dedicated server Rise-2 [1] as US$ 80.92 ex. GST/month with 12 month commitment. Which is the same spec as their socket frontend listed as $110. There are other places like YoloDB and Insight with only 12 Threads. The same E-2136 Intel CPU with 64GB Memory is listed as $173 per month in the spreadsheet, while it is US$ 143.14 ex. GST/month 12 month commitment.

But yes generally speaking OVH is a rather strange breast. Much prefer Hetzner. A Zen 2 64 Thread, 192 GB Memory and 3.8TB SSD DB Primary listed as $464.00 in the spreadsheet only cost about $210 on Hetzner.

[1] https://www.ovhcloud.com/asia/bare-metal/rise/rise-2/

If it's French (as people have suggested elsewhere), the VAT rate is 20%.

$143.14 x 1.2 = $172

Assuming it applies, some of those numbers more or less work out.

OVH has unmetered bandwidth, which is kinda important considering how many games they are showing you at any one time.

Hetzner has 20TB which can be easily done in a day. Can't find their pricing, but everyone usually charges $0.01/GB, which can add up quick.

Not for their dedicated servers. For dedicated servers bandwidth is unmetered

https://docs.hetzner.com/robot/general/traffic/

Also for their shared servers or servers with 10GBs nics they charge $1/TB when metered that is $0.001/GB you are off by a order of magnitude

https://www.hetzner.com/dedicated-rootserver/px62

Hetzner is much smaller and have really few locations... They basically host everyting in germany or finland.

OVH also has way better anti DDoS. https://www.ovh.com/ca/en/anti-ddos/

For those completely unaware (like I was), lichess [1] seems to be a chess server.

Not sure whether they need AWS scale and couldn't cut costs down from 420k a year to something cheaper. Naively, this seems like something MS could sponsor by providing long-term discount.

That said, I have no idea how much cheaper this would be on other cloud providers, or whether they even have the need to cut down costs. For all I know, they might be making 10x of that in donations.

[1] http://lichess.org

If you look at the cost breakdown, that includes several people's salaries and other things than just hosting.

As for scale they do almost 100 million games per month and keep every game available for download and online access.

I suspect donations ~= costs, which is why the salaries are quite modest to say the least.

A lot of the server costs have datacenter names that look like OVH ones to me. And the server costs seem to be ~$68k/year of the total.
Lots of pets here, not many cattle. When you get to this scale, tools like Kubernetes make more sense. Then you can just think about your system in terms of "how much cpu/ram/storage do I need total?" Unless every one of those servers is running at or near capacity, there is a lot of cash being wasted there. There is also a maintenance cost, too. If one of these vital boxes goes down, what is the downtime implication and restoration cost?

I am not saying any of this to be critical of Lichess. There are different ways to solve these problems, and their way is clearly working. This also happens slowly over many years, so it is hard/impossible to see the end state until you are there. The app is very quick and responsive. I got my ass handed to me on my first anon game :) My feedback is more for the community here in the context of using this as a byte-sized case study.

At the end of the day we are reading and writing 1's and 0's to a network device, or a disk. Have to imagine you can run and persist chess games with a lot less resources.

> When you get to this scale, tools like Kubernetes make more sense.

If you look at the details[0], servers are really "just" 6k$ per month. A lot of that goes towards the databases, which you can't optimize much with k8s, so the optimization potential overall is already rather limited. If you then need a consultant or a developer to do the migration, you'll quickly outspend any potential savings.

I'm a fan of k8s, but this is really a showcase for hardware being (comparatively) cheap and the scale that you can go to with conventional hardware.

[0] https://docs.google.com/spreadsheets/d/1Si3PMUJGR9KrpE5lngSk...

Why is kube and conventional hardware mutually exclusive?

It’s just a different way to utilize resources. I don't see an issue with the costs - I see an issue with this massive list of inventory that needs to be carefully managed. Managing 30 boxes is not easy when they are all funny shapes and sizes. Are they all running the same OS? Same version? How do you roll out security updates? With kube, you just bring a new node online and then kill the old one. Done.

My argument still remains - what happens when a vital box dies? How quickly can a new one be brought online? Is that automated? What about in the meantime, is service degraded or completely down? What about when the ES boxes shit the bed and you realize you actually needed a cluster of 5 nodes? Do you buy 5 new boxes that are carefully sized, or do you just scale your mega cluster from 4 to 5 and add a few new pods?

Kube is not nearly as big and scary as this community makes it out to be.

> Why is kube and conventional hardware mutually exclusive?

Conventional setup might've been a better choice of words. That being said, in my experience, k8s in smaller setups tends to use more small machines, rather than (very) few big ones.

> It’s just a different way to utilize resources. I don't see an issue with the costs - [...]

Assuming the developer knows k8s and the app doesn't need much integration [0]. If one of those isn't met, you'll need to invest the time to rethink you app and infrastructure. And you don't really want to setup such a setup with k8s knowledge gathered from a few medium posts, so you do really need to hire an expert, plus plan some more hardware for your controllers - there's definitely a money issue.

> [...] I see an issue with this massive list of inventory that needs to be carefully managed. > Managing 30 boxes is not easy when they are all funny shapes and sizes. Are they all running the same OS? Same version? How do you roll out security updates? With kube, you just bring a new node online and then kill the old one. Done.

Going by the price, those are most likely dedicated boxes. So it's not like spinning down an EC2 machine and starting a new one (and not going for dedicated with these hw requirements would increase costs quite a bit); instead, you'd need to reimage. So, basically, you still have to manage those boxes - in addition to also updating your containers, now.

Or you simply enter `apt install unattended-upgrades` and move on with your live. Managing 30 hosts is really not that big of an issue nowadays.

> My argument still remains - what happens when a vital box dies? How quickly can a new one be brought online? Is that automated?

For the fronted, you could only really solve that by running a second box in the same size. And if you did that, you could automate that quite easily with something like a heartbeat - a failover can be handled without k8s. And do you really need all that uptime? This is a non-profit, not a startup; being down for an hour does not end your business.

> What about when the ES boxes shit the bed and you realize you actually needed a cluster of 5 nodes? Do you buy 5 new boxes that are carefully sized, or do you just scale your mega cluster from 4 to 5 and add a few new pods?

I give you the point, for ES it would really be useful. But horizontally scaling a cluster is really not that hard.

> Kube is not nearly as big and scary as this community makes it out to be.

No, it really isn't. But it does bring in a lot of complexity - how do you handle ingress? Storage? Audits? How do you scale? Does your app run in pods, can it easily fail-over? How do you handle shared state? You also need some additional hardware to handle controlling etc. and, as mentioned above, the knowledge to configure and run a cluster for such a high-profile site.

That being said, I agree with you that, seen from a clean-state, using k8s (or maybe just k3s) here would not be a wrong decision. For all we know, they might actually be using it for ES or some other parts. But we shouldn't disregard that k8s also brings in a lot of complexity, configuration overhead, costs and, next to that, a whole paradigm shift - your storage goes from permanent to ephemeral, unless explicitly marked otherwise, and accessing your app works completely different, just to name a few things. Learning k8s takes time and, while it is definitely worth it (IMO), you can still manage an infrastructure of that size with easier tools without any problems whatsoever. It's basically sure that the overhead in both learning and operations is simply not worth it and would cost much more than any savings k8s brings - which is exactly what my original response pointed out.

[0] The app might depend on specific OS features, use a lot of storage (in which case you will also need to setup a properly HA storage provider) or have some significant state, which would need to be synced to a new instance.

Classic HN.
A lot of folks on here don’t understand what Kubernetes is and so they choose to hate it. Ignorance is not an excuse to dismiss a technology.
IME, Kubernetes helps solve scaling problems. If you aren’t there yet, it’s unnecessarily complex for you. It requires at least 2-3 dedicated ops members to run.
How to introduce opaque bloat to one of the best sites on the whole Internet.
The case study would be that unless you are more popular than Hacker News and Lichess by more than a magnitude, you probably doesn’t need K8s?
> When you get to this scale, tools like Kubernetes make more sense

They are no where near the scale where Kubernetes makes sense as anything but a tools for making deployments easier. Ignoring the deployment part, I think many are pretty clueless about how big you truly need to benefit from Kubernetes and how much ekstra overhead you'll have in terms of managing clusters.

To be fair, if you application was designed with Kubernetes in mind, the scale where you can make use of it starts a lot smaller. When paying ~6k$ in servers, you're way past the point where adding it would noticeably impact your bill.

As I outlined in my other response, it does not make sense to make the switch in this case (IMO). But if I were to design an application at this scale and the team would have sufficient knowledge in Kubernetes, I'd definitely consider deploying to a cluster - the overhead could be quickly countered by development speed and fail safety, especially when choosing something simpler like k3s.

But I agree that it's definitely not needed here, that scale is a few orders of magnitude away.

Reply on news.ycombinator.com