sasanoha blog

フリーランスSEの独り言

2021/5/19 ビットコイン暴落時の挙動

2021/5/19のビットコインの暴落にまぁまぁ上手くのれたので、その日の様子や手法をメモしておく。

これまで高騰していたビットコインだが、4/14に64000ドルの天井をつけた後、過熱感から市場はやや悲観的になり、テクニカル的にも久しぶりの下トレンドを示していた。 連日陰線が続いていたので、上がりそうでもあったが、これ以上陰線が続くとパニック売りが始まりそうな水準まできていた。

その日の値動き

  • 9:00

42500ドル~43000ドル辺りの狭いレンジを行き来する。 連日の売り圧力に対し、42000の防衛ライン耐える形となった。

いわゆる、三角持ち合いの下降形となる。 前日からこのレンジでヨコヨコが続いていたので、42500買と43000売を繰り返し10回程度小銭を稼いだ。

  • 10:00

42000ドルに近づく。 私は割った瞬間にハイレバでショートを打つ準備をしてそのときを待つ。

  • 10:30

42000ドルを割る。 私はその瞬間にショートを入れることに成功した。 その後、41000ドルまでじりじり下げた。

投げ売りが始まることを想定していたが、思ったより下げなかった。

  • 13:00

40000ドルまでじりじり下げる。 その後はヨコヨコで退屈な展開かつハイレバだったので気が休まらなかった。

  • 22:00

39000ドルを割るところで、暴落が始まる。 暴落で一時29000ドルにタッチした。

私は仮眠してその瞬間に立ち会うことができなかった(爆)

なお、暴落の引き金は中国が仮想通貨による決済を禁止・マイニング禁止する方針を発表したからだったようだ。

  • 22:30

起きて、暴落していることに気づき、慌てて32000ドルで利確。 そして、リバウンドを取るためロングに持ち直す。

  • 23:00

34000ドルでリバウンドのロングを利確。

方向性が分からなかったので、その後は静観。

  • 04:00

39000ドルまで戻る。

反省

かなり暴落しそうな雰囲気があったので一日チャートを見てようと思ってたのだが、中々暴落せず仮眠してしまった。 まぁ、人間は寝るのでしょうがないか。極端な値動きに反応するアラームでも設定しておけばよかった。(あるのか知らないけど)

リバ取りを強気にいけなかったし、リバ取りの利確目標も決めていなかった。 パニック売り時のリバ取りは、半値~全戻しを狙えそう。

データ分析基盤構築入門のWebアプリケーションが起動しない(no such table: articles)

概要

こちらの書籍で紹介されているdockerコンテナが動かなかったのでメモ。 https://www.amazon.co.jp/dp/B075RTZ141/ref=dp-kindle-redirect?_encoding=UTF8&btkr=1

問題

下記のブログと同様に「no such table: articles」と表示され、アプリのマイグレーションができていない現象に遭遇。 https://qiita.com/ikedanoda/items/d3622833154a2b83fd9c

# マイグレーションコマンド
docker-compose exec go make migrate/up

# エラー
github.com/go-sql-driver/mysql/conncheck.go:29: undefined: syscall.Conn

対処

上記のエラーは、goのバージョンが1.9未満の時に生じる模様。 とりあえず、goを1.9.7に上げて対応。

# dockerコンテナの中に入る
docker-compose exec go bash

# goのインストールフォルダは/usr/local/goのため、削除して入れ直す
rm -rf /usr/local/go

wget https://dl.google.com/go/go1.9.7.linux-amd64.tar.gz
tar -zxvf go1.9.7.linux-amd64.tar.gz
mv go /usr/local/go

# 動作確認(1.9.7と表示されればOK)
go version

# マイグレーション
make migrate/up

最後に

動作はこれから確認するので、正しく動いているかは未検証。

goのバージョンをアップグレードするより、 goのバージョンと乖離していないブランチをgo-sql-driverを落とした方がいい気がする。 (おそらくgo-sql-driverの最新版のリポジトリのみを見ている)

