• =?UTF-8?Q?Re=3a_apt-get_upgrade_=c3=bcber_ansible_und_die_Frage_nac?= =

    From Ulf Volmer@21:1/5 to Stefan Schumacher on Wed Jul 13 15:40:02 2022
    On 13.07.22 15:11, Stefan Schumacher wrote:
    ich betreue eine wachsende Debian GNU+Linux Serverlandschaft. Wir verwenden Proxmox VE zur Virtualisierung und ich verwende Ansible um die Maschinen zu provisionieren. Üblichlicherweise verwende ich folgenden Ad-Hoc-Befehl um all meine Maschinen upzugraden.
    ansible servergruppe -a "apt-get upgrade -y"

    Ich würde mit den Shell Aufruf ersparen und das ansible apt Modul
    verwenden. [1]

    https://docs.ansible.com/ansible/latest/collections/ansible/builtin/apt_module.html

    Dort gibt es Dpkg::Options, um das Verhalten zu steuern. Das sollte im
    Ansible Module bereits so sein, wie Du erwartetst.

    [1] ansible servergruppe -m apt -a 'name=* state=latest'

    Viele Grüße
    Ulf

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?Michael_B=C3=B6hm?=@21:1/5 to All on Wed Jul 13 17:20:05 2022
    Am Mi., 13. Juli 2022 um 15:35 Uhr schrieb Ulf Volmer <u.volmer@u-v.de>:


    On 13.07.22 15:11, Stefan Schumacher wrote:
    ich betreue eine wachsende Debian GNU+Linux Serverlandschaft. Wir
    verwenden
    Proxmox VE zur Virtualisierung und ich verwende Ansible um die Maschinen
    zu
    provisionieren. Üblichlicherweise verwende ich folgenden Ad-Hoc-Befehl um all meine Maschinen upzugraden.
    ansible servergruppe -a "apt-get upgrade -y"

    Ich würde mit den Shell Aufruf ersparen und das ansible apt Modul
    verwenden. [1]


    https://docs.ansible.com/ansible/latest/collections/ansible/builtin/apt_module.html

    Dort gibt es Dpkg::Options, um das Verhalten zu steuern. Das sollte im Ansible Module bereits so sein, wie Du erwartetst.


    Ja genau prinzipiell kannst du das einfach über die Dpkg
    Optionen beeinflussen, mit "confold" wird immer die vorhandene Config
    weiter genutzt. Das kannst du sicher in ansible hinterlegen (!?wir nutzen saltstack), aber auch in der /etc/apt/apt.conf direkt auf dem Server: Dpkg::Options {
    "--force-confold";
    }
    Dann gilt das auch, falls du mal nicht per ansible sondern direkt auf der Maschine arbeitest.

    Allerdings hätte dir das am Montag bei dem Update auf 11.4 nicht viel geholfen. Hier hat openssh-server auch die geändert Config angemeckert, allerdings nicht über den "normalen" Dpkg-Mechanismus sondern per debconf. Hier müsstest du vorher die dialog-Schnittstelle anpassen damit es "unbeaufsichtigt" durchläuft. In deinem Fall also sowas hier:
    ansible servergruppe -a "export DEBIAN_FRONTEND=noninteractive && apt-get upgrade -y"

    Vielleicht gibt es dafür ja auch eine Option im Apt-Modul von ansible.
    Schau dir aber vorher genau an, was welche Option für Auswirkungen hat:

    dpkg: https://manpages.debian.org/bullseye/dpkg/dpkg.1.de.html
    debconf: https://manpages.debian.org/bullseye/debconf-doc/debconf.7.de.html

    <div dir="ltr"><div dir="ltr">Am Mi., 13. Juli 2022 um 15:35 Uhr schrieb Ulf Volmer &lt;<a href="mailto:u.volmer@u-v.de">u.volmer@u-v.de</a>&gt;:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-
    left:1px solid rgb(204,204,204);padding-left:1ex"><br>
    On 13.07.22 15:11, Stefan Schumacher wrote:<br>
    &gt; ich betreue eine wachsende Debian GNU+Linux Serverlandschaft. Wir verwenden<br>
    &gt; Proxmox VE zur Virtualisierung und ich verwende Ansible um die Maschinen zu<br>
    &gt; provisionieren. Üblichlicherweise verwende ich folgenden Ad-Hoc-Befehl um<br>
    &gt; all meine Maschinen upzugraden.<br>
    &gt; ansible servergruppe -a &quot;apt-get upgrade -y&quot;<br>

    Ich würde mit den Shell Aufruf ersparen und das ansible apt Modul <br> verwenden. [1]<br>

    <a href="https://docs.ansible.com/ansible/latest/collections/ansible/builtin/apt_module.html" rel="noreferrer" target="_blank">https://docs.ansible.com/ansible/latest/collections/ansible/builtin/apt_module.html</a><br>

    Dort gibt es Dpkg::Options, um das Verhalten zu steuern. Das sollte im <br> Ansible Module bereits so sein, wie Du erwartetst.<br></blockquote><div><br></div><div>Ja genau prinzipiell kannst du das einfach über die Dpkg Optionen beeinflussen, mit &quot;confold&quot; wird immer die vorhandene Config weiter genutzt. Das kannst
    du sicher in ansible hinterlegen (!?wir nutzen saltstack), aber auch in der /etc/apt/apt.conf direkt auf dem Server:</div><div>Dpkg::Options {<br>   &quot;--force-confold&quot;;<br>}<br></div><div>Dann gilt das auch, falls du mal nicht per ansible
    sondern direkt auf der Maschine arbeitest.</div><div><br></div><div>Allerdings hätte dir das am Montag bei dem Update auf 11.4 nicht viel geholfen. Hier hat openssh-server auch die geändert Config angemeckert, allerdings nicht über den &quot;normalen&
    quot; Dpkg-Mechanismus sondern per debconf. Hier müsstest du vorher die dialog-Schnittstelle anpassen damit es &quot;unbeaufsichtigt&quot; durchläuft. In deinem Fall also sowas hier:</div><div>ansible servergruppe -a &quot;export DEBIAN_FRONTEND=
    noninteractive &amp;&amp; apt-get upgrade -y&quot;<br></div><div><br></div><div>Vielleicht gibt es dafür ja auch eine Option im Apt-Modul von ansible. Schau dir aber vorher genau an, was welche Option für Auswirkungen hat:</div><div><br></div><div>
    dpkg: <a href="https://manpages.debian.org/bullseye/dpkg/dpkg.1.de.html">https://manpages.debian.org/bullseye/dpkg/dpkg.1.de.html</a><br></div><div>debconf: <a href="https://manpages.debian.org/bullseye/debconf-doc/debconf.7.de.html">https://manpages.
    debian.org/bullseye/debconf-doc/debconf.7.de.html</a></div><div><br></div></div></div>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Ulf Volmer@21:1/5 to All on Wed Jul 13 21:40:01 2022
    On 13.07.22 16:59, Michael Böhm wrote:
    Am Mi., 13. Juli 2022 um 15:35 Uhr schrieb Ulf Volmer <u.volmer@u-v.de>:

    Ich würde mit den Shell Aufruf ersparen und das ansible apt Modul
    verwenden. [1]

    Allerdings hätte dir das am Montag bei dem Update auf 11.4 nicht viel geholfen. Hier hat openssh-server auch die geändert Config angemeckert, allerdings nicht über den "normalen" Dpkg-Mechanismus sondern per debconf.

    Hier ist das ansible apt Modul mit dem 11.4 Update einfach
    durchgelaufen. Wird es also richtig gemacht haben.

    Viele Grüße
    Ulf

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?Michael_B=C3=B6hm?=@21:1/5 to All on Thu Jul 14 12:00:01 2022
    Am Mi., 13. Juli 2022 um 21:39 Uhr schrieb Ulf Volmer <u.volmer@u-v.de>:

    On 13.07.22 16:59, Michael Böhm wrote:
    Am Mi., 13. Juli 2022 um 15:35 Uhr schrieb Ulf Volmer <u.volmer@u-v.de>:

    Ich würde mit den Shell Aufruf ersparen und das ansible apt Modul
    verwenden. [1]

    Allerdings hätte dir das am Montag bei dem Update auf 11.4 nicht viel geholfen. Hier hat openssh-server auch die geändert Config angemeckert, allerdings nicht über den "normalen" Dpkg-Mechanismus sondern per
    debconf.

    Hier ist das ansible apt Modul mit dem 11.4 Update einfach
    durchgelaufen. Wird es also richtig gemacht haben.


    Das ist ja interessant. Auf den ersten Blick sehe ich, dass in dem
    Modul force-confdef und force-confold als Default gesetzt sind. Die
    Kombination habe ich so auch direkt in Apt hinterlegt, das hat debconf so
    aber w.g. nicht interessiert.

    Es gibt noch das ansible.builtin.debconf Modul, aber da sind kaum default
    Werte vorgegeben. Hast du im apt/debconf Modul noch irgendwelche anderen
    Werte definiert oder lief das so out-of-the-box durch?

    <div dir="ltr"><div dir="ltr">Am Mi., 13. Juli 2022 um 21:39 Uhr schrieb Ulf Volmer &lt;<a href="mailto:u.volmer@u-v.de">u.volmer@u-v.de</a>&gt;:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-
    left:1px solid rgb(204,204,204);padding-left:1ex">On 13.07.22 16:59, Michael Böhm wrote:<br>
    &gt; Am Mi., 13. Juli 2022 um 15:35 Uhr schrieb Ulf Volmer &lt;<a href="mailto:u.volmer@u-v.de" target="_blank">u.volmer@u-v.de</a>&gt;:<br>

    &gt;&gt; Ich würde mit den Shell Aufruf ersparen und das ansible apt Modul<br> &gt;&gt; verwenden. [1]<br>

    &gt; Allerdings hätte dir das am Montag bei dem Update auf 11.4 nicht viel<br> &gt; geholfen. Hier hat openssh-server auch die geändert Config angemeckert,<br>
    &gt; allerdings nicht über den &quot;normalen&quot; Dpkg-Mechanismus sondern per debconf.<br>

    Hier ist das ansible apt Modul mit dem 11.4 Update einfach <br>
    durchgelaufen. Wird es also richtig gemacht haben.<br></blockquote><div><br></div><div>Das ist ja interessant. Auf den ersten Blick sehe ich, dass in dem Modul force-confdef und force-confold als Default gesetzt sind. Die Kombination habe ich so auch
    direkt in Apt hinterlegt, das hat debconf so aber w.g. nicht interessiert.</div><div><br></div><div>Es gibt noch das ansible.builtin.debconf Modul, aber da sind kaum default Werte vorgegeben. Hast du im apt/debconf Modul noch irgendwelche anderen Werte
    definiert oder lief das so out-of-the-box durch?</div></div></div>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Ulf Volmer@21:1/5 to All on Thu Jul 14 14:30:01 2022
    On 14.07.22 11:34, Michael Böhm wrote:
    Am Mi., 13. Juli 2022 um 21:39 Uhr schrieb Ulf Volmer <u.volmer@u-v.de>:

    Hier ist das ansible apt Modul mit dem 11.4 Update einfach
    durchgelaufen. Wird es also richtig gemacht haben.


    Das ist ja interessant. Auf den ersten Blick sehe ich, dass in dem
    Modul force-confdef und force-confold als Default gesetzt sind. Die Kombination habe ich so auch direkt in Apt hinterlegt, das hat debconf so aber w.g. nicht interessiert.

    Es gibt noch das ansible.builtin.debconf Modul, aber da sind kaum default Werte vorgegeben. Hast du im apt/debconf Modul noch irgendwelche anderen Werte definiert oder lief das so out-of-the-box durch?

    Das lief out of the box. Meine Debian Updates mache ich seit längerem (ausgenommen Release Upgrades) mit einem

    ansible -m apt -a 'name=* state=latest'

    Die sshd_config wurde dabei nicht angefasst:

    ls -l /etc/ssh/sshd_config*
    -rw-r--r-- 1 root root 694 May 15 01:34 /etc/ssh/sshd_config
    -rw-r--r-- 1 root root 3287 Aug 29 2021 /etc/ssh/sshd_config.ucf-dist -rw-r--r-- 1 root root 2541 Aug 12 2016 /etc/ssh/sshd_config.ucf-old

    Viele Grüße
    Ulf

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Alexander Reichle-Schmehl@21:1/5 to All on Thu Jul 14 15:00:01 2022
    Mahlzeit!

    Am 2022-07-14 14:20, schrieb Ulf Volmer:

    Das ist ja interessant. Auf den ersten Blick sehe ich, dass in dem
    Modul force-confdef und force-confold als Default gesetzt sind. Die
    Kombination habe ich so auch direkt in Apt hinterlegt, das hat debconf
    so
    aber w.g. nicht interessiert.
    [..]
    Das lief out of the box. Meine Debian Updates mache ich seit längerem (ausgenommen Release Upgrades) mit einem

    ansible -m apt -a 'name=* state=latest'

    Beschäftige mich auch gerade mit dem Gedanken, Debian upgrades zu automatisieren, uns ansible haben wir auch schon im Einsatz.

    Was ich mich nur gerade frage ist, wie andere eventuell benötigte
    Neustarts von services / dem server handhaben. Bisher - bei den
    händischen Upgrades - haben wir den needrestart hook in dpkg.



    Habt ihr auch Pakete von upgrades ausgenommen? Laut apt modul Doku
    sollte apt hold reichen, und wenn ich kurz rumsuche [1], scheint man das
    auch via dpkg_selections module setzen zu können. Das klingt ja fast
    schon zu schön um war zu sein :)

    Funktioniert das wirklich so einfach?


    Mit besten Grüßen,
    Alexander

    0: https://docs.ansible.com/ansible/latest/collections/ansible/builtin/apt_module.html#parameter-allow_change_held_packages
    1: https://stackoverflow.com/questions/63982903/apt-mark-hold-and-apt-mark-unhold-with-ansible-modules

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Stefan Schumacher@21:1/5 to All on Thu Jul 14 15:20:01 2022
    Hallo Ulf,

    wie machst du das denn mit den Dist-Upgrades? Es gibt zumindest in der Anleitung zum Modul eine entsprechende Option. Ich habe bis jetzt immer clusterssh benutzt weil man da mehr Kontrolle hat, aber es werden halt
    immer mehr mehr VMs. Ich hoffe das Upgrade auf Bookworm schon mit Ansible - erstmal mit einer kleinen Testmenge der VMs, dann mit dem Rest -
    durchführen zu können.

    Viele Grüße
    Stefan

    Am Do., 14. Juli 2022 um 14:20 Uhr schrieb Ulf Volmer <u.volmer@u-v.de>:


    On 14.07.22 11:34, Michael Böhm wrote:
    Am Mi., 13. Juli 2022 um 21:39 Uhr schrieb Ulf Volmer <u.volmer@u-v.de>:

    Hier ist das ansible apt Modul mit dem 11.4 Update einfach
    durchgelaufen. Wird es also richtig gemacht haben.


    Das ist ja interessant. Auf den ersten Blick sehe ich, dass in dem
    Modul force-confdef und force-confold als Default gesetzt sind. Die Kombination habe ich so auch direkt in Apt hinterlegt, das hat debconf so aber w.g. nicht interessiert.

    Es gibt noch das ansible.builtin.debconf Modul, aber da sind kaum default Werte vorgegeben. Hast du im apt/debconf Modul noch irgendwelche anderen Werte definiert oder lief das so out-of-the-box durch?

    Das lief out of the box. Meine Debian Updates mache ich seit längerem (ausgenommen Release Upgrades) mit einem

    ansible -m apt -a 'name=* state=latest'

    Die sshd_config wurde dabei nicht angefasst:

    ls -l /etc/ssh/sshd_config*
    -rw-r--r-- 1 root root 694 May 15 01:34 /etc/ssh/sshd_config
    -rw-r--r-- 1 root root 3287 Aug 29 2021 /etc/ssh/sshd_config.ucf-dist -rw-r--r-- 1 root root 2541 Aug 12 2016 /etc/ssh/sshd_config.ucf-old

    Viele Grüße
    Ulf



    <div dir="ltr">Hallo Ulf,<div><br></div><div>wie machst du das denn mit den Dist-Upgrades? Es gibt zumindest in der Anleitung zum Modul eine entsprechende Option. Ich habe bis jetzt immer clusterssh benutzt weil man da mehr Kontrolle hat, aber es werden
    halt immer mehr mehr VMs. Ich hoffe das Upgrade auf Bookworm schon mit Ansible - erstmal mit einer kleinen Testmenge der VMs, dann mit dem Rest - durchführen zu können.</div><div><br>Viele Grüße</div><div>Stefan</div></div><br><div class="gmail_quote"
    <div dir="ltr" class="gmail_attr">Am Do., 14. Juli 2022 um 14:20 Uhr schrieb Ulf Volmer &lt;<a href="mailto:u.volmer@u-v.de">u.volmer@u-v.de</a>&gt;:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,
    204,204);padding-left:1ex"><br>
    On 14.07.22 11:34, Michael Böhm wrote:<br>
    &gt; Am Mi., 13. Juli 2022 um 21:39 Uhr schrieb Ulf Volmer &lt;<a href="mailto:u.volmer@u-v.de" target="_blank">u.volmer@u-v.de</a>&gt;:<br>

    &gt;&gt; Hier ist das ansible apt Modul mit dem 11.4 Update einfach<br> &gt;&gt; durchgelaufen. Wird es also richtig gemacht haben.<br>
    &gt;&gt;<br>
    &gt; <br>
    &gt; Das ist ja interessant. Auf den ersten Blick sehe ich, dass in dem<br> &gt; Modul force-confdef und force-confold als Default gesetzt sind. Die<br> &gt; Kombination habe ich so auch direkt in Apt hinterlegt, das hat debconf so<br>
    &gt; aber w.g. nicht interessiert.<br>
    &gt; <br>
    &gt; Es gibt noch das ansible.builtin.debconf Modul, aber da sind kaum default<br>
    &gt; Werte vorgegeben. Hast du im apt/debconf Modul noch irgendwelche anderen<br>
    &gt; Werte definiert oder lief das so out-of-the-box durch?<br>

    Das lief out of the box. Meine Debian Updates mache ich seit längerem <br> (ausgenommen Release Upgrades) mit einem<br>

    ansible -m apt -a &#39;name=* state=latest&#39;<br>

    Die sshd_config wurde dabei nicht angefasst:<br>

    ls -l /etc/ssh/sshd_config*<br>
    -rw-r--r-- 1 root root  694 May 15 01:34 /etc/ssh/sshd_config<br>
    -rw-r--r-- 1 root root 3287 Aug 29  2021 /etc/ssh/sshd_config.ucf-dist<br> -rw-r--r-- 1 root root 2541 Aug 12  2016 /etc/ssh/sshd_config.ucf-old<br>

    Viele Grüße<br>
    Ulf<br>

    </blockquote></div>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Ulf Volmer@21:1/5 to Stefan Schumacher on Thu Jul 14 16:20:01 2022
    On 14.07.22 15:18, Stefan Schumacher wrote:

    wie machst du das denn mit den Dist-Upgrades? Es gibt zumindest in der Anleitung zum Modul eine entsprechende Option. Ich habe bis jetzt immer clusterssh benutzt weil man da mehr Kontrolle hat, aber es werden halt
    immer mehr mehr VMs. Ich hoffe das Upgrade auf Bookworm schon mit Ansible - erstmal mit einer kleinen Testmenge der VMs, dann mit dem Rest -
    durchführen zu können.

    Einen Releasewechsel auf ein neues Majorrelease würde ich immer so durchführen, wie es in den Releasenotes beschrieben ist.

    Das vorgeschlagene Verfahren mit dem ansible apt module nutze ich für
    normale Security Update und Point Releases.

    (und bitte keine Mail an mich, ich lese die Liste)

    Viele Grüße
    Ulf

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Ulf Volmer@21:1/5 to Alexander Reichle-Schmehl on Thu Jul 14 16:40:01 2022
    On 14.07.22 14:57, Alexander Reichle-Schmehl wrote:
    Am 2022-07-14 14:20, schrieb Ulf Volmer:

    ansible -m apt -a 'name=* state=latest'

    Beschäftige mich auch gerade mit dem Gedanken, Debian upgrades zu automatisieren, uns ansible haben wir auch schon im Einsatz.

    Was ich mich nur gerade frage ist, wie andere eventuell benötigte
    Neustarts von services / dem server handhaben.  Bisher - bei den
    händischen Upgrades - haben wir den needrestart hook in dpkg.

    Ich habe hier nur auf einer Maschine needrestart installiert, dort ist
    das Verhalten so, dass needrestart am Ende des Ansible Jobs auflistet,
    welche Services neu gestartet werden müssen.

    Das mache ich aber derzeit manuell.

    Viele Grüße
    Ulf

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)