Iniciando o HHVM automaticamente na inicialização do servidor Amazon Linux

3

Estou tendo problemas para iniciar o hhvm quando minha instância do Amazon Linux (que é aparentemente muito semelhante ao Centos) EC2 é iniciada. Quando eu reinicio o servidor, o hhvm não aparece, e não há nada nos logs de erro. Quando eu uso

sudo service hhvm start

surge bem. Parar / reiniciar funciona bem também. Quando tento executar o seguinte como ec2-user

service hhvm start

Eu recebo esses erros

[ec2-user@ip-x ~]$ service hhvm start
Starting hhvm: [Fri Jan  8 22:35:13 2016] [hphp] [2451:7fe8751566c0:0:000001] [] Cannot open log file: /var/log/hhvm/error.log [  OK  ]
touch: cannot touch ‘/var/lock/subsys/hhvm’: Permission denied

Eu deletei meu /var/log/hhvm/error.log e reiniciei o servidor. Não havia nada no log de erros.

Como pano de fundo, instalei o hhvm usando 'yum install nginx' do repositório amazon. Estou usando o /etc/init.d/hhvm que foi instalado pelo yum.

Quando o hhvm está rodando depois de ser iniciado pelo root eu recebo isso do ps -ef | grep hhvm

[root@ip-x init.d]# service hhvm restart
Stopping hhvm:                                             [  OK  ]
Starting hhvm:                                             [  OK  ]
[root@ip-x init.d]# ps -ef | grep hhvm
tim       2555     1  3 22:41 ?        00:00:00 hhvm --config /etc/hhvm/server.ini -d pid=/var/run/hhvm.pid --user tim --mode daemon
root      2560  2458  0 22:42 pts/0    00:00:00 grep --color=auto hhvm

O nginx vem bem, com seu próprio arquivo de configuração. O pacote hhvm é hhvm-3.6.6-1.amzn1.x86_64.

Alguma ideia? Alguma informação que alguém possa me dar? Eu entendo o script de inicialização é executado como root, mas começa como o usuário especificado - no meu caso "tim". "tim" é um membro do grupo raiz, o que fiz recentemente para tentar corrigir o problema.

Eu refiro esta pergunta , que é para o Ubuntu. Eu tentei, mas não funcionou.

Aqui está o arquivo de inicialização em /etc/init.d/hhvm

    
por Tim 08.01.2016 / 23:47

2 respostas

2

Parece que a resposta é

/sbin/chkconfig --add hhvm
    
por 09.01.2016 / 02:54
1

Para o CentOS 7, se o seu serviço for compatível com SysV, então (como você descobriu) use chkconfig , se for um serviço systemd nativo, use systemctl enable .

    
por 09.01.2016 / 07:49