dockerはデリバリーする分にはいいけど、抽象レイヤーが多すぎて問題があるとよー分からん。 こっちはdockerを四六時中触っているわけでないし、 環境を構築する過程が吹っ飛んでで辛い。

あと、他言語を置いておいてgoを使う必要性も分からんので勉強する。

とりあえず、動いたからOK。

メモ用

GIS データ

GIS(Geographic Information System:地理情報システム)は、その名の通り地理に関する情報である。

CefSharp

CefはChromium Embedded Frameworkの略で、Chromiumをアプリケーションに組み込むためのフレームワークです。 そのC#の実装

Kali Linux

ペネトレーションテストに特化したLinux

Buscador OSINT VM

OSINTに関するツールがディストリビュートされているOS

OSINT Framework

https://github.com/IVMachiavelli/OSINT_Team_links

人生と時間

時間さえあれば何だってできると思っていた。 でも、歳を取ってくると時間がいくらあっても足りないと気付いた。

新しい知識を得れば、更に深い知識に辿り着き、適当なところで諦める。 散らばった知識が点在し、一点に集中した専門的な成果物は出せないでいた。

本当の自分の課題を置き去りにして、社会の一人としての僕の課題が割り込まれていく。

新たな課題を見つけ、少し計画を練って、そして割り込まれた課題によって押しつぶされていく。 僕の稚拙な計画は、輝きを放つことなく忘却されようとしている。 似たようなサービスを見つけては、ショーウィンドウの向こう側にある商品を眺めているような気分になる。

本気で取り組もうとしたら、いつでも取り組むことができた。 時間さえあれば。

人は誰しも自分の課題の消化を最重要としてもいいはずだ。 それができなかった。

幼少の頃は、こんなことを言われて育てられた。 人の言うことを聞きなさい。 人に迷惑をかけないようにしなさい。 いい会社に入りなさい。 あの子のように優秀になりなさい。

そこに僕を中心とした言葉は存在していなかった。 そんなことが祟っているのかもしれない。

自分を中心に生きる。 今思えば、こんな当然な話はない。 あなたが好きなように生きなさいという言葉が欲しかった。

欲しかった物が見つかった。 それを言ってもらう機会はないかもしれないけど、 少しだけ自分を肯定していい理由が見つかった。

僕は弱い自分を知らないふりをしていた。 弱い自分を認めたくなかった。 そして、自分のことがよく分からなくなった。 でも、ようやく弱い自分を認めることで、自分の存在に気付いた。

彼はパズルで遊んでいる。 パズルを取り上げると泣いてしまう。 内向的で飽き性で、気づくと別のパズルで遊んでいる。 そう思うと、一晩中同じパズルで遊んでいることもある。

そして、それを微笑ましそうに眺めている自分がいるのに気付いた。 最近までは、彼とよく喧嘩をしていて、いつも僕が勝っていた。

彼は新しいパズルが欲しいようなので、僕はパズルを持ってくる係になった。 でも、中々構ってあげられなくて、時折、寂しそうに僕に何かを伝えようとしている。 このパズルがどういうものだったか伝えたいみたいだ。

僕はもっと彼のことを知らなければいけない。 時間を作らなければいけない。 自分が自分の時間を予約しなければいけない。

自分の時間は会社のものではない。 そう思うと、僕はフリーランスになった。 〇〇株式会社の僕から、僕になった。

とてもしっくりきている。 決断の時に、会社を重視するか、自分を重視するかで迷わなくなった。

お互いの都合を考慮した取引もできる。

現在は、一緒に仕事をした人のコネで働いている。 自分のやりたいことをやるつもりだったが、 また人の課題を割り込ませてしまったと反省している。

でも、気持ちはいままでと全然違った。 半強制的に選択肢が決められていた会社員時代と、自由な選択をできる今。

選択肢が、自分のコントロール下にあることがとても嬉しい。

長い長いオープニングムービーが終わり、ようやく主人公を操作できるみたいだ。

VMwareの基礎知識

VMwareとは

