0

我正在努力在裸机上通过 LoadBalancer 服务连接的单独 k8s 集群中建立 3 个 yugabyte 主服务器和 tserver 实例。但是,在所有三个主实例上,引导过程似乎都失败了:

I0531 19:50:28.081645     1 master_main.cc:94] NumCPUs determined to be: 2
I0531 19:50:28.082594     1 server_base_options.cc:124] Updating master addrs to {yb-master-black.example.com:7100},{yb-master-blue.example.com:7100},{yb-master-white.example.com:7100},{:7100}
I0531 19:50:28.082682     1 server_base_options.cc:124] Updating master addrs to {yb-master-black.example.com:7100},{yb-master-blue.example.com:7100},{yb-master-white.example.com:7100},{:7100}
I0531 19:50:28.082937     1 mem_tracker.cc:249] MemTracker: hard memory limit is 1.699219 GB
I0531 19:50:28.082963     1 mem_tracker.cc:251] MemTracker: soft memory limit is 1.444336 GB
I0531 19:50:28.083189     1 server_base_options.cc:124] Updating master addrs to {yb-master-black.example.com:7100},{yb-master-blue.example.com:7100},{yb-master-white.example.com:7100},{:7100}
I0531 19:50:28.090148     1 server_base_options.cc:124] Updating master addrs to {yb-master-black.example.com:7100},{yb-master-blue.example.com:7100},{yb-master-white.example.com:7100},{:7100}
I0531 19:50:28.090863     1 rpc_server.cc:86] yb::server::RpcServer created at 0x1a7e210
I0531 19:50:28.090924     1 master.cc:146] yb::master::Master created at 0x7ffe2d4bd140
I0531 19:50:28.090958     1 master.cc:147] yb::master::TSManager created at 0x1a90850
I0531 19:50:28.090975     1 master.cc:148] yb::master::CatalogManager created at 0x1dea000
I0531 19:50:28.091152     1 master_main.cc:115] Initializing master server...
I0531 19:50:28.093097     1 server_base.cc:462] Could not load existing FS layout: Not found (yb/util/env_posix.cc:1482): /mnt/disk0/yb-data/master/instance: No such file or directory (system error 2)
I0531 19:50:28.093150     1 server_base.cc:463] Creating new FS layout
I0531 19:50:28.193439     1 fs_manager.cc:463] Generated new instance metadata in path /mnt/disk0/yb-data/master/instance:
uuid: "5f2f6ad78d27450b8cde9c8bcf40fefa"
format_stamp: "Formatted at 2020-05-31 19:50:28 on yb-master-0"
I0531 19:50:28.238484     1 fs_manager.cc:463] Generated new instance metadata in path /mnt/disk1/yb-data/master/instance:
uuid: "5f2f6ad78d27450b8cde9c8bcf40fefa"
format_stamp: "Formatted at 2020-05-31 19:50:28 on yb-master-0"
I0531 19:50:28.377483     1 fs_manager.cc:251] Opened local filesystem: /mnt/disk0,/mnt/disk1
uuid: "5f2f6ad78d27450b8cde9c8bcf40fefa"
format_stamp: "Formatted at 2020-05-31 19:50:28 on yb-master-0"
I0531 19:50:28.378015     1 server_base.cc:245] Auto setting FLAGS_num_reactor_threads to 2
I0531 19:50:28.380707     1 thread_pool.cc:166] Starting thread pool { name: Master queue_limit: 10000 max_workers: 1024 }
I0531 19:50:28.382266     1 master_main.cc:118] Starting Master server...
I0531 19:50:28.382313    24 async_initializer.cc:74] Starting to init ybclient
I0531 19:50:28.382365     1 master_main.cc:119] ulimit cur(max)...
ulimit: core file size unlimited(unlimited) blks
ulimit: data seg size unlimited(unlimited) kb
ulimit: open files 1048576(1048576)
ulimit: file size unlimited(unlimited) blks
ulimit: pending signals 22470(22470)
ulimit: file locks unlimited(unlimited)
ulimit: max locked memory 64(64) kb
ulimit: max memory size unlimited(unlimited) kb
ulimit: stack size 8192(unlimited) kb
ulimit: cpu time unlimited(unlimited) secs
ulimit: max user processes unlimited(unlimited)
W0531 19:50:28.383322    24 master.cc:186] Failed to get current config: Illegal state (yb/master/catalog_manager.cc:6854): Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
I0531 19:50:28.383525    24 client-internal.cc:1847] New master addresses: [yb-master-black.example.com:7100,yb-master-blue.example.com:7100,yb-master-white.example.com:7100,:7100]
I0531 19:50:28.383685     1 service_pool.cc:148] yb.master.MasterBackupService: yb::rpc::ServicePoolImpl created at 0x1a82b40
I0531 19:50:28.384888     1 service_pool.cc:148] yb.master.MasterService: yb::rpc::ServicePoolImpl created at 0x1a83680
I0531 19:50:28.385342     1 service_pool.cc:148] yb.tserver.TabletServerService: yb::rpc::ServicePoolImpl created at 0x1a838c0
I0531 19:50:28.388526     1 thread_pool.cc:166] Starting thread pool { name: Master-high-pri queue_limit: 10000 max_workers: 1024 }
I0531 19:50:28.388588     1 service_pool.cc:148] yb.consensus.ConsensusService: yb::rpc::ServicePoolImpl created at 0x201eb40
I0531 19:50:28.393231     1 service_pool.cc:148] yb.tserver.RemoteBootstrapService: yb::rpc::ServicePoolImpl created at 0x201ed80
I0531 19:50:28.393501     1 webserver.cc:148] Starting webserver on 0.0.0.0:7000
I0531 19:50:28.393544     1 webserver.cc:153] Document root: /home/yugabyte/www
I0531 19:50:28.394471     1 webserver.cc:240] Webserver started. Bound to: http://0.0.0.0:7000/
I0531 19:50:28.394668     1 service_pool.cc:148] yb.server.GenericService: yb::rpc::ServicePoolImpl created at 0x201efc0
I0531 19:50:28.395015     1 rpc_server.cc:169] RPC server started. Bound to: 0.0.0.0:7100
I0531 19:50:28.420223    23 tcp_stream.cc:308] { local: 10.233.80.35:55710 remote: 172.16.0.34:7100 }:  Recv failed: Network error (yb/util/net/socket.cc:537): recvmsg error: Connection refused (system error 111)
E0531 19:51:28.523921    24 async_initializer.cc:84] Failed to initialize client: Timed out (yb/rpc/rpc.cc:213): Could not locate the leader master: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 293) passed its deadline 2074493.105s (passed: 60.140s): Not found (yb/master/master_rpc.cc:284): no leader found: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 1)
W0531 19:51:29.524827    24 master.cc:186] Failed to get current config: Illegal state (yb/master/catalog_manager.cc:6854): Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
I0531 19:51:29.524914    24 client-internal.cc:1847] New master addresses: [yb-master-black.example.com:7100,yb-master-blue.example.com:7100,yb-master-white.example.com:7100,:7100]
E0531 19:52:29.524785    24 async_initializer.cc:84] Failed to initialize client: Timed out (yb/rpc/outbound_call.cc:512): Could not locate the leader master: GetMasterRegistration RPC (request call id 2359) to 172.29.1.1:7100 timed out after 0.033s
W0531 19:52:30.525079    24 master.cc:186] Failed to get current config: Illegal state (yb/master/catalog_manager.cc:6854): Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
I0531 19:52:30.525205    24 client-internal.cc:1847] New master addresses: [yb-master-black.example.com:7100,yb-master-blue.example.com:7100,yb-master-white.example.com:7100,:7100]
W0531 19:53:28.114395    36 master-path-handlers.cc:150] Illegal state (yb/master/catalog_manager.cc:6854): Unable to list Masters: Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
W0531 19:53:29.133951    36 master-path-handlers.cc:1002] Illegal state (yb/master/catalog_manager.cc:6854): Unable to list Masters: Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
E0531 19:53:30.625366    24 async_initializer.cc:84] Failed to initialize client: Timed out (yb/rpc/rpc.cc:213): Could not locate the leader master: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 299) passed its deadline 2074615.247s (passed: 60.099s): Not found (yb/master/master_rpc.cc:284): no leader found: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 1)
W0531 19:53:31.625660    24 master.cc:186] Failed to get current config: Illegal state (yb/master/catalog_manager.cc:6854): Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
I0531 19:53:31.625742    24 client-internal.cc:1847] New master addresses: [yb-master-black.example.com:7100,yb-master-blue.example.com:7100,yb-master-white.example.com:7100,:7100]
W0531 19:53:34.024369    37 master-path-handlers.cc:150] Illegal state (yb/master/catalog_manager.cc:6854): Unable to list Masters: Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
E0531 19:54:31.870801    24 async_initializer.cc:84] Failed to initialize client: Timed out (yb/rpc/rpc.cc:213): Could not locate the leader master: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 300) passed its deadline 2074676.348s (passed: 60.244s): Not found (yb/master/master_rpc.cc:284): no leader found: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 1)
W0531 19:54:32.871065    24 master.cc:186] Failed to get current config: Illegal state (yb/master/catalog_manager.cc:6854): Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
I0531 19:54:32.871222    24 client-internal.cc:1847] New master addresses: [yb-master-black.example.com:7100,yb-master-blue.example.com:7100,yb-master-white.example.com:7100,:7100]
W0531 19:55:28.190217    41 master-path-handlers.cc:1002] Illegal state (yb/master/catalog_manager.cc:6854): Unable to list Masters: Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
W0531 19:55:31.745038    42 master-path-handlers.cc:1002] Illegal state (yb/master/catalog_manager.cc:6854): Unable to list Masters: Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
E0531 19:55:33.164300    24 async_initializer.cc:84] Failed to initialize client: Timed out (yb/rpc/rpc.cc:213): Could not locate the leader master: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 299) passed its deadline 2074737.593s (passed: 60.292s): Not found (yb/master/master_rpc.cc:284): no leader found: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 1)
W0531 19:55:34.164574    24 master.cc:186] Failed to get current config: Illegal state (yb/master/catalog_manager.cc:6854): Node 5f2f6ad78d27450b8cde9c8bcf40fefa peer not initialized.
I0531 19:55:34.164667    24 client-internal.cc:1847] New master addresses: [yb-master-black.example.com:7100,yb-master-blue.example.com:7100,yb-master-white.example.com:7100,:7100]
E0531 19:56:34.315380    24 async_initializer.cc:84] Failed to initialize client: Timed out (yb/rpc/rpc.cc:213): Could not locate the leader master: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 299) passed its deadline 2074798.886s (passed: 60.150s): Not found (yb/master/master_rpc.cc:284): no leader found: GetLeaderMasterRpc(addrs: [yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, :7100], num_attempts: 1)

