本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Transfer 系列將大型主機檔案直接移至 Amazon S3
由 Luis Gustavo Dantas 建立 (AWS)
Summary
在現代化旅程中,您可能會面臨在內部部署伺服器與 Amazon Web Services (AWS) 雲端之間傳輸檔案的挑戰。從大型主機傳輸資料可能是一項重大挑戰,因為大型主機通常無法存取現代資料存放區,例如 Amazon Simple Storage Service (Amazon S3)、Amazon Elastic Block Store (Amazon EBS) 或 Amazon Elastic File System (Amazon EFS)。
許多客戶使用中繼預備資源,例如內部部署 Linux、Unix 或 Windows 伺服器,將檔案傳輸至AWS雲端。您可以避免此間接方法,方法是使用 AWS Transfer Family 搭配 Secure Shell (SSH) 檔案傳輸通訊協定 (SFTP),將大型主機檔案直接上傳至 Amazon S3。
先決條件和限制
先決條件
作用中AWS帳戶
虛擬私有雲端 (VPC),具有傳統平台可連線的子網路
適用於 的 Transfer Family 端點 VPC
大型主機虛擬儲存存取方法 (VSAM) 檔案轉換為循序、固定長度的檔案
(IBM 文件)
限制
SFTP 根據預設, 會以二進位模式傳輸檔案,這表示檔案會上傳到保留EBCDIC編碼的 Amazon S3。如果您的檔案不包含二進位或封裝資料,則可以使用 sftpascii 子命令
(IBM 文件) 在傳輸期間將檔案轉換為文字。 您必須解壓縮包含封裝和二進位內容的大型主機檔案
(AWS 規範指南),才能在目標環境中使用這些檔案。 Amazon S3 物件的大小範圍從最少 0 個位元組到最多 5 TB。如需 Amazon S3 功能的詳細資訊,請參閱 Amazon S3。 FAQs
架構
來源技術堆疊
任務控制語言 (JCL)
z/OS Unix shell 和 ISPF
SFTP
VSAM 和平面檔案
目標技術堆疊
Transfer 系列
Amazon S3
Amazon Virtual Private Cloud (Amazon VPC)
目標架構
下圖顯示使用 Transfer Family 搭配 SFTP 將大型主機檔案直接上傳至 S3 儲存貯體的參考架構。
該圖顯示以下工作流程:
您可以使用JCL任務,透過 Direct Connect 將大型主機檔案從舊版大型主機傳輸到AWS雲端。
Direct Connect 可讓您的網路流量保留在全球AWS網路上,並略過公有網際網路。Direct Connect 也會增強網路速度,從 50 Mbps 開始,擴展到 100 Gbps。
VPC 端點可讓您在不使用公有網際網路的情況下,在VPC資源與支援的 服務之間建立連線。存取 Transfer Family 和 Amazon S3 可透過位於兩個私有子網路和可用區域的彈性網路介面實現高可用性。
Transfer Family 會驗證使用者,並使用 從舊版環境SFTP接收您的檔案,並將其移至 S3 儲存貯體。
自動化和擴展
使用 Transfer Family 服務後,您可以使用JCL任務做為SFTP用戶端,將無限數量的檔案從大型主機傳輸到 Amazon S3。您也可以使用大型主機批次任務排程器,在準備好傳輸大型主機檔案時執行SFTP任務,以自動化檔案傳輸。
工具
Amazon Simple Storage Service (Amazon S3) 是一種雲端型物件儲存服務,可協助您儲存、保護和擷取任何數量的資料。
Amazon Virtual Private Cloud (Amazon VPC) 可協助您將AWS資源啟動至您定義的虛擬網路。此虛擬網路與您在自己的資料中心中操作的傳統網路相似,且具備使用 AWS 可擴展基礎設施的優勢。
AWS Transfer Family 可讓您EFS使用 SFTP、 和 FTP通訊協定FTPS,安全地將重複 business-to-business檔案傳輸擴展至 Amazon S3 和 Amazon。
史詩
任務 | 描述 | 所需的技能 |
---|---|---|
建立 S3 儲存貯體。 | 建立 S3 儲存貯體以託管您從舊版環境傳輸的檔案。 | 一般 AWS |
建立IAM角色和政策。 | Transfer Family 使用 AWS Identity and Access Management (IAM) 角色來授予您先前建立的 S3 儲存貯體存取權。
注意建立IAM角色時,您必須選擇轉移使用案例。 | 一般 AWS |
任務 | 描述 | 所需的技能 |
---|---|---|
建立SFTP伺服器。 |
注意如需如何設定SFTP伺服器的詳細資訊,請參閱建立啟用 SFTP的伺服器 (AWS Transfer Family 使用者指南)。 | 一般 AWS |
取得伺服器地址。 |
| 一般 AWS |
建立SFTP用戶端金鑰對。 | 為 Microsoft Windows 或 建立SSH金鑰對macOS/Linux/UNIX。 | 一般 AWS、 SSH |
建立SFTP使用者。 |
| 一般 AWS |
任務 | 描述 | 所需的技能 |
---|---|---|
將SSH私有金鑰傳送至大型主機。 | 使用 SFTP或 SCP 將SSH私有金鑰傳送至舊版環境。 SFTP 範例:
SCP 範例:
接下來,將SSH金鑰存放在 z/OS Unix 檔案系統中,並使用稍後將執行檔案傳輸批次任務的使用者名稱 (例如, 注意如需 z/OS Unix shell 的詳細資訊,請參閱 z/OS shell 簡介 | 大型主機、z/OS Unix shell、FTP、 SCP |
建立JCLSFTP用戶端。 | 由於大型主機沒有原生SFTP用戶端,您必須使用 BPXBATCH公用程式從 z/OS Unix shell 執行SFTP用戶端。 在ISPF編輯器中,建立JCLSFTP用戶端。例如:
注意如需如何在 z/OS Unix shell 中執行命令的詳細資訊,請參閱 BPXBATCH公用程式 | JCL、大型主機、z/OS Unix shell |
執行JCLSFTP用戶端。 |
注意如需如何檢查批次任務活動的詳細資訊,請參閱 z/OS SDSF 使用者指南 | 大型主機、JCL、 ISPF |
驗證檔案傳輸。 |
| 一般 AWS |
自動化JCLSFTP用戶端。 | 使用任務排程器自動觸發JCLSFTP用戶端。 注意您可以使用大型主機任務排程器,例如 BMC Control-M | 任務排程器 |