FluxCD 搭建测试
· 阅读需 3 分钟
安装 FluxCD
# 集群内安装 FluxCD
kubectl apply -f https://ghproxy.com/https://raw.githubusercontent.com/lyzhang1999/resource/main/fluxcd/fluxcd.yaml
# 安装 FluxCD 的工作负载比较多,你也使用 kubectl wait 来等待安装完成
kubectl wait --for=condition=available --timeout=300s --all deployments -n flux-systemdeployment.apps/helm-controller condition metdeployment.apps/image-automation-controller condition metdeployment.apps/image-reflector-controller condition metdeployment.apps/kustomize-controller condition metdeployment.apps/notification-controller condition metdeployment.apps/source-controller condition met
# 本地创建 fluxcd-demo 目录
mkdir fluxcd-demo && cd fluxcd-demo
在 fluxcd-demo 目录下创建 deployment.yaml 文件,并将下面的内容保存到这个文件里
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: hello-world-flask
name: hello-world-flask
spec:
replicas: 2
selector:
matchLabels:
app: hello-world-flask
template:
metadata:
labels:
app: hello-world-flask
spec:
containers:
- image: lyzhang1999/hello-world-flask:latest
name: hello-world-flask
将此 yaml 推入 github/gitlab 仓库中
配置FluxCD与仓库连接信息
编辑 fluxcd-repo.yaml ,此内容为创建仓库连接信息
apiVersion: source.toolkit.fluxcd.io/v1beta2
kind: GitRepository
metadata:
name: hello-world-flask
spec:
interval: 5s
ref:
branch: main
url: https://github.com/lyzhang1999/fluxcd-demo
使用 kubectl apply 将其 GitRepository 对象部署到集群内
kubectl apply -f fluxcd-repo.yaml
gitrepository.source.toolkit.fluxcd.io/hello-world-flask created
# 验证
kubectl get gitrepository