gashirar's blog

ウイスキーがすき/美味しいものがすき/k8sがすき

KubeWeekly #219: June 5, 2020

KubeWeekly個人メモです。

青色は主観コメント

kubeweekly.io

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

Virtual Day of Podcasts with Dell Technologies Registration, Tue, Jun 9, 2020 at 6:00 AM | Eventbrite

Podcastの宣伝。下記が主なテーマ

  • 分散型インフラと技術的負債に焦点を当てたクラウドネイティブスタックの立ち上げ
  • Kubernetesによるデータ保護
  • 政府のDevOpsの採用とコンテナ技術への関心に対するScandanavianの見解
  • ストレージサービスを提供するために開発者が知っておくべきこと
  • Kubernetesを本番環境で利用する際の重要事項

ICYMI: CNCF Webinars

CNCF Member Webinar: Securing Service Mesh with Kubernetes, Consul and Vault

CNCF Member Webinar: Securing Service Mesh with Kubernetes, Consul and Vault - Cloud Native Computing Foundation

CNCF Member Webinar: 20,000 Upgrades Later, Lessons From a Year of Managed Kubernetes Upgrades

CNCF Member Webinar: 20,000 Upgrades Later, Lessons From a Year of Managed Kubernetes Upgrades - Cloud Native Computing Foundation

CNCF Member Webinar: Trivy Open Source Scanner for Container Images – Just Download and Run!

CNCF Member Webinar: Trivy Open Source Scanner for Container Images - Just Download and Run! - Cloud Native Computing Foundation

CNCF Member Webinar: Kubernetes: Zero to Hero Deployments and Management

CNCF Member Webinar: Kubernetes: Zero to Hero Deployments and Management - Cloud Native Computing Foundation

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

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氏によるKubernetesDNSについて。(主に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

https://www.getambassador.io/podcasts/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

Council Post: 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)

GitHub - semaphoreci/book-cicd-docker-kubernetes: A book on CI/CD with Docker, Kubernetes and Semaphore

DockerやKubernetesにおけるCI/CDのベストプラクティス。

CI/CD関連のみであれば下記にまとめられています。

https://github.com/semaphoreci/book-cicd-docker-kubernetes/blob/master/chapters/04-cicd-best-practices.md

How Migrate for Anthos streamlines legacy Java app modernization

Migrate for Anthos streamlines legacy Java app modernization | Google Cloud Blog

Javaマイグレーションについて。

Oracle Java SE 7が利用されているJBossアプリケーションをどのようにマイグレーションするかがまとまっています。 古いVerのJavaではコンテナ化したみるメモリがコンテナではなくホスト側をみるなどの問題点があります。(下記参照)

Java SE support for Docker CPU and memory limits | Oracle Java Platform Group, Product Management Blog

上記のようなコンテナでも、Migrate for Anthosに移行したコンテナであれば正しくメモリやCPUの値を参照できるとのこと。すごい。 LXCFSファイルシステムというものを実装してやっているようですが、不勉強なのであまり理解できず・・・。