のぴぴのメモ

自分用のLinuxとかの技術メモ

AWS CLIで最新のAMI IDを取得する

AWS

タイトルの通り、Amazon Linux2、RHEL8、Windows Server2019の最新AMIのAMI IDを取得するAWS-CLIのコマンドです。(元ネタは、EC2のユーザーガイド) AWS CLIの"ec2 describe-images"でAMI IDを確認しますが、その時に下記オプションを指定することで最新AMIの…

AWS Storage Gateway(VPC エンドポイントあり)環境をCLIで構築し運用する手順

AWS

AWS Storage GatewayのファイルゲートウェイをVPCエンドポイントを利用したVPC閉塞環境を、CLIで構築する手順です。この手順ではNFS接続、SMB(ゲスト接続)、SMB(ActiveDirectory認証)の構成を作成します。またキャッシュリフレッシュ、ソフトウェアップデー…

Windows Server 2019へのWindows Subsystem for Linuxのセットアップと利用Tips

Windows Subsystem for Linuxを使う必要があってPower Shellでセットアップした時のメモ。 (1)Enable-WindowsOptionalFeatureでSubsystem for Linuxを有効かして、(2)Invoke-WebRequest でUbuntuイメージをダウンロードして、(3)Add-AppxPackageでダウンロー…

S3のCopyObjectによるコピーの並列実行によるコピー時間短縮の検証

検証結果から導かれる、S3のCopyObjectによるバケット内でのオブジェクトコピーの並列実行のポイントは、以下の通りです。 CopyObjectを利用したバケット内でのオブジェクトコピーによりコピー処理を高速化可能 S3のプレフィックス単位のAPIスロットリング P…

IAMでサーバ証明書をインポートするCLI手順

AWS

ACM(AWS Certificate Manager)ではなく、IAMでサーバ証明書をインポートするときのCLI手順のメモです。 サーバ証明書のインポート PROFILE=default aws --profile ${PROFILE} iam upload-server-certificate \ --server-certificate-name hoge.com \ --certi…

KMS暗号化されてるEC2インスタンスのAMI取得し別リージョンにコピーする検証(AWS CLI)

AWS

KMS鍵(CMK)で暗号化したEBSを持つEC2インスタンスのAMIを取得し、別リージョンにコピーする場合、鍵がどうなるのかという確認をCLIで確認したエビデンスです。 結論としては、他リージョンにAMIをコピーする時にコピー先リージョンのCMKを指定することになり…

RDS KMS暗号化されてるDBインスタンスをスナップショットで別リージョンにコピーする検証(AWS CLI)

RDSをKMSの鍵で暗号化する場合、RDSインスタンスがあるそれぞれのリージョンKMS鍵(CMK:Customer Master Key)で暗号化しますが、DBスナップショットで、他リージョンにDBをコピーする場合、鍵はどうなるのかということを確認するための検証手順です。 結論と…

AWS CLIでVPCエンドポイントを作成する時のポリシー(JSON)の指定方法

AWS

CLIでVPCエンドポイントを作成するときに、エンドポイントポリシーのJSONをどうやって渡せばいいのかを悩んだので、そのメモ書きです。 JSONの文字列をシェルの変数に投入してあげるという解決策です。 実行例 AWS_PROFILE=default POLICY=' { "Statement": …

Linuxでファイル名がSJIS(CP932)のものをUTF-8のファイル名に一括変換する

convmvをインストール sudo yum -y install convmv 使い方 cd <変換したいファイルがあるディレクトリ> convmv -r -f cp932 -t utf-8 --notest * -r 再帰的に変換を実行 -f cp932 : 変換元のコード指定。cp932は、windowsのSJISコード名称 -t utf-8: 変換先…

JSONの文字列変換(JSON.dumps)をワンライナーのコマンド実行で実現する

