Ansible 플레이북을 구성하고 일부 코드를 추가하여 서비스를 시작하고 Telegram에 알림을 보내려고 하는데 아래와 같은 오류가 발생합니다. 저는 이것이 오타가 아니라 커뮤니티의 일반적인 텔레그램 플레이북에 있는 다른 오류라고 생각합니다. 이전에 오류 없이 이 작업을 수행한 적이 있습니다. 이제 동일한 프로세스를 따라 새 서버를 다시 설치하려고 시도했지만 이 오류가 발생했습니다.
ERROR! couldn't resolve module/action 'community.general.telegram'. This often indicates a misspelling, missing collection, or incorrect module path.
The error appears to be in '/etc/ansible/playbook/start.yml': line 10, column 6, but maybe elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
- name: send notify to telegram
^ here
start.yml
---
- name: testing playbook
hosts: server
tasks:
- name: start apache service
service:
name: apache2
state: started
- name: send notify to telegram
community.general.telegram:
token: 'telegram token'
api_args:
chat_id: telegramid
parse_mode: "markdown"
text: "Apache Web service has been started!"
disable_web_page_preview: True
disable_notification: True
설치 과정
echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main" | sudo tee -a /etc/apt/sources.list
sudo apt install dirmngr -y
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
sudo apt update
sudo apt install -y ansible
sudo ansible-galaxy collection install community.general
앤서블 버전
ansible 2.9.27
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/dist-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.16 (default, Oct 10 2019, 22:02:15) [GCC 8.3.0]
sudo ansible-galaxy 컬렉션 설치 커뮤니티.일반
Process install dependency map
Starting collection install process
Skipping 'community.general' as it is already installed
답변1
ansible-playbook
당신 도 같이 달리고 있나요 sudo
? Galaxy 설치와 Ansible 플레이북 실행 모두 동일한 사용자를 사용해야 합니다.
그렇지 않으면 상황이 올바르게 보입니다. 업그레이드를 시도해보고 도움이 되는지 확인할 수 있습니다.
ansible-galaxy collection install community.general --upgrade
추가 정보앤서블 갤럭시 커뮤니티에서. 일반 문서.