User Tools

Site Tools


public:tool:ansible

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
public:tool:ansible [2022/10/02 03:50]
canvon [Installation] Elaborate on ways to do/think-about-it
public:tool:ansible [2022/10/11 06:04] (current)
canvon [Tool: ansible] Add section "Random stuff": Add Ansible FAQ, with suggestions about (turning off) cowsay and use of mkpasswd which (at least on Debian) comes with the whois package
Line 2: Line 2:
  
 [[https://docs.ansible.com/|ansible]] is an agent-less [[wp>configuration management]] [[.|tool]] with [[wp>Infrastructure_as_Code]] (IaC), but high-level with a declarative syntax that is aimed to ordinary people to understand (or at least get a glimpse of the idea). [[https://docs.ansible.com/|ansible]] is an agent-less [[wp>configuration management]] [[.|tool]] with [[wp>Infrastructure_as_Code]] (IaC), but high-level with a declarative syntax that is aimed to ordinary people to understand (or at least get a glimpse of the idea).
 +
 +
 +===== Random stuff =====
 +
 +  * https://docs.ansible.com/ansible/latest/reference_appendices/faq.html
 +    * Perhaps the canonical place talking about ''cowsay'' and how to turn it off.
 +    * At one point, it references ''mkpasswd'' -- this, on Debian, seems to be part of the ''whois'' package... O_o (For historical reasons.)\\ For me (canvon), at the time of writing (2022-10-10), seems quite as odd as "hundreds"(?) of Debian packages depending on library ''com_err'' built from the ''e2fsprogs'' sources. ...
 +
  
 ===== Version requirements ===== ===== Version requirements =====
  
-[[https://docs.ansible.com/ansible-core/devel/installation_guide/intro_installation.html#node-requirement-summary|ansible-core version requirements]] -- maybe replace "devel" in the URL with a version number, like, [[https://docs.ansible.com/ansible-core/2.10/installation_guide/intro_installation.html#prerequisites|2.10]]... (N.B.: Anchor ''#node-requirement-summary'' was ''#prerequisites'', back then.)+(The ansible "controller" node [[http://blog.rolpdog.com/2020/03/why-no-ansible-controller-for-windows.html|cannot run on Windows]] (native Win32 API etc.; it seems possible with WSL). A Linux/UNIX ansible controller can configure/manage Windows nodes, though.) 
 + 
 +[[https://docs.ansible.com/ansible/latest/reference_appendices/release_and_maintenance.html#ansible-community-changelogs|Correlation of ansible version with ansible-core version]]... [[https://docs.ansible.com/ansible-core/devel/installation_guide/intro_installation.html#node-requirement-summary|ansible-core version requirements]] -- maybe replace "devel" in the URL with a version number, like, [[https://docs.ansible.com/ansible-core/2.10/installation_guide/intro_installation.html#prerequisites|2.10]]... (N.B.: Anchor ''#node-requirement-summary'' was ''#prerequisites'', back then.)
  
 According to ''rmadison ansible'' and ''... python3'': According to ''rmadison ansible'' and ''... python3'':
Line 17: Line 27:
  
 ===== Installation ===== ===== Installation =====
 +
 +  * [[https://docs.ansible.com/ansible/latest/installation_guide/installation_distros.html#installing-ansible-on-ubuntu|Official ansible documentation]] says to use a PPA (Personal Package Archive) for Ubuntu, and to use the same PPA with "fake"/translated release names for/from Debian, too.
  
   * On Debian 11 "''bullseye''", it should suffice to do ''apt install ansible'', maybe?   * On Debian 11 "''bullseye''", it should suffice to do ''apt install ansible'', maybe?
-  * On Debian 10 "''buster''", let's try something like ''python3 -m pip install ansible-core=2.10.8''? Maybe with ''--user''? Maybe in a ''venv''? (Shipped Python should be enough, though; ''ansible-core 2.10'' docs (linked above) state that Python 3.5 should be enough, while we have 3.7 shipped, on this Debian release.)+  * On Debian 10 "''buster''", let's try something like ''python3 -m pip install ansible-core=2.10.8''? Maybe with ''--user''? Maybe in a ''venv''? (Shipped Python should be enough, though; ''ansible-core 2.10'' docs (linked above) state that Python ''3.5'' should be enough, while we have ''3.7''.) 
 +    * Wellthe problem seems to be //getting at// ''ansible-core 2.10''... [[https://pypi.org/project/ansible-core/#history|pypi.org]] release history seems to (roughly) begin at ''2.11''... :-S 
 + 
 +Okay, it turned out using ansible-core 2.11.y with ansible 4.x would be installable on a python3 3.7.3 venv on a Debian 10 "buster", like so: 
 + 
 +  * OS: Debian 10 “buster” 
 +  * Setup virtual environment for python:\\ <code>$ python3 -m venv NAME_OF_ENV</code> 
 + 
 +For the next steps, first run this in your current shell:\\ <code>$ . NAME_OF_ENV/bin/activate</code> 
 + 
 +This sets up your //current// shell to use the virtual environment; keep running that shell so that software from the virtual environment will be used. 
 + 
 +As said, the next steps are to be run in the virtual environment: 
 + 
 +  * Upgrade pip:\\ <code>(NAME_OF_ENV) $ python3 -m pip install --upgrade pip</code> 
 +  * Install ansible sufficiently old for our Debian 10 python3 3.7.3: <code>(NAME_OF_ENV$ python3 -m pip install 'ansible>=4,<5'</code> 
 + 
 +This is meant to install Ansible (with community-curated collections) version 4.x, which should in turn pull in ansible-core ~2.11, which is the last core 2.x version to not require python3 3.8. 
 + 
 +On my (canvon’s) system, this is expected to lead to the following installed versions: 
 + 
 +  * python3 3.7.3 
 +  * pip 22.2.2 
 +  * ansible 4.10.0 
 +  * ansible-core 2.11.12 
 + 
 + 
 +===== Links ===== 
 + 
 +  * https://www.redhat.com/sysadmin/faster-ansible-playbook-execution mentions: 
 +    * Activate callback plugins in ''ansible.cfg'': ''[defaults]'' ''callbacks_enabled = timer, profile_tasks, profile_roles''\\ This will measure each task's execution time and output all of them ordered by time taken, at the end of the play. (At least I think that is what it does.) 
 +    * Disable fact gathering to speed things up at start of play. 
 +    * A lot more. I (canvon) don't need (or even don't understand) much of the rest...
  
  
public/tool/ansible.1664675410.txt.gz · Last modified: 2022/10/02 03:50 by canvon