Macos /ect/ansible文件在Mac OS中不可用

Macos /ect/ansible文件在Mac OS中不可用,macos,kubernetes,ansible,minikube,Macos,Kubernetes,Ansible,Minikube,我使用pip在MacOS中安装Ansible。但是我找不到/etc/ansible文件夹。无论是库存还是文件 我想在minikube环境中运行我的剧本。但是剧本又回来了 [WARNING]: No inventory was parsed, only implicit localhost is available [WARNING]: provided hosts list is empty, only localhost is available. Note that the implici

我使用pip在MacOS中安装Ansible。但是我找不到
/etc/ansible
文件夹。无论是
库存还是
文件

我想在
minikube
环境中运行我的剧本。但是剧本又回来了

[WARNING]: No inventory was parsed, only implicit localhost is available

[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match 'all'

[WARNING]: Could not match supplied host pattern, ignoring: 192.168.99.105

如何解决这个问题?

我研究过这个问题,使用它进行管理并不是一个容易的话题。让我详细说明一下:

主要问题如下:

在POSIX环境下执行的大多数Ansible模块都需要在目标主机上使用Python解释器。除非另有配置,否则Ansible将在第一次为每个目标主机执行Python模块时,尝试在该主机上发现合适的Python解释器。 --

这意味着大多数模块将无法使用。偶数ping

复制步骤:
  • 安装Ansible
  • 安装Virtualbox
  • 安装minikube
  • 启动minikube
  • 宋承宪进入minikube
  • 配置Ansible
  • 试验
安装Ansible 正如最初的海报所说,它可以通过pip安装。 例如:
$pip3安装ansible

安装 请下载并安装适合您的系统的相应版本

安装minikube 请浏览本网站:

启动minikube 您可以通过调用以下命令启动minikube:

$minikube start--vm驱动程序=virtualbox

参数
--vm driver=virtualbox
很重要,因为它在以后连接到
minikube
时很有用

请等待minikube在Virtualbox上成功部署

宋承宪进入minikube 需要知道Virtualbox中minikube的IP地址。 获取此IP的一种方法是:

  • 开放虚拟箱
  • 单击minikube虚拟机以显示它
  • 输入root作为帐户名。它不应该询问密码
  • 执行命令:
    $ipa | less
    并找到网络接口的地址。其格式应为192.168.99.XX
从用于启动minikube的终端,请运行以下命令:

$minikube ssh

上面的命令将
ssh
发送到新创建的
minikube
环境,并将私钥存储在以下位置:
HOME\u目录。minikube/machines/minikube/id\u rsa

连接到
minikube

通过调用以下命令尝试登录到
minikube
ssh-i路径到/id\u rsadocker@IP_ADDRESS

如果登录正确,Ansible应该没有问题

配置Ansible 要使用ansible playbook,需要2个文件:

  • 主机包含主机信息的文件
  • 剧本将您要求Ansible做的事情与陈述一起归档
示例主机文件:

[minikube_env]  
minikube ansible_host=IP_ADDRESS ansible_ssh_private_key_file=./id_rsa

[minikube_env:vars]
ansible_user=docker
ansible_port=22
ansible\u ssh\u private\u key\u file=./id\u rsa
将告诉ansible使用文件中的ssh密钥,并将正确的密钥发送到此minikube实例。 请注意,此声明需要将
id\u rsa
文件与其他文件放在同一位置。

示例剧本:

- name: Playbook for checking connection between hosts  
  hosts: all  
  gather_facts: no  

  tasks:
  - name: Task to check the connection  
    ping:
您可以通过调用以下命令来测试连接:

$ansible playbook-i托管文件ping.yaml

上面的命令应该失败,因为没有安装Python解释器

致命:[minikube]:失败!=>{“ansible_facts”:“{”discovered_解释器_python”:“/usr/bin/python”},“changed”:false,“module_stderr”:“到192.168.99.101的共享连接已关闭。\r\n”,“module_stdout”:“/bin/sh:/usr/bin/python:没有这样的文件或目录\r\n”,“msg”:模块无法正确执行,您可能需要设置解释器。\n请参阅stdout/stderr以了解确切的错误信息,“rc”:127}

Ansible和minikube之间有一个成功的连接,但是没有Python解释器来支持它

有一种不用Python解释器就可以使用Ansible的方法


这解释了原始模块的使用。

您是否使用Virtualbox虚拟机监控程序运行minikube?Virtualbox@DawidKrukGiHu La请查看我在下面提供的答案,并告诉我是否满意。非常感谢