2013-10-22 3 views
0

Windows 등록 서비스 Windows 등록 서비스를 사용하여 Windows NT 서비스를 등록합니다. installAnywhere를 사용하는 서비스 작업.installAnywhere를 사용하여 LINUX에서 서비스 등록하는 방법

리눅스에서도 마찬가지입니다. Linux 환경에서 서비스 등록을 원했으나 관련 조치를 찾지 못했습니다.

installAnywhere를 사용하여 Linux에 서비스를 등록 하시겠습니까?

답변

0

유닉스/리눅스 세계에서 "표준"시작 프로세스에 가장 가까운 것은 AT&T System V init (위키피디아) 방식입니다. 이 "표준"은 AT & T의 System V에서 수년 전에 작성되었으며, 그 변형은 가장 일반적인 유닉스 및 리눅스 변형에서 구현되었습니다.

이 접근법은 실행 수준에 따라 /etc 디렉토리 아래에 링크를 만드는 것을 포함합니다. 일부 배포판은 원래 AT & T System V 접근 방식보다 약간 다른 접근 방식을 취했습니다 (위에서 언급 한 문서 참조).

지난 몇 년 동안 이것은 더 까다로운 제안이되었습니다. 유닉스와 리눅스 배포판에는 SysV init을 포기하는 경향이 있습니다 (위에서 언급 한 기사 참조).

InstallAnywhere에는 "Unix System Service 작성"작업이 없습니다. 따라서, 설치 엔지니어는 자신의 것을 굴러 떨어 뜨립니다. Unix/Linux 플랫폼을 하나만 타겟팅하는 경우 스크립트, 구성 파일 작성 및 설치 및 배포를위한 표준 접근 방식 (예 : systemd, Upstart, launchd, SMF 등)을 만드는 링크는 비교적 쉽습니다. . 우리는 일괄 처리 또는 쉘 스크립트 작업에 포함 된 스크립트에서 대부분의 작업을 수행합니다.

다른 플랫폼을 대상으로하는 경우 설치시 현재 실행중인 플랫폼 및 경우에 따라 어떤 버전의 플랫폼을 결정해야합니다. 그런 다음 현재 플랫폼에 맞는 적절한 설치 단계를 실행해야합니다.

우리는 지원하는 플랫폼에 필요한 단계를 캡슐화하는 플랫폼 별 규칙이 적용된 그룹 작업을 만들어이 작업을 수행합니다. 마지막으로 우리는 "표준"AT & T SysV 접근 방식을 기본으로하며, 스크립트를 설치하고 지원되는 실행 수준에서 애플리케이션을 시작하는 데 필요한 링크를 생성합니다.

또한이 주제와 관련하여 Unix/Linux 시스템 서비스를 작성하는 부담을 덜어주는 프레임 워크를 사용합니다. 여기에는 Java Service Wrapper, Yet Another Java Service Wrapper, Apache Commons Daemon 등이 포함됩니다. InstallAnywhere 외부에서 스크립트를 작동 및 테스트 한 다음 설치 중에 시스템 서비스를 구성하는 데 필요한 InstallAnywhere Group Actions 및 Execute Batch 또는 Shell Script Actions를 작성하는 것이 좋습니다. 지루한 과정이지만 각 플랫폼을 InstallAnywhere 외부에서 작동하게하면 InstallAnywhere 내부에서 해당 플랫폼을 구현하면 장기간에 걸쳐 시간을 절약 할 수 있습니다. 단점이라면 일단 구성하고 작동 시키면 설치 프로그램의이 부분을 잠시 동안 변경하지 않아도됩니다.

우리가 고려하고 있지만 아직 이동하지 않은 또 다른 접근법은 우리에게 힘든 일을하는 최상위 스크립트 하나를 사용하는 것입니다. 우리는 플랫폼 이름에 연결된 표준 명명 규칙과 디렉토리 구조를 채택 할 것입니다. 설치하는 동안 지원되는 모든 플랫폼에 대해 설치 스크립트의 전체 디렉토리 구조를 복사합니다. 이 구조의 맨 위에는 현재 플랫폼을 스니핑하고 해당 플랫폼에 적절한 스크립트를 실행하는 방법을 알고있는 단일 스크립트가 있습니다.사용자가 응용 프로그램을 시스템 서비스로 사용하도록 선택하면 설치 중에이 스크립트를 실행합니다. 설치가 끝나면 설치 스크립트 디렉토리가 삭제됩니다.

이렇게하면 설치 프로그램의 복잡성이 줄어들고 설치 프로그램을 변경하지 않고도 더 많은 플랫폼에 대한 지원을 추가 할 수 있습니다. 여러 플랫폼을 지원하는 경우이 방법으로 시작할 수 있습니다. 장래에 더 많은 플랫폼에 대한 지원을 추가 할 예정이라면 장기간에 걸쳐 시간을 절약 할 수 있습니다.

관련 문제