[PYTHON] Mettre le suffixe 2.11 dans la source avec ansible

Tâche

Selon les [Notes de publication officielles] de postfix (http://www.postfix.org/announcements.html)

Postfix stable release 2.11.0 is available. This release ends support for Postfix 2.7.

je vois

Vérifions les packages par défaut et remi.

Paquet par défaut CentOS 6.4

$ postconf  | grep mail_version
mail_version = 2.6.6

remi

remi


$ yum install postfix --enablerepo=remi

Package         Arch                   Version                         Repository       Size
=========================================================================================================
Updating:
postfix        x86_64                   2:2.6.6-6.el6_5                updates          2.0 M

C'est 2.6.6 alors installez 2.11.0 dans la source

Que veux-tu faire

  1. Installez les packages dépendants
  2. Puisque ansible est utilisé, copiez le wget source à l'avance sur le serveur pour maintenir l'égalité.
  3. Rendre la source [Problèmes restants: décrits plus loin]
  4. Créez un utilisateur postfix
  5. Placez le fichier de configuration
  6. Placement du script de démarrage
  7. Démarrez postfix

Placement des fichiers

.
├── files
│   ├── main.cf
│   ├── postfix
│   └── postfix-2.11.0.tar.gz
├── handlers
│   
├── tasks
│   └── main.yml
├── templates
│   
└── vars
    └── main.yml

vars/main.yml


postfix_file: postfix-2.11.0

task/main.yml


      #arrêter le suffixe
      - name: "Operation | be sure postfix is stopped"
        service: name=postfix state=stopped

      #Supprimer le suffixe préinstallé
      - name: "Remove | pre installed postfix"
        yum: name="postfix" state=absent

      #Installez les packages requis
      - name: "Install | dependent package"
        yum: name={{ item }} state=installed enablerepo=remi
        with_items:
         - db4*-devel
         - mysql
         - mysql-devel
         - pcre-devel
         - cyrus-sasl-devel
         - openldap-devel

      #Installer postfix dans la source
      - name: "Install | put postfix src file"
        copy: src=roles/postfix/files/{{ postfix_file }}.tar.gz dest=/usr/local/src

      - name: "Install | unpack postfix src [need 'make install' at the remote server]"
        shell: cd /usr/local/src; tar zxvf {{ postfix_file }}.tar.gz; cd {{ postfix_file }}; make

      #Installer postfix sous forme de package
      - name: "Install | postfix package [Don't need to install this when did from src]"
        yum: name=postfix state=installed enablerepo=remi

      #Ajout de l'utilisateur postfix
      - name: "Setup | add postfix user and group"
        user: name=postfix system=yes createhome=no home=/var/spool/postfix shell=/sbin/nologin

      #Configurer la configuration de postfix
      - name: "Setup | put postfix conf"
        copy: src=roles/postfix/files/main.cf dest=/etc/postfix mode=644

      #installation du fichier de démarrage postfix
      - name: "Setup | put postfix init file"
        copy: src=roles/postfix/files/postfix dest=/etc/init.d mode=755

      # (Installer par inadvertance/usr/local/Définir un lien symbolique (parce que je l'ai fait sbin)
      - name: "Setup | create symlink"
        file: src=/usr/local/sbin/{{ item }} dest=/usr/sbin/{{ item }} state=link
        with_items:
          - postconf
          - postlog
          - postalias
          - postcat
          - postdrop
          - postkick
          - postlock
          - postmap
          - postmulti
          - postqueue
          - postsuper

      #Démarrage de Postfix, paramètres de démarrage automatique
      - name: "Setup | be sure postfix is running and enabled"
        service: name=postfix state=running enabled=yes

Les défis restants

La plupart d'entre eux sont terminés en faisant make et make install après avoir extrait le source, mais quand make install avec postfix, la console demande le répertoire d'installation, etc. avec CUI.

Par conséquent, si vous essayez de le faire avec l'ansible ci-dessus, le processus ne se poursuivra pas indéfiniment en attendant l'entrée. Je veux savoir quoi faire dans un tel cas (car il semble être utilisable dans un autre cas). .. ..

Résumé

Je n'ai pas beaucoup de configurations de cluster pour les serveurs de messagerie, donc pour l'instant, j'ai fait l'installation sur chaque serveur, mais je veux aussi en profiter.

Recommended Posts

Mettre le suffixe 2.11 dans la source avec ansible
Installez Python à partir des sources avec Ansible
Mettre TensorFlow dans une instance P2 avec pip3
Mettez les polices japonaises dans les images avec Colaboratory
Affichez les journaux d'une manière facile à comprendre avec Ansible
Mettez matplotlib dans Centos7.
Utiliser ansible avec cygwin
Mettez scipy dans ec2
Complétez la bibliothèque mise en anaconda avec jedi-vim
Mettez les Jedi dans Emacs 24
Mettez les données AWS dans Google Spreadsheet avec boto + gspread
Mettez le pip dans le mélangeur
Grattage au sélénium en Python
Grattage avec chromedriver en python
Débogage avec pdb en Python
Installer ansible à partir du code source
Gérer les sons en Python
Grattage avec du sélénium en Python
Grattage avec Tor en Python
Tweet avec image en Python
Combiné avec ordinal en Python
Formater la source du langage C avec pycparser
Mettez logger dans un package pip open source et analysez l'opération
Pour utiliser python, mettez pyenv sur macOS avec PyCall
C> opération de chaîne> Implémentation à mettre dans char [] avec le chiffre spécifié