728x90
상황
아래와 같이 nomad에서 job 생성 시 consul을 이용하여, sidecar 붙일 경우
connect {
sidecar_service {}
}
다른 설정 잘 했다고 생각했는데, 아래와 같이 사이드카 프록시를 명령어?가 없다고 생성이 안된다고 나온다.
에러 발생
Task hook failed: envoy_bootstrap: error creating bootstrap configuration for Connect proxy sidecar: exec: "consul": executable file not found in $PATH; see: <https://www.nomadproject.io/s/envoy-bootstrap-error>
생각 중..
실제 장비에서 nomad와 consul를 version 확인해보니 아무문제가 없다.
심지어 $PATH도 consul PATH가 등록되어 있다. (.bash_profile도 있고..)
원인 발견
실제 nomad에서 consul을 서비스에서 실행할때 PATH가 없을 수 있겠다.
조치
nomad 서비스 등록파일에 consul을 찾을 수 있도록 PATH 설정을 하면 된다.
vim /etc/systemd/system/nomad.service
Environment="PATH=/usr/local:/opt/bin:/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/infra/bin"
consul 바이너리가 있는 bin 경로를 PATH 추가해준다.!!
다시 테스트 : 잘 됩니다 ^^
반응형