En tant qu’administrateur système, vous êtes chargé de surveiller ABBYY Vantage en permanence, de le gérer, de détecter toute erreur pouvant survenir lors du traitement de documents ainsi que d’en identifier les causes.
Vous pouvez surveiller ABBYY Vantage à l’aide des éléments suivants :
- Fichiers journaux de Vantage
- Le service Skill Monitor intégré, qui collecte des statistiques pour les Skills Vantage existants et fournit des informations détaillées sur les transactions terminées et en cours. Ce service vous permet également d’obtenir les informations sur les événements de transaction requises par le support technique.
- Des services tiers qui vous permettent de surveiller les processus internes de Vantage, de surveiller des workflows spécifiques, d’analyser les données collectées afin d’affiner et d’optimiser davantage le traitement de documents, ainsi que de collecter et d’analyser les journaux.
Lorsque vous contactez le support technique, en plus des informations sur les erreurs, vous pouvez également fournir la version du produit et de ses composants en procédant comme suit :
- Cliquez sur Help dans le volet de gauche, puis sur About, et sélectionnez Version details.
- Copiez les informations.
Les fichiers journaux créés lors du traitement des documents dans Vantage sont stockés localement sur les machines utilisées pour l’installation du produit.
Les journaux sont stockés comme suit : l’agent Fluent Bit s’exécutant sur tous les nœuds Kubernetes collecte les journaux des conteneurs et les envoie au service d’agrégation Fluentd. Par défaut, tous les journaux sont stockés sous forme de fichiers d’archive sur un volume persistant et sont accessibles via NFS. En complément, l’administrateur peut également envoyer les journaux vers le cluster Elasticsearch.
Pour accéder aux journaux de diagnostic :
- Si vous utilisez un serveur NFS externe ou un autre type de stockage externe, passez directement à l’étape 3.
- Pour une installation avec un serveur NFS dans le cluster (configuration par défaut pour Sans haute disponibilité), récupérez l’adresse IP du serveur NFS :
kubectl -n nfs get po -lapp.kubernetes.io/name=nfs-kernel-server -o jsonpath='{ .items[*].status.hostIP }'
- Accédez au partage :
- Pour NFS :
- Linux :
mount –t nfs <nfs server ip>:/ /opt/mount
- Windows : installez Client for NFS, ouvrez l’Explorateur de fichiers et accédez à
\\<nfs server ip>
- Pour les autres types de stockage externe : contactez votre administrateur système pour obtenir les instructions d’accès.
- Accédez au répertoire
\\<nfs server ip>\<sharename>\<env>\abbyy-monitoring\fluentd-pvc.
Fournir des journaux à l’assistance technique
Pour transmettre au support client ABBYY les journaux Vantage :
- Accédez au dossier des journaux. Les journaux sont stockés dans des sous-dossiers qui portent les mêmes noms que les espaces de noms du cluster Kubernetes. Les journaux Vantage se trouvent dans le dossier
abbyy-vantage.
- Copiez les fichiers correspondant à la période pendant laquelle le problème est survenu. Les journaux sont compressés au format gzip, avec des noms suivant le format
Y-M-DD-H (par exemple, 2022-12-09-0800.log.gz).
- Envoyez les fichiers à l’assistance technique ABBYY.
Elasticsearch et Kibana sont des outils permettant de rechercher, d’analyser et de visualiser des journaux. Elasticsearch et Kibana ne sont pas installés avec ABBYY Vantage et doivent être installés et configurés séparément. Cela peut être fait que le produit soit déjà installé ou non. Vous pouvez utiliser toute installation existante.
La procédure de configuration d’exemple ci-dessous a été simplifiée et est fournie uniquement à titre d’illustration.
Pour installer Elasticsearch et Kibana :
- Clonez le dépôt :
git clone https://github.com/elastic/cloud-on-k8s.git
cd cloud-on-k8s
git checkout 2.5
cd deploy/eck-operator
- Installez l’opérateur chargé de déployer les ressources :
helm -n elastic upgrade -i eck-operator . --create-namespace
- Créez un fichier nommé
elastic.yaml avec le contenu suivant :
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
name: elasticsearch
namespace: elastic
spec:
version: 8.5.1
nodeSets:
- config:
indices.fielddata.cache.size: 38%
xpack.ml.enabled: false
xpack.security.enabled: true
count: 1
name: default
podTemplate:
spec:
containers:
- name: elasticsearch
resources:
limits:
memory: 1Gi
cpu: '1'
requests:
cpu: '1'
memory: 1Gi
initContainers:
- command:
- sh
- '-c'
- sysctl -w vm.max_map_count=262144
name: sysctl
securityContext:
privileged: true
runAsUser: 0
nodeSelector:
kubernetes.io/os: linux
volumeClaimTemplates:
- metadata:
name: elasticsearch-data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 128Gi
- Créez un fichier nommé
kibana.yaml avec le contenu suivant :
apiVersion: kibana.k8s.elastic.co/v1
kind: Kibana
metadata:
name: kibana
namespace: elastic
spec:
version: 8.5.1
count: 1
elasticsearchRef:
name: elasticsearch
podTemplate:
spec:
containers:
- name: kibana
env:
- name: NODE_OPTIONS
value: "--max-old-space-size=2048"
resources:
requests:
memory: 512Mi
cpu: 0.5
limits:
memory: 1Gi
cpu: 1
nodeSelector:
kubernetes.io/os: linux
- Exécutez la commande suivante pour installer Elasticsearch :
kubectl -n elastic apply -f elastic.yaml
Vérifiez l’état du déploiement :
kubectl -n elastic get statefulset
- Exécutez la commande suivante pour installer Kibana :
kubectl -n elastic apply -f kibana.yaml
Vérifiez l’état du déploiement :
kubectl -n elastic get deployment
- Obtenir le mot de passe d’un utilisateur Elasticsearch :
kubectl -n elastic get secret elasticsearch-es-elastic-user -o go-template='{{.data.elastic | base64decode }}'
- Ajoutez les Parameter suivants à votre fichier
env_specific.yaml :
logging:
enabled: true
elasticsearch:
enabled: true
host: elasticsearch-es-http.elastic.svc.cluster.local
username: elastic
password: elastic_user_password
scheme: https
- Si vous installez Kibana après l’installation du produit, mettez à jour votre fichier
env_specific.yaml et exécutez la commande suivante :
ansible-playbook -i inventories/k8s playbooks/6-DeployMonitoring-k8s.yml
Grafana (utilisé conjointement avec Prometheus) est un outil de visualisation, de surveillance et d’analyse des données. Grafana n’est pas installé en même temps qu’ABBYY Vantage et doit être installé et configuré séparément. Vous pouvez utiliser n’importe quelle installation existante.
Grafana doit être installé dans le cluster, car Prometheus n’est disponible qu’à l’intérieur d’un cluster.
La procédure de configuration ci-dessous a été simplifiée et est fournie uniquement à titre d’illustration.
Pour installer Grafana :
- Créez un fichier nommé
grafana.yaml.
- Copiez et collez le code suivant dans le fichier, puis enregistrez-le :
persistence:
enabled: false
rbac:
create: true
namespaced: false
serviceAccount:
create: true
podLabels:
app.kubernetes.io/component: grafana
nodeSelector:
kubernetes.io/os: linux
adminUser: admin
adminPassword: password
plugins:
- grafana-piechart-panel
- flant-statusmap-panel
grafana.ini:
server:
root_url: "%(protocol)s://%(domain)s:%(http_port)s/grafana/"
enable_gzip: "true"
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: abbyy-nginx
nginx.ingress.kubernetes.io/rewrite-target: /$2
tls:
- secretName: platform-wildcard
hosts:
- {{ env }}.{{ domain }}
hosts:
- {{ env }}.{{ domain }}
path: "/grafana(/|$)(.*)"
sidecar:
dashboards:
enabled: true
label: grafana_dashboard
datasources:
datasources.yaml:
apiVersion: 1
datasources:
- name: Prometheus
editable: true
isDefault: true
jsonData:
timeInterval: 5s
tlsSkipVerify: true
type: prometheus
url: 'http://prometheus-scaling.abbyy-monitoring.svc.cluster.local:9090'
- editable: true
isDefault: true
jsonData:
timeInterval: 5s
tlsSkipVerify: true
name: Victoria
type: prometheus
url: 'http://victoria-metrics-abbyy.abbyy-monitoring.svc.cluster.local:8428'
Remplacez la valeur du Parameter host par le nom de domaine de votre cluster Vantage, puis modifiez le mot de passe de l’administrateur initial.
- Exécutez les commandes suivantes :
helm repo add grafana https://grafana.github.io/helm-charts
helm -n abbyy-monitoring upgrade -i grafana grafana/grafana -f grafana.yaml