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

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

SRE / DevOps / Kubernetes Weekly Reportまとめ#6(3/8~3/13)

この記事は2020/3/8~3/13に発行された下記3つのWeekly Reportを読み、備忘録兼リンク集として残したものです。

  • 誰かの情報源や検索工数削減などになれば幸いです。
DEVOPS WEEKLY ISSUE #480 March 8th, 2020
SRE Weekly Issue #210 March 9th, 2020
KubeWeekly #207: March 13th, 2020

English Version of this blow is here.

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

DEVOPS WEEKLY ISSUE #480 March 8th, 2020

News

A post on optimising a CI build pipeline based on Bazel, looking at the challenge introduced by immutable infrastructure and the benefits of persistent caching.
  • タイトルは「Bazel Performance in a CI Environment」。

  • AWSインスタンス上のGitLab CI環境でBazelのパフォーマンス向上を行なった話。

  • ビルド時間を20分から1-2分に短縮し、キャッシュを適切に利用出来るようになった。

A useful presentation on what we mean by platform, and how platforms and platform teams can reduce the cognitive burden on development teams.
  • タイトルは「Kubernetes Is Not Your Platform, It's Just the Foundation @ QCon London, March 2020」。

  • 3/2から3/6まで開催されていたQCon Londonのプレゼン資料。

  • 「team-centricなKubernetesの採用」をキーワードとして、論じている。

An interesting set of posts on alternatives to writing Kubernetes configuration in YAML files. The same simple example in JSON, C#, F#, Terraform, Java and Python so far.
  • YAMLではなく上記の各プログラミング言語、ツールを使ってKubernetesのコンフィグを書く方法の提案をしているブログ集。

  • 言語ごとにリンクを貼っているので興味ある言語でどうぞ。C#とF#は.NETという括りで同じページです。

Part of a series on building more operable software, this post looks at trailing and leading indicators of operability.
  • タイトルは「Build Operability In – Measures」。

  • この記事は「Build Operability In」をテーマにしたシリーズのPart 2。

  • Architecture/ Telemetry / Operational Readiness / You Build It You Run It / LearningとPart 7まで続く模様。

  • Douglas Hubbard著の「How To Measure Anything」から「組織には測定反転があり、情報価値の低い変数の測定に時間を費やしている」と述べている部分を引用し、これは確かにITの信頼性に当てはまり、テーマである「運用性」もここに含まれているとして効果的な指標を持って計測する必要性を説いている。

A neat visualisation of some of the things that someone wanting to move into system administration would likely want to learn. It does however focus squarely on the tools rather than wider devops issues.
  • タイトルは「DevOps Roadmap」。

  • DevOpsもしくは他の運用のロールとしてのステップバイステップのガイドとなる図。

  • 例として複数の言語、プロダクト、プロトコルなどを表していて良い。

  • 最後のポイントは「Keep Learning」。そして、道は続く。

