Massenhafte Bereitstellung

Dieser Abschnitt enthält eine Übersicht über die massenhafte Bereitstellung von ESET Endpoint Antivirus for Linux mit Puppet, Chef und Ansible. Die folgenden Codeblocks enthalten lediglich einfache Beispiele für die Installation der Pakete und müssen je nach Linux-Distribution angepasst werden.

Paketauswahl

Bevor Sie mit der massenhaften Bereitstellung von ESET Endpoint Antivirus for Linux beginnen, müssen Sie entscheiden, welches Paket Sie verwenden möchten. ESET Endpoint Antivirus for Linux wird als .bin-Paket verteilt. Sie können jedoch das deb/rpm-Paket abrufen indem Sie das ESET-Distributionsskript mit dem Befehlszeilenargument „-n“ ausführen.

 

Puppet

Voraussetzungen

bin- oder deb/rpm-Paket auf puppet-master verfügbar

puppet-agent ist mit puppet-master verbunden

Bin-Paket

Bereitstellungsschritte:

Kopieren Sie das Installationspaket auf die gewünschten Computer.

Führen Sie das bin-Installationspaket aus.

 

example

Beispiel für Puppet-Manifest

node default {

    file {"/tmp/eea-7.0.1081.0.x86_64.bin":

           mode => "0700",

           owner => "root",

           group => "root",

           source => "puppet:///modules/eea/eea-7.0.1081.0.x86_64.bin"

         }

    exec {"Execute bin package installation":

           command => '/tmp/eea-7.0.1081.0.x86_64.bin -y -f'

         }

}

 

Deb/rpm package

Bereitstellungsschritte:

Kopieren Sie das deb/rpm-Installationspaket für die passende Distributionsfamilie auf die gewünschten Computer.

Führen Sie das deb/rpm-Installationspaket aus.

note

Abhängigkeiten

Abhängigkeiten müssen vor der Installation aufgelöst werden.

 

example

Beispiel für Puppet-Manifest

node default {

if $osfamily == 'Debian' {

        file {"/tmp/eea-7.0.1081.0.x86_64.deb":

               mode => "0700",

               owner => "root",

               group => "root",

               source => "puppet:///modules/eea/eea-7.0.1081.0.x86_64.deb"

             }

        package {"eea":

               ensure => "installed",

               provider => 'dpkg',

               source => "/tmp/eea-7.0.1081.0.x86_64.deb"

             }

 }

if $osfamily == 'RedHat' {

        file {"/tmp/eea-7.0.1081.0.x86_64.rpm":

               mode => "0700",

               owner => "root",

               group => "root",

               source => "puppet:///modules/eea/eea-7.0.1081.0.x86_64.rpm"

             }

        package {"eea":

               ensure => "installed",

               provider => 'rpm',

               source => "/tmp/eea-7.0.1081.0.x86_64.rpm"

             }

 }

}

 

Chef

Voraussetzungen

bin- oder deb/rpm-Paket auf Chef-Server verfügbar

Chef-Client ist mit Chef-Server verbunden

Bin-Paket

Bereitstellungsschritte:

Kopieren Sie das Installationspaket auf die gewünschten Computer.

Führen Sie das bin-Installationspaket aus.

 

example

Beispiel für Chef-Recipe

cookbook_file '/tmp/eea-7.0.1084.0.x86_64.bin' do

        source 'eea-7.0.1084.0.x86_64.bin'

        owner 'root'

        group 'root'

        mode '0700'

        action :create

end

 

execute 'package_install' do

        command '/tmp/eea-7.0.1084.0.x86_64.bin -y -f'

end

 

Deb/rpm package

Bereitstellungsschritte:

Kopieren Sie das deb/rpm-Installationspaket für die passende Distributionsfamilie auf die gewünschten Computer.

Führen Sie das deb/rpm-Installationspaket aus.

note

Abhängigkeiten

Abhängigkeiten müssen vor der Installation aufgelöst werden.

 

example

Beispiel für Chef-Recipe

cookbook_file '/tmp/eea-7.0.1084.0.x86_64.deb' do

        source 'eea-7.0.1084.0.x86_64.deb'

        owner 'root'

        group 'root'

        mode '0700'

        action :create

        only_if { node['platform_family'] == 'debian'}

end

 

cookbook_file '/tmp/eea-7.0.1084.0.x86_64.rpm' do

                source 'eea-7.0.1084.0.x86_64.rpm'

                owner 'root'

                group 'root'

                mode '0700'

                action :create

                only_if { node['platform_family'] == 'rhel'}

 

dpkg_package 'eea' do

        source '/tmp/eea-7.0.1084.0.x86_64.deb'

        action :install

        only_if { node['platform_family'] == 'debian'}

end

 

rpm_package 'eea' do

        source '/tmp/eea-7.0.1084.0.x86_64.rpm'

        action :install

        only_if { node['platform_family'] == 'rhel'}

end

 

Ansible

Voraussetzungen

bin- oder deb/rpm-Paket auf Ansible-Server verfügbar

ssh-Zugriff auf Zielcomputer

Bin-Paket

Bereitstellungsschritte:

Kopieren Sie das Installationspaket auf die gewünschten Computer.

Führen Sie das bin-Installationspaket aus.

 

example

Beispiel für Playbook-Task

....

- name: "INSTALL: Copy configuration json files"

  kopieren:

    src: eea-7.0.1084.0.x86_64.bin

    dest: /home/ansible/

 

- name : "Install product bin package"

  shell: bash ./eea-7.0.1084.0.x86_64.bin -y -f -g

.....

 

Deb/rpm package

Bereitstellungsschritte:

Kopieren Sie das deb/rpm-Installationspaket für die passende Distributionsfamilie auf die gewünschten Computer.

Führen Sie das deb/rpm-Installationspaket aus.

 

example

Beispiel für Playbook-Task

....

      - name: "Copy deb package to VM"

        kopieren:

          src: ./eea-7.0.1085.0.x86_64.deb

          dest: /home/ansible/eea-7.0.1085.0.x86_64.deb

          owner: ansible

          mode: a+r

        when:

          - ansible_os_family == "Debian"

 

      - name: "Copy rom package to VM"

        kopieren:

          src: ./eea-7.0.1085.0.x86_64.rpm

          dest: /home/ansible/eea-7.0.1085.0.x86_64.rpm

          owner: ansible

          mode: a+r

        when:

          - ansible_os_family == "RedHat"

 

      - name: "Install deb package"

        apt:

          deb: /home/ansible/eea-7.0.1085.0.x86_64.deb

          state: present

        when:

          - ansible_os_family == "Debian"

 

      - name: "Install rpm package"

        apt:

          deb: /home/ansible/eea-7.0.1085.0.x86_64.rpm

          state: present

        when:

          - ansible_os_family == "RedHat"

....