当前位置:   article > 正文

MySQL InnoDB集群部署及管理全教程(四)_createcluster(membersslmode:'required'))

createcluster(membersslmode:'required'))

MySQL InnoDB集群部署及管理全教程(一)_Doker 多克的博客-CSDN博客MySQL InnoDB集群部署及管理全教程(二)_Doker 多克的博客-CSDN博客

MySQL InnoDB集群部署及管理全教程(三)_Doker 多克的博客-CSDN博客

六、 保护 InnoDB 集群

可以将服务器实例配置为使用安全连接。有关在MySQL中使用安全连接的一般信息,请参阅使用加密连接。本节介绍如何将群集配置为使用加密连接。另一种安全可能性是配置哪些服务器可以访问集群,请参阅创建服务器的允许列表。

如果使用的是通信堆栈,则在将群集配置为使用加密连接后,必须将服务器添加到。例如,当使用商业版本的MySQL时,默认情况下会启用SSL,您需要为所有实例配置该选项。请参阅创建服务器的允许列表。XCOM许可列表许可列表

使用设置集群时,如果服务器实例提供加密,则会在种子实例上自动启用加密。将该选项传递给方法以指定不同的SSL模式。集群的SSL模式只能在创建时设置。该选项是一个字符串,用于配置要使用的SSL模式,默认为。支持以下模式:dba.createCluster()memberSslModedba.createCluster()member SslModeAUTO

  • DISABLED:确保已禁用群集中种子实例的SSL加密。
  • AUTO:如果服务器实例支持SSL加密,则自动启用SSL加密;如果服务器不支持,则禁用加密。
  • REQUIRED:为群集中的种子实例启用SSL加密。如果无法启用,则会引发错误。
  • VERIFY_CA:类似,但还要根据配置的CA证书验证服务器证书颁发机构(CA)证书。如果找不到有效的匹配CA证书,则连接尝试失败。必需的
  • VERIFY_IDENTITY:类似,但还可以通过检查客户端用于连接到服务器的主机名与服务器发送给客户端的证书中的标识来执行主机名身份验证。验证_CA

例如,要设置要使用的集群,请发出:REQUIRED 

mysql-js> var myCluster = dba.createCluster({memberSslMode: 'REQUIRED'})

      如果选择使用VERIFY_CA或VERIFY_IDENTITY模式,则必须在每个群集实例上使用ssl_CA和/或ssl_capath选项手动提供CA证书。有关这些模式的更多信息,请参阅--ssl mode=mode。
      当使用Cluster.addInstance()和Cluster.requestInstance()操作时,会根据用于群集的设置启用或禁用实例上的SSL加密。将memberSslMode选项与这些操作一起使用,可以将实例设置为使用不同的加密模式。
   当使用dba.createCluster()和approveFromGR选项采用现有的组复制组时,所采用的集群上的SSL设置不会更改:

  • memberSslMode不能与approveFromGR一起使用。
  • 如果采用的集群的SSL设置与MySQL Shell支持的SSL设置不同,即用于组复制恢复和组通信的SSL,则这两种设置都不会修改。这意味着您无法向集群添加新实例,除非您手动更改所采用集群的设置。 

MySQL Shell始终为群集启用或禁用SSL以进行组复制恢复和组通信,请参阅使用安全套接字层(SSL)保护组通信连接。在向集群添加新实例时,如果种子实例的这些设置不同(例如,由于dba.createCluster()使用approveFromGR),则会执行验证并发出错误。必须为群集中的所有实例启用或禁用SSL加密。执行验证以确保在向集群添加新实例时保持此不变量。
dba.deploySandboxInstance()命令尝试部署默认支持SSL加密的沙箱实例。如果不可能,则在没有SSL支持的情况下部署服务器实例。

  MySQL Shell始终为群集启用或禁用SSL以进行组复制恢复和组通信,请参阅使用安全套接字层(SSL)保护组通信连接。在向集群添加新实例时,如果种子实例的这些设置不同(例如,由于dba.createCluster()使用approveFromGR),则会执行验证并发出错误。必须为群集中的所有实例启用或禁用SSL加密。执行验证以确保在向集群添加新实例时保持此不变量。
