LoginSignup
2
1

More than 5 years have passed since last update.

KubeWeekly #164

Last updated at Posted at 2019-03-15

はじめに

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

The Headlines

Cloud Native Computing Foundation Announces Schedule for KubeCon + CloudNativeCon Europe 2019

Cloud Native Computing Foundation Announces Schedule for KubeCon + CloudNativeCon Europe 2019
Foundation’s biggest European event to date will feature talks by Ant Financial, AT&T, Dyson, Etsy.com, GO-JEK, NTT Corporation, NVIDIA, Offerup, Spotify, Zalando, and more SAN FRANCISCO, Calif. – March 13,...

KubeCon + CloudNativeCon Europe2019のスケジュールが発表されました。
今回は10000人以上が参加する予定らしい。

最大で8Trackもあるようです。

How Airbnb Simplified the Kubernetes Workflow for 1000+ Engineers

How Airbnb Simplified the Kubernetes Workflow for 1000+ Engineers
Melanie Cebula talked about the internal tooling and strategies Airbnb adopted to support over 1000 engineers concurrently configuring and deploying over 250 critical services to Kubernetes. One key enabler was a layer of abstraction and generation of Kubernetes configuration from higher level primitives using standardized environments and namespaces (and automated validations whenever possible).

AirbnbでどのようにKubernetesのワークフローを簡素化したのかという話。

1000人を超えるエンジニアが、250以上のサービスを運用し、一日平均500回デプロイしている。
kube-genという社内ツールを作成した。これはhelm, kustomize, kaptanなどと似たようなツールだが、Airbnbのワークフローに特化した作りとなっているようだ。

またkというコマンドラインツールを作った、これはkubectlやdocker、kube-genのラッパーのようだ

Raw Block Volume support to Beta

Raw Block Volume support to Beta
Authors: Ben Swartzlander (NetApp), Saad Ali (Google) Kubernetes v1.13 moves raw block volume support to beta. This feature allows persistent volumes to be exposed inside containers as a block device instead of as a mounted file system. What are block devices? Block devices enable random access to data in fixed-size blocks. Hard drives, SSDs, and CD-ROMs drives are all examples of block devices. Typically persistent storage is implemented in a layered maner with a file system (like ext4) on top of a block device (like a spinning disk or SSD).

Kubernetes v1.13にてRaw Block Bolumeがベータになりました。In-treeのいくつかの実装と、CSIで利用できるようです。

これによりデータベースやSDSなどのアプリケーションがサポートできるようになるようです。
注意点としてはSYS_RAWIOの権限をコンテナに持たせる必要があることが挙げられています。

The Technical

Automated canary deployments with Flagger and Istio

Automated canary deployments with Flagger and Istio
Progressive delivery on Google Kubernetes Engine

FlaggerとIstioを使って自動的にCanaryデプロイメントを実現方法のチュートリアル。
Istioだけではリクエストの振り分けの割合を指定できるだけで、自動的にCanaryデプロイメントを実現することはできません。
そこでこの記事ではFlaggerというツールを使ってそれを自動化しています。

FlaggerではCanaryというCRDを定義しており、これに従って、Istioのリクエスト振り分け設定を更新していく。
切り替えがうまくいっているかの判定も行い、まずいことが起きているようなら、リリースを中止し切り戻すことも行ってくれるようだ。

Under the 🔬 with Kubernetes

Under the 🔬 with Kubernetes
Ever wanted to know what a field does in your Kubernetes yaml definitions?

Kubernetes のリソースの一覧はkubectl api-resourcesで得ることができ、各フィールドの意味はkubectl explainで知ることができるよ。という話

How we designed retries in Linkerd 2.2 - blog.linkerd

How we designed retries in Linkerd 2.2 - blog.linkerd
Retries are a fundamental mechanism for handling partial or transient failures in a distributed system. But retries can also be dangerous—if done poorly, they c

Linkerd2.2でリトライをどのように実装しているかという話

リトライの制御にはRetry badgetsという設定を用いる。単なるMaxRetriesなどでは、設定値を勘で決めることになる上に、システム障害を引き起こすこともある。
RetryBadgetではリトライリクエストの占める最大の割合を指定することで、この問題に対応している。

Optimizing Open Policy Agent-based Kubernetes Authorization via Go Execution Tracer

Optimizing Open Policy Agent-based Kubernetes Authorization via Go Execution Tracer
This blog post explains how OPA and Kubernetes Policy Controller can be fine-tuned for production usage.

