運び屋 (A carrier(forwarder) changed his career to an engineer)

Network / Cloud Native / Kubernetes / コンテナー / SRE / DevOps

SRE / DevOps / Kubernetes Weekly Reportまとめ#44(11/29~12/4 )

この記事は2020/11/29~12/4発行の下記3つのWeekly Reportを読み、備忘録兼リンク集として残しているものです。


  • 誰かの情報源や検索工数削減などになれば幸いです。
DEVOPS WEEKLY ISSUE #518 November 29th, 2020
SRE Weekly Issue #246 November 29th, 2020
KubeWeekly #242 December 4th, 2020

English Version of this blog is here.

  • この記事を読んで疑問点や不明点があれば、URLから本文をご確認の上、ご指摘頂ければ幸いです。
  • 理解が浅いジャンルも、とにかくコメントする様にしていますので、私の勘違いや説明不足による誤解も多々あろうかと思います。
  • 情報量が多いので文字とリンクだけに絞っております。
  • 各レポートで取り上げられている記事には2019年以前のものもあり、必ずしも最新のものという訳ではない様です。

DEVOPS WEEKLY ISSUE #518 November 29th, 2020


A look at a number of different security incidents involving AWS customers, inferring patterns and making some recommendations.
  • タイトルは「Learning from AWS (Customer) Security Incidents」。
  • 錚々たるAWSユーザー企業のセキュリティーインシデントに学ぶ。
  • サービス提供者の問題ではなく、ユーザー側の設定ミスや内部の人間の情報持ち出しなど。
  • 事例、トレンド、推奨の設定などがまとめられていて学びが多い。
  • タイトルは「The DevOps Reading List: Choosing your next DevOps book」。
  • 次に読むべきDevOpsに関する本を選ぶための記事。Decision Treeが付いていて面白い。
  • 既読のものもあるが、ここに挙げられているものは基本全部読みたい。
  • 2つの詳細なKubeCon NAのまとめ記事。
  • 1つ目のタイトルは「KubeCon NA 2020 Key Takeaways: Platforms, Safety, and End Users」。以下の5つのTakeawayに沿って解説している。
    1. Platforms as product: Self-service is essential
    2. Safety (and speed): Move fast and don’t break things
    3. DevSecOps: Security is a day 0 concern
    4. Multi-cluster: The K8s future is connected
    5. End user focus: Learning and telling stories is important
  • 2つ目のタイトルは「KubeCon North America 2020 Wrapup」 。こちらは時系列で紹介。筆者や他の発信者のTwitterを取り上げているので、臨場感が持てる。
A writeup of the recent AWS US-East-1 outage. Reading incident reports is always interesting, but few are at quite this scale.
  • タイトルは「Summary of the Amazon Kinesis Event in the Northern Virginia (US-EAST-1) Region」。
  • AWSの最近のNorthern Virginiaでの障害のレポート。
  • 障害の様子を遠目に見ていたけれども、以下の文言を見て納得。こう繋がっていたのか。
    • CloudWatch uses Kinesis Data Streams for the processing of metric and log data.
    • Amazon Cognito uses Kinesis Data Streams to collect and analyze API access patterns.
How do we know that databases really behave as advertised at scale? The Jepsen testing tool is helping here, and the new checker described in a recent paper helps identify even more issues.
A KubeCon session on disaster recovery. Discussion of outbreaks, being on-call, emergency response and eventual prevention, with the interesting twist being a comparison of site reliability engineering and the ongoing pandemic healthcare response.
  • タイトルは「KubeCon: Lessons in Disaster Recovery from COVID-19 and Site Reliability Engineering」。
  • 医療とソフトウェアの軸でテーマに沿って語っている。

Fire Drills: A Guide to Preparing for Your Next Incident shows you how to design and run a fire drill for your SRE team. In this Whitepaper from Elieser Pereira - Customer Reliability Engineer at Container Solutions, you will see the roles of the game master, the on-call engineer, a sample scenario and what questions to expect when all seems bleak during an outage. Download the free PDF.

  • Container Solutions社によるSREによる障害対応シミュレーションの無料ガイドを紹介している。


I’m on the lookout for an experienced product leader for a Director of Product Management role at Snyk. The job would involve owning the Snyk Container product, so a strong focus on Kubernetes and container security and on helping developers build secure applications. I’m mainly looking for candidates in the UK or Israel in order to be close to the engineering teams. More details on the Snyk jobs site.

  • Editorの自社求人ポストの紹介。Product ManagementのDirectorをイスラエルかUKで探しているそう。どちらの国にもしばらく滞在して仕事したいものだが、スキルセットと情勢が合わず残念。とは言え、今はどこかに動くことよりも、自身のスキルで動かせるものを増やし、広げていきたい。