就连接而言,我能够通过在 UI 端口上卷曲相同的服务端点来验证 LoadBalancer 端点是否在不同的网络边界上响应:

[root@yb-master-0 yugabyte]# curl -I http://yb-master-blue.example.com:7000
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 1975
Access-Control-Allow-Origin: *

[root@yb-master-0 yugabyte]# curl -I http://yb-master-white.example.com:7000
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 1975
Access-Control-Allow-Origin: *

[root@yb-master-0 yugabyte]# curl -I http://yb-master-black.example.com:7000
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 1975
Access-Control-Allow-Origin: *

有哪些策略可以调试引导过程?

编辑:这是主人的启动标志:

/home/yugabyte/bin/yb-master --fs_data_dirs=/mnt/disk0,/mnt/disk1 --server_broadcast_addresses=yb-master-white.example.com:7100 --master_addresses=yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, --replication_factor=3 --enable_ysql=true --rpc_bind_addresses=0.0.0.0:7100 --metric_node_name=yb-master-0 --memory_limit_hard_bytes=1824522240 --stderrthreshold=0 --num_cpus=2 --undefok=num_cpus,enable_ysql --default_memory_limit_to_ram_ratio=0.85 --leader_failure_max_missed_heartbeat_periods=10 --placement_cloud=AAAA --placement_region=XXXX --placement_zone=XXXX

