adding some rqlite vars

This commit is contained in:
afeiszli
2021-08-18 14:55:41 -04:00
parent 9d2962a171
commit f42f81243f
7 changed files with 57 additions and 44 deletions

View File

@@ -52,6 +52,7 @@ type ServerConfig struct {
DisableDefaultNet string `yaml:"disabledefaultnet"` DisableDefaultNet string `yaml:"disabledefaultnet"`
GRPCSSL string `yaml:"grpcssl"` GRPCSSL string `yaml:"grpcssl"`
Version string `yaml:"version"` Version string `yaml:"version"`
SQLConn string `yaml:"sqlconn"`
DefaultNodeLimit int32 `yaml:"defaultnodelimit"` DefaultNodeLimit int32 `yaml:"defaultnodelimit"`
Verbosity int32 `yaml:"verbosity"` Verbosity int32 `yaml:"verbosity"`
} }

View File

@@ -9,5 +9,6 @@ server:
agentbackend: "" # defaults to "on" or AGENT_BACKEND (if set) agentbackend: "" # defaults to "on" or AGENT_BACKEND (if set)
clientmode: "" # defaults to "on" or CLIENT_MODE (if set) clientmode: "" # defaults to "on" or CLIENT_MODE (if set)
dnsmode: "" # defaults to "on" or DNS_MODE (if set) dnsmode: "" # defaults to "on" or DNS_MODE (if set)
sqlconn: "" # defaults to "http://" or SQL_CONN (if set)
disableremoteipcheck: "" # defaults to "false" or DISABLE_REMOTE_IP_CHECK (if set) disableremoteipcheck: "" # defaults to "false" or DISABLE_REMOTE_IP_CHECK (if set)
version: "0.7.1" # version of server version: "0.7.1" # version of server

View File

@@ -3,7 +3,8 @@ package database
import ( import (
"encoding/json" "encoding/json"
"errors" "errors"
"log"
"github.com/gravitl/netmaker/servercfg"
"github.com/rqlite/gorqlite" "github.com/rqlite/gorqlite"
) )
@@ -25,7 +26,8 @@ var Database gorqlite.Connection
func InitializeDatabase() error { func InitializeDatabase() error {
conn, err := gorqlite.Open("http://") //log.Println("sql conn value:",servercfg.GetSQLConn())
conn, err := gorqlite.Open(servercfg.GetSQLConn())
if err != nil { if err != nil {
return err return err
} }

View File

@@ -20,11 +20,25 @@ func SetDNSDir() error {
} }
_, err = os.Stat(dir + "/config/dnsconfig") _, err = os.Stat(dir + "/config/dnsconfig")
if os.IsNotExist(err) { if os.IsNotExist(err) {
os.Mkdir(dir+"/config/dnsconfig", 744) os.Mkdir(dir+"/config/dnsconfig", 0744)
} else if err != nil { } else if err != nil {
PrintUserLog("","couldnt find or create /config/dnsconfig",0) PrintUserLog("","couldnt find or create /config/dnsconfig",0)
return err return err
} }
_, err = os.Stat(dir + "/config/dnsconfig/Corefile")
if os.IsNotExist(err) {
err = SetCorefile("example.com")
if err != nil {
PrintUserLog("",err.Error(),0)
}
}
_, err = os.Stat(dir + "/config/dnsconfig/netmaker.hosts")
if os.IsNotExist(err) {
_, err = os.Create(dir + "/config/dnsconfig/netmaker.hosts")
if err != nil {
PrintUserLog("",err.Error(),0)
}
}
return nil return nil
} }

View File

