{"id":38408860,"url":"https://github.com/hichtakk/nsxctl","last_synced_at":"2026-01-17T04:02:09.664Z","repository":{"id":41824549,"uuid":"412523353","full_name":"hichtakk/nsxctl","owner":"hichtakk","description":"kubectl style NSX-T and ALB commannd-line client","archived":false,"fork":false,"pushed_at":"2024-04-16T06:06:05.000Z","size":215,"stargazers_count":3,"open_issues_count":16,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-06-19T19:44:24.452Z","etag":null,"topics":["cli","nsx","nsx-alb","nsx-t","vmware"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hichtakk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-01T15:36:08.000Z","updated_at":"2023-01-23T17:21:01.000Z","dependencies_parsed_at":"2023-11-13T02:28:25.792Z","dependency_job_id":"cadff25f-8d1c-4087-b7e6-f021c6680638","html_url":"https://github.com/hichtakk/nsxctl","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/hichtakk/nsxctl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hichtakk%2Fnsxctl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hichtakk%2Fnsxctl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hichtakk%2Fnsxctl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hichtakk%2Fnsxctl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hichtakk","download_url":"https://codeload.github.com/hichtakk/nsxctl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hichtakk%2Fnsxctl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28494153,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T02:39:23.645Z","status":"ssl_error","status_checked_at":"2026-01-17T02:34:19.649Z","response_time":85,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["cli","nsx","nsx-alb","nsx-t","vmware"],"created_at":"2026-01-17T04:02:09.516Z","updated_at":"2026-01-17T04:02:09.611Z","avatar_url":"https://github.com/hichtakk.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"nsxctl\n======\n\n`nsxctl` is simple command-line client for NSX-T and NSX ALB. It helps operating both of NSX solutions with single and intuitive command from their local environment.\n\nIt supports not only execute implemented operational commands but also just call REST API easily. nsxctl helps authentication to target NSX endpoint and you can focus on only REST API method, URI and params.\n\n## Usage\n### Configure endpoints and credentials\n\nNsxctl can manage multiple NSX endpoints. To register endpoint, use `config` subcommand with name argument and parameters bellow.\n\n| Parameter | Description |\n| --- | --- |\n| name | any name for managing the combination of endpoint and user credential|\n| -e / --endpoint | NSX Manager or NSX ALB Controller endpoint |\n| -u / --user | user name to use |\n| -p / --password | password for specified user |\n| --alb | (optional) Use this flag to configure NSX ALB site. NSX-T is default. |\n| --init | (optional) Use this flag to create a new configuration file |\n\n```\n# example\nnsxctl config set-site ${SITE_NAME} --endpoint https://${MANAGER-IP} --user ${USER} --password ${PASSWORD} --init\n```\n\nThis configuration is stored `~/.config/nsxctl.json` by default. You can change the path and file name with `-c/--config` option. Sensitive data such as user credential will be base64 encoded.\n\nNow you are ready to run `nsxctl`! see examples[]\n\n## Examples\n### show resources\nshow tier 0 gateways\n```\nnsxctl show gateway --tier 0\nID              Name            HA Mode         Failover Mode\ntier0-01        tier0-01        ACTIVE_ACTIVE   NON_PREEMPTIVE\n```\nshow routing table of specified tier 0 gateway on each edge node\n```\nnsxctl show routes tier0-01\n/edge-cluster/ec01/node/edge01\nB\u003e 0.0.0.0/0 [20] via 10.111.41.50\nC\u003e 100.64.56.0/31 is directly connected\nC\u003e 100.64.96.0/31 is directly connected\nC\u003e 100.64.200.0/31 is directly connected\nC\u003e 100.64.208.0/31 is directly connected\nC\u003e 169.254.0.0/25 is directly connected\ni\u003e 169.254.0.128/25 [0] blackhole\nC\u003e 172.17.0.0/16 is directly connected\nc\u003e 172.21.0.0/28 [3] via 100.64.208.1\nc\u003e 172.21.0.16/28 [3] via 100.64.96.1\nl\u003e 172.21.3.1/32 [3] via 100.64.208.1\nl\u003e 172.21.3.2/32 [3] via 100.64.208.1\nC\u003e 172.21.15.0/24 is directly connected\n```\nshow BGP advertised routes of specified tier 0 gateway\n```\nnsxctl show adv tier0-01\nBGP neighbor: 10.111.41.50, Remote ASN: 100\nEdge node: edge01, Source IP: 10.111.41.47\n\nNetwork          Next Hop       Metric          Local Pref      Path \n10.111.41.0/26   0.0.0.0             0                 100      \n172.17.0.0/16    0.0.0.0             0                 100      \n172.21.0.0/28    0.0.0.0             0                 100      \n172.21.0.16/28   0.0.0.0             0                 100      \n172.21.3.1/32    0.0.0.0             0                 100      \n172.21.3.2/32    0.0.0.0             0                 100      \n172.21.15.0/24   0.0.0.0             0                 100      \n```\nshow NSX ALB virtual services\n```\nnsxctl show alb-virtualservice\nID            Name         VIP             Port          Cloud           SEGroup         Status\n9c77032320d5  http01       172.21.15.200   22            Default-Cloud   Default-Group   UP\n2c8417fbc486  dns01        172.21.15.201   53            Default-Cloud   Default-Group   UP\n541c092afd1e  system-mc01  172.21.15.10    6443          tkg             tkg             UP\ne3447bf45756  system-mc02  172.21.15.12    6443          tkg             tkg             UP\n79d377182366  Shared-L7-0  172.21.15.14    80,443(SSL)   tkg             tkg             UP\n```\n\n### monitor gateway traffic\nmonitor uplink traffic of specified tier 0 gateway with 5 seconds refresh interval\n```\nnsxctl top gateway --tier 0 tier0-01 --interval 5\n[Press ESC or Ctrl-C to exit]\n\nID: tier0-01, Name: tier0-01\nHA: ACTIVE_ACTIVE, Preempt: NON_PREEMPTIVE\n\nIfName      TX [bps]  TX[pps]  RX [bps]  RX[pps]\n────────────────────────────────────────────────\next-edge01  0.00      0.00     3933.32   46.00\next-edge02  86.47     1.00     3668.52   44.00\n```\n\n### call API\nget NSX-T segments\n```\nnsxctl exec get /policy/api/v1/infra/segments\n```\nget NSX ALB virtual services\n```\nnsxctl exec get --alb /api/virtualservice\n```\nupdate NSX-T pool with json parameter (please refer NSX-T REST API specification regarding JSON parameters)\n```\nnsxctl exec patch /policy/api/v1/infra/ip-pools/pool01 -f ./pool.json\n```\n\n## Contributing\nThank you very much for taking the time to give feedback and improvement suggestion.\nIf you want to submit pull requests to fix bugs or any enhancements, please open an issue and link it to your pull request.\nIf you have any questions, feel free to open an issue.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhichtakk%2Fnsxctl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhichtakk%2Fnsxctl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhichtakk%2Fnsxctl/lists"}