[Linux] Announcing the release of Oracle Linux 7 Update 5

原文はこちら。
https://blogs.oracle.com/linux/announcing-the-release-of-oracle-linux-7-update-5

Oracleはx86_64アーキテクチャ向けのOracle Linux 7 Update 5の一般提供を発表します。個々のRPMパッケージはUnbreakable Linux Network (ULN) とOracle Linux Yumサーバで確認できます。
Unbreakable Linux Network (ULN)
https://linux.oracle.com/
Oracle Linux yum server
https://yum.oracle.com/
ISOインストールイメージはまもなくOracle Software Delivery Cloudからダウンロードできるようになる予定です。
Oracle Software Delivery Cloud
http://edelivery.oracle.com/new
Oracle Container Registry
https://container-registry.oracle.com/
Docker Hub
https://hub.docker.com/_/oraclelinux/
Oracle Linux 7 Update 5には、以下のカーネルパッケージが同梱されています。
  • x86-64アーキテクチャ用Unbreakable Enterprise Kernel (UEK) Release 4 (kernel-uek-4.1.12-112.16.4.el7uek)
  • x86-64アーキテクチャ用Red Hat Compatible Kernel (kernel-3.10.0-862.el7)

Application Compatibility

Oracle Linuxは、Red Hat Enterprise Linux(RHEL)とのユーザー空間の互換性を維持しています。これはオペレーティング・システムの基礎となるカーネル・バージョンとは独立しています。ユーザー空間内の既存のアプリケーションは、Oracle Linux 7 Update 5+UEK Release 4の組み合わせ上で、修正無しでそのまま実行できます。Red Hat Enterprise Linux 7またはOracle Linux 7ですでに動作保証済みのアプリケーションでは再度認証する必要はありません。

Notable security-related features in this release:

  • 最近のIntelプロセッサーのメモリー保護キーのサポート
    このアップデートには、最新のIntelプロセッサー上のメモリー保護キーハードウェア機能のサポートが含まれています。CPUは、各キーに対して2つの別個のビット(アクセス禁止と書き込み禁止)を含む新しいユーザーアクセス可能なレジスタ(PKRU)を通してこのサポートを提供します。
  • 起動プロセス中にネットワークに接続された暗号化されたデバイスのロックを解除する機能以前は、ネットワークに接続されたブロックデバイスは、ネットワークサービスを開始する前にこれらのデバイスを接続および復号化できなかったため、ブートプロセス中にロックを解除できませんでした。
  • mod_sslでのSSLv3の無効化
    SSL/TLS接続のセキュリティ改善のため、httpd mod_sslモジュールのデフォルト構成でSSLv3のサポートを無効にしています。この変更が特定の暗号化サイファースィートの利用が制限されます。
  • KASLR for KVMゲスト向けKASLRの追加 guests added.
    KVMゲスト用のカーネルアドレス空間レイアウトのランダム化(KASLR)機能が追加されました。
Oracle Linux 7.5では、Btrfsが引き続き完全にサポートされています。Btrfsのサポートは、Red Hat Compatible Kernelでは廃止予定になっています。
これらの機能やその他の新機能、変更点の詳細は、Oracle Linux Documentation LibraryのOracle Linux 7 Update 5リリースノートを参照してください。
Oracle Linux 7 Update 5 Release Notes
https://docs.oracle.com/cd/E52668_01/E93593/html/index.html
Operating Systems Documentation - Oracle Linux
https://docs.oracle.com/en/operating-systems/linux.html
Oracle Linuxは無料でダウンロード、利用、配布でき、すべてのアップデートと正誤表に無料で入手でき、お客様がサポート契約の必要なシステムを決定します。
Oracle Linux Support
https://www.oracle.com/linux/index.html#support
そのため、Oracle Linuxは開発、テスト、および運用システムに最適です。 お客様は、すべてのシステムを最新かつ安全に保ちつつ、個々のシステムに対してどのサポートカバレッジが最善かを判断します。
Oracle Linux Premierサポートをご利用のお客様は、Ceph Storage、Oracle Linuxソフトウェア・コレクション、Oracle OpenStack、Oracle Kspliceを使用したゼロ・ダウンタイム・カーネル・アップデートといった、追加のLinuxプログラムもサポートされます。
Oracle Linuxの詳細については、以下のURLをご覧ください。
Oracle Linux
https://www.oracle.com/linux/index.html
https://www.oracle.com/jp/linux/index.html

[Java] Announcing GraalVM: Run Programs Faster Anywhere

原文はこちら。
https://blogs.oracle.com/developers/announcing-graalvm

現在の仮想マシン(VM)は、特定の言語または非常に少数の言語に対してのみ、プログラムの高性能な実行を提供します。コンパイル、メモリ管理、ツールは、‘don’t repeat yourself’ (DRY) (重複を防ぐ)の原則に違反して、言語ごとに別々に管理されています。これは、VM実装者にとって大きな負担になるだけでなく、パフォーマンス特性、ツール、および設定が一貫しないために開発者にとっても大きな負担になります。さらに、異なる言語で書かれたプログラム間の通信には、高コストなシリアライズ、デシリアライズのロジックが必要です。最後に、高性能VMは、高いメモリフットプリントの重量プロセスで、埋め込みは困難です。
数年前、これらの欠点に対処するために、Oracle Labsは仮想マシンの新しいアーキテクチャを探索するための新しい研究プロジェクトを始めました。
Oracle Labs
https://labs.oracle.com
我々のビジョンは、すべてのプログラミング言語で高性能を提供する単一のVMを作成し、プログラム間の通信を容易にすることでした。このアーキテクチャは、メンテナンス性を向上させるために統一された、言語非依存のツールをサポートし、その組み込み可能性(embeddability)の結果、VMがスタック全体で利用できるようにすることを目指しています。
この目的に適うよう、このようなVMのビルドにあたって新しいアプローチを考案しました。長年にわたる研究開発の結果、我々は今、最初の本番環境で利用可能なリリースを発表する準備が整いました。
Practical partial evaluation for high-performance dynamic language runtimes
https://dl.acm.org/citation.cfm?id=3062381

