Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

为什么基础服务不应该高可用 #162

Open
draveness opened this issue Dec 1, 2019 · 11 comments
Open

为什么基础服务不应该高可用 #162

draveness opened this issue Dec 1, 2019 · 11 comments

Comments

@draveness
Copy link
Owner

@draveness draveness commented Dec 1, 2019

https://draveness.me/whys-the-design-unstable-infrastructure

作者在去年使用过 Google Cloud 平台提供的 Kubernetes 来管理生产环境的集群,然而在托管的过程中却经历了一些比较严重的线上事故。事故刚刚出现时作者曾经也想去责怪和质疑谷歌云服务的稳定性,但是在随后的分析中得出了另一个结论『你的基础服务其实不应该高可用』,我们在这篇文章就会为各位读者分享作者产生这一观点的原因。

@schecterdamien

This comment has been minimized.

Copy link

@schecterdamien schecterdamien commented Dec 2, 2019

故意触发宕机是不是避免让使用者过分相信基础服务的可用性。这样的话,此时的宕机是自己协议约定内的也是可控的,不用承担过多的责任,但是又能给使用者一个教训,让他们做足准备,在下次发生同样事情的时候减少损失,避免鱼死网破 = =

@zcong1993

This comment has been minimized.

Copy link

@zcong1993 zcong1993 commented Dec 2, 2019

SRE: Google 运维解密 这本书也说了, 故意宕机一方面是让用户明白这些东西不是百分百可靠的, 然后通过自己的手段解决; 另一方面是为了不让用户的预期过高.

@draveness

This comment has been minimized.

Copy link
Owner Author

@draveness draveness commented Dec 2, 2019

SRE: Google 运维解密 这本书也说了, 故意宕机一方面是让用户明白这些东西不是百分百可靠的, 然后通过自己的手段解决; 另一方面是为了不让用户的预期过高.

👍

故意触发宕机是不是避免让使用者过分相信基础服务的可用性。这样的话,此时的宕机是自己协议约定内的也是可控的,不用承担过多的责任,但是又能给使用者一个教训,让他们做足准备,在下次发生同样事情的时候减少损失,避免鱼死网破 = =

👍

@musele

This comment has been minimized.

Copy link

@musele musele commented Dec 3, 2019

基础服务必须高可用,高可用总的来说就是利用冗余来抵消不确定性,文章标题可能改成《基础服务不应该依赖单一平台的高可用》会好一点。

@draveness

This comment has been minimized.

Copy link
Owner Author

@draveness draveness commented Dec 3, 2019

基础服务必须高可用,高可用总的来说就是利用冗余来抵消不确定性,文章标题可能改成《基础服务不应该依赖单一平台的高可用》会好一点。

如何实现高可用和应不应该高可用是两件事。

@yunqingqing

This comment has been minimized.

Copy link

@yunqingqing yunqingqing commented Dec 9, 2019

为什么我觉得这篇文章讲的是高可用服务也不是100%的高可用

@jinyuyoulong

This comment has been minimized.

Copy link

@jinyuyoulong jinyuyoulong commented Dec 10, 2019

@yunqingqing
为什么我觉得这篇文章讲的是高可用服务也不是100%的高可用

因为没有完美的100%的高可用,

@draveness

This comment has been minimized.

Copy link
Owner Author

@draveness draveness commented Dec 10, 2019

为什么我觉得这篇文章讲的是高可用服务也不是100%的高可用

并不是,大多数云服务厂商提供基础服务的可用性都是 3.5 个 9,例如 Redis 等服务,只有极少数的厂商会提供 4 个 9 的可用性,一个月不可用的时间在 4~20min,我并不认为这是高可用,阿里云的云服务器 SLA 如下:

2.2 服务可用性承诺
(1)对于单实例维度, 阿里云承诺一个服务周期内ECS的服务可用性不低于99.95%;
(2)对于单地域多可用区维度,阿里云承诺一个服务周期内ECS的服务可用性不低于99.99%。

Google 云提供的 Compute Engine Service SLA 是 4 个 9,这在云服务商中已经非常高了

During the Term of the agreement under which Google has agreed to provide Google Cloud Platform to Customer (as applicable, the "Agreement"), the Covered Service will provide a Monthly Uptime Percentage to Customer of at least 99.99% (the "Service Level Objective" or "SLO")

Reference

@draveness

This comment has been minimized.

Copy link
Owner Author

@draveness draveness commented Dec 10, 2019

@yunqingqing
为什么我觉得这篇文章讲的是高可用服务也不是100%的高可用

因为没有完美的100%的高可用,

👍 在足够长的时间内,没有服务能做到 100% 的可用,这还是在不考虑收益的情况下。

@karottc

This comment has been minimized.

Copy link

@karottc karottc commented Dec 10, 2019

标题党啊。 标题说,不应该做,然而全文都在讲怎么做的尽可能的高可用。

@draveness

This comment has been minimized.

Copy link
Owner Author

@draveness draveness commented Dec 10, 2019

@karottc 标题党啊。 标题说,不应该做,然而全文都在讲怎么做的尽可能的高可用。

你好好读读

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
7 participants
You can’t perform that action at this time.