KubeWeekly #219: June 5, 2020
KubeWeekly個人メモです。
青色は主観コメント
- The Headlines
- ICYMI: CNCF Webinars
- CNCF Member Webinar: Securing Service Mesh with Kubernetes, Consul and Vault
- CNCF Member Webinar: 20,000 Upgrades Later, Lessons From a Year of Managed Kubernetes Upgrades
- CNCF Member Webinar: Trivy Open Source Scanner for Container Images – Just Download and Run!
- CNCF Member Webinar: Kubernetes: Zero to Hero Deployments and Management
- The Technical
- Google Vulnerability Rewards Program expands to include all the critical open-source dependencies of GKE
- Announcing k8s-image-availability-exporter to monitor missing images in Kubernetes
- Service Mesh on Kubernetes with Istio and Spring Boot
- Using SSL certificates from Let’s Encrypt in your Kubernetes Ingress via cert-manager
- Dynamic DNS and LoadBalancing without cloud provider
- Kubecost- cluster turndown
- Introducing Aquayman
- Agones 1.6
- The Editorial
- CoreDNS, with John Belamaric
- LOTE #8: Michael Hausenblas on Customer Focus, Building App Platforms, and Kubernetes Access Control
- How To Jumpstart Your Hybrid And Multi-Cloud Strategy With Microservices And Kubernetes
- Gartner’s 6 Best Practices for Containers, Kubernetes
- Mirantis’ Docker Enterprise 3.1 Adds Windows Support, Enterprise SLAs
- Lin Sun and Neeraj Poddar on Istio, Wasm, and the Future of Service Mesh
- CI/CD with Docker and Kubernetes (open source book)
- How Migrate for Anthos streamlines legacy Java app modernization
The Headlines
Welcome, Priyanka Sharma to CNCF!
Priyanka Sharma Joins CNCF as General Manager - Cloud Native Computing Foundation
以前はGitLab Inc.でクラウドネイティブアライアンスのディレクターを務めていたPriyanka Sharma氏がCNCFのジェネラルマネージャーに参加。
New Linux Foundation/CNCF Cloud Engineer Bootcamp
Cloud Engineer Bootcamp - Linux Foundation - Training
Linux Foundationのエンジニアブートキャンプが登場。 オンライントレーニングやインストラクターサポート、CKAを含む認定試験も含めたコースが6月まで$999から$400offの$599。
Day of Podcasting: Rescheduled from KubeCon + CloudNativeCon EU
Podcastの宣伝。下記が主なテーマ
- 分散型インフラと技術的負債に焦点を当てたクラウドネイティブスタックの立ち上げ
- Kubernetesによるデータ保護
- 政府のDevOpsの採用とコンテナ技術への関心に対するScandanavianの見解
- ストレージサービスを提供するために開発者が知っておくべきこと
- Kubernetesを本番環境で利用する際の重要事項
ICYMI: CNCF Webinars
CNCF Member Webinar: Securing Service Mesh with Kubernetes, Consul and Vault
CNCF Member Webinar: 20,000 Upgrades Later, Lessons From a Year of Managed Kubernetes Upgrades
CNCF Member Webinar: Trivy Open Source Scanner for Container Images – Just Download and Run!
CNCF Member Webinar: Kubernetes: Zero to Hero Deployments and Management
The Technical
Google Vulnerability Rewards Program expands to include all the critical open-source dependencies of GKE
https://security.googleblog.com/2020/05/expanding-our-work-with-open-source.html/
Googleのバグ報奨金プログラムについて。
最大1万ドルの報奨金が支払われるとのこと。
Announcing k8s-image-availability-exporter to monitor missing images in Kubernetes
Announcing k8s-image-availability-exporter - Flant - Medium
k8s-image-availability-exporterについての紹介。
クラスタ内のリソース(Deployment
/StatefulSet
/DaemonSet
/CronJobs
/Secret
)を常に監視し、指定されているImageがContainer Registry上に存在するかをチェックする。
「ずっと立っているPodの再配置作業をしたら、Container Registry側で古いImageとして削除されてしまって障害になった」という経験から生まれたそうです。
参画したプロジェクトだと、上記のようなことを起こしたくないのでContainer RegistryのImage自動削除みたいな機能はOffにしてましたね。(その分Storageが必要になっちゃいますが・・・。)
Service Mesh on Kubernetes with Istio and Spring Boot
Service mesh on Kubernetes with Istio and Spring Boot – Piotr's TechBlog
Istio上でSpringBootを動かすサンプル。
Using SSL certificates from Let’s Encrypt in your Kubernetes Ingress via cert-manager
Using SSL certificates from Let’s Encrypt in your Kubernetes Ingress via cert-manager
cert-managerを使った証明書の管理と更新。
上記とは関係ないのですが、Kubernetes 1.8のころに下記を使って証明書を手動更新していたのを思い出しました。 GitHub - choffmeister/kubernetes-certbot
そのあとあたりにkube-lego
と呼ばれるツールを聞くようになり、それのSuccessorが上記のcert-managerだったりします。
GitHub - jetstack/kube-lego: Automatically request certificates for Kubernetes Ingress resources from Let's Encrypt
Dynamic DNS and LoadBalancing without cloud provider
https://particule.io/en/blog/k8s-no-cloud//
MetalLBを使ったオンプレ上でのLoadBalancingについて。
MetalLBは最近MinikubeのAddonにも追加されましたね。
Kubecost- cluster turndown
GitHub - kubecost/cluster-turndown: Automated turndown of Kubernetes clusters on specific schedules.
KubernetesクラスタのNodeの自動スケールダウンとスケールダウンを行うツールの紹介。 GKEとEKS(とAWS kops)に対応。
Introducing Aquayman
Quayのアカウント管理のためのツールの紹介。(A Quay Manager)
Agones 1.6
https://agones.dev/site/blog/2020/05/26/1.6.0-player-tracking-kubernetes-1.15-node.js-sdk-updates//
Agones 1.6のリリース。
Agones自体については下記をどうぞ。 専用ゲームサーバをK8s上で実行するためのOSSです。
Agones 超入門 - google-cloud-jp - Medium
The Editorial
CoreDNS, with John Belamaric
https://kubernetespodcast.com/episode/106-coredns//
GKEとKubernetesを専門とするGoogleのエンジニア、John Belamaric氏によるKubernetesのDNSについて。(主にCoreDNS)
SkyDNSはローカルに小さなetcdを持っていて、そこで情報を管理していたそうです。 多分下記のような形なんじゃないかと。 skydns-rc.yaml · GitHub
Kubernetesならapi-server経由でetcdにアクセスできるので、CoreDNS(のKubernetesプラグイン)ではそっちに移譲してしまおうという感じ。 CoreDNSはプラグイン機構によっていろいろな機能拡張ができるのもポイントとのこと。
そういえばOpenShift3.11ではDaemonSetのPodとして起動したsdn
とNode上に直接起動したdnsmasq
とが連携する形で名前解決を行っていました。
こういった差異は環境によってあるかもしれません。
LOTE #8: Michael Hausenblas on Customer Focus, Building App Platforms, and Kubernetes Access Control
AWS Container Service TeamのMichael Hausenblasによるプラットフォームの真価とKubernetesのRBACおよびOpenPolicyAgentの利用について。
Engineers should seek to understand the essentials of the business context in which they work. Developing knowledge of key performance indicators (KPIs) and business constraints allows engineers to design appropriately and to instrument their applications effectively.
手段が目的になりやすいのですが、仕事をする上で肝に銘じておきたい言葉です。
How To Jumpstart Your Hybrid And Multi-Cloud Strategy With Microservices And Kubernetes
MicroserviceとKubernetesによるシステムの移行。
You can't boil the ocean and try to migrate all of your workloads at the same time.
Microserviceでよく目にする言葉ですね。小さく少しずつやる。
あとはやはり自前でKubernetesクラスタを管理するのはやめてManagedなものを使った方がビジネスに集中できるよとも述べられています。
Gartner’s 6 Best Practices for Containers, Kubernetes
Gartner's 6 Best Practices for Containers, Kubernetes - Container Journal
ガートナーによる6つのベストプラクティス。
- Adopt and Apply DevSecOps
- DevSecOpsで開発の様々なタイミングでセキュリティチェックを行う
- Go Granular With Monitoring
- 従来のホスト中心の監視では不十分。ContainerやKubernetesの機能を重視した監視をすべき
- Re-evaluate Data Persistence
- StatefulなContainerの利用が増えてきているため、アプリケーションの再設計が必要
- 再設計に伴い、データストレージの管理方法も変わる
- Optimize Networking for K8s
- SDNやServiceMeshなどの機能を活用する
- Manage the Container Life Cycle
- ContainerのCI/CD関連の自動化ツール導入する
- Orchestrate Correctly
- コンテナオーケストレーションツールのベストプラクティスに倣う
Mirantis’ Docker Enterprise 3.1 Adds Windows Support, Enterprise SLAs
Mirantis’ Docker Enterprise 3.1 Adds Windows Support, Enterprise SLAs – The New Stack
MirantisのDocker Enterprise 3.1でWindowsサポートとエンタープライズSLAを追加
Lin Sun and Neeraj Poddar on Istio, Wasm, and the Future of Service Mesh
https://www.infoq.com/podcasts/istio-wasm-service-mesh-future//
IBMのシニアテクニカルスタッフのLin SunとAspen MeshのアーキテクトであるNeeraj PoddarによるServiceMeshについて。
Istio1.5のリリースでアーキテクチャが大幅に変更されたことが触れられています。
Wasmによる拡張も話題になりました。
CI/CD with Docker and Kubernetes (open source book)
DockerやKubernetesにおけるCI/CDのベストプラクティス。
CI/CD関連のみであれば下記にまとめられています。
How Migrate for Anthos streamlines legacy Java app modernization
Migrate for Anthos streamlines legacy Java app modernization | Google Cloud Blog
Oracle Java SE 7が利用されているJBossアプリケーションをどのようにマイグレーションするかがまとまっています。 古いVerのJavaではコンテナ化したみるメモリがコンテナではなくホスト側をみるなどの問題点があります。(下記参照)
上記のようなコンテナでも、Migrate for Anthosに移行したコンテナであれば正しくメモリやCPUの値を参照できるとのこと。すごい。 LXCFSファイルシステムというものを実装してやっているようですが、不勉強なのであまり理解できず・・・。