文档目录

TiDB Operator 1.1 Beta.1 Release Notes

发布日期:2020 年 1 月 8 日

TiDB Operator 版本:1.1.0-beta.1

需要操作的变更

  • 所有 charts 支持配置 timezone (#1122, @weekface)

    对于 tidb-cluster chart, 之前已经有 timezone 配置项(默认值:UTC)。如果用户没有修改成不同值(如:Asia/Shangehai),所有 Pods 不会被重建。

    如果用户改成其它值(如:Asia/Shanghai),所有相关的 Pods(添加 TZ 环境变量)会被重建(滚动升级)。

    对于其它 charts,之前在对应的 values.yaml 里没有 timezone 配置项。这个 PR 添加了对 timezone 配置项的支持。不管用户使用旧的 values.yaml 还是新的 values.yaml,所有相关的 Pods(添加了 TZ 环境变量)都不会被重建(滚动升级)。

    相关的 Pods 有:pumpdrainerdiscoverymonitorscheduled backuptidb-initializertikv-importer

    TiDB Operator 维护的全部镜像的 timezone 都是 UTC。如果你使用自己的镜像,请确保你的镜像的 timezoneUTC

其他重要变更

  • 支持使用 Backup & Restore (BR) 备份到 S3 (#1280, @DanielZhangQD)
  • TidbCluster 添加基础默认设置及验证 (#1429, @aylei)
  • 支持使用增强型 StatefulSet 进行扩缩容 (#1361, @cofyc)
  • 支持使用 TidbInitializer 自定义资源初始化 TiDB 集群 (#1403, @DanielZhangQD)
  • 优化 PD、TiKV、TiDB 的配置结构 (#1411, @aylei)
  • 设置 tidbcluster 拥有的资源的实例 label 键的默认名称为集群名 (#1419, @aylei)
  • TidbCluster 自定义资源支持管理 Pump 集群 (#1269, @aylei)
  • 修复 tikv-importer 默认配置中的错误 (#1415, @aylei)
  • 支持在资源配置中配置临时存储 (#1398, @aylei)
  • 添加不使用 Helm 运维 TiDB 集群的 e2e 测试用例 (#1396, @aylei)
  • 发布 Terraform Aliyun ACK 版本,指定默认版本为 1.14.8-aliyun.1 (#1284, @shonge)
  • 优化 scheduler 的报错信息 (#1373, @weekface)
  • system:kube-scheduler 集群 role 绑定到 tidb-scheduler 服务账号 (#1355, @shonge)
  • 添加新的 TidbInitializer 自定义资源类型 (#1391, @aylei)
  • 升级默认备份镜像为 pingcap/tidb-cloud-backup:20191217,优化 -r 选项 (#1360, @aylei)
  • 修复最新 EKS AMI 的 Docker ulimit 配置的错误 (#1349, @aylei)
  • 支持同步 Pump 状态到 TiDB 集群 (#1292, @shonge)
  • tidb-controller-manager 支持自动创建并调和 tidb-discovery-service (#1322, @aylei)
  • 扩大备份恢复的适用范围,提升安全性 (#1276, @onlymellb)
  • TidbCluster 自定义资源中添加 PD 和 TiKV 配置 (#1330, @aylei)
  • TidbCluster 自定义资源中添加 TiDB 配置 (#1291, @aylei)
  • 添加 TiKV 配置 schema (#1306, @aylei)
  • TiDB host:port 开启后再初始化 TiDB 集群,加快初始化速度 (#1296, @cofyc)
  • 移除 DinD 相关脚本 (#1283, @shonge)
  • 支持从 AWS 和 GCP 的元数据获取验证证书 (#1248, @gregwebs)
  • 增加 tidb-controller-manager 的权限来操作 configmap (#1275, @aylei)
  • 通过 tidb-controller-manager 管理 TiDB 服务 (#1242, @aylei)
  • 支持为组件设置 cluster-level 配置 (#1193, @aylei)
  • 从当前时间来获取时间字符串,代替从 Pod Name 获取 (#1229, @weekface)
  • 升级 TiDB 时,TiDB Operator 将不再注销 ddl owner,因为 TiDB 将在关闭时自动转移 ddl owner (#1239, @aylei)
  • 修复 Google terraform 模块的 use_ip_aliases 错误 (#1206, @tennix)
  • 升级 TiDB 默认版本为 v3.0.5 (#1179, @shonge)
  • 升级 Docker image 的基本系统到最新稳定版 (#1178, @AstroProfundis)
  • tkctl get TiKV 支持为每个 TiKV Pod 显示储存状态 (#916, @Yisaer)
  • 添加一个选项实现跨命名空间的监控 (#907, @gregwebs)
  • tkctl get TiKV 中添加 STOREID 列,为每个 TiKV Pod 显示 store ID (#842, @Yisaer)
  • 用户可以在 chart 中通过 values.tidb.permitHost 指定被许可的主机 (#779, @shonge)
  • 为 kubelet 添加 zone 标签和资源预留配置 (#871, @aylei)
  • 修复了 apply 语法可能会导致 kubeconfig 被破坏的问题 (#861, @cofyc)
  • 支持 TiKV 组件的灰度发布 (#869, @onlymellb)
  • 最新的 chart 兼容旧的 controller manager (#856, @onlymellb)
  • 添加对 TiDB 集群中 TLS 加密连接的基础支持 (#750, @AstroProfundis)
  • 支持为 tidb-operator chart 配置 nodeSelector、亲和力和容忍度 (#855, @shonge)
  • 支持为 TiDB 集群的所有容器配置资源请求和限制 (#853, @aylei)
  • 支持使用 Kind (Kubernetes IN Docker) 建立测试环境 (#791, @xiaojingchen)
  • 支持使用 tidb-lightning chart 恢复特定的数据源 (#827, @tennix)
  • 添加 tikvGCLifeTime 选项 (#835, @weekface)
  • 更新默认的备份镜像到 pingcap/tidb-cloud-backup:20190828 (#846, @aylei)
  • 修复 Pump/Drainer 的数据目录避免潜在的数据丢失 (#826, @aylei)
  • 修复了 tkctl 使用 -oyaml-ojson 标志不输出任何内容的问题,支持查看特定 Pod 或 PV 的详细信息,改进 tkctl get 命令的输出 (#822, @onlymellb)
  • 为 mydumper 添加推荐选项:-t 16 -F 64 --skip-tz-utc (#828, @weekface)
  • deploy /gcp 中支持单可用区和多可用区集群 (#809, @cofyc)
  • 修复当默认备份名被使用时备份失败的问题 (#836, @DanielZhangQD)
  • 增加对 TiDB Lightning 的支持 (#817, @tennix)
  • 支持从指定的定时备份目录还原 TiDB 集群 (#804, @onlymellb)
  • 修复了一个 tkctl 日志中的异常 (#797, @onlymellb)
  • 在 PD/TiKV/TiDB 规范中添加 hostNetwork 字段,以便可以在主机网络中运行 TiDB 组件 (#774, @cofyc)
  • 当 mdadm 和 RAID 在 GKE 上可用时,使用 mdadm 和 RAID 而不是 LVM (#789, @gregwebs)
  • 支持通过增加 PVC 存储大小来动态扩展云存储 PV (#772, @tennix)
  • 支持为 PD/TiDB/TiKV 节点池配置节点镜像类型 (#776, @cofyc)
  • 添加脚本以删除 GKE 的未使用磁盘 (#771, @gregwebs)
  • 对 Pump 和 Drainer 增加 binlog.pump.config and binlog.drainer.config 配置项 (#693, @weekface)
  • 当 Pump 变为 “offline” 状态时,阻止 Pump 进程退出 (#769, @weekface)
  • 引入新的 tidb-drainer helm chart 以管理多个 Drainer (#744, @aylei)
  • 添加 backup-manager 工具以支持备份、还原和清除备份数据 (#694, @onlymellb)
  • 在 Pump/Drainer 的配置中添加 affinity 选项 (#741, @weekface)
  • 修复 TiKV failover 后某些情况下的 TiKV 缩容失败 (#726, @onlymellb)
  • 修复 UpdateService 的错误处理 (#718, @DanielZhangQD)
  • 将 e2e 运行时间从 60m 减少到 20m (#713, @weekface)
  • 添加 AdvancedStatefulset 功能以使用增强型 StatefulSet 代替 Kubernetes 内置的 StatefulSet (#1108, @cofyc)
  • 支持为 TiDB 集群自动生成证书 (#782, @AstroProfundis)
  • 支持备份到 GCS (#1127, @onlymellb)
  • 支持为 TiDB 配置 net.ipv4.tcp_keepalive_timenet.core.somaxconn,以及为 TiKV 配置 net.core.somaxconn (#1107, @DanielZhangQD)
  • 为聚合的 apiserver 添加基本的 e2e 测试 (#1109, @aylei)
  • 添加 enablePVReclaim 选项,在 tidb-operator 缩容 TiKV 或 PD 时回收 PV (#1037, @onlymellb)
  • 统一所有兼容 S3 的存储以支持备份和还原 (#1088, @onlymellb)
  • podSecuriyContext 的默认值设置为 nil (#1079, @aylei)
  • tidb-operator chart 中添加 tidb-apiserver (#1083, @aylei)
  • 添加新组件 TiDB aggregated apiserver (#1048, @aylei)
  • 修复了当发行版名称是 un-wantedtkctl version 不起作用的问题 (#1065, @aylei)
  • 支持暂停备份计划 (#1047, @onlymellb)
  • 修复了在 Terraform 输出中 TiDB Loadbalancer 为空的问题 (#1045, @DanielZhangQD)
  • 修复了 AWS terraform 脚本中 create_tidb_cluster_release 变量不起作用的问题 (#1062, @aylei)
  • 在稳定性测试中,默认情况下启用 ConfigMapRollout (#1036, @aylei)
  • 迁移到使用 app/v1 并且不再支持 1.9 版本之前的 Kubernetes (#1012, @Yisaer)
  • 暂停 AWS TiKV 自动缩放组的 ReplaceUnhealthy 流程 (#1014, @aylei)
  • tidb-monitor-reloader 镜像更改为 pingcap/tidb-monitor-reloader:v1.0.1 (#898, @qiffang)
  • 添加一些 sysctl 内核参数设置以进行调优 (#1016, @tennix)
  • 备份计划支持设置最长保留时间 (#979, @onlymellb)
  • 将默认的 TiDB 版本升级到 v3.0.4 (#837, @shonge)
  • 在阿里云上修复 TiDB Operator 的定制值文件 (#971, @DanielZhangQD)
  • 在 TiKV 中添加 maxFailoverCount 限制 (#965, @weekface)
  • 支持在 AWS Terraform 脚本中为 tidb-operator 设置自定义配置 (#946, @aylei)
  • 在 TiKV 容量不是 GiB 的倍数时,将其转换为 MiB (#942, @cofyc)
  • 修复 Drainer 的配置错误 (#939, @weekface)
  • 支持使用自定义的 values.yaml 部署 TiDB Operator 和 TiDB 集群 (#959, @DanielZhangQD)
  • 支持为 PD、TiKV 和 TiDB Pod 指定 SecurityContext,并为 AWS 启用 tcp keepalive (#915, @aylei)