我在我的笔记中有这个{"run_list":["recipe[nginx@1.2.3]"]}可以明确指定要在节点run_list中使用的cookbook版本,但是我无法使它工作,并且找不到任何文档说明是否仍然支持它或者它已被弃用.
这是使用厨师11.18.0.任何人都可以确认这是否仍然可以使用以及应该配置的位置.在节点run_list或角色run_list中?
谢谢
我认为这会起作用,但由于某种原因,它会跳过auth_basic并且总是返回200.如果我将200换成301重定向,也会发生同样的情况.
如果我注释掉return语句就行了.理想情况下,我只想要一个/auth端点,一旦通过身份验证,它将301重定向到另一个路径.
location /auth {
auth_basic_user_file /etc/nginx/.htpasswd;
auth_basic "Secret";
return 200 'hello';
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
非常感谢
FLO
也许我在文档中遗漏了一些内容,但在阅读了在多个地方定义时使用属性的顺序后,我不明白在节点级别设置的属性在哪里进入等式
在可以设置和覆盖属性的1到15级别中,它提到了配方,环境,角色,属性文件,但似乎从未提及在节点上定义的属性会发生什么,例如 knife node edit ...
看起来您只能在节点上定义普通类型的属性?仅列出了...属性文件和配方中的优先级7和8的正常属性.
那么,如果我在节点上设置了一个属性,该属性也是在环境和角色级别上定义谁获胜的?
我真的很努力地让 Windows shell 与 jq 一起工作并且失败了。
我希望这种类型的东西起作用
echo '["a","b","c"]' | .\Downloads\jq.exe -r '{ "data": map({ "{#SNAME}": . })}'
Run Code Online (Sandbox Code Playgroud)
但我收到一个错误:
jq:错误:语法错误,意外的“。” (Windows cmd shell 引用问题?)在第 1 行:
如果我只是这样做,echo '["a","b","c"]' | .\Downloads\jq.exe -r '.'那么它很高兴,但是一旦我添加其他字符,echo '["a","b","c"]' | .\Downloads\jq.exe -r '{.}'它就会再次失败:
jq:错误:语法错误,意外的“。” (Windows cmd shell 引用问题?)在第 1 行:
有谁知道如何让 Windows shell 对 jq 感到满意,以使上述示例按预期工作?
使用来自 jq 网站的最新 1.6 版本进行这些测试,并确认 jq 命令使用 Linux 和 jqplay.org 工作。
谢谢你。
我有一个基本的VPC,有两个运行Apache的Linux EC2实例,它们位于经典ELB之后.
我想从Web应用程序使用DynamoDB,这要求EC2实例具有出站Internet访问权限,因为DynamoDB端点不能通过后端获得.
我正在使用ELB来避免将公共IP附加到EC2实例,因此我不想附加它们以便我可以访问DynamoDB.
此时我卡住了.
我设置了新NAT Gateway功能以提供对DynamoDB公共端点的访问.这在配置时运行良好,这意味着Web应用程序可以成功连接到DynamoDB端点但是它会通过ELB中断传入流量.
配置了Nat Gateway后,EC2实例子网的默认网关是Nat Gateway.
ELB要求有一个互联网网关用于路由工作...所以它是一个我不确定如何解决的问题22.
总而言之,我想通过ELB提供对Web服务器的外部访问,我希望Web服务器可以通过Nat Gateway访问DynamoDB端点.无需为Web服务器实例分配公共接口.
有谁知道这是否有效?似乎很标准的设置.参考架构或教程会很棒.
非常感谢
chef-infra ×2
amazon-ec2 ×1
amazon-elb ×1
cmd ×1
jq ×1
knife ×1
nginx ×1
powershell ×1
windows ×1