@@ -1,62 +1,56 @@
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: mongo name: rqlite
labels: labels:
name: mongo name: rqlite
spec: spec:
ports: ports:
- port: 27017 - port: 4001
targetPort: 27017 targetPort: 4001
clusterIP: None clusterIP: None
selector: selector:
role: mongo role: rqlite
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: StatefulSet kind: StatefulSet
metadata: metadata:
name: mongo name: rqlite
spec: spec:
serviceName: "mongo" serviceName: "rqlite"
replicas: 1 replicas: 1
selector: selector:
matchLabels: matchLabels:
role: mongo role: rqlite
template: template:
metadata: metadata:
labels: labels:
app: mongo app: rqlite
role: mongo role: rqlite
spec: spec:
containers: containers:
- name: mongo - name: rqlite
image: mongo image: rqlite/rqlite
env: ports:
- name: MONGO_INITDB_ROOT_USERNAME - containerPort: 4001
value: mongoadmin
- name: MONGO_INITDB_ROOT_PASSWORD
value: mongopass
securityContext:
privileged: true
volumeMounts: volumeMounts:
- name: mongovol - name: rqlitevol
mountPath: /data/db mountPath: /rqlite/file/data
volumes: volumes:
- name: mongovol - name: rqlitevol
persistentVolumeClaim: persistentVolumeClaim:
claimName: mongodb-pvc claimName: rqlite-pvc
--- ---
apiVersion: v1 apiVersion: v1
kind: PersistentVolumeClaim kind: PersistentVolumeClaim
metadata: metadata:
name: mongodb-pvc name: rqlite-pvc
spec: spec:
accessModes: accessModes:
- ReadWriteOnce - ReadWriteOnce
resources: resources:
requests: requests:
storage: 7Gi storage: 1Gi
storageClassName: microk8s-hostpath
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
@@ -89,6 +83,8 @@ spec:
value: "grpc.NETMAKER_BASE_DOMAIN:443" value: "grpc.NETMAKER_BASE_DOMAIN:443"
- name: COREDNS_ADDR - name: COREDNS_ADDR
value: "10.152.183.53" value: "10.152.183.53"
- name: SQL_CONN
value: "http://rqlite-0:4001"
- name: GRPC_SSL - name: GRPC_SSL
value: "on" value: "on"
- name: SERVER_HTTP_HOST - name: SERVER_HTTP_HOST
@@ -103,20 +99,10 @@ spec:
value: "off" value: "off"
- name: MASTER_KEY - name: MASTER_KEY
value: "Unkn0wn!" value: "Unkn0wn!"
- name: SERVER_GRPC_WIREGUARD
value: "off"
- name: MASTER_KEY - name: MASTER_KEY
value: "secretkey" value: "secretkey"
- name: CORS_ALLOWED_ORIGIN - name: CORS_ALLOWED_ORIGIN
value: "*" value: "*"
- name: MONGO_ADMIN
value: "mongoadmin"
- name: MONGO_PASS
value: "mongopass"
- name: MONGO_HOST
value: "mongo-0.mongo"
- name: MONGO_OPTS
value: "/?authSource=admin"
volumes: volumes:
- name: nm-pvc - name: nm-pvc
persistentVolumeClaim: persistentVolumeClaim:
@@ -132,7 +118,6 @@ spec:
resources: resources:
requests: requests:
storage: 128Mi storage: 128Mi
storageClassName: microk8s-hostpath
--- ---
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
@@ -288,7 +273,7 @@ metadata:
cert-manager.io/cluster-issuer: "letsencrypt-prod" cert-manager.io/cluster-issuer: "letsencrypt-prod"
nginx.ingress.kubernetes.io/ssl-redirect: 'true' nginx.ingress.kubernetes.io/ssl-redirect: 'true'
spec: spec:
ingressClassName: public ingressClassName: nginx
tls: tls:
- hosts: - hosts:
- api.NETMAKER_BASE_DOMAIN - api.NETMAKER_BASE_DOMAIN
@@ -314,7 +299,7 @@ metadata:
nginx.ingress.kubernetes.io/ssl-redirect: 'true' nginx.ingress.kubernetes.io/ssl-redirect: 'true'
nginx.ingress.kubernetes.io/backend-protocol: "GRPC" nginx.ingress.kubernetes.io/backend-protocol: "GRPC"
spec: spec:
ingressClassName: public ingressClassName: nginx
tls: tls:
- hosts: - hosts:
- grpc.NETMAKER_BASE_DOMAIN - grpc.NETMAKER_BASE_DOMAIN
@@ -340,7 +325,7 @@ metadata:
cert-manager.io/cluster-issuer: "letsencrypt-prod" cert-manager.io/cluster-issuer: "letsencrypt-prod"
nginx.ingress.kubernetes.io/ssl-redirect: 'true' nginx.ingress.kubernetes.io/ssl-redirect: 'true'
spec: spec:
ingressClassName: public ingressClassName: nginx
tls: tls:
- hosts: - hosts:
- dashboard.NETMAKER_BASE_DOMAIN - dashboard.NETMAKER_BASE_DOMAIN

View File

@@ -11,7 +11,6 @@ import (
"os/signal" "os/signal"
"strconv" "strconv"
"sync" "sync"
controller "github.com/gravitl/netmaker/controllers" controller "github.com/gravitl/netmaker/controllers"
"github.com/gravitl/netmaker/database" "github.com/gravitl/netmaker/database"
"github.com/gravitl/netmaker/functions" "github.com/gravitl/netmaker/functions"

View File

@@ -31,6 +31,7 @@ func GetServerConfig() config.ServerConfig {
cfg.AllowedOrigin = GetAllowedOrigin() cfg.AllowedOrigin = GetAllowedOrigin()
cfg.RestBackend = "off" cfg.RestBackend = "off"
cfg.Verbosity = GetVerbose() cfg.Verbosity = GetVerbose()
cfg.SQLConn = GetSQLConn()
if IsRestBackend() { if IsRestBackend() {
cfg.RestBackend = "on" cfg.RestBackend = "on"
} }
@@ -307,3 +308,13 @@ func GetVerbose() int32 {
} }
return int32(level) return int32(level)
} }
func GetSQLConn() string {
sqlconn := "http://"
if os.Getenv("SQL_CONN") != "" {
sqlconn = os.Getenv("SQL_CONN")
} else if config.Config.Server.SQLConn != "" {
sqlconn = config.Config.Server.SQLConn
}
return sqlconn
}