株式会社トッカシステムズのフィード
https://zenn.dev/p/toccasystems
トッカシステムズは、受託開発や自社製品・サービス開発を行うエンジニアリング企業です。Webサービスやアプリ、電子マネー、認証機能などの開発や、CMSによるWebサイト構築などを行っています。 Java,PHP,React,Nextでの開発や、AWSを用いた基盤構築・運用等を行って
フィード
CI/CD環境開発を振り返り
株式会社トッカシステムズのフィード
2024年も残りわずかとなりました。入社して1年近く経ったということで、今回は自社プロジェクトでのインフラ環境開発についてお話しさせていただきたいです。 インフラのCI/CD化をお願いします入社後、初めての自社案件インフラ構築であり、初めてのCI/CD化です。要件は次の通りです。現在レンタルサーバ環境にあるリソースをAWSに引っ越してほしいAWS Codeシリーズを使って開発 -> デプロイを自動化してねCI/CDパイプラインでどこかで失敗したらロールバックしてねコードをデプロイ中にサービス止まらないようにしてねまた、CIについてはAWS CodeBuild...
19日前
リソースの期限(EOL)とは
株式会社トッカシステムズのフィード
リソースには期限がある食品に賞味期限があるように、建物や設備に耐用年数があるように、ソフトウェアやクラウドで提供される基盤製品にもサポート期限があります。巷では食品の賞味期限を偽って消費者に提供しニュースになる事例がたびたび報道されますが、ITエンジニアリングの業界でも例外ではありません。このサポート期限を無視して使い続けていると、セキュリティリスクを発生させたり最悪の場合はサービスの停止・終了を余儀なくされる事態になってしまいます。古くなったリソースを使い続ければサービスのユーザーに多大なご迷惑をおかけすることになり、信用を失ってしまう事態にもなりうるでしょう。 EOL...
5ヶ月前
AJP連携でapacheがアプリを動かせない
株式会社トッカシステムズのフィード
経緯TomcatとApacheをAJP連携でポート80のアクセスをTomcatの8080に渡すアプリケーションを構築していたところ、「特定のIPアドレス以外にBasic認証を追加する」という要件が追加されたため、下記のようにapacheの設定ファイルを修正しました。 問題発生個所 Basic認証追加(問題のあるコード)/etc/httpd/conf.d/proxy-ajp.conf<Location />AuthType BasicAuthName "Require Auth" AuthUserFile "/etc/httpd/.htpasswd...
5ヶ月前
AWS Organizationsで許可IPリストを共有する
株式会社トッカシステムズのフィード
目的社内のIPアドレスからのみアクセスしたいリソースのセキュリティグループがあります。IPアドレスの変更や追加に柔軟に適用できるリストを作成するために、プレフィックスリストとRAM(Resource Access Manager)を使用してクロスアカウントでの共通化を実現します。 プレフィックスリストとはセキュリティグループを使用してAWSのリソースへのアクセスを社内のIPアドレスなどに限定したいとき、複数の拠点やVPNを持つ構成ではIPアドレスをあらかじめリストとして用意しておくと便利です。IP管理のためにプレフィックスリストを使用することで複数のリソースから1つのリス...
5ヶ月前
Arm64コンテナをビルドする方法(Github Actions)
株式会社トッカシステムズのフィード
1. 目的Fargateのx86アーキテクチャで動かしているコンテナをコスト削減とパフォーマンス向上のためにArm64に移行します。今回の検証は開発環境で動作するアプリケーションが対象です。コンテナイメージのアーキテクチャを変更してArm64プラットフォームにデプロイします。正常にデプロイができたら、移行後で問題なく実行できるかテストをします。 前提条件Github ActionsとAWSのCodeシリーズでCI/CD環境を構築DockerイメージはGithub Actionsでビルド現在のビルド環境ではGithub Actionsのワークフロー内でコンテナをビル...
5ヶ月前
Gravitonインスタンスを使ってみる
株式会社トッカシステムズのフィード
目的EC2のアーキテクチャをx86からArm64に移行することで性能向上させるGraviton基盤に移行することでEC2のコストを節約する なぜGraviton?GravitonとはAWSが独自に開発したプロセッサです。簡単に説明すると処理性能が高くコストパフォーマンスが高いCPU基盤で、20%以上のコストダウンが可能になります。2024/7/19時点で東京リージョンでGravitonプロセッサを利用できるEC2インスタンスタイプはM7g、T4g、C7g、R7gなどがあります。Gravitonに関する概要はBlackbelt Online Seminarで詳しく説...
6ヶ月前
AWS Summit2024に参加しました。
株式会社トッカシステムズのフィード
遅ればせながらではありますが、AWS Summit2024に参加してきましたのでご報告させていただきます。今年は社内で研修として参加させていただきました。AWSイベントとして大いに盛り上がっているだけでなく、今年は生成AIに関する発表が多く注目を集めていましたね。社内の定例会でスライドとして発表した内容をGIFアニメ化しました。AWS Summit2024の熱い雰囲気を感じていただければと思います! まとめAWSのプロフェッショナルの方々のお話を直接聞くことができ、とても有意義な時間を過ごすことができました。来年はぜひパートナー企業として参加できればと思って...
6ヶ月前
AWS CLI(SSO)をショートカットする
株式会社トッカシステムズのフィード
結論シェルスクリプトを書くだけです。#!/bin/bashaws sso login --sso-session myprofileこれを自分のローカル環境の/usr/local/binなどに配置します。名前はわかりやすくaws-login-{accountid}などが良いでしょう。私はこのようにアカウントID上4桁でクリデンシャルを管理しています。実行する前にはchmod +xなどで権限を付与することを忘れないでください。 実行結果$ aws-login-2771Attempting to automatically open the SSO authori...
6ヶ月前
既存のリソースをIaC化する
株式会社トッカシステムズのフィード
対象このドキュメントはこのような方々を対象に作成しています。CloudFormationや AWS CDKの概要を理解している既にAWS CDKを利用してある程度リソースをデプロイした経験があるCloudFormationテンプレートを作成したいが敷居が高いと感じている 目的開発環境のリソースをコンソール上で作成した後、同様のリソースを本番環境で構築することになりました。考えていたよりも構築したリソースが多くなったため、今後の運用を見据えて本番環境はIaCで作成したいと考えました。移行するIaCツールはCDKを検討していますが、まだCDKを使いなれていないので現...
6ヶ月前
AWSコスト削減 予約・前払い編
株式会社トッカシステムズのフィード
概要AWSでは多くのコスト削減方法がありますが、実施する方法を考えても機会がなければ実行できないことが多いです。不要なリソースを削除したり、パフォーマンスとコストを両立する方法を考えることはベストプラクティスですが、工数や人員の問題から管理が難しい場合もあります。そこで、何もしなくてもAWSの料金を削減できる方法について考えます。 RI/SPsとは何か?RI(Reserved Instance)とSPs(Savings Plans)は、AWSが提供する割引プランです。EC2やRDSなどのインスタンスに対して1年または3年分料金を前払いすることで、割引が適用されます。割引率はイ...
6ヶ月前
ALBのスティッキーセッションを検証する
株式会社トッカシステムズのフィード
目的ECS on Fargateで稼働しているWEBアプリケーションにALBからトラフィックを通しています。1つのセッションで1つのタスクストレージを使い続ける必要があり、ELBがECS on Fargateのタスクに向けてApplication-based cookieでセッションを固定しようと考えています。今回、スティッキーセッションの検証方法や挙動で躓いたのでまとめを作成しました。スティッキーセッションの仕組みは下記の記事を参考にさせていただきました。https://qiita.com/KWS_0901/items/de9487aa041b2718f113 前提...
6ヶ月前
CloudFrontで署名付きCookieを実装し、CORSを設定する
株式会社トッカシステムズのフィード
経緯開発中のアプリケーションで署名付きCookieで制限しながらCloudFrontから別ドメインのS3にある動画ストリーミング用のHLSファイルにアクセスする要件がありました。HLS(HTTP Live Streaming)とは?概要・仕組み・課題など|Agora Go Real|オンラインイベント・ウェビナー・Web会議ブイキューブ 構成構成は下記の通りです。 発生した問題 問題1 リクエストヘッダーの値とCORS設定S3からOACでアクセスするためにCloudFrontのオリジンリクエストポリシーはCORS-S3Originで設定し、署名付きCookieを...
7ヶ月前
microCMS拡張フィールド連携機能: 利用手順と実装方法
株式会社トッカシステムズのフィード
当記事について本記事では、microCMSの拡張フィールド機能について、その利用手順や実装内容を詳細に調査し、その結果をまとめています。公式サイトの説明記事(https://document.microcms.io/manual/field-extension)から機能の概要を理解していただくことを前提としています。 利用手順①microCMS管理画面>API設定>APIスキーマ>フィールドを追加ボタン押下する。②拡張フィールド用外部連携用サイト※のURLを入力。!※連携用サイトは別途自力で開発する必要があり、 画像内ではローカルに構築したサイト...
8ヶ月前
AWS Organizationsを0から始める -CLI編-
株式会社トッカシステムズのフィード
1. 目的AWS Indentitiy Centerを使用してOrganaizations組織のアカウントにSSOが可能になった後、SSOでログインした状態でAWS CLIを使用するための準備をします。本ドキュメントは下記の続編となります。AWSとMicrosoft Entra ID の連携 2. 実現したいこと青色の経路がIAMユーザ認証を使用する経路(As-is)、黄色の経路がSSOを使用する経路(To-be)です。ポイントとして、ローカル環境のターミナルでAWS CLIを使用可能な状態にするために下記を実施します。SSOユーザはアクセスキーを持たないため、...
9ヶ月前
APIでGitHubを操作する方法を考える
株式会社トッカシステムズのフィード
実現したいこと既存システムでAPI経由でGitHub操作する方法を検討しています。 GitHubで使用できるAPIGitHubのAPIはGraphQLを用いて操作する最新バージョンのv4とREST APIで操作ができるv3がリリースされています。各特長としては次の通りで、従来通りのREST APIと柔軟性の高いGraphQLで使い分けします。GitHub API v4(GraphQL)personal access token、GitHub App、または OAuth appで認証します。クエリに指定したフィールドでレスポンスができ、一度のクエリで複数のデータ...
9ヶ月前
AWS Organizationsを0から始める -実践編-
株式会社トッカシステムズのフィード
1. 目的AWSとMicrosoft Entra IDを連携してAWSアカウントへのシングルサインオン環境を構築します。上図は現在のAWS Organizationsの構成です。現状はAWS Organizations Consolidated Billing(一括請求)アカウントに自社やその他組織アカウントが所属する状態で、IAMユーザはそれぞれ自社やその他組織のアカウントで管理しています。この状態からOrganizationsやIDプロバイダーで一元管理可能な環境まで移行することが今回の目的です。 現状のIAMユーザ管理管理者は個々のIAMを発行する工数が、ユー...
10ヶ月前
AWS Organizationsを0から始める -概要編-
株式会社トッカシステムズのフィード
1. 学習したいことOrganizationsは何の役立つサービスなのかAWSの他サービスとの連携機能 2. 対象者このドキュメントは下記に当てはまる方を対象としています。AWS Organizationsは何かを知りたいAWSアカウントをまとめて管理したい複数のアカウントにSSOログインする方法を知りたい 3. AWS Organizationsとは下記の機能を提供するサービスです。複数のAWSアカウント(請求単位)の管理Consolidated Billing(一括請求)複数のAWSアカウントに分割された組織の権限管理Service...
10ヶ月前
CloudTrail 初級編
株式会社トッカシステムズのフィード
1. サービス概要CloudTrailはAWSアカウントでのアクティビティに対してイベント履歴を記録するサービスです。 コンプライアンス管理 APIコールを追跡する誰がいつどのサービスを操作したのか記録を残し、誤操作に対する検証や不正なアクティビティやアクセスを検知することができます。コンソール画面上でログをフィルタリング検索することができます。管理イベントはデフォルトで90日間のアクティビティを蓄積します。90日間以上の記録を保存する場合は証跡機能を有効にしてS3上に蓄積します。 用語の説明 アクティビティとはリソースやリソース上に対して実行さ...
10ヶ月前
ec2にタグ判定で自動起動/停止を設定する
株式会社トッカシステムズのフィード
1. 目的常時起動する必要のないEC2インスタンスを料金の削減のために自動で7:00に起動、22:00に停止するようなスケジューラを作成します。次の要件を満たすことが条件です。cron式を使って定時実行を設定します。指定のタグからインスタンスIDを抽出して実行します。インスタンスIDの指定の場合は対象を変更する場合再設定が必要になるため、柔軟に対応可能なタグでの実装とします。参考にさせていただいた記事Amazon EventBridgeからEC2インスタンスを起動•停止•再起動する簡易な方法5選 | DevelopersIO[AWS] Pythonのbo...
10ヶ月前
DockerイメージをECRにpushしよう!
株式会社トッカシステムズのフィード
こんにちは。2024年2月からトッカシステムズにジョインした佐藤です。今回はDockerイメージをビルドしてAWSのECRにpushする手順をまとめてみたいと思います。 ECRとは?Elastic Container Repositoryの略でAWSによるフルマネージドなリポジトリを作成できるサービスです。Dockerイメージに特化しており、CodeBuildやCodeDeployなどのAWSサービスに連携してCI/CDパイプラインを構築することができます。 Dockerイメージを作成こちらのサンプルアプリをイメージとして構築します。https://github.com...
1年前