Try export blocks
This commit is contained in:
parent
5018e93e19
commit
1c523a260d
|
@ -1,11 +1,11 @@
|
||||||
---
|
---
|
||||||
poa_role: "bootnode|validator|moc|explorer|netstat"
|
poa_role: "bootnode|validator|moc|explorer|netstat"
|
||||||
|
|
||||||
#AWS Key
|
#For Backups
|
||||||
access_key: "KEY_NAME"
|
access_key: "KEY_NAME"
|
||||||
secret_key: "KEY_SECRET"
|
secret_key: "KEY_SECRET"
|
||||||
|
|
||||||
s3_bucket: "BUCKET_NAME"
|
s3_bucket: "BUCKET_NAME"
|
||||||
|
node_name: "NODE_NAME"
|
||||||
|
|
||||||
#For HFs
|
#For HFs
|
||||||
MAIN_REPO_FETCH: "poanetwork"
|
MAIN_REPO_FETCH: "poanetwork"
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
---
|
||||||
|
# bootnode | moc | validator | explorer | netstat
|
||||||
|
poa_role: "moc"
|
||||||
|
|
||||||
|
# backup modes
|
||||||
|
backup_parity_data: true
|
||||||
|
backup_parity_blocks: true
|
||||||
|
|
||||||
|
# AWS
|
||||||
|
access_key: "KEY_NAME"
|
||||||
|
secret_key: "KEY_SECRET"
|
||||||
|
s3_bucket: "BUCKET_NAME"
|
||||||
|
node_name: "NODE_NAME"
|
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
# bootnode | moc | validator | explorer | netstat
|
||||||
|
poa_role: "moc"
|
||||||
|
|
||||||
|
# repo to fetch HFs from
|
||||||
|
MAIN_REPO_FETCH: "poanetwork"
|
||||||
|
GENESIS_BRANCH: "master"
|
|
@ -1,37 +1,76 @@
|
||||||
---
|
---
|
||||||
|
# initial checks
|
||||||
|
- name: Check that the netstats service is installed
|
||||||
|
stat:
|
||||||
|
path: /etc/systemd/system/poa-netstats.service
|
||||||
|
register: netstats_service_file
|
||||||
|
|
||||||
|
- name: Check that parity is running
|
||||||
|
shell: "systemctl is-active poa-parity"
|
||||||
|
register: parity_service_active
|
||||||
|
|
||||||
|
# stop services
|
||||||
- name: Shutdown poa-netstats service
|
- name: Shutdown poa-netstats service
|
||||||
service: name=poa-netstats state=stopped
|
service: name=poa-netstats state=stopped
|
||||||
|
when: netstats_service_file.stat.exists
|
||||||
|
|
||||||
- name: Shutdown poa-parity service
|
- name: Shutdown poa-parity service
|
||||||
service: name=poa-parity state=stopped
|
service: name=poa-parity state=stopped
|
||||||
|
|
||||||
|
# make backups
|
||||||
- name: Create backup directory
|
- name: Create backup directory
|
||||||
file: path=/data state=directory
|
file: path=/data state=directory
|
||||||
|
|
||||||
- name: Create blockchain archive
|
- name: Create parity_data archive
|
||||||
archive:
|
archive:
|
||||||
format: gz
|
format: gz
|
||||||
path: /home/{{ poa_role }}/parity_data
|
path: /home/{{ poa_role }}/parity_data
|
||||||
dest: "/data/parity_data.tar.gz"
|
dest: "/data/parity_data.tar.gz"
|
||||||
|
when: backup_parity_data == true
|
||||||
|
|
||||||
- name: Upload to s3
|
- name: Export parity blocks
|
||||||
|
shell: "cd /home/{{ poa_role }}; ./parity --config node.toml export blocks blocks.rlp"
|
||||||
|
when: backup_parity_blocks == true
|
||||||
|
|
||||||
|
- name: Create parity blocks archive
|
||||||
|
archive:
|
||||||
|
format: gz
|
||||||
|
path: /home/{{ poa_role }}/blocks.rlp
|
||||||
|
dest: "/data/parity_blocks.rlp.gz"
|
||||||
|
when: backup_parity_blocks == true
|
||||||
|
|
||||||
|
# start services
|
||||||
|
- name: Launch poa-parity service
|
||||||
|
service: name=poa-parity state=started
|
||||||
|
when: parity_service_active == "active"
|
||||||
|
|
||||||
|
- name: Launch poa-netstats service
|
||||||
|
service: name=poa-netstats state=started
|
||||||
|
when: netstats_service_file.stat.exists
|
||||||
|
|
||||||
|
# upload backups to s3
|
||||||
|
- name: Upload parity_data to s3
|
||||||
s3:
|
s3:
|
||||||
aws_access_key: "{{ access_key }}"
|
aws_access_key: "{{ access_key }}"
|
||||||
aws_secret_key: "{{ secret_key }}"
|
aws_secret_key: "{{ secret_key }}"
|
||||||
bucket: "{{ s3_bucket }}"
|
bucket: "{{ s3_bucket }}"
|
||||||
object: "/parity_data-{{ date }}.tar.gz"
|
object: "/{{ date }}-{{ poa_role }}-{{ node_name }}-parity_data.tar.gz"
|
||||||
src: "/data/parity_data.tar.gz"
|
src: "/data/parity_data.tar.gz"
|
||||||
mode: put
|
mode: put
|
||||||
ignore_errors: yes
|
when: backup_parity_data == true
|
||||||
|
|
||||||
|
- name: Upload parity blocks to s3
|
||||||
|
s3:
|
||||||
|
aws_access_key: "{{ access_key }}"
|
||||||
|
aws_secret_key: "{{ secret_key }}"
|
||||||
|
bucket: "{{ s3_bucket }}"
|
||||||
|
object: "/{{ date }}-{{ poa_role }}-{{ node_name }}-parity_blocks.rlp.gz"
|
||||||
|
src: "/data/parity_blocks.rlp.gz"
|
||||||
|
mode: put
|
||||||
|
when: backup_parity_blocks == true
|
||||||
|
|
||||||
|
# Cleanup
|
||||||
- name: Clean local backup storage
|
- name: Clean local backup storage
|
||||||
file:
|
file:
|
||||||
state: absent
|
state: absent
|
||||||
path: "/data/"
|
path: "/data/"
|
||||||
|
|
||||||
- name: Launch poa-parity service
|
|
||||||
service: name=poa-parity state=started
|
|
||||||
|
|
||||||
- name: Launch poa-netstats service
|
|
||||||
service: name=poa-netstats state=started
|
|
||||||
|
|
||||||
|
|
2
site.yml
2
site.yml
|
@ -10,7 +10,7 @@
|
||||||
vars:
|
vars:
|
||||||
date: "{{ lookup('pipe', 'date -u +%Y%m%d-%H%M%S') }}"
|
date: "{{ lookup('pipe', 'date -u +%Y%m%d-%H%M%S') }}"
|
||||||
home: "/home/{{ poa_role }}"
|
home: "/home/{{ poa_role }}"
|
||||||
user: root
|
user: ubuntu
|
||||||
become: true
|
become: true
|
||||||
become_user: root
|
become_user: root
|
||||||
roles:
|
roles:
|
||||||
|
|
Loading…
Reference in New Issue