/home/yugabyte/bin/yb-master --fs_data_dirs=/mnt/disk0,/mnt/disk1 --server_broadcast_addresses=yb-master-blue.example.com:7100 --master_addresses=yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, --replication_factor=3 --enable_ysql=true --rpc_bind_addresses=0.0.0.0:7100 --metric_node_name=yb-master-0 --memory_limit_hard_bytes=1824522240 --stderrthreshold=0 --num_cpus=2 --undefok=num_cpus,enable_ysql --default_memory_limit_to_ram_ratio=0.85 --leader_failure_max_missed_heartbeat_periods=10 --placement_cloud=AAAA --placement_region=YYYY --placement_zone=YYYY

/home/yugabyte/bin/yb-master --fs_data_dirs=/mnt/disk0,/mnt/disk1 --server_broadcast_addresses=yb-master-black.example.com:7100 --master_addresses=yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100,  --replication_factor=3 --enable_ysql=true --rpc_bind_addresses=0.0.0.0:7100 --metric_node_name=yb-master-0 --memory_limit_hard_bytes=1824522240 --stderrthreshold=0 --num_cpus=2 --undefok=num_cpus,enable_ysql --default_memory_limit_to_ram_ratio=0.85 --leader_failure_max_missed_heartbeat_periods=10 --placement_cloud=AAAA --placement_region=ZZZZ --placement_zone=ZZZZ

