Skip to content

add Kube-OVN IPPool document#358

Merged
oilbeater merged 3 commits intoalauda:masterfrom
zhangzujian:ippool
Dec 1, 2025
Merged

add Kube-OVN IPPool document#358
oilbeater merged 3 commits intoalauda:masterfrom
zhangzujian:ippool

Conversation

@zhangzujian
Copy link
Copy Markdown
Contributor

@zhangzujian zhangzujian commented Nov 29, 2025

Summary by CodeRabbit

  • Documentation
    • Added a comprehensive guide for configuring IPPool in Kube-OVN: creation, subnet and IP-range formats (IPv4/IPv6), optional namespace binding, Pod/Workload annotation usage, allocation behavior, YAML examples, and operational precautions (naming rules, range validity and non-overlap, update effects, reserved IPs).
    • Reformatted networking docs to present route definitions more clearly.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Nov 29, 2025

Walkthrough

Adds a new Kube‑OVN IPPool how‑to documenting namespace‑bound IPAM, YAML examples, binding/annotation usage, supported formats, and precautions; also performs cosmetic reformatting of a routes array in an existing NetworkAttachmentDefinition doc (no functional change).

Changes

Cohort / File(s) Summary
New IPPool Configuration Guide
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx
Adds a new document describing IPPool as a granular, namespace-bound IPAM unit. Includes YAML examples for IPPool, Pod, and Deployment; shows ips formats (single/CIDR/range, IPv4/IPv6); explains namespace binding and Pod/Workload annotation allocation semantics; lists supported formats and precautions (naming, range validity, non-overlap, reserved IPs, immediate .spec.ips effects).
NetworkAttachmentDefinition Formatting
docs/en/configure/networking/how_to/kube_ovn/multiple_networks.mdx
Cosmetic reformatting of the routes array from multi-line object entries to a compact single-line array of objects. No change to route content or semantics.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Focus review on YAML correctness and example validity in configure_ippool.mdx.
  • Verify the routes array reformat did not change content in multiple_networks.mdx.

Possibly related PRs

  • multiple networks #123 — Related docs changes touching NetworkAttachmentDefinition routes examples/formatting.

Poem

🐇 I nibbled CIDRs under starlit rules,
I hopped through ranges, tidy tools,
Pools tied to namespaces, snug and neat,
Pods find addresses — a hopping feat,
Deploy, and rabbit-dance in YAML queues ✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title directly matches the main changeset: adding a new documentation file for Kube-OVN IPPool configuration.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between bbc97b3 and 88007fa.

📒 Files selected for processing (2)
  • docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1 hunks)
  • docs/en/configure/networking/how_to/kube_ovn/multiple_networks.mdx (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • docs/en/configure/networking/how_to/kube_ovn/multiple_networks.mdx
🧰 Additional context used
🪛 LanguageTool
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx

[grammar] ~5-~5: Ensure spelling is correct
Context: --- weight: 16 --- # Configure IPPool IPPool is a more granular IPAM managemen...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~12-~12: Ensure spelling is correct
Context: ...amespaces. ## Instructions ### Create IPPool Below is an example: ```yaml apiVersion...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

🔇 Additional comments (1)
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1)

1-91: Well-documented addition with clear examples and comprehensive guidance.

The new IPPool documentation is thorough and well-structured. The explanation of the IPPool concept is clear, the YAML examples are accurate and properly formatted, and the precautions section provides valuable guidance on edge cases and constraints. The previous review comments have been appropriately addressed (lines 85-86 now show correct spelling and verb agreement).

The documentation effectively covers namespace binding, annotation-based usage, supported IP formats (single IP, CIDR, and range notation), and important behavioral notes like reserved IP handling and immediate .spec.ips updates.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 61976dd and ecd7acf.

📒 Files selected for processing (2)
  • docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1 hunks)
  • docs/en/configure/networking/how_to/kube_ovn/multiple_networks.mdx (1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx

[grammar] ~5-~5: Ensure spelling is correct
Context: --- weight: 16 --- # Configure IPPool IPPool is a more granular IPAM managemen...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

🔇 Additional comments (3)
docs/en/configure/networking/how_to/kube_ovn/multiple_networks.mdx (1)

159-165: Routes array formatting is improved and valid.

The reformatted compact JSON is more readable while preserving the exact route configurations. The syntax is valid and maintains all required fields (dst and optional gw).

docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (2)

2-2: Verify navigation weight assignment.

Both the new configure_ippool.mdx and existing multiple_networks.mdx are assigned weight: 16. Duplicate weights may cause unpredictable ordering in documentation navigation. Consider adjusting this file's weight to ensure correct document ordering in the sidebar.


1-91: Comprehensive and well-structured IPPool documentation.

The new documentation provides clear guidance on creating and using IPPools, with practical YAML examples for both Pod and Deployment scenarios. The precautions section is detailed and addresses important implementation constraints. The use of callouts effectively highlights key configuration fields.

Comment thread docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx Outdated
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1)