仮想化基盤を構築するためのソフトウェアを提供する会社であり、またそれらのソフトウェアの総称である。

製品体系

VMwareは、様々な製品を組み合わせて成り立つため、それぞれの製品の役割を認識していないと混乱する。

Esxi

物理サーバ(ハードウェア)上にインストールされるOS仮想化機能の提供に特化したOS(ハイパーバイザ型仮想化ソフトウェア)である。 なお、以前はEsxという製品も存在したがEsxiに統合された。

vSphere Hypervisor

Esxiを含む、仮想マシンの管理機能(WEB管理コンソール等)を提供するEsxi上のWebサービスである。 条件はあるが無償で利用可能である。

vCenter

複数のEsxiを束ねる管理ツールである。 WindowsServer上に構築されることを前提としている。 本製品はエンタープライズ向けであり、以下の機能を提供する。(エンタープライズで運用するなら、まず導入しなければいけない。)

Horizon

バーチャルデスクトップインフラストラクチャー(VDI )機能を提供する製品。 サーバ上に存在する仮想デスクトップをリモートで操作する。 マスタコンピュータをメンテナンスし展開することで、アプリケーションの環境構築のコストを削減、問題管理の単純化を狙うことができる。

VMware Workstation Player

ホストOS上で仮想マシンを作成・実行するためのソフトウェアである。 類似製品に、Oracle VirtualboxHyper-vなどがある。

サブ機能

製品体系で紹介したサブ機能について補足する。

VMware HA(High Availavilty)

仮想マシンクラスタを構成し、フェイルオーバーなどの可用性を提供する。

vMotion

実行中の仮想マシンを別の物理マシンへ移動し、ダウンタイムなしのメンテナンスを提供する。

VMware DRS(Distributed Resource Scheduler)

一連のサーバ全体のコンピューティング・キャパシティを論理リソースプールに統合する。 ビジネスの要件に従い、使用可能なリソースをインテリジェントに割り当てる。

vSphere Hypervisorのインストール

Esxiとハードウェアには相性があるため、エンタープライズではベンダーが保証しているハードウェアにEsxiをインストールすること。 自宅に無償版をインストールしたが、ハードウェアのドライバ関連で躓いたので以下に備忘録を残す。

事象

vSphere Hypervisor6.7をインストールしようとしたところ、「no adapter networks」となりインストールができない。

対応

RealtekNIC用ドライバーは、インストーラーにデフォルトで含まれないようだ。

  • vSphere HypervisorインストーラーにRealtek r8168ドライバを組み込んだ。
  • vSphere Hypervisor6.7だとドライバを認識してくれなかったが、6.5にすることで認識した。
# カスタムインストーラの作成
.\ESXi-Customizer-PS-v2.6.0.ps1 -v65 -vft -load net-r8168

参考

できれば最新版(6.7)を動かしたかったが、お試しなので一旦は6.5でいい。

近年のインフラ構成(ハイパーコンバージド)

初めに

ITの基盤となるインフラの知識について要点を抑えてみる。

仮想化について

近年、IT産業では仮想化技術が日進月歩で進化している。 仮想化技術とは、システム構築における物理的制約から解放され、ビジネスに適したシステムを高速開発するための手段である。 例えば、新たなシステムを導入する際には、新たにサーバを調達しなければいけないという課題が生じる。 システムを稼働させるマシンがなければシステムを構築することができないが、仮想化基盤を利用することで迅速にサーバを払い出すことが可能となる。 もちろん、新たなサーバを利用するために必要なCPU・ストレージ領域に余力を持っていることは必要である。

また、従来ではシステムを一度導入するとシステム構成の変更は容易ではないが、仮想技術により構成変更が容易になるため、 継続的なシステム構成の改善が可能となり、保守・運用費に貢献ができる。

ハードウェアと仮想化の方式について

仮想化基盤によりソフトウェア上の課題を多く解決することができるが、 仮想化基盤は当然ながらハードウェア上に実装することとなり、物理的制約・導入費・運用費が生じる。

