해피 사용 | OpenWeave 
 해피 사용 
 사용 - h 어떤 플래그 를 happy -* 해당 명령 에 대한 옵션 의 도움 말 및 목록 을 보 려면 명령 . 
 조심 스럽 게 해피 저장 하 고 는 단일 레코드 와 JSON 파일 의 토폴로지 상태 를 유지 한다 . 이 상태 파일 을 사용 하 여 , 행복 만들 거나 토폴로지 를 제거 할 수 있 는 적절 한 명령 을 실행 할 수 있 습니다 . 
 기본 상태 파일 에 있 습니다 ~/. happy _ state . json . 기본 상태 이름 은 happy 에서 볼 수 있 듯이 , happy - state 출력 : 
 병렬 상태 
 해피 지원 하 는 다수 의 공존 평행 상태 . 현재 의 상태 에 의해 결정 된다 HAPPY _ STATE _ ID 환경 변수 . 경우 HAPPY _ STATE _ ID 환경 에 존재 하 지 않 는 , 기본 상태 값 happy 사용 됩니다 . 
 HAPPY _ STATE _ ID 해피 를 설치 하 는 동안 만들 어 지 지 않 습니다 . 이외 의 값 을 하나 생성 state 를 즉시 또 다른 해피 상태 로 전환 할 수 있 습니다 . 
 이제 체크 happy - state 는 다른 상태 에서 결과 를 : 
 평행 상태 로 제거 
 병렬 해피 상태 를 사용 하 고 행복 을 제거 할 경우 , 실행 해야 합니다 happy - state - delete 활성 각각 의 상태 를 . 이것 은 리눅스 호스트 의 네트워크 구성 에 영향 을 주 지 않 고 시스템 에서 제거 하 는 해피 만든 모든 네트워크 네임 스페이스 를 보장 합니다 . 
 예 를 들 어 , 두 가지 상태 를 가진 happy 과 sunny : 
 필요 에 따라 수동 으로 각 병렬 상태 파일 을 제거 합니다 
 해피 로그 를 보 려면 , 실행 happy - state - l 별도 의 터미널 창 에서 합니다 . 당신 이 행복 명령 을 입력 하 면 로그 는 쉘 이 백 그라운드 에서 해피 문제 를 명령 을 보여 줍니다 . 이것 은 당신 이 리눅스 네트워크 네임 스페이스 에 관심 이 있 다면 행복 , 어떻게 작동 하 는지 이해 하 는 좋 은 방법 입니다 . 
 예 를 들 어 , happy - node - add node 00 행복 한 노드 를 작성 합니다 . 이 명령 의 로그 출력 은 다음 과 같 습니다 
 모든 Driver : CallCmd ( ) 라인 이 행복 호출 하 는 쉘 명령 입니다 . 로그 의 각 줄 을 고려 : 
 샘플 토폴로지 
 샘플 토폴로지 는 테스트 를 위한 해피 와 OpenWeave 저 장소 모두 에 포함 되 어 있 습니다 . 또한 복잡 한 토폴로지 를 구성 하 는 명령 을 배울 를 사용 합니다 . 
 행복 : / topologies 
 OpenWeave : / src / test - apps / happy / topologies / standalone 
 토폴로지 는 JSON 과 쉘 스크립트 형식 으로 되 어 있 습니다 . 
 JSON 토폴로지 파일 은 사용 하 여 로드 happy - state - load 또는 weave - state - load 명령 을 . 토폴로지 는 직물 을 포함 하 는 경우 , 당신 은 사용 해야 합니다 weave - state - load 달리 위 브 특정 명령 을 건너 뛰 고 , 토폴로지 를 로드 할 수 있 습니다 . 
 예 를 들 어 , 위 브 없 는 토폴로지 : 
 위 브 와 토폴로지 : 
 나중 에 사용 하 기 위해 별도 의 JSON 파일 로 현재 토폴로지 를 저장 하 려면 ( 예 를 들 어 , 테스트 케이스 스크립트 ) 를 사용 happy - shell - s : 
 이것 은 의 토폴로지 상태 파일 저장 $ HOME 디렉 토리 를 . 
 쉘 스크립트 토폴로지 파일 해피 세트 를 포함 하 고 위 브 해당 JSON 파일 의 토폴로지 를 생성 하 는 명령 . 기본 적 으로 이 스크립트 는 실행 권한 이 없 습니다 . 그 들 은 두 가지 방법 으로 실행 할 수 있 습니다 : 
 사용 하 여 bash 명령 을 : 
 실행 권한 을 적용 하 여 : 
 행복 세 개 의 구성 파일 이 있 습니다 : 
 ~/. happy _ conf . json 개인 또는 플러그인 사용 에 대한 구성 변수 . 사용 하 여 이 값 을 설정 happy - configuration 명령 을 사용 합니다 . 
 < path - to - happy > / happy / conf / main _ config . json 차 해피 구성 변수 . 
 < path - to - happy > / happy / conf / log _ config . json 로그인 구성 . 
 구성 변수 를 추가 
 우리 는 당신 이 사용 하 는 것 이 좋 습니다 happy - configuration 해피 의 특정 배포 가 필요 로 하 는 기본 값 이상 으로 개인 또는 플러그인 변수 를 설정 하 는 명령 을 사용 합니다 . 
 예 를 들 어 , 행복 직조 어디 서 찾 을 수 있 는지 알려 test - apps 설정 , 테스트 스크립트 에 대한 디렉 토리 를 weave _ path 변수 를 : 
 해피 저장 변수 구성 ~/. happy _ conf . json . 
 노드 에서 프로세스 
 행복 시뮬레이션 노드 에서 시작 하 는 명령 및 정지 프로세스 를 제공 합니다 . 
 프로세스 를 시작 하 려면 : 
 예 를 들 어 , 지속 적 라는 이름 의 노드 에 ThreadNode 에서 핑 을 실행 합니다 : 
 위 의 예 에서 ContinuousPing 행복 프로세스 를 관리 하 기 위해 사용 하 는 방법 에 대해 사용 자 정의 된 이름 이 다 . 사용 happy - process - wait 프로세스 실행 및 중단 happy - process - stop 프로세스 를 종료 할 수 있 습니다 . 
 프로세스 출력 에 / tmp . 예 를 들 어 , ContinuousPing 프로세스 를 시작 한 후 , 확인 / tmp 디렉 토리 를 : 
 이 . out 파일 은 ContinuousPing 프로세스 의 출력 을 포함 하 고 있 습니다 . 
 의 사용 sudo 
 행복 리눅스 커널 에 의해 제어 되 는 네트워크 구성 을 변경 합니다 . 단지 때문 에 root 커널 구성 을 변경 할 수 있 습니다 , 행복 당신 이 입력 하 라는 메시지 를 sudo 작동 중 에 암호 를 . 
 행복 은 사용 $ SUDO 호출 에 시스템 환경 변수 sudo . 경우 $ SUDO 정의 되 지 않 은 , 행복 정상 적 인 하 게 sudo 전화 를 . 
 설치 후 , 해피 파이썬 패키지 는 다음 과 같 은 사용 하 여 파이썬 환경 으로 가져올 수 있 는 import 문 을 : 
 에 있 는 개별 명령 모듈 / happy 다음 과 같이 가져올 수 있 습니다 : 
 모듈 옵션 을 검색 하 려면 통화 option ( ) 함수 를 . 예 를 들 어 , 검색 할 HappyNodeAdd 모듈 옵션 :