Kubernetes 版 MySQL Operator 发行说明
MySQL Shell
MySQL Router
要使用 kubectl 创建 InnoDB 集群,首先创建一个包含新 MySQL root 用户凭据的密钥,在本例中,密钥名为“mypwds”
Press CTRL+C to copy$> kubectl create secret generic mypwds \ --from-literal=rootUser=root \ --from-literal=rootHost=% \ --from-literal=rootPassword="sakila"
使用新创建的用户配置新的 MySQL InnoDB 集群。此示例的 InnoDBCluster 定义创建了三个 MySQL 服务器实例和一个 MySQL Router 实例
Press CTRL+C to copyapiVersion: mysql.oracle.com/v2 kind: InnoDBCluster metadata: name: mycluster spec: secretName: mypwds tlsUseSelfSigned: true instances: 3 router: instances: 1
假设名为 mycluster.yaml
的文件包含此定义,请安装此简单集群
Press CTRL+C to copy$> kubectl apply -f mycluster.yaml
(可选)通过观察默认命名空间的 innodbcluster
类型来观察该过程
Press CTRL+C to copy$> kubectl get innodbcluster --watch
输出类似于以下内容
Press CTRL+C to copyNAME STATUS ONLINE INSTANCES ROUTERS AGE mycluster PENDING 0 3 1 10s
直到达到 ONLINE 状态
Press CTRL+C to copyNAME STATUS ONLINE INSTANCES ROUTERS AGE mycluster ONLINE 3 3 1 2m6s
为了演示,此示例使用 MySQL Shell 连接以显示主机名
Press CTRL+C to copy$> kubectl run --rm -it myshell --image=container-registry.oracle.com/mysql/community-operator -- mysqlsh root@mycluster --sql If you don't see a command prompt, try pressing enter. ****** MySQL mycluster SQL> SELECT @@hostname +-------------+ | @@hostname | +-------------+ | mycluster-0 | +-------------+
这显示了已路由到 MySQL InnoDB 集群中 mycluster-0 pod 的成功连接。有关连接的更多信息,请参阅第 5 章 连接到 MySQL InnoDB 集群。