chevron_left

メインカテゴリーを選択しなおす

cancel
am
フォロー
住所
未設定
出身
未設定
ブログ村参加

2019/01/25

arrow_drop_down
  • rails statsコマンドを拡張したい

    Railsアプリケーションでアプリケーションの規模を調べる時、rails statsコマンドがよく使われます。 デフォルトのrails statsコマンドだとデフォルトとして設定されているディレクトリのみしかメソッド数やコード数を計算してくれません。 例えば、Rails Engineを本体のアプリケーションにマウントしている場合、Rails Engineのコードはrails statsコマンドの対象外になります。 このように、Rails側でデフォルトで定義されていないディレクトリも統計情報に含めたい場合、どのように拡張すればいいのか調べたので、備忘録的にまとめておきます。 基本のrails s…

  • ElasticsearchのAnalyze APIとExplain APIを使いこなそう

    Elasticsearchを使って日本語の全文検索機能を実装することはよくあるケースですね。 大量のドキュメントをインデックスに登録し運用していると、想定したドキュメントがヒットしない、関連性が低いドキュメントのスコアが高くなっている等、意図していない挙動になっている場合があると思います。 その時にデバッグする時に便利なAPIや使い方をまとめてみます。 Analyze API 実際に検索クエリがどのようにトークン分割されているか確認したい場合に使います。 アナライザを指定することで、アナライザごとにどのようにトークン分割されているか比較することが可能です。 www.elastic.co sta…

  • Google Cloud Vision APIとOpenAIのFunction Callingを使ってみた

    今回はGoogleのCloud Vision APIを使って画像からテキストを検出し、そのテキストとOpenAIのFunction Callingを用いて構造化データを抽出していきたいと思います。 Cloud Vision API Googleが提供している画像を分析し情報を抽出できるサービスです。OCRによって画像からテキストを検出したり、ランドマークやロゴなども検出することが可能となっています。 cloud.google.com テキスト検出の場合、最初の1000ユニット(画像)までは無料で使えます。 cloud.google.com OpenAI Function Calling Ope…

  • /etc/environmentで環境変数を読み込む場合の制約について

    1024bytesを超える環境変数は値が切り捨てられる /etc/environmentに環境変数を設定する場合、値に入れる文字数が多いと正しく読み込まれないことがあります。具体的にいうと1024bytesを超える値を設定しようとすると切り捨てられ、ログファイルには以下のようなエラーが吐かれるようになります。 $ sudo tail -f /var/log/secure grep pam_ Jan 17 07:23:04 ip-xxx sudo: pam_unix(sudo:session): session opened for user root by (uid=0) Jan 17 0…

  • AWS LambdaでExifToolを使う Ruby編

    何をしようとしたか Lambda上で動画や画像のメタデータ取得するためにExifToolのRubyラッパーツールを導入しました。 しかし、ExifToolをLambda上で実行するには一筋縄ではいかなかったので、その解決方法をまとめてみます。 環境 AWS Lambda Ruby3.2 serverless framework ExifToolをRubyで扱うために以下のgemを使用しました。 github.com 発生した問題:Exiftoolの実行ファイルが存在しないと怒られる READMEを参考にGemfile内にexiftool_vendoredを追加した後、 gem 'exiftoo…

  • 対象日から過去1週間のユニークユーザー数を出したい

    何かしらのイベントのデータ分析をする際に、特定イベントのデイリーのユニークユーザー数を出すだけでなく、その日から過去1週間のユニークユーザー数を出したい場合があるかと思います。 例えば、2023-04-16のユニークユーザー数と2023-04-16から過去1週間のユニークユーザー数(2023-04-09~2023-04-16)を出したいという場合などです。 このようなケースで、どのようにクエリを書けば求めたい数値が出せるか悩んだので、備忘録的に残しておきます。 環境 ツール:Redash データソース:Snowflake データ構造 シンプルに以下のようなデータ構造であった場合を想定します。 …

  • FactoryBotでデータを大量に作成する2パターンの速度比較をしてみた

    背景 Rspecでテストを行う際にテストデータが大量に必要だったので、create_listを使ってデータ作成していましたが、create_listを使うよりbuild_listしたものをbulk_importした方が高速化できると教えてもらいました。 bulk_importはActiverecord-Importというライブラリを入れるとバルクインサートができるようになるものです。 github.com そこで、実際にどの程度高速化するのか気になったので、create_listを使う場合とbuild_listとbulk_importを使う場合で速度検証してみました。 検証内容 作成するデータ…

  • Railsで時間をJSON形式の文字列に変換するときに気をつけたいこと

    前提 Railsでcreated_atを含む文字列をJSONに変換したものを受け取った後、そのJSON文字列からcreated_atを取り出し、DBにデータを取りに行くような実装がされていたとします。 その際、想定通りのデータがDBから取得できずに困ったので、その調査&原因をまとめます。 # articleテーブルから1レコードを取得する article = Article.last Article Load (6.0ms) SELECT "articles".* FROM "articles" ORDER BY "articles"."id" DESC LIMIT $1 [["LIMIT",…

  • Elasticsearchの調査系コマンド&便利な使い方

    基本的なElasticsearchのコマンドは、たくさんまとまった記事があると思うので特に困らないと思いますが、プラスαとしてElasticsearchクラスタを運用していく上で知っていると便利かもと感じたコマンドや使い方を備忘録としてまとめてみました。 定期的に追加していくかもしれないです。 表示するカラムを絞り込む 例えば、クラスタに所属するノードの情報を表示させたい場合、cat nodes APIを利用しますが、デフォルトだとレスポンスは以下のようになります。 $ curl -X GET "localhost:9200/_cat/nodes?v" ip heap.percent ram.…

  • FactoryBotでインスタンスを一気に作成するときに値をユニークにしたい

    create_listは、複数のインスタンスを作成するときに便利なメソッドですが、作成されるインスタンスのテストデータは同じになってしまいます。 create_list(:article, 3, title: 'test', description: 'test') createメソッドで愚直に1つずつインスタンスを作成すれば、以下のように渡す引数をインスタンスごとに変えることはできますが、 create(:article, title: 'test1', description: 'test') create(:article, title: 'test2', description: 't…

  • 【Rails】カラムの中身を別のカラムにコピーする3パターン

    1つ目 あるテーブルに新しくカラムを追加し、既存のカラムデータを新規カラムにコピーする ModelName.update_all(new_column = old_column) 2つ目 テーブルサイズが大きい場合、レコードを分割して処理を実行することも可能 ModelName.in_batches(of: 10000) do model_name model_name.update_all(new_column = old_column) sleep 1 end railsdoc.com 3つ目 既存の複数カラムデータをconcatして新規カラムにコピーする ModelName.upd…

  • PostgreSQLを入れ直したらrails db:prepareできなくなった

    何が起きたのか PostgreSQLが立ち上がらなくなってしまったので、再度インストールし直した後rails db:prepareを実行したところ、以下のようなエラーが発生した。 rails aborted! LoadError: dlopen(/Users/xxx/.rbenv/versions/3.1.0/lib/ruby/gems/3.1.0/gems/pg-1.3.1/lib/pg_ext.bundle, 0x0009): Library not loaded: /opt/homebrew/opt/postgresql/lib/libpq.5.dylib Referenced from…

  • Google CalendarをCLIで扱えるnpmを作成しました

    作ったもの Google CalendarをCLIで扱えるnpmを公開しました。機能はシンプルですが、ターミナル上でGoogle Calendarのイベントを表示、登録、編集、削除することができます。 www.npmjs.com 作成動機 最近Javascriptを勉強していたこともあり、外部APIを使って何かCLIツールとして便利なものを作ってみたいと思ったからです。 他にも色々案は考えていましたが、大体二番煎じになってしまうものしか思いつかず、一番アイディアだしに苦労しました。 結構無難ではあるけど、自分の観測内ではGoogle Calendarをいい感じに扱えるnpmは存在してなさそうだ…

  • CodeDeployで"TaskDefinitionTemplateArtifact"パラメータを見直してくれって言われたときの回避策

    どんなエラー? 遭遇したエラーは以下の通り。 タスク定義の検証に失敗したので、CodePipelineのアクションに記述されている"TaskDefinitionTemplateArtifact"のタスク定義を見直してほしいとのこと。 別のデプロイパイプラインも同じ構成となっているのに関わらず、特定のデプロイパイプラインのCodeDeployだけ失敗する状況だった。 Failed to validate the task definition. Check the task definition in the "TaskDefinitionTemplateArtifact" parameter …

  • Rubyのoptparseについて掘り下げてみる

    これは、「フィヨルドブートキャンプ Part 2 Advent Calendar 2021」2日目の記事です。 adventar.org part1もあるので、こちらもどうぞ! adventar.org はじめに 何かしらのプログラミング言語を使ってコマンドを実装する場合、付属するオプションを自前で解析するのは時間がかかりますよね。 Rubyではオプション解析を良い感じにやってくれるライブラリが用意されており、それがoptparseです。 スクリプトを書くときにoptparseを何回か使ったことがあるのですが、いまいち理解しきれていないと感じているので、この機会にoptparseライブラリにつ…

  • aws-cli + pecoを使ってセッションマネージャー接続を楽にする(aws-vault ver.)

    aws-cliを使ってEC2インスタンスに接続するの面倒くさいので、簡単に接続できるようにMakefileを書きました。 タグで特定のenvironmentの稼働中インスタンスの名前とインスタンスIDをpecoに渡して、選択したインスタンスIDをHOSTに入れてます。 ssm-ec2: echo "start session manager in ec2..." $(eval HOST = `aws ec2 describe-instances --region ap-northeast-1 --output json --filters "Name=instance-state-code,V…

  • Terraform v0.12からv0.15にupgradeするときにつまったところ

    やっとTerraformのアップグレードに手をつけました。 そのときにつまったときのメモを残しておきます。 リソースに存在しない属性がサポートされていない aws_codedeploy_appリソースに存在しない属性がサポートされていないというエラーが0.13にアップグレードしたときにでました。 terraform state show aws_codedeploy_app.testで属性を確認してもunique_idは存在していません。 色々と調べたところ、AWSプロバイダv3のバグっぽかったので、AWSプロバイダを3.24->3.50.0まであげることで解決しました。 Instance a…

  • AWS WAFv2導入でつまずいた&考慮したほうがいいところ(rate limit編)

    概要 AWS WAFv2を実際に使って検証したので、その際につまずいたところや考慮したほうがいいところなどまとめます。 今回はレートベースのルールを使ってリクエストの発生元の IP アドレスが同一のものからリクエストが閾値以上になったらブロックする設定にしました。 レートベースのルールは、5分間あたり100リクエストから閾値に設定することが可能となっているので、低頻度のクローラー対策にも対応できます。 aws.amazon.com 構成 今回はWAFをCloudfrontにアタッチする想定で検証しました。 AWSリソースは、Terraformでコード管理します。 Terraform Terra…

  • aws-vaultコマンドのエラー対応

    こんにちは。 久しぶりにブログ書きます。 aws-vaultコマンド便利ですよね。 色々触っていたらエラー吐くようになったので調査したときのログです。 今回のエラー 雑な意訳:ネストに気をつけてね。$AWS_VAULTを強制的にアンセットして。 なにこれ? aws-vault: error: aws-vault sessions should be nested with care, unset $AWS_VAULT to force エラーに従って、アンセットしましたが、解決できず。 $ unset $AWS_VAULT bash: unset: `xxx': not a valid ide…

  • ALBのヘルスチェックに失敗するときに確認すること

    概要 ALBのヘルスチェックにハマったので、そのときに見直すところのメモ。 構成 ALB ECS Nignxコンテナ Railsコンテナ 確認 ヘルスチェックのエンドポイントが間違っていないか ALBのターゲットグループに設定するヘルスチェックのエンドポイントが間違っていないか確認する。単純にtypoなのか、ヘルスチェック用のエンドポイントを用意していないのか見直す。 自分がヘルスチェック用エンドポイントを作成している場合は気がつきやすいが、そうでない場合は開発者に確認しておく。/healthだと思っていたが実は/readme.txtだったなど。。。 ヘルスチェックのエンドポイントが間違ってい…

  • aws firelensを使ってみる

    Firelensとは 去年ECSのログ出力先をカスタマイズできる「Firelens」機能がリリースされました。 それまでは、ECSコンテナのログはCloudwatchLogsか自前でFluendコンテナを立ててログ取集する仕組みを作るみたいなやり方だったと思います。 CloudwatchLogsはログが見づらくてつらすぎるし、Fluentdコンテナ立てて自前でログ収集基盤を構築しメンテナンスするのもしんどい。ここら辺マネージドサービスでいい感じにしてくれる機能がFirelensです。 dev.classmethod.jp どうやって使うかざっくり説明すると、1タスク定義の中にFirelens用…

  • ECSコンテナインスタンスにSSMセッションマネージャを使えるようにする

    概要 今までECSのコンテナインスタンスの中に入ってDockerコンテナのデバッグするためには、踏み台サーバー経由して対象のインスタンスにsshする必要がありましたが、ECSエージェントのアップデートによりsshなし踏み台なしでコンテナインスタンスの中に入ることができるようになりました。 SSMセッションマネージャを使えば、わざわざセキュリティグループで22ポート開けなくていいし、踏み台サーバーも用意しなくていいし管理の手間が省けるのでとても素晴らしいアップデートです🙏🏻 やり方はクラスメソッドさんの記事に書かれているので、実際にやってみてつまずいたポイントがあるのでそれをまとめておきます。 …

  • ecs-cliを使ってみる

    概要 awsのコマンドラインツールはaws-cliがありますが、ecsに特化したecs-cliを使えば、ローカルからクラスタやタスクの作成や簡単なモニタリングをすることが可能です。 そのecs-cliの導入とちょっと使ってみたときのメモです。 導入 macOSの場合 ecs-cliのバイナリをダウンロードする ~ $ sudo curl -o /usr/local/bin/ecs-cli https://amazon-ecs-cli.s3.amazonaws.com/ecs-cli-darwin-amd64-latest ecs-cliの検証をする オプションの手順ではありまずが、ダウンロード…

  • Route53を使う

    AWS勉強ログ。 Route53 ドメイン管理機能 Route53で新規のドメイン取得や更新ができる 権威DNS機能 ドメインとIPアドレスを変換するシステム ドメインを取得するとき 取得したいドメインを入力し、「チェック」する 入力したドメインが使えるかどうか確認できる。取得できない場合、代替で使えるものが下部に表示される。 選択したら、個人情報を入力し購入すればOK ホストゾーン作成するとき ドメイン名を入力し、タイプを「パブリック」か「プライベート」か選択して「作成」する 作ったゾーンの中身をみるとNSレコードとSOAレコードが作成されていることが確認できる レコードを作成するとき ホス…

  • CloudFrontを使う

    AWS勉強ログ。今回は、CloudFrontです。 CloudFrontとは HTMLファイルやCSS、画像や動画などの静的コンテンツをキャッシュして、オリジンサーバーの代わりに配信するCDN(Contents Delivery Network)サービス AWSは世界中にエッジロケーションが120あり、利用者から一番近いエッジロケーションからコンテンツを高速で配信することが可能 CloudFrontがコンテンツをキャッシュすることで、オリジンサーバーの負荷を軽減させることができる バックエンド バックエンド(オリジンサーバー)としてELB、EC2、S3の静的ホスティングを利用することが可能 オ…

  • ECSのタスクロールとタスク実行ロール

    ECSのタスクロールとタスク実行ロールは何が違うのかのメモ タスクロール AWSの開発者ガイドには以下のように書かれている。 Amazon ECS タスク用の IAM ロールを使用すると、タスクのコンテナで使用できる IAM ロールを指定できます。 上記の文言からだと分かりにくいが、「タスクのコンテナ=タスクを実行しているEC2インスタンス」のためのIAMロールであると解釈できる。 https://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/task-iam-roles.html タスク実行ロール これは、読んで字のごとく…

  • ECSタスクのCPUとメモリをチューニングする

    ECSのtask定義のメモリとCPUをチューニングするときのメモ メモリ制限 メモリは「ハード制限」と「ソフト制限」があり、2つの値を設定するとき必ず「ハード制限>ソフト制限」である必要がある。 「ソフト制限」は、コンテナに予約するメモリ量(MiB) 「ハード制限」は、メモリ使用量がこの値を超えると強制的にコンテナが終了するメモリ量(MiB) ハード制限を設定することで一時的にメモリ使用量がバーストしても使うことができる 適正値がわからない場合、以下の範囲から始めると良いと言われている。 ECS ではウェブアプリケーション用に 300〜500 MB から始めることをお勧めします。 CPUユニッ…

  • awsコマンドの'ecr get-login'が非推奨になったので'ecr get-login-password'を試す

    概要 クラメソさんの記事を読んでaws ecr get-loginがv1では非推奨、v2では使えなくなっていることを知ったので、自分の環境どうだったか確認をかねて新しいコマンドecr get-login-passwordを使ってみました。 dev.classmethod.jp 自分の環境 自分のawsコマンドのバージョンどうだったけ?と思ったので確認しましたが、まだv1でした。 ~ $ aws --version aws-cli/1.16.274 Python/3.6.6 Darwin/18.7.0 botocore/1.13.10 v1.17以下だとecr get-login-passwor…

  • ansible-playbookのwith_itemsが肥大化するのを防ぎたい

    概要 Ansible-playbookの1つのタスクで複数のユーザーを作成したり、色んなパッケージをインストールしたいときに役立つのがループ処理です。その代表的なパラメータがwith_itemsではありますが、このパラメータもうまく使わないとwith_itemsに羅列するパラメータが膨大になってしまい、1つのタスクだけ長ったらしくなります。 簡潔なタスクを書くためにwith_itemsの使い方を工夫したのでそのときのメモです。 docs.ansible.com 環境 MacOS 10.14.6 Ansible 2.5.0 解決案 以前のタスクの書き方 最初は以下のようなタスクを書いていました。…

  • ECRのDockerイメージをローカルにプルしてビルドする

    概要 デバッグするために、ECRにあげているDokcerイメージをローカルにプルしてビルドするまでのメモ。 環境 mac10.14.6 aws-vaultコマンドをインストールしている 手順 AWS ECRにログインする 下記コマンドを実行するとDokcerにログインするためのアクセストークンが返ってくるので、そのトークンを使ってECRにログインする。 # アクセストークンを取得する $ aws-vault exec my-profile -- aws ecr get-login --no-include-email --region ap-northeast-1 docker login -…

  • codebuildでyum installが失敗する

    概要 今日の午後くらいから今まで動作に問題なかったcodebuildの失敗が連続していた。 原因を調査してみると、fedoraproject.orgの名前解決ができなくなっていた。fedraprojectのDNSサーバーが死んでる模様。同じような現象に遭遇している人もちらほらいるみたい。 www.reddit.com # 起きている現象 [Container] 2020/02/04 13:53:19 Running command yum update -y Loaded plugins: ovl, priorities One of the configured repositories f…

  • 「AWS IAMのマニアックな話」を読んでIAMについて勉強した

    最近、IAMをどのように管理するのがベストなのか悩んでいたので「AWS IAMのマニアックな話」を読みました。全部で126ページの薄い本ではありますが、内容はIAMについて分かりやすく丁寧に書かれているし、チュートリアルもあるので手を動かしながら理解を深められる良本だと思いました。 IAMについての説明は公式ドキュメントだったりクラスメソッドさんの記事にもまとまっていますが、どのようにIAMポリシーをデザインして運用していくのかについての知見は中々得られないので勉強になりました。 booth.pm 全部読んでみて この本を通して筆者が言いたいのは、「IAMベストプラクティスをよく読んで理解し、…

  • AmazonLinux2でyumが使えなくなったとき

    Amazon Linux2を使ってEC2インスタンスを立てていたのですが、突然yumが使えなくなり戸惑ったのでその対処法について書きます。 エラー内容 遭遇したエラーは下記。 yum updateしようとすると、HTTPエラーが発生しアクセス許可されていないと言われてしまいました。 $ yum update -y Loaded plugins: extras_suggestions, langpacks, priorities, update-motd Could not retrieve mirrorlist http://amazonlinux.ap-northeast-1.amazona…

  • terraformに入門した(aws-vaultを使うver)

    はじめに terraformに入門したので、環境構築及び基本操作をまとめました。 環境 CentOS7.6 Terraform0.12.13 aws-cli1.16.278 aws-vault4.7.1 手順 1. linuxbrewのインストール brewコマンドがないとaws-vaultをインストールできないので、事前に入れておきます。手順は公式HPに沿って進めるとインストール完了します。 docs.brew.sh # linuxbrewコマンドのインストールに必要なものを入れる sudo yum groupinstall 'Development Tools' sudo yum inst…

  • 【めも】linuxbrewコマンドのインストールに失敗するときはアップデートすると良い

    何をしていたのか 自分のLinux環境にaws-vaultを導入しようと思い、まずはlinuxbrewを公式HPを見てインストールしていたら失敗した。 実行していたコマンドは下記。 sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"docs.brew.sh 環境 CentOS7.6 対処法 yumのアップデートで解決。 sudo yum update sh -c "$(curl -fsSL https://raw.githubusercontent.com/Lin…

  • RubyでZabbixアラートをSlackに通知する

    概要 Rubyの勉強をかねて、今までシェルスクリプトでZabbixのアラート通知をしていたものをRubyで書き換えてみました。 設定方法とつまずいたところをまとめたいと思います。 環境 CentOS7.6 zabbix4.0 Ruby2.4 設定方法 slackのWebhook URLを取得する 通知したいチャンネルのWebhook URLをまず取得します。 対象のワークスペースの対象チャンネルにIncoming Webhookインテグレーションを追加します。 表示されたWebhook URLをコピーし、スクリプト内でURLを指定します。 zabbixアラート用スクリプトを作成する 今回は、"…

  • Ansibleでインベントリに書いたIPアドレスを変数として使いたい②

    以前、Ansibleでインベントリに書いたIPアドレスを使って、それを変数として使いたい場合の変数の書き方について記事を書きました。 akng-engineer.hatenablog.com しかし、上記の書き方だと他のパターンに適用することが難しいので、今回は別の書き方についてまとめます。 何をしたいのか 前回は、インベントリにIPアドレスのみを記載していたのですが、この書き方だと各ホストを識別し各ホストのIPアドレスをリモートサーバー上で展開させるような変数を定義することが困難でした。 今回やりたいことは、playbookで作成したシェルスクリプトに自身のIPアドレスを変数定義し、temp…

  • Ansibleでテンプレートエラーが出たときの対処法

    概要 今回遭遇したエラーは、テンプレートに関する内容で以下の通り。 - Ansible error: template error while templating string missing end of comment tag. - Ansible error: template error while templating string expected token end of print statement got '{'.AnsibleでTemplateモジュールを使って、作成したシェルスクリプトをリモートサーバーに送ろうと思っていたところ、上記のエラーが発生しました。 原因 シ…

  • Ansibleでインベントリに書いたIPアドレスを変数として使いたい

    概要 最近Ansibleを頻繁に使っていて、こういう使い方ないかなと思って調べたのでそのやり方を整理。 やりたいことは、「インベントリファイルにグループ別にIPアドレスを記載しているので、そのIPアドレスを変数として使いgroup_varsディレクトリ配下のグループ別変数ファイルにIPアドレスをべた書きしないようにする」です。 環境 CentOS7.6 Ansible2.8.5 解決方法 作成したインベントリファイルは、以下の通りです。 [compute] 192.168.13.xx 192.168.13.xx 192.168.13.xx 192.168.13.xx 192.168.13.xx…

  • Zabbixで1秒間隔の監視にしたらヒストリログの肥大化により1週間でディスクフルになった

    概要 先日、Zabbixの監視間隔を1秒にしたらMySQLのバイナリファイルによってディスクフルになった話を書いた。 akng-engineer.hatenablog.com しかし、バイナリファイルの肥大化より気にしなければならなかったのは、Zabbixで収集したデータのヒストリ保存期間だった。1秒間隔の監視だから、ヒストリの保存期間は7日程にして様子見ようと思ったが、予想上にデータが蓄積するのが早く1週間でディスクを逼迫してしまった。。。検証環境だとは言え、データベース設計の重要性を思い知ったので、今回実施した対処法を記録しておきたい。 環境 Zabbix3.0 MySQL5.6 割り当て…

  • 【Zabbix】MySQLのバイナリファイルが肥大化してDBが立ち上がらなかった

    概要 検証環境のZabbixサーバーがディスクフルでサービス停止していたため調べたところ、/data/mysql配下にmysql-bin-*ファイルが大量に作成されており、ディスク使用量が100%になっていた。なるほど。 原因 expire_logs_days設定していなかった? いや、していた。"expire_logs_days=7"で設定しており、今までバイナリファイルによるディスクフルは発生していなかった。 じゃあ何が原因だったの? 最近、検証のためにZabbixエージェントの監視間隔を30秒⇒1秒にしていたため、バイナリファイルに書き込まれるイベント数が大幅に増加し、バイナリファイルの…

  • prometheus+garfanaで遊んでみるよ

    この前Prometheusを初めて使ってみたので、復習を兼ねてPrometheusで取得したメトリクスをGrafanaで可視化してみたいと思います。 Prometheus? オープンソースの監視ツールです。 プル型なのでPrometehusサーバーが監視先サーバーに聞きまわり、監視メトリクスをかき集めているイメージです。 可視化ツールのGrafanaと親和性が高いです。 Prometehusのデフォルトのダッシュボードがありますが、可視化には強くないので取得したメトリクスを分かりやすく可視化したい場合はGrafanaを使います。 セットアップが非常に簡単で、バイナリをインストールして起動させる…

  • Grafanaのトップ画面をユーザーグループごとに変えたい

    Grafana便利だよね Grafana便利ですよね。最近はGrafanaを使って監視ダッシュボードの開発をメインにしているので、Grafana職人なのかなって思うくらい使っています。今回は、ユーザー(グループ)ごとに見せたいダッシュボードを変えたいときの実例について書きます。管理者と閲覧者に見せる画面を変えて閲覧権限を制限したりなどができるかと思います。 やりたいこと 管理者と閲覧者のトップページ(ログイン後の画面)を変えて、アクセスできるダッシュボードに制限をかけたいと思います。 イメージは以下のようなものを想定しています。 お試し環境 今回は、Grafana6.16で試しました。 手順 …

  • GrafanaのAPIを使ってみよう

    grafanaでGUI画面からぽちぽちデータソース追加したりダッシュボード作ったりするのも良いですが、ちょっと楽したいなと思ったときAPI使って作業負荷減らしたいですよね。 公式ドキュメントには、APIの使い方の詳細があまり書かれておらず多少戸惑いましたが、実際に触ってみて使い方が分かったのでまとめました。 APIトークンを取得する まずはAPIを使うためのトークンを取得していきます。 grafanaのAPIトークンはGUI画面から取得できるので、grafanaにログインし画面左の[configuration]から[API key]を選択します。 [Add API Key]をクリックしユーザー…

  • 【Grafana】ZabbixでCPUコアごとの使用率を出したい

    Zabbix上ではデフォルトのテンプレート(Template OS Linux)で全CPUの使用率を求めるアイテムはありますが、CPUコアごとに出せるんだっけ?と思ったので調べてみました。 公式ドキュメントを見る まずは、公式ドキュメントをみてみます。 www.zabbix.comCPU使用率を求めるアイテムは、"system.cpu.util[cpu,type,mode]"ですね。括弧に中に設定する値は以下の通りです。 - cpu - CPU番号(デフォルトは全CPU) - type - 何のCPU使用率を出すか:idle, nice, user(デフォルト)、system (Windows…

  • 【めも】csvファイルを良い感じに整形・結合して使いやすくしたい

    何をしたいのか アイテム名と値が別々のcsvファイルに吐き出されているので、2つのファイルを整形し1つのファイルにします。sedコマンドでファイルの整形できるけど、アイテム名-値が横に並ぶように結合するときに使えるコマンドあったかなと思い調べたのでそのメモです。 どうしたのか sedコマンドでカンマを改行に変換する 出力されたcsvファイルは以下のような感じです。1行分が1回分のデータです。 一番最新のデータを取得した後、カンマを改行に変換してファイルに出力します。 #2つのファイルをそれぞれ変換する tail -1 item.csv sed -e 's/,/\n/g' > item.tx…

  • Elasticsearchが立ち上がらないときの対処法

    どんなエラーが発生したのか? Elasticsearchを起動させようとすると失敗する。 $ sudo systemctl start elasticsearch ● elasticsearch.service - Elasticsearch Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled) Active: failed (Result: exit-code) since Sun 2019-06-09 06:41:29 UTC; 6min ago Do…

  • Zabbixエージェントによる監視が有効にならないときの対処法

    エラー内容 ZabbixのWebインターフェース画面を確認すると、登録したホストに以下のエラーが表示。 Get value from agent failed: cannot connect to [[IP_address]:10050]: [4] Interrupted system call 環境 Zabbix server3.0.3 Zabbix agent3.0.3 CentOS7 対処法 1. SELinuxの確認 Zabbixエージェントの入ったホスト上でSELinuxが有効か無効か確認する #現在の状態確認 getenforce #有効だったら無効にする sudo setenfo…

  • ElasticsearchにjsonをインポートしてGrafanaで可視化したい

    何をやったのか 今回は、コマンドを打って取得した情報をjson形式に変換してElasticsearchにデータを流し込みます。Elasticsearchにデータを格納するときは、Metricbeatを通常使っているのですが、Metricbeatでは取得できない情報もElasticsearchに投入したかったので、そのためのシェルスクリプトを作りました。コマンドで取得するデータはCephノードの情報です。 処理の流れとしては、以下の通りです。 コマンドでCeph情報を取る タイムスタンプをデータに付ける データにインデックス情報を付与してElasticsearchに送る Elasticsearc…

  • GrafanaのVariable機能を使ってみよう【Zabbix編】

    以前の記事では、Zabbixの監視画面をGrafanaで作成する方法についてを書きました。 akng-engineer.hatenablog.com今回は、監視するサーバーや監視アイテムが増えたときに有用な機能であるVariablesについて紹介します。Variables機能を使うことでGrafanaでの監視画面の作成がかなり楽になるので、知らない方は是非使ってみてほしいです! Variables(変数)とは 公式ドキュメントには下記のような説明がされています。 変数は値のプレースホルダである。メトリッククエリやパネルタイトルに変数を使うことができる。ダッシュボートの上部にあるドロップダウンで…

  • elasticsearch+logstash+grafanaを試してみるよ1(インストール編)

    今回は、twitterプラグインを用いて取得したログをLogstashで加工しElasticsearchに保存した後、Grafanaで可視化するところまでやりたいと思います。 環境 CentOS7.6 Grafana6.16 Elasticsearch5.6.16 Logstash5.6.16 インストール Java確認&インストール Logstashを使うにはJava8が必要なので、事前にJava8が入っているか確認します。 java -versionCentOS7はデフォルトでjava8が入っていないので、インストールします。 今回はOpenJDKのディストリビューションを使います。 ※現…

  • Grafanaを使ってZabbixの監視画面を作成する

    最近業務でGrafanaを使った監視画面の作成を行っているのですが、現場で貸与されているPCがロースペックで作業する度にイラついて仕方ないので、自宅で快適に試す環境があったらいいな~と思い作ってみました。 環境 Vagrant2.2.3 CentOS7.6 (Zabbix、Grafanaを入れるVM) CentOS6.10 (監視対象VM) Grafana6.1.6 Zabbix4.0 手順 ※VagrantとCentOSは既に準備済みとして進めます。 1.Zabbixサーバーの準備 Zabbixの導入手順は、下記のリンクに沿って進めていけば問題なく設定完了します。 www.zabbix.co…

  • Azure Bot Service を使ってLINEbotを作成する(Cogbot勉強会)

    Cogbot 勉強会 2019/04/20に行ってきました 以前slackbot作ったら結構楽しかったので、「今度はLINEbotを作成しよう!」と思って以下の勉強会に参加してきました。 cogbot.connpass.com 初めてLINEのオフィスに行ったのですが、おしゃれすぎて感動しました!こんなところで働いてみたいですね。今回は、LINEで翻訳Bot(多言語対応)を作成しました。 LINEbot作成の流れ Azure サブスクリプションの申し込み(無償版)、LINE Developer の登録をする Azure Bot ServiceでEcho botを作成する LINE Develo…

  • ansibleもくもく会(サーバー編)行ってきたよ

    遅くなりましたが、ansibleユーザー会主催のもくもく会に初参加してきました。 参加したのはこちら↓ ansible-users.connpass.com 今回のもくもく会は、オイシックス・ラ・大地(Osaki kitchen studio)で開催されました。オイシックス提供の美味しい野菜ジュースを飲みながらもくもくです。 会場となったスタジオはこちら↓(若干迷ったw) 無料で会場提供しているとのことなので、勉強会等開催したい方、する予定がある方は連絡すると良いかもです。 www.wantedly.com もくもく内容 今回実施した内容については以下の通りです。 Ansible Engine…

  • Ansible試してみた。パート2 ~インストール・マシン要件~

    前回に引き続き、Ansibleについて。今回は、Ansibleの公式ドキュメントのインストール・マシン要件について軽く要点をまとめてみたい。 要約したものはこちらのページ。 docs.ansible.com Ansibleの基本 Ansibleは通常SSHプロトコルを用いてマシンを管理している。 マシンにAnsibleインストールすれば、DBの追加や起動させるデーモンは必要ない。 ⇒1つのマシンにAnsibleを入れるだけで全部のリモートマシンを管理可能 どのバージョンを選択すべきか Ansibleはソースから簡単に起動することができるので、リモートマシンにソフトウェアをインストールする必要が…

  • Ansible試してみた。

    4月から新しいプロジェクトにアサインされ、Ansibleを使うことになる予定なので、事前にどんな感じか触ってみた。今までサーバーを手動で構築していたので、こういうツールで簡単に構築ができれば最高だなと。。。 始め方 自分のPCに仮想環境立てて試そうと思ったので、下記の記事を見てVirtualBox+Vagrant+CentOSでテスト環境を作成した。 qiita.com ブラウザ上でお手軽に試したい場合は、Katacodaがおすすめ。 www.katacoda.com ansibleインストール コントローラに対して以下のコマンドを実行する。 # yum install -y ansible …

  • vSphere HAの仕組みについて

    VMware製品を用いて基盤構築をしているなら高可用性について考えるだろう。 普段何気なく使用しているvSphere HAの機能だが、良い電子書籍があったのでHAについてまとめてみた。無料なのにとても詳しく書かれているので、英語に拒否反応がない方には是非おすすめ。 読んだ書籍:「vSphere 6.x HA Deepdive」 vSphere HAって何 ESXiホストに何らかの障害が発生しダウンした場合に、クラスタ内の他のESXi上でダウンしたESXiに乗っていたVMが自動的に移動し再起動する仕組み。 サービスを提供する上で、サービスが急に使えなくなったりアクセスできなくなったりする可能性を…

  • DNSの仕組みについてまとめてみた

    最近、mochikoさんの「DNSをはじめよう」を読破したので、私なりにDNSについてまとめてみる。 DNSとは? 正式名称は、Domain Name System。 名前解決する仕組みのこと。 「このホスト名のIPアドレスなんだっけ?」とDNSサーバー(ネームサーバー)に尋ねに行くとIPアドレスを教えてくれるので、その情報を用いてWebページにアクセスできるようになる。 DNSを理解する上で重要なワードは、「フルリゾルバ」、「ネームサーバー」の2つ。 フルリゾルバとは、「秘書」のような役割を持っています。フルリゾルバにこのホストのIPアドレスを知りたい!と伝えるとあちこちのネームサーバーに聞…

  • 「DNSをはじめよう」読みました

    DNSはじめよう読んだ 技術書典で購入したmochikoさんの「DNSをはじめよう」をやっと読破! 色んな方がコメントしているように、初心者に寄り添ってDNSについて解説してあり、すんなり理解できる良本だった。 技術書って文字が多くて専門用語が大量にでてきて堅苦しいので読むのに時間がかかるが、こちらの本は文字と図のバランスが良く、話し言葉なのでとにかくサクサク読める。。。さらに、所々にクイズや例を挟んでいるのでイメージがしやすい。 また、自分で手を動かしながら確認できるので、DNS初心者にはもってこいの本だった。AWSのアカウントを作成するところから一緒にハンズオンできるので、AWS使ってみた…

  • iSCSI Port Bindingについて

    今回は、iSCSI Port Bindingについてまとめてみた。 iSCSIポートバインディングとは 端的に言うと、「ESXiのVmkernelとvmnicを紐づけること、結び付けること」。 ESXiとブロックストレージを接続するとき、iSCSIポートバインディングを行なうことで、冗長化・トラフィックを分散させることが可能になる。 NICチーミングじゃだめなのか 冗長化を考えるときにNICチーミングも1つの手段として挙げられるが、トラフィックの分散ができなかったり、分散するにも冗長かつ負荷分散できるスイッチが必要で設定する必要だったりとある条件下でないといけない。また、同一ネットワークサブネ…

  • NICチーミングって何だっけ?

    普段の業務でNICをチーミングしたり、チーミングを解除したりしているけども、「NICチーミングとは何か?」と聞かれるとはっきりと分かりやすく説明できないので、自分なりに調べてまとめてみた。 NICチーミングとは(Teaming) 読んで字のごとく、簡単に言うと「NICのチームを作ること」。サーバーには複数の物理NICが搭載されているが、それを1つに束ねて1つの仮想的なNICとすること。 何でNICをチーミングをする必要があるかというと、耐障害性を強化したり、使用帯域を向上させることができるからだ。 つまり、チーミングを行うことでNICの冗長性を保つことができる。 NICチーミングの種類 NIC…

  • ゲストOS(CentOS7)がインターネット接続できないときの対処法

    背景 VMware Workstation Playerにて仮想マシンを作成しネットワーク設定を行ったが、ゲストOSからインターネットに接続することができない、「サーバーが見つかりません」と表示される。勿論Pingによる疎通確認も不可。 環境 ホストOS:Windows7 Professional version6.1 VMware Workstation 15.0.2 Player for Windows 64-bit ゲストOS:CentOS7.6 原因 仮想マシンのネットワーク接続をNATに設定し、ホストOSが使用しているWIFIのインターネット共有をVMnet8に対して有効にしていたが…

  • Veeam9.5でバックアップ時にパケロスが生じている話2

    VeeamでVMのバックアップを実施すると通信断が発生している件の続き。 akng-engineer.hatenablog.com VMのバックアップの同時実行数を数個単位で行うと特に問題は発生していないが、2桁のVM数になると、パケロスが生じ同時実行数が増えるほど通信断の時間が長くなっていくことが明らかになった。 今回、10、15、20VMに分けて検証をしたので、その結果についてまとめてみる。 環境 ESXi6.0 (サーバ:36CPU, メモリ512GB, サイズ446GB) VCSA6.0 Veeam backup & replication 9.5 VMバージョン:11 ゲストOS:W…

  • ESXi管理コマンドの復習(esxtop, esxcfg-route)

    今年初めからインフラ業務に携わり、学んだことが多くあったので今月はその復習をしていきたいと思う。 今回はESXiのコマンド2つについてまとめた。 esxtopコマンド ESXiのパフォーマンスを測定するコマンド。topコマンドと似た様なもの。 オプション -v:バージョンを表示する -b:バッチモードを有効する -l:esxtopオブジェクトをロックする -s:セキュアモードを有効にする -a:全統計を表示する -c:esxtop設定ファイルを指定する -R:リプレイモードを有効にする -d:取得間隔を指定する -n:取得回数を指定する キー esxtopコマンド実行後に押下する c:CPU情…

  • Veeam9.5でバックアップ時にパケロスが生じている話

    VMのマイグレーションやバックアップをするときにVeeam backup & replication9.5を使用している。ESXiのストレージとしてNFSをマウントしているけど、20個分のVMバックアップを同時実行すると、ジョブが完了する直前にパケロスが生じてるっぽい。(約50秒くらい) 何でか追及してると、バックアップジョブを完了する前に取得したスナップショットを削除するときにI/O負荷が高くなるため、一時的にVM通信が途切れているらしい。 環境 Veeam backup&Replication 9.5 ESXi6.0 vCenter Server Appliance6.0 Windows …

  • Windows端末に設定すると楽になったもの3つ挙げる

    今回は、インフラエンジニアの私が実際に仕事場で使っているWindows端末に設定していて便利・やっていた方が楽だなと思う設定を3つ紹介したいと思います。 他業界や未経験の方からすると、「エンジニアってバリバリプログラミングして、遅くまで残業して、休日も勉強して、皆真面目でストイックなんだろうな~」イメージを持たれているのではないでしょうか?! しかし、実際のエンジニアはそんなことありません。めっっっちゃめんどくさがりだし、できるだけ楽したいし、自分の作業が楽になるためなら工夫を惜しまない人たちです! 私自身も、「この作業かったるいな~、もっと楽にできないかな~」って良く思っています。こんな思考…

  • 全人類がわかる統計学の「Python入門」に行ってきた

    Python入門に行ってきたよ 9月16日に「全人類がわかる統計学」主催の「Python入門」に初参加してきました。この勉強会、TECHPLAYの中でも人気な勉強会で中々参加枠が取れなかったのですが、今回は滑り込むことができてよかった~! techplay.jp PythonはProgateやドットインストール、書籍を使って独学で勉強をしていました。しかし、一人では中々頑張れず勉強の進捗はぼちぼち・・・。 「このままじゃだめだ!!!」と奮起し、自分の理解度を深めるためにも勉強会へ向かいました。 今回の勉強会は、有料(Paypal前払い:2500円、当日支払い:3000円)であったのもありますが…

  • 私のLPIC・LinuC勉強法について

    はじめに 今回は、LPIC・LinuCの勉強方法についてです。私がLPICレベル2まで一発合格するためにどんな勉強をしてきたのかについてまとめたいと思います。 LPICに合格するための勉強方法はググるとたくさんでてきますよね。「2週間で合格する!」、「こういう部分が聞かれる!」、「暗記するだけではだめ!」などサイトによって様々です。ここでは、LPIC・LinuCを合格するためだけに焦点を当てた勉強方法について解説します。 Linuxの理解を1つ1つ深めながら学習したいと考えている方には向かない勉強方法なので、「とにかく今は合格することが最優先事項!」、「理解は後から深めていくタイプ!」と思って…

  • LPICとLinuC何が違うのか? LinuCについて調べてみた

    はじめに 最近、LPIジャパンがLPICの取り扱いを停止することを公式発表しましたね。これからLPICを受験しようとしていた方、LPICを既に持っている方には、驚きのニュースだったのではないでしょうか。 詳細はこちらから↓ lpicj.org 「LPIジャパンがLPICサポートしなくなったら、今まで取得したLPICの資格はどうなるのか?」、「LinuCって本当にLPICと同等の資格証明になるのか?」と懸念している方もいるかと思います。 そこで、今回はもう既に取得したLPICはどうすればいいのか?、LinuCを受験するメリットはあるのか?について解説していきます。また、実際にLPICとLinuC…

  • Linux超初心者におすすめしたい書籍3冊

    はじめに 前回の記事では私がLPIC合格するために実際に使用した書籍やサイトについて紹介しました。 akng-engineer.hatenablog.com しかし、Linux触ったことも聞いたこともないくらいの初心者である場合、「あずき本を読んでもいまいちよく分からないし1章からもう既に心折れそう・・・(泣)」のような状態になっている方もいるのではないかと思います。そこで、私が全くのLinux初心者のとき「なるほど!分かりやすい!」と感じた本を3冊ピックアップして紹介していきます。 私自身も「Linuxって何?」状態から始まったので、LinuxやLPICの学習している方々に少しでも役に立てれ…

  • LPIC合格するために私が使った書籍・サイト

    はじめに 私は過去記事にも書いた通り、新卒1年目の時にLPICレベル2まで取得しています。LPIC202に関しては、難易度が高いので要点をまとめた記事を書いていますが、 akng-engineer.hatenablog.com 実際に私がLPICレベル2まで取得するのにどんな書籍やサイトを使っていたのか?についても書き留めておきたいと思います。 どんな勉強していたかも後々書きますね。 私が使ったもの 私が試験勉強で使ったものは以下の3つのみです。 LPIC101からLPIC201までは以下の①と②のみを用いて勉強しました。皆さんもよくご存知の通りの書籍やサイトだと思いますが、1つ1つ紹介してい…

  • メルカリ4年ユーザーが売れるもの・売れないものを分析してみた

    きっかけ 私は4年以上メルカリを主に売る側で使用しているのですが、4年も続けていたらそこそこの出品数になっていたので、ここでちょっとどんなものを売ってきて何が売れて何が売れなかったのか分析してみることにしました。 これは、一般人が簡単な分析で調べただけなので(自己整理のため)、がっぽり稼ごうというようなノウハウ系の記事ではないです。 リユースショップではなくてメルカリ使ってみたいと思っている方、本当に売れるの?かよくわからない方、中々売れない・・・と感じている方などメルカリビギナーには少し参考になるかもです。 使用データ 今まで出品した数及び売れたもののカテゴリを円グラフで示してみました。 現…

  • 【LTしてきたよ】TECHPLAY女子部 今の自分が一番好き!私がエンジニアになるまでLT大会

    TECHPLAY女子部で初LT 7月24日、TECHPLAY女子部のイベントである「今の自分が一番好き!私がエンジニアになるまでLT大会」に参加してきました。 今回はLT枠です! 🙋‍♀️イベントのお知らせです!7/24(火)、エンジニア女子それぞれの人生を語る(!?)LT大会を開催決定💐当日は、エンジニアになったきっかけやこれからの目標などを皆で共有します👭ぜひ、ご自身のエンジニア人生を紹介しに来てください〜#techplaygirls https://t.co/fDzKvnRoDp — TECH PLAY女子部 (@techplaygirls) June 27, 2018 「いつかLTやっ…

  • Windowsサーバーでライセンス認証できないとき(Windows Server 2012R2)

    今日学んだことを備忘録としてメモしておきます。 環境 ・VCSA6.0 ・ESXi6.0 ・VMバージョン11 ・ゲストOS:Windows Server 2012 R2 問題 サーバーマネージャからライセンス認証しようとするがエラーによってできない 解決策 コマンドプロンプトからslmgrコマンドを使うことで解決できる 変更方法 1.過去のプロダクトキーを消去する ※過去の情報が入ったままだと認証できない可能性がある slmgr /upk 2.新しいプロダクトキーを登録する slmgr /ipk xxxx-xxxx-xxxx-xxxx(プロダクトキー) 問題がなければ、「正常にプロダクトキー…

  • 2018年上半期を振り返ってみる

    昨日から7月に突入したということで、2018年上半期について振り返ってみたいと思う。 私の自社では、「Growth Plan」といって年間・月ごとの目標を個人で計画し、googleスプレッドシートで管理しているので、そこで立てた目標の進捗率がどうなっているのか見返したいと思う。 1つ目 「LPICレベル2を取得する。」 これは、ブログでも書いている通り、達成済み。 LPIC201に関しては10月に合格していたのだが、LPIC202の勉強が中々進まず年を越してしまっていた。 さすがにこのままでは・・・と思い、2月中には絶対取得するぞと腹をくくって勉強を開始した。 本腰入れて勉強し始めたのは、1月…

  • インフラ勉強会 半年記念イベントに参加してきた @東京

    私が所属しているオンライン勉強会「インフラ勉強会」の半年記念イベントに参加してきました。 中々社外のインフラの方と話す機会ないし、いい機会だとと思って人見知りだけど行ってきたので、イベントレポします。 イベント・インフラ勉強会の詳細はこちら↓ 本日6月23日(土)に開催いたします!「インフラ勉強会 半年記念オフラインイベント」【 東京会場 】https://t.co/2LrohNAFYy【 大阪会場 】https://t.co/kamBUNsqp3会場参加の皆さま:参加会場のURLをご参照リモート参加の皆さま:東京会場「当日の様子(配信/リモート参加)について」 — インフラ勉強会 (@inf…

  • 今週学んだものをまとめてみる

    今週の振り返り。 新しく知ったこと、学んだこと、忘れていたことを書き連ねてみる。 Linux及びVMware周りのことについて。 Linux関連 CentOS6.5でホスト名を変更する Linuxでホスト名変更するとなるとすぐ思い浮かんだのは「hostnameコマンド」を使う方法。 LPICで勉強したときの記憶でうっすらと残っていた。 hostname 新しいホスト名 で変更はできるが一時的な方法で再起動すると元に戻ってしまった。 そのため、恒久的にホスト名を変更したい場合は、設定ファイルを書き換えなければならない。 CentOS6.5の場合は、以下の通りに書き換える必要がある。 ・/etc/…

  • 新卒未経験でエンジニアの道へ 1年経って思うこと

    新卒・未経験でIT業界に飛び込み、約1年が経ったので備忘録をかねて振り返ってみる。 入社する前 ・大学院にて衛星データの解析を行っていた。 ・Matlabで簡単なスクリプトを作成することができる。 ・データのスクリーニング、データ精度の検証、アルゴリズムで植物プランクトン量を推定しマッピングする等。 ・難しいところ先輩のスクリプトを真似たりコピペしていた程度。 ・ExcelやWordはそれなりに使える。 ・VBAはやったことがない。 ・Linuxは入社前に少し勉強しLPICレベル1は取得した。 少しプログラミングかじったことある程度の状態だったので、ほぼ未経験と言って過言でない。 研修期間 ・…

  • LPIC202/LinuC202合格への道 【番外編】

    はじめに 今回は、番外編です。 LPICを勉強する上で、似た様なものが多くあるのでカテゴリ分けした方が覚えやすいと何回か以前の記事で書いています。 そうといっても「いちいちカテゴリ別にまとめるのめんどくさい・・・」というのが本音だと思います。そんな私もそうでした。笑 そこで、今回1は出題される可能性が高い「設定ファイル名・パス」を一覧にまとめてみました。こういう風に一覧にしていると比較的サクッと覚えられるのではないかなと思います。設定ファイル名は必ず絶対パスで聞かれる訳ではなく、ファイル名だけを聞かれる場合もありますが、念のため絶対パスで暗記することを推奨します。 良かったら下記の一覧を活用し…

  • 技術書典4に初めて行ってみたよ

    こんにちは。 4/22に「技術書典4」が開催されていたので、どんな感じのイベントなんだろうと思い立ちふらっと参加してみました。 明日4/22秋葉原UDXアキバ・スクエアにて技術書典4開催です!サークル入場は10時、一般入場は11時からです。明日は暑くなりそうですので調整しやすい服装でお越しください。技術書のお祭りをサークル、一般、スタッフすべての参加者で楽しみましょう! https://t.co/6DW0Lk58ZB #技術書典 — 技術書典公式アカウント (@techbookfest) 2018年4月21日 最近、社外のエンジニアと交流がきっかけで、このイベントを知ったのだけど、予想を上回る…

  • LPIC202/LinuC202合格への道⑥【システムセキュリティ編】

    こんにちは。 今回は、LPIC202最後のチャプター「システムセキュリティ」についてです。 このチャプターは割と軽めなんじゃないかなと個人的には思いますね。 個人的にはパケットフィルタリング、SSH、ラストのセキュリティ関連のところが特に重要だと感じました。 パケットフィルタリングのところだと、もちろんiptablesコマンドはとても重要なんですが、加えてLinuxホストをルーターとして利用するときどのような設定が必要なのか?の部分もきちんと理解しておいた方がいいです。 ラストのチャプターなので、もうひと踏ん張りして頑張っていきましょ~★ 今回の要点一覧です。 ・iptablesコマンドのター…

  • インフラエンジニア初心者にお勧めコミュニティ

    インフラ初心者お勧め!「インフラ勉強会」とは? こんにちは。 まだエンジニア歴2年目のぺーぺーな私なんですが、最近インフラ初心者にとってとてもとても有益なコミュニティを知ったので、共有したいと思います。 (良いな!って思ったものは広めたくなるタイプです。) 最近、自社・客先の業務だけでは物足りなさを感じていて(まだペーペーだから仕方ないんですけど)、「なんかもっと勉強したいけど何から手を付けようか、、、」と悩んでいました。 そんな時、「女性エンジニアの繋がりが欲しい!!!」と思い立ってふらっと参加したTECH PLAY女子部のイベントで「インフラ勉強会」というコミュニティがあることを知ったんで…

  • LPIC202/LinuC202合格への道⑤【メールサービス編】

    今回は「メールサービス」についてです。 個人的にこのチャプターは理解しやすいので、勉強しやすいかなと思います。 まあ、日々メールサービスを利用しているっていうのもありますね。こんな仕組みでメールが配送されて転送されてるんだな~と思いながら勉強してました。 ちょっとめんどくさいというか、覚えにくいなと感じたのはプロトコルですかね? 中々プロトコルとポート番号が一致しなくて、、、(どっちが993ポートでどっちが995ポートだったけ??みたいな) チャプターのボリュームも割と少ないので、ちゃちゃっと終わらせてApacheとかSambaに時間をさけると良いかなと思います。 ということで、要点どん。 ・…

arrow_drop_down

ブログリーダー」を活用して、amさんをフォローしませんか?

ハンドル名
amさん
ブログタイトル
いんふら女子めも
フォロー
いんふら女子めも

にほんブログ村 カテゴリー一覧

商用