为了完整起见,这里是我从 helm 示例之一修改的 k8s manifest 之一。它被修改为将 LoadBalancer 用于主服务:

---
# Source: yugabyte/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
  name: "yb-masters"
  labels:
    app: "yb-master"
    heritage: "Helm"
    release: "blue"
    chart: "yugabyte"
    component: "yugabytedb"
spec:
  type: LoadBalancer
  loadBalancerIP: 172.16.0.34
  ports:
    - name: "rpc-port"
      port: 7100
    - name: "ui"
      port: 7000
  selector:
    app: "yb-master"
---
# Source: yugabyte/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
  name: "yb-tservers"
  labels:
    app: "yb-tserver"
    heritage: "Helm"
    release: "blue"
    chart: "yugabyte"
    component: "yugabytedb"
spec:
  clusterIP: None
  ports:
    - name: "rpc-port"
      port: 7100
    - name: "ui"
      port: 9000
    - name: "yedis-port"
      port: 6379
    - name: "yql-port"
      port: 9042
    - name: "ysql-port"
      port: 5433
  selector:
    app: "yb-tserver"
---
# Source: yugabyte/templates/service.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: "yb-master"
  namespace: "yugabytedb"
  labels:
    app: "yb-master"
    heritage: "Helm"
    release: "blue"
    chart: "yugabyte"
    component: "yugabytedb"
