MicroStrategy ONE

最佳实践MicroStrategy存储服务

考虑以下使用的最佳做法MicroStrategy存储服务:

共享存储系统

为了提高性能和可扩展性,MicroStrategy建议您使用 AWS S3 和 Azure Blob,而不是共享文件夹。

如果您使用 AWS   S3,MicroStrategy建议您使用 IAM  以提高安全性。请参阅以下 IAM  允许机器访问 S3 而无需秘密的角色:

复制
{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Sid":"VisualEditor0",
         "Effect":"Allow",
         "Action":[
            "s3:PutObject",
            "s3:GetObject",
            "s3:ListBucketMultipartUploads",
            "s3:ListBucket",
            "s3:DeleteObject",
            "s3:ListMultipartUploadParts"
         ],
         "Resource":[
            "arn:aws:s3:::sdk-s3-test",
            "arn:aws:s3:::sdk-s3-test/mstr/*"
         ]
      }
   ]
}

如果您使用 Azure Blob,MicroStrategy建议您使用 IAM 角色来提高安全性。请参阅以下 IAM  允许机器访问 Blob 而无需秘密的角色:

复制
{
    "id": "xxx",
    "properties": {
        "roleName": "Storage Blob Data Contributor Customized",
        "description": "Allows for read, write and delete access to Azure Storage blob data",
        "assignableScopes": [
            "/"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.Storage/storageAccounts/blobServices/containers/read"
                ],
                "notActions": [],
                "dataActions": [
                    "Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete",
                    "Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read",
                    "Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write",
                    "Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action"
                ],
                "notDataActions": []
            }
        ]
    }
}

如果您使用 Google Cloud Storage,MicroStrategy 建议使用 IAM 角色来提高安全性。您应该将 Google Cloud Console 上相关账户的 IAM 角色分配给 role/storage.objectUser。该用户应该有权在 Google Cloud Storage 中创建、读取、更新和删除对象以及分段上传。

如果使用共享文件夹,请参阅以下步骤作为在 Linux 中挂载 NFS 共享文件夹的示例:

  1. 确保共享文件夹已设置并且可以通过 NFS 从网络访问。
  2. 创建用于访问共享文件夹的挂载点。例如,您可以创建一个名为 /mnt/sharedfolder
  3. 安装 nfs-common 包裹。
  4. 使用以下模板挂载共享文件夹:
  5. 复制
    sudo mount -t nfs servername:/sharedfolder /mnt/sharedfolder
    • 替换 servername 使用 NFS  服务器名称或 IP  地址。
    • 替换 sharedfolder 与您想要挂载的共享文件夹。

  6. 在工作站中配置挂载点并测试连接。

您可能需要更新 NFS  权限和防火墙设置以确保正确访问共享文件夹。

如果您想使用 CIFS 将 Windows 共享文件夹挂载到 Linux,请参考以下步骤:

  1. 确保共享文件夹已设置并且可使用 CIFS 从网络访问。
  2. 创建用于访问共享文件夹的挂载点。例如,您可以创建一个名为 /mnt/sharedfolder
  3. 安装 cifs-utils 包。
  4. 使用以下模板挂载共享文件夹:
  5. 复制
    sudo mount -t cifs //servername/sharedfolder /mnt/sharedfolder -o user=username,password=password
    • 替换 servernamesharedfolder 使用共享文件夹的名称和路径。
    • 替换 usernamepassword 使用您的共享文件夹凭据。

MicroStrategy存储库

你可以使用安装向导配置库存储服务

检查存储服务是否安装成功

您可以使用两种方法检查存储服务是否安装成功:

  1. 如果选择了本地存储库,安装向导将安装本地数据库。安装向导配置 <DEPLOY_LOCATION>/webapps/MicroStrategyLibrary/WEB-INF/ classes/config/configOverride.properties 文件指向本地/远程存储库。如果该文件中有数据库设置,则存储服务安装成功。有关配置属性的详细信息,请参阅存储服务配置属性
  2. 配置数据库后,您可以转到Workstation配置您的共享存储系统到 AWS   S3、Azure Blob、Google Cloud Storage 或共享文件夹。

在库集群中配置存储服务

如果您使用的是库群集,则必须将所有节点配置为同一数据库(本地MicroStrategy您可以在同一个集群内管理多个存储库(例如,单个存储库或远程存储库)。

为了提高可扩展性和自我管理能力,MicroStrategy建议使用远程存储库而不是本地存储库。

常见问题

不同功能如何使用存储服务?

  • 迁移存储用于存储所有迁移包。例如,源环境将包存储在某个位置。目标从该位置获取包并将撤消包写入其中。在这种情况下,源环境和目标环境必须使用相同的存储。

  • 工作流或其他服务存储用于存储二进制文件,这些文件可能非常大。

我该如何解决这个错误“该 API 需要 MicroStrategy 存储服务。请联系您的管理员。”?

发生此错误的一个可能原因是库的数据库未配置或无法连接。

安装会自动创建 mstr_library 数据库和 mstr_library 模式。已创建 mstr_library 和 mstr_library_application 数据库用户。相关的连接字符串会自动添加到 <DEPLOY_LOCATION>/webapps/MicroStrategyLibrary/WEB-INF/
classes/config/configOverride.properties
文件。

如果找不到所需的连接字符串,安装过程将遇到问题。所需的字符串格式是“datasource.url”、“datasource.admin.username”、“datasource.admin.password”、“datasource.username”和“datasource.password”。看存储服务配置属性了解更多详情。

如果找到所需的连接字符串,您可以使用 psql 客户端或其他工具(pgAdmin)来检查连接是否存在问题。

如果使用共享文件夹,哪个用户需要有其访问权限?是运行 Library 的 Tomcat 应用程序的用户还是运行 Workstation 的用户?

执行 Tomcat 的用户应该访问共享文件夹。由于共享文件夹在后端受到保护,因此所有读/写都来自 Tomcat 执行用户。

使用共享文件夹时,环境之间是否需要打开防火墙?

不可以。两个环境都必须能够访问同一个共享文件夹。为此可能需要一些网络配置。