# 产品概览

注意: EMQX Operator 控制器需要 Kubernetes v1.20.0 或者以上。

# 部署Operator控制器

# 准备

我们使用 cert manager (opens new window)来给 webhook 服务提供证书。你可以通过 cert manager 文档 (opens new window)来安装。

# 安装

EMQX Operator 提供helm 以及 静态yaml安装,我们推荐使用 helm 来安装 EMQX Operator

# 通过 Helm 安装

helm repo add emqx https://repos.emqx.io/charts
helm repo update
helm install emqx-operator emqx/emqx-operator --set installCRDs=true --namespace emqx-operator-system --create-namespace
1
2
3

# 静态yaml安装

安装默认静态配置文件(如果已经通过helm安装,则跳过该步骤)

kubectl apply -f "https://github.com/emqx/emqx-operator/releases/download/1.2.7/emqx-operator-controller.yaml"
1

# 检查 EMQX Operator 控制器状态

$ kubectl get pods -l "control-plane=controller-manager" -n emqx-operator-system
NAME                                                READY   STATUS    RESTARTS   AGE
emqx-operator-controller-manager-68b866c8bf-kd4g6   1/1     Running   0          15s
1
2
3

# 部署 EMQX 4

  1. 部署 EMQX 自定义资源

    cat << "EOF" | kubectl apply -f -
    apiVersion: apps.emqx.io/v1beta3
    kind: EmqxBroker
    metadata:
      name: emqx
      labels:
        "foo": "bar"
    spec:
      emqxTemplate:
        image: emqx/emqx:4.4.8
    EOF
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11

    完整的例子请查看 emqxbroker-full.yaml. (opens new window)

  2. 检查 EMQX 自定义资源状态

     $ kubectl get pods
     $ kubectl get emqx emqx -o json | jq ".status.emqxNodes"
    
    1
    2

# 部署 EMQX Enterprise 4

  1. 部署 EMQX 自定义资源

    cat << "EOF" | kubectl apply -f -
    apiVersion: apps.emqx.io/v1beta3
    kind: EmqxEnterprise
    metadata:
      name: emqx-ee
      labels:
        "foo": "bar"
    spec:
      emqxTemplate:
        image: emqx/emqx-ee:4.4.8
    EOF
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11

    完整的例子请查看 emqxenterprise-full.yaml. (opens new window)

  2. 检查 EMQX 自定义资源状态

     $ kubectl get pods
     $ kubectl get emqx emqx -o json | jq ".status.emqxNodes"
    
    1
    2