Skip to content

Commit

Permalink
Refine aliyun and aws cloud tidb configurations (#492)
Browse files Browse the repository at this point in the history
* Refine aliyun cloud tidb configurations

Signed-off-by: Aylei <[email protected]>

* Expose grafana anonymous user option in aws deployment

Signed-off-by: Aylei <[email protected]>

* Update manual for aliyun deployment

Signed-off-by: Aylei <[email protected]>
  • Loading branch information
aylei authored and tennix committed May 21, 2019
1 parent 588a37c commit 8df3140
Show file tree
Hide file tree
Showing 10 changed files with 31 additions and 9 deletions.
2 changes: 1 addition & 1 deletion deploy/aliyun/README-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
- 一个新的 VPC;
- 一台 ECS 实例作为堡垒机;
- 一个托管版 ACK(阿里云 Kubernetes)集群以及一系列 worker 节点:
- 属于一个伸缩组的 2 台 ECS 实例(1核1G), 托管版 Kubernetes 的默认伸缩组中必须至少有两台实例, 用于承载整个的系统服务, 比如 CoreDNS
- 属于一个伸缩组的 2 台 ECS 实例(2核2G), 托管版 Kubernetes 的默认伸缩组中必须至少有两台实例, 用于承载整个的系统服务, 比如 CoreDNS
- 属于一个伸缩组的 3 台 `ecs.i2.xlarge` 实例, 用于部署 PD
- 属于一个伸缩组的 3 台 `ecs.i2.2xlarge` 实例, 用于部署 TiKV
- 属于一个伸缩组的 2 台 ECS 实例(16核32G)用于部署 TiDB
Expand Down
2 changes: 1 addition & 1 deletion deploy/aliyun/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ The default setup will create:
- A new VPC
- An ECS instance as bastion machine
- A managed ACK(Alibaba Cloud Kubernetes) cluster with the following ECS instance worker nodes:
- An auto-scaling group of 2 * instances(1c1g) as ACK mandatory workers for system service like CoreDNS
- An auto-scaling group of 2 * instances(2c2g) as ACK mandatory workers for system service like CoreDNS
- An auto-scaling group of 3 * `ecs.i2.xlarge` instances for PD
- An auto-scaling group of 3 * `ecs.i2.2xlarge` instances for TiKV
- An auto-scaling group of 2 * instances(16c32g) for TiDB
Expand Down
1 change: 1 addition & 0 deletions deploy/aliyun/data.tf
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ data "template_file" "tidb-cluster-values" {
tikv_writecf_block_cache_size = "${var.tikv_memory_size * 0.2}GB"
monitor_reserve_days = "${var.monitor_reserve_days}"
monitor_slb_network_type = "${var.monitor_slb_network_type}"
monitor_enable_anonymous_user = "${var.monitor_enable_anonymous_user}"
}
}

