iMind Developers Blog

iMind開発者ブログ

2019-02-01から1ヶ月間の記事一覧

Azure CLIで任意のバージョンでLinuxのVMを立ち上げる

概要 これを書いている時点で az vm create --image UbuntuLTS を指定すると16.04が立ち上がってきたので、18.04を指定してみる。 バージョン情報 azure-cli 2.0.54-1 Ubuntu 18.04 Imageの検索 利用可能なイメージを検索する。下記はUbuntuの例。(このコマ…

AzureのVMのディスク容量をCLIで増やす

概要 AzureのVMを作成した後、deallocateしてディスク容量を変更して再度立ち上げる。 バージョン情報 azure-cli 2.0.54-1 参考URL ほぼ下記URLに書かれている手順をなぞる。 https://docs.microsoft.com/en-us/azure/virtual-machines/linux/expand-disks V…

CLIでAzureの操作

概要 AzureをCLIで扱った経験がなかったもんで、下記などの基本的な操作を実行してみる。 インスタンスの開始・終了 ストレージの作成とattach ファイルストレージの操作 バージョン情報 azure-cli 2.0.54-1 Ubuntu 18.04.1 LTS 導入 MSのサイトを参考にazur…

XfceでSuper+wで開くブラウザを変更する

概要 何かの拍子にブラウザのデフォルトがChromiumになってしまったのでFirefoxに戻したかった。 バージョン情報 Xubuntu 18.04 ブラウザの立ち上げについて Super+wによるWebブラウザの立ち上げはコマンド的には下記になる。 $ exo-open --launch WebBrowse…

AirflowでFailedのタスクをまとめてリトライ

概要 週明けに出社したらAirflowのTask Instancesが真っ赤になっていた。 そんな時、1つずつタスクをリトライしていくのは辛いのでコマンドでまとめてリトライする方法を確認する。 また、再実行する必要がない場合にまとめてSuccessにアップデートする方法…

Apache AirflowのDBをPostgreSQLに切り替える

概要 Apache AirflowのDBはデフォルトではSQLiteになっているが、これをPostgreSQLに切り替えてみる。 バージョン情報 Python 3.6.5 apache-airflow==1.10.1 psycopg2==2.7.5 上記が既にインストールされている前提で作業を進める。 DBとUserの生成 下記のSQ…

Ansibleでディスク容量チェック

概要 複数台のディスクスペースをチェックしてエラーを投げる処理を書きたかった。 サーバー側には何も入れたくなかったのでAnsibleで実行してみる。 バージョン情報 ansible 2.7.6 やり方 StackOverflowによるとansible_mountの結果からsize_availableやsiz…

Pythonで簡易な名前からの性別判定器を書く

概要 名前から性別を判定するのって簡単にできるのかな、ということで簡易な判定器を書いて試してみる。 バージョン情報 Python 3.6.8 scikit-learn==0.19.1 xgboost==0.72.1 テストデータ 名前一覧とか名前ランキング的なページをスクレイピングして27,326…

AirflowでWeb画面からDAGを消せなかった場合

概要 AirflowでWeb画面からDAGを削除しようとした場合に「DAG with id {DAG_ID} not found. Cannot delete」というエラーが出ることがある。 これの削除の仕方。 バージョン情報 Python 3.6.7 apache-airflow==1.10.1 CUIでの削除 CUIから「airflow delete_d…

Pythonのsubprocessで標準出力を取得

概要 Pythonで外部コマンドを呼んで標準出力を文字列で取得する。 バージョン情報 Python 3.6.8 事前準備 標準出力と標準エラーに出力する下記のようなコード(out.py)を用意しておく。 import sys print('standard out') print('standard error', file=sys…

Airflowのdags内でairflow.cfgの値を参照する

概要 $AIRFLOW_HOME/airflow.cfgファイルに記述した内容をPythonのコードから取りたかった。 バージョン情報 Python 3.6.7 apache-airflow==1.10.1 settingsを参照する AIRFLOW_HOMEやDAGS_FOLDERの値はairflow.settingsに入っている。 import airflow # air…

Ubuntu18.04にDockerを入れてMySQLとPostgreSQLを動かす

概要 Ubuntuの18.04を入れてからDockerを使ってなかったので、docker-composeも含めたインストールと申し訳程度にMySQLとPostgreSQLを動かすあたりをメモしておく。 バージョン情報 Ubuntu 18.04.1 LTS Docker 18.09.0 docker-compose 1.23.2 mysql 8.0.13 P…

Airflowでpythonのコードをspark-submit

概要 AirflowのSparkSubmitOperatorを使ってPySparkのスクリプトファイルをspark-submitで実行する。 バージョン情報 Python 3.6.7 apache-airflow==1.10.1 spark 2.3.1 PySpark側のコード 適当にHDFS上のファイルを読み込んで行数をcountするコードを書いて…

Pythonでヒストグラム平坦化とガンマ補正

概要 暗いところで撮った写真をさらっと明るくしたい。 バージョン情報 Python 3.6.5 opencv-python==3.4.2.17 サンプル画像 暗いところで撮影したかわいいワンコの画像があります。 暗い中でもそのかわいさは隠しきれませんが、よりかわいさが見えやすくな…

AirflowのSSHOperatorを使う

概要 AirflowのSSHOperatorで指定のサーバーにsshしてコマンドを実行する。 バージョン情報 apache-airflow==1.10.2 Python 3.6.8 SSHOperatorの引数 SSHOperator実行時はこのへんのパラメータを指定する。 parameter description ssh_conn_id ConnectionのI…

Airflowでタスク失敗時にSlackへメッセージを送る

概要 Airflowのタスクが失敗した際にSlackにメッセージを送るようにする。 トークン等はVariablesに保存して扱う。 バージョン情報 Python 3.6.7 apache-airflow==1.10.1 slackclient==1.3.0 導入 slackclientが必要になるので入れておく。 $ pip install sl…

PySparkで行に連番を振る

概要 PySParkで行に0〜nまでの連続する数値を採番したかった。 バージョン情報 spark-2.3.1 Python 3.5.5 サンプルデータ 下記のような2つのカラムを持つCSVファイル(100万行)を利用。 $ gunzip -c foo.csv.gz | head -5 0,0.194617 1,0.184299 2,0.988041…