Je sais que vous pouvez configurer un proxy dans Ansible pour provisionner derrière le réseau d'entreprise: https://docs.ansible.com/ansible/latest/user_guide/playbooks_environment. html
comme ceci:
package: name: package-name state: present
Malheureusement, dans mon cas, il n'y a aucun accès à Internet depuis le serveur. Télécharger les rôles localement et les placer dans le dossier / roles semble résoudre le problème de rôle, mais les rôles téléchargent toujours des packages à partir d'Internet lors de l'utilisation:
environment: http_proxy: http://proxy.example.com:8080
Je suppose qu'il n'y a aucun moyen de faire dry / pre run pour qu'Ansible télécharge tous les packages, puis poussez-les dans le dépôt et exécutez Ansible provision en utilisant des packages téléchargés localement?
3 Réponses :
Ce n'est pas vraiment une question à propos d'Ansible, car tout ce que fait Ansible est d'exécuter le système de gestion de paquets approprié sur l'hôte cible (c'est-à-dire yum, dnf ou apt ou autre). La question est donc de savoir quelle solution l’outil de gestion de paquet spécifique fournit, dans ce cas.
Il existe une variété de solutions et par exemple dans le monde Centos / RHEL, vous pouvez:
Il existe une autre classe d'outils généralement appelée référentiel d'artefacts. Celles-ci ont commencé comme des outils pour stocker des binaires construits à partir de code, mais ont ajouté un tas de fonctionnalités pour agir comme un proxy et des packages de cache à partir d'une grande variété de sources (packages OS, PIP, NodeJS, Docker, etc.). Deux exemples proposant des offres gratuites limitées:
Bien sûr, ils ont encore besoin de collecter ces paquets à partir d'une source, donc à un moment donné, ils devront être téléchargés pour être placés dans ces systèmes.
merci clockworknet, vous avez raison, qu'il est probablement plus lié aux outils de gestion des paquets
Comme clockworknet l'a souligné, cela est plus lié à la gestion des paquets RHEL. La configuration d'un miroir local quelque part à l'intérieur du réseau fermé peut fournir une solution dans cette situation. Plus d'informations sur "Comment créer un miroir local de la dernière mise à jour pour Red Hat Enterprise Linux 5, 6, 7 sans utiliser le serveur Satellite?": https://access.redhat.com/solutions/23016
Ma solution:
utilisez Ansible pour ajouter ces proxies via yum_repository https://docs.ansible.com/ansible/latest/modules/yum_repository_module. html
yum_repository: name: proxy-repo description: internal proxy repo baseurl: https://your-nexus.server/url-to-repo```
note: fait cela pour APT et fonctionne très bien, je m'attendrais à la même chose pour yum