kubeblocks
kubeblocks copied to clipboard
[BUG]mysql cluster is always updating after upgrade ack os version
➜ ~ kbcli version Kubernetes: v1.24.6-aliyun.1 KubeBlocks: 0.8.1 kbcli: 0.8.1
This happened after I upgraded ack os version from Alibaba Cloud Linux 2.1903 (20231008) to 3.2104 (20230727)
➜ ~ k describe node | grep Taints
Taints: kb-data=true:NoSchedule
Taints: kb-controller=true:NoSchedule
Taints: kb-data=true:NoSchedule
kbcli cluster create mysqltest --cluster-definition=mysql --cluster-version=mysql-5.7.42 --set cpu=2,memory=4Gi --termination-policy=WipeOut
The upgrade task finished with EvictPodError for the 2 mysql pods, but kb node has been upgraded
➜ ~ k get pdb
NAME MIN AVAILABLE MAX UNAVAILABLE ALLOWED DISRUPTIONS AGE
mysqltest-mysql N/A N/A 0 170m
But after the upgrade, mysql cluster is always updating for one pod is always ContainerCreating
➜ ~ kbcli cluster describe mysqltest
Name: mysqltest Created Time: Feb 05,2024 17:27 UTC+0800
NAMESPACE CLUSTER-DEFINITION VERSION STATUS TERMINATION-POLICY
default mysql mysql-5.7.42 Updating WipeOut
Endpoints:
COMPONENT MODE INTERNAL EXTERNAL
mysql ReadWrite mysqltest-mysql.default.svc.cluster.local:3306 <none>
Topology:
COMPONENT INSTANCE ROLE STATUS AZ NODE CREATED-TIME
mysql mysqltest-mysql-0 primary Running cn-zhangjiakou-c cn-zhangjiakou.192.168.36.149/192.168.36.149 Feb 05,2024 18:03 UTC+0800
mysql mysqltest-mysql-1 <none> Pending cn-zhangjiakou-c cn-zhangjiakou.192.168.36.151/192.168.36.151 Feb 05,2024 18:39 UTC+0800
Resources Allocation:
COMPONENT DEDICATED CPU(REQUEST/LIMIT) MEMORY(REQUEST/LIMIT) STORAGE-SIZE STORAGE-CLASS
mysql false 2 / 2 4Gi / 4Gi data:20Gi kb-default-sc
Images:
COMPONENT TYPE IMAGE
mysql mysql docker.io/mysql:5.7.42
Data Protection:
BACKUP-REPO AUTO-BACKUP BACKUP-SCHEDULE BACKUP-METHOD BACKUP-RETENTION
Show cluster events: kbcli cluster list-events -n default mysqltest
➜ ~ k describe pod mysqltest-mysql-1
Name: mysqltest-mysql-1
Namespace: default
Priority: 0
Node: cn-zhangjiakou.192.168.36.151/192.168.36.151
Start Time: Mon, 05 Feb 2024 18:41:43 +0800
Labels: app.kubernetes.io/component=mysql
app.kubernetes.io/instance=mysqltest
app.kubernetes.io/managed-by=kubeblocks
app.kubernetes.io/name=mysql
app.kubernetes.io/version=
apps.kubeblocks.io/component-name=mysql
controller-revision-hash=mysqltest-mysql-579698b5b8
statefulset.kubernetes.io/pod-name=mysqltest-mysql-1
Annotations: apps.kubeblocks.io/component-replicas: 2
Status: Pending
IP:
IPs: <none>
Controlled By: StatefulSet/mysqltest-mysql
Containers:
mysql:
Container ID:
Image: docker.io/mysql:5.7.42
Image ID:
Port: 3306/TCP
Host Port: 0/TCP
Command:
bash
-c
mkdir -p /var/lib/mysql/{log,binlog};chown -R mysql:root /var/lib/mysql; /scripts/docker-entrypoint.sh mysqld --server-id $(( ${KB_POD_NAME##*-} + 1)) --ignore-db-dir=lost+found --plugin-load-add=rpl_semi_sync_master=semisync_master.so --plugin-load-add=rpl_semi_sync_slave=semisync_slave.so
State: Waiting
Reason: ContainerCreating
Ready: False
Restart Count: 0
Limits:
cpu: 2
memory: 4Gi
Requests:
cpu: 2
memory: 4Gi
Environment Variables from:
mysqltest-mysql-env ConfigMap Optional: false
mysqltest-mysql-rsm-env ConfigMap Optional: false
Environment:
KB_POD_NAME: mysqltest-mysql-1 (v1:metadata.name)
KB_POD_UID: (v1:metadata.uid)
KB_NAMESPACE: default (v1:metadata.namespace)
KB_SA_NAME: (v1:spec.serviceAccountName)
KB_NODENAME: (v1:spec.nodeName)
KB_HOST_IP: (v1:status.hostIP)
KB_POD_IP: (v1:status.podIP)
KB_POD_IPS: (v1:status.podIPs)
KB_HOSTIP: (v1:status.hostIP)
KB_PODIP: (v1:status.podIP)
KB_PODIPS: (v1:status.podIPs)
KB_POD_FQDN: $(KB_POD_NAME).mysqltest-mysql-headless.$(KB_NAMESPACE).svc
MYSQL_ROOT_HOST: %
MYSQL_ROOT_USER: <set to the key 'username' in secret 'mysqltest-conn-credential'> Optional: false
MYSQL_ROOT_PASSWORD: <set to the key 'password' in secret 'mysqltest-conn-credential'> Optional: false
Mounts:
/etc/mysql/conf.d from mysql-config (rw)
/scripts from scripts (rw)
/var/lib/mysql from data (rw)
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-lfbcs (ro)
metrics:
Container ID:
Image: infracreate-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/agamotto:0.1.2-beta.1
Image ID:
Port: 9104/TCP
Host Port: 0/TCP
Command:
/scripts/agamotto.sh
State: Waiting
Reason: ContainerCreating
Ready: False
Restart Count: 0
Limits:
cpu: 0
memory: 0
Requests:
cpu: 0
memory: 0
Environment Variables from:
mysqltest-mysql-env ConfigMap Optional: false
mysqltest-mysql-rsm-env ConfigMap Optional: false
Environment:
KB_POD_NAME: mysqltest-mysql-1 (v1:metadata.name)
KB_POD_UID: (v1:metadata.uid)
KB_NAMESPACE: default (v1:metadata.namespace)
KB_SA_NAME: (v1:spec.serviceAccountName)
KB_NODENAME: (v1:spec.nodeName)
KB_HOST_IP: (v1:status.hostIP)
KB_POD_IP: (v1:status.podIP)
KB_POD_IPS: (v1:status.podIPs)
KB_HOSTIP: (v1:status.hostIP)
KB_PODIP: (v1:status.podIP)
KB_PODIPS: (v1:status.podIPs)
KB_POD_FQDN: $(KB_POD_NAME).mysqltest-mysql-headless.$(KB_NAMESPACE).svc
DB_TYPE: MySQL
ENDPOINT: localhost:3306
MYSQL_USER: <set to the key 'username' in secret 'mysqltest-conn-credential'> Optional: false
MYSQL_PASSWORD: <set to the key 'password' in secret 'mysqltest-conn-credential'> Optional: false
Mounts:
/data/mysql from data (rw)
/opt/agamotto from agamotto-configuration (rw)
/scripts from scripts (rw)
/var/log/kubeblocks from log-data (rw)
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-lfbcs (ro)
kb-checkrole:
Container ID:
Image: infracreate-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/kubeblocks-tools:0.8.1
Image ID:
Ports: 3501/TCP, 50001/TCP
Host Ports: 0/TCP, 0/TCP
Command:
lorry
--port
3501
--grpcport
50001
State: Waiting
Reason: ContainerCreating
Ready: False
Restart Count: 0
Limits:
cpu: 0
memory: 0
Requests:
cpu: 0
memory: 0
Readiness: http-get http://:3501/v1.0/checkrole delay=0s timeout=1s period=1s #success=1 #failure=2
Startup: tcp-socket :3501 delay=0s timeout=1s period=10s #success=1 #failure=3
Environment Variables from:
mysqltest-mysql-env ConfigMap Optional: false
mysqltest-mysql-rsm-env ConfigMap Optional: false
Environment:
KB_POD_NAME: mysqltest-mysql-1 (v1:metadata.name)
KB_POD_UID: (v1:metadata.uid)
KB_NAMESPACE: default (v1:metadata.namespace)
KB_SA_NAME: (v1:spec.serviceAccountName)
KB_NODENAME: (v1:spec.nodeName)
KB_HOST_IP: (v1:status.hostIP)
KB_POD_IP: (v1:status.podIP)
KB_POD_IPS: (v1:status.podIPs)
KB_HOSTIP: (v1:status.hostIP)
KB_PODIP: (v1:status.podIP)
KB_PODIPS: (v1:status.podIPs)
KB_POD_FQDN: $(KB_POD_NAME).mysqltest-mysql-headless.$(KB_NAMESPACE).svc
KB_SERVICE_PORT: 3306
KB_DATA_PATH: /var/lib/mysql
KB_BUILTIN_HANDLER: mysql
KB_SERVICE_USER: <set to the key 'username' in secret 'mysqltest-conn-credential'> Optional: false
KB_SERVICE_PASSWORD: <set to the key 'password' in secret 'mysqltest-conn-credential'> Optional: false
KB_RSM_ACTION_SVC_LIST: null
KB_RSM_ROLE_UPDATE_MECHANISM: DirectAPIServerEventUpdate
KB_RSM_ROLE_PROBE_TIMEOUT: 1
KB_CLUSTER_NAME: (v1:metadata.labels['app.kubernetes.io/instance'])
KB_COMP_NAME: (v1:metadata.labels['apps.kubeblocks.io/component-name'])
KB_SERVICE_CHARACTER_TYPE: mysql
Mounts:
/var/lib/mysql from data (rw)
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-lfbcs (ro)
config-manager:
Container ID:
Image: infracreate-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/kubeblocks-tools:0.8.1
Image ID:
Port: <none>
Host Port: <none>
Command:
env
Args:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$(TOOLS_PATH)
/bin/reloader
--log-level
info
--operator-update-enable
--tcp
9901
--config
/opt/config-manager/config-manager.yaml
State: Waiting
Reason: ContainerCreating
Ready: False
Restart Count: 0
Limits:
cpu: 0
memory: 0
Requests:
cpu: 0
memory: 0
Environment Variables from:
mysqltest-mysql-env ConfigMap Optional: false
mysqltest-mysql-rsm-env ConfigMap Optional: false
Environment:
KB_POD_NAME: mysqltest-mysql-1 (v1:metadata.name)
KB_POD_UID: (v1:metadata.uid)
KB_NAMESPACE: default (v1:metadata.namespace)
KB_SA_NAME: (v1:spec.serviceAccountName)
KB_NODENAME: (v1:spec.nodeName)
KB_HOST_IP: (v1:status.hostIP)
KB_POD_IP: (v1:status.podIP)
KB_POD_IPS: (v1:status.podIPs)
KB_HOSTIP: (v1:status.hostIP)
KB_PODIP: (v1:status.podIP)
KB_PODIPS: (v1:status.podIPs)
KB_POD_FQDN: $(KB_POD_NAME).mysqltest-mysql-headless.$(KB_NAMESPACE).svc
CONFIG_MANAGER_POD_IP: (v1:status.podIP)
DB_TYPE: mysql
MYSQL_USER: <set to the key 'username' in secret 'mysqltest-conn-credential'> Optional: false
MYSQL_PASSWORD: <set to the key 'password' in secret 'mysqltest-conn-credential'> Optional: false
DATA_SOURCE_NAME: $(MYSQL_USER):$(MYSQL_PASSWORD)@(localhost:3306)/
TOOLS_PATH: /opt/kb-tools/reload/mysql-replication-config:/opt/config-manager
Mounts:
/etc/mysql/conf.d from mysql-config (rw)
/opt/config-manager from config-manager-config (rw)
/opt/kb-tools/reload/mysql-replication-config from cm-script-mysql-replication-config (rw)
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-lfbcs (ro)
Conditions:
Type Status
Initialized True
Ready False
ContainersReady False
PodScheduled True
Volumes:
data:
Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
ClaimName: data-mysqltest-mysql-1
ReadOnly: false
agamotto-configuration:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: mysqltest-mysql-agamotto-configuration
Optional: false
mysql-config:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: mysqltest-mysql-mysql-replication-config
Optional: false
scripts:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: mysqltest-mysql-mysql-scripts
Optional: false
cm-script-mysql-replication-config:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: sidecar-oracle-mysql8.0-reload-script-mysqltest
Optional: false
config-manager-config:
Type: ConfigMap (a volume populated by a ConfigMap)
Name: sidecar-mysqltest-mysql-config-manager-config
Optional: false
log-data:
Type: EmptyDir (a temporary directory that shares a pod's lifetime)
Medium:
SizeLimit: <unset>
kube-api-access-lfbcs:
Type: Projected (a volume that contains injected data from multiple sources)
TokenExpirationSeconds: 3607
ConfigMapName: kube-root-ca.crt
ConfigMapOptional: <nil>
DownwardAPI: true
QoS Class: Burstable
Node-Selectors: <none>
Tolerations: kb-data=true:NoSchedule
node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedMount 53m (x6 over 84m) kubelet Unable to attach or mount volumes: unmounted volumes=[data], unattached volumes=[mysql-config scripts kube-api-access-lfbcs agamotto-configuration log-data cm-script-mysql-replication-config config-manager-config data]: timed out waiting for the condition
Warning FailedMount 32m (x5 over 89m) kubelet Unable to attach or mount volumes: unmounted volumes=[data], unattached volumes=[data mysql-config scripts kube-api-access-lfbcs agamotto-configuration log-data cm-script-mysql-replication-config config-manager-config]: timed out waiting for the condition
Warning FailedMount 12m (x5 over 66m) kubelet Unable to attach or mount volumes: unmounted volumes=[data], unattached volumes=[agamotto-configuration log-data cm-script-mysql-replication-config config-manager-config data mysql-config scripts kube-api-access-lfbcs]: timed out waiting for the condition
Warning FailedMount 8m (x50 over 93m) kubelet MountVolume.WaitForAttach failed for volume "d-8vbjbt4dcatjw0ip37g5" : volume attachment is being deleted
Warning FailedMount 3m9s (x5 over 75m) kubelet Unable to attach or mount volumes: unmounted volumes=[data], unattached volumes=[scripts kube-api-access-lfbcs agamotto-configuration log-data cm-script-mysql-replication-config config-manager-config data mysql-config]: timed out waiting for the condition
➜ ~ k describe rsm mysqltest-mysql
Name: mysqltest-mysql
Namespace: default
Labels: app.kubernetes.io/component=mysql
app.kubernetes.io/instance=mysqltest
app.kubernetes.io/managed-by=kubeblocks
app.kubernetes.io/name=mysql
apps.kubeblocks.io/component-name=mysql
Annotations: config.kubeblocks.io/tpl-agamotto-configuration: mysqltest-mysql-agamotto-configuration
config.kubeblocks.io/tpl-mysql-replication-config: mysqltest-mysql-mysql-replication-config
config.kubeblocks.io/tpl-mysql-scripts: mysqltest-mysql-mysql-scripts
kubeblocks.io/generation: 1
monitor.kubeblocks.io/agamotto.headless.rsm: false
monitor.kubeblocks.io/scrape.headless.rsm: false
API Version: workloads.kubeblocks.io/v1alpha1
Kind: ReplicatedStateMachine
Metadata:
Creation Timestamp: 2024-02-05T09:27:28Z
Finalizers:
cluster.kubeblocks.io/finalizer
rsm.workloads.kubeblocks.io/finalizer
Generation: 1
Managed Fields:
API Version: workloads.kubeblocks.io/v1alpha1
Fields Type: FieldsV1
fieldsV1:
f:metadata:
f:annotations:
.:
f:config.kubeblocks.io/tpl-agamotto-configuration:
f:config.kubeblocks.io/tpl-mysql-replication-config:
f:config.kubeblocks.io/tpl-mysql-scripts:
f:kubeblocks.io/generation:
f:monitor.kubeblocks.io/agamotto.headless.rsm:
f:monitor.kubeblocks.io/scrape.headless.rsm:
f:finalizers:
.:
v:"cluster.kubeblocks.io/finalizer":
v:"rsm.workloads.kubeblocks.io/finalizer":
f:labels:
.:
f:app.kubernetes.io/component:
f:app.kubernetes.io/instance:
f:app.kubernetes.io/managed-by:
f:app.kubernetes.io/name:
f:apps.kubeblocks.io/component-name:
f:ownerReferences:
.:
k:{"uid":"bf21d25d-5124-480e-a347-3ba224cac44d"}:
f:spec:
.:
f:credential:
.:
f:password:
.:
f:valueFrom:
.:
f:secretKeyRef:
f:username:
.:
f:valueFrom:
.:
f:secretKeyRef:
f:memberUpdateStrategy:
f:podManagementPolicy:
f:replicas:
f:roleProbe:
.:
f:builtinHandlerName:
f:failureThreshold:
f:initialDelaySeconds:
f:periodSeconds:
f:roleUpdateMechanism:
f:successThreshold:
f:timeoutSeconds:
f:roles:
f:rsmTransformPolicy:
f:selector:
f:serviceName:
f:template:
.:
f:metadata:
.:
f:labels:
.:
f:app.kubernetes.io/component:
f:app.kubernetes.io/instance:
f:app.kubernetes.io/managed-by:
f:app.kubernetes.io/name:
f:app.kubernetes.io/version:
f:apps.kubeblocks.io/component-name:
f:spec:
.:
f:affinity:
.:
f:nodeAffinity:
.:
f:preferredDuringSchedulingIgnoredDuringExecution:
f:podAntiAffinity:
f:containers:
f:serviceAccountName:
f:tolerations:
f:volumes:
f:updateStrategy:
.:
f:type:
f:volumeClaimTemplates:
Manager: manager
Operation: Update
Time: 2024-02-05T09:27:28Z
API Version: workloads.kubeblocks.io/v1alpha1
Fields Type: FieldsV1
fieldsV1:
f:status:
.:
f:availableReplicas:
f:collisionCount:
f:currentGeneration:
f:currentReplicas:
f:currentRevision:
f:initReplicas:
f:membersStatus:
f:observedGeneration:
f:readyInitReplicas:
f:readyReplicas:
f:replicas:
f:updateRevision:
f:updatedReplicas:
Manager: manager
Operation: Update
Subresource: status
Time: 2024-02-05T09:28:08Z
Owner References:
API Version: apps.kubeblocks.io/v1alpha1
Block Owner Deletion: true
Controller: true
Kind: Component
Name: mysqltest-mysql
UID: bf21d25d-5124-480e-a347-3ba224cac44d
Resource Version: 34390
UID: 3880e115-7dfd-400f-b50f-d78a41eb91fc
Spec:
Credential:
Password:
Value From:
Secret Key Ref:
Key: password
Name: mysqltest-conn-credential
Username:
Value From:
Secret Key Ref:
Key: username
Name: mysqltest-conn-credential
Member Update Strategy: Serial
Pod Management Policy: Parallel
Replicas: 2
Role Probe:
Builtin Handler Name: mysql
Failure Threshold: 2
Initial Delay Seconds: 0
Period Seconds: 1
Role Update Mechanism: DirectAPIServerEventUpdate
Success Threshold: 1
Timeout Seconds: 1
Roles:
Access Mode: ReadWrite
Can Vote: true
Is Leader: true
Name: primary
Access Mode: Readonly
Can Vote: true
Is Leader: false
Name: secondary
Rsm Transform Policy: ToSts
Selector:
Match Labels:
app.kubernetes.io/instance: mysqltest
app.kubernetes.io/managed-by: kubeblocks
app.kubernetes.io/name: mysql
apps.kubeblocks.io/component-name: mysql
Service Name: mysqltest-mysql-headless
Template:
Metadata:
Labels:
app.kubernetes.io/component: mysql
app.kubernetes.io/instance: mysqltest
app.kubernetes.io/managed-by: kubeblocks
app.kubernetes.io/name: mysql
app.kubernetes.io/version:
apps.kubeblocks.io/component-name: mysql
Spec:
Affinity:
Node Affinity:
Preferred During Scheduling Ignored During Execution:
Preference:
Match Expressions:
Key: kb-data
Operator: In
Values:
true
Weight: 100
Pod Anti Affinity:
Containers:
Command:
bash
-c
mkdir -p /var/lib/mysql/{log,binlog};chown -R mysql:root /var/lib/mysql; /scripts/docker-entrypoint.sh mysqld --server-id $(( ${KB_POD_NAME##*-} + 1)) --ignore-db-dir=lost+found --plugin-load-add=rpl_semi_sync_master=semisync_master.so --plugin-load-add=rpl_semi_sync_slave=semisync_slave.so
Env:
Name: KB_POD_NAME
Value From:
Field Ref:
API Version: v1
Field Path: metadata.name
Name: KB_POD_UID
Value From:
Field Ref:
API Version: v1
Field Path: metadata.uid
Name: KB_NAMESPACE
Value From:
Field Ref:
API Version: v1
Field Path: metadata.namespace
Name: KB_SA_NAME
Value From:
Field Ref:
API Version: v1
Field Path: spec.serviceAccountName
Name: KB_NODENAME
Value From:
Field Ref:
API Version: v1
Field Path: spec.nodeName
Name: KB_HOST_IP
Value From:
Field Ref:
API Version: v1
Field Path: status.hostIP
Name: KB_POD_IP
Value From:
Field Ref:
API Version: v1
Field Path: status.podIP
Name: KB_POD_IPS
Value From:
Field Ref:
API Version: v1
Field Path: status.podIPs
Name: KB_HOSTIP
Value From:
Field Ref:
API Version: v1
Field Path: status.hostIP
Name: KB_PODIP
Value From:
Field Ref:
API Version: v1
Field Path: status.podIP
Name: KB_PODIPS
Value From:
Field Ref:
API Version: v1
Field Path: status.podIPs
Name: KB_POD_FQDN
Value: $(KB_POD_NAME).mysqltest-mysql-headless.$(KB_NAMESPACE).svc
Name: MYSQL_ROOT_HOST
Value: %
Name: MYSQL_ROOT_USER
Value From:
Secret Key Ref:
Key: username
Name: mysqltest-conn-credential
Optional: false
Name: MYSQL_ROOT_PASSWORD
Value From:
Secret Key Ref:
Key: password
Name: mysqltest-conn-credential
Optional: false
Env From:
Config Map Ref:
Name: mysqltest-mysql-env
Optional: false
Image: docker.io/mysql:5.7.42
Image Pull Policy: IfNotPresent
Name: mysql
Ports:
Container Port: 3306
Name: mysql
Protocol: TCP
Resources:
Limits:
Cpu: 2
Memory: 4Gi
Requests:
Cpu: 2
Memory: 4Gi
Volume Mounts:
Mount Path: /var/lib/mysql
Name: data
Mount Path: /etc/mysql/conf.d
Name: mysql-config
Mount Path: /scripts
Name: scripts
Command:
/scripts/agamotto.sh
Env:
Name: KB_POD_NAME
Value From:
Field Ref:
API Version: v1
Field Path: metadata.name
Name: KB_POD_UID
Value From:
Field Ref:
API Version: v1
Field Path: metadata.uid
Name: KB_NAMESPACE
Value From:
Field Ref:
API Version: v1
Field Path: metadata.namespace
Name: KB_SA_NAME
Value From:
Field Ref:
API Version: v1
Field Path: spec.serviceAccountName
Name: KB_NODENAME
Value From:
Field Ref:
API Version: v1
Field Path: spec.nodeName
Name: KB_HOST_IP
Value From:
Field Ref:
API Version: v1
Field Path: status.hostIP
Name: KB_POD_IP
Value From:
Field Ref:
API Version: v1
Field Path: status.podIP
Name: KB_POD_IPS
Value From:
Field Ref:
API Version: v1
Field Path: status.podIPs
Name: KB_HOSTIP
Value From:
Field Ref:
API Version: v1
Field Path: status.hostIP
Name: KB_PODIP
Value From:
Field Ref:
API Version: v1
Field Path: status.podIP
Name: KB_PODIPS
Value From:
Field Ref:
API Version: v1
Field Path: status.podIPs
Name: KB_POD_FQDN
Value: $(KB_POD_NAME).mysqltest-mysql-headless.$(KB_NAMESPACE).svc
Name: DB_TYPE
Value: MySQL
Name: ENDPOINT
Value: localhost:3306
Name: MYSQL_USER
Value From:
Secret Key Ref:
Key: username
Name: mysqltest-conn-credential
Optional: false
Name: MYSQL_PASSWORD
Value From:
Secret Key Ref:
Key: password
Name: mysqltest-conn-credential
Optional: false
Env From:
Config Map Ref:
Name: mysqltest-mysql-env
Optional: false
Image: infracreate-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/agamotto:0.1.2-beta.1
Image Pull Policy: IfNotPresent
Name: metrics
Ports:
Container Port: 9104
Name: http-metrics
Protocol: TCP
Resources:
Limits:
Cpu: 0
Memory: 0
Security Context:
Run As Non Root: false
Run As User: 0
Volume Mounts:
Mount Path: /opt/agamotto
Name: agamotto-configuration
Mount Path: /data/mysql
Name: data
Mount Path: /var/log/kubeblocks
Name: log-data
Mount Path: /scripts
Name: scripts
Command:
lorry
--port
3501
--grpcport
50001
Env:
Name: KB_POD_NAME
Value From:
Field Ref:
API Version: v1
Field Path: metadata.name
Name: KB_POD_UID
Value From:
Field Ref:
API Version: v1
Field Path: metadata.uid
Name: KB_NAMESPACE
Value From:
Field Ref:
API Version: v1
Field Path: metadata.namespace
Name: KB_SA_NAME
Value From:
Field Ref:
API Version: v1
Field Path: spec.serviceAccountName
Name: KB_NODENAME
Value From:
Field Ref:
API Version: v1
Field Path: spec.nodeName
Name: KB_HOST_IP
Value From:
Field Ref:
API Version: v1
Field Path: status.hostIP
Name: KB_POD_IP
Value From:
Field Ref:
API Version: v1
Field Path: status.podIP
Name: KB_POD_IPS
Value From:
Field Ref:
API Version: v1
Field Path: status.podIPs
Name: KB_HOSTIP
Value From:
Field Ref:
API Version: v1
Field Path: status.hostIP
Name: KB_PODIP
Value From:
Field Ref:
API Version: v1
Field Path: status.podIP
Name: KB_PODIPS
Value From:
Field Ref:
API Version: v1
Field Path: status.podIPs
Name: KB_POD_FQDN
Value: $(KB_POD_NAME).mysqltest-mysql-headless.$(KB_NAMESPACE).svc
Name: KB_SERVICE_PORT
Value: 3306
Name: KB_DATA_PATH
Value: /var/lib/mysql
Name: KB_BUILTIN_HANDLER
Value: mysql
Name: KB_SERVICE_USER
Value From:
Secret Key Ref:
Key: username
Name: mysqltest-conn-credential
Name: KB_SERVICE_PASSWORD
Value From:
Secret Key Ref:
Key: password
Name: mysqltest-conn-credential
Env From:
Config Map Ref:
Name: mysqltest-mysql-env
Optional: false
Image: infracreate-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/kubeblocks-tools:0.8.1
Image Pull Policy: IfNotPresent
Name: kb-checkrole
Ports:
Container Port: 3501
Name: lorry-http-port
Protocol: TCP
Container Port: 50001
Name: lorry-grpc-port
Protocol: TCP
Readiness Probe:
Failure Threshold: 2
Http Get:
Path: /v1.0/checkrole
Port: 3501
Period Seconds: 1
Timeout Seconds: 1
Resources:
Limits:
Cpu: 0
Memory: 0
Startup Probe:
Tcp Socket:
Port: 3501
Volume Mounts:
Mount Path: /var/lib/mysql
Name: data
Args:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$(TOOLS_PATH)
/bin/reloader
--log-level
info
--operator-update-enable
--tcp
9901
--config
/opt/config-manager/config-manager.yaml
Command:
env
Env:
Name: KB_POD_NAME
Value From:
Field Ref:
API Version: v1
Field Path: metadata.name
Name: KB_POD_UID
Value From:
Field Ref:
API Version: v1
Field Path: metadata.uid
Name: KB_NAMESPACE
Value From:
Field Ref:
API Version: v1
Field Path: metadata.namespace
Name: KB_SA_NAME
Value From:
Field Ref:
API Version: v1
Field Path: spec.serviceAccountName
Name: KB_NODENAME
Value From:
Field Ref:
API Version: v1
Field Path: spec.nodeName
Name: KB_HOST_IP
Value From:
Field Ref:
API Version: v1
Field Path: status.hostIP
Name: KB_POD_IP
Value From:
Field Ref:
API Version: v1
Field Path: status.podIP
Name: KB_POD_IPS
Value From:
Field Ref:
API Version: v1
Field Path: status.podIPs
Name: KB_HOSTIP
Value From:
Field Ref:
API Version: v1
Field Path: status.hostIP
Name: KB_PODIP
Value From:
Field Ref:
API Version: v1
Field Path: status.podIP
Name: KB_PODIPS
Value From:
Field Ref:
API Version: v1
Field Path: status.podIPs
Name: KB_POD_FQDN
Value: $(KB_POD_NAME).mysqltest-mysql-headless.$(KB_NAMESPACE).svc
Name: CONFIG_MANAGER_POD_IP
Value From:
Field Ref:
API Version: v1
Field Path: status.podIP
Name: DB_TYPE
Value: mysql
Name: MYSQL_USER
Value From:
Secret Key Ref:
Key: username
Name: mysqltest-conn-credential
Name: MYSQL_PASSWORD
Value From:
Secret Key Ref:
Key: password
Name: mysqltest-conn-credential
Name: DATA_SOURCE_NAME
Value: $(MYSQL_USER):$(MYSQL_PASSWORD)@(localhost:3306)/
Name: TOOLS_PATH
Value: /opt/kb-tools/reload/mysql-replication-config:/opt/config-manager
Env From:
Config Map Ref:
Name: mysqltest-mysql-env
Optional: false
Image: infracreate-registry.cn-zhangjiakou.cr.aliyuncs.com/apecloud/kubeblocks-tools:0.8.1
Image Pull Policy: IfNotPresent
Name: config-manager
Resources:
Limits:
Cpu: 0
Memory: 0
Volume Mounts:
Mount Path: /etc/mysql/conf.d
Name: mysql-config
Mount Path: /opt/kb-tools/reload/mysql-replication-config
Name: cm-script-mysql-replication-config
Mount Path: /opt/config-manager
Name: config-manager-config
Service Account Name: kb-mysqltest
Tolerations:
Effect: NoSchedule
Key: kb-data
Operator: Equal
Value: true
Volumes:
Config Map:
Default Mode: 292
Name: mysqltest-mysql-agamotto-configuration
Name: agamotto-configuration
Config Map:
Name: mysqltest-mysql-mysql-replication-config
Name: mysql-config
Config Map:
Default Mode: 365
Name: mysqltest-mysql-mysql-scripts
Name: scripts
Config Map:
Default Mode: 493
Name: sidecar-oracle-mysql8.0-reload-script-mysqltest
Name: cm-script-mysql-replication-config
Config Map:
Default Mode: 493
Name: sidecar-mysqltest-mysql-config-manager-config
Name: config-manager-config
Empty Dir:
Name: data
Empty Dir:
Name: log-data
Update Strategy:
Type: OnDelete
Volume Claim Templates:
Metadata:
Labels:
apps.kubeblocks.io/vct-name: data
kubeblocks.io/volume-type: data
Name: data
Spec:
Access Modes:
ReadWriteOnce
Resources:
Requests:
Storage: 20Gi
Storage Class Name: kb-default-sc
Status:
Status:
Available Replicas: 1
Collision Count: 0
Current Generation: 1
Current Replicas: 2
Current Revision: mysqltest-mysql-579698b5b8
Init Replicas: 2
Members Status:
Pod Name: mysqltest-mysql-0
Ready Without Primary: false
Role:
Access Mode: ReadWrite
Can Vote: true
Is Leader: true
Name: primary
Observed Generation: 1
Ready Init Replicas: 2
Ready Replicas: 1
Replicas: 2
Update Revision: mysqltest-mysql-579698b5b8
Updated Replicas: 2
Events: <none>
➜ ~
➜ ~ kbcli report cluster mysqltest --with-logs --all-containers reporting cluster information to report-cluster-mysqltest-2024-02-05-20-16-42.zip processing manifests OK processing events OK process pod logs OK ➜ ~ kbcli report kubeblocks --with-logs --all-containers --output yaml reporting KubeBlocks information to report-kubeblocks-2024-02-05-20-16-53.zip processing manifests OK processing events OK process pod logs OK report-kubeblocks-2024-02-05-20-16-53.zip report-cluster-mysqltest-2024-02-05-20-16-42.zip
This issue has been marked as stale because it has been open for 30 days with no activity