近年、仮想化基盤に適したハイパーコンバージドインフラという仮想化基盤構築に最適化されたソフトウェアを搭載した統合ハードウェアが登場し、インフラの主流となりつつある。 これを、従来の3-Tier構成などの従来のインフラ方式とともに特徴を説明する。

3-Tier

3-Tierは以下のレイヤーからなるインフラ設計の方式である。

  • サーバー本体
  • 外部ストレージ装置
  • ストレージネットワーク(SAN)

この方式は、以下の欠点があった。

  • 各レイヤー(製品)毎にベンダーがバラバラでありサポート窓口が一本化されていない。
  • 各製品が密結合のためメンテナンスと拡張作業の影響範囲が大きい。
  • スケールイン(一部のストレージの交換など)でシステム全体を停止する必要があった。

また、サーバ・ストレージの設計が必要であり、その管理コストが生じた。 それを解決するために、サーバ・ストレージ等のリソースを管理するソフトウェアを搭載したハイパーコンバージドインフラが登場した。 これは、データの可用性(RAID)におけるRAIDボリュームやLUNの設計等の課題をハードウェア側からソフトウェア側に移譲させた仕組みである。

コンバージドインフラ

サーバー、ネットワーク、ストレージ、ソフトウエア(ハイパーバイザーや運用管理ツールなど)を、一つのパッケージに統合した製品である。 垂直統合システムと呼ばれたりもする。 最適化された構成で、検証済みの状態で出荷され、一つの製品としてサポートを受けられる。 後述のハイパーコンバージドインフラと類似の方式である。

ハイパーコンバージドインフラ

3-Tierの問題を解決しようとしているハードウェアとソフトウェアの組み合わせである。 コンバージドインフラとの違いは、計算装置と呼ばれるリソースの管理・割り当てのソフトウェアを統合している点である。 記憶装置を12本~24本程度程度搭載し、業務データは外部ストレージではなくサーバー本体内蔵のストレージに保存する。 1つのサーバー筐体に計算装置とストレージを搭載する。 構成がシンプルになったため、3Tier構成より柔軟な拡張性を提供し、スケールイン時にシステム停止をする必要もない。(制約はある) 仮想化基盤の構築やVDI環境の構築などに最適である。

3-Tierとハイパーコンバージドインフラのイメージ対比

サーバ本体とストレージの一体化(ハイパーコンバージドインフラ)により、ネットワークの片側にリソースを集約することに成功している。 f:id:ys-method:20190324104821p:plain f:id:ys-method:20190324104831p:plain

ハイパーコンバージドインフラの要点

  • サーバ・ストレージをソフトウェアにより一体化(SDS)
  • サーバ・ストレージの状態監視
  • ストレージ設計が不要
  • ハードウェア保守のサポート窓口一本化
  • 柔軟なスケールイン・スケールアウト
  • ミニマムスタートから段階的にスケールさせていく計画が可能

ハイパーコンバージドインフラ製品

  • Nutanix
  • DellEMC
  • SimpliVity
  • FLASHSTACK
  • PRIMEFLEX

備忘録

2U・3U

データセンターで縦長のラックに格納されているピザボックスのような形のサーバをマウントラック型サーバと呼び、その単位をUnitと数える。 UはUnitを意味し、1Uは1.75インチの高さを意味する。

筐体

コンピュータを収めた箱のことである。 キャビネット、ボックス、エンクロージャーなどとも呼ばれる。

サーバマウントラック型サーバであれば、ラックに収めるピザボックスを筐体と呼び、その筐体の中に1つのサーバを構成するハードウェアが収まる。

計算装置

仮想化基盤において、効率的にサーバリソース(CPU・メモリ・ストレージ)を割り当てるためのソフトウェアである。

オールフラッシュ

ストレージを全てSSDで構成することを意味する。

アプライアンス製品

アプライアンスとは特定の機能や用途に特化した専用機器のこと。 複数の機能を保有する汎用機器に対し、不要な機能を削減しているため、比較的安価で高い性能を持っている。

SDS

software-Defined Storageの略。