FKeisuke

普段はサーバーサイドのエンジニアをしています。 試したことや技術的なことについて書き綴…

FKeisuke

普段はサーバーサイドのエンジニアをしています。 試したことや技術的なことについて書き綴りたいです。 拙い文かもしれないですが見聞きしたことを平易な文章でアウトプットしたいと思います。 https://twitter.com/FKeisuke2

最近の記事

Enum(Python)の小ネタ

PythonのEnumでCallableな値を持ちたいと思ったことありませんか?(強引) そして実装してみるととある問題に直面しませんか? つまりはこういうことです。 import enumimport sysfrom functools import partialfrom typing import List, Callableclass Color(enum.Enum): RED: Callable[[str], str] = lambda m: f"<fon

    • terraformのaws_cloudwatch_composite_alarm

      ここ一年terraformを利用してきた中で、最近AWS CloudWatch AlarmのComposite Alarmを作成する際にほんのちょっと試行錯誤する必要があったので、忘れないうちに書き殴ろうと思います。 Composite AlarmとはComposite Alarmとは簡単に説明すると、複数のアラームを組み合わせてひとつのアラームを作成するものとなります。 詳しくは下記を参照してください。 terraformでComposite Alarmを利用するための

      • Webシステムとは

        Webシステムの仕組みWebとはWorld Wide Web(www)を省略したもので、 インターネット上で提供されているハイパーテキストシステム (wikipedia引用)のことを指します。 これだけだとよくわからないので、「インターネット」と「ハイパーテキストシステム」という言葉に分解します。 まずインターネットとは世界中のコンピュータ同士が繋がってできたネットワークのことです。 世界中のコンピュータ同士が通信をするために、統一されたプロトコル(通信規約)が必要

        • ECS&ECR 第三回(動作確認まで)

          前回の記事でネットワーク周りの設定を行っていきました 本記事ではECSでコンテナを起動し、動作確認するまでの手順を書いていこうと思います 準備手順の確認を行っていきます VPCの作成↓サブネットの作成↓インターネットゲートウェイの作成↓ルートテーブルの作成↓ECSクラスタの作成↓ECSタスク定義の作成↓コンテナ起動で動作確認​ このルートテーブルの作成までは終わっているので 今回扱う内容はECSクラスタ作成、ECSタスク定義作成、動作確認となります 早速やっていき

        Enum(Python)の小ネタ

          ECS&ECR 第二回(VPC作成〜ルートテーブル作成まで)

          前回の記事でDockerイメージをECRにプッシュするところまで行いました 準備は整ったので記事を複数に分けてECSでコンテナを作成・起動してHello Worldするところまで行いたいと思います 本記事ではまず前提条件となるVPC〜ルートテーブル作成のネットワーク周りまでを行います 【前提1】ECS on EC2 / ECS on Fargate違いは?違いはECSのコンテナ起動モードがEC2かFargateかという部分となります じゃあそれによってどんな違いが生ま

          ECS&ECR 第二回(VPC作成〜ルートテーブル作成まで)

          ECS&ECR

          現在業務でECSを利用したマイクロサービスアーキテクチャで構築されたシステム開発を行っているため、忘れないようにメモしておきたいと思います。。。 ECSとはECSはAWSが提供するDockerコンテナ環境 Cluster(EC2)上で動くTask(コンテナ)があります Cluster上で複数のTaskを起動するようなことも可能です Cluster上でどのようにTaskを起動させるかを記述したルールをTask Definitionといいます 同じTaskを複数用意して

          私のプログラムの書き方

          前回記事を書いた時よりだいぶ時間が空いてしまいました 現在のプロジェクトが佳境に差し掛かってきたのでここ数ヶ月は忙しくしています 今回はよわよわエンジニアがどんな感じでコードを書いているかを書き殴ってみようと思います 説明に使用する言語はPythonで実装内容としてはよくある閏年判定にしたいと思います 仕様の確認まずは仕様の確認をします 閏年の判定なので必要な条件をググって以下に貼り付けておきます wikipedia大先生の閏年のページによると 西暦年が4で割り

          私のプログラムの書き方

          CentOS8に入門してみる(ネットワーク管理・トラブルシュート)

          前回までネットワークの設定系を主に見ていきましたが、今回からはネットワーク管理やトラブルシュートの解析で使うコマンド達を学習します どんな事象が発生していてどういうお手当てをすべきか迅速に判断できるように体系立てて覚えていきたいと思います pingコマンドネットワークの疎通確認に使用します 下記はgoogleへpingコマンドを利用して疎通確認を行う例です [vagrant@centuser ~]$ ping -c 5 10.0.2.15PING 10.0.2.15

          CentOS8に入門してみる(ネットワーク管理・トラブルシュート)

          CentOS8に入門してみる(ネットワーク3)

          前回はnmcliコマンドだけにフォーカスして基本的な使い方を見ていきました 今回はまたLinux(CentOS8)でのネットワーク関係に範囲を広げつつちょっとずつ学習していきます 見ていくのは今回もネットワークの設定関係です nmtuiコマンドnmtuiコマンドもnmcliコマンド同様、ネットワーク関係の設定を参照したり変更したりできるものですがこちらはよりグラフィカルに弄ることができるものとなっています 実はネットワーク学習を進めるにあたってVirtualBoxにN

          CentOS8に入門してみる(ネットワーク3)

          CentOS8に入門してみる(nmcli)

          今回もネットワークについての学習です CentOS8と銘打っておきながら暫くは基礎的なLinuxなどの学習になりそうです 今回はNetworkManagerで実際にネットワークインターフェースに対してIPアドレスを設定したりすることをしていきたいと思います nmcliコマンドnmcliはNetworkManagerをCLIで操作することが可能なコマンドとなっています 参照するだけであれば管理者権限は必要ありません まずはステータス確認を行うコマンドを見ていきます

          CentOS8に入門してみる(nmcli)

          VirtualBox + Vagrant(NICの追加方法)

          最近CentOS、もといLinuxやネットワークの学習を進めています VirtualBoxの仮想マシンにNICを新しく追加してnmcliやnmtuiコマンドを使用してネットワークの知識を深めたいと思っていましたが、やり方が分からない部分があったので調べて分かった手順などをメモしておきたいと思います Macを使用していて、VirtualBoxやVagrantなど含めた細かいバージョンは以下の環境で行っています % sw_versProductName: Mac OS XP

          VirtualBox + Vagrant(NICの追加方法)

          Python、強すぎる

          最近業務ツールの作成でPythonを触っています この言語割と強すぎませんか?と思うこの頃です (強いっていうか便利ですね) 普段はJavaを主に使って開発することが多いのですが、開発の主体じゃない補助的な役割のツール類製造に関しては特にこれというのを決めて言語を選んでいませんでした 時にはshellやpowershellで書いてみたり、時にはJavaで書いてしまったり・・・ ただどれも痒いところに手が届かないというか色々な部分で独特だったりとかするのでちょっと使い

          Python、強すぎる

          CentOS8に入門してみる(ネットワーク2)

          前回は主にIPアドレス周りの知識を再整理する作業を行いました 今回から何回かかけてネットワークの設定を実際に弄りながら学習していきたいと思います ネットワークインターフェースネットワークとの接点をネットワークインターフェースと言います IPアドレスはホストに紐づているわけではなく、ネットワークインターフェース≒NIC(ネットワークインターフェースカード)に紐づいています ※AWSだとNICと同等の役割を担うものとしてENI(Elastic Network Interf

          CentOS8に入門してみる(ネットワーク2)

          CentOS8に入門してみる(ネットワーク1)

          ネットワークを再学習します AWSやるにしても何をやるにしてもネットワークの基礎知識が必要なので復習を兼ねて基礎からやっていきたいと思います まずはIPアドレス周りからスタート IPアドレスとサブネットマスクの概要インターネットやLANはTCP/IPというプロトコルが普及しています TCP/IPはインターネットの住所に相当する部分をIPアドレスで表します IPアドレスは32bitの2進数で表しますが、分かりやすいように8bit区切りにして各パートを10進数で表します

          CentOS8に入門してみる(ネットワーク1)

          CentOS8に入門してみる(バックアップ)

          バックアップについて重要な項目についてまとめたいと思います バックアップの意義ハードウェアの故障や操作ミス、不正侵入などによって消失したデータを復旧する為にデータを外部に保存しておき、リストアできるようにする為にバックアップを行います バックアップの種類完全バックアップ : システム上やファイルシステム上のファイル全てをバックアップ。バックアップに要する時間・バックアップメディアに要求される容量は共に大。復元は容易 差分バックアップ : 前回の完全バックアップから作成・

          CentOS8に入門してみる(バックアップ)

          partedコマンド

          fdiskでパーティション作成を行っていましたが、partedコマンドを試しました [vagrant@centuser ~]$ sudo parted /dev/sdbGNU Parted 3.2Using /dev/sdbWelcome to GNU Parted! Type 'help' to view a list of commands.(parted) pError: /dev/sdb: unrecognised disk labelModel: ATA VBOX

          partedコマンド