OPAを使ってKubernetesのAPIに認可の機能を実装する際の最適化の方法を紹介。

  • フックするオブジェクトやverbを正しく指定する
  • oldObjectに対するルールを削除する
  • GoのGC間隔を長くする
  • OPAのルールのネストを浅くする
  • Server Side Applyが実現されるとリクエストが減るためよりパフォーマンスが良くなる

GraphQL in a Microservices Architecture

GraphQL in a Microservices Architecture
GraphQL stitching increases developer agility and productivity

マイクロサービスへのアクセスのインターフェースとしてGraphQLを使う場合、1つのGraphQLのエンドポイントを管理する方法では、マイクロサービスごとに細かい事情に対応できないという問題がある。
この記事では schema stitchingという機能(?)を使って、それぞれのマイクロサービスごとにGraphQLを定義する方法を紹介している。

Deploying React.js Apps to Kubernetes

Deploying React.js Apps to Kubernetes
The fastest way to containerize and deploy React applications using Kubernetes and DevSpace.

DevSpace CLIをつかってReact製のアプリケーションをKubernetesにデプロイする方法を紹介。
DevSpace CLIを使うことで、プロジェクトのテンプレートを作ることができ、そこにDockerfileやKubernetesのマニフェストも含まれている。

そしてSaaSであるDevSpace Cloudにデプロイすることもできる。
devspace analyzeというのが関連するリソースのエラーっぽい項目を自動的にフィルタして表示してくれるコマンドで、とても便利そう。

Deploying a scalable web application with Docker and Kubernetes

Deploying a scalable web application with Docker and Kubernetes
Learn how to test and deploy a Node.js app using containers and an orchestration engine

コンテナ、Docker, Kubernetesの紹介とPostManを使ったテスト方法の紹介。

Routing in a Multi-Platform Data Center: From VMs to Kubernetes, via Ambassador

Routing in a Multi-Platform Data Center: From VMs to Kubernetes, via Ambassador
At Datawire, we are seeing more organizations migrating to their “next-generation” cloud-native platform built around Docker and…

Ambassadorを使って旧来のVMの環境を徐々にKubernetesに以降する際に便利な設定を行う方法の紹介。

pro-ref-arch/cloud-infrastructure/google-cloud-platformここにサンプル構成とそれを作るためのスクリプト類がまとめてある。

Continuous Delivery Pipeline for Kubernetes using Spinnaker

Continuous Delivery Pipeline for Kubernetes using Spinnaker
Kubernetes is now the de-facto standard for container orchestration. With more and more organizations adopting Kubernetes, it is essential…

KubernetesへのCD敏江tSpinnakerを利用する方法を紹介。
GKE,Jenkins,Github Webhookの組み合わせ。

CIはJenkinsでやって、CDはSpinnakerでやるという構成のようだ。

Kubernetes-based Microservice Observability with Istio Service Mesh: Part 1

Kubernetes-based Microservice Observability with Istio Service Mesh: Part 1
In this two-part post, we will explore the set of observability tools which are part of the latest version of Istio Service Mesh.

Istioに含まれるobservabilityツールの紹介。最新のIstioにはZipkin, Jaeger, Kiali, Service Graph, Prometheus, Grafanaが同梱されている。

図にあるように6種類のサービスをデプロイし、また外部のMongoDBやRabbitMQのSaaSを使うようにしている。
実際のObservabilityツールについてはPart2で扱うとのこと。

The Editorial

Certifying Kubernetes with Sonobuoy - Cloud Native Apps

Certifying Kubernetes with Sonobuoy - Cloud Native Apps
By Steve Sloka, Sr. Member of Technical Staff, and  John Schnake, Systems Engineer   There are many ways to create Kubernetes clusters and many environments that can host them. As a result, platform operators find it difficult to determine whether a cluster is properly configured and whether it is working as it should. Sonobuoy is

VMWareによるSonobuoyを使ったKubernetesクラスタの検証について紹介。
コミュニティによるプラグインとしてbgeesaman/sonobuoy-plugin-bulkhead を紹介している。これはCIS Benchmarkを実行するためのプラグイン。

今後の予定についても述べられている。

7 Key Considerations for Kubernetes in Production - The New Stack

7 Key Considerations for Kubernetes in Production - The New Stack
Today Enterprise IT does not question the value of containerized applications anymore. Given the move to adopting DevOps and cloud native architectures, it is critical to leverage container capabilities in order to enable digital transformation. Google’s Kubernetes (K8s), an open source container orchestration system, has become the de facto standard — and the key enabler …

