زمانیکه قصد استفاده از ماژول های Ansible روی سرورهای ریموت را داریم ممکن است با خطای /usr/bin/python: not found مواجه شوید.
این خطا به این دلیل هست که اکثر ماژول های انسیبل با پایتون کار میکنند و اگر روی هاست ریموت Phython نباشه برخی ماژول ها کار نمیکنند، هر چند یکسری ماژول های دیگه هستند که بدون نیاز به پایتون هم کار میکنند ولی اکثر ماژول های کاربردی انسیبل رو در صورتیکه پایتون روی هاست ریموت نباشه نمیشه اجرا کرد.
برای حل مشکل نیاز هست روی هاست های ریموت که Ansible قرار هست بهشون وصل بشه پایتون نصب باشه. برای نصب پایتون در دبیان 10 میتونید از دستورات زیر استفاده کنید.
بعد از نصب Python روی هاست های ریموت، مجددا زمانیکه پلی بوک یا ماژولی که استفاده میکنید را اگر در سرور انسیبل اجرا کنید دیگر با خطای بالا مواجه نمیشوید.
کد PHP:
# ansible -m ping test-server
192.168.10.10 | FAILED! => {
"changed": false,
"module_stderr": "Shared connection to 192.168.10.10 closed.\r\n",
"module_stdout": "/bin/sh: 1: /usr/bin/python: not found\r\n",
"msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
"rc": 127
}
این خطا به این دلیل هست که اکثر ماژول های انسیبل با پایتون کار میکنند و اگر روی هاست ریموت Phython نباشه برخی ماژول ها کار نمیکنند، هر چند یکسری ماژول های دیگه هستند که بدون نیاز به پایتون هم کار میکنند ولی اکثر ماژول های کاربردی انسیبل رو در صورتیکه پایتون روی هاست ریموت نباشه نمیشه اجرا کرد.
برای حل مشکل نیاز هست روی هاست های ریموت که Ansible قرار هست بهشون وصل بشه پایتون نصب باشه. برای نصب پایتون در دبیان 10 میتونید از دستورات زیر استفاده کنید.
کد PHP:
sudo apt install python3
sudo apt install python
sudo apt install python-minimal
بعد از نصب Python روی هاست های ریموت، مجددا زمانیکه پلی بوک یا ماژولی که استفاده میکنید را اگر در سرور انسیبل اجرا کنید دیگر با خطای بالا مواجه نمیشوید.
کد PHP:
# ansible -m ping test-server
192.168.10.10 | SUCCESS => {
"changed": false,
"ping": "pong"
}