You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ansible中用Jinja2处理dns变量生成通配符cname的实现方法

Ansible 域名转通配符CNAME正确Jinja2写法

核心实现逻辑为拆分域名后剔除首段,拼接通配符前缀即可,正确表达式如下:

"{{ '*.' ~ (es_admin_hostname.split('.')[1:] | join('.')) }}"

修正后的完整测试剧本:

- hosts: elastic-search-servers
  gather_facts: true
  vars:
    es_admin_hostname: test.develop123.com
  tasks:
    - name: 生成通配符CNAME
      set_fact:
        cname: "{{ '*.' ~ (es_admin_hostname.split('.')[1:] | join('.')) }}"

    - name: 打印结果
      debug:
        msg: "{{ cname }} is dns name"

执行后输出的cname值即为*.develop123.com,支持多段域名自动适配,比如输入xyz.abc.pqr.com会自动输出*.abc.pqr.com。

内容的提问来源于stack exchange,提问作者Devaraju

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 06:15:04