Hi there ð
Welcome to my website!
Hi there ð
Welcome to my website!
2024幎ã®1æã«è»¢è·ããŠããæ©ãã3ã¶æãçµã£ãŠããŸããŸããããã®3ã¶æãããã¯æ £ããã®ã«ç²Ÿäžæ¯ã§ããããããã次第ã«ç°å¢ã«ãä»äºã«ãæ £ããŠããŠãå°ããã€ã§ããããšãå¢ããŠããæ°ãããŸããå°ããã€å¿ã«ãæéã«ãããšããåºãŠããã®ã§ãä»æŽã§ãã2024幎ãš2025幎ã®ç®æšã決ããããšæããŸãã 2024幎ã®ç®æš 2024幎ã®ç®æšã¯ãºããªãWebéçºãã§ããããã«ãªããã§ãã ã€ã³ãã©ãå人åãªã®ã«äœãèšã£ãŠãããã ãšæãããæ°ãããŸããããã®3ã¶æãããã§ã¢ããªåŽã®ããšãå šãç¥ããªãã®ã¯ãŸãããšçæãããããŸããããŸã1ã€ç®ã®çç±ã¯ãã€ã³ãã©ããŒã ã®ããã·ã§ã³ã®1ã€ã«éçºè ã®çç£æ§ãäžãããšããã®ããããŸããäŸãã°ãéçºè ãããŒã¿ããŒã¹ãæºåããããšæã£ãããã€ã³ãã©ããŒã ã®å¯Ÿå¿ãåŸ ã€ã®ã§ã¯ãªããéçºè èªèº«ã§ç°¡åã«ããŒã¿ããŒã¹ãçšæã§ãããããªä»çµã¿ãèšããŠãããªã©ãæããããŸãããŠãŒã¶ãŒ(éçºè )ãäœãæ±ããŠããã®ãããããªããã°ãéçºè ã®çç£æ§ãåäžãããã®ãé£ãããšæããŸãã ãã1ã€ã®çç±ãšããŠã¯ãã¢ãã¿ãªã³ã°ã®æ¹åãé害察å¿ãªã©ã®æã«ãã¢ããªåŽã®å®è£ ãç¥ã£ãŠãããšäºãã¹ã ãŒãºã«éã¶ãšããã®ããããŸããåºæ¬çã«ã¢ãã¿ãªã³ã°ã®èšå®ã¯ã€ã³ãã©ããŒã ãè¡ãªã£ãŠãããé©åãªã¢ã©ãŒããèšå®ãããšããã®ã¯æå€ãšé£ããã§ãããã®æã«ã€ã³ãã©ã ãã§ãªããã¢ããªåŽã®ããšãç¥ã£ãŠãããšæãæŒããå°ãªããããé©åãªéŸå€ãèšå®ããããšãå¯èœã«ãªããšèããŠããŸãããŸãããªã³ã³ãŒã«ãªã©ãåºæ¬çã«ã€ã³ãã©ããŒã ãæ ã£ãŠãããç·æ¥å¯Ÿå¿ãå¿ èŠã«ãªã£ãŠãã¢ããªåŽã®ããšã ããããããŸããã§ã¯å°ã£ãŠããŸããŸãã ãªã®ã§ä»å¹Žã¯Webéçºåãã€ããããã«ä»¥äžã®ããšã«åãçµãäºå®ã§ãã AtCoder è¶è² ç·è² æ°Žè² The Odin Project Foundations Full Stack JavaScript Full Stack Ruby on Rails Goèšèªã«ããwebã¢ããªã±ãŒã·ã§ã³éçº 2025幎ã®ç®æš 2025幎ã®ç®æšã¯ãå¹ ã ããã§ãã å¹ ã ããšããŠã¯ãããŒã¿ãµã€ãšã³ã¹ã«ææŠããŠã¿ãããšææŠããŠã¿ãããšæã£ãŠããŸããæšä»AIãLLMãªã©ã«æ³šç®ãéãŸã£ãŠããŸããããããã®æè¡ãäœãç¥ããªããšæµŠå³¶å€ªéã«ãªã£ãŠããŸããããªã®ã§ãåºç€çãªéšåã¯æŒãããŠãããããšæã£ãŠããŸãããŸããããŒã¿ãµã€ãšã³ã¹ã«ã¯å°ãé åãã«ã¯ãªããŸãããæ°åŠã»çµ±èšåŠã®åå°ããã£ãããšåºããŠãããããšèããŠããŸããããŒã¿ãµã€ãšã³ã¹ãå ã蟿ãã°æ°åŠãçµ±èšåŠã ãšæãã®ã§ããã£ãŠãããŠæã¯ãªãããªãšæããŸããããšã¯ã倧åŠã®æã«æ°åŠãå Žåœããçã«å匷ããŠããã®ã§ã瀟äŒäººã«ãªã£ããäœç³»çã«åŠã³çŽããããšæã£ãŠãã次第ã§ãã 2025幎ã«å®æœãããããšã¯ä»¥äžã®ãšããã§ãã æ°åŠæ€å® æº1çŽ 1çŽ çµ±èšæ€å® 2çŽ æº1çŽ Kaggle Contributor Expert 2026幎以éã®ç®æš 2026幎以éã®ç®æšã¯ãæ·±ã¿ã ããã§ãã äœã¬ã€ã€ãŒã®æè¡ã«èå³ãããã®ã§ãèªäœOSãèªäœDBãèªäœã³ã³ãã€ã©ãFPGAã䜿ã£ãèªäœCPUãªã©ããã£ãŠã¿ãããšæã£ãŠããŸãã ããšã¯OSSã³ããã¿ã«æŒ ç¶ãšããæ§ããããã®ã§ãäœãããã®OSSã«å¯ŸããŠç¶ç¶çã«ã³ã³ããªãã¥ãŒãããŠãããããšèããŠããŸãã ãŸãšã çŽè¿2幎éã®ç®æšãæžããŠã¿ãŸãããããã°ã§å®£èšããããšã«ãã£ãŠèªåã奮ãç«ããããããã°é§åéçºãã§ãã2幎åŸã«æ¯ãè¿ã£ãŠãå šéšéæã§ããŠãããšè¯ãã§ããã
ãŠã©ã³ããããªãŒã«å ¥ç€ŸããŠ1ã¶æçµã£ãã®ã§ãè²ã ãšæ¯ãè¿ã£ãŠã¿ãããšæããŸãã 転è·ãèãããã£ãã åè·ã§ã¯ããããããªããŒãã«åãçµãã§ããããšãããããã®ãŸãŸé·ãå± ç¶ããŠãä»ã®äŒç€Ÿã§ãã£ãŠããããäžå®ã§ããããŸããå€åãæ©ãæ代ãªã®ã§ãäŒç€Ÿã«äŸåããå人ã§ãã£ãŠãããã ãã®å®åã»ã¹ãã«ã身ã«ã€ããããšèãããã£ãšæè¡åã䌞ã°ãããããªäŒç€Ÿã«ç§»ããããšæãããã«ãªããŸããã äŒæ¥éžã³ã®è»ž äŒæ¥éžã³ã¯ä»¥äžã®è»žãããšã«èããŸããã èªç€Ÿã§ãµãŒãã¹ãéçºã»éçšããŠãã æè¡åã®é«ããšã³ãžãã¢ãåšç±ããŠãã å é²çãªæè¡ãæ±ã£ãŠãã äžèšã®æ¡ä»¶ãæºãããããªäŒç€Ÿã§ããã°ããã£ãšæè¡åã䌞ã°ãããšæã£ãããã§ãã 転è·ã«åããŠè¡ã£ãããš ã€ã³ãã©ãšã³ãžã㢠/ SREè·ãåžæããŠããã®ã§ãäž»ã«ä»¥äžã®ãããªããšãè¡ããŸããã é¢é£ããè³æ Œã®ååŸ (AWS SAPãCKA) å人ããã°ã§ã®çºä¿¡ ç°¡åãªWebã¢ããªã®äœæ åè·ã§PostgreSQLãKubernetesã觊ãæ©äŒããã£ããã®ã®ãAWSãTerraformã®çµéšãããã«æ¬çªç°å¢ã®éçšçµéšããªãèŠåŽããŸãããå®åã§ã®çµéšäžè¶³ãè£ãããã«ãAWSã®è³æ ŒãååŸããããå人ããã°ã§ä»ãŸã§åŠãã ããšã®ã¢ãŠãããããªã©ãè¡ãããã«ããŸããããŸããSREè·ãªã©ã ãšèªååã®ããŒã«ãªã©ãGoã§æžãããšããããšæã£ãã®ã§ãGoã§ç°¡åãªTo-doã¢ããªãäœæãããããŸããã ãŠã©ã³ããããªãŒãžã®å ¥ç€Ÿã決ããçµç·¯ ãŠã©ã³ããããªãŒãžã¯ã¹ã«ãŠãçµç±ã§å ¥ç€ŸããŸãããïŒWantedly Visitã«ç»é²ãããããŠã©ã³ããããªãŒããã¹ã«ãŠããæ¥ãŠã³ã£ããããŸããç¬ïŒã«ãžã¥ã¢ã«é¢è«ã§è©±ãèããŠãããšãPostgreSQLãKubernetesãªã©ä»ãŸã§å¹ã£ãçµéšã掻ããã€ã€ãæ°ããææŠãã§ãããã ã£ãã®ã§ãéžèãåããŠã¿ãããšæããŸããã éžèãåããåã ã£ããã1次é¢æ¥ã®åŸã ã£ããèŠããŠããŸããããEngineering HandbookãšCulture Bookãããã ããŸããããŸããéçºãäŒç€Ÿã®æåã«é¢ããããšããã®ãããªåœ¢ã«ãŸãšããããŠããã®ãçŽ æµã ãšæããŸããããããŠãå 容ã«é¢ããŠããšã³ãžãã¢ãªã³ã°ã«å¯ŸããŠçæ¯ã«åãåã姿å¢ããšã³ãžãã¢ã«ãšãŠãç解ã®ããäŒç€Ÿã ãšããããšãäŒãã£ãŠããŠããããªäŒç€Ÿã§åããŠã¿ãããšæãããã«ãªããŸãããïŒå人çã«ã¯Culture Bookã®ãå€ãããšã³ãžãã¢ã®å®çŸ©ãã奜ãã§ãã) ãŸãã2次éžèãšã㊠1 day ã€ã³ã¿ãŒã³ã«åå ãããŠããã ããŸãããããã1æ¥ã®ã€ã³ã¿ãŒã³ã·ããã§ã¯ãããã®ã®ãããŒã ã¡ã³ããŒãã©ããªäººãªã®ããæ¥ã ã©ããªæ¥åã«åãçµãã§ããã®ããªã©å®éã«åãã€ã¡ãŒãžãã€ãããã®åŸå®å¿ããŠå ¥ç€Ÿããããšãã§ããŸããã å ¥ç€ŸããŠããã®ææ³ æ¯æ¥åãããªãããšã ããã§ããããã®ååŠã¶ããšãå€ããŠãšãŠãå å®ããŠããŸããåšãã®ãšã³ãžãã¢ã®æ¹ã ã¯æè¡åãé«ããŠãå°æ¬ã§ããæ¹ã°ããã§ãã ãªã³ããŒãã£ã³ã°ã«é¢ããŠã¯ãç ä¿®ã瀟å ã®ããã¥ã¡ã³ããæŽåãããŠããŠãã¹ã ãŒãºã«ç°å¢ã«éŠŽæãããšãã§ããŸãããåãããªãããšããããšããã«èããé°å²æ°ããããã¡ãã£ãšããããšã§ãSlackãHuddleã§çžè«ã§ããŠå€§å€ãããããã§ããé±2åºç€Ÿãªã®ã§ã察é¢ã§ã®ã³ãã¥ãã±ãŒã·ã§ã³ãã§ããŠè¯ãæãã§ãã ã³ã£ããããããšã¯ãäŒè°å®€ã®ååããžã§ãžã§ã®å¥åŠãªåéºããã€ããããŠããããšãçœéå°ã®ã©ã³ãã®éžæè¢ã®å°ãªããããšã¯ãšã³ãžãã¢ã®1å²ãDvorak䜿ããšããããšã§ãããç¬ãä»åŸãŠã©ã³ããããªãŒã§åãçµã¿ããããš ä»åŸåãçµã¿ããããšã¯ä»¥äžã®éãã§ãã Kubernetes, PostgreSQLãªã©ã®ã¢ããã°ã¬ãŒã ã€ã³ãã©ã®æ§èœç£èŠã»éçšæ¹åã»éå®³å¯Ÿå¿ GoãçšããããŒã«ã®éçº åè·ã ãšå®éçšãçµéšããŠããªãã£ãã®ã§ãã·ã¹ãã åºç€ã®ã¢ããã°ã¬ãŒããçµéšããããšããæãããããŸããåæ§ã«ãæ§èœç£èŠãéçšæ¹åãé害察å¿ãªã©ã€ã³ãã©ãšã³ãžãã¢ãšããŠæ±ããããŠããåºæ¬çãªæ¥åãäžéãçµéšããŠã¿ããã§ãããŸãããŠã©ã³ããããªãŒã®ã€ã³ãã©ããŒã ã¯æ§ã ãªããŒã«ãGoã§å®è£ ããŠããã®ã§ããããã®å®è£ ãç解ãæ¹åããŠãããã ãã®åãã€ããŠããããã§ãã äžèšä»¥å€ã«ãçŽè¿äžè¶³ããŠããç¥è(NWãAWSãTerraformãGitãªã©)ãå€ãã®ã§ãæ¥ã 粟é²ããŠããæåã§ãïŒ
Kubernetesäžã§Alertmanagerãã¡ãããšéç¥ã§ããããã©ããªå 容ãéç¥ãããŠããã®ã確èªããŠã¿ãããšãããšãé£æºããããã®Slackãå¿ èŠã§ãã£ãããEmailãéä¿¡ããã«ãã¡ãŒã«ãµãŒããå¿ èŠã ã£ãããšãæå€ãšæ°è»œã«è©ŠããªããšããããšããããŸããã ãªã®ã§ãä»åã¯webhookã®æ©èœã䜿ã£ãŠNginxã«ãªã¯ãšã¹ããé£ã°ãããªã¯ãšã¹ãã®å 容ããã°ãã確èªããŠã¿ãããšæããŸãã webhookãšã¯? Alertmanagerã®receiverã«ã¯ä»¥äžãæå®ã§ããŸãã Email Opesgenie PagerDuty Pushover Slack AWS SNS VictorOps Webhook Wechat Telegram Webex Webhookãšã¯ç¹å®ã®ãšã³ããã€ã³ãã«å¯ŸããŠHTTP POSTãªã¯ãšã¹ãã§ã¢ã©ãŒãã®æ å ±ãéä¿¡ãããšãããã®ã§ãã å€éšãµãŒãã¹ã§ã¯ãªãã®ã§ãèªåèªèº«ã§ãšã³ããã€ã³ããçšæããèªåèªèº«ã§åŸç¶ã®åŠçãå®è£ ããå¿ èŠããããŸãã äŸãã°ã以äžã®ããã«èšå®ããŸãã receivers: - name: "nginx" webhook_configs: - url: 'http://nginx-svc.default:8080/' webhookã®é£æºå ãšããŠnginxã䜿ã ä»åã¯webhookã®é£æºå ãšããŠnginxã䜿çšããŸãã nginxã䜿ã£ãŠå®çŸãããããšã¯ä»¥äžã®ãšããã§ãã ãšã³ããã€ã³ããçšæãã ãªã¯ãšã¹ãå 容ã確èªãã nginx.confã®åæèšå®ãããŒã¹ã«ããŠããŸããããã®ãŸãŸã ãšãªã¯ãšã¹ãå 容ã確èªããããšãã§ããªãã®ã§ãèšå®ãè¿œå ããŸããã log_formatã§$request_bodyãæå®ãã/ã«ã¢ã¯ã»ã¹ããæã«$request_bodyããã°ãšããŠæšæºåºåã«åºãããã«èšå®ããŠããŸãã ãããã$request_bodyãæå¹åããã«ã¯proxy_passãªã©ã®åŸç¶åŠçãå¿ èŠã«ãªããŸãããªã®ã§ãproxy_passã§/trashãšãããšã³ããã€ã³ãã«ãªã¯ãšã¹ãã転éãã/trashã§ç¹ã«æå³ã®ãªãåŠç(1x1ãã¯ã»ã«ã®gifãè¿ã)ãããŠããŸãã The variableâs value is made available in locations processed by the proxy_pass, fastcgi_pass, uwsgi_pass, and scgi_pass directives when the request body was read to a memory buffer. http://nginx.org/en/docs/http/ngx_http_core_module.html#var_request_body user nginx; worker_processes auto; error_log /var/log/nginx/error.log notice; pid /var/run/nginx....
CronJobã¯ãæå®ããcronãã©ãŒãããã«åºã¥ããŠå®æçã«Jobãå®è¡ãããšããæ©èœã§ãã äž»ã«ããã¯ã¢ããã®ååŸãã¡ãŒã«éä¿¡ãªã©ãå®æçãªåŠçãå®è¡ããéã«äŸ¿å©ã§ãã äžæ¹ã§ãCronJobã倱æããéã«ã©ã®ããã«æ€ç¥ãã¹ããã«ã€ããŠã¯ãããŸãæ å ±ããããŸããã§ããã ãªã®ã§ãä»åã¯ãã¡ãã«ã€ããŠèããŠã¿ãããšæããŸãã kube-state-metricsã掻çšãã kube-state-metricsãšã¯Kubernetesã¯ã©ã¹ã¿å ã®ãªãœãŒã¹ã®ç¶æ ãã¡ããªã¯ã¹ãšããŠæäŸããŠããããšãããã®ã§ãã kube-state-metricsã§ã¯CronJobãJobã®ç¶æ ãã¡ããªã¯ã¹ãšããŠååŸããããšãã§ããŸãã ãã®æ¹åŒæ¡çšããŠããèšäºãå€ãã£ãã®ã§ããã¡ãã§æ€èšãé²ããŠã¿ãããšæããŸãã â»èšäº https://medium.com/@tristan_96324/prometheus-k8s-cronjob-alerts-94bee7b90511 https://www.giffgaff.io/tech/monitoring-kubernetes-jobs ã©ã®ã¡ããªã¯ã¹ã䜿ãç£èŠããã CronJobã¯cronãã©ãŒãããã§æå®ãããæå»ã«Jobãçæãããã®JobãPodãçæãããšãã3å±€ã®èŠªåæ§é ã«ãªã£ãŠããŸãã ãŸããCronJobãšJobã®é¢ä¿ã¯1察å€ã§ãJobãšPodã®é¢ä¿ã¯1察å€ã«ãªããŸãã Jobãå®äºããã®ã¯completionsåã®Podãæ£åžžçµäºããå Žåããããã¯backoffLimitåã®Podãç°åžžçµäºããå Žåã«éããŸãã completions completionsåã®PodãæåãããšãJobãå®äºãããšã¿ãªããã ããã©ã«ãã¯1 backoffLimit 倱æãããšå€æãããŸã§ã®åè©Šè¡åæ°ã§ããã®åæ°ãè¶ ãããšJobã¯å€±æãšã¿ãªããã ããã©ã«ãã¯6 ãããŠãã¢ã©ãŒããäžãããã®ã¯Jobã倱æããæã§ããèšãæãããšãbackoffLimitåã®Podãç°åžžçµäºãããšãã«ã¢ã©ãŒããäžãããšããããšã«ãªããŸãã äœåã®Podãç°åžžçµäºããã®ãç£èŠããããšãå¯èœã ãšæããŸãããããã§ã¯Jobã®ã¹ããŒã¿ã¹ãç£èŠããã®ãé©åããšæããŸãã ã¡ããªã¯ã¹ 察å¿ããé ç® èª¬æ kube_job_status_succeeded .status.succeeded Jobã®ç®¡çäžã§æ£åžžçµäºããPodã®æ° kube_job_status_failed .status.failed Jobã®ç®¡çäžã§ç°åžžçµäºããPodã®æ° kube_job_complete .status.conditions.type Jobãæåãããã©ãã kube_job_failed .status.conditions.type Jobã倱æãããã©ãã åè: https://github.com/kubernetes/kube-state-metrics/blob/main/docs/job-metrics.md Jobã«é¢ããã¡ããªã¯ã¹ã¯è€æ°ãããŸããããã®äžã§ãç¹ã«kube_job_failedã䜿ã£ãŠã¢ã©ãŒããäžããã®ãè¯ãããã§ãã 以äžã®èšå®ã ãšãJobã倱æãããšãã«ã¢ã©ãŒããäžãããŸãã kube_job_failed > 0 ã¢ã©ãŒããçºç«ãç¶ããŠããŸãåé¡ å€±æããJobã¯åé€ãããã«æ®ãç¶ããã®ã§ãã¢ã©ãŒããçºç«ãç¶ããŠããŸããŸãã ãªã®ã§ãJobã®ttlSecondsAfterFinishedãèšå®ããæ°ååŸã«Jobãåé€ãããããã«ããŸãã ttlSecondsAfterFinished æå®ç§åŸã«Jobãåé€ã§ãã CronJobã®failedJobsHistoryLimitãèšå®ãããšããæ¹æ³ãæãã€ããŸãããã0ã«ããŠããŸããšããããã¢ã©ãŒããäžãããªããšæãã®ã§ããã¡ãã¯1ã®ãŸãŸã«ããŠãããŸããã failedJobsHistoryLimit 倱æããJobãæå®åæ°åæ®ããŠããã ããã©ã«ãã¯1 ãŸãšã ä»åã¯kube-state-metricsã掻çšããŠãCronJobã倱æããæã®ã¢ã©ãŒããèšå®ããŸãããä»ã«ãã£ãšããæ¹æ³ããåç¥ã®æ¹ã¯æããŠããã ãããšãããããã§ãã
AWSã§EC2ã€ã³ã¹ã¿ã³ã¹ã建ãŠããšãããã©ã«ãã§"ec2-user"ãšããååã®ãŠãŒã¶ãäœæãããŸããå ¬ééµèªèšŒãªã®ã§é«ãã»ãã¥ãªãã£ã¬ãã«ãæ ä¿ãããŠããããŠãŒã¶åãç¥ãããŠããŠãç¹ã«åé¡ã¯ãªããšæããŸããããããããå®å šã«EC2ã䜿çšããããã«ããã©ã«ãã®ec2-userãåé€ããæ°ãããŠãŒã¶ã§ã¢ã¯ã»ã¹ã§ããããã«èšå®ããããšæããŸãããããã®èšå®æ¹æ³ãå¿ããŠããŸãã®ã§ãåå¿é²ãšããŠæ®ããŠãããããšæããŸãã ã¡ãªã¿ã«å ¬åŒã§ããããªé¢šã«æžãããŠããŸãã ããã©ã«ãã®ãŠãŒã¶ãŒã䜿çšããã®ãå€ãã®ã¢ããªã±ãŒã·ã§ã³ã«é©ããŠããŸãããã ããå人ãèªåã®ãã¡ã€ã«ãšã¯ãŒã¯ã¹ããŒã¹ãæã€ããšãã§ããããã«ããŠãŒã¶ãŒãè¿œå ããããšãéžæã§ããŸããããã«ãæ°ãããŠãŒã¶ãŒçšã«ãŠãŒã¶ãŒãäœæããããšã¯ãããã©ã«ããŠãŒã¶ãŒãžã®ã¢ã¯ã»ã¹æš©ãè€æ°ã®ãŠãŒã¶ãŒã« (çµéšã®ãªããŠãŒã¶ãŒãå«ããŠ) äžããããããã¯ããã«å®å šã§ããããã¯ããã©ã«ãã®ãŠãŒã¶ãŒãäžé©åã«äœ¿çšãããå Žåãã·ã¹ãã ã«ããŸããŸãªæ害ãäžããå¯èœæ§ãããããã§ãã ec2-userãåé€ãããŸã§ã®æµã useraddã³ãã³ãã䜿ãæ°ãããŠãŒã¶ãè¿œå ããŸããè¿œå ãããŠãŒã¶ã«sudoæš©éãä»äžããŸãããŸããè¿œå ãããŠãŒã¶ã®ãã¹ã¯ãŒããç»é²ããŸãã ssh -i ~/.ssh/ç§å¯éµã®åå ec2-user@EC2ã€ã³ã¹ã¿ã³ã¹ã®ãããªãã¯IP sudo su - useradd -m ãŠãŒã¶å usermod -aG wheel ãŠãŒã¶å passwd ãŠãŒã¶å è¿œå ãããŠãŒã¶ã®ããŒã ãã£ã¬ã¯ããªã«authorized_keys(å ¬ééµã®æ å ±)ãã³ããŒããé©åãªæš©éãä»äžããŸãã mkdir /home/ãŠãŒã¶å/.ssh cp /home/ec2-user/.ssh/authrized_keys /home/ãŠãŒã¶å/.ssh chown -R ãŠãŒã¶å:ãŠãŒã¶å /home/ãŠãŒã¶å/.ssh chmod 700 /home/ãŠãŒã¶å/.ssh chmod 600 /home/ãŠãŒã¶å/.ssh/authorized_keys ãã®åŸæ°ããè¿œå ãããŠãŒã¶ã§æ¥ç¶ãçŽããæ¥ç¶ã§ããããšã確èªããããec2-userãåé€ããŸãã exit ssh -i ~/.ssh/ç§å¯éµã®åå ãŠãŒã¶å@EC2ã€ã³ã¹ã¿ã³ã¹ã®ãããªãã¯IP sudo userdel -r ec2-user