{"id":30047581,"url":"https://github.com/tmax-cloud/install-networkwebhook","last_synced_at":"2025-08-07T09:56:38.301Z","repository":{"id":52149991,"uuid":"321610178","full_name":"tmax-cloud/install-networkwebhook","owner":"tmax-cloud","description":null,"archived":false,"fork":false,"pushed_at":"2023-06-08T01:18:09.000Z","size":36,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"hypercloud-5.1","last_synced_at":"2025-04-19T10:10:08.750Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tmax-cloud.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-12-15T09:01:11.000Z","updated_at":"2023-01-31T18:38:46.000Z","dependencies_parsed_at":"2023-02-09T15:02:16.269Z","dependency_job_id":null,"html_url":"https://github.com/tmax-cloud/install-networkwebhook","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tmax-cloud/install-networkwebhook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmax-cloud%2Finstall-networkwebhook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmax-cloud%2Finstall-networkwebhook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmax-cloud%2Finstall-networkwebhook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmax-cloud%2Finstall-networkwebhook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tmax-cloud","download_url":"https://codeload.github.com/tmax-cloud/install-networkwebhook/tar.gz/refs/heads/hypercloud-5.1","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmax-cloud%2Finstall-networkwebhook/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269236777,"owners_count":24383241,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-07T02:00:09.698Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-07T09:56:32.639Z","updated_at":"2025-08-07T09:56:38.276Z","avatar_url":"https://github.com/tmax-cloud.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Network Webhook version 0.1.5 설치 가이드\n\n## Prerequisites\n1. [Hypernet-Local-Agent](https://github.com/tmax-cloud/install-networkagent)\n    * Network Webhook이 동작하기 위해, hypernet-local-agent-system namespace가 생성되어있어야 합니다.\n\n## 폐쇄망 설치 가이드\n설치를 진행하기 전 아래의 과정을 통해 필요한 이미지 및 yaml 파일을 준비한다.\n1. **폐쇄망에서 설치하는 경우** 사용하는 image repository에 Agent 설치 시 필요한 이미지를 push한다.     \n    * 작업 디렉토리 생성 및 환경 설정\n    ```bash\n    $ export NETWORK_HOOK_VERSION=0.1.5\n    ```\n\n    * 외부 네트워크 통신이 가능한 환경에서 필요한 이미지를 다운받는다.\n    ```bash\n    $ sudo docker pull tmaxcloudck/network-hook:${NETWORK_HOOK_VERSION}\n    $ sudo docker save tmaxcloudck/network-hook:${NETWORK_HOOK_VERSION} \u003e network-hook_${NETWORK_HOOK_VERSION}.tar\n    ```\n\n2. 위의 과정에서 생성한 tar 파일들을 폐쇄망 환경으로 이동시킨 뒤 사용하려는 registry에 이미지를 push한다.\n    ```bash\n    $ sudo docker load \u003c network-hook_${NETWORK_HOOK_VERSION}.tar\n    $ sudo docker tag tmaxcloudck/network-hook:${NETWORK_HOOK_VERSION} ${REGISTRY}/tmaxcloudck/network-hook:${NETWORK_HOOK_VERSION}   \n    $ sudo docker push ${REGISTRY}/tmaxcloudck/network-hook:${NETWORK_HOOK_VERSION}  \n    ```\n    \n## Install Steps\n1. [TLS 통신을 위한 Certificate와 Key 생성](#step1 \"step1\")\n2. [Network-hook 설치](#step2 \"step2\")\n3. [Network-hook 설치 확인](#step3 \"step3\")\n\n\u003ch2 id=\"step1\"\u003e\nStep 1. TLS 통신을 위한 Certificate와 key 생성\n\u003c/h2\u003e\n\n* 목적 : `TLS 통신을 위한 Certificate와 key 생성 및 network-hook.yaml에 해당 정보 반영`\n* 생성 순서 : \n    * CSR 인증 및 cert/key secret으로 생성\n        * Webhook Server 와 API Server간 TLS 통신을 위해 Kubernetes CSR을 이용하여 Cert와 Key 생성\n            * Cert와 key를 secret으로 생성\n            * network-hook.yaml의 \u003cCA_BUNDLE\u003e 값을 자동으로 반영\n\t    * patch.sh가 있는 디렉토리로 이동한 후, 스크립트를 실행하여 적용\n            * network-hook.yaml을 patch.sh와 반드시 같은 디렉토리에 위치시켜야 함\n            ```bash\n\t            ./patch.sh\n            ```\n            \n            * 스크립트가 정상적으로 실행되면, 다음 메시지가 출력됨\n            ```bash\n                INFO: patch script has executed successfully               \n            ```\n\n\t    \n\u003ch2 id=\"step2\"\u003e\nStep 2. Network-hook 설치\n\u003c/h2\u003e\n\n* 목적 : `Network-hook 설치`\n* 생성 순서 : \n    * Network-hook 설치\n\t    ```bash\n\t        kubectl apply -f network-hook.yaml\n\t    ```\n* 로그 레벨 조정 :\n    * containers 하위에 command 및 args 추가로 로그 레벨 조정 가능\n        ```bash\n\t    ...\n\t    command: [\"/network-hook\"]\n            args: [\"-v=0\"]\n        ```\n    * v=0 or 1로 조절할 수 있으며, 낮을 수록 로그의 양이 줄어듦.\n\t\n\u003ch2 id=\"step3\"\u003e\nStep 3. Network-hook 설치 확인\n\u003c/h2\u003e\n\n* 목적 : `Network-hook 설치 확인`\n* 순서 :\n    * kubectl get deployment -n hypernet-local-agent-system\n    ```bash\n        NAME                      READY   UP-TO-DATE   AVAILABLE   AGE\n        network-hook-deployment   1/1     1            1           17h\n    ```\n    * network-hook-deployment가 생성되고, READY가 1/1인지 확인\n\n    * kubectl get service -n hypernet-local-agent-system\n    ```bash\n        NAME               TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE\n        network-hook-svc   ClusterIP   10.109.163.35   \u003cnone\u003e        443/TCP   17h\n    ```\n    * network-hook-svc가 생성되었는지 확인\n\n    * kubectl get mutatingwebhookconfiguration\n    ```bash\n        NAME                       WEBHOOKS   AGE\n        network-hook-webhook-cfg   1          17h\n    ```\n    * network-hook-webhook-cfg가 생성되었는지 확인\n    \n## 인증서 갱신\n* Install Step의 step1, step2를 실행 후 Network-hook deployment rollout restart 실행\n```bash\n$  kubectl rollout restart deployment network-hook-deployment -n hypernet-local-agent-system \n```\n## 삭제 가이드\n* 목적: `Network webhook 삭제`\n* 삭제 순서: network-hook yaml 삭제 적용 `kubectl delete -f network-hook.yaml`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmax-cloud%2Finstall-networkwebhook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftmax-cloud%2Finstall-networkwebhook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmax-cloud%2Finstall-networkwebhook/lists"}