JP2022009562A5 - - Google Patents

Download PDF

Info

Publication number
JP2022009562A5
JP2022009562A5 JP2021175401A JP2021175401A JP2022009562A5 JP 2022009562 A5 JP2022009562 A5 JP 2022009562A5 JP 2021175401 A JP2021175401 A JP 2021175401A JP 2021175401 A JP2021175401 A JP 2021175401A JP 2022009562 A5 JP2022009562 A5 JP 2022009562A5
Authority
JP
Japan
Prior art keywords
container
legacy
based system
scalable
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021175401A
Other languages
Japanese (ja)
Other versions
JP7316591B2 (en
JP2022009562A (en
Filing date
Publication date
Priority claimed from PCT/IB2017/052504 external-priority patent/WO2018197928A1/en
Application filed filed Critical
Priority to JP2021175401A priority Critical patent/JP7316591B2/en
Priority claimed from JP2021175401A external-priority patent/JP7316591B2/en
Publication of JP2022009562A publication Critical patent/JP2022009562A/en
Publication of JP2022009562A5 publication Critical patent/JP2022009562A5/ja
Priority to JP2023088533A priority patent/JP2023109980A/en
Application granted granted Critical
Publication of JP7316591B2 publication Critical patent/JP7316591B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (35)

非一過性媒体に記憶されたコンピュータ命令において実装されるスケーラブルコンテナベースのシステムであって、前記システムは、A scalable container-based system implemented in computer instructions stored in a non-transient medium, said system.
複数のトランザクション定義ベクトルを記憶するように動作可能であるトランザクション状態定義リポジトリであって、前記複数のトランザクション定義ベクトルは、レひシーコンピューティング環境において実行可能であるレガシーアプリケーションによって複数のトランザクションの実行中に潜在的に呼び出されるプログラムを識別する、トランザクション状態定義リポジトリと、A transaction state definition repository that can operate to store multiple transaction definition vectors, wherein the multiple transaction definition vectors are executing multiple transactions by a legacy application that can be executed in a legacy computing environment. A transaction state definition repository that identifies programs that are potentially called into
前記複数のトランザクションの少なくともサブセットにおいて実施するときに前記レガシーアプリケーションによって実行されるプログラムを識別する動的定義リポジトリと、A dynamic definition repository that identifies the program executed by the legacy application when executed in at least a subset of the plurality of transactions.
前記複数のトランザクション定義ベクトルと前記動的定義リポジトリとを比較し、使用されないプログラムを前記複数のトランザクション定義ベクトルから除去することにより、複数のマイクロサービスを定義する複数のマイクロサービス定義ベクトルを作成するように動作可能であるマイクロサービス定義オプティマイザと、Create multiple microservice definition vectors that define multiple microservices by comparing the plurality of transaction definition vectors with the dynamic definition repository and removing unused programs from the plurality of transaction definition vectors. With a microservices definition optimizer that is operational to
前記マイクロサービス定義ベクトルによって識別された各プログラムのために、前記レガシーコンピューティング環境において実行するようにコンパイルされたバイナリを見つけ、前記マイクロサービス定義ベクトルに対応する複数のマイクロサービスイメージを形成するように動作可能であるマイクロサービスイメージビルダと、To find a binary compiled to run in the legacy computing environment for each program identified by the microservices definition vector and to form multiple microservices images corresponding to the microservices definition vector. With a microservice image builder that is operational,
複数のコンテナイメージを形成するように動作可能であるコンテナビルダであって、前記複数のコンテナイメージは、前記複数のマイクロサービスイメージのうちの1つ以上のマイクロサービスイメージ、および、異なるコンピューティング環境における実行のためのレガシーエミュレータのコンポーネントに対応する1つ以上のイメージを含み、前記コンテナビルダは、前記マイクロサービスイメージ内の呼び出しのシグネチャを使用して前記複数のマイクロサービスによって要求される機能に対応する前記エミュレータのコンポーネントを識別することにより、複数のコンテナイメージを作成する、コンテナビルダと、A container builder capable of operating to form multiple container images, wherein the plurality of container images are one or more of the plurality of microservice images, and in different computing environments. The container builder contains one or more images that correspond to the components of the legacy emulator for execution, and the container builder uses the signature of the call in the microservice image to accommodate the functionality required by the plurality of microservices. A container builder that creates multiple container images by identifying the components of the emulator.
前記複数のコンテナイメージの実行のための少なくとも1つのコンテナを作成し、前記少なくとも1つのコンテナ内で少なくとも1つのマイクロサービスを実行するように動作可能である、コンテナ管理システムとWith a container management system capable of creating at least one container for executing the plurality of container images and operating to execute at least one microservice within the at least one container.
を含む、スケーラブルコンテナベースのシステム。A scalable container-based system, including.
前記複数のトランザクション定義ベクトルの少なくとも一部に対応する複数の動的トランザクション定義ベクトルを作成するように動作可能であるアクティビティログアナライザをさらに含み、前記マイクロサービス定義オプティマイザは、各動的トランザクション定義ベクトルと各対応するトランザクション定義ベクトルとを比較することにより、前記複数のマイクロサービス定義ベクトルを作成する、請求項1に記載のスケーラブルコンテナベースのシステム。The microservice definition optimizer further includes an activity log analyzer capable of operating to create multiple dynamic transaction definition vectors corresponding to at least a portion of the plurality of transaction definition vectors, and the microservice definition optimizer with each dynamic transaction definition vector. The scalable container-based system according to claim 1, wherein the plurality of microservice definition vectors are created by comparing with each corresponding transaction definition vector. 前記アクティビティログアナライザは、前記レガシーコンピューティング環境において前記レガシーアプリケーションを実行することによって生成される前記レガシーアプリケーションのレガシーアクティビティログを使用する、請求項2に記載のスケーラブルコンテナベースのシステム。The scalable container-based system according to claim 2, wherein the activity log analyzer uses the legacy activity log of the legacy application generated by executing the legacy application in the legacy computing environment. 前記アクティビティログアナライザは、エミュレータを使用して、モノリシックレガシーアプリケーションを実行することにより、ログファイルを生成し、かつ、前記複数のトランザクションの実行中にどのプログラムが前記レガシーアプリケーションによって使用されるかを決定する、請求項2に記載のスケーラブルコンテナベースのシステム。The activity log analyzer uses an emulator to run a monolithic legacy application to generate a log file and determine which program is used by the legacy application during the execution of the plurality of transactions. The scalable container-based system according to claim 2. 前記アクティビティログアナライザからの情報を使用して前記複数のトランザクション定義ベクトルを識別するように動作可能であるソースコードアナライザをさらに含む、請求項2に記載のスケーラブルコンテナベースのシステム。The scalable container-based system of claim 2, further comprising a source code analyzer capable of operating to identify the plurality of transaction definition vectors using information from the activity log analyzer. 前記ソースコードアナライザは、複数の変換テーブルを作成するようにさらに動作可能である、請求項5に記載のスケーラブルコンテナベースのシステム。The scalable container-based system according to claim 5, wherein the source code analyzer can be further operated to create a plurality of conversion tables. 前記マイクロサービス定義オプティマイザは、前記複数のトランザクションにおける2つ以上のトランザクションによって共有されるプログラムを含む付加的なマイクロサービス定義ベクトルを作成することによって、前記マイクロサービス定義ベクトルをさらに最適化するように動作可能である、請求項1に記載のスケーラブルコンテナベースのシステム。The microservice definition optimizer operates to further optimize the microservice definition vector by creating an additional microservice definition vector containing a program shared by two or more transactions in the plurality of transactions. The scalable container-based system according to claim 1, which is possible. 前記レガシーコンピューティング環境において実行するようにコンパイルされたバイナリを記憶するように動作可能であるバイナリリポジトリをさらに含む、請求項1に記載のスケーラブルコンテナベースのシステム。The scalable container-based system of claim 1, further comprising a binary repository capable of storing binaries compiled to run in said legacy computing environment. 前記バイナリリポジトリ内のコードは、ソースコードリポジトリ内のソースコードからコンパイルされる、請求項8に記載のスケーラブルコンテナベースのシステム。The scalable container-based system according to claim 8, wherein the code in the binary repository is compiled from the source code in the source code repository. 前記レガシーコンピューティング環境は、多重仮想記憶(MVS)またはz/OSコンピュータシステムを含む、請求項1に記載のスケーラブルコンテナベースのシステム。The scalable container-based system according to claim 1, wherein the legacy computing environment includes multiple virtual memory (MVS) or z / OS computer systems. 前記エミュレータの要素は、常駐し、前記エミュレータによって使用されるオペレーティングシステムソフトウェアパッケージのイメージは、相補的コンポーネントリポジトリ内に記憶され、前記コンテナビルダは、前記複数のコンテナイメージ内に前記パッケージのイメージを挿入する、請求項1に記載のスケーラブルコンテナベースのシステム。The elements of the emulator are resident, the image of the operating system software package used by the emulator is stored in the complementary component repository, and the container builder inserts the image of the package into the plurality of container images. The scalable container-based system according to claim 1. 前記コンテナビルダは、前記バイナリ内の呼び出しの前記シグネチャを、前記レガシーエミュレータ内で動作可能である呼び出しのための命令と置換するようにさらに動作可能である、請求項1に記載のスケーラブルコンテナベースのシステム。The scalable container-based according to claim 1, wherein the container builder can further operate to replace the signature of the call in the binary with an instruction for the call that is operational within the legacy emulator. system. 前記コンテナ管理システムは、複数のコンテナを作成するように動作可能である、請求項1に記載のスケーラブルコンテナベースのシステム。The scalable container-based system according to claim 1, wherein the container management system can operate to create a plurality of containers. 相補的イメージの組が、共通ポッド内の別個のコンテナの中でインスタンス化される、請求項1に記載のスケーラブルコンテナベースのシステム。The scalable container-based system of claim 1, wherein a set of complementary images is instantiated in separate containers within a common pod. 少なくとも1つのコンテナイメージの2つ以上のコピーが、2つ以上の別個のコンテナの中でアクティブにされる、請求項13に記載のスケーラブルコンテナベースのシステム。13. The scalable container-based system of claim 13, wherein two or more copies of at least one container image are activated in two or more separate containers. 前記コンテナ管理システムは、前記少なくとも1つのコンテナイメージを実行しているコンテナの数を変動させるように動作可能である、請求項15に記載のスケーラブルコンテナベースのシステム。The scalable container-based system of claim 15, wherein the container management system can operate to vary the number of containers running the at least one container image. 前記コンテナ管理システムは、様々なリソースを別個のコンテナに分配するように動作可能である、請求項13に記載のスケーラブルコンテナベースのシステム。The scalable container-based system of claim 13, wherein the container management system is capable of operating to distribute various resources to separate containers. 前記コンテナ管理システムは、前記アクティビティログアナライザからの情報を使用して、別個のコンテナに分配すべきリソースを決定するように動作可能である、請求項2に記載のスケーラブルコンテナベースのシステム。The scalable container-based system according to claim 2, wherein the container management system can operate to determine resources to be distributed to separate containers by using the information from the activity log analyzer. 前記ソースコードアナライザは、前記レガシーアプリケーションのデータベースから1つ以上のサブデータベースまたはサブデータベースのクラスタを作成するようにさらに動作可能である、請求項5に記載のスケーラブルコンテナベースのシステム。The scalable container-based system of claim 5, wherein the source code analyzer can further operate to create one or more subdatabases or clusters of subdatabases from the database of the legacy application. 前記コンテナビルダは、前記1つ以上のサブデータベースまたは前記サブデータベースのクラスタを1つ以上のコンテナの中に設置するように動作可能である、請求項19に記載のスケーラブルコンテナベースのシステム。19. The scalable container-based system of claim 19, wherein the container builder is capable of operating the one or more subdatabases or clusters of the subdatabases in one or more containers. 前記ソースコードリポジトリ内のソースコードが変更されると、前記ソースコードの変更に基づいて更新されたバイナリを含むように、前記コンテナベースのシステムは、少なくとも1つのマイクロサービスイメージおよび少なくとも1つのコンテナイメージおよび少なくとも1つのコンテナを自動的に更新するように動作可能である、請求項9に記載のスケーラブルコンテナベースのシステム。When the source code in the source code repository is modified, the container-based system includes at least one microservice image and at least one container image so as to include binaries updated based on the source code changes. And the scalable container-based system of claim 9, which is capable of operating to automatically update at least one container. スケーラブルコンテナベースのシステムを作成し、動作させる方法であって、前記方法は、A method of creating and operating a scalable container-based system, the method described above.
複数のトランザクション定義ベクトルをリポジトリ内に記憶することであって、前記複数のトランザクション定義ベクトルは、レガシーコンピューティング環境において実行するようにコンパイルされたレガシーアプリケーションによって、対応するトランザクションの性能に関連付けられたバイナリプログラムファイルを識別する、ことと、Storage of multiple transaction definition vectors in a repository, said multiple transaction definition vectors are binaries associated with the performance of the corresponding transaction by a legacy application compiled to run in a legacy computing environment. Identifying the program file and
マイクロサービスイメージビルダが、前記複数のトランザクションの実行において実際に使用されていないプログラムを排除することによって、前記複数のトランザクションに対応するマイクロサービスイメージを生成し、残りのプログラムのバイナリを含むイメージをマイクロサービスイメージリポジトリ内に記憶し、前記排除することは、前記複数のトランザクション定義ベクトル内の識別されたバイナリと、前記複数のトランザクションの実行において実際に使用されている前記バイナリを示すアクティビティログデータとを比較することを含む、ことと、The microservice image builder generates a microservice image corresponding to the multiple transactions by eliminating programs that are not actually used in the execution of the multiple transactions, and micro-images containing the binaries of the remaining programs. The exclusion stored in the service image repository includes the identified binaries in the plurality of transaction definition vectors and the activity log data indicating the binaries actually used in the execution of the plurality of transactions. Including comparing and
レガシーエミュレータの機能要素に対応する一組のイメージを相補的コンポーネントリポジトリ内に記憶することであって、前記レガシーエミュレータは、前記レガシーコンピューティング環境とは異なるコンピューティング環境における実行の場合、前記異なるコンピューティング環境における前記レガシーコンピューティング環境における実行のためにコンパイルされたアプリケーションの実行を可能にする、ことと、The storage of a set of images corresponding to the functional elements of the legacy emulator in a complementary component repository, wherein the legacy emulator is run in a different computing environment than the legacy computing environment. Allowing the execution of applications compiled for execution in the legacy computing environment in the wing environment, and
コンテナ化環境におけるマイクロサービスとして前記複数のトランザクションを実行するための複数のコンテナイメージを、コンテナビルダによって前記複数のトランザクションに対応するマイクロサービスイメージにアクセスすることと、前記マイクロサービスイメージ内に存在する呼び出しのシグネチャを使用して前記複数のトランザクションの実行のために要求される前記レガシーエミュレータの相補的コンポーネントを識別することと、前記マイクロサービスおよび前記レガシーエミュレータの相補的コンポーネントを含むイメージをコンテナイメージリポジトリ内に記憶することとによって構築することと、Accessing the microservice image corresponding to the plurality of transactions by the container builder for the plurality of container images for executing the plurality of transactions as a microservice in the containerized environment, and calling existing in the microservice image. Use the signature of to identify the complementary components of the legacy emulator required for the execution of the multiple transactions, and to image in the container image repository containing the microservices and the complementary components of the legacy emulator. To build by remembering and to
コンテナ管理システムを使用して、前記異なるコンピューティング環境において少なくとも1つのコンテナを作成し、前記複数のコンテナイメージの少なくとも1つを前記コンテナ内に記憶することと、Using a container management system to create at least one container in the different computing environments and store at least one of the plurality of container images in the container.
前記コンテナ内の前記複数のコンテナイメージのうちの前記少なくとも1つによって、トランザクションを実行することとTo execute a transaction by at least one of the plurality of container images in the container.
を含む、方法。Including, how.
前記アクティビティログデータは、前記レガシーコンピューティング環境において実行する前記レガシーアプリケーションのログを使用してアクティビティログアナライザによって生成される、請求項22に記載の方法。22. The method of claim 22, wherein the activity log data is generated by an activity log analyzer using logs of the legacy application running in the legacy computing environment. 前記アクティビティログデータは、エミュレーションにおいて実行する前記レガシーアプリケーションのログを使用してアクティビティログアナライザによって生成される、請求項22に記載の方法。22. The method of claim 22, wherein the activity log data is generated by an activity log analyzer using the logs of the legacy application performed in emulation. 静的アナライザを使用して前記複数のトランザクション定義ベクトルを生成することにより、データタイプおよびメッセージフォーマットを前記複数のトランザクションに関連付けられたソースコードから抽出し、前記コンテナ管理システムによる使用のためのメッセージインターフェースを生成することをさらに含む、請求項22に記載の方法。By generating the multiple transaction definition vectors using a static analyzer, the data type and message format can be extracted from the source code associated with the multiple transactions and the message interface for use by the container management system. 22. The method of claim 22, further comprising generating. WSDLメッセージインターフェースを生成することと、前記WSDLメッセージインターフェースを前記コンテナ管理システムに提供することとをさらに含む、請求項22に記載の方法。22. The method of claim 22, further comprising generating a WSDL message interface and providing the WSDL message interface to the container management system. 前記レガシーエミュレータによって使用されるオペレーティングシステムソフトウェアパッケージの複数のイメージを前記相補的コンポーネントリポジトリ内に記憶することと、To store multiple images of the operating system software package used by the legacy emulator in the complementary component repository.
前記レガシーエミュレータの前記識別された相補的コンポーネントによって使用されるソフトウェアパッケージのイメージを前記複数のコンテナイメージ内に挿入することとInserting an image of a software package used by the identified complementary component of the legacy emulator into the plurality of container images.
を含む、請求項22に記載の方法。22. The method of claim 22.
複数のコンテナを前記コンテナ管理システムによって作成することをさらに含む、請求項22に記載の方法。22. The method of claim 22, further comprising creating a plurality of containers by the container management system. 相補的イメージの組を、共通ポッド内の別個のコンテナの中でインスタンス化することを含む、請求項28に記載の方法。28. The method of claim 28, comprising instantiating a set of complementary images in separate containers within a common pod. 前記複数のコンテナのうちの1つは、レガシーデータベースアプリケーションを含む、請求項28に記載の方法。28. The method of claim 28, wherein one of the plurality of containers comprises a legacy database application. レガシートランザクションを実行するための同一のコンテナイメージが、前記コンテナ管理システムによって複数のコンテナ内に挿入される、請求項28に記載の方法。28. The method of claim 28, wherein the same container image for performing a legacy transaction is inserted into a plurality of containers by the container management system. コンテナイメージの第1のバージョンが、前記コンテナ管理システムによってコンテナ内に挿入され、更新されたコンテナイメージが、前記コンテナ管理システムによって別のコンテナ内に挿入される、請求項28に記載の方法。28. The method of claim 28, wherein a first version of the container image is inserted into a container by the container management system and an updated container image is inserted into another container by the container management system. 前記シグネチャのうちの少なくとも1つを、前記レガシーエミュレータのネイティブAPIへの呼び出しと置換することを含む、請求項22に記載の方法。22. The method of claim 22, comprising replacing at least one of the signatures with a call to the native API of the legacy emulator. 前記コンテナイメージリポジトリは、前記コンテナ管理システムのリポジトリである、請求項22に記載の方法。The method according to claim 22, wherein the container image repository is a repository of the container management system. 前記レガシーエミュレータの個々のシステムコンポーネントは、分離されたイメージとして前記相補的コンポーネントリポジトリ内に個々に記憶される、請求項22に記載の方法。22. The method of claim 22, wherein the individual system components of the legacy emulator are individually stored as separate images in the complementary component repository.
JP2021175401A 2017-04-28 2021-10-27 Containerized deployment of microservices based on monolithic legacy applications Active JP7316591B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021175401A JP7316591B2 (en) 2017-04-28 2021-10-27 Containerized deployment of microservices based on monolithic legacy applications
JP2023088533A JP2023109980A (en) 2017-04-28 2023-05-30 Containerized deployment of microservices based on monolithic legacy application

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/IB2017/052504 WO2018197928A1 (en) 2017-04-28 2017-04-28 Containerized deployment of microservices based on monolithic legacy applications
JP2019558444A JP7057571B2 (en) 2017-04-28 2017-04-28 Containerized deployment of microservices based on monolithic legacy applications
JP2021175401A JP7316591B2 (en) 2017-04-28 2021-10-27 Containerized deployment of microservices based on monolithic legacy applications

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2019558444A Division JP7057571B2 (en) 2017-04-28 2017-04-28 Containerized deployment of microservices based on monolithic legacy applications

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023088533A Division JP2023109980A (en) 2017-04-28 2023-05-30 Containerized deployment of microservices based on monolithic legacy application

Publications (3)

Publication Number Publication Date
JP2022009562A JP2022009562A (en) 2022-01-14
JP2022009562A5 true JP2022009562A5 (en) 2022-01-21
JP7316591B2 JP7316591B2 (en) 2023-07-28

Family

ID=87805601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021175401A Active JP7316591B2 (en) 2017-04-28 2021-10-27 Containerized deployment of microservices based on monolithic legacy applications

Country Status (1)

Country Link
JP (1) JP7316591B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3531728B2 (en) 1999-10-27 2004-05-31 日本電気株式会社 Apparatus and method for managing configuration relation of program described in object-oriented programming language, and storage medium

Similar Documents

Publication Publication Date Title
US11435986B2 (en) Containerized deployment of microservices based on monolithic legacy applications
AU2022200853B2 (en) Containerized deployment of microservices based on monolithic legacy applications
US10481902B2 (en) Initialization status of a register employed as a pointer
US10649802B2 (en) Component based dynamic guest instantiation
US11762639B2 (en) Containerized deployment of microservices based on monolithic legacy applications
JP5030647B2 (en) Method for loading a program in a computer system including a plurality of processing nodes, a computer readable medium containing the program, and a parallel computer system
US20210004252A1 (en) VIRTUALIZING HARDWARE COMPONENTS THAT IMPLEMENT Al APPLICATIONS
US10496433B2 (en) Modification of context saving functions
US10534640B2 (en) System and method for providing a native job control language execution engine in a rehosting platform
JP2022009562A5 (en)
Kaplan et al. Cray Compute Node Linux
JP2022009562A (en) Containerized deployment of microservices based on monolithic legacy application
Yang Research on Big Data Management and Storage Based on Linux Container
LESER WORK PACKAGE 5: Data-intensive computing with genomic data
Power Mainarchitecture layers.