Introducing GraalVM

本日、polyglot(多言語)な世界向けに設計された汎用仮想マシンGraalVM 1.0のリリースを発表しました。
GraalVM
http://www.graalvm.org/
GraalVMは、個々の言語に対し高いパフォーマンスを提供し、さらに多言語アプリケーションでパフォーマンスのオーバーヘッドをゼロにする相互運用性を提供します。GraalVMの場合、言語境界でデータ構造を変換するのではなく、オブジェクトと配列を別のプログラミング言語で直接使用できます。

シナリオとして、例えばNode.jsコードからJavaライブラリの機能にアクセスしたり、JavaからPython統計ルーチンを呼び出したり、Rを使用して別の言語で管理されるデータから複雑なSVGプロットを作成したりすることが考えられます。GraalVMを使用すると、開発者は現在のタスクを解決するのに最も生産的な言語を自由に使用できます。

GraalVM 1.0では以下の言語を実行できます。
  • JVMベースの言語(Java、Scala、Groovy、Kotlinなど)
  • JavaScript (Node.jsを含む)
  • (CやC++、Rustで記述されたプログラムから生成された)LLVM bitcode
  • Ruby、R、Pythonの実験的バージョン
GraalVMは、スタンドアロンでも、OpenJDKやNode.jsのようなプラットフォームの一部としても、あるいはMySQLやOracle RDBMSなどのデータベースに埋め込まれていても実行できます。
Oracle Database Multilingual Engine (MLE)
https://oracle.github.io/oracle-db-mle/
アプリケーションは、標準化されたGraalVM実行環境を介してスタック全体に柔軟にデプロイできます。データ処理エンジンの場合、GraalVMは、実行中のプログラムにカスタム形式で保存されたデータを直接公開します。その際の変換オーバーヘッドはありません。
JVMベースの言語の場合、GraalVMは速やかに立ち上がり、メモリフットプリントの低い、プリコンパイルされたネイティブイメージを作成するメカニズムを提供します。イメージ生成プロセスは、メインのJavaメソッドから到達可能なコードを見つけるための静的解析を実行し、完全なAOT(Ahead-of-time)コンパイルを実行します。生成されたネイティブバイナリには、即時実行のためのマシンコード形式のプログラム全体が含まれています。 このネイティブバイナリを他のネイティブプログラムとリンクしたり、GraalVMコンパイラを包含して、GraalVMベースの言語をハイパフォーマンスで実行できるよう、JIT(Just-In-Time)コンパイルをサポートすることもできます。

GraalVMエコシステムの主な利点は、すべてのGraalVMデプロイメントに適用される言語に依存しないツールです。GraalVMのコア・インストールでは、言語に依存しないデバッガ、プロファイラ、およびヒープビューアを提供します。
GraalVM Debugging and Monitoring Tools
http://graalvm.org/docs/reference-manual/tools/
3rdパーティツールの開発者や言語開発者に対し、計測ツールAPIや言語実装APIを使用してGraalVMエコシステムを充実してもらうよう呼びかけています。GraalVMは言語レベルの仮想化レイヤーとして、すべての言語でツールと埋め込みを利用できるようにすることを目指しています。

GraalVM in Production

Twitterは、Scalaベースのマイクロサービスを実行するためGraalVMを本番環境に導入している企業の1つです。GraalVMコンパイラの積極的な最適化により、オブジェクトの割り当てが削減され、全体の実行速度が向上しています。この結果、ガベージコレクションに伴う休止が少なくなり、プラットフォームの実行に必要な計算能力が少なくて済みます。以下のプレゼンテーションでは、TwitterのJVMエンジニアが自身の詳細な体験とGraalVMコンパイラを使ってどのようにコストを低減しているかを説明しています。


現在のリリース1.0では、本番利用の場合、JVMベースの言語と(Node.jsを含む)JavaScriptを推奨しています。R、Ruby、Python、LLVMベースの言語はまだ実験的な段階です。

Getting Started

GitHub上のGraalVMオープンソースリポジトリから構築したGraalVM v1.0(リリース候補)Community Edition(CE)のバイナリは以下のURLからご利用いただけます。
GraalVM Community Edition 1.0 RC1
https://github.com/oracle/graal/releases
このリリース候補版に対し、コミュニティからのフィードバックを求めています。GitHubのIssueやGitHubのプルリクエストの形でフィードバックを承っています。
Issues
https://github.com/oracle/graal/issues
Pull Requests
https://github.com/oracle/graal/pulls
GraalVM CEに加え、本番環境でのセキュリティ、スケーラビリティ、パフォーマンス向上を目的として、GraalVM v1.0(リリース候補)Enterprise Edition(EE)を提供します。GraalVM EEはOracle Cloud Infrastructureで利用可能で、評価のためにOracle Technology Networkからダウンロードできます。 GraalVM EEの本番利用に関しては、graalvm-enterprise_grp_ww@oracle.comまでご連絡ください。

Stay Connected

