docs: NUMA policies immutable-first + Pod-CIDR expansion + NodeLocal DNS persistence#904
docs: NUMA policies immutable-first + Pod-CIDR expansion + NodeLocal DNS persistence#904chinameok wants to merge 1 commit into
Conversation
WalkthroughFour documentation files are updated: the Machine Configuration index adds a release-cadence note; the resource manager policies doc splits "Applying the Configuration" into immutable-infrastructure and traditional-OS subsections with updated Quick Start wording; the NodeLocal DNS doc replaces upgrade-rebuild guidance with OS-specific kubelet ChangesDocumentation: Kubelet Config OS Pathways, Machine Config Cadence, and Subnet Expansion
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Deploying alauda-container-platform with
|
| Latest commit: |
1fa6f23
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://cfb02a36.alauda-container-platform.pages.dev |
| Branch Preview URL: | https://docs-machine-config-day2.alauda-container-platform.pages.dev |
…eLocal DNS persistence - resource_manager_policies: apply on Immutable Infrastructure (Machine Configuration) first; traditional OS as fallback. - machine_config: surface the kubelet configuration link from the main site. - configure_subnet: day-2 guidance for expanding the default Pod subnet. - configure_node_local_dns: split clusterDNS persistence by OS — immutable via Machine Configuration (kubelet drop-in), traditional via cluster-template kubeletExtraArgs.
cdd9b69 to
1fa6f23
Compare
There was a problem hiding this comment.
🧹 Nitpick comments (3)
docs/en/configure/scalability/resource_manager_policies.mdx (1)
101-103: ⚡ Quick winBreak up complex sentence for clarity.
Lines 101-103 form a 68-word sentence that interleaves three distinct concepts: (1) how to configure topology/reservation settings, (2) the additional requirement for static policies, and (3) a conditional workaround when orchestration is unavailable. Consider splitting into separate sentences.
📝 Suggested rewording
-On immutable nodes, kubelet settings are managed declaratively with Machine Configuration—you do not edit kubelet files on the node directly. Configure `topologyManagerPolicy`, `topologyManagerScope`, `reservedSystemCPUs`, and reserved resources by writing a kubelet configuration drop-in, as described in <ExternalSiteLink name="immutable-infra" href="/machine-configuration/kubelet_config.html" children="Configuring Kubelet" />. - -Changing `cpuManagerPolicy` or `memoryManagerPolicy` to a static policy additionally requires draining the node and resetting the kubelet CPU and memory manager state before the kubelet restarts. On immutable infrastructure this orchestration is delivered through Machine Configuration; if it is not yet available in your environment, configure static CPU and Memory Manager policies with assistance from your support team. +On immutable nodes, kubelet settings are managed declaratively with Machine Configuration—you do not edit kubelet files on the node directly. Configure `topologyManagerPolicy`, `topologyManagerScope`, `reservedSystemCPUs`, and reserved resources by writing a kubelet configuration drop-in, as described in <ExternalSiteLink name="immutable-infra" href="/machine-configuration/kubelet_config.html" children="Configuring Kubelet" />. + +Changing `cpuManagerPolicy` or `memoryManagerPolicy` to a static policy additionally requires draining the node and resetting the kubelet CPU and memory manager state before the kubelet restarts. On immutable infrastructure this orchestration is delivered through Machine Configuration. If this orchestration is not yet available in your environment, configure static CPU and Memory Manager policies with assistance from your support team.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/configure/scalability/resource_manager_policies.mdx` around lines 101 - 103, The paragraph containing lines 101-103 contains a single 68-word sentence that conflates three separate concepts: configuring topology and reservation settings, additional requirements for static policies, and the conditional workaround for when orchestration is unavailable. Break this long sentence into three shorter sentences, each addressing one concept independently. The first should explain how to configure topologyManagerPolicy, topologyManagerScope, reservedSystemCPUs, and reserved resources on immutable nodes. The second should describe the additional node draining and state reset requirements for static CPU and Memory Manager policies. The third should address the conditional workaround when Machine Configuration orchestration is not yet available. This will improve clarity and readability without altering the technical content.docs/en/networking/functions/configure_node_local_dns.mdx (1)
33-34: 💤 Low valueConsider simplifying the kubeletExtraArgs location description.
Lines 33-34 form a 48-word sentence that lists multiple nested YAML paths in prose. While technically accurate, readers may find it easier to parse if the locations were listed as bullet points or if the YAML example below included comments showing the full path context.
📝 Alternative presentation
Option 1: Use bullet points for clarity:
- **Traditional operating systems**: add the `--cluster-dns` parameter to `kubeletExtraArgs` in the cluster template—in `KubeadmControlPlane` (under both `initConfiguration` and `joinConfiguration` → `nodeRegistration` → `kubeletExtraArgs`) and in `KubeadmConfigTemplate` (under `template` → `spec` → `joinConfiguration` → `nodeRegistration` → `kubeletExtraArgs`): + **Traditional operating systems**: add the `--cluster-dns` parameter to `kubeletExtraArgs` in the cluster template at the following locations: + - `KubeadmControlPlane` → `initConfiguration` → `nodeRegistration` → `kubeletExtraArgs` + - `KubeadmControlPlane` → `joinConfiguration` → `nodeRegistration` → `kubeletExtraArgs` + - `KubeadmConfigTemplate` → `template` → `spec` → `joinConfiguration` → `nodeRegistration` → `kubeletExtraArgs`Option 2: Add inline YAML comments showing context (keep prose, enhance example):
# In KubeadmControlPlane: # - initConfiguration.nodeRegistration.kubeletExtraArgs # - joinConfiguration.nodeRegistration.kubeletExtraArgs # In KubeadmConfigTemplate: # - template.spec.joinConfiguration.nodeRegistration.kubeletExtraArgs kubeletExtraArgs: cluster-dns: "<NodeLocal_DNS_IP>" # e.g., 169.254.20.10🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/networking/functions/configure_node_local_dns.mdx` around lines 33 - 34, The prose sentence describing the locations of kubeletExtraArgs in KubeadmControlPlane and KubeadmConfigTemplate is too long and complex to parse easily. Simplify the presentation by either converting the nested path locations into a bulleted list for clarity, or enhance the YAML code example below by adding inline comments that show the full path context (e.g., comments indicating KubeadmControlPlane initConfiguration and joinConfiguration paths, and KubeadmConfigTemplate template.spec path) alongside the kubeletExtraArgs configuration. Choose whichever approach makes the documentation easier for readers to follow.docs/en/configure/machine_config/index.mdx (1)
13-13: ⚡ Quick winBreak up long sentence for better readability.
This 76-word sentence packs multiple concepts (release cadence, installation, upgrade, operations, specific examples, and two links) into a single run-on structure. Consider splitting it into 2-3 sentences to improve comprehension.
📝 Suggested rewording
-Machine Configuration releases on a different cadence from <Term name="product" />. For installation, upgrade, and detailed operation procedures—including <ExternalSiteLink name="immutable-infra" href="/machine-configuration/kubelet_config.html" children="kubelet configuration" />, firewall ports, and time synchronization—use <ExternalSiteLink name="immutable-infra" href="/machine-configuration/index.html" children="Machine Configuration" />. +Machine Configuration releases on a different cadence from <Term name="product" />. For installation, upgrade, and detailed operation procedures, refer to <ExternalSiteLink name="immutable-infra" href="/machine-configuration/index.html" children="Machine Configuration" />. This includes <ExternalSiteLink name="immutable-infra" href="/machine-configuration/kubelet_config.html" children="kubelet configuration" />, firewall ports, and time synchronization.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/en/configure/machine_config/index.mdx` at line 13, The sentence beginning with "Machine Configuration releases on a different cadence..." is a 76-word run-on that combines multiple distinct concepts (release cadence difference, installation/upgrade procedures, operational details like firewall and time synchronization, and two ExternalSiteLink references) into a single structure. Break this into 2-3 shorter sentences by first stating the release cadence difference, then in separate sentence(s) explain the installation and upgrade procedures with their associated links and operational details, improving overall readability and making each concept clearer for readers.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@docs/en/configure/machine_config/index.mdx`:
- Line 13: The sentence beginning with "Machine Configuration releases on a
different cadence..." is a 76-word run-on that combines multiple distinct
concepts (release cadence difference, installation/upgrade procedures,
operational details like firewall and time synchronization, and two
ExternalSiteLink references) into a single structure. Break this into 2-3
shorter sentences by first stating the release cadence difference, then in
separate sentence(s) explain the installation and upgrade procedures with their
associated links and operational details, improving overall readability and
making each concept clearer for readers.
In `@docs/en/configure/scalability/resource_manager_policies.mdx`:
- Around line 101-103: The paragraph containing lines 101-103 contains a single
68-word sentence that conflates three separate concepts: configuring topology
and reservation settings, additional requirements for static policies, and the
conditional workaround for when orchestration is unavailable. Break this long
sentence into three shorter sentences, each addressing one concept
independently. The first should explain how to configure topologyManagerPolicy,
topologyManagerScope, reservedSystemCPUs, and reserved resources on immutable
nodes. The second should describe the additional node draining and state reset
requirements for static CPU and Memory Manager policies. The third should
address the conditional workaround when Machine Configuration orchestration is
not yet available. This will improve clarity and readability without altering
the technical content.
In `@docs/en/networking/functions/configure_node_local_dns.mdx`:
- Around line 33-34: The prose sentence describing the locations of
kubeletExtraArgs in KubeadmControlPlane and KubeadmConfigTemplate is too long
and complex to parse easily. Simplify the presentation by either converting the
nested path locations into a bulleted list for clarity, or enhance the YAML code
example below by adding inline comments that show the full path context (e.g.,
comments indicating KubeadmControlPlane initConfiguration and joinConfiguration
paths, and KubeadmConfigTemplate template.spec path) alongside the
kubeletExtraArgs configuration. Choose whichever approach makes the
documentation easier for readers to follow.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 4e753157-c929-4792-b587-da045b5c3ef4
📒 Files selected for processing (4)
docs/en/configure/machine_config/index.mdxdocs/en/configure/scalability/resource_manager_policies.mdxdocs/en/networking/functions/configure_node_local_dns.mdxdocs/en/networking/functions/configure_subnet.mdx
Summary
Lints clean (yarn lint: 0 errors).
Notes for reviewers