Macos /ect/ansible文件在Mac OS中不可用
我使用pip在MacOS中安装Ansible。但是我找不到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
/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请查看我在下面提供的答案,并告诉我是否满意。非常感谢