Introdução
Este original descreve como criar arquivos do serviço para init.d ou Systemdfor o gestor de ativos EFM (módulo de processamento da névoa de borda).
Pré-requisitos
Requisitos
Cisco recomenda que você tem o conhecimento de Linux.
Este original não é restringido à versão de software e hardware específica.
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos usados neste original começaram com uma configuração cancelada (do padrão). Se sua rede está viva, assegure-se de que você compreenda o impacto potencial do comando any.
Configurar
O pacote da instalação EFM não contém arquivos do serviço para init.d ou Systemd fora da caixa.
Aqui você pode encontrar um exemplo simples para criar um arquivo do serviço para o componente do gestor de ativos de EFM.
Para init.d
[root@cen7 ~]# cat /etc/init.d/assetmanager
#!/bin/bash
# parstream init script.
ASSETMANAGER_HOME="/opt/cisco/kinetic/asset_manager/"
ASSETMANAGER_USER="EFM"
case "$1" in
'start')
echo "Starting EFM Asset Manager daemon as user $ASSETMANAGER_USER"
sleep 2
su -c "cd $ASSETMANAGER_HOME;$ASSETMANAGER_HOME/bin/start.sh" $ASSETMANAGER_USER
;;
'stop')
echo "Stopping EFM Asset Manager daemons for user $ASSETMANAGER_USER"
su -c "cd $ASSETMANAGER_HOME;$ASSETMANAGER_HOME/bin/stop.sh" $ASSETMANAGER_USER
;;
*)
# usage
echo "usage: $0 start|stop"
exit 1
;;
esac
Assegure-se de que você ajuste os variáveis de ambiente para combinar seu ambiente: ASSETMANAGER_HOME e ASSETMANAGER_USER.
Depois que o arquivo é criado, assegure-se de que esteja marcado como executável.
Para Systemd
[root@cen7 ~]# cat /etc/systemd/system/efm-assetmanager.service
[Unit]
Description=EFM Asset Manager
After=network.target
[Service]
Type=forking
User=EFM
WorkingDirectory=/opt/cisco/kinetic/asset_manager/
ExecStart=/opt/cisco/kinetic/asset_manager/bin/start.sh
ExecStop=/opt/cisco/kinetic/asset_manager/bin/stop.sh
[Install]
WantedBy=multi-user.target
Assegure-se de que você ajuste as variáveis da configuração para combinar seu ambiente: User=.
Depois que o arquivo do serviço é criado, assegure-se de que você atualize os arquivos do demônio no systemd:
[root@cen7 ~]# systemctl daemon-reload
Verificar
Para verificar se os scripts/o trabalho arquivo do serviço como esperado, você podem tentar começar e parar o serviço:
Para init.d
[root@cen7 ~]# /etc/init.d/assetmanager start
Starting EFM Asset Manager daemon as user EFM
[root@cen7 ~]# nohup: redirecting stderr to stdout
[root@cen7 ~]# /etc/init.d/assetmanager stop
Stopping EFM Asset Manager daemons for user EFM
Para Systemd
[root@cen7 ~]# systemctl start efm-assetmanager
[root@cen7 ~]#
[root@cen7 ~]# systemctl status efm-assetmanager
● efm-assetmanager.service - EFM Asset Manager
Loaded: loaded (/etc/systemd/system/efm-assetmanager.service; disabled; vendor preset: disabled)
Active: active (running) since Tue 2018-04-24 02:54:16 CEST; 5s ago
Process: 45098 ExecStop=/opt/cisco/kinetic/asset_manager/bin/stop.sh (code=exited, status=0/SUCCESS)
Process: 45235 ExecStart=/opt/cisco/kinetic/asset_manager/bin/start.sh (code=exited, status=0/SUCCESS)
Main PID: 45238 (java)
CGroup: /system.slice/efm-assetmanager.service
└─45238 java -classpath /opt/cisco/kinetic/asset_manager/lib/efm-servicelayer-1.5.0.12-fat.jar com.cisco.efm.application.ApplicationStarter
Apr 24 02:54:16 cen7 systemd[1]: Starting EFM Asset Manager...
Apr 24 02:54:16 cen7 systemd[1]: Started EFM Asset Manager.
[root@cen7 ~]#
[root@cen7 ~]# systemctl stop efm-assetmanager
Como você pode ver, os processos do gestor de ativos EFM obtêm começados sob o usuário que você definiu nos arquivos do serviço e tudo obtém limpado depois que se pede para parar os serviços.
Troubleshooting
Caso que você experimenta edições para começar, verifique estes:
- Parâmetros configurável no arquivo init.d ou de serviço de Systemd (usuário, trajetos)
- Para SystemD: A saída do efm-assetmanager do estado do systemctl
- A saída do journalctl --unit=efm-assetmanager