A two part migration story, moving from EC2 on AWS, to Kubernetes on Google Cloud. Details of data, databases, moving from AWS ALB to Istio and more.
Part 1
Part 2

  • 先週の記事(KubeWeekly #206: March 6th, 2020)で取り上げたAWSからGCPに移行した話。
Many organisations are just starting to adopt more automated approaches. This post highlights a few areas centered around test automation which might make doing so more difficult.
  • タイトルは「5 ways to drive your automation engineers away」。

  • CI/CDパイプラインに不可欠な要素である「テスト自動化」を行える開発とテストのスキルを持つ有能なエンジニアは数ヶ月経っても採用出来ないぐらい供給不足。

  • 優秀な自動化エンジニアを可能な限り保持しておく事が得策なので、自動化エンジニアが会社を去る要素トップ5つを示して、同じ轍を踏まない様に警鐘している。

Tools

Iter8 is a toolset of analytics-driven canary releases and A/B testing, build atop Kubernetes and Istio.
  • クラウドネイティブ開発の為、Kubernetes、Istio上で自動化されたカナリーリリースやA/Bテストを行うツールiter8のページ。1分程度のデモ動画がわかりやすい。

  • GitHubページはこちら

Another tool for writing Kubernetes configuration in anything-but-YAML. cdk8s extends the AWS CDK tool to add Kubeernetes support, allowing you to write your configuration in TypeScript.
  • YAML以外の各プログラミング言語、ツールを使ってKubernetesのコンフィグを書くツール「cdk8s」のGitHubページ。

  • AWS CDKツールを拡張し、Kubernetesをサポートし、現在はTypescryptもしくはPythonでコンフィグを書ける。

  • まだexperimentalプロジェクト。挑戦とフィードバックを絶賛募集中だそうです。

StatusBay is a new dashboard for Kubernetes, focused on deployment. It subscribes to the various events occurring in your cluster to present a nice real-time view. It also supports multiple clusters.
  • Kubernetesのデプロイのプロセスの可視性をもたらすツール「StatusBay」のGitHubページ。

SRE Weekly Issue #210 March 9th, 2020

Articles

Introducing Dispatch

Netflix open sourced their incident management system.

Put simply, Dispatch is:
All of the ad-hoc things you’re doing to manage incidents today, done for you, and a bunch of other things you should’ve been doing, but have not had the time!

Kevin Glisson, Marc Vilanova, Forest Monsen — Netflix

  • 先週の記事(DEVOPS WEEKLY ISSUE #479 March 1st, 2020)で取り上げたNetflix社の社内ツール「Dispatch」のOSS化と内容の紹介記事。
Reading /proc/pid/cmdline can hang forever

I wasn’t aware of this little pitfall of memory cgroups.
rachelbythebay

  • 先週の記事(SRE Weekly Issue #209 March 2nd, 2020)で取り上げたfork() can fail: this is importantで筆者が思ったよりも反響が大きかったので、他の予期せずfailするものを取り上げて書いてみた記事。

  • /proc/pid/cmdlineの読み込みでハングし続ける可能性と仕組みについて。

In space, no one can hear you kernel panic

Your failover DB instance is cute. Try 4x+ redundancy. That’s the kind of engineering required when designing systems to operate in space.
Glenn Fleishman — Increment

  • NASAの宇宙空間、惑星探査のミッションにおける冗長性設計のこれまでとこれからの話。
A single person on-call "rotation" is a critical vulnerability

This post enumerates some of the risks introduced when a single person carries 100% of the on-call duties of a team, and shows why those risks are not simply eliminated by increasing the number of people in the rotation.

Daniel Condomitti — FireHydrant

  • オンコールの1人当番体制のローテーションの脆弱性が、直近のインシデント対応と長期的な成長持続性の両方の健全性にとってクリティカルな影響を与える事について論じている。

  • 1人オンコール担当、1人当番制のローテーションのそれぞれのリスク、グループとしてアラートが飛んできた際の「傍観者効果」など24/365でケアが必要なシステムを運用する際には考慮すべき点が、自社の3人体制の事例も交えながら、わかりやすく簡潔にまとめられている。

Experimental study on the effect of procedure under unexpected situations

This is a pretty nifty experiment showing the importance of letting folks use their judgement to handle unexpected situations rather than relying on adherence to procedures.
Thai Wood — Resilience Roundup (summary)
Makoto Takahashi, Daisuke Karikawa, Genta Sawasato and Yoshitaka Hoshii — Tohoku University (original paper)

  • 毎週インターネットでResilienceをテーマに情報ををネタに記事を書いている「Resilience Roundup」の69個目のIssueとして去年REA symposiumでプレゼンが行われたMakoto Takahashi氏、Daisuke Karikawa氏、Genta Sawasato氏、Yoshitaka Hoshii氏の研究を取り上げている。

  • このグループの議論に参加されたい場合はこちらから参加登録が出来ます。

Coronavirus/COVID-19 and USENIX Conferences

FYI: SRECon Americas West has been rescheduled to June 2-4.

Millions of tiny databases

This week, we have another summary of the Physalia paper. I especially like the bit about poison pills.
Adrian Colyer — The Morning Paper (summary)
Brooker et al. — NSDI’20 (original paper)

  • Adrian Colyer氏によるCSの調査をランダムに見ていくシリーズ。

  • USENIX主催のNSDI '20(2/25から2/27にカリフォルニア州SANTA CLARA)でAWS社のMarc Brooker氏、Tao Chen氏、Fan Ping氏が発表した内容から。

  • スライドPDFとそれぞれ資料があり、絵で見たい方と文字で見たい方で使い分けたり、両方チェックしたり出来て良い。

  • 筆者はAWSのEBSのコントロールプレーンとして構成情報を格納しているPhysaliaの設計の背後にあるプロセスやエンジニアリングプラクティスに思いを馳せて心の底から楽しんでいる。

  • DB障害時の影響範囲=爆発半径(Blast radius)を小さくする為、無数の小さなセルとしてDBを分割して管理し、各セルに格納しているクライアントは別セルの障害の影響を受けない設計を取っている。

  • AWSに限らずDBを扱う時が来たら、このあたりは必ず読み返したい。

How did software get so reliable without proof?

In this case, "proof" means “formal proof”.

It’s not that software got so reliable without proof: it’s that systems that include software got so reliable without proof.

Lorin Hochstein

  • 1996年にチューリング賞受賞者であるサイエンティストC.A.R. Hoare氏が著したHow did software get so reliable without proof?を引用し、多くの説明やポイントで共感する一方、Hoare氏の問いかけがソフトウェアに留まっているのは誤った問いかけ方であり、ソフトウェアを含むシステム全体のより大きな視点で見るべきであると説いている。

Outages

上記各社の障害情報。

KubeWeekly #207: March 13th, 2020

The Headlines

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

Redefining extensibility in proxies – introducing WebAssembly to Envoy and Istio

Craig Box, Mandar Jog, John Plevyak, Louis Ryan, Piotr Sikora (Google), Yuval Kohavi, Scott Weiss (Solo.io)

Google has added dynamic extensibility to Envoy using WebAssembly, and developed an ABI called Proxy-Wasm to ensure that extensions compiled for one version can be used in another. This ABI can be adopted by other proxies, allowing Wasm extensions, initially written for Envoy, to work anywhere. The first use of this extensibility is in the new, lower-latency Istio telemetry system. An SDK (in three languages, with more to come) and an extension hub, built by Solo.io, rounds out the release.

  • Istio.ioにてWebAssembly(Wasm)がEnvoy、Istio1.5にAlpha機能として導入された。

  • 日本語でキャッチアップされたい方は、3/12(木)に配信されたGCPUG Istio 1.5 DayのYouTube動画がオススメ。

  • EnvoyとIstio用のEnvoy Proxy Wasm extensionsをビルド、デプロイ、シェア、ディスカバリーするツールとリポジトリを提供するWebAssembly Hubも要チェック。

ICYMI: CNCF Webinars

Weekly recap of CNCF member and project webinars that you might have missed.

CNCF Member Webinar: Immutable Infrastructure in the Age of Kubernetes

Timothy Gerla, CEO @Talos Systems

  • Talos Systems社のCEO Timothy Gerla氏によるKubernetes時代におけるイミュータブルインフラストラクチャーと題したWebinar動画。

  • 以前はAnsibleのco-founderにしてRed Hatから買収された際のCTOなどを務めていたとの事。

  • Talos Systems社のロゴがAnthosのロゴと色違いで気になる。

CNCF Member Webinar: Kubernetes Security Best Practices for DevOps

Connor Gorman, Principal Engineer @StackRox

  • StackRox社のPrincipal EngineerであるConnor Gorman氏によるDevOpsにおけるKubernetesのSecurityベストプラクティスのWebinar動画。

  • モデレーターの方とQ&Aをしながら進行。RBAC、Namespace、Network Policyなどを活用していく事をデモも交えながら解説している。

CNCF Member Webinar: Use Open Source, Bare Metal, & 5G to Achieve Autonomous Drone Delivery!

Cody Hill, Field CTO @Packet

  • Packet社のField CTOであるCody Hill氏のドローンでの自律的な配達を達成する為にOSS、ベアメタル、5Gを活用する話のWebinar動画。

  • Kubernetes、EmitterOpenFaaS、Prometheus、Grafana、PostgreSQL、MapboxMetabaseなどのツールを紹介し、デモを行なっている。

  • ドローンを含む構成図は初めて見た。技術で変わっていく世界観が面白い。

CNCF Project Webinar: What’s New in Linkerd 2.7

Oliver Gould, Lead Creator of Linkerd and CTO @Buoyant

  • Buoyant社のCTOかつLinkerdのLead CreatorであるOliver Gould氏がLinkerdを紹介し、バージョン2.7のアップデート情報、これからのロードマップについて解説しているWebinarの動画。

The Technical

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

What is a Service Mesh?

Mohamed Ahmed, Magalix

  • サービスメッシュが必要された背景をマイクロサービスの文脈から説明し、Envoyの代表的な使い方、Envoyを利用したハンズオンを解説している。

  • 手書きのイメージ図とエディターのカラフルな図の対比が面白い。

Managing service meshes with Meshery

Peter Jausovec, Learn cloud-native

  • マルチサービスメッシュの管理プレーンであるMesheryの記事。サービスメッシュとサービスメッシュ上で動いているアプリのライフサイクル、構成、パフォーマンスの管理を提供する。

  • ベンダー、プロジェクトニュートラルなツールとして異なるサービスメッシュのパフォーマンスをベンチマークするツールとしての使われる事も期待されている。

The Complete Guide to Kubernetes Monitoring

Sematext

  • サブタイトルは「Learn what Kubernetes metrics to monitor, how to do it & what are the best open-source and commercial tools to help ensure peak performance of your cluster.」。

  • この記事ではKubernetesのモニタリングの重要性、追うべきクリティカルなメトリック、仕事を容易にするモニタリングツールの紹介を行なっている。

statusbay: Kubernetes deployment visibility

Kubernetes deployment visibility like a pro. https://statusbay.io

  • 上記DEVOPS WEEKLY ISSUE #480 March 8th, 2020でも取り上げたので割愛。
What makes a good Operator?

Daniel Messer & Chris Short, Red Hat

  • Operatorという言葉がCoreOSのチームによって2016年に生み出され、ここ2年で急激に人気を集めている流れについて触れ、Operator Framework Communityが出しているベストプラクティスを紹介し、ポイントとなる部分を挙げている。
Connecting AWS managed services to your Argo CD pipeline with open source Crossplane

Adrian Cockcroft, AWS

  • OSSCrossplaneの紹介およびArgo CDとAWSマネージドサービスのパイプライン作成のハンズオン。CrossplaneはAWS、GCP、Azureをサポートしている。

  • クラウドネイティブなインフラの機能、複雑性が高まるにつれて、GitOpsとArgo CDflux CDなどのツール導入が進んでいる背景を説明している。

NTP in a Kubernetes cluster

Balkrishna Pandey, goGlides

  • 筆者が「RUNNING NTP IN A CONTAINER」というNTP(Network Time Protocol)をDocker上で設定しているブログを見たので、Kubernetesクラスター上でOpenNTPDを使ってやってみたという話。

The Editorial

Articles, announcements, and more that give you a high-level overview of challenges and features.

Docker announces new roadmap for developer experience: "Helping You and Your Development Team Build and Ship Faster"

Justin Graham, Docker

  • Docker社のVice President of ProductsであるJustin Graham氏の自社サイト内のブログ。

  • 開発環境の複雑性について触れ、Docker社がDocker Hub、Docker Desktop、OSSを中心としてコミュニティーにProjectを立てていく事、他のProjectにコントリビュートしていく事、Docker社として初めてroadmapを公開している事を説明している。

Announcing Istio 1.5

Istio Team

  • Istio 1.5のリリース情報。IstioのコントロールプレーンがシングルバイナリーのIstiodに集約されシンプルになるなど。

  • The Headlinesでも取り上げているのでその他の詳細は割愛。

  • 経緯やポイントを理解するには、3/12(木)に配信されたGCPUG Istio 1.5 DayのYouTube動画がとにかくオススメです。

VMware Tanzu now Generally Available

Ray O’Farrell, VMware

  • 6ヶ月前にVMworld USで発表されたVMware TanzuがGAになった。

  • 「VMware環境でKubernetesが使える」というよりも、プラットフォームとして宣言的な管理をインフラ全体にもたらしていく動きの1つとして捉えています。

gRPC, with Richard Belleville

Adam Glick and Craig Box, Kubernetes Podcast from Google

How does Monzo keep 1,600 microservices spinning? Go, clean code, and a strong team

Tim Anderson, The Register

  • 3/2から3/6まで開催されていたQCon LondonでMonzo社が発表した内容の解説記事。
Open Policy Agent’s Mission to Secure the Cloud

Jevon MacDonald, manifold via The New Stack

  • ポリシー制御を行うOSS Open Policy Agent (OPA)のNew Stackの紹介記事。

  • Pinterestのsoftware engineer William Fu氏、TripAdvisor社のLuke Massa氏のOPA Summit2019のプレゼン動画とコメント紹介している。

  • セキュリティーベンダーがOPAに関心を寄せており、異なるシステム間でバラバラなポリシー制御が統一されていく事が期待されている事などを紹介。

How Visa built its own container security solution

Lucian Constantin, CSO

  • Visa社がレガシーなモノリシックアプリからマイクロサービスアプリに移行を進める中で内製のコンテナセキュリティーをOSSを利用して開発した話。

  • ベンダー製品では自社の課題が解決出来なかったので、内製する事を決めた。

  • 内製する事を決めたら運用、開発、セキュリティーのチームの距離が近くなり、互いにサポートし合うようになり、DevSecOpsの方向に向かった。

Containers and Kubernetes: 3 transformational success stories

Bob Violino, CIO

  • コンテナとKubernetesによるクラウド移行という転換を成功させた3つ(Expedia Group、Primerica、Clemson University)の事例紹介。
Top Six Open Source Tools for Monitoring Kubernetes and Docker

Ran Ribenzaft, DevOps.com

  • Kubernetesとコンテナをモニタリング、分析するツールとして6つのOSS(Prometheus、Grafana、Elastic Stack、Sensu Go、Sysdig Inspect、Jaeger)を紹介。個人的にSensu GOはノーマークだった。

  • 筆者が比較表を出しているので、用途に応じてツールを検討出来ます。本文中で触れていないEpsagonがしれっと7つ目として右端に入っていて「全部イケる!」ってなっているのは謎。

Essential things to know about container networking

John Edwards, NetworkWorld

Webinar Registration

気になるWebinarがあれば登録してチェックを。以下は今週ピックアップされていたものです。

Calico networking with eBPF
Chris Hoge, Developer Advocate @Tigera
Shaun Crampton, Principal Engineer @Tigera
Member webinar
March 17, 2020 10:00 AM Pacific Time
REGISTER NOW »

Democratizing analytics with cloud native data warehouses on Kubernetes
Robert Hodges, CEO @Altinity
Vladislav Klimenko, Senior Software Engineer @Altinity
Member webinar
March 18, 2020 10:00 AM Pacific Time
REGISTER NOW »

Small Is Not Always Beautiful – Moving Enterprise Applications to the Cloud
Paul Jenkins, Product Manager @Oracle Cloud Infrastructure (OCI) Cloud Native Services
Tony Vertenten, co-founder and CTO @Intris
Member webinar
March 19, 2020 9:00 AM Pacific Time
REGISTER NOW »

How to migrate a MySQL Database to Vitess
Liz van Dijk, @PlanetScale
Project webinar
March 20, 2020 10:00 AM Pacific Time
REGISTER NOW »

Argo CD, Flux CD and the GitOps Revolution
Jay Pipes Principal, Open Source Engineer @Amazon Web Services
Member webinar
March 24, 2020 10:00 AM Pacific Time
REGISTER NOW »

Lowering the Barrier to Kubernetes Proficiency – Navigating the Stormy Seas of Information
Chris Black, Sr. Solutions Engineer @CircleCI
Member webinar
March 25, 2020 10:00 AM Pacific Time
REGISTER NOW »

Continuous profiling Go application running in Kubernetes
Gianluca Arbezzano, Site reliability engineer @InfluxData
Ambassador webinar
March 27, 2020 10:00 AM Pacific Time
REGISTER NOW »

Welcome to CloudLand! An Illustrated Intro to the Cloud Native Landscape
Kaslin Fields, Developer Advocate @Google
Ambassador webinar
April 3, 2020 10:00 AM Pacific Time
REGISTER NOW »

Best Practices for Deploying a Service Mesh in Production: From Technology to Teams
Buoyant
Member webinar
April 8, 2020 10:00 AM Pacific Time
REGISTER NOW »

Kubernetes 1.18
Kubernetes team
Project webinar
April 23, 2020 9:00 AM Pacific Time
REGISTER NOW »

Pivoting Your Pipeline from Legacy to Cloud Native
Tracy Ragan, CEO of DeployHub and CDF Board Member
Member webinar
June 30, 2020 10:00 AM Pacific Time
REGISTER NOW »

いかがでしたか?気になる記事や情報はありましたか?

私もまだ内容を咀嚼出来ていないものが多々ありますので、この備忘録兼リンク集を活用しながら理解を深めていきたいと思います。

では、また。

Bye now!!

Yoshiki Fujiwara