以容器為基礎的產品需求 - AWS Marketplace

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

以容器為基礎的產品需求

AWS Marketplace對於上的所有容器型產品和供應項目,皆維持下列需求。AWS Marketplace這些要求有助於為我們的客戶推廣安全、可靠且值得信賴的目錄。我們也鼓勵賣家檢閱適用的其他控制和協議的實施情況,以滿足其特定產品的需求。

所有產品及其相關中繼資料會在提交時進行審核,以確保產品符合或超過目前的AWS Marketplace需求。我們審查並調整這些政策,以滿足我們不斷變化的安全性和其他使用要求。 AWS Marketplace持續驗證現有產品是否符合這些需求的任何變更。如果產品不合規,AWS Marketplace將與您聯繫以更新您的產品。在某些情況下,新訂閱者可能暫時無法使用您的產品,直到問題得到解決為止。

安全要求

所有以容器為基礎的產品都必須遵守下列安全性要求:

存取要求

所有以容器為基礎的產品都必須遵守以下存取要求:

  • 容器型產品必須使用初始隨機密碼。以容器為基礎的產品不得使用初始的固定密碼或空白密碼進行外部管理存取 (例如,透過 Web 介面登入應用程式)。必須先提示買家輸入此隨機密碼,才能設定或變更自己的憑證。

  • 客戶必須明確同意並啟用應用程式的任何外部存取權。

客戶信息要求

所有以容器為基礎的產品都必須遵守以下客戶資訊要求:

  • 除非 BYOL (自攜授權) 要求,否則軟體不得在未經客戶知情並明確同意的情況下收集或匯出客戶資料。收集或匯出客戶資料的應用程式必須遵循下列準則:

    • 客戶數據的收集必須是自助服務,自動化和安全的。買家不需要等待賣家批准部署軟件。

    • 客戶數據的要求必須在列表的描述或使用說明中清楚說明。這包括收集的內容,客戶數據的存儲位置以及將如何使用它們。例如,本產品會收集您的姓名和電子郵件地址。此資訊會傳送至並儲存<company name>。這些資料只會用來聯絡買家。 <product name>

    • 不得收集付款資訊。

產品使用要求

所有以容器為基礎的產品都必須遵守下列產品使用要求:

  • 賣家只能列出功能齊全的產品。不允許用於試用或評估用途的 Beta 版或售前發布產品。如果賣方在提供免費版的 90 天AWS Marketplace內提供同等的付費版本,則支援商業軟體的開發人員、社群和 BYOL 版本。

  • 容器型產品的所有使用指示都必須包含部署容器型產品的所有步驟。使用指示必須提供指向相應容器映像的指令和部署資源AWS Marketplace。

  • 以容器為基礎的產品必須包含訂閱者使用軟體所需的所有容器映像檔。此外,以容器為基礎的產品不得要求使用者使用任何外部影像 AWS Marketplace (例如,來自協力廠商儲存庫的容器映像檔) 來啟動產品。

  • 容器及其軟體必須以自助服務的方式部署,且不需要額外的付款方式或費用。在部署上需要外部相依性的應用程式必須遵循下列準則:

    • 有關要求必須在列表的描述或使用說明中披露。例如,本產品需要網際網路連線才能正確部署。下列套件會在部署時下載:<list of package>

    • 賣方負責使用並確保所有外部依賴項的可用性和安全性。

    • 如果外部相依性不再可用,也必須將產品從中AWS Marketplace移除。

    • 外部依賴項不得需要額外的付款方式或費用。

  • 需要持續連線至不受買家直接控制的外部資源 (例如外部 API 或由賣方或第三方AWS 服務管理) 的容器必須遵循下列準則:

    • 有關要求必須在列表的描述或使用說明中披露。例如,本產品需要持續的互聯網連接。需要以下持續的外部服務才能正常運作:。 <list of resources>

    • 賣方負責使用並確保所有外部資源的可用性和安全性。

    • 如果外部資源不再可用,則也必須將產品從中AWS Marketplace移除。

    • 外部資源不得需要額外的付款方式或費用,連接的設置必須自動化。

  • 產品軟體和中繼資料不得包含會將使用者重新導向至其他雲端平台、其他產品或追加銷售服務的語言。AWS Marketplace

  • 如果您的產品是其他產品或其他 ISV 產品的附加元件,您的產品說明必須指出其他產品的功能已擴充,如果沒有產品,則您的產品的效用程式非常有限。例如, 該產品擴展的功能和沒有它, 該產品具有非常有限的效用. <product name> 請注意,此清單可能需要自己的授權才能使用完整功能。 <product name>

架構需求

所有以容器為基礎的產品都必須符合下列架構需求:

  • 的來源容器映像AWS Marketplace必須推送至擁有的 Amazon Elastic Container Registry (Amazon ECR) 儲存庫。AWS Marketplace您可以在每個容器產品清單的AWS Marketplace 管理入口網站下方伺服器產品中建立這些儲存庫。

  • 容器映像檔必須以 Linux 為基礎。

  • 付費容器型產品必須能夠部署在 Amazon ECSAmazon E KS 或. AWS Fargate

  • 具有合約定價和與整合的付費容器型產品AWS License Manager應部署在 Amazon EKS、Amazon ECS、Amazon EKS Anywhere AWS Fargate、Amazon ECS Anywhere、紅帽 OpenShift 服務 AWS (ROSA)、自我管理 Kubernetes 叢集內部部署或 Amazon 彈性運算雲上。

容器產品使用說明

為您的容器產品建立使用指示時,請遵循中的步驟和指引AMI 和容器產品使用說明

Amazon EKS 附加產品的要求

Amazon EKS 附加元件是為應用程式提供操作功能,但不是Kubernetes應用程式專用的軟體。例如,Amazon EKS 附加元件包含可觀察性代理程式或Kubernetes驅動程式,可讓叢集與網路、運算和儲存的基礎AWS資源互動。

作為容器產品的銷售商,您可以選擇包括 Amazon EKS 在內的多種部署選項。您可以將產品版本作為附加元件發佈到 Amazon EKS AWS Marketplace 附加元件目錄中。您的附加元件會出現在 Amazon EKS 主控台中,旁邊是由AWS和其他廠商維護的附加元件。您的買家可以將您的軟件部署為附加組件,就像他們做其他附加組件一樣容易。

如需詳細資訊,請參閱《Amazon EKS 使用者指南》中的 Amazon EKS 附加元件

準備您的容器產品作為AWS Marketplace附加元件