83-91: Consider improving grammar in precautions section.

Several precautions have minor grammatical issues worth refining for clarity:

  • Line 86: "IP addresses out of the subnet range is allowed" → subject-verb mismatch (addresses + is). Consider: "IP addresses outside the subnet range are allowed..."
  • Line 90: "IP ranges of all IP pools in the subnet will be excluded" could be more direct: "All IP pool ranges within the subnet will be excluded when randomly assigning IPs from the subnet."

These are stylistic improvements rather than correctness issues, so feel free to defer or adjust as needed.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ecd7acf and aecfe8d.

📒 Files selected for processing (1)
  • docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx

[grammar] ~5-~5: Ensure spelling is correct
Context: --- weight: 16 --- # Configure IPPool IPPool is a more granular IPAM managemen...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~12-~12: Ensure spelling is correct
Context: ...amespaces. ## Instructions ### Create IPPool Below is an example: ```yaml apiVersion...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

🔇 Additional comments (2)
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (2)

85-85: Verify typo fix from past review.

The past review flagged a typo "Fixed Addressess" → "Fixed Addresses" at this line. The provided code shows "Fixed Addresses" (correct), suggesting the fix has already been applied. Please confirm this was intentional.


1-91: Well-structured and comprehensive IPPool documentation.

The documentation provides clear instructions with helpful YAML examples and thorough precautions. The structure, callout annotations, and use cases (namespace binding and Pod/Workload annotations) are well explained.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1)

79-79: Minor formatting: Remove trailing whitespace in Deployment example.

Line 79 contains two trailing spaces after web before the image: key. Clean this up for consistency.

   template:
     metadata:
       labels:
         app: web
-      annotations:
+      annotations:
         ovn.kubernetes.io/ip_pool: pool-1
     spec:
       containers:
-      - name: web 
+      - name: web
         image: nginx:latest
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between aecfe8d and c0b6126.

📒 Files selected for processing (2)
  • docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1 hunks)
  • docs/en/configure/networking/how_to/kube_ovn/multiple_networks.mdx (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • docs/en/configure/networking/how_to/kube_ovn/multiple_networks.mdx
🧰 Additional context used
🪛 LanguageTool
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx

[grammar] ~5-~5: Ensure spelling is correct
Context: --- weight: 16 --- # Configure IPPool IPPool is a more granular IPAM managemen...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~12-~12: Ensure spelling is correct
Context: ...amespaces. ## Instructions ### Create IPPool Below is an example: ```yaml apiVersion...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

🔇 Additional comments (1)
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1)

1-91: Comprehensive IPPool documentation with clear structure and examples.

The new documentation effectively explains Kube-OVN IPPool configuration. The content is well-organized with clear sections, proper YAML examples, and informative callouts. The precautions section adequately covers important constraints and behaviors. Overall structure and technical accuracy are solid.

@zhangzujian
Copy link
Copy Markdown
Contributor Author

/ok-to-test

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1)

79-79: Remove trailing whitespace.

Line 79 contains trailing whitespace after web.

-      - name: web 
+      - name: web
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c0b6126 and bbc97b3.

📒 Files selected for processing (2)
  • docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1 hunks)
  • docs/en/configure/networking/how_to/kube_ovn/multiple_networks.mdx (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • docs/en/configure/networking/how_to/kube_ovn/multiple_networks.mdx
🧰 Additional context used
🪛 LanguageTool
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx

[grammar] ~5-~5: Ensure spelling is correct
Context: --- weight: 16 --- # Configure IPPool IPPool is a more granular IPAM managemen...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~12-~12: Ensure spelling is correct
Context: ...amespaces. ## Instructions ### Create IPPool Below is an example: ```yaml apiVersion...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

🔇 Additional comments (1)
docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx (1)

1-91: Excellent documentation structure and content clarity.

This new IPPool configuration guide is well-organized and provides clear guidance on creating and using IPPools. The YAML examples effectively demonstrate both namespace binding and pod annotation approaches, and the precautions section adds valuable operational context. The introduction clearly positions IPPools as a granular IPAM management unit.

Comment thread docs/en/configure/networking/how_to/kube_ovn/configure_ippool.mdx Outdated
Signed-off-by: zhangzujian <zhangzujian.7@gmail.com>
Signed-off-by: zhangzujian <zhangzujian.7@gmail.com>
Signed-off-by: zhangzujian <zhangzujian.7@gmail.com>
@oilbeater oilbeater merged commit f439783 into alauda:master Dec 1, 2025
1 of 2 checks passed
@zhangzujian zhangzujian deleted the ippool branch December 1, 2025 06:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants