快速开始:
本指南涵盖了
- 通过Kind创建三套集群,一套作为
host
集群,另外两套作为member
集群 - 在
host
集群中安装Kosmos控制面组件 - 在
host
集群中将member
集群进行纳管 - 基于搭建完成的Kosmos环境实现应用的跨集群部署
前提条件
通过脚本一键化部署和运行Kosmos(可选)
运行如下脚本:
git clone https://github.com/kosmos-io/kosmos.git && cd kosmos
hack/local-up-kosmos.sh
通过kosmosctl
部署和运行Kosmos(可选)
1. 通过Kind创建集群
- 可参考如下配置进行Kind集群创建,具体信息可按实际情况修改
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
networking:
# WARNING: It is _strongly_ recommended that you keep this the default
# (127.0.0.1) for security reasons. However it is possible to change this.
apiServerAddress: "192.168.200.112"
# By default the API server listens on a random open port.
# You may choose a specific port but probably don't need to in most cases.
# Using a random port makes it easier to spin up multiple clusters.
apiServerPort: 1443
nodes:
- role: control-plane
extraPortMappings:
- containerPort: "{{container_port}}"
hostPort: "{{host_port}}"
protocol: TCP
listenAddress: "{{host_ipaddress}}"
#- role: worker
#- role: worker
-
创建集群 Cluster1
kind create cluster -n kind-cluster1 --config /path/to/kind-config
-
创建集群 Cluster2
kind create cluster -n kind-cluster2 --config /path/to/kind-config
-
创建集群 Cluster3
kind create cluster -n kind-cluster3 --config /path/to/kind-config
2. 安装 kosmosctl
客户端
Kosmosctl 是 Kosmos 的一款工具,可快速部署 Kosmos 组件、添加集群以及测试网络连接。安装 kosmosctl
, 可通过 发布页面下载 或者从源代码进行构建。
2.1 方式一:下载二进制文件
- 通过 发布页面下载, 仅支持 macOS 系统和 linux系统
- 将
kosmosctl
客户端放置指定路径,通过配置可不通过绝对路径直接使用kosmosctl
客户端进行操作 - 建议在linux系统中使用
kosmosctl
客户端
wget -cO kosmosctl-linux-amd64 https://github.com/kosmos-io/kosmos/releases/download/v0.2.0-lts/kosmosctl-linux-amd64
chmod +x kosmosctl-linux-amd64 && sudo install -m 755 kosmosctl-linux-amd64 /usr/local/bin/kosmosctl
2.2 方式二:源码构建
- 下载Kosmos源代码
git clone https://github.com/kosmos-io/kosmos.git
- 构建代码, 输出内容在
<project_dir>/_output/bin/linux/amd64/kosmosctl
make kosmosctl VERSION=v0.1.9
] - 可通过链接查到可用版本及Tags