最新のインストーラとドキュメントは以下のURLにあります。
GraalVM
http://www.graalvm.org/
GitHubリポジトリで、開発状況、リクエスト・エンハンスメント、または問題の報告をチェックしてください。
GraalVM: Run Programs Faster Anywhere
www.github.com/oracle/graal
以下のGraalVMメーリングリストに登録することをお勧めします。
  • graalvm-announce@oss.oracle.com
  • graalvm-users@oss.oracle.com
  • graalvm-dev@oss.oracle.com
Twitterのアカウント @graalvm でTweetします。ハッシュタグ #GraalVM でツイートやスタックオーバーフローに関する質問をチェックしています。

Future

この最初のリリースは始まりにすぎず、GraalVMのあらゆる側面の改善、特にPython、R、Rubyのサポートのために取り組んでいます。

GraalVMはオープンなエコシステムであり、独自の言語やツールを作成することをお勧めします。GraalVMは、標準化された言語実行と言語に依存しない豊富なツールを可能にする共同プロジェクトにしたいと考えています。詳細はwww.graalvm.orgを参照してください。
みなさまと一緒にPolyglotな世界のためのこの次世代テクノロジーを作っていくことを楽しみにしています。

[Cloud] Which PaaS are available on OCI?

OCI (Oracle Cloud Infrastructure) で利用可能なPaaSはDatabaseのみ、と思われている方が多いようですが、実は以下のドキュメントにある通り、Database以外にもいくつかのサービスがサポートされています。
Prerequisites for Oracle Platform Services on Oracle Cloud Infrastructure
Information About Supported Platform Services
https://docs.us-phoenix-1.oraclecloud.com/Content/General/Reference/PaaSprereqs.htm#supported
サービスドキュメント
Database Cloud ServiceAbout Database Deployments in Oracle Cloud Infrastructure
https://docs.oracle.com/en/cloud/paas/database-dbaas-cloud/csdbi/db-deployments-oci.html
Java Cloud ServiceAbout Java Cloud Service Instances in Oracle Cloud Infrastructure
https://docs.oracle.com/en/cloud/paas/java-cloud/jscug/instances-oracle-cloud-infrastructure.html
MySQL Cloud ServiceAbout MySQL Cloud Service Deployments
https://docs.oracle.com/cloud/latest/mysql-cloud/UOMCS/GUID-7F197ECD-1EA0-4423-B9C2-75B39C57E984.htm
Event Hub Cloud ServiceAbout Oracle Event Hub Cloud Service - Dedicated instances inOracle Cloud Infrastructure
https://docs.oracle.com/en/cloud/paas/event-hub-cloud/admin-guide/instancesonoci-eventhubdedicated.html
Data Hub Cloud ServiceAbout Oracle Data Hub Cloud Service Clusters in Oracle Cloud Infrastructure
https://docs.oracle.com/en/cloud/paas/data-hub-cloud/user/data-hub-cs-clusters-oci.html
Big Data CloudAbout Big Data Cloud Clusters in Oracle Cloud Infrastructure
https://docs.oracle.com/en/cloud/paas/big-data-compute-cloud/csspc/big-data-cloud-clusters-oracle-cloud-infrastructure.html
Oracle SOA Cloud ServiceAbout SOA Cloud Service Instances in Oracle Cloud Infrastructure Classic and Oracle Cloud Infrastructure
https://docs.oracle.com/en/cloud/paas/soa-cloud/csbcs/instances-oracle-cloud-infrastructure-classic-and-oracle-cloud-infrastructure.html

通常のOracle Cloud Infrastructure Classic上で構成する場合とは前提条件が違いますので、ドキュメントをよく読んでお試しください。
Prerequisites for Oracle Platform Services on Oracle Cloud Infrastructure
https://docs.us-phoenix-1.oraclecloud.com/Content/General/Reference/PaaSprereqs.htm

[Cloud, Docker] Oracle Developer Cloud Service Adds Docker, Pipelines, and More

原文はこちら。
https://blogs.oracle.com/cloud-platform/oracle-developer-cloud-service-adds-docker%2c-pipelines%2c-and-more

Oracle Developer Cloud Serviceが4月のリリースで新機能が追加されました。このエントリではそのいくつかを簡単にご紹介します。

New Build & Continuous Integration Architecture

ビルドジョブのための専用ビルドサーバーを利用できるようになりました。ビルドサーバーはOracle Cloud Infrastructure Compute ClassicとOracle Cloud Infrastructure Object Storage Classicインスタンスを使います。専用サーバーを構成し、Oracle Developer Cloud Service内から直接種々のソフトウェアパッケージを含めることができます。
Configure Your Build Server
Image 1 : Customize your build server software stack
Oracle Storage Cloud Service Classicと統合すれば、ビルド間で永続的なMavenリポジトリを持つことができるだけでなく、ビルド成果物を格納する場所を提供できます。
この新しい専用の永続的なビルド・アーキテクチャで、ビルドの高速化が実現されることでしょう。

Build Pipelines

ビルドオーケストレーションを視覚的に定義できるようになりました。ビルドジョブをつなぎ、実行順序を視覚的にパイプラインを使って定義します。また、最新のステータスに基づいて色分けされたビルドパイプラインの進捗状況も表示します。
Build Pipelines
Image 2 : visualize your build pipeline

Docker Support

Continuous Integrationプロセスの一環としてDockerコンテナをビルド・パブリッシュできるようになりました。ビルド構成の新しいオプションでは、さまざまなDockerコマンドを呼び出す手順を定義できます。 さらに、Dockerレジストリへの接続を定義し、Dockerコンテナをパブリッシュできます。
docker build steps
image 3: Configuring a docker step as part of your build job

SonarQube Integration

