victormorenojimenez / tfg2020 Goto Github PK
View Code? Open in Web Editor NEWFinal Degree Project ETSIIT Granada
License: GNU General Public License v3.0
Final Degree Project ETSIIT Granada
License: GNU General Public License v3.0
Infrastructure is code, and code needs to be tested. You need to create clear and straightforward user stories, but most important, you should test them.
You can unit test ansible modules, but you might want to add other kind of integration tests by running scripts or any other kind of things in instances once they've been provisioned.
Also, add CI to this repository.
Simplemente crea una regla fácil para que se genere.
When running a simple copy from src to dest, Permisson Error.
fatal: [tfg2.intelligenia.com]: FAILED! => {"changed": false, "msg": "failed to copy: /etc/letsencrypt/live/tfg2.intelligenia.com/fullchain.pem to /etc/pve/local/pve-ssl.pem", "traceback": "Traceback (most recent call last):\n File "/tmp/ansible_copy_payload_4gcjahrs/ansible_copy_payload.zip/ansible/modules/files/copy.py", line 659, in main\n File "/usr/lib/python3.7/shutil.py", line 207, in copystat\n lookup("chmod")(dst, mode, follow_symlinks=follow)\nPermissionError: [Errno 1] Operation not permitted: b'/etc/pve/local/tmp_bi4rw8e'\n"}
Executed manual no errors
Code
- name: Copy fullchain.pem to proxmox folder
copy:
src: /etc/letsencrypt/archive/{{ servername }}/fullchain1.pem
dest: /etc/pve/local/pve-ssl.pem
local_follow: False
remote_src: yes
Workaround:
Execute copy command with shell module.
- name: Copy fullchain.pem to proxmox folder
shell: |
cp /etc/letsencrypt/archive/"{{ servername }}"/fullchain1.pem /etc/pve/local/pve-ssl.pem
cp /etc/letsencrypt/archive/"{{ servername }}"/privkey1.pem /etc/pve/local/pve-ssl.key
cp /etc/letsencrypt/archive/"{{ servername }}"/chain1.pem /etc/pve/pve-root-ca.pem
Maybe can improve copy using Ansible module.
When creating the backup storage on configure_bare_metal playbook, specify the content
Ningún artefacto generado, en general.
Latex Doc, Section 2.5
Subir la plantilla oficial de la UGR para redacatar la documentación del TFG
You need a task runner with all tasks specified so that everything can be launched from a single command such as invoke.
On playbook install_proxmox_server, on Role Proxmox on task add_to_cluster if you try to add the node with --use_ssh flag and a link address it throws an unexpected error.
Tracking the issue on Proxmox: https://forum.proxmox.com/threads/adding-node-via-pvecm-fails-due-to-schema-failure.69882/
When creating the Proxmox cluster, after the playbook we need to create thin and backup storages.
On task manage_users proxmox var is usted just to change password to root user. Create proxmox as a list of users to create on it's realm.
This is not working properly on some scenarios. Replace from:
name: /etc/foo/"{{ user }}"
to
name: "/etc/foo/{{ user }}"
It seems like the DHCP configuration doesn'ta apply till manually restart the DHCP server on pfsense interface:
https://tfg-pfsense-01.intelligenia.com:8443/services_dhcp.php
If this doesn't work, execute dhclient -r and dhclient on Proxmox VMs.
If the restored backup doens't have interfaces configureds won't work.
Add option to restore pfsense with 0 configuration and create the interfaces on proxmox configuration file /etc/pve/qemu-server/*.conf.
In order to ssh-copy-id to create the Proxmox cluster, we need ssh root access.
On file /etc/ssh/sshd_config add line PermitRootLogin yes
We need passwordless ssh access between the proxmox hosts.
In order to do that, once the ssh keys are created we need to copy to the different hosts.
Add task on playbook configure_bare_metal that activates ip forwarding.
https://www.ducea.com/2006/08/01/how-to-enable-ip-forwarding-in-linux/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.