这是我的一位朋友的一句话,他曾经向我询问过关于 Postgres 的问题。 然后我们在几天内解决了他的问题,他感谢我并补充道:“有一个熟悉的 DBA 真是太好了。”
但是如果您不认识 DBA 该怎么办? 答案可能有很多选择,从在朋友中搜索朋友到自己研究问题。 但无论你想到什么答案,我都有好消息告诉你。 在测试模式下,我们为 Postgres 及其周边的一切推出了推荐服务。 这是什么?我们是如何过上这样的生活的?
为什么都这样?
Postgres 至少不容易,有时甚至非常困难。 取决于参与程度和责任程度。
从事运营工作的人员需要确保 Postgres 即服务正常稳定地工作——监控资源的利用率、可用性、配置的充分性,定期进行更新和定期健康检查。 一般来说,那些开发和编写应用程序的人需要监视应用程序如何与数据库交互,并且不会造成可能导致数据库崩溃的紧急情况。 如果一个人不幸成为技术主管/技术总监,那么对他来说重要的是Postgres作为一个整体工作可靠、可预测并且不会产生问题,同时建议不要长期深入研究Postgres 。
在任何一种情况下,都有你和 Postgres。 为了很好地服务Postgres,你需要对它有一个很好的理解,了解它是如何工作的。 如果 Postgres 不是一个直接的专业,那么你可以花相当多的时间来学习它。 理想情况下,当有时间和愿望时,并不总是清楚从哪里开始、如何以及向何处移动。
即使引入监控(理论上应该有利于操作),专家知识的问题仍然悬而未决。 为了能够阅读和理解图表,您仍然需要很好地理解 Postgres 的工作原理。 否则,任何监控都会变成悲伤的图片和一天中随机时间发出的垃圾邮件。
该服务的主要目标是提供明确的建议,让人们了解正在发生的事情以及下一步需要做什么。
对于不具备专业知识的专业人员,这些建议为高级培训提供了起点。 对于高级专家,建议指出了应注意的事项。 在这方面,Weaponry 充当助手,执行日常任务以发现需要特别注意的问题或缺点。 Weaponry 可以比作检查 Postgres 并指出缺陷的 linter。
现在情况怎么样?
在此刻,
顺便说一句,这些建议仍然非常简单 - 他们只是说要做什么以及如何做,没有其他细节 - 所以首先你必须点击相关链接或谷歌它。 检查和建议涵盖系统和硬件设置、Postgres 本身的设置、内部架构以及使用的资源。 计划中还有很多东西需要补充。
当然,我们正在寻找愿意尝试该服务并提供反馈的志愿者。 我们还有
更新于 2020 年 09 月 16 日。 入门。
注册后,系统会提示用户创建一个项目 - 它允许您将数据库实例组合到组中。 创建项目后,用户将看到有关配置和安装代理的说明。 简而言之,您需要为代理创建用户,然后下载代理安装脚本并运行它。 在 shell 命令中,它看起来像这样:
psql -c "CREATE ROLE pgscv WITH LOGIN SUPERUSER PASSWORD 'A7H8Wz6XFMh21pwA'"
export PGSCV_PG_PASSWORD=A7H8Wz6XFMh21pwA
curl -s https://dist.weaponry.io/pgscv/install.sh |sudo -E sh -s - 1 6ada7a04-a798-4415-9427-da23f72c14a5
如果主机有 pgbouncer,那么您还需要创建一个用户来连接代理。 在 pgbouncer 中配置用户的具体方法可能非常多变,并且高度依赖于所使用的配置。 一般来说,设置归结为将用户添加到 统计用户 配置文件(通常 pgbouncer.ini)并将密码(或其哈希值)写入参数中指定的文件 auth_file。 如果更改 stats_users,则需要重新启动 pgbouncer。
install.sh 脚本采用几个对于每个项目都是唯一的必需参数,并通过环境变量接受所创建用户的详细信息。 接下来,脚本以引导模式启动代理 - 代理将自身复制到 PATH,创建包含详细信息的配置、systemd 单元并作为 systemd 服务启动。
这样就完成了安装。 几分钟之内,数据库实例将出现在界面的主机列表中,您已经可以查看第一个建议。 但重要的一点是,许多推荐需要大量累积的指标(至少每天)。
来源: habr.com