spec:
  serviceName: "yb-masters"
  podManagementPolicy: Parallel

  replicas: 1

  volumeClaimTemplates:
    - metadata:
        name: datadir0
        annotations:
          volume.beta.kubernetes.io/storage-class: rook-ceph-block
        labels:
          heritage: "Helm"
          release: "blue"
          chart: "yugabyte"
          component: "yugabytedb"
      spec:
        accessModes:
          - "ReadWriteOnce"
        storageClassName: rook-ceph-block
        resources:
          requests:
            storage: 10Gi
    - metadata:
        name: datadir1
        annotations:
          volume.beta.kubernetes.io/storage-class: rook-ceph-block
        labels:
          heritage: "Helm"
          release: "blue"
          chart: "yugabyte"
          component: "yugabytedb"
      spec:
        accessModes:
          - "ReadWriteOnce"
        storageClassName: rook-ceph-block
        resources:
          requests:
            storage: 10Gi
  updateStrategy:
    type: RollingUpdate
    rollingUpdate:

      partition: 0

  selector:
    matchLabels:
      app: "yb-master"
  template:
    metadata:

      labels:
        app: "yb-master"
        heritage: "Helm"
        release: "blue"
        chart: "yugabyte"
        component: "yugabytedb"
    spec:
      affinity:
        # Set the anti-affinity selector scope to YB masters.

        podAntiAffinity:
          preferredDuringSchedulingIgnoredDuringExecution:
          - weight: 100
            podAffinityTerm:
              labelSelector:
                matchExpressions:
                - key: app
                  operator: In
                  values:
                  - "yb-master"
              topologyKey: kubernetes.io/hostname
      containers:
      - name: "yb-master"
        image: "yugabytedb/yugabyte:2.1.6.0-b17"
        imagePullPolicy: IfNotPresent
        lifecycle:
          postStart:
            exec:
              command:
                - "sh"
                - "-c"
                - >
                  mkdir -p /mnt/disk0/cores;
                  mkdir -p /mnt/disk0/yb-data/scripts;
                  if [ ! -f /mnt/disk0/yb-data/scripts/log_cleanup.sh ]; then
                    if [ -f /home/yugabyte/bin/log_cleanup.sh ]; then
                      cp /home/yugabyte/bin/log_cleanup.sh /mnt/disk0/yb-data/scripts;
                    fi;
                  fi
        env:
        - name: POD_IP
          valueFrom:
            fieldRef:
              fieldPath: status.podIP
        - name: HOSTNAME
          valueFrom:
            fieldRef:
              fieldPath: metadata.name
        - name: NAMESPACE
          valueFrom:
            fieldRef:
              fieldPath: metadata.namespace
        resources:

          limits:
            cpu: 2
            memory: 2Gi
          requests:
            cpu: 500m
            memory: 1Gi

        command:

          - "/home/yugabyte/bin/yb-master"

          - "--fs_data_dirs=/mnt/disk0,/mnt/disk1"

          - "--server_broadcast_addresses=yb-master-blue.example.com:7100"

          - "--master_addresses=yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, "
          - "--replication_factor=3"


          - "--enable_ysql=true"
          - "--rpc_bind_addresses=0.0.0.0:7100"
          - "--metric_node_name=$(HOSTNAME)"
          - "--memory_limit_hard_bytes=1824522240"
          - "--stderrthreshold=0"
          - "--num_cpus=2"
          - "--undefok=num_cpus,enable_ysql"
          - "--default_memory_limit_to_ram_ratio=0.85"
          - "--leader_failure_max_missed_heartbeat_periods=10"
          - "--placement_cloud=AAAA"
          - "--placement_region=YYYY"
          - "--placement_zone=YYYY"

        ports:
          - containerPort: 7100
            name: "rpc-port"
          - containerPort: 7000
            name: "ui"
        volumeMounts:

          - name: datadir0
            mountPath: /mnt/disk0
          - name: datadir1
            mountPath: /mnt/disk1

      - name: yb-cleanup
        image: busybox:1.31
        env:
        - name: USER
          value: "yugabyte"
        command:
          - "/bin/sh"
          - "-c"
          - >
            mkdir /var/spool/cron;
            mkdir /var/spool/cron/crontabs;
            echo "0 * * * * /home/yugabyte/scripts/log_cleanup.sh" | tee -a /var/spool/cron/crontabs/root;
            crond;
            while true; do
              sleep 86400;
            done
        volumeMounts:
          - name: datadir0
            mountPath: /home/yugabyte/
            subPath: yb-data

      volumes:

        - name: datadir0
          hostPath:
            path: /mnt/disks/ssd0
        - name: datadir1
          hostPath:
            path: /mnt/disks/ssd1
---
# Source: yugabyte/templates/service.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: "yb-tserver"
  namespace: "yugabytedb"
  labels:
    app: "yb-tserver"
    heritage: "Helm"
    release: "blue"
    chart: "yugabyte"
    component: "yugabytedb"
