KubeWeekly #204

KubeWeeklyは毎週Kubernetesに関する興味深いニュースを提供しています。（https://kubeweekly.io/ ）この記事は 2020/02/21に発行された [Kube Weekly #204](https://kubeweekly.io/2020/02/21/kubeweekly-204/)を読んで、感じたことをメモ的にまとめたものです。
私の勘違いや説明不足による誤解もあるかと思いますので、この記事読んで「おっ」と思ったらURLを辿って本文を確認してください。

(過去のKubeWeekly読書メモは[こちら](https://qiita.com/tags/kubeweekly))

※この記事は、[Z Lab](https://qiita.com/organizations/zlab)の業務の一環として作成したものです。



# The Headlines

## Why I Contribute to the Open Source Community—and You Should Too
<table>
<tr>
  <td colspan="2"><a href="https://upshotstories.com/stories/why-i-contribute-to-the-open-source-community-and-you-should-too">Why I Contribute to the Open Source Community—and You Should Too</a></td>
</tr>
<tr>
  <td><img src="https://readupshot.s3.amazonaws.com/uploads/story/action_image/652/a5997d11-1e65-4f28-ab1f-43b1ec26733c.png"></td>
  <td>I had a difficult childhood. I was shuffled from one boys' home to another and had little control over my life. But I was tough and smart, and I emancipated at an early age, which allowed me to start living the way I wanted while I was still in my teens.</td>
</tr>
</table>

Yahoo、シマンテック、Sysdigと、IT企業を渡り歩いてきた筆者のオープンソースに対する考え方と半生の紹介。

## Episode 180 – KubeCon/CloudNativeCon Preview
<table>
<tr>
  <td colspan="2"><a href="https://roaringelephant.org/2020/02/18/episode-180-kubecon-cloudnativecon-preview/">Episode 180 – KubeCon/CloudNativeCon Preview</a></td>
</tr>
<tr>
  <td><img src="https://roaringelephant.org/wp-content/uploads/sites/5/2020/02/KubeCon_CoChairs.png"></td>
  <td>Not a regular news episode this time. Instead, we are starting our KubeCon/CloudNativeCon Amsterdam coverage and have co-chairs Vicki Cheung and Constance Caramanolis on as guest to tell us all about these conferences. If you’ve never attended one of these, this discussion will give a good idea on what to expect and for seasoned attendees, …</td>
</tr>
</table>

KubeCon/CloudNativeCon AmsterdamのプレビューがテーマのPodcast

# The Technical

## Open Policy Agent : Microservices Authorization Simplified - InfraCloud Technologies
<table>
<tr>
  <td colspan="2"><a href="https://www.infracloud.io/opa-microservices-authorization-simplified/">Open Policy Agent : Microservices Authorization Simplified - InfraCloud Technologies</a></td>
</tr>
<tr>
  <td><img src="https://www.infracloud.io/wp-content/uploads/2019/12/Open-Policy-Agent-Microservices-Authorization-Simplified.jpg"></td>
  <td>This post explains how Open Policy Agent can be used in microservices architecture to implement policy driven authorization.</td>
</tr>
</table>

OPAを使ったアプリケーションの実例を示し、OPAの「認可」の機能について紹介している。

## Deploying Envoy and Kafka
<table>
<tr>
  <td colspan="2"><a href="https://medium.com/@adam.kotwasinski/deploying-envoy-and-kafka-8aa7513ec0a0">Deploying Envoy and Kafka</a></td>
</tr>
<tr>
  <td><img src="https://miro.medium.com/max/770/1*fHutlR7GYqZXv3-1NOhCWQ.png"></td>
  <td>Envoy can be deployed as a proxy for Kafka brokers to collect Kafka broker-level metrics</td>
</tr>
</table>

Envoy 1.13の提供する [Kafka broker-level filter](https://www.envoyproxy.io/docs/envoy/v1.13.0/configuration/listeners/network_filters/kafka_broker_filter) の紹介。
これを使うことで、Kafkaのbrokerへのリクエストを中継することができ、そのメトリクスを取得することもできる。

brokerへの全ての接続をEnvoy経由にする方法と、clientからの接続のみをEnvoy経由にし、broker同士の通信はそのまま行う方法が紹介されている。

## Kafka Broker filter — envoy tag-v1.13.0 documentation
<table>
<tr>
  <td colspan="2"><a href="https://medium.com/@adam.kotwasinski/deploying-envoy-and-kafka-8aa7513ec0a0">Kafka Broker filter — envoy tag-v1.13.0 documentation</a></td>
</tr>
</table>

SPIFFEとSPIREの紹介プレゼンのYoutube動画
透明なホワイトボードのようなものに図を書きながらの説明。

## Find an optimal set of nodes for a Kubernetes cluster
<table>
<tr>
  <td colspan="2"><a href="http://blog.kubecost.com/blog/cluster-right-sizing/">Find an optimal set of nodes for a Kubernetes cluster</a></td>
</tr>
<tr>
  <td><img src="http://blog.kubecost.com//assets/images/kubecost-icon.png"></td>
  <td>One of the most impactful ways to reduce spend on Kubernetes infrastructure is to make sure your clusters are optimally sized for the workloads they run.  Working with many teams over the past year we have seen that it’s not so obvious how to arrive at an optimally-sized cluster, even in autoscaling environments.  In response, we are publicly launching a new tool that we’ve used to help teams recently!  While implementing this solution with users so far we’ve seen savings in the range of 25-60%, even having a major impact in autoscaling environments.  </td>
</tr>
</table>

無料で適切なクラスタサイズを診断してくれるツールKubecostの紹介。
現状はGCP,AWSのみ対応しており、クラスタを診断すると、適切なマシンのフレーバーとその数を教えてくれるらしい。
開発環境や本番環境の種別を登録することで、どの程度の負荷までを許容するかなどの閾値を変更できるようだ。

## gcloud container clusters create  |  Cloud SDK Documentation
<table>
<tr>
  <td colspan="2"><a href="https://cloud.google.com/sdk/gcloud/reference/container/clusters/create">gcloud container clusters create  |  Cloud SDK Documentation</a></td>
</tr>
<tr>
  <td><img src="https://cloud.google.com/images/social-icon-google-cloud-1200-630.png"></td>
</tr>
</table>

GKEの機能としてNode Pool Locationが追加されました。クラスタを作成する際に、VMが作成されるゾーンを指定することができるようです。


## Cluster upgrades  |  Kubernetes Engine Documentation  |  Google Cloud
<table>
<tr>
  <td colspan="2"><a href="https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-upgrades">Cluster upgrades  |  Kubernetes Engine Documentation  |  Google Cloud</a></td>
</tr>
<tr>
  <td><img src="https://cloud.google.com/images/social-icon-google-cloud-1200-630.png"></td>
</tr>
</table>

GKEのアップグレードの方法をより細かに設定することができるようになったようです。
構成台数の多いクラスタをなるべく早くにアップグレードしたいなどの場合に役立ちそうです。

# The Editorial

## Architecting for Multicluster Kubernetes
<table>
<tr>
  <td colspan="2"><a href="https://linkerd.io/2020/02/17/architecting-for-multicluster-kubernetes/">Architecting for Multicluster Kubernetes</a></td>
</tr>
<tr>
  <td><img src="https://linkerd.io/uploads/ruler.png"></td>
  <td>Recently, the Linkerd community has been spending time tackling the challenge of multicluster Kubernetes. How can we apply features like Linkerd's zero-config automatic mTLS, or traffic splitting, across multiple Kubernetes clusters? What should the service mesh do, and more importantly: what should the service mesh not do?</td>
</tr>
</table>

Linkerdのマルチクラスタ対応にあたっての要件の整理。

- クラスタ内のオーバーレイネットワークのような階層型のネットワークのサポート
- 個々のクラスタの独立性を維持する
- ここのクラスタで独立したコントロールプレーンをもつ

などを挙げている。

## Five Surprising Ways Enterprises Are Putting Kubernetes To Work
<table>
<tr>
  <td colspan="2"><a href="https://www.forbes.com/sites/forbestechcouncil/2020/02/20/five-surprising-ways-enterprises-are-putting-kubernetes-to-work/">Five Surprising Ways Enterprises Are Putting Kubernetes To Work</a></td>
</tr>
<tr>
  <td><img src="https://thumbor.forbes.com/thumbor/600x315/https%3A%2F%2Fblogs-images.forbes.com%2Fforbestechcouncil%2Ffiles%2F2020%2F02%2Fa-23-1-500x500.jpg"></td>
  <td>While Kubernetes has become the de facto standard for orchestrating applications in containers, the way it’s being used is also expanding as developers, vendors and enterprise users extend the technology to serve other important functions in the stack.</td>
</tr>
</table>

エンタープライズ企業におけるKubernetesの活用について

- オンプレと同じようにクラウドを使う
- ステートフルなアプリもステートレスのアプリと同じように簡単にデプロイできる
- アプリケーションのライフサイクルを全て管理する
- インフラのための新しいコントロールプレーン
- AIの迅速な導入

## eBPF and Falco, with Leonardo Di Donato
<table>
<tr>
  <td colspan="2"><a href="https://kubernetespodcast.com/episode/091-ebpf-and-falco/">eBPF and Falco, with Leonardo Di Donato</a></td>
</tr>
<tr>
  <td><img src="https://kubernetespodcast.com/_assets/images/Kubernetes-Podcast-Logo_1400x1400.png"></td>
</tr>
</table>

Kubernetes Podcast.eBPFとFalcoの話。
ゲストはSysdigのエンジニアLeonardo Di Donato

## Security concerns hampering adoption of containers and Kubernetes
<table>
<tr>
  <td colspan="2"><a href="https://www.techrepublic.com/article/security-concerns-hampering-adoption-of-containers-and-kubernetes/">Security concerns hampering adoption of containers and Kubernetes</a></td>
</tr>
<tr>
  <td><img src="https://tr4.cbsistatic.com/hub/i/r/2019/01/11/a4895b2a-18cc-41f1-9884-37f68723f7b5/thumbnail/770x578/22bc068684dfa880e7a8c4996fb13466/kubernetes.jpg"></td>
  <td>According to a StackRox study, more than 90% of respondents have experienced a security incident in deployments in the last year.</td>
</tr>
</table>

セキュリティに対する懸念によりコンテナやKubernetesの導入が妨げられているという話。
調査結果の数字を交えて説明してる。

## Google Identifies Kubernetes-Ready Storage for Anthos - The New Stack
<table>
<tr>
  <td colspan="2"><a href="https://thenewstack.io/google-identifies-kubernetes-ready-storage-for-anthos/">Google Identifies Kubernetes-Ready Storage for Anthos - The New Stack</a></td>
</tr>
</table>

Googleのオンプレ用のKubernetesソリューションであるAnthosに、ストレージの機能が追加されました。
具体的にはDell, NetApp, Portworx, Robin.io, HPE, VMware, Pure StorageのストレージをAnthots Ready Storageとして公表しています。

## Managed Kubernetes Services Make K8s Simple for Platform Teams and App Developers - The New Stack
<table>
<tr>
  <td colspan="2"><a href="https://thenewstack.io/managed-kubernetes-services-make-k8s-simple-for-platform-teams-and-app-developers/">Managed Kubernetes Services Make K8s Simple for Platform Teams and App Developers - The New Stack</a></td>
</tr>
</table>

マネージドKubernetesによりKubernetesを簡単に扱えるようになるという話と、それらのマネージドサービスがどういう目的で作られているかという提供者からの紹介。

## Linux Foundation study throws the open source sustainability debate into question
<table>
<tr>
  <td colspan="2"><a href="https://www.techrepublic.com/article/new-study-throws-the-open-source-sustainability-debate-into-question/">Linux Foundation study throws the open source sustainability debate into question</a></td>
</tr>
<tr>
  <td><img src="https://tr2.cbsistatic.com/hub/i/r/2019/08/15/5a434cfa-bd6c-414f-b82b-142dbb59b7b5/thumbnail/770x578/ce14e607585b8232713c27a6e03842c5/burnout.jpg"></td>
  <td>Commentary: We may be talking about sustainability and open source in the wrong way.</td>
</tr>
</table>

オープンソースプロダクトの開発は「持続可能なのか？」という話。
Linux Foundationの調査により、上位200のオープンソースソフトウェアのメンテナのうちの75%以上は、フルタイム、またはパートタイムとしての給料をもらっているようです。
しかし残りのエンジニアはそうではなく隙間時間や趣味の時間を費やして貢献をしています。

また給料が出ているとしても、それ以上にプレッシャーとなる業務であり、場合によっては燃え尽き症候群になる可能性もあります。

この記事では、これらの事実の紹介と、今以上に持続可能な体制を維持する必要性について述べています。