Skip to content

Commit e0b0782

Browse files
authored
Merge branch 'kubernetes:main' into configurable-tolerance-blog
2 parents bccde8b + f90edec commit e0b0782

File tree

273 files changed

+12052
-537
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

273 files changed

+12052
-537
lines changed

OWNERS_ALIASES

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ aliases:
127127
- inductor
128128
- nasa9084
129129
- Okabe-Junya
130+
- t-inu
130131
sig-docs-ja-reviews: # PR reviews for Japanese content
131132
- atoato88
132133
- b1gb4by
@@ -139,6 +140,7 @@ aliases:
139140
sig-docs-ko-owners: # Admins for Korean content
140141
- gochist
141142
- jihoon-seo
143+
- jongwooo
142144
- seokho-son
143145
- yoonian
144146
- ysyukr

content/en/_index.html

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@
66
priority: 1.0
77
---
88

9-
{{< site-searchbar >}}
10-
119
{{< blocks/section class="k8s-overview" >}}
1210
{{% blocks/feature image="flower" id="feature-primary" %}}
1311
[Kubernetes]({{< relref "/docs/concepts/overview/" >}}), also known as K8s, is an open source system for automating deployment, scaling, and management of containerized applications.
Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,157 @@
1+
---
2+
layout: blog
3+
title: "Spotlight on SIG Apps"
4+
slug: sig-apps-spotlight-2025
5+
canonicalUrl: https://www.kubernetes.dev/blog/2025/03/12/sig-apps-spotlight-2025
6+
date: 2025-03-12
7+
author: "Sandipan Panda (DevZero)"
8+
---
9+
10+
In our ongoing SIG Spotlight series, we dive into the heart of the Kubernetes project by talking to
11+
the leaders of its various Special Interest Groups (SIGs). This time, we focus on
12+
**[SIG Apps](https://github.com/kubernetes/community/tree/master/sig-apps#apps-special-interest-group)**,
13+
the group responsible for everything related to developing, deploying, and operating applications on
14+
Kubernetes. [Sandipan Panda](https://www.linkedin.com/in/sandipanpanda)
15+
([DevZero](https://www.devzero.io/)) had the opportunity to interview [Maciej
16+
Szulik](https://github.com/soltysh) ([Defense Unicorns](https://defenseunicorns.com/)) and [Janet
17+
Kuo](https://github.com/janetkuo) ([Google](https://about.google/)), the chairs and tech leads of
18+
SIG Apps. They shared their experiences, challenges, and visions for the future of application
19+
management within the Kubernetes ecosystem.
20+
21+
## Introductions
22+
23+
**Sandipan: Hello, could you start by telling us a bit about yourself, your role, and your journey
24+
within the Kubernetes community that led to your current roles in SIG Apps?**
25+
26+
**Maciej**: Hey, my name is Maciej, and I’m one of the leads for SIG Apps. Aside from this role, you
27+
can also find me helping
28+
[SIG CLI](https://github.com/kubernetes/community/tree/master/sig-cli#readme) and also being one of
29+
the Steering Committee members. I’ve been contributing to Kubernetes since late 2014 in various
30+
areas, including controllers, apiserver, and kubectl.
31+
32+
**Janet**: Certainly! I'm Janet, a Staff Software Engineer at Google, and I've been deeply involved
33+
with the Kubernetes project since its early days, even before the 1.0 launch in 2015. It's been an
34+
amazing journey!
35+
36+
My current role within the Kubernetes community is one of the chairs and tech leads of SIG Apps. My
37+
journey with SIG Apps started organically. I started with building the Deployment API and adding
38+
rolling update functionalities. I naturally gravitated towards SIG Apps and became increasingly
39+
involved. Over time, I took on more responsibilities, culminating in my current leadership roles.
40+
41+
## About SIG Apps
42+
43+
*All following answers were jointly provided by Maciej and Janet.*
44+
45+
**Sandipan: For those unfamiliar, could you provide an overview of SIG Apps' mission and objectives?
46+
What key problems does it aim to solve within the Kubernetes ecosystem?**
47+
48+
As described in our
49+
[charter](https://github.com/kubernetes/community/blob/master/sig-apps/charter.md#scope), we cover a
50+
broad area related to developing, deploying, and operating applications on Kubernetes. That, in
51+
short, means we’re open to each and everyone showing up at our bi-weekly meetings and discussing the
52+
ups and downs of writing and deploying various applications on Kubernetes.
53+
54+
**Sandipan: What are some of the most significant projects or initiatives currently being undertaken
55+
by SIG Apps?**
56+
57+
At this point in time, the main factors driving the development of our controllers are the
58+
challenges coming from running various AI-related workloads. It’s worth giving credit here to two
59+
working groups we’ve sponsored over the past years:
60+
61+
1. [The Batch Working Group](https://github.com/kubernetes/community/tree/master/wg-batch), which is
62+
looking at running HPC, AI/ML, and data analytics jobs on top of Kubernetes.
63+
2. [The Serving Working Group](https://github.com/kubernetes/community/tree/master/wg-serving), which
64+
is focusing on hardware-accelerated AI/ML inference.
65+
66+
## Best practices and challenges
67+
68+
**Sandipan: SIG Apps plays a crucial role in developing application management best practices for
69+
Kubernetes. Can you share some of these best practices and how they help improve application
70+
lifecycle management?**
71+
72+
1. Implementing [health checks and readiness probes](/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/)
73+
ensures that your applications are healthy and ready to serve traffic, leading to improved
74+
reliability and uptime. The above, combined with comprehensive logging, monitoring, and tracing
75+
solutions, will provide insights into your application's behavior, enabling you to identify and
76+
resolve issues quickly.
77+
78+
2. [Auto-scale your application](/docs/concepts/workloads/autoscaling/) based
79+
on resource utilization or custom metrics, optimizing resource usage and ensuring your
80+
application can handle varying loads.
81+
82+
3. Use Deployment for stateless applications, StatefulSet for stateful applications, Job
83+
and CronJob for batch workloads, and DaemonSet for running a daemon on each node. Use
84+
Operators and CRDs to extend the Kubernetes API to automate the deployment, management, and
85+
lifecycle of complex applications, making them easier to operate and reducing manual
86+
intervention.
87+
88+
**Sandipan: What are some of the common challenges SIG Apps faces, and how do you address them?**
89+
90+
The biggest challenge we’re facing all the time is the need to reject a lot of features, ideas, and
91+
improvements. This requires a lot of discipline and patience to be able to explain the reasons
92+
behind those decisions.
93+
94+
**Sandipan: How has the evolution of Kubernetes influenced the work of SIG Apps? Are there any
95+
recent changes or upcoming features in Kubernetes that you find particularly relevant or beneficial
96+
for SIG Apps?**
97+
98+
The main benefit for both us and the whole community around SIG Apps is the ability to extend
99+
kubernetes with [Custom Resource Definitions](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)
100+
and the fact that users can build their own custom controllers leveraging the built-in ones to
101+
achieve whatever sophisticated use cases they might have and we, as the core maintainers, haven’t
102+
considered or weren’t able to efficiently resolve inside Kubernetes.
103+
104+
## Contributing to SIG Apps
105+
106+
**Sandipan: What opportunities are available for new contributors who want to get involved with SIG
107+
Apps, and what advice would you give them?**
108+
109+
We get the question, "What good first issue might you recommend we start with?" a lot :-) But
110+
unfortunately, there’s no easy answer to it. We always tell everyone that the best option to start
111+
contributing to core controllers is to find one you are willing to spend some time with. Read
112+
through the code, then try running unit tests and integration tests focusing on that
113+
controller. Once you grasp the general idea, try breaking it and the tests again to verify your
114+
breakage. Once you start feeling confident you understand that particular controller, you may want
115+
to search through open issues affecting that controller and either provide suggestions, explaining
116+
the problem users have, or maybe attempt your first fix.
117+
118+
Like we said, there are no shortcuts on that road; you need to spend the time with the codebase to
119+
understand all the edge cases we’ve slowly built up to get to the point where we are. Once you’re
120+
successful with one controller, you’ll need to repeat that same process with others all over again.
121+
122+
**Sandipan: How does SIG Apps gather feedback from the community, and how is this feedback
123+
integrated into your work?**
124+
125+
We always encourage everyone to show up and present their problems and solutions during our
126+
bi-weekly [meetings](https://github.com/kubernetes/community/tree/master/sig-apps#meetings). As long
127+
as you’re solving an interesting problem on top of Kubernetes and you can provide valuable feedback
128+
about any of the core controllers, we’re always happy to hear from everyone.
129+
130+
## Looking ahead
131+
132+
**Sandipan: Looking ahead, what are the key focus areas or upcoming trends in application management
133+
within Kubernetes that SIG Apps is excited about? How is the SIG adapting to these trends?**
134+
135+
Definitely the current AI hype is the major driving factor; as mentioned above, we have two working
136+
groups, each covering a different aspect of it.
137+
138+
**Sandipan: What are some of your favorite things about this SIG?**
139+
140+
Without a doubt, the people that participate in our meetings and on
141+
[Slack](https://kubernetes.slack.com/messages/sig-apps), who tirelessly help triage issues, pull
142+
requests and invest a lot of their time (very frequently their private time) into making kubernetes
143+
great!
144+
145+
---
146+
147+
SIG Apps is an essential part of the Kubernetes community, helping to shape how applications are
148+
deployed and managed at scale. From its work on improving Kubernetes' workload APIs to driving
149+
innovation in AI/ML application management, SIG Apps is continually adapting to meet the needs of
150+
modern application developers and operators. Whether you’re a new contributor or an experienced
151+
developer, there’s always an opportunity to get involved and make an impact.
152+
153+
If you’re interested in learning more or contributing to SIG Apps, be sure to check out their [SIG
154+
README](https://github.com/kubernetes/community/tree/master/sig-apps) and join their bi-weekly [meetings](https://github.com/kubernetes/community/tree/master/sig-apps#meetings).
155+
156+
- [SIG Apps Mailing List](https://groups.google.com/a/kubernetes.io/g/sig-apps)
157+
- [SIG Apps on Slack](https://kubernetes.slack.com/messages/sig-apps)

content/en/blog/_posts/2025-02-03-introducing-jobset/index.md renamed to content/en/blog/_posts/2025-03-23-introducing-jobset/index.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
---
22
layout: blog
33
title: "Introducing JobSet"
4-
date: 2025-02-03
4+
date: 2025-03-23
55
slug: introducing-jobset
6-
draft: true
76
---
87

98
**Authors**: Daniel Vega-Myhre (Google), Abdullah Gharaibeh (Google), Kevin Hannon (Red Hat)

content/en/blog/_posts/2025-01-15-swap-fresh-improvements.md renamed to content/en/blog/_posts/2025-03-24-swap-fresh-improvements.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
---
22
layout: blog
3-
title: "Kubernetes 1.32: Fresh Swap Features for Linux Users"
4-
date: 2025-01-15T10:00:00-08:00
5-
draft: true
3+
title: "Fresh Swap Features for Linux Users in Kubernetes 1.32"
4+
date: 2025-03-24T10:00:00-08:00
65
slug: swap-linux-improvements
76
author: >
87
Itamar Holder (Red Hat)

content/en/docs/concepts/security/security-checklist.md

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ an admin user.
5151

5252
## Network security
5353

54-
- [ ] CNI plugins in-use supports network policies.
54+
- [ ] CNI plugins in use support network policies.
5555
- [ ] Ingress and egress network policies are applied to all workloads in the
5656
cluster.
5757
- [ ] Default network policies within each namespace, selecting all pods, denying
@@ -66,9 +66,8 @@ plugins provide the functionality to
6666
restrict network resources that pods may communicate with. This is most commonly done
6767
through [Network Policies](/docs/concepts/services-networking/network-policies/)
6868
which provide a namespaced resource to define rules. Default network policies
69-
blocking everything egress and ingress, in each namespace, selecting all the
70-
pods, can be useful to adopt an allow list approach, ensuring that no workloads
71-
is missed.
69+
that block all egress and ingress, in each namespace, selecting all pods, can be
70+
useful to adopt an allow list approach to ensure that no workloads are missed.
7271

7372
Not all CNI plugins provide encryption in transit. If the chosen plugin lacks this
7473
feature, an alternative solution could be to use a service mesh to provide that
@@ -80,12 +79,12 @@ be used to communicate securely with it. The certificate authority for this
8079
should be unique to etcd.
8180

8281
External Internet access to the Kubernetes API server should be restricted to
83-
not expose the API publicly. Be careful as many managed Kubernetes distribution
82+
not expose the API publicly. Be careful, as many managed Kubernetes distributions
8483
are publicly exposing the API server by default. You can then use a bastion host
8584
to access the server.
8685

8786
The [kubelet](/docs/reference/command-line-tools-reference/kubelet/) API access
88-
should be restricted and not publicly exposed, the defaults authentication and
87+
should be restricted and not exposed publicly, the default authentication and
8988
authorization settings, when no configuration file specified with the `--config`
9089
flag, are overly permissive.
9190

@@ -325,7 +324,7 @@ Production.
325324
webhook admission controller.
326325
- [ ] The admission chain plugins and webhooks are securely configured.
327326

328-
Admission controllers can help to improve the security of the cluster. However,
327+
Admission controllers can help improve the security of the cluster. However,
329328
they can present risks themselves as they extend the API server and
330329
[should be properly secured](/blog/2022/01/19/secure-your-admission-controllers-and-webhooks/).
331330

@@ -350,11 +349,11 @@ permission to sign certificate requests.
350349
attribute') of `system:masters`.
351350

352351
[`LimitRanger`](/docs/reference/access-authn-authz/admission-controllers/#limitranger)
353-
: Enforce the LimitRange API constraints.
352+
: Enforces the LimitRange API constraints.
354353

355354
[`MutatingAdmissionWebhook`](/docs/reference/access-authn-authz/admission-controllers/#mutatingadmissionwebhook)
356355
: Allows the use of custom controllers through webhooks, these controllers may
357-
mutate requests that it reviews.
356+
mutate requests that they review.
358357

359358
[`PodSecurity`](/docs/reference/access-authn-authz/admission-controllers/#podsecurity)
360359
: Replacement for Pod Security Policy, restricts security contexts of deployed
@@ -367,8 +366,8 @@ Pods.
367366
: Allows the use of custom controllers through webhooks, these controllers do
368367
not mutate requests that it reviews.
369368

370-
The second group includes plugin that are not enabled by default but in general
371-
availability state and recommended to improve your security posture:
369+
The second group includes plugins that are not enabled by default but are in general
370+
availability state and are recommended to improve your security posture:
372371

373372
[`DenyServiceExternalIPs`](/docs/reference/access-authn-authz/admission-controllers/#denyserviceexternalips)
374373
: Rejects all net-new usage of the `Service.spec.externalIPs` field. This is a mitigation for

content/en/docs/concepts/storage/volumes.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ weight: 10
1414

1515
<!-- overview -->
1616

17-
Kubernetes _volumes_ provide a way for containers in a {{< glossary_tooltip text="pods" term_id="pod" >}}
17+
Kubernetes _volumes_ provide a way for containers in a {{< glossary_tooltip text="pod" term_id="pod" >}}
1818
to access and share data via the filesystem. There are different kinds of volume that you can use for different purposes,
1919
such as:
2020

content/en/docs/reference/access-authn-authz/authentication.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,7 @@ presents a valid certificate signed by the cluster's certificate authority
3333
the username from the common name field in the 'subject' of the cert (e.g.,
3434
"/CN=bob"). From there, the role based access control (RBAC) sub-system would
3535
determine whether the user is authorized to perform a specific operation on a
36-
resource. For more details, refer to the normal users topic in
37-
[certificate request](/docs/reference/access-authn-authz/certificate-signing-requests/#normal-user)
38-
for more details about this.
36+
resource.
3937

4038
In contrast, service accounts are users managed by the Kubernetes API. They are
4139
bound to specific namespaces, and created automatically by the API server or
@@ -1815,5 +1813,6 @@ You can only make `SelfSubjectReview` requests if:
18151813

18161814
## {{% heading "whatsnext" %}}
18171815

1816+
* To learn about issuing certificates for users, read [Issue a Certificate for a Kubernetes API Client Using A CertificateSigningRequest](/docs/tasks/tls/certificate-issue-client-csr/)
18181817
* Read the [client authentication reference (v1beta1)](/docs/reference/config-api/client-authentication.v1beta1/)
18191818
* Read the [client authentication reference (v1)](/docs/reference/config-api/client-authentication.v1/)

0 commit comments

Comments
 (0)