ギャバンITサービス
お菓子の家が作れるシステムエンジニアです

ubuntu22を利用開始(google cloud分)

ローカルlinuxでubuntu22利用がうまく行ったので、こっちもバージョン上げた。 基本はローカルlinuxでやったことと同じセットアップをするけど、ネットワークだけきちっと想定しながら作らなあかん。 マシンイメージでubuntu22選べるんかなぁって見たら、下から2つ目にあった。 前はfocal-fossaってネコっぽかったけど、次はjellyfishでクラゲ。 フワフワと動きが軽かったらええんやけどなぁ。 Google cloudのubuntu centosのバージョンアップも同じようなことやったけど、ubuntuでも行程はだいたい同じ。 ローカルlinuxで練習したから、スンナリできた。 やっぱり開発環境で練習して本番環境でも同じことするってやり方だと安心できる。 グローバルIPの予約 いきなりVMを作るわけじゃなく、まずはネットワークから。 どこにどう作って、許可設定どうするかとかをイメージしてからやる。 新しくグローバルIPを予約し、ubuntu22を新OSとしてインストールして、ssh鍵とか作っていく。最終的には古いグローバルIPは開放する(使わずにリザーブするとお金かかるし)。 昔使ったgoogle cloudコンソールのssh接続どうやるんやったか忘れた。 コンソールから一時的にsshを許可するように設定して、終わったらteraterm接続のみしかしないからファイアウォール設定を無効にしとく。 コンソールからsshを許可する方法を説明されている方がおられた。 作者さんありがとう。 https://www.apps-gcp.com/gce-casual-knowhow-03/ こんな感じのgcloudコマンドライン使うらしい。 1 2 3 gcloud projects add-iam-policy-binding gvis-XXXXXX \ --member=user:XXXXXXXXXX@gmail.com \ --role=roles/iap.tunnelResourceAccessor VPCにあるFW設定も新しく予約したグローバルIPで許可設定入れて接続確認してく。 VPCの中にローカルIPも必要なので、それも予約しとく。 グローバルIPは1つだけ予約しておき、使い終わったら返却。ローカルIPは2つを確保しておく。 バージョン上げたりOS変える都度、ローカルは末尾118と218を行ったり来たりする。 新OSを準備 元からディスクはOS用(30GB)とデータ用(300GB)を使っているので、新OS用を一時的にもう1つ用意する。 データ用のディスクには、excelのファイルとかpdfとかもあるけどdockerの永続化領域とイメージが入った領域を持ってる。 永続化領域にはmariadb/rdp用のlinux/gitlabのデータとか入ってて、ubuntu20で使ってたものをubuntu22にマウントしてdocker起動すると一発で動くはず。 「1か月動かしたら$25.66やぞぉ」って書いてあるけど、別にずーっと動かすわけじゃないので気にしない、気にしない。 接続確認した後でdockerコンテナ使い始める直前に、cpuのコア数とメモリサイズ増やすから今は適当に設定。 「ネットワークインターフェースの編集」ってとこでVPCを先につけとく。タグづけしたローカルIPとグローバルIPもつける。この2つをマシン作るときに忘れると、ローカルPCからうまく接続できない。最初これを忘れて、後で変更したら接続できんなぁって悩んだ。 昔はVPN接続使ってて、3年ぐらい前にVPC作った。今はなくてもなんとかなるんやけど、まぁせっかくあるしそのまま使う。 ssh鍵作成とtera term接続 いっつもこのやり方忘れる。 ssh接続するときに秘密鍵と公開鍵を使う。 パスワードもつけておく。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 nari@nafslinux-ubu22:~$ ssh-keygen -t rsa -b 4096 -C "nari@gmail.com" Generating public/private rsa key pair. Enter file in which to save the key (/home/nari/.ssh/id_rsa): /home/nari/id_rsa_nari.txt Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/nari/id_rsa_nari.txt Your public key has been saved in /home/nari/id_rsa_nari.txt.pub The key fingerprint is: SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx nari@gmail.com The key's randomart image is: +---[RSA 4096]----+ | ooo . | | + + | | o o . . . | | S . ..=.o| | = *. +oo=*| | o . .+B.| +----[SHA256]-----+ nari@nafslinux-ubu22:~$ 作ったファイルは大事に保管。 tera termのマクロでも使わせるし、sshトンネリングするときにも使う。 ...

 ⭐️

ubuntu22を利用開始

