This document provides step-by-step instructions for creating and configuring the SGNL On-Premises Connector using the SGNL Console.
This section provides step-by-step instructions for deploying the On-Premises Connector as a Kubernetes Deployment, pulling the image from Azure Container Registry (ACR).
Create a custom image of the Connector by using a docker multi-stage build. This is optional and not required for the default deployment, but it allows you to customize the Connector image if needed.
For example, you can create a Dockerfile with the following content:
FROM sgnlop.azurecr.io/connector:1.1.0 AS sgnl-image
FROM example.company.com/company/custom-base-image:latest
COPY --from=sgnl-image /sgnl/connector /sgnl/connector
Note that if using a custom image, modify the following steps accordingly to use your custom image instead of the default one.
Create a Kubernetes pull secret using your ACR credentials for SGNL’s sgnlop-azurecr.io container registry.
kubectl create secret -n sgnl docker-registry sgnl-acr-secret \
--docker-server=sgnlop.azurecr.io \
--docker-username="<ACR_USERNAME>" \
--docker-password="<ACR_TOKEN>"
apiVersion: v1
kind: ConfigMap
metadata:
name: connector-config
namespace: sgnl
data:
SGNL_CONNECTOR_SERVER_URL: "<subdomain-prefix>.sgnlapis.cloud"
SGNL_CONNECTOR_CLIENT_ID: "your-client-id"
SGNL_CONNECTOR_CONNECTOR_ID: "your-connector-id"
apiVersion: v1
kind: Secret
metadata:
name: connector-secret
namespace: sgnl
type: Opaque
stringData:
SGNL_CONNECTOR_AUTH_TOKEN: "your-connector-auth-token"
Create a file named sgnl-connector-deployment.yaml with the following content:
apiVersion: apps/v1
kind: Deployment
metadata:
name: connector
namespace: sgnl
labels:
app: connector
spec:
replicas: 1
selector:
matchLabels:
app: connector
template:
metadata:
labels:
app: connector
spec:
containers:
- name: connector
image: sgnlop.azurecr.io/connector:1.1.0
imagePullPolicy: IfNotPresent
resources:
limits:
memory: "256Mi"
cpu: 200m
requests:
memory: "128Mi"
cpu: 50m
securityContext:
allowPrivilegeEscalation: false
runAsGroup: 65532
runAsNonRoot: true
runAsUser: 65532
envFrom:
- configMapRef:
name: connector-config
- secretRef:
name: connector-secret
imagePullSecrets:
- name: sgnl-acr-secret
restartPolicy: Always
nodeSelector:
kubernetes.io/os: linux
Apply the YAML to your cluster:
kubectl apply -f sgnl-connector-deployment.yaml
This will create a Deployment with 1 pod running the Connector container.
Check the status of your Deployment and pods:
kubectl get deployment connector -n sgnl
kubectl get pods -l app=connector -n sgnl
You should see 1 pod running.
After deploying the Connector, it will register itself with the SGNL platform. Once registration is complete and the connector is active, you can configure Systems of Record (SoR) from their respective settings pages to use the OnPremises Connector for data synchronization.