/dev/hardening - Hardening Drivers Conferences 2021 OWASP Evening 2021.08 - Container Security / Privacy by Design
Profile id: Songmu (ソンムー) Masayuki Matsuki / 松木雅幸 Nature 株式会社 取締役CTO おそらくはそれさえも平凡な日々 http://www.songmu.jp/riji/ https://metacpan.org/author/SONGMU 好きな言語は、PerlとGoと中国語 200+ GitHub Public Repositories 60+ CPAN Modules 60+ Go modules/tools 3 Times ISUCON Winner Using Perl 入門監視 付録C 執筆 「みんなのGo言語」共著者 【宣伝】Nature Remo買ってください! エンジニアも絶賛募集中です 同時接続10万台を超えるIoTサービスの裏側を一緒に開発しませんか! https://nature.global/jp/careers
はじめに PythonのDockerfileを作成する際、ネット上で適切な情報が見つからず、試行錯誤することがあります。そこで、ここでまとめてみます。 完成品 # 開発用ステージ FROM python:3.11-bullseye AS developer ENV PYTHONUNBUFFERED=1 WORKDIR /app RUN apt-get update \ && apt-get install -y --no-install-recommends \ bash=5.1-2+deb11u1 \ && apt-get -y clean \ && rm -rf /var/lib/apt/lists/* COPY requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt COPY . . # ビルド用ス
AWS News Blog New for AWS Lambda – Container Image Support February 9, 2021: Post updated with the current regional availability of container image support for AWS Lambda. With AWS Lambda, you upload your code and run it without thinking about servers. Many customers enjoy the way this works, but if you’ve invested in container tooling for your development workflows, it’s not easy to use the same
前回からだいぶ間隔が空いてしまいました。前回の最後に案内したudzuraさんのCRIUに関する記事はもう少し時間がかかるようですので、もうしばらく私が担当したいと思います。 今回から数回は、Linuxカーネルに実装されているケーパビリティについて説明します。ケーパビリティは2.2カーネルのころから実装されてきているかなり古くからある機能で、コンテナ向けの機能ではなく一般的に使われている機能です。もちろん、コンテナの安全性を高めるための重要な機能でもあります。 setuid 一般的にはUNIX系のOSでは、プロセスはroot権限(実効ユーザIDが0)で実行される特権プロセスと、一般ユーザ権限で実行される(実効ユーザIDが0以外の)非特権プロセスに分けられます。 一般ユーザは、通常はそのユーザの権限でプログラムを実行すれば良いのですが、一般ユーザが実行するプログラムであっても処理の内容によって
はじめにこれは、2021年11月4日から5日にかけて開催された、CloudNative Days Tokyo 2021 においての私の発表資料となります。 発表 こんにちは。今日は、OOParts というクラウドゲーミングプラットフォームを Kubernetes 基盤に移行した話をします。よろしくお願いします。 私は、うなすけといいます。フリーランスとして、Webアプリケーションを開発する仕事をしています。2019年から、Black で OOParts のクラウドインフラ周りを担当しています。 皆さん、OOParts というサービスをご存知でしょうか。OOParts は、年代を問わず名作とされるビジュアルノベルゲームを、Webブラウザだけで遊ぶことができるクラウドゲーミングプラットフォームです。ユーザーは、インターネット環境さえあれば、端末を問わずにいつでもゲームをプレイすることが可能です
Amazon Web Services ブログ ECS のアプリケーションを正常にシャットダウンする方法 この記事は Graceful shutdowns with ECS を翻訳したものです。 — はじめに Amazon Elastic Container Service (Amazon ECS) を利用することで、お客様はさまざまな方法でコンテナ化されたアプリケーションを柔軟にスケールできます。リクエストの急増に対してタスクをスケールアウトすることも、コスト削減のためにタスクをスケールインすることもできます。ECS ではさまざまなデプロイの選択肢があり、ローリングデプロイ・ブルー/グリーンデプロイ・カナリアデプロイなどがサポートされています。さらに、ECS では柔軟なコンピューティングの選択肢が用意されています。Amazon EC2 のオンデマンド/スポットのキャパシティ上や、マネージ
2018年12月にスクウェア・エニックスからリリースされたスマートフォンゲームアプリ「ロマンシング サガ リ・ユニバース」(以下、ロマサガRS)。リリースから約3週間で1000万ダウンロードを達成したロマサガRSは、Amazon Web Services(AWS)のサービスをフル活用して構築。障害を回避して運用できているという。 ロマサガRSではどのようにシステムを設計し、どのように障害を回避したのか。ロマサガRSを開発したアカツキのエンジニアである駒井祐人氏が「AWS Summit Tokyo 2019」で語った。 ロマサガRSのアーキテクチャ 「ゲームシステムは最大ピークを見積もりづらい。公開されてからどれくらいのプレイヤーに遊ばれるか分からないからだ。これはサービス開始後も同様だ。例えば、ある日の正午にイベントが始まった結果、一時的にアクセス数が2倍に跳ね上がることもある。イベントな
こんにちは、Necoプロジェクトのsatです。今回はKubernetesクラスタお手軽に作れるkindというツールを紹介します。kindはKubernetes In Dockerの略です。 本記事の要約 kindとはKubernetesクラスタを簡単に作れるツール インストール、およびクラスタ作成がそれぞれたった1コマンドを実行するだけで完了 他の類似ツールには存在しないマルチノードクラスタ作成機能がある Kubernetesの公式プロジェクトかつ、Kubernetesそのもののテストにも用いられているため、実績や将来性は十分 修正履歴 2019/7/04: 「クラスタの設定を変更する方法」節のapiVersion: kubeadm.k8s.io/v1beta1をapiVersion: kubeadm.k8s.io/v1beta2に修正しました kindとは Kubernetesは複雑なソ
Kubesharkとは 図は公式 より抜粋 KubesharkはKubernetesのための観測性・監視ツールで、マイクロサービスの動的解析、異常の検出などを実現するツールです。 Wireshark、BPF Compiler Collection(BCC)ツールなどを組み合わせた、Kubernetesを意識したものとお考えください...と説明されています。 Kubesharkは、クラスタ内の一部またはすべてのTCPトラフィックをスニッフィングし、PCAPファイルに記録し、HTTP1.0, HTTP1.1, HTTP2, AMQP, Apache Kafka, Redisなどのアプリケーション層プロトコルを分析できるとのことです。 今回はHTTPに絞って実際に環境を動かしてみて、トラフィックを覗いてみたいと思います。 Kuberentesクラスターの用意 まず、Kuberentesクラスター
はじめに これは、ZOZOテクノロジーズ #4 Advent Calendar 2019 12日目のエントリーです。 今回はKubeConに参加して面白かったセッションの1つである「10 weird ways to blow up your Kubernetes(Kubernetesをぶち壊す10の奇妙な方法)」をご紹介します。 この他にも、「Airbnbの事例に学ぶKubernetesとマイクロサービスのあり方 @ KubeCon Seattle 2018」という記事も執筆しているので、合わせてご覧ください。 また、このセッションのスピーカーであるMelanie Cebulaは、CloudNative Days Tokyo 2019のキーノートスピーカーとしても来日し、登壇しています。 後編書きました! セッションの背景 セッションスピーカーであるMelanieとBruceは、Airbn
Amazon Web Services ブログ 【開催報告】プラットフォームエンジニアリングって何?〜基本から AWS での実現方法について〜 みなさんこんにちは!アマゾンウェブサービスジャパン合同会社 ソリューションアーキテクトの後藤です。 2024 年 2 月 29 日に AWS オンラインセミナー「プラットフォームエンジニアリングって何?〜基本から AWS での実現方法について〜」を開催しました。 本イベントは、プラットフォームエンジニアリングの基本的な概要と現状について解説した上で、SRE や DevOps との関連性、どんな課題をどう解決するのか、実装するとなれば、AWS でどう実現するのかといった点についてご紹介させていただきました。400 名を超える多くの方々にご参加いただきました。ご参加いただいた皆様、誠にありがとうございました! アジェンダ AWS メンバーから、プラット
はじめに こんにちは。 2022年の4月から、さくらインターネット株式会社に新卒入社し、7月よりSRE室という部署に配属されました、菅原大和(@drumato)と申します。 本記事では、7月の配属から今日(記事執筆時点では2022/10/31)にかけての3ヶ月間、社内のKubernetesクラスタ運用状況を調査し、現状の課題を明確にした上で、社内のKubernetesクラスタ運用状況を改善する基盤の設計と開発に取り組んできましたので、その内容をご紹介します。 その過程で得られた知見や、今後必要になってくるであろう、不足している機能についても合わせて共有します。 また、本プロジェクトの背景として、SRE室という部門の目的や今後実現したい世界観についてもお話しできればと思います。 本記事の全体を通して、技術的な側面よりもプロジェクトの背景や目的を重点的にお伝えします。 本プロジェクトの概要 本
【コンテナのデプロイを簡単にしませんか?】ECSのデプロイツールである「ecspresso」を触ってみた こんにちわ、札幌のヨシエです。 先日のAWS DevDay Tokyo 2019は自分も参加出来て本当に勉強になりました。 今回は発表された複数セッションで度々登場した「ecspresso」が気になったので使用感を知りたく触ってみました。 ecspressoとは? 面白法人カヤック様から提供されているGo製のECSデプロイツールです。 kayac/ecspresso 読み方は「エスプレッソ」というようです。 インストール方法(macOSのみ) brew install kayac/tap/ecspresso 確認バージョン % ecspresso version ecspresso v0.11.1 ECSサービスのコードエクスポート 最初にやることとしてecspressoで管理出来る設
こんにちは(U・ω・U) AWS事業部の深澤です。 さて僕はこれまで次のようなブログを書いてきました。 全部で15ポイントもあるのですが、今までの中から厳選して5つの特に注意したいポイントをピックアップしオンライン開催されたJAWS DAYS 2020のランチセッションで登壇/発表してきました。 資料 動画 解説 ポイント1: 通信費 AWSではわずかではありますが、通信を行うと課金が発生します。AWSから外への通信は$0.114(12.33円)/GB、リージョン間通信の場合は$0.09(9.74円)/GB、同一リージョンであっても異なるAZへの通信は$0.01/GB(1.08円)です。 こちらはEC2だけでなく他のサービスも含めたサービス間通信の合計であることに注意してください。ディザスタリカバリで複数リージョンに跨ったりログを他のリージョンに転送したりして意外と料金が上がりがちです。
Amazon Web Services(AWS)は、米ラスベガスで開催中の年次イベント「AWS re:Invent 2019」の基調講演において、「Amazon Fargate for Amazon EKS」を正式発表しました。 発表と同時に会場からはこの日もっとも大きな拍手が聞こえました。このサービスへの期待の大きさが示されたようです。 Kubernetes上の分散アプリケーションを簡単にサーバレス化 Amazon Fargate for Amazon EKSには「AWS Fargate」と「Amazon EKS」の2つのサービス名が含まれています(上記スライドでは「Amazon Fargate」と表記されていますが、正式名称は「AWS Fargate」)。 Amazon EKS(Amazon Elastic Kubernetes Service)から先に説明すると、これはコンテナ群で構
DMMグループ Advent Calendar 2019 - Qiita の25日目です TL;DR AWSで3層アーキテクチャのサービスを構築するテンプレート(ここではスターターキットと呼びます)を公開しました。 利用するコンポーネントとしては主にAWSのALB・ECS/Fargate・Aurora、Dockerとローカル環境用にdocker-compose、IaCにTerraformを利用しています。 導入や既存メンバーのためのスターターキットで使用するコンポーネントの入門用ドキュメントを備えています。 概要 y-ohgi.github.io/starterkit にgitbookとしてドキュメントを公開しているのでそちらを閲覧してください。 サンプルとしてGolang・ECS/Fargate・Aurora(MySQL)で構築をしています。 また、RailsやNextなど、コンテナベー
Modus uses logic programming to express interactions among build parameters, specify complex build workflows, automatically parallelise and cache builds, help to reduce image size, and simplify maintenance. Install Modus Read Tutorial A Modus program is a set of rules that define how new images are built from existing images by adding filesystem layers. Images and layers are represented using pred
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、ヤフーのKubernetes as a Service(以下KaaS)を担当している勝田です。 今回、KaaSをProduction環境で2年活用してきた中でどのような変化がおき、ヤフーの開発環境がどう変化してきたかをご紹介いたします。 ※ 本記事はYahoo JAPAN Tech Conference 2019 in Shibuya(以下YJTC2019 in Shibuya)のセッション「Kubernetes as a ServiceをProduction環境で2年活用し、直面してきた課題と解決策」をベースに、よりヤフーのKubernetes事情にスポットを当ててお話させていただきます。YJTCのスライドも下記リン
本日、Amazon Elastic Container Service (Amazon ECS) はタスクスケジューリングを強化し、予測不可能な負荷のスパイクに対するアプリケーションの回復性をさらに向上させました。Amazon ECS は、コンテナまたはロードバランサーのヘルスチェックに合格しなかった異常なタスクを終了する前に、正常な代替タスクを開始するようになりました。この機能の強化により、追加の作業や構成なしで、お客様のアプリケーションの回復性が向上します。 Amazon ECS はフルマネージドのコンテナオーケストレーションサービスで、非常に安全で、信頼性が高く、スケーラブルなコンテナ化アプリケーションを簡単に実行できます。お客様はアプリケーションのコンテナまたはロードバランサーのヘルスチェックを定義して、異常のあるタスクをいつ終了して新しいタスクに置き換えるべきかを Amazon
Sign up for freeGet started in minutes with our cloud products TerraformInfrastructure as code provisioning
KubernetesのノードとしてWebAssemblyランタイムを用いる「Krustlet」、マイクロソフトが公開 Dockerコンテナによって実現された軽量で高速に起動するアプリケーション実行環境は、多数のコンテナから構成される分散アプリケーションの普及を大きく後押ししました。 分散アプリケーションの普及は、さらに軽量かつセキュアなDockerコンテナ実現へのニーズへとつながり、GoogleのgVisorやAmazon Web ServicesのFirecrackerといったセキュアなコンテナランタイムの実装や、同じくAWSによるコンテナに最適化したLinuxベースの軽量OSである「Bottlerocket」などを生み出すことになりました。 しかしいくらLinuxを軽量化したところで、OSであるLinuxの軽量化や機能の簡素化には限界があり、それはコンテナランタイムに対しても同様です。
IDC JapanはDockerなどのコンテナ仮想化技術とコンテナオーケストレーションツールのKubernetesの導入状況に関する調査結果を発表しました。調査を実施したのは2020年2月。国内の企業および組織458社に対するアンケート調査です。 調査結果によると、コンテナを本番環境で使用している企業は14.2%となり、2019年調査から5.0ポイント上昇しました。また、コンテナを知らないという回答が大きく減少し、コンテナが市場全体で認知されたとも言えます。 最も使われてるオーケストレーションツールはコミュニティ版Kubernetes コンテナを本番環境で使用している企業と、導入構築/テスト/検証段階にある企業を対象に、コンテナオーケストレーションツールについて調査した結果(複数回答)、54.7%の企業がKubernetes(コミュニティ版)を使用しているとの回答がありました。こちらも、2
こちらの反響もよかったこともあり、KubernetesにおけるCI/CD(継続的インテグレーションと継続的デリバリー)に焦点を絞って、いままでの経験も含めて大事なポイントをいくつかの切り口でまとめることにしました。 一部は書籍の内容とかぶる部分もあるのですが、わたしが普段Kubernetesでのアプリケーション運用に携わる中で大事だと思うことなど含めてご紹介します。 KubernetesにおけるCI/CDとしていますが、項目は必ずしもKubernetesに限った話ではありませんのでご了承ください。 また、もっといろんなトピックを書きたいのですが、すべてのトピックを揃えると記事自体のボリュームも大きくなり公開も遅くなりそうだったので、基本的な内容のみ選んでみました。随時追加されていく(あるいは別記事?)可能性があります。 ブランチ戦略 CI/CDの実践にまず根本的に関わるポイントとして、ブラ
Introduction Now that you’ve installed Docker and learned it’s basic commands, it’s time to try out some Docker utilities to make managing your Docker environment a little bit easier. These 6 utilities, aim to help you control, monitor and/or manage your docker host. 1. Ctop Ctop is a command line utility that serves as a process and resource monitor similar to the top command on a Linux machine.
インストールして起動するだけで、Windows 10やmacOS上に簡単にKubernetes環境が導入される「Rancher Desktop」がオープンソースで公開されました。 Rancher DesktopはElectronとNode.jsをベースに構築されたデスクトップアプリケーションです。 起動するとRancher Desktopのウィンドウが表示され、そこからKubernetes環境の設定が簡単に行えるようになっています。 下記はRancher LabsでシニアマネージャのHayden Barnes氏のツイート。Rancher Desktopの起動後の画面が示されています。 v0.1.0 of Rancher Desktop for macOS and Windows is up. The Windows version is powered by WSL 2. It is an
2020年12月8日。ノストラダムスは予言した。「DockerはいずれKubernetesから消え去るだろう」と。そしてv1.20で非推奨になった。予言から1年5カ月たった2022年5月3日のv1.24のリリースによって、ついにDockerはKubernetesのコードから消滅した。一体これから何が起こるのだろうか……。 Kubernetes信者の読者には既知の事実かもしれないが、改めてKubernetesに何が起こったのか、そしてわれわれはどうしていけばよいのか――。Kubernetesやクラウドネイティブをより便利に利用する技術やツールの概要、使い方を凝縮して紹介する本連載「Cloud Nativeチートシート」。今回は、その真相を究明する。 ついに削除されたDockerサポート Kubernetes 1.24でKubernetesからDockerをサポートするコードが削除されたことで
こんにちは。SREのid:do-su-0805です。普段はid:do_su_0805として生活しています。 この記事では、Amazon ECS(以下、ECS)でコンテナを動かすとき、ログドライバーとしてawslogsを利用してAmazon CloudWatch Logs(以下、CloudWatch Logs)にログを出力する際に、awslogs-stream-prefixというパラメータには何を設定するとよいかについて考察します。 結論から言うと、このパラメータに「コンテナのイメージタグ」を入れるようにしたところ、出力されるログストリームの/区切りの階層が見やすくなり、ログが世代別に扱いやすくなったよ、というお話です。 ECS+CloudWatch Logs構成時のロググループとログストリームについて どのようなログストリームが構成されがちかを事例から考えてみる awslogs-strea
コンサル部のtobachi(@toda_kk)です。 先日、Docker ComposeによるAmazon ECS対応がGAになりました! AWSによるアナウンス Dockerによるアナウンス 本ブログでも過去に記事がでていましたが、Dockerでは以前からAmazon ECS対応が進んでおりdocker ecsというコマンドがベータ版として提供されていました。 何ができるのか 今回は装いを新たにdocker composeというコマンドで、Amazon ECSでクラスターを作成しコンテナを実行できるようになったようです。 $ docker context create ecs ${context-name} $ docker context use ${context-name} $ docker compose up これだけです。もちろん事前にAWSアカウントの認証情報を用意しておく
N予備校のインフラを Amazon EKS に移行した話 はじめまして。ドワンゴの教育事業で SRE エンジニアをしている西永です。 N予備校 では Kubernetes を採用しています。 これまでは Control Planes 含めすべての構成要素を自前で構築し運用していましたが、様々な問題が発生してきたことから Amazon EKS に移行をおこないました。 この記事では、Amazon EKS への移行に取り組んだ事例にについて紹介します。 なぜ移行したのか Kubernetes のバージョンが古い これまでの構成では Kubernetes のバージョンアップが考慮されておらず、Kubernetes を利用した N予備校の提供開始以降バージョンアップができていない状態でした。 そのためバージョン 1.7 を利用し続けていました。 バージョン 1.7 は 2017 年にリリースされ、
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く