spec:
  serviceName: "yb-tservers"
  podManagementPolicy: Parallel

  replicas: 1

  volumeClaimTemplates:
    - metadata:
        name: datadir0
        annotations:
          volume.beta.kubernetes.io/storage-class: rook-ceph-block
        labels:
          heritage: "Helm"
          release: "blue"
          chart: "yugabyte"
          component: "yugabytedb"
      spec:
        accessModes:
          - "ReadWriteOnce"
        storageClassName: rook-ceph-block
        resources:
          requests:
            storage: 10Gi
    - metadata:
        name: datadir1
        annotations:
          volume.beta.kubernetes.io/storage-class: rook-ceph-block
        labels:
          heritage: "Helm"
          release: "blue"
          chart: "yugabyte"
          component: "yugabytedb"
      spec:
        accessModes:
          - "ReadWriteOnce"
        storageClassName: rook-ceph-block
        resources:
          requests:
            storage: 10Gi
  updateStrategy:
    type: RollingUpdate
    rollingUpdate:

      partition: 0

  selector:
    matchLabels:
      app: "yb-tserver"
  template:
    metadata:

      labels:
        app: "yb-tserver"
        heritage: "Helm"
        release: "blue"
        chart: "yugabyte"
        component: "yugabytedb"
    spec:
      affinity:
        # Set the anti-affinity selector scope to YB masters.

        podAntiAffinity:
          preferredDuringSchedulingIgnoredDuringExecution:
          - weight: 100
            podAffinityTerm:
              labelSelector:
                matchExpressions:
                - key: app
                  operator: In
                  values:
                  - "yb-tserver"
              topologyKey: kubernetes.io/hostname
      containers:
      - name: "yb-tserver"
        image: "yugabytedb/yugabyte:2.1.6.0-b17"
        imagePullPolicy: IfNotPresent
        lifecycle:
          postStart:
            exec:
              command:
                - "sh"
                - "-c"
                - >
                  mkdir -p /mnt/disk0/cores;
                  mkdir -p /mnt/disk0/yb-data/scripts;
                  if [ ! -f /mnt/disk0/yb-data/scripts/log_cleanup.sh ]; then
                    if [ -f /home/yugabyte/bin/log_cleanup.sh ]; then
                      cp /home/yugabyte/bin/log_cleanup.sh /mnt/disk0/yb-data/scripts;
                    fi;
                  fi
        env:
        - name: POD_IP
          valueFrom:
            fieldRef:
              fieldPath: status.podIP
        - name: HOSTNAME
          valueFrom:
            fieldRef:
              fieldPath: metadata.name
        - name: NAMESPACE
          valueFrom:
            fieldRef:
              fieldPath: metadata.namespace
        resources:

          limits:
            cpu: 2
            memory: 4Gi
          requests:
            cpu: 500m
            memory: 2Gi

        command:

          - "/home/yugabyte/bin/yb-tserver"
          - "--fs_data_dirs=/mnt/disk0,/mnt/disk1"
          - "--server_broadcast_addresses=$(HOSTNAME).yb-tservers.$(NAMESPACE).svc.cluster.local:9100"
          - "--rpc_bind_addresses=$(HOSTNAME).yb-tservers.$(NAMESPACE).svc.cluster.local"
          - "--cql_proxy_bind_address=$(HOSTNAME).yb-tservers.$(NAMESPACE).svc.cluster.local"

          - "--enable_ysql=true"
          - "--pgsql_proxy_bind_address=$(POD_IP):5433"


          - "--tserver_master_addrs=yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100, "

          - "--metric_node_name=$(HOSTNAME)"
          - "--memory_limit_hard_bytes=3649044480"
          - "--stderrthreshold=0"
          - "--num_cpus=2"
          - "--undefok=num_cpus,enable_ysql"
          - "--leader_failure_max_missed_heartbeat_periods=10"
          - "--placement_cloud=AAAA"
          - "--placement_region=YYYY"
          - "--placement_zone=YYYY"
          - "--use_cassandra_authentication=false"

        ports:
          - containerPort: 7100
            name: "rpc-port"
          - containerPort: 9000
            name: "ui"
          - containerPort: 6379
            name: "yedis-port"
          - containerPort: 9042
            name: "yql-port"
          - containerPort: 5433
            name: "ysql-port"
        volumeMounts:

          - name: datadir0
            mountPath: /mnt/disk0
          - name: datadir1
            mountPath: /mnt/disk1


      - name: yb-cleanup
        image: busybox:1.31
        env:
        - name: USER
          value: "yugabyte"
        command:
          - "/bin/sh"
          - "-c"
          - >
            mkdir /var/spool/cron;
            mkdir /var/spool/cron/crontabs;
            echo "0 * * * * /home/yugabyte/scripts/log_cleanup.sh" | tee -a /var/spool/cron/crontabs/root;
            crond;
            while true; do
              sleep 86400;
            done
        volumeMounts:
          - name: datadir0
            mountPath: /home/yugabyte/
            subPath: yb-data

      volumes:

        - name: datadir0
          hostPath:
            path: /mnt/disks/ssd0
        - name: datadir1
          hostPath:
            path: /mnt/disks/ssd1
4

1 回答 1

2

通过在主地址列表中删除无关的逗号,这主要解决了(看起来我现在遇到了一个不相关的问题):

--master_addresses=yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100,

对比

--master_addresses=yb-master-black.example.com:7100, yb-master-blue.example.com:7100, yb-master-white.example.com:7100
于 2020-06-01T17:01:25.660 回答