MariaDB 和 K8s:使用持久卷部署 MariaDB 和 WordPress

在上篇博客 MariaDB & K8s: 创建密钥并在 MariaDB 部署中使用它 中,我们使用 Secrets 资源来隐藏机密的 root 用户数据,而在该系列之前的博客 MariaDB & K8s: 容器/部署之间的通信 中,我们在一个 Pod 中创建了 2 个容器(即 MariaDB 和 phpmyadmin)。 这种部署没有任何持久卷。

在本篇博客中,我们将为 MariaDB 和 WordPress 应用程序创建单独的部署,并为两者创建一个服务以便将它们连接起来。 此外,我们将在 MariaDB 部署的 Pod 中创建一个 Volume。

……

MariaDB & K8s:创建密钥并在 MariaDB 部署中使用它

在上篇博客中,我们创建了一个无状态应用程序,使用 K8s 资源 Deployment 部署了它,并暴露了 root 密码,这在安全性方面当然是不推荐的。 K8s 允许使用特定的 K8s 资源来隐藏机密数据。

让我们看看如何在 K8s 中使用 Secrets

K8s 中的 Secrets

为了保存机密数据,可以使用名为 Secret 的 K8s 资源。

可以通过运行 kubectl create secret 从 CLI 创建 Secret。

在这里,我们将使用两种方法来创建 secret。

……

快速一览:MariaDB Galera 集群安全谈话

Seppo Jaakola 将在 Security MariaDB Server Fest(2022 年 4 月 6 日,星期三)上介绍“MariaDB Galera 集群安全”主题。

我目前正在观看他的演讲。 让我与您分享一些细节。 Seppo 没有谈论 Galera 默认支持的本机 MariaDB 安全功能,但由于分布式集群拓扑,还需要额外的安全相关措施。 他谈到了集群拓扑、集群通信安全、Galera 增强的数据静态加密以及新的 10.9 功能:按 IP 允许列表进行节点筛选。

您有什么问题要问 Seppo 吗?

……

MariaDB & K8s:容器/部署之间的通信

之前的博客中,我们从一个 YAML 文件创建了一个后台 Deployment 资源,它由一个单独的容器 (MariaDB) 组成,作为后台容器。

在这篇博客中,我们将继续创建前端容器,并通过 Service 和其他资源与后端进行通信。

关于服务

当通过 Deployment 运行应用程序时,Pods 会动态创建和销毁。 创建时,它们会获得集群中的内部 IP 地址,并且由于它们是临时的,因此需要一种稳定的方式来允许 Pod 之间的通信。

……

10.9 预览功能:SHOW ANALYZE 和 EXPLAIN FOR CONNECTION 支持

SHOW ANALYZE

如果您曾经使用 MariaDB 进行查询性能故障排除,您应该
熟悉 MariaDB 的 ANALYZE for statements 功能。 它与某些其他数据库系统中的 EXPLAIN ANALYZE 所做的事情类似:ANALYZE query 运行 query 并生成 EXPLAIN 输出,并附加来自查询执行的数据

ANALYZE SELECT *
FROM orders, customer
WHERE
customer.c_custkey = orders.o_custkey AND
customer.c_acctbal < 0 AND
orders.o_totalprice > 200*1000
+—-+————-+———-+——+—————+————-+———+——————–+——–+——–+———-+————+————-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | r_rows | filtered | r_filtered | Extra |
+—-+————-+———-+——+—————+————-+———+——————–+——–+——–+———-+————+————-+
| 1 | SIMPLE | customer | ALL | PRIMARY,…

……

Server Fest 延迟至 2022 年 4 月 6 日(星期三)

计划赶不上变化。 我不想用细节打扰您,所以您必须相信我说的话:与俄罗斯入侵乌克兰有关的事件导致我们安全主题的 MariaDB Server Fest 延迟了一周,从 3 月 30 日(星期三)推迟到 2022 年 4 月 6 日(星期三)。

这可能是当前战争造成的后果中最轻微的一个。 尽管如此,我们对造成的不便表示歉意。

……

10.9 预览功能:JSON 路径表达式和 JSON_OVERLAPS()

MariaDB 10.9 预览版本引入了一个 MySQL 兼容的语法扩展,即范围表示法。在 JSON 路径表达式中添加了 'last' 关键字,这是根据 MDEV-22224MDEV-27911 中的要求实现的。此外,现在也支持负索引。范围表示法使用 'to' 关键字实现,'last' 关键字基本上是一个数组元素选择器。

语法:

范围表示法
[M to N] 选择从索引 M 到 N 的一系列元素。
Last 关键字
[last-N] / [last] 分别选择倒数第 N 个元素和最后一个元素。

……

MariaDB 10.9 预览版本现已可用

我们很高兴地宣布在 新发布模型下发布的第三个 MariaDB 系列版本 MariaDB 10.9.0。

更快地完善 MariaDB

新模型的目的之一是以一种能够支持稳定性的形式,更快地将功能交付给用户,通过允许更容易地测试新功能,并将其与同时开发的其他新功能分开。

MariaDB 10.9 的候选功能

有四个独立的预览版本,其中包含以下正在考虑在 10.9.1 中发布的功能:

SHOW ANALYZE FORMAT=JSON

  1. 扩展 SHOW EXPLAIN 以支持 SHOW ANALYZE [FORMAT=JSON] (MDEV-27021)
  2. 添加 EXPLAIN FOR CONNECTION 语法支持到 SHOW EXPLAIN (MDEV-10000)

JSON 范围表示法

  1. 实现 JSONPath 的范围表示法 (MDEV-27911)
  2. 支持 JSONPath 负索引 (MDEV-22224)
  3. JSON_OVERLAPS 函数 (MDEV-27677)

异步 redo 日志写入

  1. 异步 redo 日志写入 (MDEV-26603)

杂项

  1. 为 mysqlbinlog 实现 –do-domain-ids、–ignore-domain-ids 和 –ignore-server-ids 选项 (MDEV-20119)
  2. information_schema.tables.table_type 现在显示 TEMPORARY
    用于本地临时表。

……