Skip to content

App Framework: it is not working with private buckets. #1030

Open
@yaroslav-nakonechnikov

Description

@yaroslav-nakonechnikov

Please select the type of request

Bug

Tell us more

Describe the request
splunk-operator application can't be configured with custom apps, if they are stored in private buckets and where it is forbidden to use secret keys.

Expected behavior
If there is no possibility attach AWS policy to pod, inctance policy should be used instead.
everything should work with s3://bucket_name notation on native way.

Splunk setup on K8S
EKS 1.24
splunk-operator 2.1.1
splunk 9.0.3

Reproduction/Testing steps
try any of next configuration:

"appRepo" = {
        "appsRepoPollIntervalSeconds" = "86400"
        "appSources" = [
          {
            "location"   = "config-explorer_1715.tgz"
            "volumeName" = "splunk-apps"
            "scope"      = "local"
            "name"       = "Config Explorer"
          }
        ]
        "volumes" = [{
          "endpoint"    = "https://splunk-operator-<AccountID>.s3-accesspoint.eu-central-1.amazonaws.com/"
          "name"        = "splunk-apps"
          "path"        = "splunk-apps/"
          "provider"    = "aws"
          "storageType" = "s3"
          "region"      = "eu-central-1"
        }]
      }
"appRepo" = {
        "appsRepoPollIntervalSeconds" = "86400"
        "appSources" = [
          {
            "location"   = "config-explorer_1715.tgz"
            "volumeName" = "splunk-apps"
            "scope"      = "local"
            "name"       = "Config Explorer"
          }
        ]
        "volumes" = [{
          "endpoint"    = "s3://splunk-operators-bucket"
          "name"        = "splunk-apps"
          "path"        = "splunk-apps/"
          "provider"    = "aws"
          "storageType" = "s3"
          "region"      = "eu-central-1"
        }]
      }

in all ways it drops logs like:

2023-01-17T09:49:22.534992739Z  ERROR   GetAppsList     Unable to list items in bucket  {"controller": "licensemanager", "controllerGroup": "enterprise.splunk.com", "controllerKind": "LicenseManager", "LicenseManager": {"name":"lm","namespace":"splunk-operator"}, "namespace": "splunk-operator", "name": "lm", "reconcileID": "216e03a6-2944-4e04-b75f-2afaca181255", "AWS S3 Bucket": "splunk-apps", "error": "AccessDenied: Access Denied\n\tstatus code: 403, request id: VPP022WAHETK9CCC, host id: dx2l8TLjNcD+0NNOEI8devQo9TdPYvF3TZGhR5UGkAxVQ/H40TmbME03vM9zLDOTHhijTiX5TLL="}

in our setup we can't use public access for buckets at all, as well as we can't use secret keys as authentication.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions