Skip to content

환경변수 정리 #22

@singsangssong

Description

@singsangssong

🔍 Description

  • 현재까지 구현된 arcus-cli의 환경변수를 점검하고, 이를 어떻게 개선하면 좋을지에 관해서 검토하고자 합니다. 검토하는 내용은 아래와 같습니다.
    • 환경변수 목록 정리, 환경변수로 받는 것이 적절한지 검토
    • 환경변수 관련 가이드 작성
    • 환경변수와 구동인자 구분 기준 명확히 정리
    • viper 라이브러리 사용 여부

⏰ Implementation Idea

현재까지 사용하는 환경변수 목록

ZK_ADDR
- zookeeper의 단일 주소
- ex: "10.0.0.1:2181"
ZK_LIST
- zookeeper 앙상블을 이루고있는 주소 리스트
- ex: ZK_LIST="10.0.0.1:2181,10.0.0.2:2181,10.0.0.3:2181"
ZK_PATH
- 원격 장비에 있는 zookeeper 경로
- ex: /Users/songseognhun/arcus/zookeeper
ARCUS_PATH
- 원격 장비에 있는 arcus 경로 
- ex:  /Users/songseognhun/arcus
  • 아래 두 PR에서 사용하는 모든 환경변수 목록과 각 환경변수의 의미, 그 예시를 작성했습니다.
  • 이때, ZooKeeper 앙상블 모두에게 myid와 zoo.cfg파일을 생성하면서, ZK_ADDRZK_LIST로 분할하기보다는 ZK_LIST로 통일하는 것이 좋아보입니다.
    • 의미표현상, 하나 혹은 여러 ZK주소를 받을 수 있다면 ZK_LIST가 가장 적절해보입니다.
    • ContextWithZkConn()에서도 여러 ZK주소에 connection을 맺기에 ZK_LIST라는 표현의 의미가 더 적절해보입니다.
      -그 외 경로를 가리키는 명령어는 여러 명령에서 사용할 여지가 있어보이므로, 계속 환경변수로 두어도 좋을 것 같습니다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions