kpng
[EOL] Reworking kube-proxy's architecture
파일 탐색기
최종 버전 다운로드 (.zip)- backend-build.yml
- docker-action.yml
- e2e_tests.yaml
- local-up-kpng.yaml
- unit_tests.yml
- vet-code.yml
- ISSUE_TEMPLATE.md
- OWNERS
- PULL_REQUEST_TEMPLATE.md
- api.pb.go
- api.proto
- api_grpc.pb.go
- endpoint-conditions.go
- api.pb.go
- api.proto
- api_grpc.pb.go
- endpoint-scopes.go
- endpoint.go
- endpoint_test.go
- ipset.go
- ipset_test.go
- opsink.go
- port-mapping.go
- protocol.go
- service-ips.go
- service.go
- service_test.go
- go.mod
- go.sum
- cgroup_connect4.c
- LICENSE.BSD-2-Clause
- LICENSE.GPL-2.0
- install-libbpf.sh
- .gitignore
- bpf_bpfeb.go
- bpf_bpfeb.o
- bpf_bpfel.go
- bpf_bpfel.o
- ebpf.go
- go.mod
- go.sum
- Makefile
- README.md
- register.go
- types.go
- go.mod
- go.sum
- healthchecks.go
- register.go
- iptables.go
- iptables_linux.go
- iptables_save_restore.go
- utils.go
- chain_utils.go
- chains.go
- endpoints.go
- endpointsCache.go
- generic_utils.go
- go.mod
- go.sum
- iptables.go
- metrics.go
- network.go
- port.go
- README.md
- register.go
- service.go
- sink.go
- traffic.go
- types.go
- util_endpoints.go
- entry.go
- ipset.go
- ipset_util.go
- manager.go
- runner.go
- setup.go
- types.go
- manager.go
- templates.go
- types.go
- destination.go
- manager.go
- setup.go
- types.go
- util.go
- virtual_server.go
- common.go
- controller.go
- flags.go
- go.mod
- go.sum
- handle_clusterip_service.go
- handle_loadbalancer_service.go
- handle_nodeport_service.go
- ipset_definitions.go
- ipset_entry_builder.go
- iptable_rules.go
- README.md
- register.go
- setup.go
- types.go
- dnat-rule.go
- endpoint.go
- go.mod
- go.sum
- nft.go
- nftable.go
- register.go
- render-context.go
- render-context_test.go
- svc-chain.go
- svc-chain_test.go
- system-checks.go
- vmap.go
- writer.go
- go.mod
- go.sum
- loadbalancer.go
- port_allocator.go
- proxysocket.go
- register.go
- rlimit.go
- roundrobin.go
- service.go
- service_change_tracker.go
- sink.go
- userspace_iptables_util.go
- userspace_proxier.go
- userspace_util.go
- .gitignore
- build.sh
- config.go
- cross-compile.sh
- dualstack.go
- endpoints.go
- go.mod
- go.sum
- hcnutils.go
- metrics.go
- OWNERS
- proxier.go
- proxier_events.go
- README.md
- service.go
- sink.go
- types.go
- util.go
- backend.go
- go.mod
- go.sum
- legacy_types.go
- legacy_utils.go
- loadbalancer.go
- netsh.go
- proxier.go
- proxysocket.go
- README.md
- roundrobin.go
- roundrobin_test.go
- service.go
- OWNERS
- OWNERS
- backendcmd.go
- any-leaf.go
- any-leaf_test.go
- buffer-leaf.go
- buffer-leaf_test.go
- diffstore.go
- diffstore_test.go
- item.go
- json-leaf.go
- json-leaf_test.go
- print.go
- diff-store.go
- diff-store_test.go
- kv.go
- decoder.go
- sink.go
- filterreset.go
- fullstatepipe.go
- fullstatepipe_test.go
- fullstate.go
- fullstate_test.go
- kv.go
- kv_test.go
- localsink.go
- conntrack.go
- conntrack_linux.go
- conntrack_test.go
- flow.go
- ip_port.go
- sink.go
- diff.go
- ip-kind.go
- ipkind_string.go
- service-events.go
- service-events_test.go
- traffic_policy_kind.go
- wrap.go
- wrap_test.go
- tlsflags.go
- client.go
- flag_test.go
- go.mod
- go.sum
- kv.go
- run.go
- command_builder.go
- README.md
- storecmds_darwin.go
- storecmds_linux.go
- storecmds_windows.go
- a2s.go
- f2s.go
- k2s.go
- local.go
- main.go
- uniq.go
- version.go
- main.go
- main.go
- go.mod
- go.sum
- arch-try-2.dia
- arch-try-2.png
- arch-try-2.svg
- arch.dia
- arch.svg
- grafana-kpng.png
- metrics.md
- prometheus-kpng.png
- proposal.md
- service-proxy.md
- test-run.1k-svc.svg
- test-run.kind-empty.svg
- go.mod
- go.sum
- main.go
- main.go
- main.go
- kpng-example-app.yaml
- kpng-example-proxy.yaml
- kpng-example-allip
- kpng-example-start
- Dockerfile
- go.mod
- go.sum
- Makefile
- README.md
- go.mod
- go.sum
- main.go
- backend.go
- backend_linux.go
- go.mod
- go.sum
- main.go
- proxy-tcp.go
- service.go
- helpers.go
- qos.go
- helpers.go
- annotation_key_constants.go
- doc.go
- json.go
- objectreference.go
- register.go
- resource.go
- taint.go
- toleration.go
- types.go
- zz_generated.deepcopy.go
- kube_features.go
- fake.go
- endpoints.go
- network.go
- utils.go
- bounded_frequency_runner.go
- runner.go
- go.mod
- go.sum
- README.md
- Dockerfile
- entrypoint.sh
- kpng.json
- kubernetes.json
- nginx-ingress.json
- datasource.yaml
- deploy.sh
- grafana-values.yaml
- metrics-server.yaml
- nginx-values.yaml
- README.md
- deploy.sh
- README.md
- setup.sh
- tilt.env.example
- Tiltfile
- .gitignore
- common.sh
- curl.deployment.yaml
- dev-docker
- e2e_export_logs.sh
- go-list-local-mods
- go-test-local-mods
- kind.yaml
- kpng-deployment-ds-template.txt
- kpng-ds-yaml-gen.go
- kpng-local-up.sh
- kpng-service-monitor.yaml
- kubeconfig.conf
- OWNERS
- prometheus.yml
- protoc-gen
- README.md
- resolve_all_mod_files.sh
- setup_node_nft_masq
- setup_sonobuoy.sh
- test_backend_build.sh
- test_e2e.sh
- test_skip_list.sh
- test_sonobuoy.sh
- test_unit.sh
- update-gofmt.sh
- utils.sh
- verify-gofmt.sh
- main.go
- api2local.go
- api2store.go
- file2store.go
- event-handlers.go
- globs.go
- kube2store.go
- node-event-handler.go
- service-event-handler.go
- service-event-handler_test.go
- slice-event-handler.go
- store2api.go
- store2diff.go
- store2file.go
- store2globaldiff.go
- store2localdiff.go
- README.md
- apiwatch.go
- node.go
- node_test.go
- k8swatch.go
- metrics.go
- proxy.go
- server.go
- endpoints.go
- server.go
- global.go
- server.go
- watchstate.go
- server.go
- server_notwin.go
- server_windows.go
- kv.go
- proxystore.go
- proxystore_test.go
- serde.go
- serde_test.go
- doc.go
- go.mod
- go.sum
- .dockerignore
- .gitignore
- boilerplate.txt
- code-of-conduct.md
- config.yaml
- CONTRIBUTING.md
- cpu-mem.gnuplot
- Dockerfile
- Dockerfile.static
- global-state.yaml
- go-mod-tidy-all
- go.work
- go.work.sum
- LICENSE
- Makefile
- modd.conf.template
- netns-test
- OWNERS
- plot.sh
- proposal.md
- README.md
- RELEASE.md
- SECURITY.md
- SECURITY_CONTACTS
# 설치 가이드
1. 코드 내려받기
git clone https://github.com/kubernetes-retired/kpng
깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.
cd kpng
방금 내려받은 프로젝트 폴더 안으로 이동합니다.
2. Docker
쉬움 추천사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- Docker Desktop 컨테이너를 빌드하고 실행하려면 필요합니다. 설치 후 실행해서 백그라운드에 켜두세요.
docker build -t kpng .
Dockerfile을 기반으로 실행 가능한 이미지를 빌드합니다.
docker run -p 8080:80 kpng
빌드된 이미지를 실제 컨테이너로 실행합니다.
터미널에 docker compose ps 를 입력해 컨테이너들이 Up 상태인지 확인하세요. README에 포트 번호가 적혀있다면 브라우저에서 http://localhost:포트번호 로 접속해보세요.
3. Go
보통cd api
이 프로젝트의 관련 파일이 하위 폴더 안에 있어서, 먼저 그 폴더로 이동합니다.
go build ./...
Go 프로그램을 컴파일해 실행 파일을 만듭니다.
go run .
따로 빌드하지 않고 바로 Go 프로그램을 실행합니다.
빌드가 에러 없이 끝나면 성공입니다. go run . 을 썼다면 터미널 출력을 확인하세요.
4. Make
보통사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- Make Linux/macOS는 보통 기본 설치되어 있습니다. Windows는 별도 설치(예: MSYS2, WSL)가 필요합니다.
make
생성된 빌드 설정을 바탕으로 실제 컴파일을 진행해 실행 파일을 만듭니다.
에러 없이 끝나면 성공입니다. 생성된 실행 파일을 직접 실행해보세요.
// repository documentation
Was this content helpful?
(0 ratings)
