Terraform meetup tokyo#2の発表内容 https://terraform-jp.connpass.com/event/142041/
こんにちは。 SRE の @suzuki-shunsuke です。 Terraform の CI を AWS CodeBuild (以下 CodeBuild) から GitHub Actions + tfaction に移行した話を紹介します。 これまでの Terraform Workflow (CodeBuild) 弊プロダクトの Terraform の CI に関しては過去の記事でも何度か紹介していますが、 元々 CodeBuild 上で CI を実行していました。 かつては CircleCI 上で実行していましたが、 CodeBuild に移行しました。 blog.studysapuri.jp CodeBuild に移行した理由は大きく 2 つありました。 Security 永続的な Access Key を発行することなく AWS のリソースを管理できる GCP に関しても Wor
2021/10/22追記:最新版は下記記事になります!こちらもご一読くださいませ。 tech-blog.abeja.asia どうも、Tech Blog編集長(自称)の緒方(@conta_)です。 よくエンジニアの方にご質問いただく ABEJAってよく聞くけど、実際どんなことやってるのかよくわからない という点をクリアにするために、事業内容と技術視点でのABEJAの取り組みを紹介したいと思います。 ABEJAに興味のある方や、未来の一緒に働くメンバーに読んでいただけると嬉しいです! 割とAIコンサルの会社と思われているらしいので、ちゃんとプロダクト作ってますよ!ということを伝えていきたい ABEJAの事業紹介 ABEJAは2012年から約7年間、機械学習・ネットワークやIoTデバイスを活用したプロダクトの研究・開発・運用を行っています。 様々な産業・業種へ機械学習の適用・運用を培ってきたナ
公式ドキュメントで説明されているけど、同僚に何度か説明する機会があったり、作る必要のないサービスアカウントキーを目にすることも多いのでまとめておく。 認証情報が登場しないアプリケーションコード 例えば以下のコードで Secret Manager に保存したトークンを取得することができる。SecretManagerServiceClient にサービスアカウントキーを渡さずとも動作する。 const {SecretManagerServiceClient} = require('@google-cloud/secret-manager'); const client = new SecretManagerServiceClient(); (async () => { const [secret] = await client.accessSecretVersion({ name: 'proj
こんにちは。TIGの伊藤です。この記事は秋のブログ週間2021の3日目です。 はじめに私は普段会社でクラウドをまたいでTerraformを日々書いたり、メンバーに教えたりしています。もはや俗に言うプログラミング言語を書かずにここまで全振りしてきたくらいなので、比較的自信を持ってコードを書いて仕事をしています。 特にここ最近はほぼ1からコード設計をして運用まで持っていくこともあり、「より腐りにくい、より息の長いコード」というものを考えるようになりました。Terraformだからこその「定期メンテを簡易にするためには」「より簡単に変更するためには」をひたすら突き詰めていった結果、アツい気持ちが生まれ、今回は筆を取っています。 そんな私のアツい気持ちをしたためた今回の記事ですが、可能な限り例も添えつつ、いくつか解説できればと思います。公式にも実は載っているような内容もあったりしますが、日本語の記
GoogleのSREとSecurityによるBuilding Secure Reliable Systems という本の中で「Zero Touch Production (ZTP) 」という考え方が紹介されていた.これはインフラの権限管理やインフラの構築そのものの指針となる概念であり,自分がそうあるべきだとずっと思ってきた考え方でもある.これはどのような考え方なのか?をこれまでの歴史を踏まえて具体的なツールや事例とともにまとめておく. Zero Touch Production Building Secure Reliable Systems においてZero Touch Production (ZTP) は以下のように定義されている. The SRE organization at Google is working to build upon the concept of least
『GitHub CI/CD実践ガイド――持続可能なソフトウェア開発を支えるGitHub Actionsの設計と運用』という書籍を最近出版したので紹介します。本書ではGitHub Actionsの実装と、CI/CDの設計・運用を体系的に学べます。一粒で二度美味しい書籍です。筆者個人としては「実践Terraform」以来、4年半ぶりの商業出版になります。 gihyo.jp どんな本? GitHub利用者にとって、もっとも導入が容易なCI/CD向けのソリューションはGitHub Actionsです。GitHub Actionsの活用事例は多く、検索すればたくさん情報が出てきます。ただ断片的な情報には事欠かない反面、体系的に学習する方法は意外とありません。CI/CD自体がソフトウェア開発の主役になることもまずないため、なんとなく運用している人が大半でしょう。そこで執筆したのが『GitHub CI/
VSCode拡張機能版Infracostを利用するとTerraformテンプレートを書いているだけで簡易的なAWS利用費の見積もりができます。無料で始められるのでまずはインストールしてみてください。 あしざわです。 皆さんは、これから作成するAWS環境の利用費の見積もり、どうやっていますか? 最近アップロードされたAWS Dev Day 2023 Tokyoのアーカイブ動画を見ていたところ、『Infracost』というIaCテンプレートベースでAM利用費の見積もりができるツールの存在を知りました。 主にTerraformユーザーの方向けになりますが、誰でも無料で始められ導入も簡単かつ便利なツールなのでぜひ皆さんにも使ってほしいと思いブログを書きました。 まとめ InfracostはTerraformテンプレート(.tfファイル)からインフラコストを試算できるツール 無料のInfracost
はじめに さくらのクラウドにはいくつかの開発チームがありますが、その中で私が所属しているガンマチームにおけるTerraformやAnsibleの活用というテーマで川井が発表させていただきます。 内容としては、まずこの発表の目的を説明し、IaC (Infrastructure as Code)とはそもそも何かという話をして、それからさくらのクラウドでTerraformをどのように活用しているか、またAnsibleをどのように活用しているかを発表します。 目的 今回はIaCの勉強会ということで、IaCの理解と実践を目的としています。この勉強会に参加することで皆さんがTerraformやAnsibleを理解し、インフラ構築に活用できるようになることを目指したいと思います。 IaCの理解と実践 この発表ではIaCを以下のように定義します。 「IaC(Infrastructure as Code)と
鍵がいっぱいあるよこの記事は Eureka Advent Calendar 2021 の 13日目の記事です。 はじめにこんにちは、エウレカ SREチーム のハラダです! 2020年頃から今年にかけて、 エウレカのSREチームとSecurityチームではAWS IAMのセキュア化を注力ポイントのひとつとして、継続的に取り組んできました。 本記事では、その実践から学んできたIAM管理で守るべき大原則および、具体的にどうやってセキュアな理想像に近づけてきたか、今後の方向性などを話したいと思います。 Why “IAM” so important ?そもそもなんでIAMが注力ポイントなの?と疑問に思われる方もいるでしょう。 クラウドの大きな強みである「すべてをAPI経由で操作できる」という性質ゆえに、IAMは大きなAttack Surfaceでもあります。 Gartner社の予測によると、2023
監視・通知の仕組みの全体像また、弊社では Terraform を用いて IaC ( Infrastructure as Code ) を実現して、各AWSアカウント環境の状態をコードで一元管理していますが、 Datadog の監視項目も Provider が用意されているため、Terraform で管理をすることが可能です。現状はすべての Datadog の監視項目がコード化されているわけではないですが、こちらは随時対応を行っていきたいと思っています。 外形監視外形監視は、WebサイトやAPIエンドポイントが正常に動作していることを、定期的に特定のURLに対して問い合わせをして、期待されたステータスコードや要素を返すことを監視することを目的とします。 弊社では Datadog の Synthetic Monitoring という機能を利用して監視を行っていますが、この機能の特徴としては W
こんにちは。 SRE の @suzuki-shunsuke です。 Terraform Monorepo に対する Renovate の大量の Pull Request を処理するための技術について紹介します。 背景 過去ブログで何度か紹介しているように、弊プロダクトでは Terraform の Monorepo を管理しています。 先日、 CI を AWS CodeBuild から GitHub Actions + tfaction に移行しました。 blog.studysapuri.jp working directory (state) の数は 400 近くあり、 working directory ごとに以下のような tool のバージョンを管理しています。 Terraform Terraform Provider tflint tflint plugin tfsec etc これ
「Pulumi」がバージョン1.0に到達、正式版に。インフラの状態をJavaScript、Python、Goなどで記述可能。個人向けサービスは無料で提供 かつてサーバの設定や起動、ネットワークの構成といったインフラの構築は、それぞれの設定ツールやコンソールから運用担当者がマニュアル操作で行ってきました(いまでもそうしている組織は少なくないでしょう)。 しかし仮想化基盤やクラウドなど最近のモダンなインフラでは、APIや設定ファイルを通じてプロビジョニングやコンフィグレーションが可能です。 このようにソフトウェアでインフラの状態の表現が可能になることを、いわゆる「Infrastructure as Code」(コードとしてのインフラ)と呼びます。 Infrastructure as Codeの利点は、インフラの状態をコードで記述することによって、誰でも確実に間違いなく実行できて手作業によるミス
こんにちは。 メディアサービス開発部バックエンド開発グループのフサギコ(髙﨑)です。 Ruby on Railsによるバックエンドの実装運用と、AWSによるサービスインフラの設計構築を中心とした、いわゆるテックリードのような立ち位置で働いています。 本記事では前記事のニコニコ漫画のインフラ構成についてに続いて、読書メーターのサービスインフラの概要について軽くご紹介したいと思います。 読書メーターについて 読書メーターは、2008年5月に開設された日本最大級の読書コミュニティサイトです。 単純な読書記録や感想投稿に留まらず、ユーザ間で交流ができること、出版各社さまからご提供いただき著者さまのサイン本や発売前に校閲校正をする際の仮刷りであるプルーフと呼ばれる段階の本が貰える献本プレゼント企画を行っていることも特徴的な点です。 読書メーターの構成 読書メーターは下記の6つのコンポーネントから構成
こんにちは、新規プロダクトの開発をしています、a2 (@A2hiro_tim )です。 昨日、開発してきたプロダクトについて、正式リリースを発表させていただきました 🎉 prtimes.jp employee.kaminashi.jp さて、新規プロダクトの立ち上げは、技術選定や運用ツールの自由度が高く、どの監視ツールを使うか、選択に迷うこともあると思います。 我々のチームでは複数ツールの使用経験はあるものの、特定のツールの導入経験や深い知見があるメンバーはいなかったので、フラットに比較検討し、 Amazon CloudWatch の利用から始めてみよう、と意思決定しました。 主な選定理由は、 AWS エコシステムの中で完結できるため、Terraform Cloud などの既存の設定を流用できて新しく覚えることが少ない、AWS 上でコストを一元管理できる、等のメリットがある。 サービス開
こんにちは。マッハバイトを運営するアルバイト事業部エンジニアの mnmandahalf です。 みなさんは本番DBへのSQLの手動実行等の作業をどんな環境で行なっていますか? 通常はDBにアクセスする用の踏み台サーバにSSHログインして作業を行うケースが多いと思います。 マッハバイトでも最近まで(現在もDBによっては)踏み台を使用していたのですが、最近新・本番作業環境を導入したのでその背景とつまづきポイント等についてご紹介します。 これまでのマッハバイトにおける本番作業 これからのマッハバイトにおける本番作業 TerraformでのECS Execの設定方法 ECSタスクロールにアタッチするポリシードキュメント ECS Execを実行するのに必要なIAMにアタッチするポリシードキュメント ECSクラスタでexecute-commandの監査ログをCloudWatchに流し、ログをKMSキー
探検! Python Flask Robert Picard, 濱野 司(訳) BareMetalで遊ぶ Raspberry Pi 西永俊文 なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳) 知る、読む、使う! オープンソースライセンス 可知豊 きつねさんでもわかるLLVM 柏木餅子, 風薬 R/RStudioでやさしく学ぶプログラミングとデータ分析 掌田津耶乃 データサイエンティストのための特徴量エンジニアリング Soledad Galli(著), 松田晃一(訳) 実践力をアップする Pythonによるアルゴリズムの教科書 クジラ飛行机 スッキリわかるサーブレット&JSP入門 第4版 国本 大悟(著), 株式会社フレアリンク(監修) 徹底攻略 基本情報技術者教科書 令和6年度 株式会社わくわくスタディワール
こんにちは。ソフトウェアエンジニアの坂井 (@manabusakai) です。 今月でカミナシに入社してちょうど 1 年が経ちました。前職では 6 年間 SRE チームにいたのでプロダクト開発はブランクがありましたが、さまざまな挑戦をさせてもらっていたらあっという間に 1 年が経っていました。 カミナシのエンジニアリング組織もこの 1 年で急拡大しており、入社当初から比べると正社員のエンジニアも倍以上に増えました。 GitHub の権限管理、どうしていますか? ところで、みなさんが所属されている組織ではどのように GitHub の権限管理を行なっていますか? カミナシではつい先日まで、ほとんどのエンジニアが Organization の Owner 権限を持っていました。理由は、メンターになったエンジニアがニューカマーのユーザーを招待していたからです。 しかし、統制が取れていないことでいく
はじめに 昨年、AWS のインフラを運用・監視する上で使いやすいと思ったサービスを組み合わせて構成図を紹介した記事、「【AWS】ぼくのかんがえたさいきょうの運用・監視構成」が投稿したその日の Qiita のトレンド 1 位になり、はてなブックマークのテクノロジー分野でトップを飾りました。(たくさんの方に見ていただき感謝してます!) 本記事では「ぼくのかんがえたさいきょうの運用・監視構成」の続編として「ぼくのかんがえたさいきょうの DevOps 実現構成」を紹介させていただきます。あくまでも「ぼくのかんがえた」なので私個人の意見として受け入れていただけると助かります。 前回の記事でもお伝えいたしましたが、各個人・企業によって環境は違うと思いますし、使いやすいサービスは人それぞれだと思うので、これが正解という訳ではありません。一個人の意見として参考にしてただければ幸いです。 また、こちらの記事
最近YouTuberのリュウジの料理を毎日作っているので至高とか無限とか言いがちですが個人の感想です。万人にとって美味しい料理はないように、万人にとって至高のツールは存在しません(何の話?)。ちなみに公開してすぐバグを見つけてしまったので全然至高じゃありませんでした。 要約 概要 特徴 使い方 流れ 事前準備 インタフェースの定義 SDKの生成 プラグインの実装 ホストの実装 実行 発展 Host Functions ファイルアクセス その他 苦労した点 まとめ 要約 Goでプラグイン機構を実現するためのツールを作りました。Protocol Buffersのスキーマからコードを自動生成するので簡単にプラグイン機構を実現可能です。内部的にはWebAssembly(Wasm)を使っています。最近はWasmはブラウザ外での利活用が進んでおり、今回のツールもブラウザは一切関係ないです。Wasmはサ
昨年書いたサーバーサイドエンジニアとして2020年に使った技術1の2021年版となります。 昨年と同じく、冒頭の画像はwakatimeによる2021年1月1日から12月26日までのプログラミング言語使用率です。2位はTypeScript、3位はYAML、4位はTerraformです。 立場 フリーランスで、主にRailsやAWSを使用しているサービスの運用、開発に関わっています。いくつもの会社を見てきた訳ではなく、数社に深く関わっている1都合上、視野が狭いかもしれません。(昨年と同じ) 今年公開している成果については以下です。 Agones移行物語 - Kubernetes Meetup Tokyo 42 #k8sjp|うなすけ|note なぜ我々はクラウドゲーミング基盤をKubernetesに移行したのか #CNDT2021|うなすけ|note Repro のサーバーサイド開発環境を M
はじめに サークル内部向けに書いていた記事ですがZennにも供養します。 Tsuzuと申します。早稲田大学のデジタル創作サークルMISWでSysAdとかWeb班長をしています。引退目前の身です。 Goが10周年らしいです。おめでとうございます。 私自身もGoを書き始めて4年半ほどが経過しました。 以前はC++をよく使っていたのですが最近ではWebフロントエンド以外の開発ではGoを利用することがほとんどです。 今回はKibela活性化の目的も含めてGoの良さを思う存分語ろうと思います。 HashiCorpというTerraform、Vaultなどを始めとする様々なGoで開発されたソフトウェアやSaaSを提供している会社があります。 HashiCorpが開発している一般に一番有名なツールはVagrantでしょうか。(VagrantはRubyですが) HashiCorpのCEOであるMitchel
公開日 2024/07/30更新日 2024/07/31機械学習基盤のアーキテクチャ特集 〜8社の設計意図と今後の展望〜 毎回ご好評頂いているアーキテクチャ特集の今回のテーマは、機械学習です。 機械学習に特に力を入れている日本のIT企業8社にご協力頂き、それぞれの技術的な挑戦と今後の展望についてご寄稿頂きました。各社のアプローチと最新の技術動向を通じて、次世代のイノベーションを紐解いていきましょう。 ※ご紹介は企業名のアルファベット順となっております 株式会社ABEJA ABEJA Insight for Retailについて ABEJA Insight for Retailは、お客様の店舗訪問から購入までの行動をデータから分析する、ABEJAが提供するDXツールです。店舗にIoTデバイス(カメラや来客カウンター等)を設置し、取得データを顧客企業に提供することで小売店舗の運営を支援していま
数えてみたら意外と数あったのでまとめます。 release-please Google謹製のリリース自動化ツール。monorepo対応のRelease Drafterという感じですが、リリースはDraft Releaseの安定版への昇格ではなく、PRのマージによって行います。PRでリリースするという点ではgit-pr-releaseぽいですが、ブランチは main だけでリリースブランチは無い感じ。changesetsよりはとっつきやすい印象です。 github.com 例えば↓のようなワークフローを用意すれば、モジュールごとにGitHub Releaseを作成するためのPRを自動作成できます。 初期セットアップでJSONファイルを2つ作る必要があるのが若干面倒ですが、それさえ越えてしまえば考えることは少なさそうです。 # .github/workflows/release-please.
こんにちは! アンドパッドSREの 宜野座 です。 前回は AWSのアカウント運用改善の取り組みについて記事を書かせていただきました。 今回はアンドパッドでIacへの取り組みとして行っているものの一例として、複数アカウント・複数環境を同一コードでTerraform管理するプラクティスを紹介したいと思います。 少し長くなりますが、お読みいただけると幸いです。 前回ブログ記事 tech.andpad.co.jp なぜIaC(Infrastructure as Code)に取り組んでいるのか Terraformを選んだ理由 同一コードでTerraformを複数アカウント・複数環境へplan, applyしたい terraform init terraform plan terraform apply 環境を増やしたい場合 環境ごとにリソースを作成したり、作成しないようにしたい 他の方法に関して
こんにちは。はてなで SRE をしている id:nabeop です。最近の趣味は、AWS CDK で TypeScript と戯れることです。 今回は、社内の開発合宿で AWS と GCP を VPN で接続して、実運用に載せた場合の課題や構成を検討したので、その内容について書いてみます。 VPN で AWS と GCP をつなげたい背景 どんな構成の VPN を開発合宿で試したか VPN の見え方が AWS と GCP で異なる構成 手軽に VGW で試してみたけど TGW でも大丈夫 VPN エンドポイントにおける IP アドレスの扱い GCP VPC を構成してみて浮上した課題 複数のサービスが VPN を共有する構成 VPC ピアリングで接続するサブネットが作成される おわりに VPN で AWS と GCP をつなげたい背景 はてなでは、クラウド環境として長らく AWS がデファ
Googleは、都内で開催したイベント「Generative AI Summit Tokyo」で、コード生成や補完のためのAIモデル「Codey」が日本語に対応したと発表しました。 CodeyはGoogleの最新の大規模言語モデルPaLM 2をベースとした、コード生成や補完のための基盤モデルです。 Codeyは、自然言語による指示に基づいてコードを生成する機能、チャットで会話しつつコード関連の質問に回答する機能、コードの足りない部分を補完する機能などを備えています。 対応するプログラミング言語は、Java、JavaScript、TypeScript、PHP、Python、Ruby、Rust、C++、C#、Go、Kotlin、Scala、Swift、GoogleSQLなど。さらにGoogle Cloud CLIやKubernetes Resource Model(KRM)、Terraform
Terraformがノーコードに。HashiCorpが「Terraform Cloud ノーコードプロビジョニング」正式リリース HashiCorpは、マルチクラウド対応のインフラ構成サービス「Terraform Cloud」をノーコードで設定、実行できる新機能「Terraform Cloud ノーコードプロビジョニング」を正式にリリースしたことを発表しました。 これまでTerraform Cloudでインフラを構成するには、スクリプト言語「HCL」(HashiCorp Configuration Language)を用いて構成を記述する必要がありました。 「Terraform Cloud ノーコードプロビジョニング」では、こうしたプログラミングやTerraformの専門的な知識がなくともインフラを構成することができます。 HashiCorp #Terraform Cloud no-cod
はじめに 前回の投稿から少し日が空いてしまいましたが、AWS x コンテナに関する商業誌を執筆したので、本ブログにて少し内容を紹介できればと思います🚀 本日、無事校了しました(発売日が10/21なので、結構ギリギリです)。 Amazon.co.jp: AWSコンテナ設計・構築本格入門 : 佐々木拓郎 新井雅也 馬勝淳史: Japanese Books 執筆の経緯と書籍のテーマ 2020年春先、APN Ambassadorであり多数のAWS書籍を執筆されている佐々木さん@dkfj、APN AWS Top Engineersの一人である馬勝さん@HorseVictoryと一緒に技術書典#8に出展したことが事の始まりです。 執筆したクラウドネイティブファーストストーリーが多くの読者の手にとっていただけたという背景もあり、佐々木さんのご厚意により、出版社(SBクリエイティブさん)に繋いでもらいま
今日のお題 結局、CDKとTerraformどっちがいいんだろう、という宗教論争 それぞれをある程度触ってきた上での個人的見解を今後の自分のためにまとめます。 長くダラダラした記事なると思いますがご容赦を。 先に結論 CDK、非常にいいんだけれど、ちょっと辛いかも。 ずっと運用することを考えるとTerraformかな。 (2022/07/22追記) ・・・と思っていたが、使い方によってはCDKの方が良さそうという人になってきました。 その内容は こちら そもそも、CDKとかTerraformってなんだ? 一言で言えば、Infrastructure as Code(IaC)のツールです。 AWSに限らず、GCPやAzureなど様々なクラウドサービスがありますが、これらのクラウドサービス上でコードによりインフラ管理を行う仕組みがIaCです。 これにより、コードさえあれば、どのアカウントにも同じ
この記事は クラウドワークス Advent Calendar 2023 シリーズ1 の 4日目の記事です。 はじめに 「父さんな、Terraform職人やめてお豆腐職人で食っていこうと思うんだ」と言いたいだけの @minamijoyo です。 2023年8月HashiCorpはこれまでMPL2のOSSライセンスで公開していた主要製品をBSL(Business Source License)に変更することを発表し、Terraformはv1.6.0からOSSではなくなりました。 このライセンス変更を受けて、OSS版のTerraformを求める人たちで、MPL2時点のコードベースからforkしたOpenTofuの開発が進められています。 HashiCorpのBSLは、実質的に競合他社の商用利用に制限をかけたもので、ほとんどの一般的なユーザに直接的な追加の制限はありませんが、間接的にTerrafo
フィードバックを送信 Terraform を使用するためのベスト プラクティス コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。 このドキュメントでは、複数のチームメンバーやワーク ストリームで Terraform を使用した効果的な開発を行うためのガイドラインと推奨事項について説明します。 このガイドでは Terraform の概要は説明しません。Google Cloud で Terraform を使用する方法については、Terraform を使ってみるをご覧ください。 スタイルと構造に関する一般的なガイドライン 以下の推奨事項は、Terraform 構成の基本スタイルと構造を対象としています。この推奨事項は、再利用可能な Terraform モジュールとルート構成に適用されます。 標準のモジュール構造に従う Terraform モジュールは、標準のモジュ
先日 CDK for Terraform が GA になりました。 CDK for Terraform を使うことにより、 TypeScript や Go などといったプログラミング言語を使って Terraform エコシステムを利用したインフラの定義やプロビジョニングを行うことができます。 「Go でインフラが書ける」と聞き、ふと思ったことがこちらです。 というわけで書きました。 (2022/10/27 追記) CI/CD も Go で書いた記事を公開しました。 作ったもの GoGoGo 猫の画像をランダムで表示するサンプルアプリです。 主な利用技術について簡単に紹介します。 利用技術 Go 説明不要ですね。 Google 様が作ったプログラミング言語です。 Gin Go の軽量な Web フレームワークです。 公式の紹介に「パフォーマンスは Martini の最大 40 倍です」と書か
“Platform Engineering”という私的よく見かけるが意味を調べたことのない用語No.1のトピックについて書かれた本がO'Reillyからearly releaseされているので読んでる。まだ第一部しか公開されてない。 learning.oreilly.com その中に出てくるアプリケーションチームがTerraformコードを管理することで起きがちな問題について共感したので紹介する アプリケーションエンジニアリングチームがIaaSクラウドのあらゆるものを求めるようになったとき、多くの企業は、各チームに独自のクラウドインフラストラクチャを独自の構成でプロビジョニングする権限と責任を与えることが、摩擦の少ない方法だと判断しました。 実際には、これは、構成管理とインフラストラクチャプロビジョニングに精通した、兼業のクラウドエンジニアリングチームになることを意味していました。 繰り返
登壇者の自己紹介 服部佑樹氏(以下、服部):準備ができたようなので、続いてパネルディスカッションを進めていきたいと思います。 ファシリテーターを務めるのは、GitHubの服部です。よろしくお願いします。では、左から自己紹介をしていただいてよいでしょうか? 黒瀧悠太氏(以下、黒瀧):よろしくお願いします。GMOペパボ株式会社の黒瀧と言います。GMOペパボでちょうど10年ぐらい働いて、今は11年目になります。2012年に入社していろいろなWebサービスを開発したあとに、「SUZURI」というオリジナルグッズを作成するサービスの技術の責任者をしています。 最近、GMOインターネットグループの中で技術的な新しい取り組みや、先進的な活動をしていることを認められて、今はデベロッパーエキスパートもやっています。 業務はWebシステムがメインですが、趣味ではIoTデバイスやハードウェアを作ったり、いろいろ
概要 タイトルの通り、他言語から入門した人が最低限気にするべき、ネーミングルールをまとめました。 対象読者 Goの基本構文を理解している人を対象読者としています。 この記事で説明すること、説明しないこと 説明すること Goのファイル名、変数名などの名前付けに関するルールや慣例などを説明します。 説明しないこと 名前付け以外で気をつけるべきGoの書き方[1] がいくつかあります。 しかし、それらに関してはこの記事では説明しません。 筆者のバックグラウンド プログラマ歴はもうすぐ8年程で、Goの他には以下のような言語の経験があります。 JavaScript TypeScript PHP Ruby Java Scala Goは少し前に書いて、一時期書かない時期が続いていましたが、最近また書いています。 トータルするとGoの経験は1年半程度です。 意識すべき名前付けルール package名 利用し
どうも、ゲームコミュニティ事業部Tonamelのサーバサイド担当の谷脇です。 今回はTonamelのサービス特性上、どうしても発生する急激なアクセス数の増加(以下スパイクアクセス)をどのように対処しているかをお話します。 Tonamelのサービス内容については以前の記事に書いています。一言でいうと「誰でもeスポーツ大会の運営ができるサービス」です。 Tonamelの特徴 大会が開始したときに発生するスパイクアクセス スパイクアクセスの様子 上記は、あるゲーム大会が大会を開始した10:40ごろのリクエスト数の遷移です。Tonamelは大会の開始と同時にトーナメント表が公開されます。大会に参加している人はもちろん、観戦を行っている人もトーナメント表を見に来ます。観戦する人の同期としては、知人や推しの選手のトーナメント表上での位置や、相手を確認しに来ているようです。 Tonamelに限らず、We
https://pipecd.dev/docs/faq/#4-what-are-the-differences-between-pipecd-and-fluxcd https://pipecd.dev/docs/faq/#5-what-are-the-differences-between-pipecd-and-argocd Getting Started 「せっかくなので、軽く GitOps の雰囲気が感じられるチュートリアルをやってみましょう」 バージョン kubectl: 1.18.0 eksctl: 0.29.2 Kubernetes: 1.17.9 Helm: 3.3.4 alias k="kubectl" alias ek="eksctl" Kubernetes クラスタを作成 $ ek create cluster \ --name test-kim \ --version
気づいたら入社して 8 年も経っていた。 2022 年の 4 月にアプリケーションエンジニアへ転向したので、その経緯や転向してやったこと、今やっていることをまとめてみる。 転向の経緯 自分で作りたいものを作りたかったからというのが一番大きい。 アイレットに入社してから 7 年間インフラエンジニアとして生きてきて、ほぼ毎日楽しく業務に励んでいた。5 年目くらいから「あーこれつくれたら便利だな」という場面に何度も遭遇した。 例えば、日々の業務を効率化するような Web アプリケーションや CLI、内部向け API などあったら便利なモノだ。 「よしつくったろ!」と意気込むも手が進まず、最終的には諦めて要件を纏め、コードを書くのが得意な人にお願いしたりしていた。そして要件通りのモノができあがって喜びつつも、「あぁこうやって実装すればいいのか」「実装できてすごいなぁ」「オレにもできたらなぁ」と複雑
こんにちは。マッハバイトを運営するアルバイト事業部エンジニアの mnmandahalf です。 先日、マッハバイトの販売管理システムで使っているデータベースをオンプレPostgreSQLからAmazon Aurora MySQLに移行しました。 本記事では移行に至った背景、吸収する必要があった差分や苦労した点についてお話しします。 環境 移行前のバージョン: PostgreSQL 9.4 ※ドキュメントはバージョン14のものを添付しています 移行後のバージョン: Aurora MySQL 3.02.0 (compatible with MySQL 8.0.23) 環境 MySQL移行の背景 データ移行方法の検討 Embulkの実行で考慮したポイント Embulkの設定 scram-sha-256認証への対応 タイムスタンプが9時間巻き戻る FK制約を無効化できない PostgreSQLとM
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く