AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 690175
Accepted
Amos Shapira
Amos Shapira
Asked: 2015-05-07 17:21:37 +0800 CST2015-05-07 17:21:37 +0800 CST 2015-05-07 17:21:37 +0800 CST

什么是 puppet master 的好负载均衡器检查

  • 772

我们在 Elastic Load Balancer 后面的 AWS EC2 实例上运行了几个 Puppet Master 版本 3.7(非 PE)(主要用于高可用性)。

目前,负载均衡器的检查只是端口 8140 上的 TCP 连接。但这并没有检测到其中一个实例已挂起(它仍在接受初始 TCP 连接,但没有对其进行任何操作)。

我正在寻找向 puppet master 发送有意义的“no-op”请求并让它发回结果的方法。

更具体的要求:

  1. 它不应该触发繁重的处理(检查每隔几秒钟发生一次)
  2. 如果 puppet master 能够实际处理“真正的请求”,它应该成功,否则失败。
  3. 应该可以从 ELB 执行(即基本上它应该在静态路径上成功的 https 请求上返回“200 OK”。

是否有一个好的静态路径可以让运行状况检查使用?到目前为止,我还没有找到任何东西。

amazon-web-services
  • 1 1 个回答
  • 667 Views

1 个回答

  • Voted
  1. Best Answer
    Jakov Sosic
    2015-05-07T21:29:20+08:002015-05-07T21:29:20+08:00

    您可以用来检查 puppet master 是否正常工作的是设置某种 API 查询,例如:

    curl -k -H "Accept: pson" https://puppetmaster:8140/production/status/no_key
    

    当然,API 访问默认不可用,这意味着您必须使用签名客户端的 SSL 证书才能访问 REST API。此外,并非所有证书都具有所有需要的权限。

    这是一个如何进行完整清单编译的示例:

    curl -k -H 'Accept: pson' \
    --cert /var/lib/puppet/ssl/certs/node.example.com.pem \
    --key /var/lib/puppet/ssl/private_keys/node.example.com.pem \
    --cacert /var/lib/puppet/ssl/ca/ca_crt.pem \
    https://puppetmaster:8140/production/status/no_key
    

    不知道是否可以将证书集成到 ELB 检查中,但如果不是,也许您可​​以玩转 REST API 访问控制并在 auth.conf 中按照以下内容进行设置:

    # Allow ELB to access REST endpoint
    path ~ ^/status/no_key$
    auth off
    allow_ip <ip_of_loadbalancer>
    

    重新启动 puppetmaster,并尝试简单检查:

    curl -k -H "Accept: pson" https://puppetmaster:8140/production/status/no_key
    

    这应该有效。小心 auth.conf 不要过度扩张自己!

    要查看所有可用的 API 密钥,请查看 PuppetLabs 站点上的 REST API 文档。

    • 4

相关问题

  • 如何在 Amazon Linux 服务器上升级到 Java 1.8?

  • 如何在 AWS ubuntu 实例上安装 apache?

  • 了解 Amazon AWS 使用数据

  • 亚马逊提供的负载均衡服务体验如何?

  • ELB 中现有节点的 AWS 自动缩放问题

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve