Nginxの設定をAnsibleで展開

どんすわサーバー内に入って
Nginxの設定ファイルどこにあるのかなあと探して見つけました。

/etc/nginx$ cat nginx.conf

出てきたnginx.confをcopyして
ローカルのdon.suwa3.me-ansibleに追加したらGitHubにpushです。
https://github.com/suwa3/don.suwa3.me-ansible/blob/master/nginx.conf

ついでにyamlも追加

- hosts: all 
  tasks: 
    - name:nginx.conf 
      become: yes 
      template: 
        src: nginx.conf 
        dest: /etc/nginx/nginx.conf 
        owner: root 
        group: root 
        mode: 0644

そういえばポートを22222に変更していたので
ポート番号の変更を追記しました。

$ sudo vi ansible.cfg 
[defaults] 
hostfile = ./hosts 
remote_port = 22222

playbookしてみます。

$ ansible-playbook -i hosts nginx.yaml 
____________ 
< PLAY [all] > 
------------ 
        \   ^__^ 
         \  (oo)\_______ 
            (__)\       )\/\ 
                ||----w | 
                ||     || 

無事okでました〜
やったねえ

AnsibleでMaintenanceモード切り替え

ふだんdon.suwa3.meが不安定になって

Maintenanceモードに切り替えるとき手動で行っていたので

Ansibleの構成管理に組み込みました。

完成品こちらです

ファイルモジュールでシンボリックリンクの切り替えを設定

$ sudo ln -sf /etc/nginx/sites-available/don.suwa3.me-mainte /etc/nginx/sites-enabled/don.suwa3.me

↑普段切り替えに使っているコマンド

( 参照ドキュメントページ )

file – Manage files and file properties — Ansible Documentation

    - name: changed maintenance page 
      become: yes 
      file: 
          src: /etc/nginx/sites-available/don.suwa3.me-mainte 
          dest: /etc/nginx/sites-enabled/don.suwa3.me 
          state: link 

become: yesはsudo実行

Src:は、どこから

dest:は、どこへ

state:は、何を?ってかんじ


serviceモジュールでNginxのリロードを設定

 $ sudo service nginx reload 

↑普段リロードに使っているコマンド

( 参照ドキュメントページ )

service – Manage services — Ansible Documentation

    - name: Restart service httpd, in all cases 
      become: yes 
      service: 
          name: nginx.service 
          state: reloaded 

serviceモジュールでうまくいかなかったので

Ansible service module vs

でサジェクトされた systemdモジュールを使ってみることにしました。

vs!!!

( 参照ドキュメントページ )

systemd – Manage services — Ansible Documentation

    - name: Restart service httpd, in all cases 
      become: yes 
      systemd: 
          name: nginx.service 
          state: reloaded 

無事成功です!

この要領でNormal.yamlも作成し、動作確認して成功しました。

Ansibleは公式のドキュメントに例がたくさん載っているので

何のモジュールを使うべきか決まっている場合には

公式を見るのが早いなとおもいました。

あとはvsでサジェクトされたものも試してみると

案外うまく行く場合もあるのかもしれないとおもいました🙋‍♀️

GitHubのREADME.mdの画像もリニューアルしました!

https://github.com/suwa3/don.suwa3.me-ansible

~/.ssh/configの設定など

はあい、本日のTODOです。

~/.ssh/configの設定

先日Docker沈黙タイムがやたら長くて帰れない事態に陥ったので

~/.ssh/configに、サーバーへ60秒毎に生きている報告をする設定を書きました。

~/.ssh/configについて – Qiita

ラズパイにログインするのも簡単になった。

やったねえ


cronをAnsibleに追加

そしてメディア削除のDockerコマンドをcronで実行したもの。

(参照)usermod/cronでdocker-compose – うさぎでもわかる

これを構成管理に組み込むためAnsibleに設定しました。

9ddで一気に9行消せた、わーい

そしてdd連打していたら関係ないところも消してしまい

ひーん😢となって調べたらuで元に戻せました。

viコマンド

*ddカーソルがあるところから*行削除 ex.3dd(3行削除)
*yyカーソルがあるところから*行コピー
pペースト
u操作を一つ戻す
Ctrl+r戻すのを戻す

※ dd,yyでそれぞれ1行削除/コピー


デスクトップのゴミ箱化どうにかする

デスクトップがゴミ箱代わりになっていて

スクリーンの設定で見えないようにしていたの。

きちんと整理したいとおもい

スクショの保存先がデスクトップなのが諸悪の根源だと考え

保存先を指定できるか調べました。

Macのスクリーンショットの保存先を変更する|MacFan

ホームにSSディレクトリを作成して以下のコマンドを実行

 $ defaults write com.apple.screencapture location ~/SS/;killall SystemUIServer 

変更できた。わーい

むかしスクショしたものが出てきたよ。

たぶんvenvで仮想環境つくり、Pythonで春って単語を含むものをホニャララしたやつ。(忘れた)

このころはコンテナもクラウドもなんでもかんでも仮想っていうから

仮想わけわからんっておもっていた。懐かしい

README.md整備/$ ls -l

お昼はGitHubのAnsibleリポジトリを見栄え良くするために

README.mdを書いていました。

suwa3/don.suwa3.me-ansible

【GitHub】README.md に画像を表示させる簡単な方法

↑この記事、裏技的だけど確かにラクだった。

以前はwikiを使った気がする。

README.mdに埋め込む画像、terminalのgifでも良かったかもしれない。

明日にでも時間を見つけて更新しちゃおーっと。

lsコマンドの-lについて学びました。

まとめた。

3ビット内で、権限が

有るか/無いか

なので、

2進数で最大7まで表すことができるの、

たまたまなのかもしれないけれども

偶然8より下にできたから、それを採用したのかしら。

経緯を知りたいとおもった。

機械側としてわかりやすいもの

人間側としてわかりやすいもの

コンピューター内で、それぞれ少しずつ譲歩している軌跡みたいなもの

たまに見つけると、そこに至った経緯を知りたいなあとおもう。

Ansibleでcronの設定まとめ

本日はAnsibleの設定をして、そのコードをまとめました。

隠してあるのはユーザー名と、鍵の置き場所です。

$ vi crontab

これは今いる場所にcrontabというファイルをつくってvimで編集

$ crontab -e

これはcrontabというコマンドの中身をvimで編集。

なんか似ててわからんってなったのでまとめです。

cron.yamlは忘れずgit pushです。

最近git操作も慣れてきたよ。

本日のTODO

やることがどんどん増えている。

早くやりたいい、一日6時間くらい作業時間ほしい。

でも疲れちゃうから、せめて3時間かなあ。

いまは一日に1時間も作業時間ないです。

動画を観る / 技術書を読む

この二つは電車やバスなんかの移動中にもできるので

移動中は、なるべくこの時間にあてよう。

甘えモードAnsible/WordPress.comにGA導入

朝からすっかり疲れていました。

本日は完全に甘えモードで、Ansibleのcronモジュールでcrontabの設定です。

自分用の備忘録です。

もともとUbuntu内の権限周りの設定がわけわかめだったのですが

今回Ansibleでcronの設定をやろうということで、権限周り問題が複雑化したように感じます。

ただ、本日は甘えモードのため

「よくわからないけど、動いた設定内容を備忘録としてまとめればOK」

を、目標としたので

本日の目標は完全に達成しました!

.

WordPressにGoogle Analytics導入も試しました。

結論、断念したのですが

scriptタグが許可されていないっぽい。

WordPress.orgとWordPress.com、どっちのワードプレスを選ぶ?

WordPress.orgであれば、自前サーバーでの管理になるので

自由度が高いためプラグインを使って解決できるのだけれども

WordPress.comは有料プランでないとプラグインを使えず、月々3000円ほどのビジネスプランに登録必要があるの。

.

EC2使えるのであればWordPress.orgに移行して自分で運用すれば?

って感じなんですが