SonarQubeとの統合が可能になりました。この結果、ビルドプロセスの一環としてコードを分析し、その結果を公開することができるようになりました。
Continuous Code Quality | SonarQube
https://www.sonarqube.org/
Sonarサーバーへの接続を定義して、ビルドのテスト結果を監視します。
Sonar Configuration
image 4: configure connection to SonarQube server
新機能の詳細は、以下のドキュメントをご覧ください。
What’s New in Oracle Developer Cloud Service - April 2018
https://docs.oracle.com/en/cloud/paas/developer-cloud/csdwn/index.html#CSDWN-GUID-88FCFA5A-9EA1-4E43-BF2B-7D5B647B5A07

[Integration, Cloud] Oracle Integration Cloud (OIC) - File-based Integration Best Practices

原文はこちら。
https://blogs.oracle.com/fmw/oracle-integration-cloud-oic-file-based-integration-best-practices

Introduction

Oracle Integration Cloud Service (OIC) では、幅広いユースケースやシナリオをサポートするため、ファイルの受信および処理に対し、いくつかのデザインおよびモデリング上の選択肢を用意しています。ファイルをOICでSecure Shell (SSH) File Transfer Protocol (sFTP) SSH経由で受け取ったり、REST/SOAP/HTTPインターフェースで受け取ったりできます。このエントリの目的は、ファイルサイズやコンテンツのフォーマット、Outboundへの配信方法に基づいて、重要な設計上の選択肢を紹介することにあります。また、OICでの重要なオーケストレーション手順に含まれる、Fusion Applicationのファイルベースの統合パターンもご紹介します。

ファイルベースのOracle Fusion Applicationとの統合にはいくつかのパターンがあります。以下はその例です。
  • ERP CloudはFile Based Data Integration (FBDI) インターフェースを使ったバルクデータ・インポートをサポート
  • HCM CloudはHCM Data Loader (HDL) を使ったバルクデータ・インポートをサポート
  • CRM Cloudは同様のパターンをサポート
  • ERP Cloud Bulk Extracts (BI PublisherやBI Cloud Connectorを利用) では、ファイルをUCMもしくはsFTPサーバに配信
  • 請求書、発注書やその他のサポート対象のドキュメントといった添付ファイルをERPやHCMにアップロード
詳細は、以下の各クラウドサービスのドキュメントをご覧ください。
File-Based Data Import for Oracle Financials Cloud Release 13 (update 18A)
External Data Integration Services for Oracle Cloud: Overview
https://docs.oracle.com/en/cloud/saas/financials/r13-update18a/oefbf/External-Data-Integration-Services-for-Oracle-Cloud-Overview.html
Oracle Human Capital Management Cloud Integrating with HCM Release 13 (update 18A)
HCM Data Loader: Overview
https://docs.oracle.com/en/cloud/saas/applications-common/r13-update18a/faihm/introduction-to-hcm-data-loader.html#FAIHM2243095
File-Based Data Import for Oracle Sales Cloud Release 13 (update 18A)
File-Based Data Import for Oracle Sales Cloud: Overview
https://docs.oracle.com/en/cloud/saas/applications-common/r13-update18a/oefbs/FileBased-Data-Import-for-Oracle-Sales-Cloud-Overview.html
ERPのFBDI、HCMのHDLおよびCRMの全てのファイルベースの統合では、CSV形式でそれぞれのオブジェクトテンプレートに基づきデータファイルを生成する必要があります。このファイルは、オンプレミスシステムまたは他のクラウドアプリケーションによって生成され、OICが処理できるよう、sFTPサーバーにアップロードされます。ファイルをFusion Applications Content Server(UCM)にアップロードすることもできます。
OICの統合フローは、ファイルを取得し、オプションとして、enrichmentや変換などのアクションでファイルのコンテンツを処理して、Fusion Applicationsのそれぞれのオブジェクトのデータファイルを生成します。データファイルがそれぞれのオブジェクトテンプレートに従ってオンプレミスシステムで生成された場合、OICはこのファイルをERPまたはHCM Cloudにパススルーしてインポートプロセスを開始できます。
同様に、ファイルをFusion Applicationsから抽出し、UCMサーバを介してOICに配信されます。 UCMサーバーは、Fusion Applications内にあり、このUCMサーバーには抽出されたファイルが配信され、後工程の処理のためにファイルが格納されています。
下表は、展開後のファイルサイズに基づいてファイルベースの統合フローを設計するためのハイレベルの決定モデルです。

Table 1 - インターフェースがサポートするファイルサイズ
 (展開後のファイルサイズに基づく)

オリジナルの
ファイルサイズ
Inbound
インターフェース
ランタイムの
考慮点
Outbound
インターフェース
〜1MB 任意のアダプタ 制限なし 任意のアダプタ(送信ファイルサイズが10MB以下)
BASE64エンコーディング、ファイル添付をサポート
1MB~10MB 任意のアダプタ パススルーの場合は制限なし