dba.deploySandboxInstance()命令尝试部署默认支持SSL加密的沙箱实例。如果不可能,则在没有SSL支持的情况下部署服务器实例。

保护集群成员之间的通信

从MySQL Shell 8.0.33开始,可以将集群和副本集群配置为使用SSL加密复制通道,并允许副本验证主机身份和使用SSL证书进行身份验证。
使用dba.createCluster()创建集群时,可以使用memberAuthType选项定义用于内部复制帐户的身份验证类型。此选项采用以下值之一:

  • PASSWORD:帐户仅使用密码进行身份验证。
  • CERT_ISSUER:帐户使用客户端证书进行身份验证,该证书必须与预期的颁发者匹配。该值相当于VERIFY_CA。
  • CERT_SUBJECT:帐户使用客户端证书进行身份验证,该证书必须与预期的颁发者和使用者相匹配。该值相当于VERIFY_IDENTITY。
  • CERT_ISSUER_PASSWORD:帐户使用PASSWORD和CERT_ISSUE值的组合进行身份验证。
  • CERT_SUBJECT_PASSWORD:帐户使用PASSWORD和CERT_SUBJECT值的组合进行身份验证。

重要的
ClusterSets继承在主群集上定义的memberAuthType。ClusterSet中的所有副本群集也将使用在主群集上定义的memberAuthType。

SSL证书是使用以下选项定义的:

  • CERT_ISSUER:如果memberAuthType包含CERT_ISSUE或CERT_SUBJECT,则定义拓扑中所有复制帐户所需的证书颁发者。
  • CERT_SUBJECT:定义实例的证书主题。如果memberAuthType包含CERT_SUBJECT,则为必需。

以下示例创建一个集群cluster1,该集群将客户端SSL连接和组复制从一台服务器到另一台服务器打开的连接设置为VERIFY_IDENTITY,并将内部复制帐户的身份验证设置为需要客户端证书:

  1. cluster = dba.createCluster("cluster1", { "memberSslMode": "VERIFY_IDENTITY", "memberAuthType":"certSubject",
  2. "certIssuer":"/CN=MyCertAuthority", "certSubject": "/CN=mysql-1.local"});

以下示例显示如何使用“memberAuthType”将实例添加到集群:“certSubject”:

        cluster.addInstance("mysql-2.local", {"certSubject": "/CN=mysql-2.local"});

 创建服务器的白名单

createCluster()、addInstance()和rejoinInstance()方法使您可以选择指定一个已批准服务器的列表,称为allowlist。通过以这种方式显式指定allowlist,您可以提高集群的安全性,因为只有allowlist中的服务器才能连接到集群。
您还可以在运行的集群上定义allowList,使用cluster.setOption()为集群的所有成员指定allowList;使用cluster.setSInstanceOption()指定单个成员的allowList。参见第7.5.1节“InnoDB集群的设置选项”。
使用ipAllowlist选项(以前是ipWhitelist,现在已弃用)在实例上配置group_replication_ip_allowlist系统变量。默认情况下,如果未明确指定,则allowlist会自动设置为服务器具有网络接口的专用网络地址。若要配置allowlist,请在使用该方法时使用ipAllowlist选项指定要添加的服务器。必须以IPv4格式指定IP地址。以逗号分隔的列表形式传递服务器,列表中用引号括起来。例如:

mysql-js> cluster.addInstance("icadmin@ic-3:3306", {ipAllowlist: "203.0.113.0/24, 198.51.100.110"})

这将实例配置为仅接受来自地址为203.0.113.0/24和198.51.100.110的服务器的连接。allowlist还可以包括主机名,只有当另一台服务器发出连接请求时才能解析这些主机名。

七、 监控 InnoDB 集群

八、 还原和重新启动 InnoDB 集群

九、修改或解散 InnoDB 集群

十、升级 InnoDB 集群


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/1006210
推荐阅读
相关标签