Expand Down
2 changes: 2 additions & 0 deletions deploy/aliyun/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@ module "ack" {
vpc_id = "${var.vpc_id}"
group_id = "${var.group_id}"

default_worker_cpu_core_count = "${var.default_worker_core_count}"

worker_groups = [
{
name = "pd_worker_group"
Expand Down
4 changes: 4 additions & 0 deletions deploy/aliyun/outputs.tf
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ output "cluster_id" {
value = "${module.ack.cluster_id}"
}

output "cluster_name" {
value = "${var.cluster_name}"
}

output "kubeconfig_file" {
value = "${module.ack.kubeconfig_filename}"
}
Expand Down
2 changes: 1 addition & 1 deletion deploy/aliyun/templates/tidb-cluster-values.yaml.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,7 @@ monitor:
config:
# Configure Grafana using environment variables except GF_PATHS_DATA, GF_SECURITY_ADMIN_USER and GF_SECURITY_ADMIN_PASSWORD
# Ref https://grafana.com/docs/installation/configuration/#using-environment-variables
GF_AUTH_ANONYMOUS_ENABLED: "true"
GF_AUTH_ANONYMOUS_ENABLED: %{ if monitor_enable_anonymous_user }"true"%{ else }"false"%{ endif }
GF_AUTH_ANONYMOUS_ORG_NAME: "Main Org."
GF_AUTH_ANONYMOUS_ORG_ROLE: "Viewer"
# if grafana is running behind a reverse proxy with subpath http://foo.bar/grafana
Expand Down
20 changes: 15 additions & 5 deletions deploy/aliyun/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ variable "cluster_name" {

variable "tidb_version" {
description = "TiDB cluster version"
default = "v2.1.0"
default = "v2.1.8"
}

variable "pd_count" {
Expand All @@ -25,7 +25,7 @@ variable "pd_instance_memory_size" {

variable "tikv_count" {
description = "TiKV instance count, ranges: [3, 100]"
default = 4
default = 3
}

variable "tikv_instance_type_family" {
Expand All @@ -40,7 +40,7 @@ variable "tikv_memory_size" {

variable "tidb_count" {
description = "TiDB instance count, ranges: [1, 100]"
default = 3
default = 2
}

variable "tidb_instance_type" {
Expand Down Expand Up @@ -86,6 +86,11 @@ variable "monitor_reserve_days" {
default = 14
}

variable "default_worker_core_count" {
description = "CPU core count of default kubernetes workers"
default = 2
}

variable "create_bastion" {
description = "Whether create bastion server"
default = true
Expand Down Expand Up @@ -115,6 +120,11 @@ variable "monitor_slb_network_type" {
default = "internet"
}

variable "monitor_enable_anonymous_user" {
description = "Whether enabling anonymous user visiting for monitoring"
default = false
}

variable "vpc_id" {
description = "VPC id, specify this variable to use an exsiting VPC and the vswitches in the VPC. Note that when using existing vpc, it is recommended to use a existing security group too. Otherwise you have to set vpc_cidr according to the existing VPC settings to get correct in-cluster security rule."
default = ""
Expand Down Expand Up @@ -142,5 +152,5 @@ variable "k8s_service_cidr" {

variable "vpc_cidr" {
description = "VPC cidr_block, options: [192.168.0.0.0/16, 172.16.0.0/16, 10.0.0.0/8], cannot collidate with kubernetes service cidr and pod cidr. Cannot change once the vpc created."
default = "192.168.0.0/16"
}
default = "192.168.0.0/16"
}
1 change: 1 addition & 0 deletions deploy/aws/data.tf
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ data "template_file" "tidb_cluster_values" {
pd_replicas = "${var.pd_count}"
tikv_replicas = "${var.tikv_count}"
tidb_replicas = "${var.tidb_count}"
monitor_enable_anonymous_user = "${var.monitor_enable_anonymous_user}"
}
}

Expand Down
2 changes: 1 addition & 1 deletion deploy/aws/templates/tidb-cluster-values.yaml.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -258,7 +258,7 @@ monitor:
config:
# Configure Grafana using environment variables except GF_PATHS_DATA, GF_SECURITY_ADMIN_USER and GF_SECURITY_ADMIN_PASSWORD
# Ref https://grafana.com/docs/installation/configuration/#using-environment-variables
GF_AUTH_ANONYMOUS_ENABLED: "true"
GF_AUTH_ANONYMOUS_ENABLED: %{ if monitor_enable_anonymous_user }"true"%{ else }"false"%{ endif }
GF_AUTH_ANONYMOUS_ORG_NAME: "Main Org."
GF_AUTH_ANONYMOUS_ORG_ROLE: "Viewer"
# if grafana is running behind a reverse proxy with subpath http://foo.bar/grafana
Expand Down
4 changes: 4 additions & 0 deletions deploy/aws/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -105,3 +105,7 @@ variable "tikv_root_volume_size" {
default = "100"
}

variable "monitor_enable_anonymous_user" {
description = "Whether enabling anonymous user visiting for monitoring"
default = false
}

0 comments on commit 8df3140

Please sign in to comment.