ファイル処理する場合の制限事項
XMLもしくはCSV形式のみサポート
StageFile - ファイルのセグメント読み取りを利用(ファイル全体の読み込みは非サポート)
    任意のアダプタ
    BASE64エンコーディング、ファイル添付をサポート
    10MB ~ 500MB FTP、REST、SOAPアダプタ パススルーの場合は制限なし

    ファイル処理する場合の制限事項
    XMLもしくはCSV形式のみサポート
    StageFile - ファイルのセグメント読み取りを利用(ファイル全体の読み込みは非サポート)
      添付のみ
      ファイル添付をサポートする任意のアダプタ(FTP、REST、SOAP)
      500MB以上

      (注意)
      ファイルサイズの最大値は並列度、利用可能なリソース、I/Oタイムアウトの考慮事項に依存
      (デフォルトは300秒)
      FTP、REST、SOAPアダプタ パススルーの場合は制限なし

      ファイル処理する場合の制限事項
      XMLもしくはCSV形式のみサポート
      StageFile - ファイルのセグメント読み取りを利用(ファイル全体の読み込みは非サポート)
        添付のみ
        ファイル添付をサポートする任意のアダプタ(FTP、REST、SOAP)

        全てのファイル送受信で、アップロード/ダウンロードは自動的に300秒を超えるとタイムアウトします。

        OIC Design/Modeling Consideration

        ファイルサイズ、コンテンツ形式、および処理要件によって、OICで統合フローをモデル化する方法が決まります。下表は、ファイルサイズ、コンテンツ、パススルーもしくはOIC内での処理が必要かどうか(Fusion Applicationsがそれぞれのオブジェクトまたはインターフェイスでサポートするファイルを生成するためのEnrichmentや変換アクションが必要かどうか)に基づいて、統合フローを設計する方法を示しています。

        Table 2 - 決定モデル(ファイルサイズは展開後のファイルに基づく)
        InboundファイルインターフェースInbound 展開後のファイルサイズ 主要なオーケストレーションの手順 Outboundファイルサイズ ファイル配信形態Outboundインターフェース
        1FTP
        (File ReadもしくはStageFile -Readでファイル全体を読み取り)

        展開後のファイルのみ
        コンテンツ形式はXMLもしくはCSV
          (注意)
          ファイルサイズにかかわらず、バイナリファイルに対しては使わないこと(バイナリファイルの場合、FTPでファイルダウンロードを推奨)
          〜1MB1. FTP - Read FileもしくはStageFile - Readでファイル全体を読み取り
          2. Enrichmentや変換を実行
          3. StageFile - Writeでターゲットファイルを生成(注意:並列"for each"内で利用するWrite操作はCSV形式のみサポート)
          4. StageFile - Zipで圧縮
          5. FTP/SOAP/REST - 配信(encodeReferenceToBase64関数もしくは添付を利用)
            〜10MB BASE64、もしくは添付
              任意
              2FTP

              展開後のファイル、もしくは圧縮ファイル
              コンテンツ形式はXMLもしくはCSV

              (注意)
              バイナリファイルはStageFile操作で読み取り不可
              〜10MB 1. FTP - ファイルのリスト取得
              2. FTP - ファイルダウンロード
              3. StageFile - ファイルのセグメント読み取り
              4. Enrichmentや変換を実行
              5. StageFile - ターゲットファイルを生成(注意:並列"for each"内で利用するWrite操作はCSV形式のみサポート)
              6. StageFile - Zipで圧縮
              7. FTP/SOAP/REST - 配信(encodeReferenceToBase64関数もしくは添付を利用)
                〜10MB BASE64、もしくは添付
                  任意
                  3FTP
                  (2と同じだが、ファイルサイズが10MBを超える場合)

                  (注意)
                  バイナリファイルはStageFile操作で読み取り不可
                  10MB〜 1. FTP - ファイルのリスト取得
                  2. FTP - ファイルダウンロード
                  3. StageFile - ファイルのセグメント読み取り
                  4. Enrichmentや変換を実行
                  5. StageFile - ターゲットファイルを生成(注意:並列"for each"内で利用するWrite操作はCSV形式のみサポート)
                  6. StageFile - Zipで圧縮
                  7. FTP/SOAP/REST - 配信(添付のみ利用可)
                    10MB〜 添付のみ FTP
                    SOAP
                    REST
                    4REST
                    統合フローのOICインターフェース、Base64を利用

                    展開後のファイル、もしくは圧縮ファイル
                    コンテンツ形式はXMLもしくはCSV


                    (注意)
                    バイナリファイルはStageFile操作で読み取り不可
                    〜10MB 1. Mapperでファイル参照(decodeReferenceFromBase64 もしくはAttachmentを利用)
                    2. StageFile - Zipファイルを展開
                    3. StageFile - ファイルのセグメント読み取り
                    4. Enrichmentや変換を実行
                    5. StageFile - ターゲットファイルを生成(注意:並列"for each"内で利用するWrite操作はCSV形式のみサポート)
                    6. StageFile - Zipで圧縮
                    7. FTP/SOAP/REST - 配信(encodeReferenceToBase64関数もしくは添付を利用)
                    〜10MB BASE64、もしくは添付
                      任意
                      5REST
                      統合フローのOICインターフェース、添付を利用

                      展開後のファイル、もしくは圧縮ファイル
                      コンテンツ形式はXMLもしくはCSV

                      (注意)
                      バイナリファイルはStageFile操作で読み取り不可
                      10MB〜 1. Mapperでファイル参照
                      2. StageFile - Zipファイルを展開
                      3. StageFile - ファイルのセグメント読み取り
                      4. Enrichmentや変換を実行
                      5. StageFile - ターゲットファイルを生成(注意:並列"for each"内で利用するWrite操作はCSV形式のみサポート)
                      6. StageFile - Zipで圧縮
                      7. FTP/SOAP/REST - 配信(添付のみ利用可)
                        10MB〜 添付のみFTP
                        SOAP
                        REST
                        6中間SOAP/RESTレスポンス・ペイロードのファイル

                        展開後のファイル、もしくは圧縮ファイル
                        コンテンツ形式はXMLもしくはCSV

                        (注意)
                        バイナリファイルはStageFile操作で読み取り不可
                        〜10MB 1. Mapperでファイル参照(decodeReferenceFromBase64 もしくはAttachmentを利用)
                        2. StageFile - Zipファイルを展開
                        3. StageFile - ファイルのセグメント読み取り
                        4. Enrichmentや変換を実行
                        5. StageFile - ターゲットファイルを生成(注意:並列"for each"内で利用するWrite操作はCSV形式のみサポート)
                        6. StageFile - Zipで圧縮
                        7. FTP/SOAP/REST - 配信(encodeReferenceToBase64関数もしくは添付を利用)
                          〜10MB BASE64、もしくは添付
                            任意
                            76と同上だが、ファイルサイズが10MBを超える場合

                            (注意)
                            バイナリファイルはStageFile操作で読み取り不可
                            10MB〜 1. Mapperでファイル参照
                            2. StageFile - Zipファイルを展開
                            3. StageFile - ファイルのセグメント読み取り
                            4. Enrichmentや変換を実行
                            5. StageFile - ターゲットファイルを生成(注意:並列"for each"内で利用するWrite操作はCSV形式のみサポート)
                            6. StageFile - Zipで圧縮
                            7. FTP/SOAP/REST - 配信(添付のみ利用可)
                            10MB〜 添付のみ FTP
                            SOAP
                            REST

                            Fusion Applications - SaaS Common Use Cases with file-based integrations


                            Table 3 - Fusion Applicationでのユースケース
                            ユースケース OICの主要なオーケストレーション手順
                            1sFTPサーバからデータファイルを取得し、圧縮データファイルをERP/HCM/UCM SOAP統合インタフェースにパススルーで送信する場合

                            (注意)
                            圧縮後のファイルサイズ:10MB以下
                            コンテンツ形式:XMLもしくはCSV
                            (バイナリファイルはパススルーのみ)

                              - FBDIまたはHDLバルクインポートを利用。それぞれのテンプレートに従ってデータファイルを生成する。ERPまたはHCM Cloudへのデータファイル・インポートプロセスを開始する前に、変更や処理は不要。
                              - データファイルはパススルーするので、Enrichmentや変換をせずに表2のモデル2もしくは3の利用を検討する
                                1. FTP - ファイルリスト取得
                                2. FTP - ファイルダウンロード
                                3. Mapper - encodeReferenceToBase64関数の利用もしくは添付
                                4. Outbound - Base64もしくは添付
                                  21と同様だが、ファイルサイズが10MBを超える場合


                                  - FBDIまたはHDLバルクインポートを利用。それぞれのテンプレートに従ってデータファイルを生成する。ERPまたはHCM Cloudへのデータファイル・インポートプロセスを開始する前に、変更や処理は不要。
                                  - データファイルはパススルーするので、Enrichmentや変換をせずに表2のモデル3の利用を検討する
                                  1. FTP - ファイルリスト取得
                                  2. FTP - ファイルダウンロード
                                  3. Mapper - 添付のみ利用可
                                  4. Outbound - 添付のみ利用可
                                  3sFTPサーバからデータファイルを取得し、データファイルを処理(Enrichment、変換など)した上で、ERP/HCM/UCM SOAP統合インタフェースに送信する場合

                                  (注意)
                                  展開後のファイルサイズが10MB以下
                                  コンテンツ形式はXMLもしくはCSV


                                  - FBDIまたはHDLバルクインポートを利用。ソースファイルを基にして、FBDIやHDLファイルを生成し、ターゲットファイル用にEnrichmentや変換をする必要がある。
                                  - 表2のモデル2もしくは3の利用を検討する
                                    1. FTP - ファイルリスト取得
                                    2. FTP - ファイルダウンロード
                                    3. Mapper - encodeReferenceToBase64関数の利用もしくは添付
                                    4. StageFile - ファイルのセグメント読み取り
                                    5. Enrichmentや変換を実行
                                    6. StageFile - ターゲットファイルを生成(注意:並列"for each"内で利用するWrite操作はCSV形式のみサポート)
                                    7. StageFile - Zipで圧縮
                                    8.  Outbound  - FTP/SOAP/REST
                                    MapperではencodeReferenceToBase64関数もしくは添付を利用
                                    43と同様だが、展開後のファイルサイズは10MBを超える場合


                                    - FBDIまたはHDLバルクインポートを利用。ソースファイルを基にして、FBDIやHDLファイルを生成し、ターゲットファイル用にEnrichmentや変換をする必要がある。
                                    - 表2のモデル3の利用を検討する
                                      1. FTP - ファイルリスト取得
                                      2. FTP - ファイルダウンロード
                                      3. Mapper - encodeReferenceToBase64関数の利用もしくは添付
                                      4. StageFile - ファイルのセグメント読み取り
                                      5. Enrichmentや変換を実行
                                      6. StageFile - ターゲットファイルを生成(注意:並列"for each"内で利用するWrite操作はCSV形式のみサポート)
                                      7. StageFile - Zipで圧縮
                                      8.  Outbound  - FTP/SOAP/REST
                                      Mapperでは添付のみ利用可

                                      5Fusion Application UCM サーバーからファイルを取得する場合

                                      (注意)
                                      展開後のファイルサイズは10MB以下
                                      コンテンツ形式はXMLもしくはCSV

                                      - ERP/BIP (BI Publisher) もしくはHCM Extractsが生成したファイル、もしくはsFTPサーバではなくUCMにアップロードされたソースファイルを、Fusion ApplicationのUCMからダウンロード
                                      - 表2のモデル6もしくは7の利用を検討する
                                        1. UCMのSOAPサービスの呼び出し
                                        2. SOAPアダプタの添付オプションを選択
                                        3. Mapper - encodeReferenceToBase64関数もしくは添付を利用
                                        4. StageFile - Zipファイルを展開
                                        5. StageFile - ファイルのセグメント読み取り
                                          65と同様だが、ファイルサイズが10MBを超える場合

                                          - ERP/BIP (BI Publisher) もしくはHCM Extractsが生成したファイル、もしくはsFTPサーバではなくUCMにアップロードされたソースファイルを、Fusion ApplicationのUCMからダウンロード
                                          - 表2のモデル7の利用を検討する
                                            1. UCMのSOAPサービスの呼び出し
                                            2. SOAPアダプタの添付オプションを選択
                                            3. Mapper - 添付のみ利用可
                                            4. StageFile - Zipファイルを展開
                                            5. StageFile - ファイルのセグメント読み取り
                                              7SOAP/REST/HTTPインターフェースのレスポンス(メディアタイプはapplication/octet-stream)からファイルを取得する場合


                                              - SOAP/REST/HTTPレスポンスに添付されたファイルをダウンロード
                                              - 表2のモデル7の利用を検討する
                                                1. SOAP/RESTインターフェース管理を呼び出し、レスポンス・ペイロードのファイルを取得
                                                2. 添付オプションを選択(SOAP/RESTアダプタとも。APIは添付をサポートしている必要がある)
                                                3. Mapper - 添付のみ利用可
                                                4. StageFile - ファイルのセグメント読み取り
                                                  8OIC/ICSのRESTインターフェースを使う場合(マルチパート)
                                                  OIC統合フローをRESTインターフェースで呼び出す際にファイルを受信する

                                                  (注意)
                                                  ファイルサイズが10MBを超える
                                                  コンテンツ形式はXMLもしくはCSV


                                                  - オンプレミスもしくは他のクラウドシステムからOICの統合フローを呼び出す
                                                  1. OICでファイルを受信(オンプレミスもしくはOIC以外のシステムから呼び出す)
                                                  2. Mapper - 添付のみ利用可
                                                  3. StageFile - ファイルのセグメント読み取り

                                                    Conclusion

                                                    このブログは、上記のベストプラクティスとFusion Applicationsまたは他のアプリケーションでの一般的なファイルベースの統合ユースケースに基づいて、OICの統合フローのモデリングを支援するために用意しました。ファイルサイズ、コンテンツ形式、および配信形態に基づいて、OIC内のファイル処理方法に関する詳細情報を提供しました。

                                                    [Linux, Network] Congestion Control algorithms in UEK5 preview - try out BBR

                                                    原文はこちら
                                                    https://blogs.oracle.com/wim/done-cancel-v6

                                                    UEK5の新機能の1つに、BBR(bottleneck bandwidth and round-trip propagation time、ボトルネック帯域幅と往復伝搬時間)と呼ばれる、新しいTCP輻輳制御管理アルゴリズムがあります。以下の論文が参考になります。
                                                    BBR Congestion Control
                                                    https://www.ietf.org/proceedings/97/slides/slides-97-iccrg-bbr-congestion-control-02.pdf
                                                    BBR, the new kid on the TCP block
                                                    https://blog.apnic.net/2017/05/09/bbr-new-kid-tcp-block/
                                                    Linuxはbic、cubic、westwood、hybla、vegas、h-tcp、venoなど、幅広く輻輳制御アルゴリズムをサポートしています。
                                                    TCP輻輳制御について(Wikipedia)
                                                    https://en.wikipedia.org/wiki/TCP_congestion_control
                                                    BBRを含む、重要なTCP輻輳制御の概要
                                                    https://blog.apnic.net/2017/05/09/bbr-new-kid-tcp-block/
                                                    これまで長く利用されてきたデフォルトアルゴリズムはcubicです(これはUEK5でも引き続きデフォルトです)。しかし、現在はBBRもサポートしています。メインラインのLinuxカーネルバージョン4.9にBBRが追加されました。UEK5ツリーは4.14のメインラインをベースにしていたため、UEK5でBBRを選択しました。UEKはGitHubから簡単にアクセスでき、コードを読むことができます。
                                                    Oracle Linux UEK: Unbreakable Enterprise Kernel
                                                    https://github.com/oracle/linux-uek
                                                    Tarファイルにしていないので、変更履歴を付けて全て取得してください(標準的なアップストリームカーネルの場合はバックポートや修正などを伴うgit)。
                                                    大規模なファイルをWAN経由でダウンロードまたはアップロードする場合に、BBRを使用して非常に有望なパフォーマンス改善が見られました。したがって、クラウドコンピューティングの使用や、オンプレミスとクラウド間のデータの移動など、状況によってはパフォーマンスが少し向上する可能性があります。いくつかのテストで10%ほどパフォーマンス向上を測定しましたが、状況はそれぞれ異なります。パケットロスが発生した場合は、確実に役立ちます。

                                                    UEKの優位性は、ソース、ターゲットのシステムをどちらもUEK上で実行する必要はない点です。そのため、BBRをテストするには、対向でOL7を実行し、UEK5をインストールした上で、当該システムでBBRを有効にするだけです。SSHやnetperf、wgetで大きなファイルをダウンロードしてみてください。
                                                    Oracle Linux 7 UEK5 (Linux kernel 4.14) sneak preview
                                                    https://blogs.oracle.com/wim/oracle-linux-7-uek5-linux-kernel-414-sneak-preview
                                                    https://orablogs-jp.blogspot.jp/2018/02/oracle-linux-7-uek5-linux-kernel-414.html
                                                    以下を実行する必要があります。再起動は不要です。
                                                    • 2ノードのうち1個にOracle Linux 7をインストール
                                                    • UEK5プレビューカーネルをインストールし、起動
                                                    • (rootユーザーで)sysctlを使い設定を変更し、BBRを有効化(オンラインで設定可)
                                                    また、(デフォルトの)pfifo_fastの代わりにキュー規律(queue discipline)をfqに設定する必要もあります。
                                                    sysctl -w net.ipv4.tcp_congestion_control=bbr
                                                    sysctl -w net.core.default_qdisc=fq
                                                    デフォルトに戻すには
                                                    sysctl -w net.ipv4.tcp_congestion_control=cubic
                                                    sysctl -w net.core.default_qdisc=pfifo_fast
                                                    
                                                    pfifo_fast vs fqも切り替えてみてください。

                                                    必要に応じて、Linuxの個々のソケットレベルで設定できます。あなたが特定のアプリケーション(Webサーバやデータ転送プログラムのようなもの)を持っている場合には、setsockopt()を使います。以下は設定例です。
                                                    sock = socket(AF_INET, SOCK_STREAM, 0);
                                                    sockfd = accept(sock, ...);
                                                    strcpy(optval, "bbr");
                                                    optlen = strlen(optval);
                                                    if (setsockopt(sockfd, IPPROTO_TCP, TCP_CONGESTION, optval, optlen) < 0)
                                                       error("setsockopt(TCP_CONGESTION) failed");
                                                    
                                                    Python(Python 3.6以上)でも同じようにできます。
                                                    sock.setsockopt(socket.IPPROTO_IP, socket.TCP_CONGESTION,...)
                                                    
                                                    是非楽しんでください。みなさんにもメリットがあるか、どんなときにメリットがあるかお知らせください。

                                                    [Cloud, Network] Security in the Oracle Cloud with Fortinet Fortigate NGFW

                                                    原文はこちら
                                                    https://blogs.oracle.com/cloud-infrastructure/security-in-the-oracle-cloud-with-fortinet-fortigate-ngfw

                                                    パートナー・エコシステムを引き続き拡げている流れで、さまざまなカテゴリーにわたるクラス最高のプロバイダーが、Oracle Cloud Infrastructureに追加の機能/サービスを補完したり追加したりできるようになっています。本日はOracle Cloud InfrastructureでFortinet FortiGate-VM Next Generation Firewall (NGFW)をご利用いただけるようになったことを発表できうれしく思っています。
                                                    FortiGateの次世代ファイアウォールは、Oracle Cloud InfrastructureへのInbound/outboundトラフィックを安全に保護する、洗練されたIPsec VPN機能を提供します。また、extreme threat database、脆弱性管理、フローベースの検査作業といった高度な機能とともに、IPSおよびWebフィルタリング機能を利用できるため、協調して最新の複雑なセキュリティ脅威を特定し緩和します。セキュリティが強化されたFortiOSオペレーティングシステムは、マルウェアの検査と識別のために専用に設計されています。

                                                    FortiGate Virtual Appliances 

                                                    FortiGate仮想アプライアンスを使用すると、仮想インフラストラクチャ内でクリティカルなセキュリティ制御を実装することで、盲点を軽減できます。ファイアウォールのルール数の制限なく、アプリケーション制御、Webフィルタリング、IPS、AV(Anti Virus)およびマルウェア防止などの高度なセキュリティを提供します。また、いつでもどこでもセキュリティインフラストラクチャを迅速にプロビジョニングできますし、FortiGate仮想アプライアンスには、従来のハードウェアベースのFortiGateアプライアンスに共通するすべてのセキュリティおよびネットワーキングサービスが備わっています。Fortinetの仮想アプライアンスを追加すれば、ハードウェアと仮想アプライアンスを混在させて運用できます。その際、共通の集中管理プラットフォームから両者を管理できるので、オンプレミスのデータセンターからOracle Cloud Infrastructureまで、セキュアなIPsec VPNを使用してビジネスワークロードを拡張できます。

                                                    FortiOSは、FortiGate-VM multi-threat security platformの基盤です。セキュリティ、パフォーマンス、および信頼性のために開発された専用オペレーティングシステムが仮想化の力を活用します。

                                                    OCI Virtual Cloud Network: Secure, Fast Private Network

                                                    このエントリでは、Oracle Cloud InfrastructureにFortigateを統合することに焦点を当てます。Fortigateは、複数のアベイラビリティ・ドメインにあるOracle Cloud Infrastructureの仮想クラウド・ネットワーク(VCN)を活用して、高い可用性を持つ高度なネットワーク・ファイアウォール機能を提供します。


                                                    Oracleのお客様は最もセキュリティに敏感なエンタープライズ組織の要件を満たすように設計されたクラウドベースのネットワークアーキテクチャのメリットを享受します。しかし、多くのエンタープライズのお客様は、さらに特別なセキュリティソリューションも必要としています。エンタープライズのお客様は、Intrusion Prevention Service(侵入防止システム)、Anti Virus、およびMalware防止を含むNGFWサービスの完全なスイートを備えた仮想Fortigateアプライアンスを実装することで、突っ込んだアプローチで防御を行うことができます。

                                                    Fortigateのエンタープライズ・グレードの次世代ファイアウォールをOCIに迅速にプロビジョニング、展開できます。
                                                    Deploying FortiGate for OCI
                                                    http://cookbook.fortinet.com/deploying-fortigate-oci/
                                                    OracleとFortinetのパートナーシップで、Fortigate Oracle Cloud InfrastructureへのNGFWのデプロイとお客様のワークロード保護ののシームレスな体験を提供します。

                                                    スタートするには、以下のマーケットプレイスの情報をご覧ください。
                                                    Fortinet FortiGate-VM Next Generation Firewall (NGFW)
                                                    https://cloudmarketplace.oracle.com/marketplace/en_US/listing/28079749