はじめに
KubeWeeklyは毎週Kubernetesに関する興味深いニュースを提供しています。(http://bit.ly/kubeweekly )この記事は 2019/02/20に発行された Kube Weekly #163 ( https://mailchi.mp/cncf/kubeweekly-163 ) を読んで、感じたことをメモ的にまとめたものです。
私の勘違いや説明不足による誤解もあるかと思いますので、この記事読んで「おっ」と思ったらURLを辿って本文を確認してください。
The Headline
Four Techniques Serverless Platforms Use to Balance Performance and Cost
Four Techniques Serverless Platforms Use to Balance Performance and Cost | |
![]() |
There are two aspects that have been key to the rapid adoption of serverless computing: the performance and the cost model. This article looks at those aspects, the tradeoffs, and opportunity ahead. |
サーバレスでパフォーマンスとコストのバランスを取る良い方法。
OSSのFaaSであるFissionや、各種クラウドプロバイダの提供するFaaSを例に、説明している。
OSSは改造する事で様々なチューニングができるがクラウドプロバイダの場合は、どのように実装しているかに依存してしまう。
Kubernetes Security with Liz Rice
Kubernetes Security with Liz Rice | |
![]() |
A Kubernetes cluster presents multiple potential attack surfaces: the cluster itself, a node running on the cluster, a pod running in the node, a container running in a pod. If you are managing your own Kubernetes cluster, you need to be aware of the security settings on your etcd, your API server, and your container |
Podcast(聞いていない)
Kubernetes Securityの著者の一人であるAqua SecurityのLiz RiceによるKubernetesのセキュリティの概要
Back to Microservices with Istio (Part 1) – Google Cloud Platform - Community – Medium
Back to Microservices with Istio (Part 1) – Google Cloud Platform - Community – Medium | |
![]() |
Reduce all the boilerplate code with Istio and get your services back to being micro! |
Istioの概要と、仕組み、チュートリアル
Kialiという可視化ツールでのコントロールフローの可視化、Galafanaでのメトリクスの可視化、Jagerによるトレーシングの可視化
ABテスト、リクエストのミラー(シャドーイング)、カナリーデプロイ、タイムアウト、リトライ、などのデモ
思った以上に盛りだくさんの紹介だった。
The Technical
Kubernetes Storage Performance Comparison – vescloud – Medium
Kubernetes Storage Performance Comparison – vescloud – Medium | |
If you are running Kubernetes you are likely use or want to use volumes for block storage through dynamic provisioning. The greatest… |
Kubernetesから利用できるストレージの比較。
- AKSのネイティブストレージ、Azureのpremium Storage
- 簡単に利用できるが、フェイルオーバーが遅く10分程度かかる
- AWS Cloud storageやAzure managed diskをインスタンスに割り当て、それをhostPathでマウント。
- OpenEBS (cStor backend)
- オープンソースであり、可視化用のMayaも優れている。CASの考え方が良さそう。コミュニティも活発
- 成熟度がまだまだ、iSCSIとの接続はKubernetesのServiceを使っているが、オーバーレイネットワークによっては問題となる事がある。iSCSIなど追加のインストールが必要。
- Portworx
- 簡単にデプロイできる。cephやglusterfsで必要であるような設定が不要
- どこでも動かせるCloudNative
- Storage aware class-of-serviceやapplication aware I/O tuningができる(よくわかっていないが・・)
- 欠点はクローズドソースである事。
- Gluster (manged by Heketi)
- Cephよりは軽い
- managed k8s専用に作られているわけではない。普通のマシンでクラスタを組んだ方が簡単。
- SQLなどの構造化されたデータには向かず、バックアップなどに向いている
- Ceph (managed by Rook)
- ロバストなストレージであり、管理が簡単(Cephそのものに触る必要がないから?)
- Public Cloudで運用するには複雑すぎる、適切な設定をした普通のVMのクラスタで運用するのが良い
ベンチマークにはKubernetes用のディスクベンチマークツールである logdna/dbenchを利用している
キャッシュの活用などにより、いくつかのSDSはネイティブストレージよりも性能が良い。
設定などを追い詰めいない評価ではあるものの
- Portworkは最も早い
- Cephはオープンソースのストレージとしては最も良い
- ただし複雑なので、クラウド環境ではなく普通のハードウェアのクラスタ上で運用するのが良い。
- OpenEBSは仕組みは良いが、最適化が必要
Pimp my Kubernetes Shell – ITNEXT
Pimp my Kubernetes Shell – ITNEXT | |
![]() |
Have you ever been staring at the terminal window but don’t remember which Kubernetes cluster it is set up for? |
kubernetesをシェルから効率よく操作する方法を紹介。
- aliasのおすすめ設定
- jonmosco/kube-ps1
-
ahmetb/kubectx と同じリポジトリにあるkubens
- さらに junegunn/fzfを組み合わせる
If you liked ksonnet, you'll love Pulumi!
If you liked ksonnet, you'll love Pulumi! | |
![]() |
We’re sad to see ksonnet winding down, but are thankful for the collaborative exchange of ideas between projects, and are excited to see continued investment in VMWare/Heptio’s other projects. The good news is that, if you liked ksonnet, we’re confident that you’ll love Pulumi. In this post, we'll tell you why. |
ksonnetが開発終了してしまうが、そういう人にちょうど良いプロダクトである、Pulumiの紹介
Pulumiは命令的な言語(Node.js, Python3, Goなどいくつかの言語をサポート)により、Kubernetesのリソースを定義できる仕組み。
Kubernetesのリソース以外にも、様々なクラウドプロバイダのリソースを扱う事ができる。
パッとみた感じTerraformに近いもののようだ。
Kubernetes Operations: Prioritize Workload in Overcommitted Clusters
Kubernetes Operations: Prioritize Workload in Overcommitted Clusters | |
![]() |
One of the benefits in adopting a system like Kubernetes is facilitating burst-able and scalable workload. Horizontal application scaling… |
Preemptionの紹介。
PriorityClassを指定する事で、優先度の高いPodを作成し、そのPodが他のPodを終了させてうまく実行される様子を紹介している。
Containerd on a more secure MicroK8s – ITNEXT
Containerd on a more secure MicroK8s – ITNEXT | |
![]() |
We have been quiet for a few months just because we have been busy. We were working mainly on two features that we intend to ship in the… |
Microk8s新機能の話
- DockerdからContainerdへの移行
- セキュリティの強化
- 通信できるポートの制限
- クラスタ生成のたびに新しい証明書を作成
Hands on Knative — Part 3 – Google Cloud Platform - Community – Medium
Hands on Knative — Part 3 – Google Cloud Platform - Community – Medium | |
![]() |
In Part 1, I talked about Knative Serving for rapid deployment and autoscaling of serverless containers. In Part 2, I talked about how to… |
Knativeのチュートリアルの第3弾。Buildの紹介。
kanicoをつかったビルド方法や、knativeのServiceと組み合わせる方法を紹介している。
ServiceとBuildを組み合わせるのは本番環境ではオススメしないが、テストの目的にはちょうど良いとのこと。
Use Istio traffic mirroring for quicker debugging – ITNEXT
Use Istio traffic mirroring for quicker debugging – ITNEXT | |
![]() |
Often when an error occurs, especially in production, one needs to debug the application to create a fix. Unfortunately the input that… |
Istioでリクエストをミラーする方法を紹介。
本番環境でのデバッグなどに役立つらしい。
Helm Basics — Using Tillerless – DevOpsLinks – Medium
Helm Basics — Using Tillerless – DevOpsLinks – Medium | |
![]() |
TL&DR |
rimusz/helm-tiller
をつかって、TillerをデプロイせずにHelmを利用する方法を紹介。
このHelmプラグインはTillerをローカルマシン上に作成するものである。このTillerがリモートのKubernetesにリソースをデプロイすることにより、Tillerlessを実現している(厳密にはTillerを利用しているが、、)
これはHelm3に搭載される仕組みとは別で、今日から使える方法である。
How to Bootstrap Kubernetes the hard way! – PolarSquad – Medium
How to Bootstrap Kubernetes the hard way! – PolarSquad – Medium | |
![]() |
Bashing your head against K8s can be fun… |
hard wayと書かれているがkubeadmをつかったクラスタの構築方法。
Swift + Docker + Kubernetes = Awesome Deployments from macOS
Swift + Docker + Kubernetes = Awesome Deployments from macOS | |
![]() |
Original Links: Read original links to get nicer code syntax and formatting! |
Kubernetes上でサーバサイドSwiftのアプリケーションを動かす方法を紹介
KubernetesはDocker for Macで作成。
docker-compose.yamlからdocker stack deploy
をつかってKubernetesにデプロイしている。
あまりサーバサイドSwiftでKubernetesの事例は聞かないが、IBM/kitura-on-kubernetesなどがあるらしい。
The Editorial
How VSCO Saved 70% with Kubernetes - Cloud Native Computing Foundation
How VSCO Saved 70% with Kubernetes - Cloud Native Computing Foundation | |
![]() |
After VSCO moved to AWS in 2015 and its user base passed the 30 million mark, the team quickly realized that set-up wouldn’t work anymore. With a checklist that included... |
VSCO(画像加工アプリ?)の事例。Kubernetsを導入することでデプロイの時間が80%削減でき、リリース回数が16/yearから118/yearに増えた。
といった内容の紹介動画(動画は見ていない)
Running your own DBaaS based on your preferred DBs, Kubernetes operators and containerized storage
Running your own DBaaS based on your preferred DBs, Kubernetes operators and containerized storage | |
Why’d you want to do that? |
DBaaSのようなものをKubernetesで作る場合に知っておくべきことといった内容の記事。
DBの種類や、さらにその下の層であるストレージの選定などについて述べられている。
Kubernetes Podcast from Google
Kubernetes Podcast from Google | |
![]() |
Kubernetesのco-founderであるTim HockinへのIngress APIについてのインタビューのPodcast(聞いていない)
AT&T's Kubernetes Bet Tests Network Virtualization's Limits | Light Reading
AT&T's Kubernetes Bet Tests Network Virtualization's Limits | Light Reading | |
![]() |
AT&T's eight-figure deal to build its 5G network on Kubernetes tests the limits of the container management technology. |
AT&Tでの5G通信に向けたインフラにKubernetesを利用しようとしている話。
しかし、旧来のVMベースの仕組みを設計し直すのはやるべき事が多くある。
そこでAT&TはOpenStackをKubernetes上で動かし、そのOpenStackが管理するVMを使おうとしている。
Envoy and the Programmable Edge: Edge Proxies and the Developer Experience - The New Stack
Envoy and the Programmable Edge: Edge Proxies and the Developer Experience - The New Stack | |
![]() |
Moving away from hardware-based load balancers and other edge appliances towards the software-based “programmable edge” provided by Envoy clearly has many benefits, particularly in regard to dynamism and automation. However, one of the core challenges presented was the need to create an effective control plane that integrates well with the existing engineering workflow or developer experience. This article explore this challenge in more depth. |
Edge(L7のロードバランサ)について、従来のハードウェアにより中央集権的なEdgeから、アプリケーションごとに分散されているソフトウェアのEdgeの必要性が増している事について説明している。
またそのソリューションとしてAmbassadorを紹介し、最近のアップデートの内容について紹介している。
Manage your Kubernetes clusters with a terminal-based UI - JAXenter
Manage your Kubernetes clusters with a terminal-based UI - JAXenter | |
![]() |
K9s is a simple terminal UI for interacting with your Kubernetes clusters. Help this project grow by running it and testing out its features! |
KubernetesをターミナルベースのUIで管理する方法として、K9sを紹介している。
CUIベースではありながら、かなりビジュアルにクラスタのリソースを可視化できるツールのようだ。
Kubernetes job interview questions: How to prepare
Kubernetes job interview questions: How to prepare | |
![]() |
Demand for Kubernetes skills is growing. Whether you're a hiring manager or a job candidate, these 20 questions will help set you up for success. |
Kubernetesのスキルでの就職活動について、面接すべき事、されそうな事。
5 Key Considerations for Managed Kubernetes - Container Journal
5 Key Considerations for Managed Kubernetes - Container Journal | |
![]() |
If you’re deciding whether to build versus rent, here are five broad points to bear in mind when selecting a managed Kubernetes service. |
マネージドKubernetsを使おうと考えた時に、どうやってそれらを選定するかという観点を5つ紹介している。
Kubernetes: piloting the cybernetic dreamboat – YLD Blog – Medium
Kubernetes: piloting the cybernetic dreamboat – YLD Blog – Medium | |
![]() |
The name Kubernetes originates from Greek, meaning helmsman or pilot, and is the root of governor and cybernetic. |
Kubernetesから派生した語としてCybernetic(人工頭脳学)があることから、人工頭脳学とKubernetesについて述べた記事。
オートヒーリングをhomeostasisと例えたり、それぞれの特徴を紐づけて説明し、また逆に人工頭脳学の知見をKubernetesに応用できないか、という切り口のようだ(が、残念あがら人工頭脳学に詳しくないので流し読みしかしていない。)
Week Ending February 17, 2019
Week Ending February 17, 2019 | |
Steering Committee Meeting Summary |
先週のKubernetesの開発状況。
注目すべきPRも紹介されている
-
add kustomize as a subcommand in kubectl by Liujingfang1 · Pull Request #73033 · kubernetes/kubernetes · GitHub
- kubectlにkustomizeサブコマンドが実装されました。
- publishing: remove rules for unsupported 1.10 branch by nikhita · Pull Request #74115 · kubernetes/kubernetes · GitHub - 1.10が非サポートとなりました。
- kubectlにkustomizeサブコマンドが実装されました。
-
Set up 1.14 CI (#11203 + patches + rebump) by krzyzacy · Pull Request #11370 · kubernetes/test-infra · GitHub
- 1.14に向けたCI