コマンドでの作業で、pythonのコードを書くまででない場合の方法。 変数"POLICY"に設定したJSONを、pythonで文字列に変換して、変数"POLICY_ESCAPE"に格納する。 JSON→文字列にエンコード やること このJSONを、 { "Version": "2012-10-17", "Statement": [ …

EC2の有償OSの課金コード("billingProducts")

AWS

インスタンスのメタデータの"http://169.254.169.254/latest/dynamic/instance-identity/document/"の中のbillingProducts"がそれっぽいです。”curl http://169.254.169.254/latest/dynamic/instance-identity/document/ "で参照できます。

AWS CodeCommitでgit認証にAWS CLIの認証情報ヘルパーを使用する

AWS

CodeCommitに作成したgitレポジトリに接続するための認証に、AWS CLIを利用する方法です。gitの認証ヘルパーに"aws codecommit credential-helper"を利用するのがポイントです。

VPCのsubnetのCIDRの割り当てのメモ

VPCのCIDRを"10.1.0.0/16"とした時のCIDR例。 私は検証用途での利用でIPが枯渇するほどインスタンスを起動するわけではなので、IPアドレス範囲をキツキツには設計していない。 ポイント Privateサブネットは少し大きめの19bitで切る。 Publicサブネットは、1…

AWS CloudFormation 起動テンプレート+CloudFormationヘルパースクリプトを使ってFowardProxyインスタンスを複数作成する

AWS

CloudFormationでsquidのFowardProxyインスタンスをCloudFormationヘルパーを利用してインスタンス起動時にセットアップするようにしています。このインスタンスをAutoscalingは使用せず複数個作成したいと思い、EC2の起動テンプレートを組み合わせることで…

(AWS) UserDataとCloudFormationヘルパースクリプトの定義情報取得や実行契機の違い

AWS

UserDataはインスタンスのメタデータから情報を取得するため、実質VPC設定やIAMロールを考慮する必要がありません。一方CloudFormationヘルパースクリプトは、CloudFormationのパブリックにあるエンドポイントから取得するためInternet GatewayやCloudFormat…

VSCodeでAWS CloudFormation(YAML)を作成する環境を整備する

VSCodeでAWS CloudFormationをYAMLで作成する環境の設定手順です。 やること VSCodeのセットアップ YAMLの構文チェック用にエクステンション"YAML Language Support by Red Hat"をVSCodeに追加 CloudFormationの構文チェック用のカスタム設定をVSCode設定に…

mac版PowerPoint消えなくなった自動回復ファイルを手動削除する手順

Mac版のPowerPointを利用していて、PowerPointを起動するたびに古い自動回復ファイルが開いて対処するのが面倒でした。なんとか古い自動回復ファイルを消せないかなと調べた内容を備忘録で残します。 手順 Mac版PowerPointの自動回復ファイルの保存先フォル…

Amazon RDSのIOPS&容量変更をCLIで実行するサンプル

RDS プロビジョンド IOPSで、IOPSを変更して、DBがAvailableになるまでWaitするシェル(+AWS CLI)のサンプルです。 AWS CLIで”aws rds modify-db-instance”で変更をします。 RDS&プロビジョンド IOPSで、IOPS設定によるBLOBファイルインサートのパフォーマン…

CloudTrailの「組織の証跡」でOrganizationsメンバアカウントに一括CloudTrailを設定する手順 (ロギング専用アカウント+KMS暗号化)

AWS

AWS Oraganizationsを利用したマルチアカウント構成で、Oraganizationsの機能で、配下のAWSアカウントに共通のCloudTrail設定を行うことができる「組織の証跡」があります。ドキュメントは以下になりますが、logging専用のAWSアカウントのS3バケットを利用し…

Lambdaの実行ロールのクレデンシャルを確認してみた

AWS

Lambdaの関数からAWS APIを実行する場合、Lambdaに付与した実行ロール(Execution role)の権限が利用されますが、この実行ロールのクレデンシャルをLambda上でどう取得しているかがパッとわからなかったので、実機で確認しました。 結論を述べると、Lambdaを…

Amazon SNSからプッシュ通知をPublishする時のメモ

モバイルプッシュ関連のblog記事 Amazon SNSとiOSでモバイルプッシュを試してみる - のぴぴのメモ (2019/1)Appleのデバイスにプッシュ通知を行うためのAPNs設定メモ - のぴぴのメモ Amazon SNSからプッシュ通知をPublishする時のメモ - のぴぴのメモ マネー…

Amazon SNSとiOSでモバイルプッシュを試してみる

Amazon SNSでiOS(iPhone)へのモバイルプッシュの検証を行うために準備した環境構築のメモです。

macOSにAWS CLIをセットアップする手順

MacにAWS CLIをセットアップした時のメモです。python3ベースです。macOSバージョンは、macOS High Sierra Version 10.13.16で、OS標準のpythonは、python2.7ですの。そのため、個別にpython3をインストールして、pipインストールして、aws cliをインストー…

AWS Secrets ManagerをVPC閉域空間で利用するメモ

AWS

ここではAWS Secrets ManagerをVPC閉塞空間で利用するためにVPC Endpointでアクセスできるよう設定し、かつリソースポリシーでシークレット情報を取得可能なVPCを制限する手順を説明します。

パターン認識と機械学習の詩的な説明にゾクゾク来た話

数年前、AIが流行り始めた時に機械学習がなんぞやと調べて時に出たったShieShareのイントロの「識別・認識とは?」の説明が、詩的ででもわかりやすくて、その時ゾクゾクと来たのを思い出したので、備忘録がてら引用しておきます。ちなみに本文は数学者の方の…

(2019/1)Appleのデバイスにプッシュ通知を行うためのAPNs設定メモ

Mac

はじめに ここで説明すること 全体の概要図 前提 手順 iOSアプリ開発用証明書の作成 (1)Xcode連携での証明書作成 (2)Apple Developerでの証明書確認 App ID の作成とNotificationsのSSLアクセス用証明書作成 (1)App ID作成 (2) SSL証明書発行用に証明書署名…

(備忘録)このblogのデザインめも

利用しているテーマ blog.hatena.ne.jp デザインCSS /* <system section="theme" selected="6653812171397406126"> */ @import url("https://blog.hatena.ne.jp/-/theme/6653812171397406126.css"); /* </system> */ /* <system section="background" selected="bg5"> */ body{ background-color:#486079; background-image:url('/images…</system>

Python3でナノ秒の計測をする方法

Pytho処理時間をナノ秒で計測する方法です。python3.7で追加された、time.clock_gettime_ns()を利用することで実現しています。

Python(boto3)でSNSに通知依頼(Publish)するコード

Python+boto3でPublishするためのサンプルスクリプトです。 前提環境 実行インスタンス OS: Amazon Linux2(amzn2-ami-hvm-2.0.20190110-x86_64-gp) Instance: t2.micro Role:インスタンスにSNSをPublishする権限があるRoleをアタッチしていること SNS Publi…

お名前.comドメイン取得し、Route53のDNS登録をしてLet's Encryptの無料の証明証を取得する手順の全体説明

検証で自己署名証明書(オレオレ証明書)でない証明書が必要だったのですが、お金がかけられなかったのでお名前.comで安いドメインを取得し、Let's Encryptで無料証明書を取得してAWS上で検証をしました。この記事はその時の手順をまとめたものです。