Initial commit
This commit is contained in:
+229
@@ -0,0 +1,229 @@
|
||||
#SPDX-License-Identifier: MIT-0
|
||||
---
|
||||
# tasks file for ansible-role-monero
|
||||
- name: Create Monero namespace
|
||||
k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: monero
|
||||
|
||||
- name: Create PVC for Monero
|
||||
k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: data
|
||||
namespace: monero
|
||||
spec:
|
||||
storageClassName: r720-nfs-client
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 512Gi
|
||||
|
||||
- name: Create PVC for P2Pool
|
||||
k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: p2pool
|
||||
namespace: monero
|
||||
spec:
|
||||
storageClassName: r720-nfs-client
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 64Gi
|
||||
|
||||
- name: Request a certificate for Monero
|
||||
k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: monerotls
|
||||
namespace: monero
|
||||
spec:
|
||||
secretName: monerotls
|
||||
privateKey:
|
||||
algorithm: RSA
|
||||
encoding: PKCS1
|
||||
size: 2048
|
||||
duration: 2160h # 90d
|
||||
renewBefore: 360h # 15d
|
||||
isCA: false
|
||||
usages:
|
||||
- server auth
|
||||
- client auth
|
||||
subject:
|
||||
organizations:
|
||||
- EOM
|
||||
commonName: monerod.eom.dev
|
||||
dnsNames:
|
||||
- monerod.eom.dev
|
||||
issuerRef:
|
||||
name: ca-issuer
|
||||
kind: ClusterIssuer
|
||||
|
||||
- name: Request a certificate for p2pool
|
||||
k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: tls
|
||||
namespace: monero
|
||||
spec:
|
||||
secretName: tls
|
||||
privateKey:
|
||||
algorithm: RSA
|
||||
encoding: PKCS1
|
||||
size: 2048
|
||||
duration: 2160h # 90d
|
||||
renewBefore: 360h # 15d
|
||||
isCA: false
|
||||
usages:
|
||||
- server auth
|
||||
- client auth
|
||||
subject:
|
||||
organizations:
|
||||
- EOM
|
||||
commonName: p2pool.eom.dev
|
||||
dnsNames:
|
||||
- p2pool.eom.dev
|
||||
issuerRef:
|
||||
name: ca-issuer
|
||||
kind: ClusterIssuer
|
||||
|
||||
- name: Edit Deployment for Monerod
|
||||
k8s:
|
||||
definition:
|
||||
apiVersion: v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: monerod
|
||||
namespace: monero
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: monerod
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: monerod
|
||||
spec:
|
||||
containers:
|
||||
- name: monerod
|
||||
image: ericomeehan/monerod:latest
|
||||
imagePullPolicy: Always
|
||||
command:
|
||||
- monerod
|
||||
args:
|
||||
- "--p2p-bind-ip=0.0.0.0"
|
||||
- "--p2p-bind-port=18080"
|
||||
- "--rpc-bind-ip=0.0.0.0"
|
||||
- "--rpc-bind-port=18081"
|
||||
- "--restricted-rpc"
|
||||
- "--rpc-login={{ monerod_user }}:{{ monerod_password }}"
|
||||
- "--data-dir=/data"
|
||||
- "--zmq-pub=tcp://127.0.0.1:18083"
|
||||
- "--rpc-ssl=enabled"
|
||||
- "--rpc-ssl-private-key=/etc/letsencrypt/tls.key"
|
||||
- "--rpc-ssl-certificate=/etc/letsencrypt/tls.crt"
|
||||
- "--non-interactive"
|
||||
- "--no-igd"
|
||||
- "--confirm-external-bind"
|
||||
- "--bootstrap-daemon-address=auto"
|
||||
resources:
|
||||
requests:
|
||||
memory: 2Gi
|
||||
ports:
|
||||
- containerPort: 18080
|
||||
- containerPort: 18081
|
||||
- containerPort: 18083
|
||||
volumeMounts:
|
||||
- name: monerod
|
||||
mountPath: /data
|
||||
- name: monerotls
|
||||
mountPath: /etc/letsencrypt
|
||||
- name: p2pool
|
||||
image: ericomeehan/p2pool:latest
|
||||
imagePullPolicy: IfNotPresent
|
||||
command:
|
||||
- p2pool
|
||||
args:
|
||||
- "--host"
|
||||
- "127.0.0.1"
|
||||
- "--rpc-port"
|
||||
- "18081"
|
||||
- "--wallet"
|
||||
- "{{ monero_p2pool_wallet_address }}"
|
||||
- "--stratum"
|
||||
- "0.0.0.0:3333"
|
||||
- "--p2p"
|
||||
- "0.0.0.0:37889"
|
||||
- "--addpeers"
|
||||
- "65.21.227.114:37889"
|
||||
- "--tls-cert"
|
||||
- "/etc/letsencrypt/tls.crt"
|
||||
- "--tls-cert-key"
|
||||
- "/etc/letsencrypt/tls.key"
|
||||
- "--rpc-ssl"
|
||||
ports:
|
||||
- containerPort: 3333
|
||||
- containerPort: 37889
|
||||
volumeMounts:
|
||||
- name: p2pool
|
||||
mountPath: /home/p2pool
|
||||
- name: tls
|
||||
mountPath: /etc/letsencrypt
|
||||
volumes:
|
||||
- name: monerod
|
||||
persistentVolumeClaim:
|
||||
claimName: data
|
||||
- name: p2pool
|
||||
persistentVolumeClaim:
|
||||
claimName: p2pool
|
||||
- name: monerotls
|
||||
secret:
|
||||
secretName: monerotls
|
||||
- name: tls
|
||||
secret:
|
||||
secretName: tls
|
||||
|
||||
- name: Create Service for Monero
|
||||
k8s:
|
||||
definition:
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: monerod
|
||||
namespace: monero
|
||||
spec:
|
||||
selector:
|
||||
app: monerod
|
||||
ports:
|
||||
- port: 18080
|
||||
name: p2p
|
||||
- port: 18081
|
||||
name: rpc
|
||||
- port: 18083
|
||||
name: zmq
|
||||
- port: 3333
|
||||
name: mine
|
||||
- port: 37889
|
||||
name: p2poolp2p
|
||||
type: LoadBalancer
|
||||
|
||||
Reference in New Issue
Block a user