Storage Object Admin
apigee-env
apigee-udca
apigee-org
apigee-env
apigee-watcher
apigee-org
Service account | IAM roles | Apigee Helm chart |
---|---|---|
apigee-non-prod | Storage Object Admin Logs Writer Apigee Connect Agent Monitoring Metric Writer Apigee Synchronizer Manager Apigee Analytics Agent Apigee Runtime Agent | apigee-datastore apigee-telemetry apigee-org apigee-env |
create-service-account
tool Apigee provides a tool, create-service-account
, in the apigee-operator/etc/tools
directory:
$APIGEE_HELM_CHARTS_HOME/└──apigee-operator/└──etc/└──tools/└──create-service-account
This tool creates the service accounts, assigns the IAM roles to each account, and downloads the certificate files in JSON format for each account.
Verify you can execute create-service-account
. If you have just downloaded the charts the create-service-account
file might not be in an executable mode. In your APIGEE_HELM_CHARTS_HOME directory run the following command:
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account --help
If your output says permission denied
you need to make the file executable, for example with chmod
in Linux, MacOS, or UNIX or in the Windows Explorer or with the icacls
command in Windows. For example:
chmod +x $APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account
Because Helm does not support referencing files outside of the chart directory, you will create each service account certificate file in the chart directory for the corresponding hybrid component.
For the next steps choose whether you are configuring a Production or Non-production installation.
PROJECT_ID
environment variable is defined. echo $PROJECT_ID
The create-service-account tool uses the value of the
. If it is not defined, either define it with your ID of your Google Cloud Project ID or add the PROJECT_ID
environment variable --project-id PROJECT_ID
flag to the create-service-account
commands.
$APIGEE_HELM_CHARTS_HOME
is the path where you downloaded the Apigee Helm charts. You may be prompted to create each service account. Respond with y
. $APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-cassandra \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-datastore$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-logger \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-telemetry
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-mart \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-org
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-metrics \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-telemetry
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-runtime \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-env
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-synchronizer \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-env
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-udca \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-env
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-udca \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-org
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-watcher \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-org
apigee-udca
JSON file to the apigee-env
chart directory. It is needed for both org-scope and env-scope operations. cp $APIGEE_HELM_CHARTS_HOME/apigee-org/$PROJECT_ID-apigee-udca.json $APIGEE_HELM_CHARTS_HOME/apigee-env/
ls ./apigee-datastore
Chart.yaml PROJECT_ID-apigee-cassandra.json templates values.yamlls ./apigee-telemetry
Chart.yaml PROJECT_ID-apigee-logger.jsonPROJECT_ID-apigee-metrics.json templates values.yamlls ./apigee-org
Chart.yaml PROJECT_ID-apigee-udca.json templates PROJECT_ID-apigee-mart.jsonPROJECT_ID-apigee-watcher.json values.yamlls ./apigee-env
Chart.yaml PROJECT_ID-apigee-runtime.jsonPROJECT_ID-apigee-synchronizer.jsonmy_project_id-apigee-udca.json templates values.yaml
PROJECT_ID
environment variable is defined. echo $PROJECT_ID
The create-service-account tool uses the value of the
. If it is not defined, either define it with your ID of your Google Cloud Project ID or add the PROJECT_ID
environment variable --project-id PROJECT_ID
flag to the create-service-account
commands.
$APIGEE_HELM_CHARTS_HOME
is the path where you downloaded the Apigee Helm charts. You may be prompted to create each service account. Respond with y
. $APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --env non-prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-datastore
apigee-datastore
directory: ls $APIGEE_HELM_CHARTS_HOME/apigee-datastore
Chart.yaml PROJECT_ID-apigee-non-prod.json templates values.yaml
cp $APIGEE_HELM_CHARTS_HOME/apigee-datastore/SA_FILE_NAME$APIGEE_HELM_CHARTS_HOME/apigee-telemetry/
cp $APIGEE_HELM_CHARTS_HOME/apigee-datastore/SA_FILE_NAME$APIGEE_HELM_CHARTS_HOME/apigee-org/
cp $APIGEE_HELM_CHARTS_HOME/apigee-datastore/SA_FILE_NAME$APIGEE_HELM_CHARTS_HOME/apigee-env/
For more information about service accounts and the create-service-account
tool see:
You now have created service accounts and assigned the roles needed by the Apigee hybrid components. Next, create the TLS certificates required by the hybrid ingress gateway.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-04-24 UTC.