用户工具

站点工具


02-工程实践:kubernetes:infrastructure:databases:kubedb_install

安装Kubedb

Helm

使用 helm v3 安装

snippet.bash
helm repo add appscode https://charts.appscode.com/stable/
helm show appscode/kubedb   #查看 kubedb 信息

安装 kubedb,设置 enableAnalytics=false 关闭信息采集

snippet.bash
helm install kubedb-operator appscode/kubedb --version v0.13.0-rc.0 --namespace kube-system --set enableAnalytics=false
helm install kubedb-catalog appscode/kubedb-catalog --version v0.13.0-rc.0 --namespace kube-system

安装 kubedb-catalog 之后, kubectl get mysqlversions 等命令才能正常运行

snippet.bash
# kubectl get mysqlversions.catalog.kubedb.com 
NAME     VERSION   DB_IMAGE              DEPRECATED   AGE
5        5         kubedb/mysql:5        true         13h
5-v1     5         kubedb/mysql:5-v1     true         13h
5.7      5.7       kubedb/mysql:5.7      true         13h
5.7-v1   5.7       kubedb/mysql:5.7-v1   true         13h
5.7-v2   5.7.25    kubedb/mysql:5.7-v2                13h
5.7.25   5.7.25    kubedb/mysql:5.7.25                13h
8        8         kubedb/mysql:8        true         13h
8-v1     8         kubedb/mysql:8-v1     true         13h
8.0      8.0       kubedb/mysql:8.0      true         13h
8.0-v1   8.0.3     kubedb/mysql:8.0-v1                13h
8.0-v2   8.0.14    kubedb/mysql:8.0-v2                13h
8.0.14   8.0.14    kubedb/mysql:8.0.14                13h
8.0.3    8.0.3     kubedb/mysql:8.0.3                 13h

RBAC

apiserver--proxy-client-cert-file=/etc/kubernetes/cert/proxy-client-cert.pem 参数指定的证书的 CN=aggregator,由于缺少 RBAC,创建 kubedb 对象时会报错无法操作 mutators.kubedb.comvalidators.kubedb.com API(User "aggregator" cannot list resource),需要添加RBAC。

snippet.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: kubedb:core:aggregator
rules:
- apiGroups:
  - mutators.kubedb.com
  - validators.kubedb.com
  resources:
  - '*'
  verbs:
  - '*'
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: kubedb-aggregator
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: kubedb:core:aggregator
subjects:
  - apiGroup: rbac.authorization.k8s.io
    kind: User
    name: aggregator

Redis

Postgres

pgAdmin4

  • pgAdmin4 镜像 dpage/pgadmin4:latest
  • 持久化: pv挂载到 /var/lib/pgadmin

可用以下配置项自定义部署

snippet.yaml
PGADMIN_DEFAULT_EMAIL: admin
PGADMIN_DEFAULT_PASSWORD: admin
PGADMIN_PORT: 80
02-工程实践/kubernetes/infrastructure/databases/kubedb_install.txt · 最后更改: 2020/04/07 06:34 由 annhe