2022年のゴールデンウィーク頃にubuntu22が出たって記事を見た。 amazon primeから録画してきた動画が、ubuntu20だとどうしても再生できないのがあって、 windows + vlcやったらちゃんと再生できることがわかった。 業務用(pc1)と予備PC(pc2)は、後で作った予備PCが特にディスク性能の差がある。 予備PCはあくまで予備やからそれほど性能高くなくていいし、週に数回動画見るだけやし。 本マシンと予備マシンをひっくり返して、仮想マシン(vm)の切り替え(ubuntu20⇒ubuntu22)もやってみた。 ハードウェア構成の変更 pc1は8世代のi5。 pc2は10世代のi5。 メモリはどっちも32GBで、usb3接続の外付けhddが2個ある。ssdに比べたら低速やけど、大きなディスク使いたいからしゃぁない。 usbディスクはvmdkファイルを置いて仮想マシンに使わせていて、1つはdockerの領域を置いてる。 変更前) mini pc1 (bios hdd windows10pro + ssd vm(ubuntu20,win11pro)) └─USBhdd1 6TB (dataArea vmdk) └─USBhdd2 1TB (docker vmdk) mini pc2 (uefi ssd ubuntu20 + ssd vm(空)) 変更後) mini pc1 (bios hdd (空) + ssd windows10pro ) mini pc2 (uefi ssd windows11pro,vm( ubuntu22 ,win11pro) + ssd ( docker vmdk ) ) └─USBhdd1 6TB (dataArea vmdk) 例えば練習でoracleとかコンテナとして動かすときに、dockerの領域をssdにしたから、めっちゃ速くなるのを期待。 OSのインストール pc2は予備PCやからいきなり潰してもOK。 windows11を入れてから、pc1のデータを流し込む。 ...

 ⭐️

25番ポートでmailが飛ばなくなったのでsmtp認証を追加

サーバが起動したときとか、何かサービスが停止したときにはメールを飛ばす癖がついてる。 日常何気にメールを見てる半分はサーバからのレポートメールだったりする。 昔は25番ポートを使えばよかったけど、今は違ってきていて465とか587を使う。 自分が利用しているlolipopでもそういう流れらしい。 メールのセキュリティ強化における接続先変更のお願い - ロリポップ!レンタルサーバー lolipop.jp 去年の暮れに「順次で25番ポート使えなくしまーす」ってアナウンスあった。 465番を使えって書いてあったけど、本当にその番号でいいのか。 何番のポートを使えばいいのか メールのポート番号はややこしい。 解説されているサイトがいくつかあった。作者さんありがとう。 SMTPポートの適切な選び方─25、587、465、2525番ポートの違い kinsta.com ポート465と587の違いとは? | SendGridブログ sendgrid.kke.co.jp SMTP25番ポートと587番ポートの違い #ポート番号 - Qiita qiita.com lolipopのアナウンスは465番ってあったけど、587番を使うのが正解なんじゃないかと思う。 ということで587番の設定する。 設定した内容 postfixの設定ファイルに追記 何すればいいのかなって参考にさせてもらったサイトは2025年にはどっか行ってた。centosのサイトやししゃあないか。 https://centos.rcg.jp/ubuntu20_mailserver/ けっこう細かく書かれていて「メールサーバーのOP25B対策」のあたりを参考にさせてもらった。 postfixの/etc/postfix/main.cfの最後のほうに追記する。 1 2 3 4 5 6 relayhost = smtp.lolipop.jp:587 smtp_use_tls = yes smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_tls_security_options = noanonymous smtp_sasl_mechanism_filter = plain 認証のための設定実施 sasl_passwdってファイルに認証設定を書いておいてpostfixに使ってもらう。 ...

 ⭐️

docker-composeのバージョン上げ

githubにdocker-composeあるので、ときどき最新を取り直す。 参考 現在利用中のバージョン確認 入れてるかどうか確認する。 入ってると応答が戻る。 1 2 3 $ which docker-compose /usr/local/bin/docker-compose $ 利用中のdocker-composeバージョンを確認する。 1 2 3 nari@nafslinux-ubu22:/docker$ docker-compose --version Docker Compose version v2.6.0 nari@nafslinux-ubu22:/docker$ バージョン上げに失敗したらイヤなので、今あるバージョンをアンスコ付きのファイル名で退避しておく。 1 sudo mv /usr/local/bin/docker-compose /usr/local/bin/_docker-compose 最新バージョンの確認 公開されているバージョンを確認する。さっき見たらv2.6.1が出てた。 docker-composeの公開バージョン ベースOSのバージョンアップのときだけ、ついでにやってる。 バージョン上げる どこかテンポラリフォルダに移動して、その中に取得してから本来に位置に設置。 うまく取れなかったら、アンスコつけて退避したdocker-composeから戻す。 1 2 3 4 5 6 7 8 9 10 11 12 13 $ cd _tmp $ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o ./docker-compose % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 633 100 633 0 0 2205 0 --:--:-- --:--:-- --:--:-- 2205 100 12.1M 100 12.1M 0 0 11.7M 0 0:00:01 0:00:01 --:--:-- 21.9M $ ls docker-compose $ sudo chmod +x ./docker-compose $ sudo mv ./docker-compose /usr/local/bin/ $ docker-compose -v docker-compose version 1.29.2, build 5becea4c $ 稼働確認 起動と停止をやってみる。 docker-compose.ymlをちゃんと処理できてくれてたらOK。 ...

centOS6のサービス設定

initデーモン linuxサーバが起動したときにスクリプトを実行するためには、 以下のフォルダにスクリプト実行用シェルがあるため、 そこに登録しておく。 /etc/rc.d/rc3.d/ S01からS99の順番に起動されていくが、S99localというシェルに書き込んでおくと、すべての処理が動いた最後に起動される。 呼び出し 以下、登録例。 1 2 3 4 5 6 7 8 9 [root@saturn rc3.d]# cat S99local #!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff. touch /var/lock/subsys/local /bin/sh /takara/tkr_script/006_EtherReset.sh > /dev/null 参考URL