本番環境向けのKubernetesを考える際の7つのポイントについて紹介。

  • Managed KubernetesサービスはSLAや簡単なオペレーションを提供してくれます
    • 各社SLAが違うのでよく検討すること
  • クラスタのモニタリングとロギング
  • コンテナレジストリ、パッケージマネージメント Helm/Terraform
  • CI/CDツール
  • クラスタのプロビジョニング・ロードバランス
  • セキュリティ
  • ガバナンス

6 tips for transitioning to Kubernetes - JAXenter

6 tips for transitioning to Kubernetes - JAXenter
As Kubernetes continues to dominate, you may be looking to switch over to it. Don't know where to start? Here are six helpful tips.

Kubernetesに移行する際の6つのTips

  • 最高のマシンを求めてお金を払い過ぎない
    • オートスケールなどもある
  • セッションスティッキーなLBを使わない
    • コネクションが偏る
  • 永続ストレージに一時ファイルを置かない
    • 永続ストレージソリューションは高いので無駄な用途に使わない
  • GoogleCloudではログをOFFにする
    • 期待した通り動かない(とかかれている?)
  • スケールをさせる前に、CDNを使うことを検討する
  • Kubernetes自身の設定を作り込むより、アプリケーション設定しよう
    • DevOpsのメンバーにボトルネックを解消させるよ入り、アプリケーションの作りやせって艇を見直すほうが良いことが多い

日本語翻訳記事がありました→ Kubernetesに移行するための6つのヒント

What's next for Kubernetes and hybrid cloud

What's next for Kubernetes and hybrid cloud
Meet Knative, Istio, KubeVirt, and Kubeflow – four emerging technologies to watch if you’re using Kubernetes and hybrid cloud

Kubernetesを活用したクラウドネイティブなアプリケーションの例を紹介。

  • Knative
  • Istio
  • KubeVirt
  • Kubeflow

The Leading Open Source Serverless Solutions for Kubernetes

The Leading Open Source Serverless Solutions for Kubernetes
The universe of serverless-wielding software architects and Kubernetes cluster operators has started to collide and, yet again, Google is in the driver's seat. In this article we'll wander down the CNCF's Serverless Landscape in chronological order, quickly discovering that Knative is the sweet mamba jamba of open source lambda competitors.

Serverlessのソリューションについてそれぞれのサービスを詳しく紹介

開発開始時期や、コミュニティの勢い、ライセンス、ステータス、ソースコード規模、インストール方法、主な機能、セキュリティ・マルチテナンシー、などの観点でまとめられている。

それぞれの紹介文も詳しく書かれている。

  • OpenWrisk
  • fission
  • Knative
  • Kubeless
  • OpenFaaS

Introducing Quarkus: a next-generation Kubernetes native Java framework - Red Hat Developer Blog

Introducing Quarkus: a next-generation Kubernetes native Java framework - Red Hat Developer Blog
Quarkus is a Kubernetes Native Java stack tailored for GraalVM & OpenJDK HotSpot, crafted from the best of breed Java libraries and standards.

QuarkusというKubernetesを前提としたJavaのフレームワークの紹介。

日本でも話題になっていたQuarkusの紹介

  • 起動が早い
  • メモリ消費が少ない
  • 容量も少ない
  • ImperativeとReactiveの統合
  • 厳選されたライブラリ

などなど特徴盛りだくさん

Kubernetes Pipelines: Hello, New World - Container Journal

Kubernetes Pipelines: Hello, New World - Container Journal
Kubernetes and the new Kubernetes pipeline is ushering in a much better way than the traditional monolithic pipeline.

Kubernetesを用いたマイクロサービスの開発フローと従来のモノリシックなアプリケーションの開発フローの違いを説明している。

Kubernetes for IoT gets lighter than ever with k3s - JAXenter

Kubernetes for IoT gets lighter than ever with k3s - JAXenter
Kubernetes is looking lighter than air with k3s, weighing in with a tiny binary of 40 MB. k3s needs just 512 MB of RAM to run, making it perfect for IoT.

k3sの紹介

IoTやEdgeコンピューティングをターゲットとしたKubernetes互換のソフトウェア。40MBでメモリは512MBあれば動作する。
その秘密は、レガシーな機能やAlphaな機能、デフォルトではない機能を削ぎ落とした点にあります。またetcdではなくsqliteを使うようになっています(etcd3を選ぶこともできます)

Happy graduation day, Containerd! Canonical has something for you

Happy graduation day, Containerd! Canonical has something for you
Support due in Microk8s and Charmed Kubernetes

ContainerdがCNCFでGraduatedに認定されたことについて。

Kubernetes Podcast from Google

Kubernetes Podcast from Google

PodCast(聞いていない)

元Borgチームで、OmegaとKubernetesのコファウンダーのBrian Grantのインタビュー

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1