KubeWeekly #211
KubeWeeklyは毎週Kubernetesに関する興味深いニュースを提供しています。(https://kubeweekly.io/ )この記事は 2020/04/10に発行された Kube Weekly #211を読んで、感じたことをメモ的にまとめたものです。
私の勘違いや説明不足による誤解もあるかと思いますので、この記事読んで「おっ」と思ったらURLを辿って本文を確認してください。
(過去のKubeWeekly読書メモはこちら)
※この記事は、Z Labの業務の一環として作成したものです。
The Headlines
API Priority and Fairness Alpha
API Priority and Fairness Alpha | |
Authors: Min Kim (Ant Financial), Mike Spreitzer (IBM), Daniel Smith (Google) This blog describes “API Priority And Fairness”, a new alpha feature in Kubernetes 1.18. API Priority And Fairness permits cluster administrators to divide the concurrency of the control plane into different weighted priority levels. Every request arriving at a kube-apiserver will be categorized into one of the priority levels and get its fair share of the control plane’s throughput. |
Kubernetes 1.18でアルファ機能の「API Priority And Fairness」機能の紹介。
この機能はkube-apiserverへのリクエストに優先度を設けるものです。
TOC Welcomes Argo into the CNCF Incubator - Cloud Native Computing Foundation
TOC Welcomes Argo into the CNCF Incubator - Cloud Native Computing Foundation | |
![]() |
Project Blog Today, the CNCF Technical Oversight Committee (TOC) voted to accept Argo as an incubation-level hosted project. The Argo Project is a set of Kubernetes-native tools for running and... |
ArgoがCNCF Incubatorに採択されました。
TOC Votes to Move Dragonfly into CNCF Incubator - Cloud Native Computing Foundation
TOC Votes to Move Dragonfly into CNCF Incubator - Cloud Native Computing Foundation | |
![]() |
Today, the CNCF Technical Oversight Committee (TOC) voted to accept Dragonfly as an incubation-level hosted project. Dragonfly, which was accepted into the CNCF Sandbox in October 2018, is an open... |
コンテナイメージ分散システムであるDragonflyがSandboxからIncubatorに昇格しました。
ICYMI: CNCF Webinars
CNCF Ambassador Webinar: Welcome to CloudLand! An Illustrated Intro to the Cloud Native Landscape - Cloud Native Computing Foundation
CNCF Ambassador Webinar: Welcome to CloudLand! An Illustrated Intro to the Cloud Native Landscape - Cloud Native Computing Foundation | |
![]() |
Like a kid in a theme park, the number of shiny exciting new technologies teams encounter as they move into and re-architect for the cloud can be overwhelming. Thus we... |
CNCF Landscapeについて説明するWebinar
CNCF Member Webinar: Pravega: Rethinking storage for streams - Cloud Native Computing Foundation
CNCF Member Webinar: Pravega: Rethinking storage for streams - Cloud Native Computing Foundation | |
![]() |
Pravega is storage for data streams. Pravega exposes stream as a core storage primitive, enabling applications continuously generating data (e.g., from sensors, end users, servers, or cameras) to ingest and... |
データストリームのためのストレージである Prevega についてのWebinar
CNCF Member Webinar: Best Practices for Deploying a Service Mesh in Production: From Technology to Teams - Cloud Native Computing Foundation
CNCF Member Webinar: Best Practices for Deploying a Service Mesh in Production: From Technology to Teams - Cloud Native Computing Foundation | |
![]() |
Successfully operating a service mesh in production requires much more than just `kubectl apply`: it requires drawing clear lines of responsibility and accountability among platform, service, application, security, and devops... |
サービスメッシュを本番環境に導入するためのベストプラクティスについてのWebinar.
CNCF Member Webinar: New Thoughts on Distributed File System in the Cloud Native Era - Cloud Native Computing Foundation
CNCF Member Webinar: New Thoughts on Distributed File System in the Cloud Native Era - Cloud Native Computing Foundation | |
![]() |
Distributed file system is an area which has been studied for about 20 years since the well-known Google File System. Although there are various of different distributed file systems in... |
クラウドネイティブ時代における分散ファイルシステムについてのWebinar.
実際にJD.comでの事例についても紹介している。
The Technical
Provisioning cloud resources (AWS, GCP, Azure) in Kubernetes
Provisioning cloud resources (AWS, GCP, Azure) in Kubernetes | |
![]() |
You can create and connect to managed cloud resources using the Service Catalog, a tool such as Kubeform or cloud-specific operators such as Config Connector and AWS Operator Service. |
Kubernetesから、AWS, GCP, Azureも各種マネージドサービスをデプロイする方法の紹介。
Service Catalogを使う方法と Kubeformを使う方法などを紹介している。
Developer Workflow - Accelerated Development and Deployment on Kubernetes with Skaffold (101)
Developer Workflow - Accelerated Development and Deployment on Kubernetes with Skaffold (101) | |
![]() |
Development Workflow on Kubernetes - Local Development with Skaffold. The goal of this tutorial is to provide automation for developer workflow on Kubernetes. |
VSCode, Skaffoldを使った開発ワークフローの紹介。
VSCodeのプラグインとSkaffoldを駆使することでローカルで開発するかのようにKubernetes上のアプリを開発することができます。
Controlling outbound traffic from Kubernetes
Controlling outbound traffic from Kubernetes | |
![]() |
We recently finished a major networking project which let us control internal traffic in our platform. And we've been thinking about how we can add similar security to network traffic leaving our platform. |
Kubernetesからインターネットへの通信を制限する方法についての模索の記録。
NetworkPolicyによるポートの制限。IPの制限などから始まり、DNS問い合わせベースの動的なファイアーウォール、ドメイン別の専用プロキシ、とKubernetesならではの解決方法を編み出している。
この記事で制限したいのは、ホスト名ベースの通信制限で、かつHTTP/HTTPSではないものも制限したいというもので、意外とこの要件を満たすソリューションは無いようです。
最終的に採用されている方法は、案外素朴なものなので、こういう要件の制限をしたい方には筆硯の記事です。
Extending Kubernetes with Operators
Extending Kubernetes with Operators | |
![]() |
Kubernetes operators are quickly growing in popularity. But what are they? How do you build one? And why would you build one? |
Kubernetes Operatorの紹介と、Spawnという開発環境用のDBをさっと作るためのオペレータの紹介。
Your own Kubernetes controller - Improving and deploying
Your own Kubernetes controller - Improving and deploying | |
![]() |
In the first post of this series, we described the concept behind a Kubernetes controller. In short, it’s just a plain control loop that reconciles the desired state of the cluster with its current state. In the second post, we implemented a sidecar controller in Java. This third and last post will be focused on where to deploy this Java controller and how to improve it to be on par with a Go one. Running outside the cluster or inside? As mentioned in the first post, there’s no re |
Kubernetes controllerの紹介と、Javaで作られたKubernetes controllerをどうやってKubernetes上で動かすべきかという方法の紹介。
JVMをそのまま使うのではなく、Graal VMを使いネイティブバイナリにビルドする方法を紹介している。
この方法は面倒が多いが、メモリ消費やバイナリ量の削減、コンパイル時最適化など様々な恩恵が受けられるとのこと。
Multi-tenant Kubernetes Clusters with the HAProxy Kubernetes Ingress Controller - HAProxy Technologies
Multi-tenant Kubernetes Clusters with the HAProxy Kubernetes Ingress Controller - HAProxy Technologies | |
![]() |
Learn how to use the HAProxy Kubernetes Ingress Controller when hosting multiple tenants in your cluster and how to configure namespaces, access controls, and resource quotas. |
マルチテナントKubernetesクラスタとHAProxy Kubernetes Ingress Controllerをどのように使うのか?という記事。
Ingressの話だけでなく、複数のNameSpaceを作り、利用者に必要な権限を用意する方法なども詳しく解説されている。
Working With Istio: Track Your Services With Kiali
Working With Istio: Track Your Services With Kiali | |
![]() |
we get to start playing with Istio to understand the features and power it provides. We start by visiting one of the tools that ships with Istio: Kiali. |
Istioを利用し、Kialiによるトラフィックの可視化を実現する方法について。
KialiでWebUIによるBlueGreenの割合の変更などもできるようです。
Be careful when pulling images by short name
Be careful when pulling images by short name | |
![]() |
If you're pulling Linux container images by their "short name" you may be at risk. This post explains how to use the fully qualified name to get the images you need. |
image squattingというコンテナイメージの詐称テクニックの紹介。
これはPodManを使っていると起きる問題で、リポジトリ名を省略した場合のリポジトリ名が意図しないものとなってしまったり、typoにより意図しないものとなることを利用して、偽のコンテナイメージをpullさせるというものです。
省略した指定をやめる、リポジトリの補完リストを最低限のものにする、検証機能を有効にする、などの対策を紹介しています。
Bottlerocket with Fork, Clone, Run! - A Container Optimized OS with a GitOps model
Bottlerocket with Fork, Clone, Run! - A Container Optimized OS with a GitOps model | |
![]() |
Bottlerocket OS is a secure, fast and easy to manage, Linux-based operating system. With EKS as the cluster control plane, Bottlerocket instances join the cluster as workers. It also works out of the box with one of our GitOps models, Fork Clone Run. |
AWSが発表したBottlerocket OSを使ったEKSクラスタを簡単に作るための方法を紹介
この方法でクラスタを作るとGitOpsに必要な設定も自動的に行われる。
Bottlercketを更新するにはnodeに専用のラベルをつけるだけで良い。
Embrace and Replace: Migrating ZooKeeper into Kubernetes
Embrace and Replace: Migrating ZooKeeper into Kubernetes | |
![]() |
A look at how we recently migrated hundreds of ZooKeeper instances from individual server instances to Kubernetes without downtime. |
ZooKeeperをKubernetes上にダウンタイムなく移行した記録。
図入りでわかりやすくマイグレーションの手順を紹介している。kubernetesならではの方法で、従来の方法よりも簡単に実施できそうにみえます。
Useful Interactive Terminal and Graphical UI Tools for Kubernetes
Useful Interactive Terminal and Graphical UI Tools for Kubernetes | |
![]() |
I recently ran an internal hands-on workshop where I demonstrated to our field, marketing, support and engineering on just how easy it is to deploy and manage Tanzu Kubernetes Grid (TKG) Clusters r… |
Kubernetesの可視化ツールを紹介。
Introducing Krustlet, the WebAssembly Kubelet
Introducing Krustlet, the WebAssembly Kubelet | |
Announcing Krustlet |
Rustで書かれWebAssemblyで動作する Kubeletである「Krustlet」の紹介。
Krustletはランタイムとして WASIを使うように作られており、KubernetesクラスタでWebAssemblyのワークロードをサポートできるようになります。
The Editorial
Kubernetes Podcast from Google: Episode 97 - Jaeger, with Yuri Shkuro
Kubernetes Podcast from Google: Episode 97 - Jaeger, with Yuri Shkuro | |
![]() |
Jaeger is a distributed tracing platform built at Uber, and open-sourced in 2016. It traces its evolution from a Google paper on distributed tracing, the OpenZipkin project, and the OpenTracing libraries. Yuri Shkuro, creator of Jaeger and author of "Mastering Distributed Tracing", joins Craig and Adam to tell the story, and explain the hows and whys of distributed tracing. |
Kubernetes Podcast。今回はJaegerの話。ゲストはJaegerの作者であるYuri Shkuro.
kubevious/kubevious
kubevious/kubevious | |
Kubevious project, application centric Kubernetes UI - kubevious/kubevious |
Webブラウザで動作するKubernetesの可視化ツール
Reliable, Self-Healing Kubernetes Explained - Kublr
Reliable, Self-Healing Kubernetes Explained - Kublr | |
![]() |
While infrastructure provisioning and self-healing are key to HA reliable clusters, it’s still not standard in some of the most popular Kubernetes solutions |
Kubernetesにおけるセルフヒーリングについて、アプリケーションレイヤー、Kubernetesコンポーネントレイヤー、インフラレイヤーの3つの種類があり、特にインフラレイヤーのセルフヒーリングについて考える必要があることを紹介している。
Five years of Raspberry Pi clusters - Raspberry Pi
Five years of Raspberry Pi clusters - Raspberry Pi | |
![]() |
Our guest blogger Alex shares artefacts from their half-decade journey building clusters. Featuring video tutorials, magazine articles and helpful links. |
Raspberry Piによる5年間運用しているクラスタの紹介。
リクエストが来たNodeのLEDを点灯させたり、するデモや、ここ5年間でのKubernetes, Raspberry Piの進化について紹介している。
Kubernetes v1.18 advances Windows container support - Open Source Blog
Kubernetes v1.18 advances Windows container support - Open Source Blog | |
![]() |
The Windows community in Kubernetes has been working on improvements that enable even more use cases with the release of Kubernetes v1.18. |
Kubernetes 1.18にてWindowsサポートがより強化された事についての紹介。
CSI対応、 GMSA対応、 RunAsUsername、ContainerDの対応など。
Is there a Helm and Operators showdown? - Open Source Blog
Is there a Helm and Operators showdown? - Open Source Blog | |
![]() |
Helm is a package manager for Kubernetes. Operators are design-pattern-driven pieces of code that encapsulate knowledge for running an application. Yet, there are questions floating around about which one is “the winner.” |
HelmとOperatorのどちらが良いのか?という質問についての回答記事。
まぁ、どちらかが、というよりは、それぞれの解決しようとしている問題が違うので、相互補完的に使っていくのが良さそうです。
Why Linux containers are a CIO's best friend
Why Linux containers are a CIO's best friend | |
![]() |
Linux containers are, by their nature, agile. This is key to effectively maneuvering through and rising above any challenges — or opportunities — that come a business's way. |
コンテナ技術が企業のビジネス戦略として取り組まれるほどに重要なものになってきているという話