Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
Pythonのrequestsライブラリをプロキシ環境下で使用しているとしばしば次のエラーに出会います。 ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997) During handling of the above exception, another exception occurred: (略) urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='hogehoge.com', port=443): Max retries exceeded with url: / (Caused by SSL
はじめに 暗号化キーに対する特別な要件が無い PJ の場合、 利用時に検討する S3 の暗号化方式は SSE-S3 と SSE-KMS の 2 種類があるかと思います。 なんとなく他サービスでも利用している SSE-KMS を使用していませんか? 同じ暗号化かつ、AWS のマネージドキーなら機能に違いはないため、 どちらでもいいと考えてしまうことがあるかもしれません。 本記事は S3 において SSE-KMS を選んでエラーとなるケースと暗号化方針の違いを記載した記事になります。 直面した問題 ALB のアクセスログ出力先に S3(SSE-KMS 暗号化)を設定したところ、 アクセスログが出力されないエラーが発生。 結論 SSE-KMS では以下一部の機能利用時にエラーが発生します。 そのため本機能の利用が必須の場合はSSE-S3の利用が必要となります。 主にエラーとなるケース S3 アク
はじめに リレーショナルデータベース設計の世界へようこそ!このガイドでは、データベース設計の基本から応用まで、幅広くカバーしていきます。一緒に学び、理解を深めていきましょう。 リレーショナルデータベースとは リレーショナルデータベースとは、データを表(テーブル)形式で整理・管理するシステムのことです。各テーブルは行(レコード)と列(フィールド)で構成され、情報を効率的に保存・検索できます。 例えば、顧客情報や注文履歴を別々のテーブルで管理し、共通のキー(例えば顧客ID)で関連付けることで、必要な情報を簡単に取得できます。このような構造により、データの一貫性や整合性を保ちながら、複雑なデータ操作や分析が可能になります。 本ガイドの目的と構成 このガイドの目的は、リレーショナルデータベース設計の基本概念から高度なトピックまでを体系的に学び、実践的なスキルを身につけることです。各章では、理論的な
なお、弊社はベンダーとしてはDatadog、言語としてはGoを使っているのでその前提でこのブログを書きますが、その他のベンダー、言語でも参考になると思います。 Baggageに含めるとよさそうなもの よくあげられる例としては、UserIDやProductID、ソースIPアドレスなどのリクエストに紐づくデータが挙げられます。注意点として、誤って外部のベンダーにBaggageが渡ってしまう(注意しないとあり得ます)ことを考慮し、セキュアな情報は含めないようにすべきです。 他には、featureフラグを運用しているのであれば、feature情報をBaggageに含めると良いでしょう。 BFFなどの通信の入り口でどのfeatureかを判断し、その後のマイクロサービス間での通信はその情報を常に渡してあげることでマイクロサービス全体で同じfeatureを提供することができます。 以前、軽量featur
はじめに Kubeflowとは何なのか。 どんな知識が必要でどんなメリットがあるの? エコシステムなんかはどうなっているの? 現状これらの問いの答えとなるような記事を見つけることができなかったため、本記事を執筆しました。 本記事ではKubeflowとは何なのか。そしてどのようなツールで構成されているのか図を交えながらできる限りわかりやすくまとめました。(本記事で使用している図に関してはご連絡いただければ元データをお送りできます。) MLOps、Kubeflowについての日本語の学習リソースがほとんどないですが、MLOpsの概念や技術が日本で広まる一助になればいいなと思っています。 Kubeflowとは 近年の機械学習の急速な発展に伴って、機械学習を本番運用する機会が増えてくる中、てデータサイエンティストと開発者の連携やモデルのバージョン管理などの課題が重要視されてきています。そんな中で出て
この記事は Rust Advent Calendar 2023 シリーズ 2 の 16日目の記事です。 はじめに Nightly 限定ですが、Rust がスクリプト言語っぽく使えるようになっています。Unix系OSやLinuxなどには、text-file の先頭行に #!program と書いておくと、program text-file が起動される shebang と呼ばれる機能がありますが、Rust(というか、cargo)がそれに対応しましたよ、ということです。これまでも cargo-script や rust-script など、同じような取り組みがありましたが、cargo に組み込まれたところがちょっと違うところです。面白そうな気がしたので、試してみました。
以前は問題なく動いていたはずの機能が、最新版では動かなくなっている・・・。こんなときは、「どのコミットが問題を混入させてしまったのだろうか?」を知りたくなるでしょう。 これを手助けするのが git bisect コマンドです。git bisect コマンドは、二分探索によって問題箇所を特定します。 事前準備 最初に大事なことがひとつあります。それは、「問題がない(good)状態と問題がある(bad)状態を、確実に判定できるようにする」 ことです。 当然のことではありますが、ここがあやふやだと、二分探索をしても問題箇所をうまく特定できません。 可能なら、「テストスクリプトを1つ実行するだけで判定」できるようにしたほうが良いです。このとき、テストスクリプトは、git リポジトリからチェックアウトした作業ツリーに対して実行できるようにします(例えばソースからのビルド処理もテストスクリプトに含めま
はじめに 本記事は サイバーエージェント24卒内定者 Advent Calendar 2023 6日目の記事です。 みなさんご存知のコンテナプラットフォーム Kubernetes は様々コンポーネントが組み合わさって構成されており、その中でもワーカーノードのネットワークを制御する 「kube-proxy」 というコンポーネントがあります。kube-proxy はワーカーノード内のトラフィックを制御する方式としていくつかの動作モードを持っていますが、今回はその中でも Linux のネットワーク機能である 「iptables」 を使用する動作モードの挙動を追ってみます。 kube-proxy とは kube-proxy は各ワーカーノードで動くプロセスであり、Pod への通信を可能にするための Service リソース等の作成に応じてワーカーノード内のネットワーク設定を行います。 (引用: h
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに LambdaをRustで書く機会がありました。 LambdaはRustを標準でサポートしているわけではないので、通常であればカスタムランタイムを使うことになると思います。 一見大変そう...と感じるかもしれませんが、cargo-lambdaとcargo-lambda-cdkを用いることによって、快適に開発を進められました。 今回の記事では簡単なAPIをハンズオンで実装することでそのtipsをお伝えできればと思っています。 本記事では,POSTすることでDynamoDBにレコード追加をするLambda, GETすることで作成した
[保存版]短期間でKubernetesのCKA、CKAD、CKSの三冠達成したので攻略法(勉強方法の解説とコツ)を共有初心者kubernetesckadcksCKA はじめに 2022/8月から11月の約3ヶ月弱でKubernetesのCKA、CKAD、CKSの三冠達成をしましたので、 記録として残します。 勉強期間としてはあまりにも短いので、そこは真似しない方がいいと思いますが、本記事を参考にすれば、5ヶ月以内で三冠は現実的にいけるかと思います。勉強した時間以外の部分で参考になればと思います。 試験対策のような内容ですが、確実に実力はつきます。 むしろ、実力がないと試験合格は不可能であるため、試験合格=実力がついたと言っても過言ではないです。 (資格があると某ムスカ大佐みたいに、「読める、読めるぞ!!」状態になります。) 「Podは滅びぬ! 何度でもよみがえるさ!」 筆者&読者のターゲッ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 概要 Microsoft Azure Functions を使用し、Python関数作成の備忘録です。 今まで、クラウドはAWSばかり触っており、Azureに触れたのが初めてでした。 Azureの情報は公式にはありますが、他にはあまりない印象でした。 AWSの AWS Lambdaを使用した時のように簡単にはいかず、苦労したためまとめてみます。 間違った認識をしているのもあるかもしれません。 サンプルプログラムを一通り動作した段階となっています。 ・ローカルのVisual Studio Codeにて環境を構築、ローカル環境で動作確認を実
これはなに? ISUCONに関する記事は数多あれど、初心者に対する勉強法をまとめてくれている記事が少ないように感じたので、筆者なりのISUCONの勉強方法を具体的にまとめました。 今回、筆者は2人チームで学生チームとして初めて参加をし、(筆者がサーバーを吹き飛ばすという事故がありながらも)全体で大体180位ぐらい(全チーム数が698チーム)というなんとも微妙な結果になってしまいました。 しかし、ISUCON本番では、プロファイリングを行う→ボトルネックを見つける→改善する→スコアが上がるというISUCONの醍醐味を味わうことができました。 練習や模擬戦では、ISUCONで最低限戦うための、勉強やShellスクリプトの準備に殆どの時間が費やされてしまい、肝心のチューニングで手を動かして勉強するということに時間をあまり費やすことができませんでした。 本記事はそうした、事前準備に加えて、筆者の今
Slackbot(Azure Functions×FastAPI)でAzure AI Search(旧Cognitive Search)でベクトル検索をやってみたslackbotAzureFunctionsCosmosDBragChatGPT やりたいこと ファイルに関する質問をSlackメンションに投げると回答を返してくれる。 どうやるか 事前に対象ファイルをAzure AI Searchに読み込ませておく(ベクトルインデックス化) Slackから質問がきたら、OpenAIやCosmosDBを連携させながらAI Search検索を行い その検索結果を基にOpenAIで回答を生成してSlackに返す。 今回のslackbot作成にあたり、こちらを大変参考させて頂きました🙏 誠に有難うございます🙇 https://zenn.dev/microsoft/articles/jp-openai
Node Affinity taints/tolerations(参考)は特定のNodeにPodをscheduleされるのを避けるための仕組み。 それに対してNode Affinityという仕組みは、Podを特定のNode集合へscheduleするための仕組みだ。 特定のNodeにPodをscheduleするための仕組みとしてはnode selectorがある。Node Affinityはnode selectorよりももっとパワフル。 Node AffinityはNodeのlabelとして設定する。 そして(node selectorはpodにselectorを設定したが、同様に)Node Affinity ruleはpodに設定する。 podのNode Affinity ruleにnodeのlabelのNode Affinityがマッチした場合、そのnodeへpodがscheduleさ
はじめに 私は普段SREとしてAWSやEKS(Kubernetes)などのクラウドインフラの運用に従事しています。本記事では、Argo CD Pull Request Generatorについて紹介します。 そもそも、Argo CD Generaterとは 公式では以下のように紹介されています。 Generators are responsible for generating parameters, which are then rendered into the template: fields of the ApplicationSet resource. See the Introduction for an example of how generators work with templates, to create Argo CD Applications. Generato
はじめに 今回は作業効率化をすすめるにあたって有用なfzfの利用例を紹介したいと思います。 似たようなものでpecoというのもありますが、fzfの記事が少ないと思うので、今回はfzfについて書いていきたいと思います! (あとfzfはVimでも使えるようにサポートされているので、Vimmerの方はpecoよりもfzfかなということもあり…。) fzfとは fzf https://github.com/junegunn/fzf fzfとはCLIでインクリメンタルに曖昧な検索が可能になるGO言語製のツールです。 標準出力をパイプでfzfコマンドで渡すだけで、標準出力の内容を対象に検索できます。 上部の入力箇所でインクリメンタル曖昧検索しながら、(CLIとしては慣れ親しんだキーバインドの)Ctrl-n,Ctrl-pで下部のリストから選択することができます。 (もちろんカーソルキーでもOK) 最初は
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く