若要以AWS Marketplace附加元件的形式發佈容器產品,它必須符合下列需求:

  • 您的容器產品必須在中發佈AWS Marketplace。

  • 您的容器產品必須與 AMD64 和 ARM64 架構相容。

  • 您的容器產品不得使用自攜授權 (BYOL) 定價模式。

  • 您必須遵守所有容器型產品需求,包括將所有容器映像和Helm圖表推送到AWS Marketplace受管 Amazon ECR 儲存庫。此需求包括開放原始碼映像檔,例如,nginx. 圖像和圖表不能託管在其他外部存儲庫中,包括但不限於 Amazon ECR 公共圖庫和Quay. Docker Hub

  • Helm圖表-準備要通過圖Helm表部署的軟件。Amazon EKS 附加元件架構會將圖表轉Helm換為資訊清單。Amazon EKS 系統不支援某些Helm功能。下列清單說明上線前必須符合的需求。在此列表中,所有Helm命令都使用 3.8.1 Helm 版本:

    • 支援所有Capabilities物件,但的例外.APIVersions.APIVersions non-built-in自訂 Kubernetes API 不支援。

    • 僅支援Release.NameRelease.Namespace物件。

    • Helm掛鉤和lookup功能不受支持。

    • 所有相依圖表都必須位於主圖Helm表內 (使用儲存庫路徑檔案://... 指定)。

    • Helm圖表必須成功通過 Helm Lint 和Helm模板,沒有錯誤。命令如下:

      • Helm棉絮 — helm lint helm-chart

        常見問題包括父圖表中繼資料中的未宣告圖表。例如:chart metadata is missing these dependencies: chart-base Error: 1 chart(s) linted, 1 chart(s) failed

      • Helm模板-helm template chart-name chart-location —set k8version=Kubernetes-version —kube-version Kubernetes-version —namespace addon-namespace —include-crds —no-hooks —f any-overriden-values

        使用—f旗標傳遞任何已覆寫的組態。

    • 將所有容器二進位檔案儲存在 AWS Marketplace Amazon ECR 存放庫中。若要建立資訊清單,請使用先前顯示的Helm範本命令。在資訊清單中搜尋任何外部影像參照,例如busybox或影gcr像。使用請求下拉式清單中的「新增儲存庫」選項,將所有容器映像及相依性上傳至 AWS Marketplace Amazon ECR 存放庫

  • 自訂組態 — 您可以在部署期間新增自訂變數。如需如何識別最終使用者體驗、命名軟體,以及使用Helm圖表將軟aws_mp_configuration_schema.json體封裝至包裝器的詳細資訊,請參閱 Amazon EKS 附加元件:進階組態

    根據 「$ 模式」關鍵字$schema必須是指向有效application/schema+json資源的 URI。

    此檔案不得接受任何敏感資訊,例如密碼、授權金鑰和憑證。

    若要處理密碼和憑證安裝,您可以向使用者提供附加後或附加前安裝步驟。產品不應依賴任何外部授權。產品應以AWS Marketplace權利為基礎運作。

    如需有關限制的詳細資訊aws_mp_configuration_schema.json,請將包含您問題的電子郵件訊息傳送至 aws-mp-eks@amazon .com

  • 識別並建立將部署軟體的命名空間 — 在產品的第一個版本中,您必須新增範本化命名空間,以識別要部署軟體的命名空間。

  • 建立 (serviceAccount如果適用) — 如果軟體是付費軟體,AWS Marketplace或必須與其他軟體連線AWS 服務,請確定預設會建serviceAccount立Helm圖表。如果serviceAccount建立是由values.yaml檔案中的參數處理,請將參數值設定為true。例如 serviceAccount.create = true。這是必要的,因為客戶可能會選擇從已具有必要權限的基礎節點執行個體繼承權限來安裝附加元件。如果 Helm 圖表未建立serviceAccount,則權限就無法繫結至serviceAccount.

  • Sup@@ port AMD 和 ARM 架構 — 目前許多 Amazon EKS 客戶都使用 ARM64 來使用AWS重力子執行個體。第三方軟體必須支援這兩種架構。

  • 與來自的授權或計量 API 整合 AWS Marketplace — AWS Marketplace 支援多種計費模式。如需詳細資訊,請參閱 容器產品帳單、計量和授權整合。如果您想通過 PAYG 機制銷售您的產品,請參閱使用 AWS Marketplace 計量服務為容器產品自訂計量。如果您想要透過預付款或合約模式銷售產品,請參閱容器產品的合約定價AWS License Manager

  • 上傳軟體以及所有人工因素和相依性 — Helm 圖表必須是獨立的,且不得需要外部來源的相依性,GitHub例如。如果軟體需要外部相依性,則必須將相依性推送至相同AWS Marketplace清單下的AWS Marketplace私有 Amazon ECR 儲存庫。

  • 在您的網站上提供部署說明 — 我們要求您託管部署指南,供客戶識別如何透過 create- addon 指令部署您的軟體。

  • IAM 角色 — 列出軟體運作或與其他人連線所需的所有 AWS Identity and Access Management (IAM) 政策AWS 服務。

  • 版本更新 — Amazon EKS 會在上游發行版本後的幾週內發佈新的 Kubernetes 版本。隨著新的 Amazon EKS 叢集版本正式推出,廠商有 45 天的時間來認證或更新其軟體,以便與新的 Amazon EKS 叢集版本相容。如果您目前的附加元件版本支援新的 Kubernetes 版本,請驗證並認證相同版本,以便我們可以更新版本相容性矩陣。如果需要新的附加元件版本來支援新的 Kubernetes 版本,請提交新版本以供上線。

  • 合作夥伴的軟體必須屬於下列其中一種類型,或者是可增強 Kubernetes 或 Amazon EKS 的作業軟體:Gitops | 監控 | 記錄 | 憑證管理 | 政策管理 | 成本管理 | 自動擴展 | 儲存 | Kubernetes 管理 | 服務網格 | etcd-backup | 負載平衡器 | 本機註冊 | 安全性備份 | 輸入控制器 | 輸入控制器 ingress-service-type

  • 軟體不能是容器網路介面 (CNI)

  • 針對付費產品,軟體必須透過AWS Marketplace授權和計量 API 銷售,並與其整合。恕不接受 BYOL 產品。