don.suwa3.meの運用ですら保守にあっぷあっぷしているので

もう少し慣れてからかなあってかんじです。

具体的には、セキュリティの設定面やアプデに追従できるのかが不安なので

そのあたり慣れたらぜひやりたいです🙋‍♀️

.

vimに慣れたいので、カンペ貼ったよ。

©️はコマンドモードのcです。

便利なショートカット覚えたらどんどん追記したい。

ODC/PORTもくもく会

蒲田で行われていたODC (Open Developers Conference)に行ってきました。

今回は専門学校の廊下がブースコーナーになっていて、ミニマムな感じでした。

サラッと見て、一番テンション上がったのがこれ!

世界最強ラズパイラジコン基板!

たのしい電子工作クラブ

ミニ四駆の自動制御やりたいねってことで

ラズパイもくもく会の主催の方に話して貰って

もくもく会のときに是非挑戦しよう

と、おもっていたの。

これはお話聞かなきゃ!

とおもって、色々と質問できたので良かった。

やったねえ。

やはり、ステアリング機構をつけて左右に転回させたい。

しかしミニ四駆の場合だと、まずモーターの制御からだなあ。

ラジコンの制御のほうが、もしかしたらやりやすいのかもしれない。

.

あと、本の展示でお話を聞いたのが

30日でできる! OS自作入門

これー!

自作OSぜひやりたい。

60日かかっても良いのでやりたい♡

これはロマンよね。

今回も楽しかったです。

次回OSCは渋谷なのだけれども

平日なのよねー、参加できるかは微妙なところ。

.

お昼前には新宿に移動して、PORTもくもく会へ行きました。

みそぴぴ来てたー♡

最近PORTもくもく会の女子率が高いの嬉しいね。

今回はAnsibleの設定をひたすらもくもくしました。

Ansible Documentation

Ansibleの公式ドキュメント、フォントが可愛いし全体的にオシャレ。

HomebrewにAnsibleをinstallするところからスタートだよ。

pingでテストして、なんとかsuccessしている画像。

わーい。

忘れずドヤ顔です(◦`꒳´◦)

.

最近おもうのが

HelloWorldをやって終わってしまうものが多くて

実際につかって

「つかえます」

って言えるレベルまでもっていきたいなあとおもうの。

例えば、AWSのLambdaなんかもガンガン使いたいんだけど

don.suwa3.meの運用の中で、多少無理してでも

「ええ?そこでLambdaつかうの??」

みたいな運用でも良いので、ガシガシ書いて慣れたい。

具体的にはbotのエンドポイントなど

@でリプライを送るとそれをトリガーにして立ち上がるような使い方だとか。

Lambdaも使えて、その中でPythonなども書く練習になるので

そういった学習方法にシフトする

転換期なのかなあとおもいました。

もっと

「つかえます!」

を増やしたいね。

監視ツール

早起きして朝Tully’sしました。

主にAnsible化について調べたよ。

Ansibleをはじめる人に。

ここでAnsibleの名付けのもとになった小説が紹介されていて

Ansibleが登場するSF小説「エンダーのゲーム」読んだ

絶対に面白そうなので読みたいとおもいました。

SFすき。

Ansibleって自動化させるための機能なんだとおもっていたけれども

構成管理ツールと呼ばれているらしく

Ansibleの他にも色々とあるのね。

最近のトレンドがAnsibleらしい。

シンプルで使いやすいとのこと。

とりあえず調べるだけ調べて

AWSのコワーキングスペースLoftに移動しました。

AWSのアカウントを持っているだけで

平日ここのスペースを無料で使えるの、かなり大きい。

あまり時間もなかったので

とりあえずメッセージの返信やスケジュールの調整など雑務を片付けて

軽くお昼を食べて出ました。

SNSがDockerふわふわタイムに突入して重くなったの。

簡易的な監視ツール入れたいなとおもって登録だけしました。

uptime robot

.

美容院で前髪カットして部分パーマかけて

根元リタッチして

髪の毛のメンテナンスしたよ。