Skip to content

Commit

Permalink
supplement system requirements doc
Browse files Browse the repository at this point in the history
Signed-off-by: Icarus9913 <[email protected]>
  • Loading branch information
Icarus9913 committed Dec 22, 2023
1 parent f6f1f4f commit 05adad4
Show file tree
Hide file tree
Showing 21 changed files with 128 additions and 33 deletions.
1 change: 1 addition & 0 deletions docs/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ nav:
- VWware vSphere: usage/install/cloud/get-started-vmware.md
- OpenStack: usage/install/cloud/get-started-openstack.md
- Upgrading: usage/install/upgrade.md
- System requirements: usage/install/system-requirements.md
- Concepts:
- Architecture: concepts/arch.md
- IPAM: concepts/ipam-des.md
Expand Down
6 changes: 4 additions & 2 deletions docs/usage/install/cloud/get-started-alibaba-zh_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,11 @@ Spiderpool 能基于 IPVlan Underlay CNI 在阿里云环境上运行,并保证

## 实施要求

1. 使用 IPVlan 做集群 CNI 时,系统内核版本必须大于 4.2。
1. [安装要求](./../system-requirements-zh_CN.md)

2. 使用 IPVlan 做集群 CNI 时,系统内核版本必须大于 4.2。

2. 已安装 [Helm](https://helm.sh/docs/intro/install/)
3. 已安装 [Helm](https://helm.sh/docs/intro/install/)

## 步骤

Expand Down
6 changes: 4 additions & 2 deletions docs/usage/install/cloud/get-started-alibaba.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,11 @@ Spiderpool can run on the Alibaba Cloud environment based on IPVlan Underlay CNI

## Prerequisites

1. The system kernel version must be greater than 4.2 when using IPVlan as the cluster's CNI.
1. [System requirements](./../system-requirements.md)

2. [Helm](https://helm.sh/docs/intro/install/) is installed.
2. The system kernel version must be greater than 4.2 when using IPVlan as the cluster's CNI.

3. [Helm](https://helm.sh/docs/intro/install/) is installed.

## Steps

Expand Down
8 changes: 5 additions & 3 deletions docs/usage/install/cloud/get-started-aws-zh_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,13 @@ Spiderpool 能基于 ipvlan Underlay CNI 运行在公有云环境上,并实现

## 实施要求

1. 使用 ipvlan 做集群 CNI 时,系统内核版本必须大于 4.2。
1. [安装要求](./../system-requirements-zh_CN.md)

2. 已安装 [Helm](https://helm.sh/docs/intro/install/)
2. 使用 ipvlan 做集群 CNI 时,系统内核版本必须大于 4.2

3. 了解 [AWS VPC 公有 & 私有子网](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html) 基础知识。
3. 已安装 [Helm](https://helm.sh/docs/intro/install/)

4. 了解 [AWS VPC 公有 & 私有子网](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html) 基础知识。

在 AWS VPC 下创建的子网,如果设置了出口路由 0.0.0.0/0, ::/0 的下一跳为 Internet Gateway,则该子网就隶属于 *公有子网* ,否则就是 *私有子网*

Expand Down
8 changes: 5 additions & 3 deletions docs/usage/install/cloud/get-started-aws.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,13 @@ Spiderpool can operate in public cloud environments using the ipvlan underlay CN

## Prerequisites

1. The system kernel version must be greater than 4.2 when using ipvlan as the cluster's CNI.
1. [System requirements](./../system-requirements.md)

2. [Helm](https://helm.sh/docs/intro/install/) is installed.
2. The system kernel version must be greater than 4.2 when using ipvlan as the cluster's CNI.

3. Understand the basics of [AWS VPC Public and Private Subnets](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html).
3. [Helm](https://helm.sh/docs/intro/install/) is installed.

4. Understand the basics of [AWS VPC Public and Private Subnets](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html).

In an AWS VPC, a subnet is categorized as a *public subnet* if it has an outbound route configured with the Internet Gateway as the next hop for destinations 0.0.0.0/0 or ::/0. Otherwise, a subnet is considered a *private subnet* if it lacks this specific outbound routing configuration.

Expand Down
1 change: 1 addition & 0 deletions docs/usage/install/overlay/get-started-calico-zh_cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
## 先决条件

- [安装要求](./../system-requirements-zh_CN.md)
- 准备好一个 Kubernetes 集群
- 安装 Calico 作为集群的缺省 CNI。如果未安装,可参考 [官方文档](https://docs.tigera.io/calico/latest/getting-started/kubernetes/) 或参考以下命令安装:

Expand Down
1 change: 1 addition & 0 deletions docs/usage/install/overlay/get-started-calico.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ This page showcases the utilization of `Spiderpool`, a comprehensive Underlay ne
## Prerequisites

- [System requirements](./../system-requirements.md)
- A ready Kubernetes cluster.
- Calico has been already installed as the default CNI for your cluster. If it is not installed, please refer to [the official documentation](https://docs.tigera.io/calico/latest/getting-started/kubernetes/) or follow the commands below for installation:

Expand Down
1 change: 1 addition & 0 deletions docs/usage/install/overlay/get-started-cilium-zh_cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
## 先决条件

- [安装要求](./../system-requirements-zh_CN.md)
- 准备好一个 Kubernetes 集群
- 安装 Cilium 作为集群的缺省 CNI。如果未安装,可参考 [官方文档](https://docs.cilium.io/en/stable/gettingstarted/k8s-install-default/) 或使用以下命令安装:

Expand Down
1 change: 1 addition & 0 deletions docs/usage/install/overlay/get-started-cilium.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ This page showcases the utilization of `Spiderpool`, a comprehensive Underlay ne
## Prerequisites

- [System requirements](./../system-requirements.md)
- A ready Kubernetes cluster.
- Cilium has been already installed as the default CNI for your cluster. If it is not installed, please refer to [the official documentation](https://docs.cilium.io/en/stable/gettingstarted/k8s-install-default/) or follow the commands below for installation:

Expand Down
35 changes: 35 additions & 0 deletions docs/usage/install/system-requirements-zh_CN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# 安装要求

[**English**](./system-requirements.md) | **简体中文**

## 主机要求

- x86-64, arm64
- 使用 ipvlan 做集群 CNI 时,系统内核版本必须大于 4.2

## Kubernetes 要求

我们已在以下版本的 Kubernetes 中测试使用了 Spiderpool:

- v1.22.7
- v1.23.5
- v1.24.4
- v1.25.3
- v1.26.2
- v1.27.1
- v1.28.0

使用 [SpiderSubnet](./../spider-subnet.md) 功能要求 Kubernetes 版本不低于 `v1.21`

## 网络端口要求


| 环境变量配置 | 端口/协议 | 解释 | 是否必填 |
|-----------------------------|----------|----------------------------------------------------|----------|
| SPIDERPOOL_HEALTH_PORT | 5710/tcp | `spiderpool-agent` pod 健康检查端口号,服务于 Kubernetes | 必填 |
| SPIDERPOOL_METRIC_HTTP_PORT | 5711/tcp | `spiderpool-agent` 指标端口号 | 可选(默认关闭) |
| SPIDERPOOL_GOPS_LISTEN_PORT | 5712/tcp | `spiderpool-agent` gops 端口号用于 debug | 可选(默认启动) |
| SPIDERPOOL_HEALTH_PORT | 5720/tcp | `spiderpool-controller` pod 健康检查端口号,服务于 Kubernetes | 必填 |
| SPIDERPOOL_METRIC_HTTP_PORT | 5711/tcp | `spiderpool-controller` 指标端口号 | 可选(默认关闭) |
| SPIDERPOOL_WEBHOOK_PORT | 5722/tcp | `spiderpool-controller` webhook 端口号,服务于 Kubernetes | 必填 |
| SPIDERPOOL_GOPS_LISTEN_PORT | 5724/tcp | `spiderpool-controller` gops 端口号用于 debug | 可选(默认启动) |
34 changes: 34 additions & 0 deletions docs/usage/install/system-requirements.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# System requirements

**English** | [**简体中文**](./system-requirements-zh_CN.md)

## Node requirements

- x86-64, arm64
- The system kernel version must be greater than 4.2 when using `ipvlan` as the cluster's CNI

## Kubernetes requirements

We test Spiderpool against the following Kubernetes versions:

- v1.22.7
- v1.23.5
- v1.24.4
- v1.25.3
- v1.26.2
- v1.27.1
- v1.28.0

The [SpiderSubnet](./../spider-subnet.md) feature requires a minimum version of `v1.21`.

## Network Ports requirements

| ENV Configuration | Port/Protocol | Description | Is Optional |
|-----------------------------|---------------|--------------------------------------------------------------|---------------------------|
| SPIDERPOOL_HEALTH_PORT | 5710/tcp | `spiderpool-agent` pod health check port for kubernetes | must |
| SPIDERPOOL_METRIC_HTTP_PORT | 5711/tcp | `spiderpool-agent` metrics port | optional(default disable) |
| SPIDERPOOL_GOPS_LISTEN_PORT | 5712/tcp | `spiderpool-agent` gops port for debug | optional(default enable) |
| SPIDERPOOL_HEALTH_PORT | 5720/tcp | `spiderpool-controller` pod health check port for kubernetes | must |
| SPIDERPOOL_METRIC_HTTP_PORT | 5711/tcp | `spiderpool-controller` metrics port for openTelemetry | optional(default disable) |
| SPIDERPOOL_WEBHOOK_PORT | 5722/tcp | `spiderpool-controller` webhook port for kubernetes | must |
| SPIDERPOOL_GOPS_LISTEN_PORT | 5724/tcp | `spiderpool-controller` gops port for debug | optional(default enable) |
1 change: 1 addition & 0 deletions docs/usage/install/underlay/get-started-calico-zh_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ Spiderpool 可用作 Underlay 网络场景下,为 Deployment、StatefulSet 等

## 先决条件

* [安装要求](./../system-requirements-zh_CN.md)
* 一个 **_Kubernetes_** 集群(推荐 k8s version > 1.22), 并安装 **_Calico_** 作为集群的默认 CNI。

确认 calico 不配置使用 IPIP 或者 vxlan 隧道,因为本例将演示如何使用 calico 对接 underlay 网络。
Expand Down
1 change: 1 addition & 0 deletions docs/usage/install/underlay/get-started-calico.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ Spiderpool is able to provide static IPs to Deployments, StatefulSets, and other

## Prerequisites

* [System requirements](./../system-requirements.md)
* An available **_Kubernetes_** cluster with a recommended version higher than 1.22, where **_Calico_** is installed as the default CNI.

Make sure that Calico is not configured to use IPIP or VXLAN tunneling as we'll demonstrate how to use Calico for underlay networks.
Expand Down
8 changes: 5 additions & 3 deletions docs/usage/install/underlay/get-started-macvlan-zh_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,13 @@ Spiderpool 可用作 Underlay 网络场景下提供固定 IP 的一种解决方

## 先决条件

1. 准备一个 Kubernetes 集群
1. [安装要求](./../system-requirements-zh_CN.md)

2. 已安装 [Helm](https://helm.sh/docs/intro/install/)
2. 准备一个 Kubernetes 集群

3. 如果您使用如 Fedora、Centos 等 OS, 并且使用 NetworkManager 管理和配置网络,在以下场景时建议您需要配置 NetworkManager:
3. 已安装 [Helm](https://helm.sh/docs/intro/install/)

4. 如果您使用如 Fedora、Centos 等 OS, 并且使用 NetworkManager 管理和配置网络,在以下场景时建议您需要配置 NetworkManager:

* 如果你使用 Underlay 模式,`coordinator` 插件会在主机上创建 veth 接口,为了防止 NetworkManager 干扰 veth 接口, 导致 Pod 访问异常。我们需要配置 NetworkManager,使其不纳管这些 Veth 接口。

Expand Down
8 changes: 5 additions & 3 deletions docs/usage/install/underlay/get-started-macvlan.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,13 @@ Spiderpool provides a solution for assigning static IP addresses in underlay net

## Prerequisites

1. Make sure a Kubernetes cluster is ready.
1. [System requirements](./../system-requirements.md)

2. [Helm](https://helm.sh/docs/intro/install/) has been already installed.
2. Make sure a Kubernetes cluster is ready.

3. If your OS is such as Fedora and CentOS and uses NetworkManager to manage network configurations, you need to configure NetworkManager in the following scenarios:
3. [Helm](https://helm.sh/docs/intro/install/) has been already installed.

4. If your OS is such as Fedora and CentOS and uses NetworkManager to manage network configurations, you need to configure NetworkManager in the following scenarios:

* If you are using Underlay mode, the plugin `coordinator` will create veth interfaces on the host. To prevent interference from NetworkManager with the veth interface. It is strongly recommended that you configure NetworkManager.

Expand Down
11 changes: 6 additions & 5 deletions docs/usage/install/underlay/get-started-ovs-zh_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,13 @@ Spiderpool 可用作 Underlay 网络场景下提供固定 IP 的一种解决方

## 先决条件

1. 一个多节点的 Kubernetes 集群
1. [安装要求](./../system-requirements-zh_CN.md)

2. [Helm 工具](https://helm.sh/docs/intro/install/)
2. 一个多节点的 Kubernetes 集群

3. 必须在主机上安装并运行 Open vSwitch,可参考[官方安装说明](https://docs.openvswitch.org/en/latest/intro/install/#installation-from-packages)
3. [Helm 工具](https://helm.sh/docs/intro/install/)

4. 必须在主机上安装并运行 Open vSwitch,可参考[官方安装说明](https://docs.openvswitch.org/en/latest/intro/install/#installation-from-packages)

以下示例是基于 Ubuntu 22.04.1。主机系统不同,安装方式可能不同。

Expand All @@ -21,7 +23,7 @@ Spiderpool 可用作 Underlay 网络场景下提供固定 IP 的一种解决方
~# sudo systemctl start openvswitch-switch
```

4. 如果您使用如 Fedora、Centos 等 OS, 并且使用 NetworkManager 管理和配置网络,在以下场景时建议您需要配置 NetworkManager:
5. 如果您使用如 Fedora、Centos 等 OS, 并且使用 NetworkManager 管理和配置网络,在以下场景时建议您需要配置 NetworkManager:

* 如果你使用 Underlay 模式,`coordinator` 会在主机上创建 veth 接口,为了防止 NetworkManager 干扰 veth 接口, 导致 Pod 访问异常。我们需要配置 NetworkManager,使其不纳管这些 Veth 接口。

Expand All @@ -36,7 +38,6 @@ Spiderpool 可用作 Underlay 网络场景下提供固定 IP 的一种解决方
~# systemctl restart NetworkManager
```


## 安装 Spiderpool

1. 安装 Spiderpool。
Expand Down
10 changes: 6 additions & 4 deletions docs/usage/install/underlay/get-started-ovs.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,13 @@ Spiderpool can be used as a solution to provide fixed IPs in an Underlay network

## Prerequisites

1. Make sure a multi-node Kubernetes cluster is ready.
1. [System requirements](./../system-requirements.md)

2. [Helm](https://helm.sh/docs/intro/install/) has been already installed.
2. Make sure a multi-node Kubernetes cluster is ready.

3. Open vSwitch must be installed and running on the host. It could refer to [Installation](https://docs.openvswitch.org/en/latest/intro/install/#installation-from-packages).
3. [Helm](https://helm.sh/docs/intro/install/) has been already installed.

4. Open vSwitch must be installed and running on the host. It could refer to [Installation](https://docs.openvswitch.org/en/latest/intro/install/#installation-from-packages).

The following examples are based on Ubuntu 22.04.1. installation may vary depending on the host system.

Expand All @@ -21,7 +23,7 @@ Spiderpool can be used as a solution to provide fixed IPs in an Underlay network
~# sudo systemctl start openvswitch-switch
```

4. If your OS is such as Fedora and CentOS and uses NetworkManager to manage network configurations, you need to configure NetworkManager in the following scenarios:
5. If your OS is such as Fedora and CentOS and uses NetworkManager to manage network configurations, you need to configure NetworkManager in the following scenarios:

* If you are using Underlay mode, the `coordinator` will create veth interfaces on the host. To prevent interference from NetworkManager with the veth interface. It is strongly recommended that you configure NetworkManager.

Expand Down
9 changes: 5 additions & 4 deletions docs/usage/install/underlay/get-started-sriov-zh_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,10 @@ Spiderpool 可用作 underlay 网络场景下提供固定 IP 的一种解决方

## 先决条件

1. 一个 Kubernetes 集群
2. [Helm 工具](https://helm.sh/docs/intro/install/)
3. [支持 SR-IOV 功能的网卡](https://github.com/k8snetworkplumbingwg/sriov-network-device-plugin#supported-sr-iov-nics)
1. [System requirements](./../system-requirements.md)
2. 一个 Kubernetes 集群
3. [Helm 工具](https://helm.sh/docs/intro/install/)
4. [支持 SR-IOV 功能的网卡](https://github.com/k8snetworkplumbingwg/sriov-network-device-plugin#supported-sr-iov-nics)

* 查询网卡 bus-info:

Expand All @@ -30,7 +31,7 @@ Spiderpool 可用作 underlay 网络场景下提供固定 IP 的一种解决方
Capabilities: [180] Single Root I/O Virtualization (SR-IOV)
```

4. 如果您使用如 Fedora、Centos 等 OS, 并且使用 NetworkManager 管理和配置网络,在以下场景时建议您需要配置 NetworkManager:
5. 如果您使用如 Fedora、Centos 等 OS, 并且使用 NetworkManager 管理和配置网络,在以下场景时建议您需要配置 NetworkManager:

* 如果你使用 Underlay 模式,`coordinator` 会在主机上创建 veth 接口,为了防止 NetworkManager 干扰 veth 接口, 导致 Pod 访问异常。我们需要配置 NetworkManager,使其不纳管这些 Veth 接口。

Expand Down
9 changes: 5 additions & 4 deletions docs/usage/install/underlay/get-started-sriov.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,10 @@ Spiderpool provides a solution for assigning static IP addresses in underlay net

## Prerequisites

1. Make sure a Kubernetes cluster is ready
2. [Helm](https://helm.sh/docs/intro/install/) has already been installed
3. [A SR-IOV-enabled NIC](https://github.com/k8snetworkplumbingwg/sriov-network-device-plugin#supported-sr-iov-nics)
1. [System requirements](./../system-requirements.md)
2. Make sure a Kubernetes cluster is ready
3. [Helm](https://helm.sh/docs/intro/install/) has already been installed
4. [A SR-IOV-enabled NIC](https://github.com/k8snetworkplumbingwg/sriov-network-device-plugin#supported-sr-iov-nics)

* Check the NIC's bus-info:

Expand All @@ -30,7 +31,7 @@ Spiderpool provides a solution for assigning static IP addresses in underlay net
Capabilities: [180] Single Root I/O Virtualization (SR-IOV)
```

4. If your OS is such as Fedora and CentOS and uses NetworkManager to manage network configurations, you need to configure NetworkManager in the following scenarios:
5. If your OS is such as Fedora and CentOS and uses NetworkManager to manage network configurations, you need to configure NetworkManager in the following scenarios:

* If you are using Underlay mode, the `coordinator` will create veth interfaces on the host. To prevent interference from NetworkManager with the veth interface. It is strongly recommended that you configure NetworkManager.

Expand Down
1 change: 1 addition & 0 deletions docs/usage/install/underlay/get-started-weave-zh_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

## 先决条件

- [安装要求](./../system-requirements-zh_CN.md)
- 准备好一个 Kubernetes 集群, 没有安装任何的 CNI
- Helm、Kubectl、Jq(可选) 二进制工具

Expand Down
1 change: 1 addition & 0 deletions docs/usage/install/underlay/get-started-weave.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

## Prerequisites

- [System requirements](./../system-requirements.md)
- A ready Kubernetes cluster without any CNI installed
- Helm, Kubectl and Jq (optional)

Expand Down

0 comments on commit 05adad4

Please sign in to comment.