The ThoughtWorks Technology Radar has been around for 10 years and covers emerging techniques, tools, platforms, languages and frameworks. Next week, on the 7th of December, join 2 of the people involved in putting together this year's edition to hear about what’s new.

  • 上記のWebinarの紹介。参加したいのは山々だが、真夜中につきこれはパス。


Lots of interest in user interfaces for Kubernetes at the moment, the latest being Headlamp. Interestingly you can run the headlamp dashboard locally or in-cluster. It also features a plugin system for extending its core functionality.
  • 使いやすく拡張可能なOSSのKubernetes WebUI「Headlamp」のWebページ。
  • GitHubページはこちら
  • これも比較のために試してみたい。
cloudquery is a tool that queries the state of a public cloud infrastructure and saves a snapshot of that information in a SQL database for offline querying.
  • クラウド構成とメタデータをSQLテーブルとして公開し、コードを記述せずに強力な分析と監視を提供するOSSツール「cloudquery」。
  • GitHubページはこちら
Setting up dashboards for every service can end up being a manual and repetitive process. Legend builds and publishes Grafana dashboards for your services with prefilled metrics and alerts, integrating with cloudwatch, prometheus, influxdb and more.
  • サービスのGrafanaダッシュボードを作成して公開し、サービスのメトリックとアラートを事前に入力するツール「Legend」のGitHubページ。
K6 is an interesting new load testing tool, written in Go but configured using a powerful Javascript DSL.
  • 負荷およびパフォーマンステスト業界でのLoadImpact社の長年の経験に基づいている負荷テストツール「k6」のGitHubページ。

SRE Weekly Issue #246 November 29th, 2020


One Year of Load Balancing

DNS-based load balancing is a nice simple solution, but unfortunately it doesn’t work well in certain circumstances. Read to find out how Algolia evolved their load balancing system in response.

Paul Berthaux — Algolia

  • 上記とタイトルにある様に、Algolia社のロードバランサー無しから始まって、進化を繰り返してきた同社の負荷分散に対する取り組みをまとめている記事。
Your Percentiles are incorrect P99 of the times.

We use percentiles all the time, so it’s really important to actually understand what they say (and what they don’t).

Piyush Verma — Last9

Thanks to An anonymous reader for this one.

  • 正確にすることはほとんど不可能な別のSLI、「Latency」をテーマに解説している。
  • 以前、SLOがどのように誤解を招く可能性があるかについて「SLOs that lie」と題して話をしており、その際のSLIは稼働時間(Updatime)だった。
My journey to SRE into 2020 and beyond

The author started out as an embedded systems developer and moved into SRE. Here’s what they learned.

Eric Uriostigue — effx

  • 筆者のSREとしての成長サイクルなど関する考えを解説している。
How to apologize for server outages and keep users happy

Some great tips here. It’s hard to sound sincere in a public incident report, especially if you post a lot of them.

Adam Fowler

Democratizing Fare Storage at scale using Event Sourcing

In this blog, we discuss how we built Fare Storage, Grab’s single source of truth fare data store, and how we overcame the challenges to make it more reliable and scalable to support our expanding features.

Sourabh Suman — Grab

  • 内容は上記の通り。図が効果的に使われていて読みやすい。
Simple streaming telemetry

This article covers Netflix’s gnmi-gateway, their open source tool for collecting metrics from network devices in a highly available and fault-tolerant manner.

Colin McIntosh and Michael Costello — Netflix

  • コンテンツ配信の文脈でCDN「Open Connect」に冒頭で触れ、OSSのプロジェクト「gNMI Gateway 」の背景、なぜ作ったのか、読者が自身のネットワークを監視する方法を解説している。
A guide to the reliability talks at AWS re:Invent

This year, re:Invent is online only, so you still have a chance to attend if you’re interested.

Ana M Medina — Gremlin

  • タイトル通り「AWS re:Invent」のガイドを以下のポイントで行っている。
    • Talk
    • Why I’m Excited
    • Options to attend
A Byzantine failure in the real world

Cloudflare’s API service was impaired early this month. This is their incident report that describes a grey failure in a switch and downstream impact to etcd and their database system.

Tom Lianza and Chris Snook — Cloudflare

  • タイトルと上記の説明通り、11/2にCloudflare社で起きた障害を時系列に沿って、「冗長性を考慮していたにも関わらずなぜ上手く対応できなかったのか」の観点で解説をしている。



KubeWeekly #242 December 4th, 2020

The Headlines

Editor’s pick of the highlights from the past week.

Don’t Panic: Kubernetes and Docker

Kubernetes is deprecating Docker as a container runtime after v1.20.

tl;dr Docker as an underlying runtime is being deprecated in favor of runtimes that use the Container Runtime Interface(CRI) created for Kubernetes. Docker-produced images will continue to work in your cluster with all runtimes, as they always have.

  • 上記の説明で十分なのですが、ここでこのニュースを初めて見る方に補足として、以下の記事を見る事をオススメします。そのまま読んで頂いて分かる内容だと思いますが、dockershimをキーワードに、「ランタイムとして使われているDocker(dockershim)」と「ワークフローの中で使っているDocker」は別物です。
  • この騒ぎを受けてDocker社と、Docker社のエンタープライズ部門を買収したMirantis社がdockershimをメンテすることを発表。Mirantis社のユーザー向けのランタイムMirantis Container Runtime (MCR)はCRI準拠となります。
  • Kubernetes以外でも、ベンダーでは同様のランタイムを置き換える動きを既にしています。
    • 例えば、ECS FargateはコンテナランタイムをDockerから、containerdにPV1.4.0で乗り換えて改善しています。AWSのユーザー、ECS Fargateの利用者はかなりの数いらっしゃいますが、特に目立った騒ぎも影響も観測していません。私も淡々と違いを検証していました。EFS、ジャンボフレームワーク対応、ECSエージェントからFargateエージェントへの置き換えなど、ラインタイム以外にも変更が大きいリリースでした。

ICYMI: CNCF Webinars

You can view all CNCF recorded and upcoming webinars here.

CNCF Member webinar: Next-gen data protection for next-gen applications

Deepak Verma, Director of Product Strategy @Zerto

  • クラウドネイティブなデータ保護アーキテクチャ「data protection as code」を形作った主要な調査結果、設計する上で考慮すべき点を共有している。
CNCF Member webinar: Discover, analyze, and secure your APIs…anywhere

Pranav Dharwadkar, VP of Products @Volterra.io Jakub Pavlik, Director of Engineering @Volterra.io

  • アプリ/APIに対する実際のセキュリティー上のAttack、タイトルにある4つの観点を解説し、以下の情報を共有している。
    • Real-world examples of App/API security attacks that are not blocked by network-level or WAF security tools.
    • Four key tenets that users should look for in any App/API security solution
    • How users can utilize the four key tenets to solve their App/API security needs.
CNCF Member webinar: Take the pain out of multi-cluster Kubernetes with Lens

Edward Ionel, Developer Relations @Mirantis

  • デモを中心にLensをマルチクラスターの環境で使う際のtips/tricks/best practiceを下記ポイントで解説している。最初の方はスライドがスムーズに動かずに悪戦苦闘されているので、スキップした方が良さそう。
    • Navigating cluster-sprawl and switching between KUBECONFIGs and clusters
    • Using the “”smart console”” to seamlessly move from cluster to cluster — even where different client versions are required
    • Quickly searching or browsing specific Helm charts for kubernetes-deployable services, with one click install functionality that deploys the Helm chart directly into the cluster

The Technical

Tutorials, tools, and more that take you on a deep dive into the code.

Kubernetes: Efficient multi-zone networking with topology-aware routing

Google Open Source Blog

Geographically distributed stateful workloads Part Two: CockroachDB

Raffaele Spazzoli, Red Hat OpenShift

  • シリーズ記事のPart2。複数の地域にわたるOpenShiftでのCockroachDBのデプロイについて説明している。
  • 負荷テストを実施してデプロイメントを検証し、エンタープライズワークロードに適していることを確認している。
Deployments without YAML using Ketch

Saiyam Pathak, Civo

  • Ketchのコンセプトを解説し、タイトル通りKetchを利用してYAML無しでCivoのマネージドk3sクラスター上にデプロイしている。
Kubernetes self remediation (AKA Poison Pill)

Nir Yehia, Red Hat OpenShift

  • Kubernetesで高可用性を求めている中、基盤となるインフラに障害が発生した場合に影響を受けるステートフルワークロードの復旧策としてPoison Pill k8s Node Remediationを紹介している。
k0s — Yet another Kubernetes distro

Saiyam Pathak, Civo

  • 「k0s」に関する、既に見たことがある記事だったので、このブログでも取り上げているかと思ったら、まだだった模様。11/16時点でアーキテクチャー、インストール方法、k3sとの比較を簡単に解説している。
Shining a light on the Kubernetes user experience with Headlamp

Kinvolk blog

Scaling datastores at Slack with Vitess

Arka Ganguli, Guido Iaquinti, Maggie Zhou, and Rafael Chacón, Slack

  • Vitessの選択と採用に伴う設計上の考慮事項と技術的な課題、および現在のVitesの使用法の概要を解説している。
Kubernetes distros with flavour of fleet

