创建统一管理的,具备灵活性的云原生生产部署来部署一个个性化的数据库即服务(DBaaS)。
-- Jonathan S. Katz
通过在 Kubernetes 上运行 PostgreSQL 数据库,你能创建统一管理的,具备灵活性的云原生生产部署应用来部署一个个性化的数据库即服务为你的特定需求进行量身定制。
对于 Kubernetes,使用 Operator 允许你提供额外的上下文去 管理有状态应用 。当使用像PostgreSQL 这样开源的数据库去执行包括配置、扩展、高可用和用户管理时,Operator 也很有帮助。
让我们来探索如何在 Kubernetes 上启动并运行 PostgreSQL。
将 PostgreSQL 和 Kubernetes 结合使用的第一步是安装一个 Operator。在针对 Linux 系统的Crunchy 的 快速启动脚本 的帮助下,你可以在任意基于 Kubernetes 的环境下启动和运行开源的 Crunchy PostgreSQL Operator 。
快速启动脚本有一些必要前提:
执行这个脚本将提供给你一个默认的 PostgreSQL Operator 部署,其默认假设你采用 动态存储 和一个名为 standard 的 StorageClass。这个脚本允许用户采用自定义的值去覆盖这些默认值。
通过下列命令,你能下载这个快速启动脚本并把它的权限设置为可执行:
wget <https://raw.githubusercontent.com/CrunchyData/postgres-operator/master/examples/quickstart.sh>
chmod +x ./quickstart.sh
然后你运行快速启动脚本:
./examples/quickstart.sh
在脚本提示你相关的 Kubernetes 集群基本信息后,它将执行下列操作:
在快速启动脚本的执行期间,你将会被提示在你的 Kubernetes 集群设置 RBAC 规则。在另一个终端,执行快速启动命令所提示你的命令。
一旦这个脚本执行完成,你将会得到提示设置一个端口以转发到 PostgreSQL Operator pod。在另一个终端,执行这个端口转发操作;这将允许你开始对 PostgreSQL Operator 执行命令!尝试输入下列命令创建集群:
pgo create cluster mynewcluster
你能输入下列命令测试你的集群运行状况:
pgo test mynewcluster
现在,你能在 Kubernetes 环境下管理你的 PostgreSQL 数据库了!你可以在 官方文档 找到非常全面的命令,包括扩容,高可用,备份等等。
这篇文章部分参考了该作者为 Crunchy 博客而写的 在 Kubernetes 上开始运行 PostgreSQL 。
via: https://opensource.com/article/19/3/how-run-postgresql-kubernetes
作者: Jonathan S. Katz 选题: lujun9972 译者: arrowfeng 校对: wxy
本文由 LCTT 原创编译, Linux中国 荣誉推出