Budgets

1 resource kind. Generated from the operator's CRD schemas.

API Group: aws.konfig.io/v1alpha1

Budget # GA

Budget is the Schema for managing AWS Budgets budgets.

kubectl get budgets · example on GitHub

Example

# Budget — Budgets
# Full-options example generated from the CRD schema. Optional fields are
# included with sample values; delete what you don't need. Field reference:
# https://konfig-konector.io/docs/budgets.html#budget
apiVersion: aws.konfig.io/v1alpha1
kind: Budget
metadata:
  name: example-budget
  namespace: default
spec:
  accountId: '123456789012'
  budgetName: example-budget
  budgetType: COST
  costFilters: {}
  limitAmount: '100'
  limitUnit: example
  notifications:
  - comparisonOperator: GREATER_THAN
    notificationType: ACTUAL
    subscribers:
    - address: example
      subscriptionType: EMAIL
    threshold: '100'
    thresholdType: PERCENTAGE
  providerRef:
    name: example-budget
    region: us-east-1
  timeUnit: DAILY

Spec

FieldTypeRequiredDescription
accountIdstringyesAccountID is the 12-digit AWS account ID that owns the budget.
budgetNamestringyesBudgetName is the name of the budget, unique within the account.
budgetTypeenumyesBudgetType is what the budget tracks. Allowed: COST, USAGE, RI_UTILIZATION, RI_COVERAGE, SAVINGS_PLANS_UTILIZATION, SAVINGS_PLANS_COVERAGE
costFiltersmap<string>—CostFilters restrict the costs the budget tracks, e.g.
limitAmountstringyesLimitAmount is the budgeted amount, as a numeric string (e.g.
limitUnitstringyesLimitUnit is the unit of the limit, e.g.
notificationsarray<object>—Notifications are alert thresholds with subscribers.
notifications[].comparisonOperatorenumyesComparisonOperator compares spend against the threshold. Allowed: GREATER_THAN, LESS_THAN, EQUAL_TO
notifications[].notificationTypeenumyesNotificationType is whether the alert is on actual or forecasted spend. Allowed: ACTUAL, FORECASTED
notifications[].subscribersarray<object>yesSubscribers to notify when the threshold is exceeded.
notifications[].subscribers[].addressstringyesAddress is the email address or SNS topic ARN to notify.
notifications[].subscribers[].subscriptionTypeenumyesSubscriptionType is how notifications are delivered. Allowed: EMAIL, SNS
notifications[].thresholdstringyesThreshold is the notification threshold value, as a numeric string (e.g.
notifications[].thresholdTypeenum—ThresholdType is PERCENTAGE or ABSOLUTE_VALUE. Allowed: PERCENTAGE, ABSOLUTE_VALUE
providerRefobject—ProviderRef selects the AWSProvider (account/region) this resource is reconciled against.
providerRef.namestringyesName of a cluster-scoped AWSProvider.
providerRef.regionstring—Region overrides the provider's region for this resource only.
timeUnitenumyesTimeUnit is the period after which the budget resets. Allowed: DAILY, MONTHLY, QUARTERLY, ANNUALLY

Status

FieldTypeRequiredDescription
awsProviderobject—AWSProvider confirms the account and region this resource was reconciled against.
awsProvider.accountIdstring—AccountID the resource lives in.
awsProvider.namestring—Name of the AWSProvider used; empty when the operator's own credentials were used.
awsProvider.regionstring—Region the resource lives in (empty for global services).
budgetNamestring—BudgetName is the name of the budget in AWS (its primary identifier together with the account ID).
conditionsarray<object>—Conditions describe the current state of the resource.
conditions[].lastTransitionTimestringyeslastTransitionTime is the last time the condition transitioned from one status to another.
conditions[].messagestringyesmessage is a human readable message indicating details about the transition.
conditions[].observedGenerationinteger—observedGeneration represents the .metadata.generation that the condition was set based upon.
conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition.
conditions[].statusenumyesstatus of the condition, one of True, False, Unknown. Allowed: True, False, Unknown
conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
lastSyncTimestring—LastSyncTime is when the resource was last successfully reconciled.
observedGenerationinteger—ObservedGeneration is the most recent .metadata.generation reconciled.