问题列表 - 第5147页

使用 jinja 在 Ansible 中动态创建列表

我需要动态设置一个新的列表类型变量list var。

这是一个基本的剧本示例:

  vars:
    app_instances:
      - host_name: host1-domain
        inst_count: 3
      - host_name: host2-domain
        inst_count: 1
      - host_name: host3-domain
        inst_count: 1

  tasks:
    - set_fact:
        instance_config: >-
          {% set inst_config = [] %}
          {% for inst in app_instances %}
            {% for inst_num in range(inst.inst_count) %}
              {% set node_number = inst.host_name.split('-') | first | replace('host', '') %}
              {% set host_name = "host_name" %}
              {% set host_num = "host_num" %}
              {% set inst_name = "inst_name" %}
              {% set node_conf = { host_name: inst.host_name, host_num: …
Run Code Online (Sandbox Code Playgroud)

python ansible ansible-playbook jinja

2
推荐指数
1
解决办法
1万
查看次数

当位于 Nginx 反向代理后面时,来自 Nginx 的意外 301 重定向

类似的问题之前在这里这里被问过,但没有一个匹配或解决我遇到的问题。经过几个小时的拼命解决问题后,我找到了一个出乎意料但简单的解决方案,我想以问答的方式分享它。

背景

一家公司有两台服务器:反向代理(Ubuntu 20.04 + Nginx 1.17)和上游应用程序服务器(也是 Ubuntu 20.04 + Nginx 1.17)。反向代理处理各种子域,例如通过使用proxy_passhttp://demo.example.com指令将它们映射到上游服务器的目录。http://12.12.12.12:8000/demo/

然后,客户端发出 HTTP 请求,其中路径指向目录,但没有尾部斜杠,例如http://demo.example.com/items。默认的 Nginx 行为是进行 301 重定向到相同的 URL,并添加尾部斜杠,例如位置文档http://demo.example.com/items/中所述。

如果 301 重定向发生在上游应用程序服务器,则正常行为是重定向位置路径变为http://12.12.12.12:8000/demo/items/. 这不是问题,因为默认情况下,反向代理将12.12.12.12:8000/demo/用原始主机替换部分内容,因此客户端会收到正确的 301 重定向到demo.example.com/items/. 这正是我所期望发生的事情。

问题

但是,通过以下配置,客户端收到的重定向位置将变为http://demo.example.com:8000/demo/items/。反向代理似乎只部分重写了重定向 URL。

反向代理的站点配置:

server {
  listen 80;
  listen [::]:80;

  index index.html index.htm;

  server_name demo.example.com;

  location / {
    proxy_pass http://12.12.12.12:8000/demo/;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  } …
Run Code Online (Sandbox Code Playgroud)

nginx reverse-proxy redirect proxypass

5
推荐指数
1
解决办法
9839
查看次数

VPN(L2TP 等)与端口转发之间是否存在速度和性能差异?

假设您想将 1 GB 文件从站点 1 的机器传输到站点 2 的机器。您可以通过 VPN (L2TP) 或基本端口转发连接两台机器。哪种连接方法可以更快地移动文件(或者是平局?),为什么?

networking vpn performance port-forwarding l2tp

0
推荐指数
1
解决办法
230
查看次数

有没有一种简单的方法可以临时访问 EC2 上的 AWS 实例?

我有一个 EC2 实例,它需要一个私钥才能使用 SSH 登录。

我想让某人轻松访问服务器上运行的WordPress实例。他们可能需要修改服务器上的一些自定义代码。

让此人临时访问服务器然后撤销的最轻松的方法是什么?我应该设置一个新的密钥对,然后在完成后改回旧的密钥对吗?或者,还有更好的方法?

amazon-ec2 amazon-web-services

4
推荐指数
1
解决办法
693
查看次数

删除 DNSSEC - 可以吗?我该怎么做?

不久前,我部署了 DNSSEC,因为这样做可以减少需要在本地域的 DNS 上实施的安全配置检查的数量。这些是 Windows Server 2012R2 计算机

这似乎工作得很好,除了它导致我们必须打破异地备份安排。我们的 DNS 已设置为将单个主机名解析为我们无法控制的负载平衡设备,然后该设备处理传入数据 - 基本上只是我们将 DPM 备份文件放入其中的驱动器空间。这是我们域区域内的委派记录,主机名作为记录的名称,并包含负载均衡器的单个 NS 条目。

我们花了一些时间才弄清楚 DNSEC 是原因,但在与其他网络团队合作时,这一点似乎得到了证实,并且他们没有计划重新配置任何内容以使其在自己的终端上正常工作。

看来我并没有完全理解 DNSSEC 对此的影响。但是,有没有办法简单地取消 DNSSEC?我当然可以“取消签名”该区域,如 DNS 服务器上的 DNSSEC 菜单中所示。但网上并没有任何看起来写得很好或最近的指南。除了简单地取消对该区域的签名之外,还有更多的事情吗?

domain-name-system dns-hosting internal-dns dnssec windows-server-2012-r2

2
推荐指数
1
解决办法
3389
查看次数

加密现有 ZFS 数据集的最简单方法是什么?

我想转换 (Ubuntu 20.04) 服务器上的大量 ZFS 数据集(大约 3 TB 数据)。我已经对此进行了一些测试,到目前为止我一直在做的是:

  1. 创建一个新的加密数据集zfs create -o encryption=on -o keyformat=passphrase -o mountpoint=/mnt/encrypted tank/encrypted
  2. rsync来自(已安装的)未加密数据集的所有数据,即/opt/stuff加密数据集的安装 ( /mnt/encrypted)
  3. 删除未加密的数据集。
  4. 将加密数据集的安装点从 更改/mnt/encrypted/opt/stuff

上面的方法是有效的,但也许 ZFS 中有一些东西可以让它变得更容易,甚至可能让我保留我的快照并加密它们(ZFS 论坛对最后一点说不)。

zfs zfsonlinux

5
推荐指数
0
解决办法
6470
查看次数

如何运行嵌套在 WSL2(或 vmware)中的 KVM?

我尝试按照本教程运行嵌套在 WSL 2 中的 KVM,但是在按照说明编译内核并加载内核后,测试kvm-ok报告不支持 KVM。

我尝试了多个选项:启用 hyper-v、禁用它、验证 BIOS/CPU 支持、启用/禁用 Device Guard、某些vmware 文档中的其他步骤(bcdedit /set hypervisorlaunchtype、gpedit/DeviceGuard 下的子选项)。

当我禁用 hyper-v、将 hypervisorlaunchtype 设置为关闭并禁用 Device Guard 时,我会在系统信息中看到以下选项,但随后 wsl2 根本无法启动,并显示“请启用虚拟机平台 Windows 功能并确保虚拟化已启用”在 BIOS 中启用。”

系统信息 在此输入图像描述 我尝试的任何其他配置,sys info 都会显示虚拟机管理程序正在运行并且不会显示 hyper-v 值,但我最终遇到了 WSL2 不支持 KVM 的初始问题。此外,如果我尝试在 VMWare Player 中启用“虚拟化 Intel VT-x/EPT”,也无法启动。

退一步来说,最终我想做的是在我的 Windows 笔记本电脑上运行firecracker 演示。因此,如果有更简单的方法可以做到这一点,那么 lmk 。

更新

我注意到它可以在带有 Ubuntu 映像的 VMWare Player 中运行。或者至少,kvm-ok 报告它已启用,/dev/kvm 存在。我还是宁愿使用 WSL2。但它拒绝加载。

hyper-v kvm-virtualization windows-subsystem-for-linux

8
推荐指数
2
解决办法
2万
查看次数

nginx:结合 Expires 和 Cache-Control:不可变标头

nginxexpires指令设置 2 个标头,Expires并且Cache-Control

配置:

expires 1d;
Run Code Online (Sandbox Code Playgroud)

标题:

Expires: Tue, 24 Nov 2020 12:51:31 GMT
Cache-Control: max-age=86400
Run Code Online (Sandbox Code Playgroud)

我想保留Expires标题,但也设置Cache-Controlpublic, max-age=86400, immutable. 但这会产生双Cache-Control标头:

配置:

expires 1d;
add_header Cache-Control "public, max-age=86400, immutable"
Run Code Online (Sandbox Code Playgroud)

标题:

Expires: Tue, 24 Nov 2020 12:57:53 GMT
Cache-Control: max-age=86400
Cache-Control: public, max-age=86400, immutable
Run Code Online (Sandbox Code Playgroud)

我不能只使用add_header Expires ...,因为它需要未来的确切时间,而不仅仅是秒数。

我尝试使用more_set_headersngx_headers_more模块,但指令Cache-Control设置的标头expires仍然存在。

有没有办法将正确的Expires标头与Cache-Controlset to结合起来immutable

nginx

6
推荐指数
2
解决办法
3280
查看次数

带有 PERC s110 和 LSI Centos 8 的 Dell R620 未发现 RAID 驱动器

我购买了带有 PERC S110 的 Dell poweredge R620。我熟悉我的戴尔 T420,它装有 PERC H710(我相信)并且在 bios F2 中,如果您选择 RAID 模式,您将重新启动并可以使用 ctrl+r 来引导您进入 PERC RAID。我的 T420 我这样做并且可以通过使用中介层来配置带有 SATA SSD 的 RAID,因为 perc 是 SAS

这个 R620 带有 S110 PERC,当我在 bios 中选择 RAID 模式并重新启动时。我得到了 ctrl+r,但是当我启动到 RAID 时,它根本没有发现我的任何 SSD 驱动器。我可以在启动后看到它们,但在 RAID 中看不到。我已经探索了阳光下的一切,但我不明白为什么找不到驱动器。

然而,有人帮我启动到 LSI 配置 ctrl+c 是一个 RAID 并找到了这些驱动器,我可以在大量的喘气和喘气之后在那里配置它们,因为有一系列的步骤需要采取。我想这是一个软件RAID?我不明白。bios启动是我不熟悉的solidflare,bios中的启动没有设置为RAID模式而是AHCI模式。

无论如何,我想知道这个 LSI 配置是否是软件 RAID。我习惯于从那里启动到 PERC RAID 和配置,想知道这里发生了什么。如果有人遇到这种设置,请对此有所了解。

非常感谢。

raid dell-perc centos8

-1
推荐指数
1
解决办法
521
查看次数

为什么 dig、host 和 nslookup 返回不同的结果?

似乎我的默认(路由器)DNS 服务器根据用于查询它的工具返回不同的结果。

  1. 使用dig

    $ dig @192.168.1.2 test.example.com
    
    ; <<>> DiG 9.16.8-Debian <<>> @192.168.1.2 test.example.com
    ; (1 server found)
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 58608
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
    
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 512
    ;; QUESTION SECTION:
    ;test.example.com.    IN  A
    
    ;; ANSWER SECTION:
    test.example.com.  41  IN  CNAME  123.123.12.123.
    
    ;; AUTHORITY SECTION:
    .      3357  IN  SOA  a.root-servers.net. …
    Run Code Online (Sandbox Code Playgroud)

domain-name-system host dig nslookup

6
推荐指数
1
解决办法
3008
查看次数