KubeWeeklyは毎週Kubernetesに関する興味深いニュースを提供しています。この記事は 2018/09/26に発行された Kube Weekly #150 を読んで、感じたことをメモ的にまとめたものです。
私の勘違いや説明不足による誤解もあるかと思いますので、この記事読んで「おっ」と思ったらURLを辿って本文を確認してください。
また、KubeWeeklyのサイトが8月ごろからアクセスできなかったようですが、現在サイトリニューアル中のようです。
We're working on a new and improved KubeWeekly website 🎉 Stay tuned!
— KubeWeekly (@kubeweekly) 2018年9月26日
In the meantime, check out the latest editions of KubeWeekly (and subscribe) here: https://t.co/TJFU1MV1h1
一応簡易的に、下記ページで過去のKubeWeeklyを見ることができます。
http://bit.ly/kubeweekly
The Headlines
Cloud Native Computing Foundation Announces Schedule for Largest-Ever Kubernetes Event, KubeCon + CloudNativeCon Seattle - Cloud Native Computing Foundation
KubeCon + CloudNativeCon Seattleのスケジュールの話。
いくつかの発表内容が紹介されている。
co-located eventsが結構あるようです。
Competition Among Container Platforms Heats Up - Container Journal
コンテナが使われ始めている、これからも伸びていくよという資料。
様々なサーベイの数字を引用しているので、コンテナをどのくらいの割合の企業が使っているのか、などがざっくりわかる。
主要なパブリッククラウドの採用率は実は下がっていて、これは、プライベートクラウドへの移行が進んでいるからだ、と説明されている。Kubernetesやっぱり難しいのかな・・
Single Sign-On for Internal Apps in Kubernetes using Google Oauth / SSO
BuzzFeedがオープンソースで公開したSSO( GitHub - buzzfeed/sso: sso, aka S.S.Octopus, aka octoboi, is a single sign-on solution for securing internal services ) を使いKubernetes内のサービスに対してSSO認証
しないとアクセスできないようにして公開する方法を紹介している。
対象サービスにIngressからAuthProxyを経由してアクセスするようにして、SSO認証を実現している
GoogleのOAuthプロバイダを使った例のみが示されている。他のOAuthプロバイダでもできるのかな?
The Technical
Running Laravel in Kubernetes at Large Scale
Laravelで作ったWebアプリケーションをKubernetesでうまく扱う方法。
Helmによるマニフェストの管理、docker-composeを使ったデバッグ、と言った一般的な話から、PHP-FPMのプロセス数の制御や、FPMのstatsを利用したHPAの設定などPHPとKubernetesを組み合わせる場合に固有の問題についても触れている。
Using pod security policies with kubeadm | pmcgrath
kubeadmで作ったクラスタにPSPを適用する方法について。system::nodesに権限をつけたり、ingress-controllerにNET_BIND_SERVICEのcapabilityを許可したりと、かなり実践的な設定になっているように見える。
KubeRBS for automatic Kubernetes rollbacks so you can sleep better at night!
GitHub - doitintl/kuberbs: K8s deployment rollback system の紹介
kuberbs (Kubernetes Rollback System)
指定したmetricsでエラーを判定した場合に自動的にDeploymentをロールバックしてくれるRbsというCRDを扱うオペレータ。
今の所datadogとstackdriverのみ対応している。
Using Pulumi for Kubernetes configuration management
Pulumi の紹介。Plumiはソースコードでインフラを管理するためのツール。Terafformのような感じだが、言語はJavaScriptなどが使えるようです。
さらにHelmのChartを読み込んでValueなどをPlumiで定義することができる。
Replicate cloud AWS RDS MySQL to on-premise PostgreSQL in Docker – future is today! Debezium and Kafka on AWS EKS – Jakub Bujny – personal blog
AWS RDS MySQLを別DCのPostgreSQLにレプリケーションする方法の紹介。
DebeziumというDBの変更をKafkaに流す仕組みを使ってレプリケーションを実現している。AWSの設定は全てterraformで行なっている。
Zookeeper,KafkaをEKS上にデプロイしている。
MySQLなら普通にレプリケーションできると思うが、この人はPostgreSQLにレプリケーションしたいから、こんなことをしてるのかな?
What is Helm and why is it important for Kubernetes deployments? - Blog | BoxBoat
Helmの紹介
Container Networking Interface aka CNI – vikram fugro – Medium
CNIの紹介
cnitoolとdockerを使ったbrigde プラグイン,portmap プラグインの実例。
Persistent Volume Claim for StatefulSet – Zhimin Wen – Medium
PVCの紹介とStatefulSetでの利用方法
Parallel Processing of Machine Learning Algorithms – dunnhumby Data Science & Engineering – Medium
KubeFlowを使って機械学習を行うことの利点などが書かれている。
従来直列に行なっていた処理をKubeFlowにより並列に行うことで8時間かかった処理が1時間に減ったとのこと。
まぁKubeFlowでなくとも並列にしたら早くなるのだろうけど・・
Deploying the AWS IAM Authenticator to Elastickube – getamis – Medium
aws-iam-authenticatorをつかいAWSでKubernetesを作って、認証をIAMと連携させる話。
クラスタの構築には GitHub - getamis/vishwakarma を利用している
Building Kubernetes Infrastructure with Kops, Ansible & Gitlab-CI
Kopsを使ったクラスタ構築方法の紹介。構築用のシェルスクリプトなど
The Editorial
Things to know before taking Certified Kubernetes Administrator (CKA) Exam
CKAの前に知っておくこと。
GitHub - kelseyhightower/kubernetes-the-hard-way: Bootstrap Kubernetes the hard way on Google Cloud Platform. No scripts. の紹介など
Microservice Observability with Istio - Trulia's Blog
PHPのモノリシックなアプリケーションをマイクロサービス化しKubernetesにデプロイしistioで通信のメトリクスを収集している話。
何も考えずマイクロサービス化すると横断的に見るべきマトリクスが散らばってしまう。Kubernetes+Istioを使うことで、これらの手法を統一し、かつ1箇所に集約することができる。
Public Cloud Managed Kubernetes: Our Hands-On Experience
マネージドKubernetesやコンテナ系のサービスのそれぞれの簡単な紹介・利点・欠点のまとめ
AWS,Azure,GCP,DigitalOcean
Devops with Kubernetes | Sreenivas Makam's Blog
スリランカでのKubernetesのMeetupで発表した資料の紹介。12factorAppとKubernetesの機能のマッピング
Ubuntu does Kubernetes | Ubuntu blog
Ubuntu上でKubernetesを動かすことについて。様々なクラウドプロバイダと協力していて実績がある。
A Kubernetes FAQ for the C-suite | Google Cloud Blog
偉い人向けのKubernetesのよくある質問集。Kubernetesって何?、Kubernetesはなぜそんなに好かれてるの?、Kubernetesを導入したら我々のビジネスに何が起きるの? などなど
New working group aims to bring Kubernetes to IoT edge networks - SiliconANGLE
IoT EdgeのためのKubernetesについて議論する Kubernetes IoT Edge Working Groupができたよという話。
community/wg-iot-edge at master · kubernetes/community · GitHub
Five Kubernetes role-based access control mistakes to avoid - Cloud Tech News
KubernetesのRBACで避けるべき間違い。
うっかりやってしまいそうなことが書かれている。が、読んでもうっかりやってしまいそう
The Linux Foundation Brings Network Automation and Cloud Native Communities Together as Network Functions evolve to CNFs - The Linux Foundation
Virtual Network Function (VNFs) から Cloud-native Network Functions (CNFs)へ
というよなことが書いてあるが、あまり馴染みがないのでよくわからない。
How Kubernetes API Extensions enable Platform-as-Code Experience
KubePlus を作っている会社の記事 GitHub - cloud-ark/kubeplus: Kubernetes Application Platforms - as Code
Platform-as-Code (PaC) という考え方について紹介。
Container-as-a-Service (CaaS)の次のモデルのようだ。
Kubernetsを拡張してアプリケーションの周辺Platformも宣言的に扱うことをこのように言っているようだ。
バックナンバー
- KubeWeekly #149 https://qiita.com/inajob/items/d007ba0114dfb5eb77e2
- KubeWeekly #148 https://qiita.com/inajob/items/4f153cb214fd622bdb89
- KubeWeekly #147 https://qiita.com/inajob/items/8148914d7e6b8afc186c
- KubeWeekly #143 https://qiita.com/inajob/items/b93257781552c61da173
- KubeWeekly #142 https://qiita.com/inajob/items/6eac1a856e95f18cd2ca
- KubeWeekly #141 https://qiita.com/inajob/items/7771e5a5a4409f433042