apigeectl is a command‑line interface (CLI)
for installing and managing Apigee hybrid in a Kubernetes cluster.
For
information on downloading and installing apigeectl, see
Download and install apigeectl.
Checks the status of the hybrid component pods. When all
component pods are ready, the message "All containers ready" is output.
For automated scripting, note that the command exits with a status of 0 when
the containers are all ready. When there is
at least one pod not ready, the command exits with a status of 1.
Deletes hybrid components from the cluster. Use the ‑‑all flag
to remove ALL of the components. If you omit ‑‑all, only the Apigee‑specific
components are removed (the components installed with apigeectl init are
not deleted). Apigee‑specific components are the components that are installed
with the apply command.
apigeectl delete without any optional flags applies the delete
command to all of the components deployed in the cluster.
apigeectl diagnostic delete ‑f OVERRIDES_FILE
deletes the apigee‑diagnostic namespace created by
apigeectl diagnostic. The ‑f /
‑‑file‑override‑config flag is required with
apigeectl diagnostic delete
Invokes the Diagnostic collector, which captures diagnostic data on the Kubernetes
components of an Apigee hybrid instance on demand and stores them in Google Cloud storage
buckets.
Diagnostic collector requires a named Google Cloud storage bucket, a service account with
the Storage Admin role, and a diagnostic: stanza added to your
overrides file. See:
When you invoke Diagnostic collector, it creates an "apigee‑diagnostic"
Kubernetes namespace. You must delete this with apigeectl diagnostic delete
before invoking Diagnostic collector again.
Returns a list of encoded names of all the ApigeeDeployments for the specified
organization or the specified environment within the specified organization. The encoded names
include the name of the component with a hashed name of the organization and if using the
‑‑env flag, a hashed name of the environment. Apigee hybrid creates hashed names
of organizations and environments to be able to avoid namespace collisions.
You must use either the ‑‑org org‑name or both the
‑‑org org‑name with the ‑‑env env‑name
flags with encode. For example:
./apigeectl encode ‑‑org hybrid‑example
List of ApigeeDeployments are:
apigee‑connect‑agent‑hybrid‑example‑6a82f8a
apigee‑mart‑hybrid‑example‑6a82f8a
apigee‑watcher‑hybrid‑example‑6a82f8a
./apigeectl encode ‑‑org hybrid‑example ‑‑env example‑env
List of ApigeeDeployments are:
apigee‑runtime‑hybrid‑example‑example‑env‑9e87e2d
apigee‑synchronizer‑hybrid‑example‑example‑env‑9e87e2d
apigee‑udca‑hybrid‑example‑example‑env‑9e87e2d
delete only: Deletes the entire Apigee hybrid installation except ASM (Istio)
and cert‑manager from your cluster.
‑‑all‑envs
Applies the apigeectl command to all environments under the organization
specified in your overrides config file.
‑‑datastore
Applies the configuration to the datastore scope (Cassandra).
‑‑dry‑run
Executes the specified command without changing the cluster. Use with
‑‑print‑yaml to output the rendered object spec to a file.
‑‑dry‑run must be used with one of the two following values, depending on the
version of kubectl you are running. Use gcloud version to check your kubectl version:
kubectl version 1.17.x or older: ‑‑dry‑run=true
kubectl version 1.18.x or newer: ‑‑dry‑run=client
‑‑env env‑name
Applies the configuration to the specified environment. This flag will apply
configuration to environment scope components apigee‑runtime, apigee‑synchronizer and apigee‑udca.
‑‑env must be used with the ‑‑org flag. For example:
Specifies a YAML file containing custom
configuration properties for the hybrid deployment. The default value is
./overrides.yaml. An overrides file is required for the apply,
check‑ready, delete, and init commands.
Applies the configuration to the specified organization. This flag will apply
configuration to the org scope components apigee‑connect‑agent, apigee‑mart and apigee‑watcher.
Applies the configuration to the in‑memory data storage scope (Redis).
‑‑restore
Restores Cassandra to a previously saved snapshot specified by the
snapshotTimestamp property in restore configuration of
the overrides.yaml file. The backup is restored either from the Cloud Storage bucket
or a remote server based on the backup configuration in
the overrides.yaml file. For more information, see
Restoring a region from a backup.
‑s ‑‑settings virtualhosts
Specifies a configuration to which the command applies. Currently, this flag
is only supported for the virtualhosts configuration, which is part of
the runtime component. Use this flag if you make changes to the
virtualhosts property, and nothing
else.
For example, if you make a change to the virtualhosts configuration
in your overrides file, apply it to the cluster with this command:
Applies the configuration for telemetry components like apigee‑logger and apigee‑metrics.
‑‑v int
Prints verbose logs to std err. int is an integer that sets the
level of verbosity. int is required with ‑‑v. This option
behaves identically to the kubectl‑‑v option.
Note: This option replaces the deprecated ‑‑verbose
option.
Examples
Initialize the cluster configuration
Apply prerequisite component configurations to your cluster with init.
You must run the init
command before apply.
apigeectl init ‑f my_overrides.yaml
Apply the cluster configuration
To apply hybrid configurations to your Kubernetes cluster, use the
apply command. The first time you run apply all of the
hybrid runtime components are created in your cluster. If you make configuration changes, rerun
apply to apply only the changes or use flags to apply changes to a specific
scope only.
The following example applies the configuration for hybrid runtime plane
components to your cluster:
apigeectl apply ‑f my_overrides.yaml
Apply the configuration for a single component
To restrict the apply command to a particular component, use the
flags described in apigeectl flags.
The following example only applies the configuration for the Cassandra component:
apigeectl apply ‑‑datastore ‑f my_overrides.yaml
Print the configuration to a file
If you're debugging an installation problem, it's useful to print out the entire
cluster configuration to a file so that you can inspect the configuration
settings. The ‑‑print‑yaml flag prints
the hybrid configuration to stdout, and the ‑‑dry‑run flag allows the
command to run without making any changes to the cluster.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-29 UTC."],[[["\u003cp\u003e\u003ccode\u003eapigeectl\u003c/code\u003e is a command-line tool used for installing and managing Apigee hybrid in Kubernetes clusters, requiring \u003ccode\u003ekubectl\u003c/code\u003e to be installed.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eapigeectl\u003c/code\u003e tool can be used for various operations like \u003ccode\u003eapply\u003c/code\u003e, \u003ccode\u003echeck-ready\u003c/code\u003e, \u003ccode\u003edelete\u003c/code\u003e, \u003ccode\u003ediagnostic\u003c/code\u003e, \u003ccode\u003eencode\u003c/code\u003e, \u003ccode\u003einit\u003c/code\u003e and \u003ccode\u003eversion\u003c/code\u003e, each with specific purposes related to configuring, managing, and diagnosing the Apigee hybrid setup.\u003c/p\u003e\n"],["\u003cp\u003eScopes such as Storage, In-memory storage, Environment, Organization, and Reporting can be targeted for configuration changes using \u003ccode\u003eapigeectl\u003c/code\u003e flags like \u003ccode\u003e--datastore\u003c/code\u003e, \u003ccode\u003e--redis\u003c/code\u003e, \u003ccode\u003e--all-envs\u003c/code\u003e, \u003ccode\u003e--env\u003c/code\u003e, \u003ccode\u003e--org\u003c/code\u003e, and \u003ccode\u003e--telemetry\u003c/code\u003e, respectively.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eapply\u003c/code\u003e command deploys configurations, \u003ccode\u003edelete\u003c/code\u003e removes hybrid components, and \u003ccode\u003echeck-ready\u003c/code\u003e verifies pod status, requiring an overrides configuration file (\u003ccode\u003e-f\u003c/code\u003e or \u003ccode\u003e--file-override-config\u003c/code\u003e) for execution.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003einit\u003c/code\u003e command needs to be run before running \u003ccode\u003eapply\u003c/code\u003e and will install Apigee Operators and CRDs, and \u003ccode\u003eapigeectl\u003c/code\u003e uses flags that operate similarly to \u003ccode\u003ekubectl\u003c/code\u003e's configurations.\u003c/p\u003e\n"]]],[],null,["# apigeectl\n\n| You are currently viewing version 1.10 of the Apigee hybrid documentation. **This version is end of life.** You should upgrade to a newer version. For more information, see [Supported versions](/apigee/docs/hybrid/supported-platforms#supported-versions).\n\n\n`apigeectl` is a command‑line interface (CLI)\nfor installing and managing Apigee hybrid in a Kubernetes cluster.\nFor\ninformation on downloading and installing `apigeectl`, see\n[Download and install apigeectl](/apigee/docs/hybrid/v1.10/install-apigeectl).\n| **Note:** You must have [`kubectl`](https://kubernetes.io/docs/reference/kubectl/overview/) installed and set up on your Kubernetes administration machine to use the `apigeectl` command.\n\nScopes for applying `apigeectl`\n-------------------------------\n\n\nBy using [`apigeectl` flags](#options) you control which scopes the command\napplies configuration changes to. For an overview of scopes within the Apigee hybrid runtime\nsee the [Runtime service configuration overview](/apigee/docs/hybrid/v1.10/service-config).\n\napigeectl syntax\n----------------\n\n```\napigeectl [command] [flags]\n```\n\nWhere:\n\n- \u003cvar translate=\"no\"\u003ecommand\u003c/var\u003e: Specifies the operation you want to\n perform. For a complete list of commands, see [apigeectl commands](#commands).\n\n- \u003cvar translate=\"no\"\u003eflags\u003c/var\u003e: Specifies command\n parameters. For a complete list of flags, see [apigeectl flags](#options).\n\napigeectl commands\n------------------\n\nThe following table lists the `apigeectl` commands:\n\napigeectl flags\n---------------\n\nThe following table lists the `apigeectl` flags:\n\n| The `apigeectl` command uses `kubectl` behind the scenes to do\n| its work. The `apigeectl` command options (`apply` and `delete`,\n| and the use of YAML configuration files, are similar to their kubectl counterparts.\n| To learn more about how objects are managed in a Kubernetes cluster, see the following topics:\n|\n| - [Imperative Management of Kubernetes Objects Using Configuration Files](https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-config/)\n| - [Overview of kubectl](https://kubernetes.io/docs/reference/kubectl/overview/)\n\nExamples\n--------\n\n### Initialize the cluster configuration\n\n\nApply prerequisite component configurations to your cluster with `init`.\nYou must run the `init`\ncommand before `apply`. \n\n```\napigeectl init ‑f my_overrides.yaml\n```\n\n### Apply the cluster configuration\n\nTo apply hybrid configurations to your Kubernetes cluster, use the\n`apply` command. The first time you run `apply` all of the\nhybrid runtime components are created in your cluster. If you make configuration changes, rerun\n`apply` to apply only the changes or use flags to apply changes to a specific\nscope only.\n\nThe following example applies the configuration for hybrid runtime plane\ncomponents to your cluster: \n\n```\napigeectl apply ‑f my_overrides.yaml\n```\n\n### Apply the configuration for a single component\n\nTo restrict the `apply` command to a particular component, use the\nflags described in [apigeectl flags](#options).\n\nThe following example only applies the configuration for the Cassandra component: \n\n```\napigeectl apply ‑‑datastore ‑f my_overrides.yaml\n```\n\n### Print the configuration to a file\n\nIf you're debugging an installation problem, it's useful to print out the entire\ncluster configuration to a file so that you can inspect the configuration\nsettings. The `‑‑print‑yaml` flag prints\nthe hybrid configuration to stdout, and the `‑‑dry‑run` flag allows the\ncommand to run without making any changes to the cluster. \n\n```\napigeectl apply ‑f my_overrides.yaml ‑‑dry‑run=client ‑‑print‑yaml \u003e apigee‑hybrid.yaml\n```\n| **Note:** It is a good practice to save a copy of the YAML output in source control for future reference. But be aware that the output file contains passwords and secrets that you may not want to store.\n\n### Check pod status\n\nThe following example checks the status of pods deployed to your cluster: \n\n```\napigeectl check‑ready ‑f overrides/overrides.yaml\nAll containers ready in namespace 'my-namespace'\n```\n\n### Delete hybrid from the cluster\n\nFor details, see [Uninstall hybrid runtime](./uninstall.html)."]]