KubeWeekly #214: May 1, 2020
個人メモです。
- The Headlines
- ICYMI: CNCF Webinars
- CNCF Ambassador Webinar: CKA / CKAD
- CNCF Member Webinar: Kuma: Service Mesh and the Future of Application Connectivity
- CNCF Member Webinar: Building Zero Trust based Authentication in Healthcare with SPIRE
- CNCF Member Webinar: Best Practices In Implementing Container Image Promotion Pipelines
- CNCF Community Webinar: How to Conduct a GREAT Live Stream
- Tweet
- The Technical
- Life of a Vitess Cluster
- Two-phased Canary Rollout with Open Source Gloo
- Kubernetes state management with Pulumi and Python
- Simulating Clock Skew in K8s Without Affecting Other Containers on the Node
- Inside Kinvolk Labs: Investigating Kubernetes performance issues with BPF
- kubernetes-azure-devops-dragdrop
- Istio Upgrades Reloaded | A demonstration of revisions tech in 1.6
- An (Opinionated) Guide to Understanding Kubernetes Network Architecture
- Encrypting and storing Kubernetes secrets in Git
- Why strace doesn’t work in Docker
- The Editorial
- Open Policy Agent, with Tim Hinrichs and Torin Sandall
- Announcing Vitess 6
- Essential Kubernetes Extensions Explained
- Tidepool Replatforms Diabetes Data Service from Custom Tooling to Open Source with Gloo and Kubernetes
- Container security meets Kubernetes: What IT pros need to know
- Couchbase Updates Operator for Database Running on Kubernetes Clusters
- How to scale a deployment within a Kubernetes cluster
- 個人メモ
The Headlines
CNCF Announces Helm Graduation
HelmがGraduationに。
KubeCon + CloudNativeCon is Going Virtual
KubeCon/CloudNativeCon Europe2020はVirtual開催されることとなった。(August 17-20)
Attendee RegistrationはUSD $75に。やすい。
日本の方の発表はあるんだろうか。後で調べておこう。
ICYMI: CNCF Webinars
CNCF Ambassador Webinar: CKA / CKAD
CKA/CKADのレクチャー。
勉強コンテンツかと思ったらCKA/CKADのテスト形式(カメラが必要だとか、机の下までテスト前に確認されるよとか、--dry-runでYAMLを生成しようとか)についての説明がメインだった。
こういう情報も大事なのでテスト受ける方はみておくとよいと思う。
CNCF Member Webinar: Kuma: Service Mesh and the Future of Application Connectivity
www.cncf.io (動画未視聴)
Service MeshのKumaについて。 Service Meshといえば下記の資料が大変勉強になった。ありがとうございます。 (最近Kumaについても登壇されてた肩がいた気がするのだが失念してしまった)
Service Mesh Interfaceとそのエコシステム / Service Mesh Interface and its Ecosystem - Speaker Deck
CNCF Member Webinar: Building Zero Trust based Authentication in Healthcare with SPIRE
www.cncf.io (動画未視聴)
SPIRE is a production-ready implementation of the SPIFFE APIs that performs node and workload attestation in order to securely issue SVIDs to workloads, and verify the SVIDs of other workloads, based on a predefined set of conditions.
(そもそもSPIFFEのことをよくわかってないので勉強する・・・)
CNCF Member Webinar: Best Practices In Implementing Container Image Promotion Pipelines
www.cncf.io (動画未視聴)
Conclusions - Build Only Once - Separate Environments - Promote What You've Built - Own Your Dependencies
CNCF Community Webinar: How to Conduct a GREAT Live Stream
www.cncf.io (動画未視聴)
カンファレンスの配信について、YoutubeやTwitchなどの効果的な使用方法を紹介するウェビナー 先日開催されたInfra Study Meetupでは下記のようなこともあった。 (運営のみなさま、いつもありがとうございます。)
Tweet
The kubectx you love is now reborn today!
— ahmet alp balkan (@ahmetb) 2020年4月29日
I've published a new version of `kubectx` and `kubens`:
🚀 written in Go
🌈 supports Windows
🏎 8-15x faster switching clusters
🧠 preserves your kubeconfig YAML format
Please try it out, and give feedback:https://t.co/toBK78kwhG pic.twitter.com/YVU4yITBtO
kubectx/kubensがシェルスクリプトからGoに変更に。
とても便利なツールなのでみんな使おう。
The Technical
Life of a Vitess Cluster
Vitess | A database clustering system for horizontal scaling of MySQL
Vitessをインストールしたとき、裏でどのようなことが行われているかの説明。 vtctldの設定やcellの生成、VTGateの設定などハンズオン形式で説明されている。
Two-phased Canary Rollout with Open Source Gloo
Two-phased Canary Rollout with Open Source Gloo - Kubernetes
Glooをつかったカナリアリリースの設計。下記のような流れをGlooでどのようにするか。
gateway.solo.io/v1
のVirtualService
Resourceでリクエストを振り分ける際のHeaderを記載したりしている。
(ServiceMeshっぽいなと思ったが、GlooはAn Envoy-Powerd API Gatewayな製品)
Kubernetes state management with Pulumi and Python
Kubernetes state management with Pulumi and Python | Maksim Ramanouski
Pulumiの紹介記事。
AnsibleやTerraformとの比較が書かれており、構成管理ツールとしてどのようなことができるのかがまとまっている。
下記のようなコードで管理する。
""" Creating a Kubernetes Deployment """ import pulumi from pulumi_kubernetes.apps.v1 import Deployment app_labels = { "app": "nginx" } deployment = Deployment( "nginx", spec={ "selector": { "match_labels": app_labels }, "replicas": 1, "template": { "metadata": { "labels": app_labels }, "spec": { "containers": [{ "name": "nginx", "image": "nginx" }] } } }) pulumi.export("name", deployment.metadata["name"])
Simulating Clock Skew in K8s Without Affecting Other Containers on the Node
Simulating Clock Skew in K8s Without Affecting Other Containers on the Node | TiDB
Clock Skewとはネットワーク内のNode上のクロック間の時間差をあらわす言葉。分散システムの信頼性の問題を引き起こす可能性がある。
そのClock SkewをChaos MeshのTimeChaosを使ってシミュレーションするという記事。
Inside Kinvolk Labs: Investigating Kubernetes performance issues with BPF
Inside Kinvolk Labs: Investigating Kubernetes performance issues with BPF | Kinvolk
セキュリティ監査からネットワークのトラブル、不可解なパフォーマンス問題のトラブルシュートをBPFでどのようにやるか。
具体的な例(Nginx/Fluentd/Apache Flume)を出しつつどのように調査したのかをまとめている。
調査の結果、kubenetのバグということがわかったのでissueを立てて対応したとのこと。 kubenet: repeated ebtables rule causes bad network performances (v1.16 and v1.17 only) · Issue #89633 · kubernetes/kubernetes · GitHub
kubernetes-azure-devops-dragdrop
Azure DevOps Pipelineを起動させてHelmチャートを任意のKubernetesクラスタにデプロイするNode.jsアプリ。
(画面を見てもらった方がわかりやすいと思うので、上のリンクをどうぞ)
Istio Upgrades Reloaded | A demonstration of revisions tech in 1.6
https://www.youtube.com/watch?v=POlpwBdXfbE (動画未視聴)
Istioのカナリアアップデート機能の説明。
このアプローチだと同一Kubernetesクラスタで複数のIstio Control Planeを実行できる(らしい)
Istio / Introducing istiod: simplifying the control plane
Installing, upgrading, and removing Istio no longer require a complicated dance of version dependencies and startup orders. For example: To upgrade, you only need to start a new istiod version alongside your existing control plane, canary it, and then move all traffic over to it.
An (Opinionated) Guide to Understanding Kubernetes Network Architecture
An (Opinionated) Guide to Understanding Kubernetes Network Architecture
Kubernetesのネットワークの説明。
クラスタ外部から内部へのトラフィックをルーティングする方法を理解するために、Kubernetesのネットワークアーキテクチャの詳細について説明。
Encrypting and storing Kubernetes secrets in Git
Encrypting and storing Kubernetes secrets in Git
kubesealをつかった暗号化の説明。
GitHub - bitnami-labs/sealed-secrets: A Kubernetes controller and tool for one-way encrypted Secrets
Why strace doesn’t work in Docker
Why strace doesn't work in Docker
strace
コマンドがコンテナないで動かないことに気づいた筆者の調査まとめ。
Dockerのソースコードレベルまで深堀して原因調査をされている。
The Editorial
Open Policy Agent, with Tim Hinrichs and Torin Sandall
Kubernetes Podcast from Google: Episode 101 - Open Policy Agent, with Tim Hinrichs and Torin Sandall
OPAの説明。(Kubernetes PodCast)
Announcing Vitess 6
Announcing Vitess 6 - Cloud Native Computing Foundation
Vittes6のアナウンス。
Essential Kubernetes Extensions Explained
Essential Kubernetes Extensions Explained - Kublr
Kubernetesに関連する諸々の説明。 オーバーレイネットワーク、クラウドネイティブストレージ、CI/CDフレームワーク・・・。
Tidepool Replatforms Diabetes Data Service from Custom Tooling to Open Source with Gloo and Kubernetes
TidepoolのGloo/Kubernetes導入事例。
Tidepoolは糖尿病患者、そのケアチーム、研究者にとって糖尿病データをよりアクセスしやすく、実用的で、意味のあるものにすることを目的とした非営利団体。 Liberate your diabetes data | Tidepool
Container security meets Kubernetes: What IT pros need to know
Container security meets Kubernetes: What IT pros need to know - TechRepublic
コンテナセキュリティについて知っておくべきことの紹介。
Couchbase Updates Operator for Database Running on Kubernetes Clusters
Couchbase Updates Operator for Database Running on Kubernetes Clusters - Container Journal
Couchbase Operatorのアップデートのおしらせ。
バックアップとリカバリ、レプリケーション、セキュリティタスクを自動化する機能も提供されるようになったとのこと。
How to scale a deployment within a Kubernetes cluster
How to scale a deployment within a Kubernetes cluster - TechRepublic
Deploymentのスケールの説明。
個人メモ
CKA/CKADのウェビナーが結構面白かった。