Saiyam Pathak, Civo Darren Shepherd, SUSE

  • 2時間以上に渡って、Rancher社→SUSE社(M&Aにより)のDarren氏をゲストに迎えてテーマに沿って話をしている。
  • YouTube動画でテーマごとにタイムスタンプをつけてくれているので、興味のあるテーマだけ読んで良いのかも。
  • 内容のほんの一部抜粋でも、kine/k3s debugging/k3c/k3v/k0sなど。
YAML tips for Kubernetes

Salman Iqbal

  • YouTube動画でタイトルの内容を解説している。

The Editorial

Articles, announcements, and morethatgive you a high-level overview of challenges and features.

GitOps decisions

Ian Miell

  • GitOpsを小さな挑戦的なスタートアップとして採用し、規則正しい多国籍企業に成長する企業の話をして、これらの課題のいくつかを説明している。
How Kubernetes accelerates multiplayer game development

Emily Omier, The New Stack

  • タイトル通り、マルチプレイヤーゲームの開発期間をKubernetesで短縮したこと、いくつかの課題があり、「Agones」を利用して解決したことなどを解説している。
Kubernetes will deliver the app store experience for enterprise software, says Weaveworks CEO

Matt Asay, TechRepublic

  • Kubernetesについて、下記の表現がわかりやすかったが、そこまでシンプルになるイメージが湧かない。アプリのようにかなり抽象化され、勘所がピックアップされいく教育的なUIが実装されたり、レコメンド設定などが表示されるようになるのだろうか?
    • "Kubernetes for the last few years has been a bit like buying a mobile phone in 1993 when it was too heavy to pick up"
    • "Pretty soon it will be like iPhones and wristwatches where everything is slick, easy, and simple because the industry is pushing it in that direction."
  • 筆者は最後に以下のように自身の立場と、本文の内容は自身の見解であることを確認している。
    • Disclosure: I work for AWS, but the views expressed herein are mine. I am not part of the AWS team responsible for Amazon EKS Distro.
Understanding Kubernetes operators

Agustin Romano, Caylent

  • 自動化を推進するために設計されたツールとしての観点で「Kubernetes Operator」を解説している。
Kubernetes Operators: Automating complex application lifecycles


  • 続けて「Kubernetes Operator」の記事。アプリのライフサイクルを自動化の観点で、以下のポイントで解説している。
    • Why are Kubernetes Operators Important?
    • How Does a Kubernetes Operator Work?
    • Kubernetes Operator Example
    • Best Practices for Writing Kubernetes Operators
      • Use the Operator SDK
      • Keep Reconcile Functions Clean
      • Modify One Custom Resource at a Time
How to build a CI/CD process that deploys on Kubernetes and focuses on developer independence

Liron Cohen, Riskified

  • タイトルを以下のポイントで 補足して、解説している。
    • So how can you build a proper CI/CD process that focuses on developer independence?
    • How can you, as a DevOps Engineer, give the proper tools to the developers in your company, so they can build and operate their CI/CD processes on their own?

Upcoming CNCF webinars


Member Webinar: A look at how hackers exploit Prometheus, Grafana, Fluentd, Jaeger & more
Omer Levi Hevroni, Application Security Engineer @Synk
Dec 8, 2020 10:00 AM Pacific Time

Member Webinar: Preventing Kubernetes misconfiguration: Static analysis and beyond
Matt Johnson, Developer Advocate Lead @Bridgecrew
Jakub Pavlik, Director of Engineering @Volterra.io
Dec 9, 2020 7:00 AM Pacific Time

Dan Feldman, Principal Software Engineer @Hewlett Packard Enterprise
Umair Khan, Product Marketing Lead @Hewlett Packard Enterprise
Dec 9, 2020 1:00 PM Pacific Time

Member Webinar: Metal³: Kubernetes-native bare metal host management
Maël Kimmerlin, Senior Software Engineer @Ericsson Software Technology
Dec 10, 2020 10:00 AM Pacific Time

Member Webinar: Power to the people – making root/Docker a reality inside a Gitpod Container
Christian Weichel, Chief Architect @Gitpod
Alban Crequy, Director of Kinvolk Labs @Kinvolk
Dec 11, 2020 10:00 AM Pacific Time

Member Webinar: Implementing automated managed k8s service
Mason Choi, Senior Engineer @Samsung SDS
Kangsub Song, Senior Engineer @Samsung SDS
Dec 15, 2020 10:00 AM Korea Time

Member Webinar: Reducing your Kubernetes cloud spend
Webb Brown, CEO @Kubecost
Dec 15, 2020 10:00 AM Pacific Time

Member Webinar: Argo: Real Enterprise-scale with K8s
Al Kemner, Principal Software Engineer and Architect @New Relic
Daniel Jimbel, Staff Engineer @New Relic
Caleb Troughton, Product Manager, Telemetry Data Platform @NewRelic
Dec 16, 2020 7:00 AM Pacific Time




Bye now!!

Yoshiki Fujiwara