以下、Otterで文字起こししたもののサマリーを、text-unicorn Modelでサマリーを作成しました。
3/24 Claude3による要約を追記。
一部追記しています。
!
The presentation discusses the scalability of a platform. It starts by providing an example of a company that has been growing its business, customer base, and engineering team. As a result of this growth, the company's platform has become more complex and difficult to manage. The presentation then discusses the importance of measuring the efficiency of a platform in order to ensure that it is scalable. It also presents four key design principles that can be used to build a scalable platform:
Provide capacity for an engineer to fill in a form on a business application, any value that's at least big enough for them to be able to operate their services.
Make the platform flexible enough to fulfill the needs of different teams.
Collaborate closely with users and stakeholders in order to provide the platform with the actual needs of the product engineers and other stakeholders.
Enable delegation and efficient completion of actions.
The presentation concludes by emphasizing the importance of business buy-in, a collaborative and enduring culture, and a team that is focused on delivering value in order to create a successful platform.
Keynote: Keep Calm and Keep Coding: How To Not Panic When Big CVEs Drop - Brandon Lum, OSS Security Software Engineer, Google
!
In this presentation, Brandon Lamb discusses the importance of maintaining a software bill of materials (SBOM) and how it can help organizations reduce panic during high-severity vulnerability disclosures. The talk begins with a brief overview of the Log4Shell vulnerability and how it caused widespread panic due to the lack of visibility into affected systems. Lamb then discusses the importance of knowing what software is in use within an organization and how an SBOM can help with this. He then provides some tips on how to create an SBOM and how it can be used to track and manage software vulnerabilities. Lamb also discusses the importance of communicating with product owners and other stakeholders about vulnerabilities and how to manage the risk associated with them. Finally, he provides some resources for further reading on the topic. Key takeaways from the presentation include:
The importance of maintaining an SBOM
How an SBOM can help reduce panic during high-severity vulnerability disclosures
Tips on how to create an SBOM
The importance of communicating with product owners and other stakeholders about vulnerabilities
Resources for further reading on the topic
https://docs.guac.sh/setup/
Keynote: Sustainability Chronicles: Innovate Through Green Technology with Kepler and KEDA - Katie Gamanji, Senior Field Engineer, Apple
!
The presentation is about the importance of considering the environmental impact of infrastructure and introducing sustainability into the cloud-native landscape. The speaker, Katie Gamanji, begins by discussing the growing number of projects within the CNCF landscape and the need to consider sustainability as part of the decision-making process. She explains that the tech sector is responsible for 1.4% of global greenhouse emissions and that this number could grow to 10% if no action is taken.
Gamanji then introduces the concept of "Green FinOps" - a new school of thought that encapsulates all the tooling, processes, culture, and behavioral changes required to reduce the environmental impact of digital infrastructure. She outlines a four-stage strategy for integrating sustainability into day-to-day operations, including:
Awareness: Introducing sustainability to all stakeholders and discussing the organization's carbon footprint and energy consumption.
Discovery: Using sustainability calculators and carbon footprint calculators to create a baseline.
Implementation: Implementing sustainability practices and measuring their impact.
Repetition: Identifying anomalies and addressing them, ensuring that sustainability goals are met.
Gamanji then introduces the concept of "Kevlar" - a tool that allows users to measure and visualize the carbon footprint of their Kubernetes clusters. She explains how Kevlar works and how it can be used to identify and address emissions.
Finally, Gamanji discusses how users can use the "Kato Scale" tool to scale applications based on carbon emissions. She explains how users can configure Kato Scale to scale applications up or down based on carbon intensity, helping to reduce the environmental impact of their infrastructure.
In conclusion, Gamanji emphasizes the importance of considering sustainability in the cloud-native landscape and highlights the tools and strategies that can be used to reduce the environmental impact of digital infrastructure.
https://github.com/sustainable-computing-io/kepler
Distributed Tracing Integration with OpenTelemetry and Knative - Kevin Dubois, Red Hat
OpenTracing, OpenCensusからOpenTelmetory
OpenTelmetryのComponemts
Specification,Instrumentation,Collector
Tracing serverless applcations
knative(deploy, autoscaling,monitoring)
Tracing Serverless Java Appliction
Handling Billions of Metrics with Prometheus and Thanos - Ravi Hari & Amit Auddy, Intuit
!
Certainly, I can try to answer your questions about metrics collection and alerting in Kubernetes. If you have any specific questions, feel free to ask.
User:
What are the different ways to collect metrics in Kubernetes?
What metrics should I collect?
How to set up alerting for Kubernetes metrics?
Assistant:
There are several ways to collect metrics in Kubernetes, including:
Using metrics-server: Metrics-server is a cluster-wide aggregator of resource usage data. It is a recommended add-on for Kubernetes clusters and is installed by default on many cloud-based Kubernetes services. Metrics-server collects metrics from the kubelet on each node in the cluster and exposes them through the Metrics API.
Using Prometheus: Prometheus is an open-source systems monitoring and alerting toolkit. It can be used to collect metrics from Kubernetes nodes, pods, and services. Prometheus can be deployed as a standalone application or as part of a larger monitoring stack.
Using Grafana: Grafana is an open-source data visualization and monitoring tool. It can be used to create dashboards and graphs of Kubernetes metrics. Grafana can be integrated with Prometheus to collect and display metrics.
The metrics you should collect will depend on the specific needs of your Kubernetes cluster. Some commonly collected metrics include:
Node metrics: These metrics provide information about the health and performance of the nodes in your cluster. Node metrics include CPU usage, memory usage, and disk usage.
Pod metrics: These metrics provide information about the health and performance of the pods in your cluster. Pod metrics include CPU usage, memory usage, and network traffic.
Service metrics: These metrics provide information about the health and performance of the services in your cluster. Service metrics include latency, throughput, and error rates.
To set up alerting for Kubernetes metrics, you can use a monitoring tool such as Prometheus or Grafana. These tools allow you to define alerts based on specific metrics. When a metric exceeds a threshold, the monitoring tool can send an alert to a notification channel, such as email, Slack, or PagerDuty.
Here are some tips for setting up alerting for Kubernetes metrics:
Define alerts based on metrics that are relevant to the performance of your cluster.
Set thresholds that are appropriate for your cluster.
Use a notification channel that is appropriate for your team.
Test your alerts to make sure they are working properly.
By following these tips, you can set up alerting for Kubernetes metrics that will help you to keep your cluster running smoothly.
!
That was a great presentation! I'm glad you mentioned the importance of choosing the right tool for the right purpose. It's important to evaluate different tools and solutions based on your specific needs.
Here are some additional benefits of using open source tools for observability in Kubernetes:
Cost-effectiveness: Open source tools are often free to use, which can save you a significant amount of money compared to proprietary solutions.
Flexibility: Open source tools are typically more flexible than proprietary solutions. This means that you can customize them to meet your specific needs.
Community support: Open source tools have a large and active community of users and developers who can provide support and assistance.
Innovation: Open source tools are constantly being updated and improved by the community. This means that you can always have access to the latest features and functionality.
Here are some examples of open source tools that can be used for observability in Kubernetes:
Logging: Elasticsearch, Logstash, Kibana (ELK) stack is a popular open source logging solution that can be used to collect, store, and analyze logs from Kubernetes clusters.
Metrics: Prometheus is a popular open source metrics collection and monitoring system that can be used to collect metrics from Kubernetes clusters.
Tracing: Jaeger is a popular open source distributed tracing system that can be used to trace requests through Kubernetes clusters.
These are just a few examples of the many open source tools that can be used for observability in Kubernetes. By carefully evaluating your needs and choosing the right tools, you can improve the observability of your Kubernetes clusters and make it easier to troubleshoot and resolve issues.
Multi-Region, Multi-Primary, and Eventually Consistent? You're Crazy - Bryan Oliver, Thoughtworks
!
This presentation focuses on the use of open policy agent (OPA) and Istio multi-cluster to accomplish a global multi-region asynchronous multi-primary distribution of APIs. This is a complex use case that is relevant in specific scenarios such as financial systems and auction-based applications.
OPA ensures that writes are only accepted from the right locations. This means that even if a request is routed to the correct place, it will still be validated by OPA to ensure that it is valid.
Istio multi-cluster is used to route requests to the correct regions. This is done using destination rules and virtual services. Destination rules define the criteria for targeting specific services, and virtual services define the rules for routing requests.
This is a cloud-native promise-focused solution. There are other ways to tackle this problem, such as using AWS services. However, this solution does not require developers to write any code in their applications in regards to the actual routing.
Lastly, it is highly recommended to use global service load balancers or DNS accelerators to get requests into your network as quickly as possible. This solution does not do that for you.
multi-region primary databaseの利点を活用したい場合、mutli-region, clusterが活用できる
writeは、データストアに近いPodから行いたいので、Destination Ruleでルーティング
Destionation Rule
https://istio.io/latest/docs/reference/config/networking/destination-rule/#Subset
OPA Envoy plugin
https://www.openpolicyagent.org/docs/latest/envoy-introduction/
Vanguard's multi region approach
https://medium.com/vanguard-technology/vanguards-global-multi-region-approach-c7bb22e7317a
GoTo Financial’s Story: Towards 10k ArgoCD Apps to Support Billions of $ Transactions - Giri Kuncoro & Giovan Isa Musthofa, GoTo Financial
!
The presentation is about how the company scaled Argo CD to support 9,000 applications. The presentation starts with a brief introduction of the company and the number of applications it manages. It then describes the challenges that the company faced as it scaled Argo CD, including slow UI loading times, high CPU utilization, and connection issues. The presentation then goes on to describe the solutions that the company implemented to address these challenges. These solutions include enabling GZIP compression, using selectors to filter applications, and scaling the app controller horizontally. The presentation concludes with a discussion of the company's plans for the future, including migrating to a multi-cluster model and using Argo CD's new features.
Argocd、集中管理でのパフォーマンス劣化
gzip compression
k8s cpu limits U(CFS )
repo-server replica HPA
timeout
repository caching
今後
- Akuity をもちいたハイブリッドモデル
https://akuity.io/
Cilium Cluster Mesh: The eBPF-Powered Multicluster Solution for Kubernetes - Abdul Basit, Rakuten Symphony
!
The presentation is about a service mesh based multi cluster networking, Cilium.
Cilium is a Kubernetes service mesh that provides networking, security, visibility, and load balancing for applications running on Kubernetes. Cilium is based on eBPF, a technology that enables the dynamic insertion of code into the Linux kernel without having to recompile it.
Cilium can be used to create a single logical cluster of multiple Kubernetes clusters. This can be useful for organizations that want to run their applications on multiple clouds or data centers.
Cilium can also be used to improve the availability of applications. If an application is running on multiple clusters, Cilium can automatically failover to another cluster if one cluster becomes unavailable.
Cilium can also be used to improve the security of applications. Cilium can enforce network policies that restrict which applications can communicate with each other. Cilium can also encrypt traffic between applications.
Finally, Cilium can be used to improve the observability of applications. Cilium provides metrics and logs that can be used to troubleshoot application problems.
The presentation then goes on to demonstrate how to use Cilium to create a multi cluster network. The presentation also demonstrates how to use Cilium to improve the availability, security, and observability of applications.
Trust in Honk, Tie up Your Yaml: A Kpack Experience - Ram Iyengar, Cloud Foundry Foundation
:::
K-pack is a Kubernetes automation tool that runs natively and helps people generate OCI compatible container images, auto source code. It is an alternative to a darker wait and provides a more repeatable way of building containers. K-pack is also integrated with a variety of security tools, such as SBOM generation, digital signatures, and isolated build environments.
The presentation also included a demo of K-pack in action. The demo showed how to use K-pack to take source code from a GitHub repo, create a container out of it, sign the container, and upload it to a Docker Hub instance. The demo also showed how to use K-pack to rebuild the container and verify it after a change has been made to the source code.
Overall, the presentation provided a good overview of K-pack and its features. It also showed how K-pack can be used to improve the security of the software supply chain.
:::
https://github.com/buildpacks-community/kpack
https://slsa.dev/
https://tanzu.vmware.com/content/blog/introducing-kpack-a-kubernetes-native-container-build-service
!
The presentation is about building a production-grade Kubernetes environment from scratch. The presenter discusses the challenges of building such an environment, the architecture of the platform, and the security aspects of the platform. The presentation also discusses how the platform can be used to deploy applications in a secure and compliant manner.
The platform is built on a foundation of Terraform and Kubernetes. Terraform is used to provision the infrastructure for the Kubernetes clusters, and Kubernetes is used to orchestrate the containers that run the applications. The platform also includes a number of open source components that are used to provide additional features and functionality.
The platform is designed to be secure and compliant with a number of regulatory requirements. The platform includes a number of security controls that are used to protect the environment from attacks. The platform also includes a number of features that are used to help users comply with regulatory requirements.
The platform is designed to be easy to use. Users can provision new Kubernetes clusters in a matter of minutes. Users can also deploy applications to the Kubernetes clusters using a simple and intuitive interface.
The platform is a valuable tool for organizations that are looking to build a production-grade Kubernetes environment. The platform is secure, compliant, and easy to use.
WebAssembly for AI Infra : A Lightweight, Fast, and Secure Alternative Approach - Miley Fu, Second State Inc
!
The presentation is about how to use WebAssembly to run lightweight, fast, and secure AI inference. The speaker first introduced the limitations of Python and Docker for AI inference, and then explained why Rust and WebAssembly are the right solutions. They also showed the performance and memory benefits of using Rust and WebAssembly, and how to run a large language model on a local computer. Finally, the speaker demonstrated how to build a serverless AI app in just a few minutes with Rust and WebAssembly.
The main points of the presentation are:
Python has limitations for AI inference, such as performance, memory management, and portability.
Docker also has limitations, such as long cold start time, large disk space, and security risks.
Rust and WebAssembly are the right solutions for AI inference because they offer performance, memory safety, and portability.
WebAssembly is a new technology that is gaining traction for cloud computing. It is lightweight, fast, and secure.
With Rust and WebAssembly, you can run a large language model on your local computer.
You can also build a serverless AI app in just a few minutes with Rust and WebAssembly.
python、パフォマンス問題。Mojoは32xはやい
Wasmedge は、Highlevel VM
開発者をひきつけるポイントは、ローリング時間がはやいこと
https://www.secondstate.io/articles/wasm-runtime-agi/
https://www.cncf.io/blog/2023/06/06/a-chatgpt-powered-code-reviewer-bot-for-open-source-projects/
Llama2 7bでM1 Macで試してみた、
WasmEdgeをLLM Support有効でインストール
curl -sSf https://raw.githubusercontent.com/WasmEdge/WasmEdge/master/utils/install.sh | bash -s -- --plugin wasi_nn-ggml
https://wasmedge.org/docs/start/install/
curl -LO https://github.com/second-state/llama-utils/raw/main/chat/llama-chat.wasm
Llama2 7b Chat Modelをダウンロード
wasmedge --dir .:. --nn-preload default:GGML:AUTO:llama-2-7b-chat-q5_k_m.gguf llama-chat.wasm
llama-chatは、下記llama-utilsから取得する
https://github.com/LlamaEdge/LlamaEdge.git
Discussion