仅在本地主机上执行时如何在ansible中获取主机名?

MrD*_*Duk 1 ansible

是否有一个内置程序可以让您获取您所在主机的主机名(不包括变量)inventory_hostname?我想做的是在多个主机上执行播放,但它们必须在每个主机上手动运行(安全策略,不用担心)。但是,作为此过程的一部分,我们使用需要本地主机的实际主机名的模板变量。是否有可能用除 之外的其他东西来获取它inventory_hostname,因为我认为它会返回localhost

nit*_*one 6

当然,有很多方法可以做到这一点,但这个方法对本地或远程运行很友好:

- command: hostname
  register: hostname

- set_fact: 
    actual_hostname: hostname.stdout

# now you can use {{ actual_hostname }} wherever and have 
# the value returned from running hostname on each target host.
Run Code Online (Sandbox Code Playgroud)