ã¯ããã« çããããã«ã¡ã¯ïŒ æ°åäžå¹Žç®ã®å®®æã§ãïŒ çŸåšã®æ¥åã§ã¯ãäž»ã«OpenID Connect(OIDC)ã䜿çšããåºå¹¹ã·ã¹ãã ãéçšããŠããŸãã ãã®ããä»åã¯ãæ¥åãéããŠåŠãã OIDCã®åºç€ã«ã€ããŠçºä¿¡ããŠãããããšæããŸãã ãã®èšäºã®åæ ä»åã®ãã³ãºãªã³ã¯Windowsã®PowerShellãåæã«ããŠããŸãã ãããããMacãLinuxã§ãåäœãããšèããŠãããŸãããä¿èšŒã¯ã§ããŸããã 以äžã®èšäºçãé²èЧããOIDCã®æŠèŠãããã£ãŠããåæã§èª¬æããŸãã https://qiita.com/TakahikoKawasaki/items/498ca08bbfcc341691fe ãã³ãºãªã³æºå ä»å䜿çšãããœãŒã¹ã³ãŒãã®ã¯ããŒã³ ãŸããæºåãšããŠä»å䜿çšããOIDCã®ãµãŒã㌠django-oidc-provider ãGit cloneããexampleãã£ã¬ã¯ããªã«ç§»åããŸãã $ git clone https://github.com/juanifioren/django-oidc-provider.git $ cd django-oidc-provider/example ãã®exampleãã£ã¬ã¯ããªã«ã¯ãå®éã«django-oidc-providerãå°å
¥ããéã®OpenID Provider(OP)ã®å®è£
äŸããããŸãã Dockerã³ã³ããã®äœæ exampleãå°ãå€ããã®ãŸãŸã§ã¯åããªãã£ãç¹ãšä»åã®ãã³ãºãªã³ã®éœåäžãDockerFileã®å
容ã以äžã«å€æŽããŠãã ããã â»ãããŸã§ãã¹ãã§ãããããã¹ãŒããŒãŠãŒã¶ãŒæ
å ±ããã¡ã€ã«ã«çŽæžãããŠããŸãã FROM python:3.10 WORKDIR /app COPY . /app RUN pip install --upgrade pip RUN pip install --no-cache-dir -r requirements.txt RUN python manage.py migrate RUN python manage.py creatersakey # ç°å¢å€æ°ã§ããã©ã«ãã®ã¹ãŒããŒãŠãŒã¶ãŒæ
å ±ãèšå® ENV DJANGO_SUPERUSER_USERNAME=admin ENV DJANGO_SUPERUSER_EMAIL=admin@example.com ENV DJANGO_SUPERUSER_PASSWORD=admin # ã¹ãŒããŒãŠãŒã¶ãŒãäœæïŒæ¢åã®å Žåã¯ã¹ãããïŒ RUN python manage.py createsuperuser --noinput || echo "Superuser already exists" EXPOSE 8000 CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"] 以äžã®ã³ãã³ãã§å®éã«èµ·åããŠã¿ãŸãããïŒ $ docker build -t django-oidc-provider . $ docker run -d -p 8000:8000 django-oidc-provider http://localhost:8000 ã§ä»¥äžã®ç»åã確èªåºæ¥ããæåã§ãã ãã¹ãClientã®è¿œå Create your clients ãã¯ãªãã¯ããŸãããã ããã§ããclientã¯OPã䜿çšããã¯ã©ã€ã¢ã³ãã®ããšãæããRelying Party(RP)ãšãåŒã°ããŸãã ã¯ãªãã¯åŸããã°ã€ã³ç»é¢ã衚瀺ããããããIDããã¹ã¯ãŒãã©ã¡ãã admin ãå
¥åããŸãããã ãã°ã€ã³åŸã¯ å·Šãµã€ãããŒã®Clientsã®é£ ã«ãã +Add ãã¯ãªãã¯ããŸãã ãã®åŸã以äžãå
¥åããŸããïŒãã以å€ã¯ãã®ãŸãŸã§OKã§ãïŒ Name: ãã¹ã Response types code id_token id_token token Redirect URIs: http://example.com Scopes: openid profile email address phone å
¥åäŸ ãã®åŸãSaveãã¯ãªãã¯ããçæããclientã確èªãããšä»¥äžã®ããã«Client IDãšClient Secretãèªåçæãããããšã確èªã§ããŸãïŒä»¥äžã¯ãããŸã§äŸã§ãïŒã ãããã®æ
å ±ã¯ããªã¯ãšã¹ããéä¿¡ããclientãæ£èŠã®clientã§ããããšãOPã確èªããããã«äœ¿çšããŸãã ãã®åŸã®ãã³ãºãªã³ã§äœ¿çšããããããããã®æ
å ±ãã¡ã¢ããŠãããŸãããã ãã¹ããŠãŒã¶ã®äœæ å·Šãµã€ãããŒã®Usersã®é£ ã«ãã +Add ãã¯ãªãã¯ããŸãã ãããšã以äžã®ç»é¢ã«é·ç§»ããããã以äžã®æ
å ±ãå
¥åãSaveãã¯ãªãã¯ããŸã Username: test_user01 password: test_user01 ãããšã以äžã®ç»é¢ãžé·ç§»ãããã First name: user01 Last name: test Email address: example@google.com ãšå
¥åãSaveãã¯ãªãã¯ããŸãã ããã§ãäžæºåã¯å®äºããŸããã ãã³ãºãªã³ å®éã«èšå®ããOPã«å¯ŸããŠãã°ã€ã³ããŠã¿ãŸãããã ä»åã¯ãOIDCã®ã·ãŒã±ã³ã¹ã®äžã§æãäžè¬çãªAuthorization Code Flowã§è©ŠããŠã¿ãŸãã ãã°ã€ã³ïŒAuthorization RequestïŒ åãã«ãã©ãŠã¶ã® ã·ãŒã¯ã¬ãããã©ãŠã¶ã¢ãŒã ãç«ã¡äžãã以äžã®URLã匵ãä»ããŠãã ããã http://localhost:8000/authorize/?client_id=ãå
ã»ã©çæãããClient IDã&redirect_uri=http://example.com&response_type=code&state=123456&scope=openid+profile+email ãã®URLã¯ãOPã«å¯ŸããŠèªå¯ã³ãŒãã®çºè¡ãèŠæ±ããAuthorization Requestã§ãã ããã§ã¯ã /authorize ãšã³ããã€ã³ããæå®ããŠããŸããããšã³ããã€ã³ããã©ã®URLã«ååšãããã®æ
å ±ã¯ã .well-known/openid-configuration ãåç
§ããã°ç¥ãããšãã§ããŸãã å®éã«ãã©ãŠã¶ã§ã¢ã¯ã»ã¹ããŠã¿ããšãä»å䜿çšãã authorization_endpoint çã®URLãèšèŒãããŠããã®ã確èªã§ããŸããããã¯OIDCã®DiscoveryïŒçºèŠïŒæ©èœãšåŒã°ããŸãã 以äžã«äž»èŠãªãã©ã¡ãŒã¿ã®è©³çްãäžéšæç²ããŠèª¬æããŸãã client_id : client(RP)ã®èå¥å redirect_uri : èªèšŒçµäºåŸã«ãªãã€ã¬ã¯ããããURIã response_type : èªèšŒåŸã«ã©ã®æ
å ±ãè¿ããïŒAuthorization Code Flowã ãš code ãæå®ïŒ scope : ClientãOPã«èŠæ±ããããŠãŒã¶ãŒæ
å ±ã®ç¯å²ïŒãããã£ãŒã«ãã¡ãŒã«ã¢ãã¬ã¹ãªã©ïŒãæå®ããŸããããã§èŠæ±ããã¹ã³ãŒãã«å¯Ÿå¿ããæ
å ±ããåŸã®UserInfoã¬ã¹ãã³ã¹ã§ååŸã§ããŸãã 匵ãä»ããåŸEnterãæŒããšããã°ã€ã³ç»é¢ã衚瀺ããããããå
ã»ã©äœæãããŠãŒã¶ã§ãã°ã€ã³ããŸãã 以äžã®ç»é¢ãžç§»åããŸãã ãã®ç»é¢ã¯ãClientã«å¯ŸããŠä»¥äžã®æ
å ±ãæž¡ãããšããŠãŒã¶ã«å¯ŸããŠèš±å¯ãæ±ããŠããããšãæå³ããŸãã ããã§ã¯Acceptãã¯ãªãã¯ããŸãã ãã®åŸãexample.comã«ãªãã€ã¬ã¯ãããŸãã ãªãã€ã¬ã¯ãããéã®URLãã©ã¡ãŒã¿ã«ååšããcodeã¯èªå¯ã³ãŒãã®ããšã衚ããããŒã¯ã³ã®çºè¡ã«äœ¿çšããŸãã ãã®èªå¯ã³ãŒãã䜿çšããŠãå®éã«ããŒã¯ã³ãçºè¡ããŠã¿ãŸãããã 以äžã®ã³ãã³ããPowerShellã«åŒµãä»ããŸãããã ãã®ã³ãã³ãã¯Token Requestãéä¿¡ãããã®ã§ãããOPã«å¯ŸããŠããŒã¯ã³ã®çºè¡ãç³è«ããŸãã $ curl -s -X POST -H "Cache-Control: no-cache" -H "Content-Type: application/x-www-form-urlencoded" "http://localhost:8000/token/" -d "client_id=ãå
ã»ã©çæãããClient IDã" -d "client_secret=ãå
ã»ã©çæãããClient Secretã" -d "code=ãçºè¡ãããèªå¯ã³ãŒãã" -d "state=123456" -d "redirect_uri=http://example.com" -d "grant_type=authorization_code" ãããšã以äžã®äŸã®ãããªã¬ã¹ãã³ã¹ãè¿ã£ãŠããŸãã { "access_token": "df6e0afa50e14a879f151feda46295b7", "refresh_token": "d6649365913f4c56abefe3f2b8b8732d", "token_type": "bearer", "expires_in": 3600, "id_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6Ijk1YjBmY2I5NDI4NTI1YjM0MGRlZWM4ZjJlNTFhYmNlIn0.eyJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwMDAiLCJzdWIiOiIxIiwiYXVkIjoiOTI0NDIyIiwiZXhwIjoxNzU0OTgxMTkwLCJpYXQiOjE3NTQ5ODA1OTAsImF1dGhfdGltZSI6MTc1NDk3NjE0MiwiYXRfaGFzaCI6ImlkRHRjVjdvYzl4Ny1yTFNoSTg5bHcifQ.fzlqjsHJycYrSx2EsGjsGsgLZC3z4mRVpKPATG0D_mU6bDD7ZLv4G3Sk5kXmibBekaLR5zBIUr84ZmQ77qo3CdARxLOn7rB4CLE3-9d-JEoQpwI9uHac3iQXdx6HVN2zBQJjm6CPkx8t0Z9-d1ErRzJiAeiJChPq4JbxsmtFJzgFwssdKeUdMwgsjR64wIY8uP9KV9NFG3X0vKfnAVSPdsp9QpfV68xkqwmhnotKHShSbDYsNPOAIGvryCxyb74h87BEVxk8OHmg79SsyXkf2eBpaA9ykg43EK-tMh2MZg3dfLqoFb0ZbUYgojJACMBsXAo9_WdF5MeEUczMsSs8HQ" } äž»èŠãªéšåãæç²ãããšã Access Token : ãŠãŒã¶æ
å ±ãååŸããããã«äœ¿çšãããããŒã¯ã³ã§ãã Refresh Token : ID TokenãšAccess Tokenãåçæããéã«äœ¿çšãããããŒã¯ã³ã§ãã IDããŒã¯ã³ ã¯: OPãæ£èŠãªãã®ã§ããããšãšããŠãŒã¶ãŒãèªèšŒãããŠããããšã蚌æããããŒã¯ã³ã§ãã IDããŒã¯ã³æ€èšŒ ãã®åŸãID Tokenã®äžèº«ãæ€èšŒããOPãæ£èŠãªãã®ã§ããã確èªããŸããä»åã¯æåã§IDããŒã¯ã³ãæ€èšŒããŸãããã 以äžã®Webãµã€ã(jwt.io)ã«ID Tokenã匵ãä»ããŠã¿ãŸãããã https://www.jwt.io/ja 匵ãä»ããåŸã以äžã®ç»é¢ãå³åŽè¡šç€ºãããã¯ãã§ãã äž»èŠãªéšåã以äžã«æç²ããŸãã ããããŒéšå alg : 眲åã¢ã«ãŽãªãºã kid : 眲åã®æ€èšŒã«äœ¿çšããéµã®id ãã€ããŒãéšå iss : ID Tokenã®çºè¡å
ã§URLã衚瀺ãããŸãã sub : ãŠãŒã¶ã®èå¥åïŒIDïŒã瀺ããŸãã aud : ID Tokenã䜿çšããClientã瀺ããŸãã exp : ID Tokenã®æå¹æéïŒUnix timeïŒ at_hash : ã¢ã¯ã»ã¹ããŒã¯ã³ãããã·ã¥åãããã®ãã¢ã¯ã»ã¹ããŒã¯ã³ãæ£ãããã®ãã©ãããæ€èšŒããããã«äœ¿çš ãããã®å€ãå®éã®ãã®ãšèŠæ¯ã¹ããšæ£ãããã®ã§ããããšã確èªã§ããã¯ãã§ãã ãŸããIDããŒã¯ã³ã¯ . ã§åºåããã3ã€ã®éšåïŒããããŒã»ãã€ããŒãã»çœ²åïŒããæ§æãããŠãããæåŸã®éšåã眲åã§ãã http://localhost:8000/jwks ã«ã¢ã¯ã»ã¹ãããšçœ²åã®æ€èšŒã«äœ¿çšããå
¬ééµã®æ
å ±ããããŸãã IDããŒã¯ã³ã®çœ²åã¯ãããããŒãšãã€ããŒãã . ã§é£çµãããã®ããèšç®ããããã·ã¥å€ããOPãæã€ç§å¯éµã§æå·åãããã®ã§ããRPåŽã§ã¯ãOPã®å
¬ééµã䜿ã£ãŠãã®çœ²åã æ€èšŒ ããŸããããã«ãããããŒã¯ã³ãæ¹ãããããŠãããã確ãã«ãã®OPããçºè¡ããããã®ã§ããããšã確èªã§ããŸãã詳ããæ€èšŒããã»ã¹ã¯è€éãªããçç¥ããŸãã â»äœè«ã§ãããjwt.ioã®ä»æ§äžID Tokenãã眲åã®æ€èšŒã«å¿
èŠãªå
¬ééµããå·Šäžã«èªåã§å²ãåºããŠãããŸããå®éã«ã http://localhost:8000/jwks ã®æ
å ±ãšæ¯èŒããŠã¿ããšäžèŽããã¯ãã§ãã UserInfo Request IDããŒã¯ã³ã®æ€èšŒãçµäºããåŸãå®éã«ãŠãŒã¶æ
å ±ãååŸããŸãã 以äžã®ã³ãã³ããPowerShellã§å©ããŠãã ããã $ curl -s -X GET -H "Authorization: Bearer ãçºè¡ãããã¢ã¯ã»ã¹ããŒã¯ã³ã" "http://localhost:8000/userinfo/" ãããšãAuthorization Requestã®Scopeã§æå®ãããprofile, emailã®æ
å ±ãååŸã§ããŸãã { "sub": "2", "given_name": "user01", "family_name": "test", "nickname": "test_user01", "email": "example@google.com" } æåŸã« OIDCã¯ã ãããããã®ãããªæµããšãªã£ãŠããŸãã ä»åã¯äžé£ã®æµããæäœæ¥ã§è¡ããŸããããå®é䜿çšããéã¯ãOIDCã®Clientçšã©ã€ãã©ãªã䜿çšãããããOPã®ã¢ãã¬ã¹ïŒissãã©ã¡ãŒã¿ïŒãClient ID, Client Secretããæå®ããŠããŸãã°ãããšã¯ã»ãŒãã¹ãŠèªåã§ãã£ãŠãããŸãã
æŠèŠ ããã«ã¡ã¯ããããã£ã®å±±ç°ã§ãã 2025/07/17ã«ãECSçµã¿èŸŒã¿Blue/Greenãããã€ããªãªãŒã¹ãããŸããã https://aws.amazon.com/jp/blogs/news/accelerate-safe-software-releases-with-new-built-in-blue-green-deployments-in-amazon-ecs/ åŸæ¥ãECSã®çµã¿èŸŒã¿ãããã€æ©èœã¯ããŒãªã³ã°ã¢ããããŒãã«ãã察å¿ããŠããããBlue/Greenãããã€ãè¡ãããã«ã¯CodeDeployã䜿çšããå¿
èŠããããŸããã ä»åã®å€æŽã«ããECSã ãã§Blue/Greenãããã€ãå¯èœã«ãªã£ãã»ããCodeDeployã«ããå¶çŽããªããªããŸããã ãããã®å€æŽç¹ã«ã€ããŠè§£èª¬ããŠãããŸãã ALB + ECSæ§æã®å Žåã«åŸæ¥ãšæ¯ã¹ãŠã©ããªããã解説ããŸã CodeDeploy Blue/Greenãããã€ãšæ¯ã¹ãŠå€ããããš åã«CodeDepoloyãèŠããªããªãããšããç¹ä»¥å€ã«ã仿§ã®éãã¯ããã€ããããŸãã åãæ¿ãæ¹æ³ (äžèšã¯ãã¹ããªã¹ããŒ(ã«ãŒã«)æå¹æã®ãã¿ãŒã³ã§ãããç¡å¹æã¯ãã¹ããã©ãã£ãã¯ã®ã·ããã¯ã¹ããããããŸã) åºæ¬çãªåäœåçã¯CodeDeployã®ãã®ãšåãã§ããã以äžã®ç¹ã§ç°ãªããŸãã æ¬çªã»ãã¹ããã©ãã£ãã¯ã®ç®¡çããªã¹ããŒåäœãããªã¹ããŒã«ãŒã«åäœã«å€ãã£ã CodeDeploy Blue/Greenã§ãã¹ãçšã¢ã¯ã»ã¹ãè¡ãã«ã¯ããŒããå€ãããããªãã£ã ã«ãŒã«ã«å€ãã£ãããšã«ãããããããªã©ã®æ¡ä»¶ã§ãåãæ¿ããããããã«ãªã£ã åžžã«Blue/Greenäž¡æ¹ã®ã¿ãŒã²ããã°ã«ãŒããžã®åç
§ãä¿æããããã«ãªã£ã CodeDeploy Blue/Greenã§ã¯äœ¿ããªãæ¹ã®ã¿ãŒã²ããã°ã«ãŒããžã®åç
§ã¯å€ããŠãã ECS Blue/Greenã§ã¯éã¿ä»ãã§äž¡æ¹ä¿æããããã«ãªã£ã ã©ã€ããµã€ã¯ã«ãã㯠CodeDeployåæ§ã«ã決ããããã¿ã€ãã³ã°ã«ã©ã€ããµã€ã¯ã«ããã¯ãèšå®ãããŠãããLambdaãåŒã³åºããŠåŠçãå®è¡ãå¿
èŠã«å¿ããŠãããã€ã忢ãããããšãã§ããŸãã ããã¯ã®çš®é¡ ååã¯ç°ãªã£ãŠããŸãããåç+αã®ããã¯ãçšæãããŠããŸãã CodeDeploy Blue/Green BeforeInstall / AfterInstall AfterAllowTestTraffic BeforeAllowTraffic / AfterAllowTraffic ECS Blue/Green PRE_SCALE_UP / POST_SCALE_UP TEST_TRAFFIC_SHIFT / POST_TEST_TRAFFIC_SHIFT PRODUCTION_TRAFFIC_SHIFT / POST_PRODUCTION_TRAFFIC_SHIFT REONCILE_SERVICE ããã¯æ»ãå€ã®çš®é¡ ããã¯ã§åŒã³åºãããLambdaãè¿ãããšã®ã§ããå€ãšããŠã IN_PROGRESS ã远å ã«ãªã£ãŠããŸãã SUCCEEDED æå(ãããã€ç¶è¡) FAILED 倱æ(ãããã€ã忢ããŠããŒã«ããã¯) IN_PROGRESS å®è¡äž IN_PROGRESSãè¿ããå Žåã30ç§åŸã«ãŸãLambdaãåŒã³åºãããŸãã å¥éãã³ã°ã©ã³ã®ç¢ºèª(ex. E2Eãã¹ã)ãåŒã³åºãããã®çµäºãåŸ
ã€ããšãã£ãå Žåã«äœ¿çšã§ããŸãã CodeDeployã®å¶çŽããã®éæŸ CodeDeployã䜿çšããå ŽåãECSã®DeploymentControllerãšã㊠CODE_DEPLOY ãæå®ããå¿
èŠããããŸãããã®ã¢ãŒãã§ã¯ECS serviceã®ä¿ã€æ©èœãå¶éããããšããåé¡ããããŸããã ex) networkConfigurationãªã©ãäžéšã®ECS serviceã®èšå®ãçŽæ¥æŽæ°ã§ããªããªããCodeDeployã§ã®ãããã€ã§æŽæ°ããå¿
èŠããã ãã®ããã§ãããã€åŽã§ãµãŒãã¹å®çŸ©ã管çããå¿
èŠããã£ã ECSãæã€ãµãŒããããã¬ãŒã«ãŒã®æ©èœã¯äœ¿ãããCodeDeployåŽã®æ©èœã§ä»£æ¿ããå¿
èŠããã ECS Service Connectã䜿ããªã ECS Blue/Greenã§ã¯ ECS ã®æå®ã«ãªãããããã®å¶çŽããªããªããŸãã 以äžãåºæ¬çã«ã¯ECS Blue/Greenã®æ¹ã䜿ãåæãè¯ããªã£ãŠããŸãã AWSå
¬åŒãšããŠãECS Blue/Greenãæšå¥šããŠãããAWSã³ã³ãœãŒã«äžã§ã¯æ¢ã«ECSãµãŒãã¹ã®æ°èŠæ§ç¯æã«CodeDeployãéžæã§ããªããªã£ãŠãããããä»åŸã®æ§ç¯ã«ã¯ECS Blue/Greenã䜿ããããšããã§ãã (åŸè¿°ã®æ³šæç¹ãèŠç¢ºèª) Terraformã§ã®èšå® ECS Blue/Green察å¿ã¯ AWS Provider v6.4.0ããå
¥ã£ãŠããŸãããäžå
·åãããããv6.6.0以éã䜿ã£ãŠãã ãã https://github.com/hashicorp/terraform-provider-aws/issues/43552 èæ
®äºé
ECS Blue/Greenã§ã¯ãªã¹ããŒã«ãŒã«åäœã§ãã©ãã£ãã¯ã管çããããã«ãªã£ãã®ã ããããã«ããTerraformã§ã¯èšå®ã§ããªããã¿ãŒã³ãçºçããŠããŸã£ãŠããåé¡ããããŸãã ãªã¹ããŒã«ã«ãŒã«ã1ã€ãããªãå Žåã以äžã®ããã«èšå®ããŠããããšæããŸãã resource "aws_lb_listener" "listener" { ... default_action { type = "forward" target_group { ... } } } ããã§ default_action ã§ããã©ã«ããªã¹ããŒã«ãŒã«ã®ã¢ã¯ã·ã§ã³ãå®çŸ©ããŸããããã®ã«ãŒã«ã®ARN㯠Terraformã§ååŸããããšãã§ããŸãã ãECS Blue/Greenã®èšå®æã«ARNãå¿
èŠã«ãªãããããã®èšå®ã¯è¡ããªãããšã«ãªããŸãã ãªã®ã§ãdefault_actionã¯ãããŒã®èšå®ãšããŠå®è³ªäœ¿çšãããå¥éãªã¹ããŒã«ãŒã«ãå®çŸ©ããå¿
èŠããããŸãã ãªãã以äžã®ããã«dataã§ååŸã§ããªãããæ€èšŒããŸããããpriorityã®å€ã«defaultãåãä»ãã倱æããŸããã ata "aws_lb_listener_rule" "default" { listener_arn = aws_lb_listener.listener.arn priority = "default" } èšå® ALB resource "aws_lb_listener" "listener" { ... # åºæ¬çã«ãã®ã«ãŒã«ã«ã¯æ¥ãªãæ³å® default_action { type = "fixed-response" fixed_response { content_type = "text/plain" message_body = "Not Found" status_code = "404" } } } # ARNãååŸã§ããããã«ãå¥éãªã¹ããŒã«ãŒã«ãçšæ # ãã¹ãçšã«ãŒã«ãçšæããå Žåã¯ãå¥éãã1ã€äœã resource "aws_lb_listener_rule" "prd" { listener_arn = aws_lb_listener.listener.arn priority = 100 action { type = "forward" # CodeDeployãšç°ãªãã2ã€ã®TGãäž¡æ¹ç»é²ããŠweightã§å¶åŸ¡ãã forward { target_group { arn = aws_lb_target_group.blue.arn weight = 100 } target_group { arn = aws_lb_target_group.green.arn weight = 0 } } } # default_action代ããã«äœ¿ãå Žåã¯ãå¿
ããããããæ¡ä»¶ã«ããŠãã # ä»ã®ã«ãŒã«ãããå Žåã¯priorityãšããããŠèŠèª¿æŽ condition { path_pattern { values = ["*"] } } } äžèšèæ
®äºé
ãèžãŸãã default_action ããããŒã«ããŠå¥éãªã¹ããŒã«ãŒã«ãçšæ CodeDeployãšç°ãªããã¿ãŒã²ããã°ã«ãŒãã2ã€ãšãç»é²ããŠããå¿
èŠãã ã¿ãŒã²ããã°ã«ãŒãèªäœã®èšå®ã¯åŸæ¥ãšå€ãããªãã®ã§å²æ ECS resource "aws_ecs_service" "service" { ... deployment_controller { type = "ECS" } deployment_configuration { strategy = "BLUE_GREEN" bake_time_in_minutes = 1 # åãæ¿ãåŸã«Greenç°å¢ãæ®ããŠããæé(å)ãèŠèª¿æŽ } deployment_circuit_breaker { enable = true rollback = true } network_configuration { # ããã¯å€ããã } load_balancer { target_group_arn = aws_lb_target_group.blue.arn container_name = "app" container_port = 8080 advanced_configuration { alternate_target_group_arn = aws_lb_target_group.green.arn production_listener_rule = aws_lb_listener_rule.prd.arn # ãã¹ãçšãªã¹ããŒã«ãŒã«ãçšæããå Žå # test_listener_rule = "<ãã¹ãçšãªã¹ããŒã«ãŒã«ARN>" role_arn = "<Blue/Greenåãæ¿ãçšã®ARN>" } } lifecycle { ignore_changes = [ task_definition, desired_count ] } depends_on = [ "<ALB>" ] } åŸæ¥ãšã®äž»ãªéã deployment_controllerã type = ECS ã«èšå®ããããã§ãdeployment_configurationã§ strategy = BLUE_GREEN ãèšå®ããããšã§ECS Blue/Greenã®èšå®ã«ãªã load_balancerã®èšå®ã« advanced_configuration ãå¢ãã alternate_target_group_arn: GreenåŽã®ã¿ãŒã²ããã°ã«ãŒãARN production_listener_rule: æ¬çªçšãªã¹ããŒã«ãŒã«ARN test_listner_rule: ãã¹ããªã¹ããŒã«ãŒã«ARN role_arn: Blue/Greenåãæ¿ãã«äœ¿ãããRoleã®ARN(å¥éäœæãå¿
èŠ) å¿
èŠãªããªã·ãŒ Assume Role Policy { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAccessToECSForInfrastructureManagement", "Effect": "Allow", "Principal": { "Service": "ecs.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } Policy AmazonECSInfrastructureRolePolicyForLoadBalancers äžèº« { "Version": "2012-10-17", "Statement": [ { "Sid": "ELBReadOperations", "Effect": "Allow", "Action": [ "elasticloadbalancing:DescribeListeners", "elasticloadbalancing:DescribeRules", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:DescribeTargetHealth" ], "Resource": "*" }, { "Sid": "TargetGroupOperations", "Effect": "Allow", "Action": [ "elasticloadbalancing:RegisterTargets", "elasticloadbalancing:DeregisterTargets" ], "Resource": "arn:aws:elasticloadbalancing:*:*:targetgroup/*/*" }, { "Sid": "ALBModifyListeners", "Effect": "Allow", "Action": "elasticloadbalancing:ModifyListener", "Resource": [ "arn:aws:elasticloadbalancing:*:*:listener/app/*/*/*" ] }, { "Sid": "NLBModifyListeners", "Effect": "Allow", "Action": "elasticloadbalancing:ModifyListener", "Resource": [ "arn:aws:elasticloadbalancing:*:*:listener/net/*/*/*" ] }, { "Sid": "ALBModifyRules", "Effect": "Allow", "Action": "elasticloadbalancing:ModifyRule", "Resource": [ "arn:aws:elasticloadbalancing:*:*:listener-rule/app/*/*/*/*" ] } ] } åè: Amazon ECS infrastructure IAM role for load balancers (EFSãã€ããããService Connectãã€ãããããŠããå Žåã¯è¿œå ã®ããªã·ãŒãå¿
èŠãªã®ã§æ³šæ) åŸæ¥ã¯ecs_serviceã®ã»ãšãã©ã®é
ç®ã ignore_changes ã§ç¡èŠããå¿
èŠããã£ããããã®å¿
èŠã¯ãªããªã ãããã€ã§å€ããtask_definitionããªãŒãã¹ã±ãŒã«ã§å€ããdesired_countã ãignoreããã°ãã serviceã¯ãã¹ãŠTerraformã§ç®¡çãã圢ã«ã§ããã ãã¡ããåŸæ¥åæ§ã®ç®¡çæ¹æ³ã«ããŠããã ãã®ä» ãããã€æã®Role(or User)ã«ä»¥äžã®ããªã·ãŒãå¿
èŠ { "Version": "2012-10-17", "Statement": [ { "Action": "iam:PassRole", "Effect": "Allow", "Resource": ["{äžèšrole_arnã«æå®ããarn}"], "Condition": { "StringEquals": {"iam:PassedToService": "ecs.amazonaws.com"} } } ] } CodeDeploy Blue/Greenããã®åãæ¿ã å
¬åŒã«ç§»è¡æ¹æ³ã解説ãããŠããŸãã ãã皌åäžã®ã·ã¹ãã ãç§»è¡ãããã®ã¯æ£çŽå°é£ã ãšæã£ãæ¹ãè¯ãã§ãã åè¿°ã®ããã«æ§æãäžéšå€ãã£ãŠããããããã€åã«å€æŽããªããã°ãªããªã åãæ»ããã§ããªã deploymentControllerãCODE_DEPLOY â ECSã«ã¯ã§ããããéã¯äžå¯èœ åãæ»ããªãã®ãèŽåœçãªã®ã§ã€ã³ãã¬ãŒã¹ã§ã®ã¢ããããŒãã¯é¿ããã»ããè¯ãããããªãALB+ECSã®ã»ããããã1ã€äœã£ãŠåãæ¿ããã®ãããã§ãããã æ³šæäºé
ãªã¹ããŒã«ãŒã«ã®forward以å€ã®ã¢ã¯ã·ã§ã³ãæ¶æ»
ãã 2025/08/01æç¹ã§æ¬äºè±¡ã«ã€ããŠæ«å®å¯Ÿå¿ãããforward以å€ã®ã¢ã¯ã·ã§ã³ãèšå®ãããŠãããš ãããã€ã倱æãã ããã«ãªããŸãã Blue/Greenãããã€å¯Ÿè±¡ãšãªããªã¹ããŒã«ãŒã«ã«ã¯éåžžãforwardã¢ã¯ã·ã§ã³1ã€ã ããã€ããŠããç¶æ
ã«ãªã£ãŠããã¯ãã§ãã äžæ¹ã authenticate-oidc ã®ããã«èªèšŒãä»ããå Žåãã¢ã¯ã·ã§ã³ã¯2ã€ã«ãªããŸãã ex) Terraformã§ã®äŸ resource "aws_lb_listener_rule" "prd" { ... action { type = "authenticate-oidc" ... } action { type = "forward" ... } } ãã®ç¶æ
ã§Blue/Greenãããã€ãè¡ããšã forward以å€ã®actionãæ¶æ»
ããŸã ãäžèšã§ã¯authenticate-oidcã®ã¢ã¯ã·ã§ã³ãæ¶ããŠããŸããŸãã CodeDeploy Blue/Greenã§ã¯ä¿æããŠãããã®ã§ãECS Blue/Greenã®ã¿ã§çºçããäºè±¡ã§ãã CanaryãªãªãŒã¹ãæªå®è£
CodeDeployãšç°ãªãããªãªãŒã¹æŠç¥ãéžæãããã©ã¡ãŒã¿ãååšãããCanaryãªãªãŒã¹ãã§ããŸããã ãã®ãã¡å®è£
ããããã§ã¯ãããŸãããçŸæ®µéã§ã¯äžæ¬ãªãªãŒã¹ããã§ããŸããã ecspressoã®åãæ±ã ãããã€ã«ecspressoã䜿çšããŠããå Žåã®ã¿åœ±é¿ããŸãã ECS Blue/Greenã«ç§»è¡ããããšã«ããããµãŒãã¹å®çŸ©ãå
šãŠTerraformã§ç®¡çã§ããããã«ãªãããããã€ã§ã®æžãæããäžèŠã«ãªããŸãããã€ãŸããã¿ã¹ã¯å®çŸ©ã®ã¿ã®ãããã€ã§ãããªã£ããšããããšã«ãªããŸãã äžæ¹ã§ecspressoã¯ãµãŒãã¹å®çŸ©ã»ã¿ã¹ã¯å®çŸ©ãã»ããã§ç®¡çããããšãåæãšããŠããããã®æ©æµãåããããšãã§ããŸãããäžå¿ã¿ã¹ã¯å®çŸ©ã®ã¿ã§ã®å®è¡ã¯å¯èœã ãæ³å®ããäœ¿ãæ¹ã§ã¯ãªãããµããŒãå€ãšæèšãããŠããŸãã https://github.com/kayac/ecspresso/issues/871 ãã®ããã ãµãŒãã¹å®çŸ©ããããã€åŽã§ç®¡çãã(TerraformåŽã§å€æŽããªã)éçšãç¶ç¶ãã ecspressoã§ã®ãããã€ãããã ãµããŒãå€ãšç¥ãã€ã€(èªå·±è²¬ä»»ã§)䜿ã ã®3æãè¿«ãããããšãšãªããŸãã ãããã« ä»åã¯ã2025/07/17ã«ãªãªãŒã¹ããããECSçµã¿èŸŒã¿Blue/Greenãããã€ã«ã€ããŠè§£èª¬ããŸããã åèã«ãªãã°å¹žãã§ãã
ãã®èšäºã¯ããªã¬ãŒããã°äŒç»ã25æ°åãªã¬ãŒããã°ãã®èšäºã§ãã ã¯ããã« ããã«ã¡ã¯ãæ°å1幎ç®ã®å€§æã§ãã å
æ¥ãåããŠfirewalldãšããããŒã«ã«è§ŠããŸããã ãããäžè¬çãªACLãšåãããã«éä¿¡å
ã¢ãã¬ã¹(sources)ã«ã€ããŠèšå®ããããæå³ããªããã±ãããééããŠããŸãèšå®ã«æ©ãŸãããŸããã ä»åãªããã®ãããªæåã«ãªã£ãã®ããæ³å®éãåäœãããã«ã¯ã©ã®ãããªèšå®ã«ããã°è¯ããã«ã€ããŠããã®çµéšãèžãŸããããã§ãfirewalldã«å§ããŠè§Šãã人ã«åããŠãŸãšããããšæããŸãã çè
ãããã£ãŒã« å
¥ç€Ÿææ: 2025幎4æ å
¥ç€Ÿåã®ã¹ãã«: ãããã¯ãŒã¯, Linux çŸåšã®æ
åœ: ISPãªãã¬ãŒã·ã§ã³ã»OAããŒã ä»åã©ã®ãããªèšå®ãæå
¥ããŠããã®ã ããã€ã³ã¿ãã§ãŒã¹(ä»®: eth1)ã«ãããŠãIPã¢ãã¬ã¹(ä»®: 192.0.2.1)ããã®ã¿ãµãŒãã¹(ä»®: 22/tcp)ãèš±å¯ããã«ãŒã«ã远å ããããšã«ãªããŸããã ãã®ãšããç§ã¯ä»¥äžã®ãããªèšå®ã«å€æŽããŸããã æå³ãšããŠã¯”eth1ã«å°éãããã±ããã«ã€ããŠãéä¿¡å
IPã¢ãã¬ã¹ã192.0.2.1ãå®å
ããŒãã22/tcpãªã蚱寔ãšãã£ãå
·åã§ãã ããããå®éã®æåãšããŠã¯ã 192.0.2.1以å€ã®ãã¹ããã¢ã¯ã»ã¹å¯èœ ãšãªããŸããã firewalldåºæ¬ãšACLãšã®éã ãªããã®ãããªæåã«ãªã£ãã®ãã®åã«ããŸãfirewalldãã©ã®ããåäœãããã玹ä»ããããšæããŸãã ãŸããfirewalldã¯ãå€ãã®äººãè§ŠããŠããã§ããã”ãããã³ã«ãIPã¢ãã¬ã¹ãšããŒãçªå·ã®éä¿¡å
ãå®å
ãèš±å¯/æåŠã®ã¿ã§ã«ãŒã«ãèšè¿°ããACL”ãšã¬ã€ã€ãç°ãªããã®ã§ãã ACLã€ã¡ãŒãžå³ firewalldã¯ç¬èªã®æŠå¿µã«åºã¥ããŠèšå®ããäžèšã®ãããªã«ãŒã«ãçæãããã®ã§ãããšããèªèãéèŠã«ãªããŸãã äžè¬çãªACLã¯ãã€ã³ã¿ãã§ãŒã¹ãäžå¿ã§ãããã€ã³ã¿ãã§ãŒã¹ããšã«ã«ãŒã«ã远å ããŠããããšæããŸãã äžæ¹ãfirewalldã¯ã” ãŸãŒã³ “ãšãããã®ãäžæ žãšãªã£ãŠããããã®ãŸãŒã³ã«ã€ã³ã¿ãã§ãŒã¹ãéä¿¡å
IPã¢ãã¬ã¹ã远å ããŠãããŸãã ãã®ãŸãŒã³ãšã¯ããã®ã€ã³ã¿ãã§ãŒã¹ãéä¿¡å
IPã¢ãã¬ã¹ãã©ã®çšåºŠä¿¡é Œã§ããããã©ã®ãããªã«ãŒã«ã§ãã±ãããééããããã®ãããã¡ã€ã«ã®ãããªãã®ã§ãã firewalldã«ããã©ã«ãã§ååšãããŸãŒã³ã®çš®é¡ 1 ãã±ãããå°éãããšãéä¿¡å
IPã¢ãã¬ã¹ã次ã«ã€ã³ã¿ãã§ãŒã¹ã®é ã§å
ã«ããããããŸãŒã³ã«å²ãæ¯ãããŸã 2 ã æåã«éä¿¡å
IPã¢ãã¬ã¹ãããããããå€å®ãã 1ã§ãããããªããã°ã次ã«åä¿¡ããã€ã³ã¿ãã§ãŒã¹ã§å€å® ãŸããŸãŒã³ã«ã¯ãééãå¯èœãªããŒãçªå·ããããã³ã«ãåŸè¿°ãããªããã«ãŒã«ãå²ãåœãŠãããŸãã æåã®èšå®ã®åé¡ç¹ ACLã§ã¯éä¿¡å
IPã¢ãã¬ã¹ã¯èš±å¯(æåŠ)ã®ã«ãŒã«ã®äžéšãªãããåæ§ã ãšèªèããŠããŸããã ããããfirewalldã«ãããŠã®éä¿¡å
IPã¢ãã¬ã¹ã¯ããŸãŒã³ã®æ¯ãåãã®ããã®ã«ãŒã« 3 ã§ãã ä»åã®ã±ãŒã¹ã¯ãsourcesã«ãããããªããŠããinterfacesã«ãããããŠããŸããpublicãŸãŒã³ã§è©äŸ¡ãããããã«ãªã£ããããã¢ã¯ã»ã¹ãå¯èœãšãªã£ãèš³ã§ãã ã§ã¯ãæå³ããéãã®åäœããããã«ã¯ã©ã®ããã«ãããã ç§ã¯æ¬¡ã®ããã«ãªããã«ãŒã«ã䜿çšããŠèšå®ã倿ŽããŸããã ãªããã«ãŒã«ã§ã¯ãACLã®ã«ãŒã«ãšäŒŒããããªèšå®æ¹æ³ã§ãéä¿¡å
/å®å
ã®IPã¢ãã¬ã¹ãããŒãçªå·ããããã³ã«ã®çµã¿åããã§èš±å¯/æåŠãå¯èœã§ãã ä»åã®èŠä»¶ã§ã¯ã”192.0.2.1ããã®SSH”ãèš±å¯ãèŠä»¶ãªããã以äžã®ãããªãªããã«ãŒã«ã远å ããŸããã ããã§æå³ããããã«192.0.2.1ããã®ã¿SSHãéãããã«ãªããŸããã firewalldã§èšå®ããã«ã¯ firewalldãäžæãèšå®ããã«ã¯ããŸãfirewalldã®ã¢ãããŒããçè§£ããããšã倧åã§ãã ã€ã³ã¿ãã§ãŒã¹ãéä¿¡å
ã¢ãã¬ã¹ã§ãŸãŒã³ã«æ¯ãåãããã®ãŸãŒã³ã§ãã±ãããééãããããæ±ºå®ããŸãã ãã®ä»çµã¿ãçè§£ããããã§ãééããããã«ãŒã«ãå®å
ããŒãçªå·ããªããã«ãŒã«ãªã©ã«èœãšãããããšãéµã«ãªãããšæããŸãã ãŸãšã firewalldã«ãããsourcesã¯ãäžè¬çãªACLã®ãã㪔蚱å¯/æåŠããIPã¢ãã¬ã¹”ã®èšå®ã§ã¯ãããŸããã§ããã sourcesã¯ãŸãŒã³ãéžæããããã®èšå®é
ç®ã§ãã ãããACLã®ãããªèšå®ã远å ããã®ã§ããã°ããªããã«ãŒã«ã䜿çšããããšã§å¯èœãšãªããŸãã ãçµããã«ã åŠçã®çæ§ã«åã㊠ãŸã å
¥ç€ŸããŠéããªãã§ããããããã£ã«ã¯ãæé·ã»ææŠãæ¯ããŠãããä»çµã¿ãæŽã£ãŠãããšæããŠããŸãã å¶åºŠã¯ ãã¡ã ã§ç޹ä»ãããŠãããã®ãç¡æã§äœ¿ããUdemyãªã©æ°å€ãæã£ãŠããŸãããå
¥ç€ŸåŸã® ç ä¿® ãé
åã®äžã€ã§ãã ãŸããé
å±åŸãå°ã£ãŠããããšãããã°äžå¯§ã«æå°é ããææŠãããããšãããã°ããããåãå
¥ããæåããããŸãã ãããªãããã£ã§ã¯ããã®å¶åºŠã»æåãæŽ»çšããŠææŠããŠããã仲éãåéäžã§ãã æé·ã»ææŠã軞ã«ããŠãã人ã«ã¯ããšãŠãè¯ãç°å¢ã ãšæããŸãã ãã®èšäºãã芧ã«ãªã£ãŠããããªãããäžç·ã«åããããšæã£ãŠé ããŸããšå¹žãã§ãã æ¬¡ã¯ããªã¹ããŸããã®èšäºã§ãã ã©ããªèšäºã楜ãã¿ã§ããã åèæç® åäºåå®çŸ©ããããŸãŒã³ã«ã€ããŠ: https://docs.redhat.com/ja/documentation/red_hat_enterprise_linux/10/html/configuring_firew all s_and_packet_filters/using-and-configuring-firewalld#firewalld-zones ïž Previous Behaviorã®ã»ã¯ã·ã§ã³: https://firewalld.org/2023/04/zone-priorities ïž https://docs.redhat.com/ja/documentation/red_hat_enterprise_linux/10/html/configuring_firewalls_and_packet_filters/adding-a-source ïž
ã¯ããã« ãã¯ããããããŸããIWS ã§ã æè¿ãã¯ã©ãŠãã³ã¹ãææ¡ã®ãããAWS Lambda ã䜿ã£ãŠåã¢ã«ãŠã³ãã®å©çšæãååŸãããšããã®ãããŠããŸãããããã€ãããã¢ã«ãŠã³ãããããŒã¿ãååŸããããšããŠããã®ã§ãããããããã« AWS Lambda ãäœããšããã®ã¯ããããªãã£ãã®ã§ã¹ã€ããããŒã«ã䜿ã£ãŠä»æã®ã¢ã«ãŠã³ãã®ããŒã¿ã1ç®æããååŸã§ããããã«ããŸãããä»åã¯ãã®ããšã«ã€ããŠæžããŠã¿ããããšæããŸãã ã¹ã€ããããŒã«ïŒ ç°¡åã«èšããš IAM ããŒã«ã䜿ã£ãŠåã¢ã«ãŠã³ãã®åãæ¿ããç°¡åã«ã§ããããã«ãããã®ã§ãã äœæãã IAM ããŒã«ã®æã£ãŠããããªã·ãŒã®ç¯å²å
ã§ã¹ã€ããå
ã®ã¢ã«ãŠã³ããæäœã§ããŸããä»å㯠ã¹ã€ããå
ã®ã¢ã«ãŠã³ã A ã«ãã AWS Lambda ããã¹ã€ããå
ã® ã¢ã«ãŠã³ã B ã§ get_cost_and_usage ã䜿ã£ãŠã³ã¹ããååŸããŸãã ãã£ãŠã¿ã ãŸãã¯ã¹ã€ããå
ã®ã¢ã«ãŠã³ãã§ IAM ããŒã«ãäœæããŸãã IAM ããŒã«ã®äœæã®ä¿¡é Œããããšã³ãã£ãã£ã§ãAWS ã¢ã«ãŠã³ãããéžæãäžã®éžæã§ã¯ãå¥ã® AWS ã¢ã«ãŠã³ããã§ã¹ã€ããå
ã®ã¢ã«ãŠã³ã ID ãå
¥åããŸãã ããã ãã§ããããšã¯éåžžã®ããŒã«äœææãšåãããã«ããªã·ãŒã®èšå®ãªã©ãè¡ã£ãŠãã ãããã¹ã€ããå
ã®ã¢ã«ãŠã³ãã®æºåã¯ããã ãã§ãã AWS Lambda åŽæºå 䜿çšããã®ã¯ boto3 ã® sts_client.assume_role ã§ã # ã¹ã€ããå
ã®ã»ãã·ã§ã³ base_session = boto3.Session(region_name="ap-northeast-1") sts_client = base_session.client("sts") # ã¹ã€ããå
ã®ã»ãã·ã§ã³ assumed_role = sts_client.assume_role( RoleArn="<äœæãã IAM ããŒã«ã® ARN>", RoleSessionName="AssumeRoleSession", ) ãªããšããã ãã§ããã¬ã¹ãã³ã¹ã® Credentials ã®äžã«ã¢ã¯ã»ã¹ããŒãã·ãŒã¯ã¬ããããŒãšãã£ãæ
å ±ãå
¥ã£ãŠããã®ã§ããã䜿ã£ãŠæ°ããã»ãã·ã§ã³ãçºè¡ããã ãã§ã¹ã€ããããŒã«ãã§ããŸãã credentials = assumed_role["Credentials"] assume_role_session = boto3.Session( aws_access_key_id=credentials["AccessKeyId"], aws_secret_access_key=credentials["SecretAccessKey"], aws_session_token=credentials["SessionToken"], ) # ã¹ã€ããå
ã¢ã«ãŠã³ãã§ ce ã䜿ããïŒ ce = assume_role_session.client("ce") ããšã¯ client("ce") ãªã©ã䜿ã£ãŠããªã·ãŒã®ç¯å²å
ã§æäœãã§ããŸãã res = ce.get_cost_and_usage( TimePeriod={"Start": start, "End": end}, Granularity="MONTHLY", Metrics=["UnblendedCost"], ) total_amount = float(res["ResultsByTime"][0]["Total"]["UnblendedCost"]["Amount"]) # ã¢ã«ãŠã³ã B ã®æé : 300 USD ãŸãšã å¥ã® AWS ã¢ã«ãŠã³ããæäœã§ãããã¹ã€ããããŒã«ãããã£ãŠã¿ãŸãããä»åã¯ã³ã¹ããååŸããŠã¿ãã ãã§ãããããªã·ãŒãå€ããã°åœç¶ Amazon ECS ãæäœããã Amazon Cloudwatch ãæäœããããã§ãããããããã¢ã«ãŠã³ãããå¥ã®ã¢ã«ãŠã³ãã«å¯ŸããŠç°¡åã« CLI ã䜿ãããšããããšã ãã§ãèŠããŠãããšãã€ã圹ã«ç«ã€ãããããŸããã ã¿ãªããããã²ãã¹ã€ããããŒã«ã圹ç«ãŠãŠã¿ãŠãã ããïŒ
ããã«ã¡ã¯ãNIFTY engineeringããã°éçšããŒã ã§ãã ããã°éçšããŒã ã§ã¯ããããã£ã®ãšã³ãžãã¢ã«ã€ããŠã®æ
å ±ãäžã®äžã«åºããããã®æŽ»åãããŠããŸãã ãã®æŽ»åã®äžç°ãšããŠããªã¬ãŒããã°ã宿œããŠããŸãã æšå¹Žå¥œè©ã ã£ãæ°åãªã¬ãŒããã°ãä»å¹Žã宿œããŠããŸãïŒïŒ ããªã¬ãŒããã°äŒç»ã24æ°åãªã¬ãŒããã°ããããŸãïŒ æ¬èšäºã«ã25æ°å瀟å¡ã®ããã°èšäºã®ãªã³ã¯ããŸãšããŠãããŸãã®ã§ããã²ãã§ãã¯ããŠãã ããã 25æ°åãªã¬ãŒããã°ã¯ä»¥äžã®ã¹ã±ãžã¥ãŒã«ã§æçš¿äºå®ã§ãããæ¥œãã¿ã«ïŒ æçš¿äºå® å·çè
èšäºã¿ã€ãã« 2025幎7æ28æ¥ å®®æãã ãã€ãã³ãåå ã¬ããããŸãŸã§AWSãè§Šã£ãŠããªãã£ãäžå¹Žç®ããAWS Summitã«åå ããŠããŸãã 2025幎7æ29æ¥ moriãã Rancher Desktopã«ãã£ã¹ã¯ãç°åžžæ¶è²»ãããåé¡ã®å¯ŸåŠæ³ 2025幎8æ5æ¥ å€§æãã (ä»®)Firewalldã®åŒã£ããã£ããã€ã³ã 2025幎8æ13æ¥ ç³ç°ãã æªå® 2025幎8æ19æ¥ ãªã¹ããŸãã æªå® 2025幎8æ22æ¥ é«å£ãã gitã³ãã³ãã䜿ããã«commitãã 2025幎8æ26æ¥ ãã¯ãã æªå® 2025幎8æ29æ¥ ããŸã 25ãã ïŒä»®ïŒãªã³ãã¬ã®ãã¡ã€ã«ãµãŒããAzureãã¡ã€ã«å
±æãžãªãã¬ã€ã¹
ã¯ãããŸããŠïŒ ããã«ã¡ã¯ïŒ2025幎床æ°åãšã³ãžãã¢ã®ãã¯ã§ãã OJTãšããŠãã€ãããã£ããŒã ã«æå±ããŠããŸãã ãããããé¡ãããŸã AWS Summitã£ãŠäœïŒ AWS Summitã¯ã AWS(Amazon Web Service) ã®æè¡ãäžå¿ã«éå¬ãããITã€ãã³ãã§ããAmazonãšãããšãããã®ç©æµäŒç€Ÿã®âŠ?ããšæããããããŸãããããã®éãã§ãïŒ ãã®ã¢ããŸã³ãéå¶ããAWSã¯ãç°¡åã«èšããšã ã€ã³ã¿ãŒãããã§ã³ã³ãã¥ãŒã¿ãåãããµãŒãã¹ ã§ãã 以åã¯Webãµã€ãããµãŒãã¹ããã«ã¯ã24æé皌åã§ããé«äŸ¡ãªPCãµãŒããŒã賌å
¥ããèªåã§ç®¡çããªããã°ãªããŸããã§ããããAWSã䜿ãã°ããããã§å¿
èŠãªåã ãæè»ã«ã³ã³ãã¥ãŒã¿ãåããããšãã§ããŸãã ãããªAWSã«é¢é£ãããã¹ãŠã®ããšãéãŸãã幎1åéå¬ãããæ¥æ¬æå€§ã®ã¯ã©ãŠãã³ã³ãã¥ãŒãã£ã³ã°ã€ãã³ããAWS Summitã§ãïŒ ä»å¹Žã¯6æ25æ¥ãš26æ¥ã®2æ¥éãå¹åŒµã¡ãã»ã§éå¬ãããç§ã¯2æ¥é£ç¶ã§åå ããŸããã åå ç³ã蟌ã¿ããã»ãã·ã§ã³äºçŽãŸã§ AWS Summitã«åå ã®ããã«ã¯ãå
¬åŒWebããŒãžããäºåã«ç³è«ããå¿
èŠããããŸãïŒ https://aws.amazon.com/jp/summits/japan (æ¥å¹Žã¯ãªã³ã¯ã倿Žãããå¯èœæ§ããããŸã) ãªã³ã¯ãã¯ãªãã¯ãããšãã€ãã³ãå
šäœã®å
容ãšãšãã«ãã©ããªæè¡è¬æŒ(ã»ãã·ã§ã³)ãããã®ãã確èªã§ããŸããæ§ã
ãªã»ãã·ã§ã³ããããŸãããåã»ãã·ã§ã³ã«ã¯ ãLevelã ããããŸããAWSã«æ
£ããŠããªãæ¹ã¯ãAWSåå¿è
åãã®Level 100ïœ200ã®ã»ãã·ã§ã³ãå
ã«äºçŽããããšãããããããŸãã 人æ°ãªã»ãã·ã§ã³ã¯ããã«æºåžã«ãªã£ãŠããŸããŸãããåœæ¥äŒå Žã«ç©ºåžãããã°ãèªç±ã«å
¥å ŽããŠèãããšãã§ããã®ã§ãããŸãå¿é
ããå¿
èŠã¯ãããŸããã ç§ã¯èãããã£ãã»ãã·ã§ã³ãã»ãšãã©æºåžã§äºçŽã¯åºæ¥ãªãã£ãã®ã§ãããåœæ¥äŒå Žã§å
šéšåå ã§ããŸããã äœããã£ãŠããã°ããããªïŒ å¿
é äºåäºçŽã®åŸããã€ããŒãžããã¢ã¯ã»ã¹ã§ããQRã³ãŒã 身å蚌 (ååºãå
蚱蚌ç) ãããšãããã® æ°Ž ããã°ãã㯠(ããã«ãã£ã沢山ããããªã) PCïŒã¯ãŒã¯ã·ã§ããã«åå ãããªã) å¹åŒµã¡ãã»ãžGoïŒ äŒå Žã«å
¥å Žããããã«ã¯ãäºåç»é²ã®åŸã«çºè¡ããããã€ããŒãžã® QRã³ãŒã 㚠身å蚌 ãçšæããŸãã å
¥å£ã§ç¢ºèªåŸãå
¥å ŽèšŒïŒãã±ããïŒãåãåãããšãã§ããŸãã åå9æããå§ãŸãããŠã§ã«ã«ã ããã©ãŒãã³ã¹ããæ°ã«ãªã£ãã®ã§ãå°ãæ©ãã«å°çããŸãããæ©ãæéã ããããæã£ãããå
¥å Žåã¯é·ããªãã£ãã§ãã ä»å¹Žã¯å
ç4,000人ã«ã¯ãã·ã§ã³ãšãåŒåœãããããç¹å
žããããŸããïŒã¯ãã·ã§ã³ã¯åºèª¿è¬æŒãäºåã«äºçŽããŠããã°ããã®è¬æŒäŒå Žã®åžã§åãåãããšãã§ãããåŒåœã¯9æ20åé ã«é
åžãçµäºããŸããã æ¥å¹ŽããåŒåœãã»ãããªããå°ãæ¥ãã æ¹ãããã§ãã ããããæ¥œãã¿ã®æéã§ãïŒ äŒå Žã«å
¥ã£ãããããããæ¬æ Œçã«Summitãæ¥œããæéã§ãïŒåå¿è
ã®èŠç¹ã§ã2æ¥éåããªãããããã¯æ¥œãããïŒããšæã£ãããšã玹ä»ããŸãã ãŸãã¯åºèª¿è¬æŒãèŽãã æ°ããã»ãã·ã§ã³ã®äžã§äœãèãã¹ããè¿·ã£ãããåºèª¿è¬æŒãèŽããŸãããã AWS Summitã®æãæ žãšãªãã»ãã·ã§ã³ã§ãAWSã®æ°ããæè¡ãšæ§ã
ãªäŒæ¥ã®æåäºäŸã玹ä»ããŸãã åºèª¿è¬æŒãèããŠããAWSãæ¥æ¬åœå
ã§è²ŽéãªäŸ¡å€ãçã¿åºããŠãããã ããæã£ã以äžã«å·šå€§ãªæè¡ãªãã ãªããšæ°ã¥ããAWSãžã®èå³ãæ¹§ããŸããã äŒæ¥ããŒã¹ãäžéãåã£ãŠã¿ãã GitLabãIBMãIBMãPostmanãAMDãªã©ãªã©éŠŽæã¿ã®ããäŒæ¥ã¯ãã¡ãããããããªãµãŒãã¹ããããã ïŒããšæãäŒæ¥ãŸã§ãæ§ã
ãªäŒæ¥ãåºå±ããŠããŸãã åããŒã¹ã§ã¯ãèªç€Ÿã®æè¡ããµãŒãã¹ãã¢ããŒã«ããããã«ç¬ç¹ãªã€ãã³ããéå¬ããŠããããããèŠãã ãã§ããšãŠãè峿·±ããæ¥œããçµéšã§ããã äžéšã®ããŒã¹ã§ã¯ããã®å Žã§æ°è»œã«èãã ããã»ãã·ã§ã³ ãéå¬ããŠãããšãããããã®ã§ãèå³ã®ããããŒããããã°åå ããã®ãããã§ãããã ãããŠãããŒã¹ãåã£ãŠãããšãäž¡æäžæ¯ã® æŠå©å ãæã«å
¥ããããšãã§ããŸããããããã¹ããã«ãŒã䟿å©ã°ããºãç³ãèš³ãªããããããããããããŸãã®ã§ãAWS Summitã«åå ãããšãã¯ããã²ããã°ããã¯ãæã£ãŠè¡ããŸãããïŒ ã²ãŒã ã§åŠã¶ãAWSäœéšã©ã ãã»ãã·ã§ã³ãé£ããã§ãããšæãæ¹ã«ã¯ããããããããã§ãïŒ AWSäœéšã©ãã¯AWSã«åããŠè§Šããåå¿è
ã®æ¹ããŒãããæ¥œããåŠç¿ã§ããäœéšåããŒã¹ã§ãã Cloud Quest: ã²ãŒã ã§AWSã®ã¹ãã«ãåŠãã§ãããŸãã SIMULEARN : ãã£ããã§AIãšè©±ãããªãããããžãã¹åé¡ãAWSã§ã©ã®ããã«è§£æ±ºããããåŠã¶ã·ãã¥ã¬ãŒã·ã§ã³ã§ãã ç§ã¯Cloud Questã1æéã»ã©äœéšããŠã¿ãŸãããäœéšãå§ãããšãå®ç¿çšã®ä»®AWSã¢ã«ãŠã³ããããã«äœæãããå¿
èŠãªãã¡ã€ã«ããã¹ãŠçšæãããŠããã®ã§ãæ¬åœã«ãåŠç¿ãã«éäžã§ããã®ãè¯ãã£ãã§ãã ãAWSäœãããããªãçŽ äººã ãã©âŠããšããæ¹ã¯ãã²åå ããŠã¿ãŠãã ããïŒ ãã®ä»ã«ã ãã³ãºãªã³ãã¯ãŒã¯ã·ã§ããã§ãã ãšãã¹ã ããAWSã®æè¡ã掻çšããæ§ã
ãªãããžã§ã¯ããå±ç€ºãããŠãã å±ç€ºããŒã¹ ããããŸããã äœè£ããã£ããåãã®ã楜ãã¿ã®äžã€ã§ãïŒ æåŸã« æåã¯ããAWSã®ç¥èããªããšæ¥œãããªãã®ã§ã¯…ããšå¿é
ããŠããã®ã§ãããAWS Summitã¯ãå°éå®¶ã ãã®ã€ãã³ããã§ã¯ãªããç§ã®ãããªæ°äººãšã³ãžãã¢ãäžç·ã«æ¥œãã¿ãªããåŠã¹ãããšãŠãææçŸ©ã§æ¥œããæéã§ããã ITãè¶
ããã¢ãã¡ãŒã·ã§ã³å¶äœãç©æµã®èªååãé£å廿£ç©ã®åé¡è§£æ±ºã«è³ããŸã§äœ¿ãããAWSã®å§¿ã«ãã¯ã©ãŠãã³ã³ãã¥ãŒãã£ã³ã°ã®ç¡éã®å¯èœæ§ãæããŸããã ä»åã®çµéšã§ãAWSã¯é£ããæè¡ãšããåèŠããªããªããä»åŸãããã£ã§æ°ããæè¡ããã£ã𿢿±ããããšæã貎éãªãã£ãããåŸãŸããã ãã®èšäºãèªãã§ããçããããæ¬¡ã®Summitã§ãäŒãã§ããããšãé¡ã£ãŠããŸã
CCoEãçç£æ§åäžã«é¢ããä»äºãããŠããç³å·ã§ãã ä»åã¯éçºçç£æ§åäžãç®æããŠã2025幎3æããæ§ã
ãªAIãšãŒãžã§ã³ãã詊ããŠã¿ã å人çãª ææ³ãæžããŠããããšæããŸããGitHub Copilot以å€ã®ããŒã«ã¯æ°æ¥ãã1ã¶æäœ¿çšããã ããªã®ã§ãæ·±ã䜿ã蟌ãã ããã§ã¯ãããŸããã GitHub Copilot Agent mode / Coding Agent è¯ãç¹ GitHubæäŸã®å®å¿æãšå°æ¥æ§ãžã®æåŸ
GitHubãšã®é«ãèŠªåæ§ å°ãç¹ åŸé課éèŠçŽ ãããïŒPremium RequestïŒ äžéã§æµè¡ããŠããæ©èœãå®è£
ããããŸã§æéå·®ããã ChatGPTã§ç°¡åãªã³ãŒãçæã詊ãã以å€ã§ã¯ãGitHub Copilotãç§ãæ¬æ Œçã«äœ¿ã£ãæåã®ã³ãŒãã£ã³ã°AIã§ãããããã£ã§ã¯2023幎9æããæ£åŒå°å
¥ãããŠããŸãã VSCodeãšçµ±åãããŠããããäœ¿ãæ¹ã«è¿·ãããšããªããåããŠã³ãŒãã£ã³ã°AIãäœ¿ãæ¹ã«ãæé©ã ãšæããŸããGitHub.comäžã§ã¬ãã¥ãŒãã¹ãã£ã³çµæãå³Copilotã§ä¿®æ£ã§ããã®ã芪åã§ãã çŽ2幎é䜿ãç¶ããŠããŸããããã®éã«å©çšå¯èœãªã¢ãã«ãå¢ããEditã¢ãŒããAgentã¢ãŒããªã©ã远å ããçç£æ§ã¯å€§å¹
ã«åäžããŠããŸããæè¿ã§ã¯Instructionãã¡ã€ã«ãèªèããŠãããã±ãŒã¹ãå¢ããæ¥ã
çå®ã«äŸ¿å©ã«ãªã£ãŠããŸãã äžæ¹ã§ãææ°ã®ãã¬ã³ãæ©èœããŸã åã蟌ãŸããŠããªãããšããããŸããã§ããå¿
èŠãªæ©èœã¯æçµçã«ãã¹ãŠCopilotã«çµ±åãããçµå±ã¯Copilotã«èœã¡çãã®ã§ã¯ãªãããšå人çã«ã¯æåŸ
ããŠããŸãã Cline / Roo Code Copilot Agent modeãäžè¬å
¬éããããŸã§ã®éã«ãClineãRoo Codeãªã©ã®ããŒã«ã詊ããããšã¯ãããŸãããååãªææ³ãæžããã»ã©äœ¿ã蟌ãã§ããªããããããã§ã¯å²æããŸãã Devin â»2025幎3ææç¹ã«ãããDevinã®ææ³ãšãªããŸã è¯ãç¹ æ©ã段éããèªç«åAIãšãŒãžã§ã³ããšããŠå®æåºŠãé«ãã£ã GitHubãSlackããç°¡åã«å©çšã§ãã Devinèªäœããã©ãŠã¶ããšãã£ã¿ãŒãå
èµããŠãããç¬ç«ããç°å¢ã§ã¿ã¹ã¯ãå®è¡ã§ãã å°ãç¹ èªèšŒæ
å ±ã®ç®¡çãé£ãã BotãšããŠã®Devinã«åŒ·ãæš©éãä»äžããã SAML/SSOãå©çšããã«ã¯Enterpriseãã©ã³ãå¿
èŠ èªç«åAIãšãŒãžã§ã³ããäœéšããã®ã«æé©ãªSaaSã ãšæããŸãã Devinäžã§æ§ã
ãªæ©èœã詊ããŸãããGitHubãSlackãªã©å¿
èŠãªIntegrationãæã£ãŠããŸãã éãããç¯å²ã§äœ¿ãåã«ã¯åé¡ã¯å°ãªãã§ãããå
šç€Ÿå±éãèãããšãã¢ã«ãŠã³ã管çãèªèšŒæ
å ±ç®¡çãåŸé課éã®äºç®ç®¡çãªã©ã®èª²é¡ãåºãŠããŸãããããã«å¯Ÿå¿ããã«ã¯éçšã«ãŒã«ããã£ããæ±ºããŠããå¿
èŠããããŸããDevinãäºæãã¬åäœãããå Žåã瀟å
ã®AIæ®åã«ãæªåœ±é¿ãåãŒãå¯èœæ§ããããããå±éãããšããŠãããŒã åäœã§æ®µéçã«é²ããã®ãè³¢æã§ãã Jules è¯ãç¹ GoogleæäŸã®ã³ãŒãã£ã³ã°ãšãŒãžã§ã³ã ç¡æã§äœ¿ããïŒ1æ¥60ã¿ã¹ã¯ïŒ å°ãç¹ ãŸã ãããªãã¯ããŒã¿æ®µéã§æ©èœãéå®ç GitHubãªããžããªãšã®é£æºãå¿
é çŸæç¹ã§ã¯ãšã³ãžãã¢åãã®ç¡æAIã³ãŒãã£ã³ã°äœéšSaaSãšããå°è±¡ã§ãã çŽç²ãªã³ãŒãã£ã³ã°ãšãŒãžã§ã³ããªã®ã§ãDevinã®ãããªæ±çšæ§ã¯ãªããGitHubãšã®é£æºãå¿
èŠãšãªããŸããDevinãèªåçã«ãã«ãªã¯ãšã¹ããŸã§äœæããã®ã«å¯ŸããJulesã¯ãã©ã³ãäœæãŸã§ã§æ¢ãŸããªã©ãæäŸäŒç€Ÿããšã«AIãšãŒãžã§ã³ãã®äœæ¥ç¯å²ãç°ãªããŸãã Claude Code è¯ãç¹ å
éšããã³ããã®åªç§ãã宿ã§ãã ãšãã£ã¿ãŒãGUIã«çžãããã«å©çšã§ãã å°ãç¹ åŸé課éèŠçŽ ãããïŒAPIïŒ CLIã ãšæ¥æ¬èªå
¥åãããäžäŸ¿ 䜿çšåã¯äžéã®ããŸãã®è©å€ã®é«ãã«æççã§ããããå®éã«äœ¿ã£ãŠã¿ããšäœéšãéåžžã«è¯ãã£ãã§ãã ä»ã®AIãšãŒãžã§ã³ããšåæ§ã«ãèšç»ç«æ¡ â ã¿ã¹ã¯å â åŠçããšããåºæ¬çãªæµãã¯å
±éããŠããŸããã鲿ã®äŒãæ¹ãçµæãµããªãŒã®é©åãããããŠä»ã®äœæ¥ãéªéããã«åäœããç¹ãåªããŠããŸããå
éšã§äœ¿ãããŠããã§ãããããã³ãããéåžžã«åªç§ã ãšããããšãäŒãã£ãŠããŠãããããç·åçã«è¯ãäœéšãçã¿åºããŠããŸãã CLIã«ã€ããŠã¯ããšãã£ã¿ãŒãå æããªãïŒè€æ°ã®ã¿ã¹ã¯ã䞊åå®è¡ã§ããç¹ã§æå©ãªã€ã³ã¿ãŒãã§ãŒã¹ã ã£ããã ãšåçºèŠããæ°åã§ãã CLIã§ã®æ¥æ¬èªå
¥åã¯ããäžäŸ¿ã§ã¯ãããŸãããé·æã®ããã³ãããå¿
èŠãªå Žåã¯ã«ã¹ã¿ã ã¹ã©ãã·ã¥ã³ãã³ããæŽ»çšã§ããŸãããææªã³ããããã°ããã®ã§æ
£ããã°ãããŸã§å°ããã®ã§ã¯ãããŸããã§ããã Kiro è¯ãç¹ Specã¢ãŒãã«ããèŠä»¶å®çŸ©ããè¡ãäœéšãåªããŠãã AWSæäŸã®ãšãã£ã¿ãŒ å°ãç¹ å©çšã«ã¯Waitlistã®ç»é²ãå¿
èŠ Kiroã«ããã³ãŒãã£ã³ã°åŠçãéåžžã«é
ã ã»ãã·ã§ã³åãã«ããIAM Identity Centerãã°ã€ã³ãçŽããã¡ãã£ãšé¢å Kiroã¯ãšãã£ã¿ãŒã®åºæ¬æ©èœãšããŠãAIãšãŒãžã§ã³ãã广çã«æŽ»çšããããã®äžã€ã®æš¡ç¯è§£çãæäŸããŠããŸãã Claude Codeã®Planã¢ãŒããRoo Codeã®Architectã¢ãŒããªã©é¡äŒŒæ©èœã¯ãããŸãããããèŠä»¶å®çŸ© â Design Doc â ãã©ã³äœæãã察話圢åŒã§èªååããŠãããäœéšã¯ãã°ãããã£ãã§ããæ¢åã®éåãªããã³ãããã³ãã¬ãŒããæã£ãŠããªãéããSpecã¢ãŒãã§AIãšãã©ã³ãç«ãŠãäœéšã¯ãä»åŸã®AIãšãŒãžã§ã³ããšã®å¹æçãªé¢ããæ¹ãåŠã¶è¯ãæ©äŒã«ãªããšæããŸãã Gemini Canvas ã³ãŒãã£ã³ã°ããšãŒãžã§ã³ã以å€ã«ãæ
å ±åéãã¹ã©ã€ãäœæã«é¢ããããŒã«ã調æ»ããŠããã®ã§ãããŸããšããŠç޹ä»ããŸãã è¯ãç¹ Geminiã®äžæ©èœãšããŠæè»œã«å©çšã§ãã Deep Researchã§èª¿ã¹ãçµæãå³åº§ã«ã¬ããŒããäžæçµµïŒhtmlïŒã«ãŸãšãããã å°ãç¹ Googleã¹ã©ã€ãã«çŽæ¥æµçšã§ããªãïŒãã£ããã£ãªãå¯èœïŒ ã¹ã©ã€ãã«é©ãããã©ãŒããããããã³ããã§æå®ããã®ãé¢å ç§ã¯çºè¡šçšã®ã¹ã©ã€ããGeminiã«äžããCanvasã§htmlããŒãžãäœæããããããã£ããã£ããŠã¹ã©ã€ãã«æ¿å
¥ããæ¹æ³ã§æŽ»çšããŠããŸããã䟿å©ã§ã¯ãããŸããããã¶ã€ã³ã®åŸ®èª¿æŽãéåžžã«é£ããã®ãæ¬ ç¹ã§ãã ãã®åé¡ã解決ããŠãããããŒã«ãšã㊠Manus ããããŸããã¹ã©ã€ãæ©èœãããŒã¿å¯èŠåæ©èœã¯éåžžã«åªç§ã§ãããæ°ã«ãªãç¹ãããããçŸæç¹ã§ã¯ãã©ã€ããŒãã§ã®æ€èšŒã«çããŠããŸãã ã»ãã«ã ChatGPT Agentã§ãã¹ã©ã€ããäœæã§ããããã«ãªããŸãã ãïŒçŸç¶ã§ã¯ãã¶ã€ã³é¢ãäžååïŒãæ°ã¶æåŸã«ã¯ä»ã®ããŒã«ã察å¿ããŠãããšæãããïŒé¡æïŒã®ã§ããã®ãããã¯ãŸã æ§åèŠã§ãè¯ããããããŸããã ãŸãšã GitHub CopilotãNotion AIãéå»ã«å°å
¥ããçµç·¯ããããæµãã§æè¿ã®AIãšãŒãžã§ã³ãã調æ»ãé²ããŠããŸããããçš®é¡ã®å€ããšé²åã®éãã«è¿œãã€ãã ãã§ãç²åŒããŸããã å幎ãã1幎ã»ã©åŸ
ã£ãŠèœã¡çããŠããå°å
¥ãæ€èšããã®ãæãå¹ççã§ã¯ãããŸãããAIæè¡ã¯å®éã«äœéšããŠåããŠçè§£ã§ããèŠçŽ ãå€ããšèããŠããŸããæ¥ã
ã®æ
å ±åéãšæãåããããšã§åŸãããçµéšå€ãéåžžã«éèŠã ãšãæããŸãã æ§ã
ãªããŒã«ãæ€èšŒããçµæãäž»ãªäœ¿ãæ¹ãšå¿
èŠãšãªãæ
å ±ïŒInstructionãKnowledgeãªã©ã®ã«ã¹ã¿ã èŠçŽ ïŒããéçŽã§ããŠããã°ãèªåã«åã£ããã®ãéžãã§äœ¿ãã®ãçŸæç¹ã§ã®æé©è§£ã§ããããããã«èšãã°ãäžã€ã®ããŒã«ã«åºå·ãããæ§ã
ãªãã®ã詊ãæè»ãªå§¿å¢ã倧åã ãšæããŸãã æªæ¥ã¯åžžã«å€åããŠãããããã©ã®ããŒã«ãã©ã®çšåºŠç€Ÿå
ã«å±éãããã®èšç»ã¯ç«ãŠã«ããã§ãããå®éã«åªããäœéšäŸ¡å€ãæäŸããããŒã«ã«ã€ããŠã¯ç©æ¥µçã«ç€Ÿå
å±éãé²ããŠãããããšèããŠããŸãã
ã¯ããã« çããããã«ã¡ã¯ãå®®æã§ãã ä»åã¯ã2025幎 6æ25æ¥ãš6æ26æ¥ã«AWS Summit Japan 2025ã«åå ããŠãããããã¢ããŸã³ ãŠã§ã ãµãŒãã¹ïŒAWSïŒãã»ãŒè§Šã£ãŠããªãå
¥ç€Ÿäžå¹Žç®ã®ãšã³ãžãã¢ã®ç®ç·ã§ææ³ãèªã£ãŠãããããšæããŸãã AWS Summitãšã¯ å
¬åŒãµã€ã ã§ã®èšèŒã¯ä»¥äžã®éãã§ãã AWS Summit ã¯ãå
±ã«æªæ¥ãæããã«ããŒãäžå ã«äŒããŠãã¢ããŸã³ ãŠã§ã ãµãŒãã¹ (AWS) ã«é¢ããŠåŠç¿ãããã¹ããã©ã¯ãã£ã¹ã®å
±æãæ
å ±äº€æãã§ãããã¯ã©ãŠãã§ã€ãããŒã·ã§ã³ãèµ·ããããšã«èå³ãããå
šãŠã®çæ§ã®ããã®ã€ãã³ãã§ãã https://aws.amazon.com/jp/summits/japan/ ç°¡æœã«èšããšãAmazon Web Services, Inc.æ§ãã¯ãããšããå€ãã®äŒæ¥ãäžå ã«äŒããæ
å ±äº€æãè¡ã£ãããäŒæ¥ãæ±ãã課é¡ã解決ããããã®è£œåããµãŒãã¹ã玹ä»ãããããå Žããšèšããã§ãããã ãªãåå ããã®ã åŒç€Ÿã§ã¯å
šç€Ÿçã«AWSã䜿çšãããŠãããããæè¡çç¥èŠãå¢ããããã£ãç¹ãšãäžäººã®ããžãã¹ããŒãœã³ãšããŠæè¡ç³»ã€ãã³ãåå ãããã£ãããã§ãã äŒå Žã®æ§å äŒå Žã¯å€ãã®æ¥å Žè
ãšåºå±äŒæ¥ã§ã倧å€ãªç±æ°ã«å
ãŸããŠããŸããã Amazon Web Services, Inc.æ§ããã®ä»ã®æ§ã
ãªäŒæ¥ã«ããã»ãã·ã§ã³äŒå Žã®ã»ããããŒã¹ããããããããŸããã ãã®æ¥çã§ã¯ãªãã¿ã®æ·±ãAMDæ§ãGitLabæ§ãããŸæ³šç®ãéããŠããAnthropicæ§ãªã©ãå€çš®å€æ§ãªäŒæ¥ãéã£ãŠããŸããã ããŒã¹ã§ã¯ãæ§ã
ãªäŒæ¥æ§ãããèªç€Ÿã®è£œåãããã§ããïŒããšã¢ããŒã«ããŠããŸãã äºåã«èªç€Ÿãæ
åœãããã¯ãã®èª²é¡ãæŽçããŠãããšãããã®è£œåã¯ãã®èª²é¡ã解決ã§ãããããããªãããšãã£ãçºèŠããããããææçŸ©ã«ããŒã¹ãèŠãŠåãããšæããŸããã ãŸãã話ãèããŠãããšããããããªããã«ãã£ããªãªãžãã«ã¹ããã«ãŒãªã©ãé
åžãããŠããŸããã ç¹ã«å°è±¡çã ã£ãã®ã¯ãRed Hatæ§ã®ããŒã¹ã§é
åžãããŠããred hatïŒãã¬ãŒãããŒã¯ã®èµ€ãäžæãåžœïŒã§ãã ã»ãã·ã§ã³ã®æ§å äž¡æ¥ãšãã10æãã11æåãŸã§åºèª¿è¬æŒãããããã®åŸåããŒã¹ã§åå¥ã»ãã·ã§ã³ãè¡ããã圢ã§ãã æ¥å¹Žåå ãããæ¹ãžã®ã¢ããã€ã¹ã§ãããåºèª¿è¬æŒãè¯ãåžã§èãããå Žåãæ©ãã«äŒå Žãžå°çããããšãããããããŸããä»å¹Žã®äŸã§ã¯ãéå ŽåŸããã«åžãåãŸãå§ããæ©ãæ¥ã人ã«ã¯ã¯ãã·ã§ã³ãæŒé£åžãé
åžããããªã©ã®ç¹å
žããããŸããã æ§ã
ãªã»ãã·ã§ã³ãèŠãŸãããããã®äžã§ãç¹ã«å°è±¡ã«æ®ã£ããã®ãããã€ãããã¯ã¢ããããŠç޹ä»ããããšæããŸãã Amazon Web Services, Inc.æ§ã«ãããçæ AI ãæŽ»çšããããŒã¿ããŒã¹ã®ã¹ããŒã倿ã§ç§»è¡ãå éããã : AWS Database Migration Service Schema Conversionã çæAIãæŽ»çšããããšã«ãããèªç€Ÿã§ä¿æããŠãããµãŒãããAWSãžã®ããŒã¿ããŒã¹ç§»è¡ã倧ããªåŽåããããã«å®çŸã§ãããšã®ããšã§ãã ãããŸã§ã¯ãOracle Databaseãªã©ããAWSã®ããŒã¿ããŒã¹ãžç§»è¡ããéã颿°ãã¹ãã¢ãããã·ãŒãžã£ãšãã£ãè€éãªã³ãŒãã¯èªå倿ãé£ãããæäœæ¥ã§ã®ä¿®æ£ãå€ãçºçããŠããŸããã ã»ãã·ã§ã³ã«ãããšãåŸæ¥ã¯å
šäœã®8%çšåºŠããèªå倿ã§ããªãã£ãåŠçããçæAIãæŽ»çšããããšã§çŽ85%ãŸã§èªååã§ããããã«ãªã£ããšã®ããšã§ãã ãããããã ãçæAIãæŽ»çšããã°ããã ãã§ãªããã³ã³ããã¹ããé£èªåããã³ãŒãã®ä¿®æ£ãLarge Language ModelïŒLLMïŒã®éžå®çãèæ
®äºé
ãå€ããããAIãã©ã掻çšããŠããããéèŠãšãªãããã ãšæããŸããã åŒç€Ÿã§ããã®ãããªAWSãžã®ç§»è¡ã¯èª²é¡ãšãªã£ãŠãããããåèã«ããããšæããŸããã Amazon Web Services, Inc.æ§ã«ãããã»ãã¥ã¢ãªãœãããŠã§ã¢éçºã©ã€ããµã€ã¯ã«ã®ããã®çæ AIã æ¬çªç°å¢ãžã®ãããã€åŸçã«ãè匱æ§ãèŠã€ããããšã¯ãã³ãã³çºçãããããç¶ç¶çãªã¹ãã£ã³ããäŸåé¢ä¿ã«ãªã£ãŠããã·ã¹ãã å
šäœã®ææ¡ãå¿
èŠãšãªããŸãã è¿å¹Žã®ãµã€ããŒæ»æã®å·§åŠåãåãããœãããŠã§ã¢ãæ§æããã³ã³ããŒãã³ãïŒéšåïŒãäžèЧåããããœãããŠã§ã¢éšå衚ïŒSBOMïŒãã®éèŠæ§ãé«ãŸã£ãŠããŸããããããéçºã®éçšã§åžžã«ææ°ã®ç¶æ
ã«ä¿ã€ã®ã¯å®¹æã§ã¯ãããŸããã ãã®èª²é¡ã«å¯ŸããAWSã®è匱æ§ç®¡çãµãŒãã¹ã§ãããAmazon Inspectorãã¯ãã¹ãã£ã³ãããªãœãŒã¹ããSBOMãèªåã§ç¶ç¶çã«çæã»ç®¡çããŠããããšã®ããšã§ãã åŒç€Ÿã§ããSBOMã«é¢ãã話ãåºå§ããŠããããã®åéã«é¢ããç¥èŠãããåºããŠããããšæããŸããã æ ªåŒäŒç€Ÿãã¯ã³ãŽæ§ã«ããåºèª¿è¬æŒããã³ãåå¥ã»ãã·ã§ã³ããã³ãã³ã®å€§èŠæš¡ã»ãã¥ãªãã£æ¹é©ã ãããæåã代衚ãããµãŒãã¹ã®äžã€ãšããããããã³ãã³ããéå¶ããæ ªåŒäŒç€Ÿãã¯ã³ãŽæ§ã¯2024幎6æã«å€§èŠæš¡ãªãµã€ããŒæ»æãåããŸããã 察å¿ã®éã«ã¯ãAmazon Web Services, Inc.æ§ã®ç€Ÿå¡ã®æ¹ã
ãå«ããŠã»ãã¥ãªãã£ããŒã ãæ§æããããã§ãã çºè¡šã«ãããšãæ»æãåããéãèªç€Ÿã§éçšããŠãããªã³ãã¬ãã¹ç°å¢ã¯å€§ããªè¢«å®³ãåããŸãããã以åããç§»è¡ãé²ããŠããAWSäžã®ç°å¢ã¯è¢«å®³ãæå°éã«é£ãæ¢ãããããšã®ããšã§ãã ãã®çµéšãããæ®ã£ãŠããã·ã¹ãã ã®AWSãžã®ç§»è¡èšç»ã倧å¹
ã«ååãããŠããµãŒãã¹åŸ©æ§ãé²ããããã§ãã AWSãæäŸããå
ç¢ãªã»ãã¥ãªãã£åºç€ã®æå¹æ§ããæ¹ããŠèªèãããããäºäŸã§ããã ãŸãããã®ãããªè¢«å®³ã¯ä»äººããšã§ã¯ãªããšããèšèããç¹ã«å°è±¡ã«æ®ããŸããã å
šäœãéããŠã®ææ³ããã³ãŸãšã ãã®äºæ¥éãéããŠãAWSã«å¯Ÿããèå³ãããäžå±€äžãããŸããã AWSã«ãããæ§ã
ãªãœãªã¥ãŒã·ã§ã³ãå®çŸã§ããããšãç¥ããåŒç€Ÿã§ã掻ãããŠã¿ãããšãæããŸããã ç§ã®ãããªAWSåå¿è
ã§ããSimple Storage ServiceïŒAmazon S3ïŒãAmazon EC2ãšãã£ãåºæ¬çãªãµãŒãã¹ã®åœ¹å²ãææ¡ããŠããã°ãåã»ãã·ã§ã³ã®ç®çãçè§£ã§ãããšæããŸããã æ¥å¹Žã®éå¬ãŸã§ã«ã¯ãããã«AWSã®ç¥èãèªç€Ÿã®èª²é¡ãžã®çè§£ãæ·±ããããå€ãã®åŠã³ãåŸãããããåææŠãããã§ãã
ã¯ããã« ã¯ãããŸããŠããããã£æ ªåŒäŒç€Ÿã®æ£®ã§ãã çè
ãããã£ãŒã« å
¥ç€Ÿææ: 2025幎 4æ æ°åå
¥ç€Ÿ å
¥ç€Ÿåã¹ãã«: èšèª: C, Python, JavaScript ä»: Docker, Linux, Flutter, AWSã¯æªçµéš çŸåšã®æ
åœ: 課éã·ã¹ãã ããŒã çŸåšåŒç€Ÿã§ã¯ãDocker Desktopã®ä»£æ¿ãšããŠRancher Desktopã䜿çšããŠããŸãã ãã®Rancher Desktopã«ãã£ã¹ã¯ãç°åžžã«æ¶è²»ãããã®ã§ãåå ãšå¯ŸåŠæ³ã«ã€ããŠèšããŠãããŸãã Rancher Desktopã®å©çšãåºãŸã£ãŠããŸãã®ã§ãååé¡ã«çŽé¢ãã人ã®å©ãã«ãªãã°å¹žãã§ãã ç°å¢ OS: Windows 11 24H2 ããŒããŠã§ã¢æ§æã¯é¢ä¿ãªããšæããŸãã®ã§å²æããŸãã èæ¯ Docker Composeã䜿çšããããŒã«ã«æ€èšŒç°å¢äœæã®éçšã§ãã³ã³ãããäœåºŠãäœæãåé€ããäœæ¥ãç¹°ãè¿ããŠãããšããããã·ã³ã®ãã£ã¹ã¯äœ¿çšéãæ¥æ¿ã«å¢å ãããšããåé¡ãçºçããŸããã åœåãã€ã¡ãŒãžãã³ã³ããã«å¯ŸããŠpruneã³ãã³ããå®è¡ããŠäžæçãªå¯ŸåŠãããŠããŸããããæ ¹æ¬çãªè§£æ±ºã«ã¯è³ããŸããã§ããã çµæãšããŠã䜿çšããŠãããã·ã³ã®ãã£ã¹ã¯ãåãå°œããããäœæ¥ã«æ¯éãåºãç¶æ³ã«ãªããŸãããã€ã¡ãŒãžãã³ã³ãããããªã¥ãŒã ãåé€ããŠãããã£ã¹ã¯ã®æ¶è²»éã¯å¢ãç¶ããããã§ãã è¥å€§åããä»®æ³ãã£ã¹ã¯ãã¡ã€ã« åå Rancher DesktopãããŒã¿ãä¿åããä»®æ³ãã£ã¹ã¯ã§ãã C:\\Users\\{ãŠãŒã¶å}\\AppData\\Local\\rancher-desktop\\distro-data\\ext4.vhdx ã®ãµã€ãºã倧ãããªã£ããŸãŸçž®ãŸãªãããšãåå ã§ãã ã³ã³ããã®äœæâåé€ã«ã¯ä»¥äžã®ãããªåŠçãå®è¡ãããŠãããšèããããã®ã§ãããäžã«ããããŒã¿ãæ¶å»ãããããšããä»®æ³ãã£ã¹ã¯ã確ä¿ããé åãéæŸãããããµã€ãºã倧ãããªãç¶ããŠããããã§ã[1,2]ã ã³ã³ãããäœæããã ã³ã³ããã®ããŒã¿ãä¿åããããã«ä»®æ³ãã£ã¹ã¯ãã¡ã€ã«ã®ãµã€ãºã倧ãããªã ã³ã³ãããåé€ããã ä»®æ³ãã£ã¹ã¯å
ã®ããŒã¿âã¯âåé€ããã äžåºŠä»®æ³ãã£ã¹ã¯ãèšããã§ããŸããšãäžèº«ãæ¶ããŠã广ããããŸããã§ããã ããã«æ°ã¥ããªããŸãŸ compose up , compose down ãç¹°ãè¿ããçµæãå
çšã®ç»åã§ãã pruneã³ãã³ãã䜿çšããŠãªãœãŒã¹ãåé€ããŠãä»®æ³ãã£ã¹ã¯ãçž®ãŸãªãæ§å è§£æ±ºæ¹æ³ 調æ»ããäžã§å¹æã®ç¢ºèªã§ããè§£æ±ºæ¹æ³ã¯2ã€ã§ãã diskpartã䜿çšããŠä»®æ³ãã£ã¹ã¯ãçž®å°ãã Factory ResetãããŠRancher Desktopç°å¢ãåæ§ç¯ãã diskpartã䜿çšããæ¹æ³ã ãšãè¥å¹²æéãããããŸããå¿
èŠãªããŒã¿ãæ®ãããŸãŸä»®æ³ãã£ã¹ã¯ãçž®å°ã§ããŸããFactory Resetã§ããšäœæ¥ã¯åçŽã§ããå
šãŠã®ã³ã³ãããã€ã¡ãŒãžãæ¶ããã®ã§ã泚æãã ããã diskpartã䜿çšããä»®æ³ãã£ã¹ã¯ã®çž®å°æ¹æ³ äºåã«äžèŠãªã³ã³ãããã€ã¡ãŒãžãããªã¥ãŒã çãåé€ããŠä»®æ³ãã£ã¹ã¯ã®äœ¿çšéãäžãã PowerShellãã wsl --shutdown ãå®è¡ããŠWSLãçµäºããã diskpart ããã㯠diskpart.exe ãå®è¡ diskpartã§ select vdisk file=âC:\\Users\\{ãŠãŒã¶å}\\AppData\\Local\\rancher-desktop\\distro-data\\ext4.vhdxâ ãå®è¡ããŠãŒã¶åã¯èªåã®ãã®ã«çœ®ãæããŠãã ããã diskpartã§ compact vdisk ãå®è¡ ãã®éããã£ã¹ã¯ã䜿çšãããŠãããã®ãããªãšã©ãŒãåºãŠå€±æããå ŽåWSLãçµäºããŠããªãã§ã Factory Resetãããæ¹æ³ ãã¡ãã¯ä»®æ³ãã£ã¹ã¯ãã¡ã€ã«ãçž®å°ããããšããããã¯ãäžæŠå
šãŠãåé€ããŠããŸãæ¹æ³ã§ãã ç§ã®å Žåã¯ãã€ã¡ãŒãžã®æ°ãå€ããªããããŠå¿
èŠãäžèŠã®å€æãã§ããªãç¶æ³ã«é¥ã£ãŠãŸããã®ã§ããã¡ããå®è¡ããŸãããå
ã»ã©ãæžããŸããããã³ã³ãããã€ã¡ãŒãžãªã©å
šãŠãæ¶ããŸãã®ã§ã泚æãã ããã æåã§ä»®æ³ãã£ã¹ã¯ãã¡ã€ã«ãåé€ããåŸãWSLã€ã³ã¹ã¿ã³ã¹ã®åé€ãRancher Desktopã®åã»ããã¢ãããè¡ã£ãŠããåã广ãåŸãããŸãããã²ãšæéããããŸãã Troubleshootingãéžæ Factory ResetãæŒã èŠåãåºãã®ã§OKãéžæ åã³Rancher Desktopãéããšãã€ã³ã¹ããŒã«æãšåããããªãŠã£ã³ããŠãåºãã®ã§ããããã®ç°å¢ã«ãã£ãã»ããã¢ãããããŠãã ããã åèè³æ https://github.com/rancher-sandbox/rancher-desktop/issues/2398 https://qiita.com/tamanegisoul/items/82b1fe8ed638c79cbe96 çµããã« ä»åã¯Rancher Desktopäœ¿çšæã«ãã£ã¹ã¯ãç°åžžæ¶è²»ãããåé¡ãžã®å¯Ÿå¿çã調æ»ã玹ä»ããŸããã åãåé¡ã«ééãã人ã®å©ãã«ãªãã°å¹žãã§ãã ãã®èšäºãèªãã åŠçããã«åã㊠ãã®èšäºãæžããæç¹ã§å
¥ç€ŸããŠå幎çµããªãã§ãããåŒç€Ÿã§ã¯æ°äººã§ãæ§ã
ãªããšã«ææŠã§ããç°å¢ã ãšæããŠããŸãã äŸãã°ç§ã®å Žåã¯ãæ¢åãããžã§ã¯ãã®äœ¿çšããŠããèšèªãã©ã€ãã©ãªã®æŽæ°ãææ¡ãããšããææŠãããŠããããæ¹ä¿®ã«åå ããŠããŸãã ãã®ããã«ã幎次ãçµéšã«ããããããã¢ã€ãã¢ã¯ç©æ¥µçã«åãå
¥ããææŠã®æ©äŒãäžããŠãããã®ãåŒç€Ÿã®æåã§ãããã¡ãããããããªãããšãèãã°çµéšè±å¯ãªå
茩æ¹ããã£ããæããŠãããã®ã§ã倱æãæããå®å¿ããŠæ°ããããšã«åãçµããç°å¢ã§ãã
ããã«ã¡ã¯ããããã£æ ªåŒäŒç€Ÿã®ä»²äžã§ãã ä»åã¯ãå
æ¥éå¬ããã SRE NEXT 2025 ã§ã®çºè¡šå
容ãšè£è¶³æ
å ±ã«ã€ããŠã玹ä»ããŸãïŒ ã€ãã³ãæŠèŠ å
æ¥ãSRE NEXT 2025 ãéå¬ãããŸããã https://sre-next.dev/2025/ åœç€Ÿã¯ãŽãŒã«ãã¹ãã³ãµãŒãšããŠåå ããã¹ãã³ãµãŒããŒã¹ã®åºå±ãªã©ãè¡ããŸããã åœç€Ÿãåãå
¥ããŠããåéã«ã€ããŠã¯ãæè¡åºå ±ãããããšãªããã³ãã¥ããã£ãšã®ç¹ãããéèŠããŠããã®ã§ã€ãã³ãã®åè³ãè¡ã£ãŠããŸãã SREããã®åéã®1ã€ã§ããSRE NEXTãã®ãããªå€§ããªã€ãã³ãã«ã¯ã2022幎ããæ¯å¹Žåè³ããŠããŸãã ããŒã¹ã®è©³çްã«ã€ããŠã¯æ
åœè
ãå¥èšäºãäœæããŠããŸãã®ã§ããã¡ããã芧ãã ããïŒ SRE NEXT 2025ã«åå ããŠããŸããïŒ ç»å£å
容ã«ã€ã㊠æ¬ã€ãã³ãã§ã¯10åéã®ç»å£æ ãããã ããç§ã®ããŒã ã宿œããç£èŠåºç€ãªãã¬ã€ã¹ã«ã€ããŠçºè¡šããŸããã åããŠã®å€éšã€ãã³ãç»å£ã ã£ãããç·åŒµããŸããããéåžžã«è²ŽéãªçµéšãšãªããŸããã çºè¡šè³æã¯SpeakerDeckã«å
¬éããŠããŸãã®ã§ãèå³ã®ããæ¹ã¯ãã²ã芧ãã ããã æ¬æ¥çºè¡šããã仲äžã®è³æã§ãã ã¢ãã¿ãªã³ã°çµ±äžãžã®éã®ã ã忣ã¢ãã¿ãªã³ã°ããŒã«çµ±åã®ããã®ãªãã¶ãŒãããªãã£ãããžã§ã¯ãã https://t.co/h4DrxdWz5V #srenext — NIFTY Developers (@NIFTYDevelopers) July 11, 2025 çºè¡šå
容ã®è£è¶³ çºè¡šæéãéãããŠããããå
容ãå§çž®ããããåŸããããã€ã説æãäžè¶³ããŠããéšåããããŸããããã®å ŽãåããŠè£è¶³èª¬æããããŠããã ããŸãã Grafana/Prometheusã®ã³ã¹ãè©äŸ¡ã«ã€ã㊠çºè¡šæã®æ¯èŒè¡šã§ã¯ãGrafana + Prometheus ã®æ§æãã³ã¹ãé¢ã§ãé«ãããšè©äŸ¡ããŸããã ãã®è©äŸ¡ã¯ãçŽç²ãªã€ã³ãã©ã³ã¹ãã ãã§ãªããéçšå·¥æ°ãå«ããç·åçãªã³ã¹ãèšç®ã«åºã¥ããŠããŸãã Grafana + Prometheus ã¯ãªãŒãã³ãœãŒã¹ããŒã«ã§ããããµãŒããŒã«ã€ã³ã¹ããŒã«ããã ãã§å©çšã§ããŸãããå®éçšã§ã¯èšå®ãåºç€ã®éçšã»ã¡ã³ããã³ã¹ã«äºæ³ä»¥äžã®å·¥æ°ãããããããç·åçãªã³ã¹ãé¢ã§ãâ³ãè©äŸ¡ãšããŸããã ä»åã¯æéã®å¶çŽããããã§ã«å©çšçµéšã®ããOSSçã®ã¿ãæ€èšŒå¯Ÿè±¡ãšããŸããããã¯ã©ãŠããµãŒãã¹çã§ã¯çµæãç°ãªãå¯èœæ§ããããŸãã ããåæ§ã®æ¯èŒæ€èšŒããããŠããæ¹ãããã£ãããã°ããã²æ
å ±å
±æããã ãããšå¹žãã§ãã å
·äœçãªã³ã¹ã詊ç®çµæ ä»åã¯ä»¥äžã®æ¡ä»¶ã§ã³ã¹ã詊ç®ã宿œããŸããã ç£èŠå¯Ÿè±¡: ãµãŒããŒ20å° ãã°ã€ãã³ã: 800äžã€ãã³ã/æ ãã°ä¿ææé: 30æ¥é ãã°ããŒã¿é: 1ã€ãã³ãããã1KBãšä»®å®ããæé 8GB ã®ãã°ããŒã¿ïŒ800äžã€ãã³ã à 1KB/ã€ãã³ã â 8GBïŒ çºæ¿ã¬ãŒã: $1 = 158å ãªãŒãžã§ã³: AWSã¯æ±äº¬ãAzureã¯æ±æ¥æ¬ãªãŒãžã§ã³ãDatadogã¯æ¥æ¬ 詊ç®çµæã¯ä»¥äžã®éãã§ãã ãµãŒãã¹ ã¡ããªã¯ã¹ ãã° åèšïŒæé¡ïŒ Datadog Â¥72,680 Â¥2,150 Â¥74,830 Amazon CloudWatch Â¥6,600ïŒè©³çްã¡ããªã¯ã¹æå¹æïŒ Â¥1,000 Â¥7,600 Azure Monitor Â¥0ïŒã¡ããªã¯ã¹ã¯ãã°æéã«å«ãïŒ Â¥6,300 Â¥6,300 Azure Monitor ã«ã€ããŠã¯ãDCRïŒããŒã¿åéã«ãŒã«ïŒã®èšå®ã«ããä¿åæéãå€åããŸãããããããAWSãšåçšåºŠã®ã³ã¹ãæã«ãªããšäºæ³ãããŸãã ã¯ã©ãŠããã€ãã£ããªç£èŠããŒã«ã¯ã³ã¹ãé¢ã§æãããªåªäœæ§ããããŸãããæ©èœæ§ã䜿ãããããæ¢åç°å¢ãšã®èŠªåæ§ãªã©ãå«ããç·åçãªå€æãéèŠã§ãã Ask the speaker ã«ã€ã㊠Ask the speaker ã§ã¯ãç£èŠèšå®åšãã®ç®¡çã課é¡ã«ãªã£ãŠãããšãã話é¡ã§çãäžãããŸãããå®éãç£èŠåšãã¯GUIã§ã€ãããšã«ãŒã«ãç
©éã«ãªã£ãŠç®¡çã倧å€ãªã®ã§ã³ãŒãã§ç®¡çããã»ããè¯ãã§ãããã³ãŒãã§ç®¡çãããšäœæã³ã¹ããéãã®ãããã£ãŠããŸãã ä»åã®çºè¡šã§ç޹ä»ããã³ãŒãã®ãšã¯ã¹ããŒãæ©èœã¯ã³ãŒãã®äœæã³ã¹ãã倧ããæããäºãã§ããã®ã§ãã¿ãªããããã²è©ŠããŠã¿ãŠãã ããïŒ ãŸãããªã³ãã¬ãã¹ç°å¢ãä»ã¯ã©ãŠãç°å¢ãžã®ç£èŠã«ã€ããŠã話é¡ãããããŸãããçŸç¶ã¯ãŸã ç£èŠã§ããŠããŸããããç°å¢ã®ãªãã¬ã€ã¹ãå¢ããŠãããå¿
èŠã«å¿ããŠç£èŠå¯Ÿè±¡ã«ããäºå®ã§ãïŒ ãŸãšã SRE NEXT 2025ã§ã®çºè¡šãéããŠãç£èŠåºç€ãªãã¬ã€ã¹ã«é¢ããçµéšãç¥èŠãå€ãã®æ¹ãšå
±æã§ããããšãå¬ããæããŸãã ä»åŸãç£èŠåºç€ã®æ¹åãç¶ç¶ãããã®ããã°èšäºãçããã®åèã«ãªãã°å¹žãã§ãã æåŸã«ãSRE NEXTãéå¬ããŠãã ãã£ãéå¶ã»é¢ä¿è
ã®çæ§ã»ããŒã¹ã«æ¥ãŠããã ããçãããçºè¡šãŸã§æ¯ããŠããã仲éãã¡ããã®ä»é¢ä¿ããŠããã ããæ¹ã«å¿ããæè¬ç³ãäžããŸãã ããããšãããããŸããïŒ
ã¯ããã« ããã«ã¡ã¯ïŒãããã£æ ªåŒäŒç€Ÿã®åéã§ãïŒ åŒç€Ÿã¯ 2025幎7æ11æ¥ïŒéïŒãš12æ¥ïŒåïŒã®äºæ¥éã«ããã£ãŠéå¬ããããSRE NEXT 2025ãã«ãŽãŒã«ãã¹ãã³ãµãŒãšããŠããŒã¹ãåºå±ããŸããã ä»åã¯ãSRE NEXT 2025ã§å人çã«èŽè¬ããã»ãã·ã§ã³ã®å
容ã®ç޹ä»ãšåœæ¥ã®ãããã£ããŒã¹ã®æ§åã«ã€ããŠãäŒãããŸãã èŽè¬ã»ãã·ã§ã³ã¬ããŒã åœæ¥ã¯å€ãã®è峿·±ãã»ãã·ã§ã³ãéå¬ãããŠããŸããããæ¬èšäºã§ã¯ç¹ã«åŠã³ãå€ãã£ã2ã€ã®ã»ãã·ã§ã³ã«ã€ããŠã玹ä»ããŸãã è€éãªã·ã¹ãã ã«ãããUser Journey SLOã®å°å
¥ æ ªåŒäŒç€Ÿã¡ã«ã«ãªã®å屿§ã«ãããã客æ§ç®ç·ã®SLOã§ãããUser Journey SLOãã®å°å
¥ã«ã€ããŠã玹ä»ããã ããŸããã ãUser Journey SLOããšã¯ãåã
ã®ãµãŒãã¹ã«ãã©ãŒã«ã¹ããã¡ãªéçºè
ç®ç·ã®SLOãšã¯ç°ãªããã客æ§ã®äœéšã«çŠç¹ãåœãŠãããµãŒãã¹æšªæã®SLOãæããŸãã åå±ããã«ãããšãSREããŒã ã¯ãµãŒãã¹å
šäœã®å質åäžãç®æããŠããŸãããå
šãŠã®ãã€ã¯ããµãŒãã¹ãç£èŠããã®ã¯çŸå®çã§ã¯ãããŸããããã®ãããã³ã¢ãµãŒãã¹ãæ©èœããªããªãã»ã©ã®ãã¯ãªãã£ã«ã«ãªé害ããæ€ç¥ããããšã«æ³šåããŠãããšã®ããšã§ãã ã»ãã·ã§ã³ã§ã¯ããã®éå®³ãæ€ç¥ããããã®å
·äœçãªå®è£
äŸãšããŠãã¯ãªãã£ã«ã«ãªAPIã®æ¢çŽ¢æ¹æ³ãšãã®èªååãé害çºçæã«ããããŠãŒã¶ãŒãžã®åœ±é¿ç¯å²ã®èªåéç¥ãªã©ãæç€ºãããŸããã倿°ã®ãµãŒãã¹ãéçšããåœç€Ÿã«ãšã£ãŠãã倧å€åèã«ãªãå
容ã§ããã ãµãŒãã¹é£æºã®âè¬è§£ãâãå¯èœã«ãã Datadogã«ãã忣ãã¬ãŒã¹å°å
¥ã®äžæ© æ ªåŒäŒç€Ÿã¿ã€ããŒã®åŸ³å¯æ§ã«ããããµãŒãã¹éã®ããã«ããã¯çºèŠã容æã«ããããã®åæ£ãã¬ãŒã·ã³ã°å°å
¥ã«ã€ããŠãã玹ä»ããã ããŸããã è¬æŒã§ã¯ã忣ãã¬ãŒã¹æ
å ±ããµãŒãã¹éã§é£æºãããæ¹åŒãç¹ã«äŒæ¬ãã©ãŒãããã®åãæ¿ããè€æ°ãã©ãŒããããžã®å¯Ÿå¿ãå¯èœã«ããInject/Extractãçšããå®è£
æ¹æ³ãªã©ããã®è©³çްãªä»çµã¿ãŸã§äžå¯§ã«è§£èª¬ãããŠããŸããã ç§èªèº«ã忣ãã¬ãŒã·ã³ã°ã¯æŠå¿µããç¥ããŸããã§ããããå
·äœçãªä»çµã¿ãåŠã¶ããšãã§ãã倧å€å匷ã«ãªããŸããã åœæ¥ã®ããŒã¹åºå±ã®æ§å ç¶ããŠãç§ãã¡ããŽãŒã«ãã¹ãã³ãµãŒãšããŠåºå±ãããããã£ããŒã¹ã§ã®æŽ»åã«ã€ããŠã玹ä»ããŸãã åŒç€Ÿã®ããŒã¹ã§ã¯ãæè¡çãªã玹ä»ã ãã§ãªãããæ¥å Žã®çæ§ãšåæ¹åã®ã³ãã¥ãã±ãŒã·ã§ã³ã楜ããããã®äžå¿äŒç»ãšããŠãããã«ã¢ã³ã±ãŒãã宿œããŸããã åœæ¥ã¯å€ãã®æ¹ã«ãåå ããã ããã·ãŒã«ã®æ°ããçæ§ã®èå³ãé¢å¿ã®æ¹åæ§ããªã¢ã«ã¿ã€ã ã«æããããšãã§ããŸããã ä»åã¯ã©ãçŒãããã®ä»ããã«ãã£ã«å ãããNIFTY Tech Bookããé
åžããŸããããããæ³å®ãã¯ããã«è¶
ãã人æ°ã§ããæ¬æ¥ããããªãããã®ã¬ãã«ã®ãã®ãå·çã§ããã®ã¯æ¬åœã«ãããããšç±å¿ã«ææ³ãäŒããŠãã ããæ¹ãããŸããã ãŸããããã«ã¢ã³ã±ãŒãã®ããããã£ãç¥ã£ãŠããŸããïŒããšãã質åã«ã¯ãéåžžã«å€ãã®æ¹ããç¥ã£ãŠãããã«ã·ãŒã«ã貌ã£ãŠãã ãããäžã«ã¯ãããœã³ã³éä¿¡æä»£ããïŒããšãã£ãå¬ããã声ãããã ããŸããããŸããããããã£ã®ãµãŒãã¹ãã§ã¯ããã¯ãäž»åãµãŒãã¹ã®ã@nifty å
ãã®ç¥å床ãé«ããã³ã³ãã°ãããŒã ããŒãžãµãŒãã¹ãšãã£ãé·å¹ŽæäŸããŠãããµãŒãã¹ã«ãå€ãã®ã·ãŒã«ãéãŸããåŒç€Ÿã®æŽå²ãšçŸåšãæ¹ããŠå®æããçµæãšãªããŸããã ã¢ã³ã±ãŒãã«ãååããã ããçæ§ããããŠããŒã¹ã§è²ŽéãªãæèŠãèãããŠãã ãã£ãçæ§ãæ¬åœã«ããããšãããããŸããã ãããã« ä»åã®ãSRE NEXT 2025ããç§èªèº«ã¯äžæ¥ç®ã®ã¿ã®åå ã§ã¯ãããŸããããã»ãã·ã§ã³ãããŒã¹ã§ã®äº€æµããããŠåœç€Ÿã® 仲äžã«ããã¹ãã³ãµãŒã»ãã·ã§ã³ ã®ãã¹ãŠãéããŠãåŠã³å€ãäžæ¥ãšãªããŸããã ãããŠãä»ç€Ÿã®çæ§ã®æŽ»åããåŸãæ°ã¥ããåèã«ãèªåãã¡ã®SRE掻åãããã«è¯ãããŠããããã§ãã æåŸã«ãªããŸãããçŽ æŽãããåŠã³ã®å ŽãæäŸããŠãã ãã£ãç»å£è
ã®çæ§ãéå¶ã¹ã¿ããã®çæ§ããããŠããŒã¹ã«ãç«ã¡å¯ãããã ãããã¹ãŠã®çæ§ã«ãå¿ãã埡瀌ç³ãäžããŸããããããšãããããŸããã
ã¯ãããŸããŠã ãããã£æ ªåŒäŒç€Ÿã®æµ
å©ã§ãã çŸåšãç§ã¯æ¢åã®ã¯ã©ãŠãç°å¢ããæ°ããã¯ã©ãŠãç°å¢ãžã®ç§»è¡ãããããžã§ã¯ããæšé²ããŠããŸãã ç§»è¡ã®å¯Ÿè±¡ã·ã¹ãã ã«ã¯ãé·å¹Žã®éçšãçµãŠå
éšæ§é ãè€éåããããããããã©ãã¯ããã¯ã¹ããšãªã£ãŠããŸã£ãã·ã¹ãã ãããã€ãå«ãŸããŠããŸãã ä»ã«ãèŠå ã¯ããã®ã§ããããããžã§ã¯ãå
šäœã®ã¹ã±ãžã¥ãŒã«ã«ãé
å»¶ãèŠãå§ããŠããŸããã ãã®ç¶æ³ãã©ãä¹ãè¶ããã¹ãããAWSã®æ¹ãšã®å®äŸçžè«äŒã§ãã®èª²é¡ãå
±æãããšããããã®èšäºã®ã¿ã€ãã«ã«ããæ§æã玹ä»ããã ããã®ã§ãä»åã¯å°å
¥éšåãšå®éã®å©çšã®äºåã«èšäºãåããŠãéãããŸãã å°å
¥ã«ããã£ãŠäºåã«ç¢ºèªãããã€ã³ãã䜵ããŠã玹ä»ããŸãã®ã§ãåæ§ã®èª²é¡ãæ±ããæ¹ã®åèã«ãªãã°å¹žãã§ãã å©çšãããµãŒãã¹ã«ã€ã㊠Cline, Amazon Bedrock Cline VSCodeäžã§åäœããæ¡åŒµæ©èœã§ãããŠãŒã¶ãŒãAIã«æç€ºãåºã察話ã€ã³ã¿ãŒãã§ãŒã¹ãšããŠæ©èœãããã®å
容ãèåŸã«ããAmazon Bedrockãžéä¿¡ãã圹å²ãæ
ããŸãã Amazon Bedrock Clineããã®ãªã¯ãšã¹ããåãåãAWSã®ãµãŒãã¹ã§ããAmazonããµãŒãããŒãã£è£œã®æ§ã
ãªAIã¢ãã«ã®äžãããæå®ãããã¢ãã«ã䜿ã£ãŠæç€ºãåŠçããçµæãClineã«è¿ããŸãã Amazon Q, Amazon Q Developer Amazon Q VSCodeäžã§åäœããæ¡åŒµæ©èœã§ãéçºè
ãçŽæ¥å¯Ÿè©±ããAIã¢ã·ã¹ã¿ã³ãã®çªå£ã§ããã³ãŒãçæãªã©ã®æç€ºãåãä»ãããã®ãªã¯ãšã¹ããAmazon Q Developerã«éããŸãã Amazon Q Developer Amazon Q Developerã¯ããªã¯ãšã¹ãã«å¿ããŠæé©ãªåºç€ã¢ãã«ãåŒã³åºããŠåŠçãå®è¡ããŸãã AIå©çšã«ãããæ
å ±æŒæŽ©ãç®çå€å©çšã®ãªã¹ã¯ 瀟å
ãœãŒã¹ã³ãŒããããŒã«ã«å
¥åããéããã®ããŒã¿ãå€éšã®AIã¢ãã«ã®åŠç¿ã«å©çšãããããæå³ããå€éšã«å
±æããããããªããã確èªããŸããã çµè«ããèšããšä»åã®æ§æã§ããã°AIã¢ãã«ã®åŠç¿ã«å©çšãããŸããã Cline(VS Codeæ¡åŒµæ©èœ) Clineã¯ãAPIãããã€ããŒãšããŠãAmazon Bedrockããéžæããå ŽåããŠãŒã¶ãŒã®ããŒã¿ïŒãœãŒã¹ã³ãŒããããã³ããïŒãèªç€ŸãµãŒããŒãçµç±ããããçŽæ¥AWSã®ãšã³ããã€ã³ãã«éä¿¡ããä»çµã¿ã«ãªã£ãŠããŸãã ããã¯Clineã®å©çšèŠçŽã«ãæèšãããŠããããŠãŒã¶ãŒã管çããã€ã³ãã©ã¹ãã©ã¯ãã£ïŒAmazon Bedrockãªã©ïŒçµç±ã§ãã¹ãŠã®ã¢ãã«åŒã³åºããæç€ºããå ŽåãClineã¯ãŠãŒã¶ãŒã®å
¥åããŒã¯ã³ãåºåããŒã¯ã³ãåºç€ãšãªãã³ãŒãããŸãã¯ãã®ä»ã®ãŠãŒã¶ãŒã³ã³ãã³ããåä¿¡ãŸãã¯ä¿åããªãããšèšèŒãããŠããŸãã Cline Terms of Service (ã»ã¯ã·ã§ã³3 “User Content”) Amazon Bedrockã®ããŒã¿åãæ±ãã«ã€ã㊠AWSã¯ãAmazon Bedrockã«éä¿¡ããã顧客ã®ã³ã³ãã³ã(ãœãŒã¹ã³ãŒããããã³ãããçæçµæ)ããããŒã¹ã¢ãã«ã®æ¹åïŒåŠç¿ïŒã«ã¯äœ¿çšããããããªãã¢ãã«ãããã€ããŒ(Anthropic瀟ãªã©)ãšãå
±æããªãããšãå
¬åŒã«æèšããŠããŸãã Amazon Bedrock FAQs Amazon Bedrock Security and Compliance Amazon Q Developer AWSã¯å
¬åŒFAQããŒãžã§ãProãã©ã³ã®ããŒã¿ä¿è·ã«ã€ããŠä»¥äžã®ããã«æèšããŠããŸãã Pro Tier ã§ Amazon Q Developer ã«ã¢ã¯ã»ã¹ãããŠãŒã¶ãŒã®ã³ã³ãã³ããããµãŒãã¹ã®æ¹åããåºç€ãšãªãåºç€ã¢ãã« (FM) ã®ãã¬ãŒãã³ã°ã«å©çšãããããšã¯ãããŸããã https://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/data-protection.html (ãã©ã€ãã·ãŒã®ã»ã¯ã·ã§ã³ãAmazon Q Developer ã¯ã¢ãã«ã®ãã¬ãŒãã³ã°ã«ç§ã®ã³ã³ãã³ãã䜿çšããŸãã?ã) Cline + Amazon bedrock ã®å°å
¥ IAMãŠãŒã¶ãŒã®äœæãšã¢ã¯ã»ã¹ããŒã®ååŸ ãããžã¡ã³ãã³ã³ãœãŒã«ãããIAMãã«ã¢ã¯ã»ã¹ãããŠãŒã¶ãŒãäœæããŸãã ã¢ã¯ã»ã¹ããŒãäœæããããŒãšã·ãŒã¯ã¬ããããŒãååŸããŸãã ãŸããäœæãããŠãŒã¶ãŒã«ã«ã¹ã¿ã ããªã·ãŒãã¢ã¿ããããŸãã (ãå©çšã®ç°å¢ã«ããããŠé©å®å€æŽãã ãã) ã¢ãã«ã¢ã¯ã»ã¹ã®æå¹å ä»å㯠Amazon Bedrock ã§ Claude Sonnet 4 ã䜿çšããŸãã 䜿çšå¯èœãªã¢ãã«ã¯ãªãŒãžã§ã³ã«äŸåããŸãããClaude Sonnet 4 ãå©çšå¯èœãªããªã¬ãŽã³ãªãŒãžã§ã³(us-west-2)ãã«åãæ¿ããŠãããŸãã ãããžã¡ã³ãã³ã³ãœãŒã«ãããAmazon Bedrockãã«ã¢ã¯ã»ã¹ããã¡ãã¥ãŒäžéšã«ãããã¢ãã«ã¢ã¯ã»ã¹ããã¯ãªãã¯ããŸãã ãç¹å®ã®ã¢ãã«ãæå¹ã«ãããã®ãã¿ã³ãã¯ãªãã¯ãããæ¬¡ãžããã¿ã³ãæŒããŸãã å¿
èŠãªæ
å ±ãå
¥åãããæ¬¡ãžããã¿ã³ãæŒããŸãã æåŸã«å
¥åããå
容ã確èªããŠéä¿¡ããŸãã ã¢ã¯ã»ã¹ãä»äžããããŸã§æ°ååŸ
ã¡ãŸãã Clineã®ã€ã³ã¹ããŒã«ãšèšå® Visual Studio Codeãéããæ¡åŒµæ©èœãããClineããã€ã³ã¹ããŒã«ããŸãã Clineã®æ¡åŒµæ©èœãéãããUse Your Own API KeyããéžæåŸã以äžã®èšå®ãå
¥ããŸãã ãAWS Access KeyããšãAWS Secret Keyãã«ã¢ã¯ã»ã¹ããŒã®æ
å ±ãå
¥å Use cross-region inference ã«ãã§ã㯠(æ®æ®µéçºããŠãããªãŒãžã§ã³ã§ã䜿ãããAIã¢ãã«ãæäŸãããŠããªãå Žå) Use Prompt caching ã«ãã§ã㯠(å¿çéåºŠãæ±ããå Žåãã³ã¹ããæãããå Žå) Modelã¯ãanthropic.claude-sonnet-4-20250514-v1:0ããéžæ ããã§ãCline + Amazon bedrockãåŽã®å°å
¥ã¯å®äºã§ãã Amazon Q + Amazon Q Developer ã®å°å
¥ IAM Identity Center ãŠãŒã¶ã®äœæ IAM Identity Centerã§ãµãã¹ã¯ã©ã€ã察象ã®ãŠãŒã¶ãäœæããŸãã Organizationç°å¢äžã©ããã§æé ãç°ãªããŸãã®ã§ãããã§ã¯è©³çްã¯å²æãããŠããã ããŸãã ãå©çšã®ç°å¢ã«ããããŠãAWSå
¬åŒããã¥ã¡ã³ããªã©ãåèã«ãŠãŒã¶ãŒã®äœæãé²ããŠãã ããã Amazon Q Developer ãããã¡ã€ã«äœæ Amazon Q Developer ãããã¡ã€ã«ãäœæããVS Code ã§ Amazon Q Developer ã«ã¢ã¯ã»ã¹ããããã®ãã¹ã¿ãŒãããŒãž URLããååŸããŸãã ãããžã¡ã³ãã³ã³ãœãŒã«ãããAmazon Qãã«ã¢ã¯ã»ã¹ããAmazon Q Developer ã®äœ¿çšãéå§ããŸãã ãµãã¹ã¯ã©ã€ã察象ã®ãŠãŒã¶ã®Eã¡ãŒã«ãå
¥åãããç¶è¡ããã¯ãªãã¯ããŸãã Amazon Q Developer ãããã¡ã€ã«ãäœæããŸãã (衚瀺ãããŠãããããã¡ã€ã«åã¯ããã©ã«ãã«ãªããŸã) ãããã¡ã€ã«ã®äœæãå®äºãããšä»¥äžã®ç»é¢ã«ãªãã®ã§ããèšå®ããã¿ã³ãæŒããšã»ããã£ã³ã°ç»é¢ã«é·ç§»ããã®ã§ããã§ãã¹ã¿ãŒãããŒãž URLããååŸããŸãã Amazon Q ã®ã€ã³ã¹ããŒã«ãšèšå® Visual Studio Codeãéããæ¡åŒµæ©èœãããAmazon Qããã€ã³ã¹ããŒã«ããŸãã ã€ã³ã¹ããŒã«åŸããµã€ã³ã€ã³ã®éžæç»é¢ã§ãCompany accountããéžæããŸãã ååŸãããã¹ã¿ãŒãããŒãž URLãã®å
¥åãšãRegionã«ã¯ IAM Identity Center ãååšãããªãŒãžã§ã³ãéžæããŸãã ãã¢ã¯ã»ã¹ã®èš±å¯ããã¯ãªãã¯ãããšRequest approved ã®ç»é¢ãéããŸãã 以äžã®æ§ã« VScode ã§Amazon Q ãå©çšå¯èœã«ãªããŸãã ããã§ãAmazon Q + Amazon Q DeveloperãåŽã®å°å
¥ã¯å®äºã§ãã æ¬¡åã¯å®éã®å©çšãšããããã®æ§æã«ããéãã«ã€ããŠè§ŠããŸãã
ã¯ããã« ããã«ã¡ã¯ãNIFTY engineering ããã°éå¶ããŒã ã§ãã ããã°éå¶ããŒã ã§ã¯ããããã£ã®ãšã³ãžãã¢ã«é¢ããæ
å ±ãåºãäžéã«çºä¿¡ããæŽ»åãè¡ã£ãŠããŸãã æ¬èšäºã§ã¯ãååã®èšäºããæ°ããè¡ã£ã掻åã«ã€ããŠã玹ä»ããŸãã ååã®èšäºã«ã€ããŠã¯ã ãç¥20,000MAUïŒãNIFTY engineering ããã°éçšããŒã ã®æŽ»åãŸãšããŠã¿ã ãã確èªãã ããã åã
åã®èšäºã¯ã ãç¥10,000MAUïŒãNIFTY engineer blogéçšããŒã ã®æŽ»åãŸãšããŠã¿ã ãã確èªãã ããã ããã§ãæ¹ããŠããã°éå¶ããŒã ã«ã€ããŠå°ã玹ä»ãããŠãã ããã ããã°éå¶ããŒã ã«ã€ã㊠ããã°éå¶ããŒã ã¯ãåŒç€Ÿã®æ¡çšããã©ã³ãã£ã³ã°ããŠããã¯ãŒãã³ã°ã°ã«ãŒãã®ãã¡ã®1ãµãããŒã ãšããŠæŽ»åããŠããŸãã çŸåšãã¡ã³ããŒã¯4人ã§ãå
šå¡å°ä»»ã§ã¯ãªãèªèº«ã®æ¥åã®å
Œåã§æŽ»åããŠããŸãã ããã§ã¯æ¬é¡ã«å
¥ããŸãã ä»åã®æŽ»åçŽ¹ä» NotionããWordPressã«èªå飿ºãã©ã°ã€ã³è¿œå ååã®èšäºã§æåŸã«ã玹ä»ããNotion飿ºã«ã€ããŠã瀟å
ã§å©çšãéå§ããŸããã æ¬ãã©ã°ã€ã³ã¯ãNotionã§æžãããã®ããWordPressäžã«èªåã§é£æºããŠãããŸãã ãŸãæ¬æäžå
ã®ç»åããWordPressã®èšäºå
¬éãããšãã«å¿
èŠãªã¢ã€ãã£ããç»åããã¿ã°ã«ã€ããŠãNotionã®DBã§èšå®ãããšãèªåã§WordPressã«åæ ããŠãããŸãã ããã°è¬ç¿äŒéå¬ ããã°å·çã«é¢ããã¢ã³ã±ãŒããæ¯å¹Žããã°éå¶ããŒã ã§ãšã³ãžãã¢åãã«å®æœããŠããŸãã ãã¡ãã®ã¢ã³ã±ãŒãã§ãWordPressã®æäœæ¹æ³ãæç« ã®æžãæ¹ãå
¬éãŸã§ã®ãããŒãå·çã®ã¬ã€ãã©ã€ã³ãããããªããšãã£ã声ãå€ãå¯ããããŠããŸããã ããã§ãããã°éå¶ããŒã ã§ã¯ãã¢ãçšããããã°å·çã®è¬ç¿äŒã宿œããããšã«ããŸããã ããã°è¬ç¿äŒã§ã¯ããããã£ã§ã®ããã°å·çã®ä»æ¹ããå
¬éæ¹æ³ããŸãåè¿°ã®Notionã®WordPress飿ºã®äœ¿ãæ¹ãå®éã«ãã¢ããªãã説æããå®éã®å·çã€ã¡ãŒãžããã£ãŠããã ãããã«ããŸããã ãã®è¬ç¿äŒã«ã¯ãåžæè
ã®ä»ã«ãå
茩ãèŠç¿ã£ãŠããããèšäºãå·çããŠã»ãããšããæãã蟌ããŠããšã³ãžãã¢ã®æ°äººã«ãåå ããŠããããŸããã ã¢ã³ã±ãŒãã§ã¯ãè¬ç¿äŒèªäœã®æºè¶³åºŠã¯é«ããç©æ¥µçã«æžããŠãããããäœåãããã°æžããŠãããããšãã£ã声ã倿°å¯ããããã®ã§ãä»åŸãç¶ç¶çã«å®æœãæ€èšããããšæããŸãã ãªã¬ãŒããã°ã®ç¶ç¶ ä»åãååã«åŒãç¶ãããªã¬ãŒããã°ã宿œããŸããã ä»åã®ãªã¬ãŒããã°ïŒ ããªã¬ãŒããã°äŒç»ç¬¬äžåŒŸãCI/CDãªã¬ãŒããã°ããããŸãïŒ ãŸãä»åŸã以äžã®ãªã¬ãŒããã°ã®å®æœãäºå®ããŠããŸãã ä»åŸã®ãªã¬ãŒããã°ïŒ25幎æ°åãªã¬ãŒããã°ïŒè¿æ¥äžïŒetc ãã®ä»çްããæ¹å ããã°éå¶ããŒã ã§ã¯ãåè¿°ã®ããã°ã¢ã³ã±ãŒãã§äœ¿ãã¥ããç¹ãªã©ãå¯ããããŠãããã®ãªã©ããã©ã°ã€ã³ã远å ãããããœãŒã¹ãä¿®æ£ãããããŠãæ¥ã
æ¹åããŠãã£ãŠããŸãã çŽè¿ã§ããšãã·ã³ã¿ãã¯ã¹ãã€ã©ã€ãããããã«ãããšããæèŠããã£ãã®ã§ããããæ¹åãããã©ã°ã€ã³ãšããå°å
¥ãããªã©ã宿œããŸããã ãããã« æ¬èšäºã§ã¯ãæè¿ã®ããã°éå¶ããŒã ã®æŽ»åãã玹ä»ããããŸããã ãã¡ãã®æŽ»åã®ã玹ä»ããçæ§ã®ã圹ã«ç«ãŠãã°å¹žãã§ãã
ã¯ããã« ããã«ã¡ã¯ãæ·»é éŒç¢ã§ãã ãããã£ã§ã¯ãã€ã³ããŒãœãŒã¹æŽ»åãæŽ»çºçã«è¡ãããŠããŸãã ãã®äžã§ãç§ã¯ä»å¹Žããã€ã³ããŒãœãŒã¹ãçå
ããŠåºããŠããæŽ»åã«åå ããŠããŸãã æ¬èšäºã§ã¯ãã€ã³ããŒãœãŒã¹ã瀟å
ã«åºããŠããæŽ»åã®äžç°ãšããŠã第2åã³ã³ããªãã¥ãŒãã詊ãäŒâ»1ãå
æ¥éå¬ããã®ã§ããã¡ãã«ã€ããŠå·çããããšæããŸãã â»1 第1åã³ã³ããªãã¥ãŒãã詊ãäŒã¯ãå»å¹Žã®12æã«éå¬ããŸããã ã³ã³ããªãã¥ãŒããšã¯ïŒ ãŸãã³ã³ããªãã¥ãŒããšã¯ããªãŒãã³ãœãŒã¹ãããžã§ã¯ããã€ã³ããŒãœãŒã¹ãããžã§ã¯ããªã©ã«ãããŠãã³ãŒãã®ä¿®æ£ããã°ã®ä¿®æ£ãæ©èœè¿œå ãããã¥ã¡ã³ãã®è¿œå ãªã©ãäœããã®åœ¢ã§éçºã«è²¢ç®ããããšãæããŸãã ä»åã¯ãã®ã³ã³ããªãã¥ãŒãã詊ããŠããããšããäŒã«ãªããŸãã ã³ã³ããªãã¥ãŒãã詊ãäŒã«ã€ã㊠ãŸãã³ã³ããªãã¥ãŒãã詊ãäŒãéå¬ããã«ããããGood First Issueããããããããæ¯èŒçè§ŠããããããŒã«ããããžã§ã¯ããæ¢ããŸããã ä»åã¯ã以忬ããã°ã§ç޹ä»ããã ãããã ããšã myfriendGPT ãã®2ã€ããã³ã³ããªãã¥ãŒããäœéšããŠããããªããžããªãšããŠéžå®ãããã®2ã€ã®ãªããžããªã®ãã©ã¹ãããã³ããã¿ãŒã«ãååããŠããããŸããã æ¬¡ã«ã瀟å
ã®ãšã³ãžãã¢ã®Slackãã£ã³ãã«ã§ãåå è
ãåéããŸããã çµæãä»åã¯6åã«åå ããŠããã ããŸããã ~~ ã³ã³ããªãã¥ãŒãã詊ãäŒåœæ¥ ~~ ãŸãå§ãã«ãã€ã³ããŒãœãŒã¹ã«ã€ããŠã®èª¬æãšãã³ã³ããªãã¥ãŒããªã©ãããããã®ã€ã³ããŒãœãŒã¹ã¬ã€ãã©ã€ã³ãåŒç€Ÿã§ã¯äœæãããŠããã®ã§ããã¡ããããšã«åº§åŠã宿œããŸããã ãã®åŸãåè¿°ã®ãã©ã¹ãããã³ããã¿ãŒã®ååã®ããšãã³ã³ããªãã¥ãŒãã®æµããå®éã«äœéšããŠããããã³ãºãªã³ãåå è
ã«çµéšããŠããããŸããã åå è
ããã®ææ³ ãã®äŒã®å®æœåŸãåå è
ã«ã¢ã³ã±ãŒãããšã£ããšããã以äžã®çµæã«ãªããŸããã ãŸã以äžã®ãããªã³ã¡ã³ããããããŸããã ã€ã³ããŒãœãŒã¹ãã³ã³ããªãã¥ãŒãããæµããå¿æ§ãã«ã€ããŠçè§£ã§ããã äžéãã®æµããå®éã«èŠãããšãã§ããŠããã£ãã§ãã ã³ã³ããªãã¥ãŒãã®æé ãæã£ãŠãããããé£æåºŠã¯äœããŠããããããæããŸããã ä»åŸã«ã€ã㊠瀟å
ã«ã€ã³ããŒãœãŒã¹ãåºããŠãããããä»åŸã宿çã«ã³ã³ããªãã¥ãŒãã詊ãäŒã¯éå¬ããŠããããšæããŸãã ãŸãçµç¹çãªè©±ã§ãããŸããšããããã£ã§ã¯ InnerSource Commons ãšããã³ãã¥ããã£ã«åå ããæ¥æ¬ã®ã€ã³ããŒãœãŒã¹æŽ»åãåºããŠããæŽ»åã«ãååããŠããŸãã InnerSource Commonsã® Connpass ã®åå ããåŸ
ã¡ããŠããŸãã ãã¡ããããããã£ã® Connpass åå ããããããé¡ãããŸãã
ã¯ããã« ããã«ã¡ã¯ããããã£ã®äžŠæšã§ãã ä»åã¯ããAmazon CloudFrontã+ãAmazon S3ãã§æ§æãããŠãããµã€ãã®ãã£ãã·ã¥ãåé€ããæ¹æ³ããŸãšããŸããã æé AWSãããžã¡ã³ãã³ã³ãœãŒã«ã§ããã£ãã·ã¥åé€ã®å¯Ÿè±¡ãšãªãCloudFrontãéžæããŸãã ããã£ãã·ã¥åé€ãã¿ããéžæããããã£ãã·ã¥åé€ãäœæããæŒäžããŸãã ãªããžã§ã¯ããã¹ã«S3ãã±ããåãå
¥åãããã£ãã·ã¥åé€ãäœæããæŒäžããŸãã ãããã« ãä¿®æ£ããã¯ããªã®ã«ãªããåæ ãããŠããªãâŠããšããå Žåã¯ãã£ãã·ã¥ãåå ãããããŸããã ãã®ãããªå Žåã¯ããã²ä»åã®æé ã§ãã£ãã·ã¥ã¯ãªã¢ã詊ããŠã¿ãŠãã ããã
ã¯ããã« å幎è¿ãããã°ããµãã£ãŠããå®®æ¬ã§ããæèããŠããªããšããªããªãæžããªãã§ããâŠâŠã ä»åã¯Terraformã§Nodeã©ã³ã¿ã€ã ã®AWS Lambdaãè€æ°åæã«äœæããããšãããšããééããåé¡ãšãã®è§£æ±ºçã«ã€ããŠã玹ä»ããããšæããŸãã åé¡ã®çºçããæ§æ æ¥åã§AWSãå©çšããéã¯åºæ¬çã«Terraformãå©çšããŠãããLambdaã®ç®¡çãTerraformã§å®æœããŠããŸãããã ãLambdaã¯ã³ã³ãã圢åŒã§ã¯ç¡ããæãªããã®ã³ãŒããzipã§åºããŠãããã€ãã圢åŒã«ããŠããŸããã ãã®Lambdaã¯Node.jsã®ã©ã³ã¿ã€ã ãå©çšããŠãããã³ãŒãèªäœã¯TypeScriptã§éçºããŠãããã€æã«terraform_dataãªãœãŒã¹ã䜿ã£ãŠãã«ãããŠããŸãããŸããããã±ãŒãžç®¡çã«ã¯yarn v1ãå©çšããŠããŸããã resource "terraform_data" "build_code" { provisioner "local-exec" { working_dir = "${path.module}/app" command = <<EOT #!/bin/sh # äŸåé¢ä¿ã®ã€ã³ã¹ããŒã« yarn install # ãã«ãã³ãã³ãã®å®è¡ yarn build EOT } } ããåäœã¯æ£åžžã«åäœããŠããã®ã§ããã1ã€ã®ãããžã§ã¯ãå
ã§åæ§ã®æ§æã®Lambdaè€æ°ãããã€ããããšãããšãã yarn install ã®ã¿ã€ãã³ã°ã§ãšã©ãŒãçºçããããã«ãªã£ãŠããŸããŸããã error https://registry.yarnpkg.com/<ããã±ãŒãžãã¹>: Integrity check failed for "<ããã±ãŒãžå>" (computed integrity doesn't match our records, got "<ããã·ã¥>") terraform_dataå士ã«äŸåé¢ä¿ããªãããTerraformäžã§åæã« yarn install ãåäœããããããããã«ãã®2ã€ã® yarn install ã§ã€ã³ã¹ããŒã«ããããã±ãŒãžã«åäžããã±ãŒãžã®ç°ãªãããŒãžã§ã³ãå«ãŸããŠããããããšã©ãŒãçºçããŠããŸã£ãããã§ãã è§£æ±ºæ¹æ³ ä»å詊ããéãã§ã¯ã次ã®2çš®é¡ã®æ¹æ³ã©ã¡ããã§åé¿ã§ããŸããã yarnã®å®è¡æã«ãã£ãã·ã¥ãã£ã¬ã¯ããªãæå®ãã yarn v1ã®å©çšããããŠpnpmãyarn v4ã«ç§»è¡ãã yarnã®å®è¡æã«ãã£ãã·ã¥ãã£ã¬ã¯ããªãæå®ãã yarnã¯ããã±ãŒãžã®ã€ã³ã¹ããŒã«æã«ã次å以éã®ã€ã³ã¹ããŒã«ãé«éã«ãããããã£ãã·ã¥ãä¿åããŸãããããyarn v1ã ãšã該åœã®ãããžã§ã¯ãã§ã¯ãªãPCå
šäœã®ã°ããŒãã«ãªãã£ãã·ã¥ãšããŠä¿åããŠããŸãã ä»åã¯åäžããã±ãŒãžã®å¥ããŒãžã§ã³ãããã«ããã£ãŠåæã«installããããšããããããã®ãã£ãã·ã¥åšãããããããªã£ãããšãçŽæ¥ã®åå ã§ããã ãã®è§£æ±ºçãšããŠã¯ãå®è¡æã«yarnã®ãã£ãã·ã¥ãã£ã¬ã¯ããªãæå®ããããšã§å¯ŸåŠã§ããŸãã resource "terraform_data" "build_code" { provisioner "local-exec" { environment = { # ãã£ãã·ã¥ãã©ã«ããæå® YARN_CACHE_FOLDER = ".yarn-cache" } working_dir = "${path.module}/app" command = <<EOT #!/bin/sh # äŸåé¢ä¿ã®ã€ã³ã¹ããŒã« yarn install # ãã«ãã³ãã³ãã®å®è¡ yarn build EOT } } yarn v1ã®å©çšããããŠpnpmãyarn v4ã«ç§»è¡ãã ããäžã€ã®è§£æ±ºçãšããŠãyarn v1ã®å©çšããããããšããããŸãã åãyarnã§ãv4ã ãšã°ããŒãã«ãã£ãã·ã¥åšãã®åäœãæ¹åãããŠããããããåããããžã§ã¯ãã§ãåé¡ã¯çºçããŸããã§ããããŸããpnpmã§ã詊ããŠã¿ãŸããããããåé¡ã¯çºçããŸããã§ããã ææ°ã®ããã±ãŒãžç®¡çããŒã«ã ãšãããã±ãŒãžå士ã®äŸåé¢ä¿ã®ããŒãžã§ã³å·®åã®åé¡ãªã©ã解決ããŠãããããããã¡ãã®æ¹ãã¹ããŒããªæ°ã¯ããŸãããã£ãšããããã±ãŒãžç®¡çããŒã«ãç§»è¡ãããšãªããšè¶³ãéãã®ãäºå®ã§ããâŠâŠã å°ãªããšããä»åŸæ°ããNode.jsã®ãããžã§ã¯ããå©çšããå Žåã¯ãææ°ã®ããã±ãŒãžç®¡çããŒã«ãå©çšãããã§ããã ãããã« ä»åã¯ãTerraformããè€æ°ã®Node.jsã®ãããžã§ã¯ãããã«ãããããšããéã«çºçãããšã©ãŒã«ã€ããŠç޹ä»ããŸãããå¿
ãããçºçããåé¡ã§ã¯ãªããšæããŸãããããyarn v1ãå©çšããŠããŠäŒŒããããªèªäœãçºçããéã«åèã«ãªãã°å¹žãã§ãã åè Provisioner: local-exec | Terraform | HashiCorp Developer yarn cache | Yarn
ã¯ããã« ããã«ã¡ã¯ãæ°å1幎ç®ã®å€§æã§ãã 6æ27æ¥ã«éå¬ãããDNS Summer Day 2025ã«å
茩瀟å¡2åãšå
±ã«åå ããŠããŸããã ãã®ææ³ããŸãšããŠãããŸãã DNS Summer Dayãšã¯ https://www.dnsops.jp/event20250627.html ä»å¹Žã¯æ¥æ¬æ©ã®TKPã¬ãŒãã³ã·ãã£PREMIUMã§éå¬ãããŸããã ã€ãã³ãã®æŠèŠã«ã€ããŠã¯ãconnpassã«ä»¥äžã®ãããªèšèŒããããŸãã DNSã¯å€ãã®éèŠãªåœ¹å²ãæã€ã代æ¿ãšãªããã®ããªãã€ã³ãã©ãµãŒãã¹ãšãªã£ãŠããŸããäžæ¹ã§ãDNSã®éçšã«ã€ããŠã¯æš©åšåŽã«ããªãŸã«ãåŽã«ãååãªé¢å¿ãæãããŠããããå¿
èŠãªäºç®ã人æãªã©ããã¡ããšå²ãåœãŠãããŠãããšã¯èšããªãç¶æ³ãçžå€ãããç¶ç¶ããŠããŸãããã®ç¶æ³ãéã¿ãDNSã®åºæ¬çãªè©±ããçªã£èŸŒãã 話ãŸã§ã«ããŒããã€ãã³ããéå¬ããŸãã https://dnsops.connpass.com/event/358220/ ã€ãã³ãã®å¿åã«ã¯ããã£ã³ã»ã«åŸ
ã¡ãåºãã»ã©ã®åå åžæè
ãããŸããã äŒå Žã®æ§å åºãã®äŒè°å®€ãæºåžã«ãªãã»ã©ã®çæ³ã¶ãã§ããã connpasså¿åè
æ°ã®éããªã140人ã»ã©ã ãšæããŸãã ããŸãå
èŠããæãããªããè¯ãé°å²æ°ã®ã³ãã¥ããã£ãšãã£ãé°å²æ°ã§ããã ãŸããåŸæ¹ã«ã¯ã¹ãã³ãµãŒã®ããŒã¹ããããŸããã ãªãåå ããã®ã ç§ã¯OJTã§ãISPãªãã¬ãŒã·ã§ã³ãµãããŒã ãã«é
å±ãšãªããŸããããã®ããŒã ã§ã¯DNSãµãŒãã®éçšç®¡çãæ
åœããŠããŸãã ISPãªãã¬ãŒã·ã§ã³ãµãããŒã ã®ç޹ä»ã¯ãã¡ã ãã€ã³ã¿ãã¥ãŒããããã£ã®ISPãªãã¬ãŒã·ã§ã³ããŒã ã«ã€ããŠãISPåç·šã ãã€ã³ã¿ãã¥ãŒããããã£ã®ISPãªãã¬ãŒã·ã§ã³ããŒã ã®éå»ãšæªæ¥ã«ã€ããŠãISPåŸç·šã ããŒã ãšããŠã¯DNSéçšã«åœ¹ç«ã€æ
å ±åéã®ããããŸãç§å人ãšããŠã¯DNSãžã®çè§£ãæ·±ããããã«åå ããŸããã åå ããŠã¿ãŠã®ææ³ ç¹å®ã®ãœãããŠã§ã¢ã®ä»æ§ãªã©è©³çްãªè©±ãããæ¯èŒççè§£ãããããŠãå®è·µçãªå
容ãŸã§ãå€ãã®åŠã³ãåŸãããšãã§ããŸããã äžã«ã¯ãŠãŒã¢ã¢ããµããçºè¡šããããDNSã®ã¿ãªããä»åŸã®ãã¬ãŒã³ããŒã·ã§ã³ã®åèã«ããªããŸããã ãã®ãããªã€ãã³ãã«ã¯ã»ãšãã©åå ããããšããªãã£ãã®ã§ãããä»ãŸã§åå ããŠããªãã£ãããšããã£ãããªããšæããã»ã©å
å®ããåŠã³ã®å Žã§ããã ä»åã¯ããŒã¹ãåãã®ãå°ãé æ
®ããŠããŸã£ãã®ã§ã次åã¯ç©æ¥µçã«åå ããããšæããŸãã åŠã³ DNSã«ã€ããŠã¯ååŠè
ã®ãããèŠèããããã®å
šãŠãæ°ããªåŠã³ã§ããããã®äžããç¹ã«å°è±¡ã«æ®ã£ããã®ãããã€ãã玹ä»ããããšæããŸãã åããŠâã€ãã³ãâã«åå ããŠã¿ãŠ åè¿°ã®éããç§ã¯ãããŸã§ãã®ãããªã€ãã³ãã«åå ããããšããããŸããã§ããã ããããåããŠåå ããŠã¿ãŠæ¬¡ã®ãããªæ°ã¥ãããããŸããã æã£ããããçè§£ã§ãã話ãå€ãã£ã æŽæŠã®çè
ã®éãŸãã§ã話ããšãŠãé£ãããããªã€ã¡ãŒãžããããŸããããã¡ããããã®ãããªå
容ã®ãã®ããããŸãããã倧åã¯ããçšåºŠã®äºåç¥èãããã°çè§£ã§ãããã®ã§ããã é°å²æ°ãè¯ãã£ã ãã£ãšå
èŠããè¶
çé¢ç®ãªçºè¡šã®ã€ã¡ãŒãžããããŸãããã§ããå®éã¯ããŠãŒã¢ã¢ã«ããµããçºè¡šãå€ãã£ãã§ãã ãã£ãšå£°ããããŠã¿ãŠãè¯ãã£ã åå ããŠã¿ããšãããŒã¹ã®æ¹ãšã§ãã£ãããä»ã®åå è
ãšäŒè©±ããŠãã人ãå€ãããŸãããä»åã¯ããªãé æ
®ããŠããŸã£ãã®ã§ããã£ãšç©æ¥µçã«ããŠãè¯ãã£ãããªãšæããŸããã ãã¡ã€ã³ã®å»æ¢ã«ã€ã㊠ãã¡ã€ã³ã®å»æ¢ã«ã¯æ
éã«ãªããªããã°ãªããªããšããããšãåŠã³ãŸããã 廿¢ããåŸã«ããããããã£ãã**ãããæªçšãããå¯èœæ§ãèæ
®ãããã®ãã¡ã€ã³ãã©ã®ããã«éçšãããŠãããã®èšé²ãååã«èãŸããŸã§ä¿æãã¹ããšã®ããšã§ãã ã€ãŸãã廿¢åŸããã°ããã³ã¹ããããããšããããšã§ããã å°æ¥ããããæ°èŠãã¡ã€ã³ã®ååŸã廿¢ã®è©±ãåºãéã«ã¯ããã®è©±ãæãåºããŠæ€èšããããšæããŸãã ** ãããããã£ãã: ä»è
ãæŸæ£ãããã¡ã€ã³ãåååŸå¯èœã«ãªã£ãç¬éã«ååŸããããšãè©æ¬ºãªã©ã«æªçšãããå¯èœæ§ãããã DNS as Codeã«ã€ã㊠ä»åã®ã€ãã³ãã§ã¯ãDNSControlãoctoDNSãšãã£ã”DNS as Code”ã«é¢ããã»ãã·ã§ã³ããããŸããã DNS as Codeã¯åããŠè§ŠããæŠå¿µã§ãéåžžã«è峿·±ãæããŸããããã®ææ³ã¯ä»åŸã®DNSéçšã«ããªã圹ç«ã€ã®ã§ã¯ãªãããšæåŸ
ããŠããŸãã ãŸããDNSã«ã¯æ¯èŒç硬掟ãªã€ã¡ãŒãžããããŸããããDNS as Codeãšçµã¿åãããŠéçšããããšã§ããã®ã€ã¡ãŒãžãããªãå€ããã ãããšæããŸããã ã©ãããæ
å ±ãä»å
¥ããã ç»å£è
ã®æ¹ã
ã詳ããã®ã¯ãã¡ããã§ãããã©ãããæ
å ±ãä»å
¥ããŠããã®ããæ°ã«ãªããŸããã ã€ãã³ãå
šäœãéããŠè©±ãèããŠãããšãè«æãRFCãICANNã®ã¬ããŒããªã©ãåç
§ããŠããããšãããããŸããã ãŸãšã DNS Summer Day 2025ã«åå ããŸããã ã€ãã³ããéããŠãDNSã«ã€ããŠå€ãã®ç¥èãšåŠã³ãåŸãããšãã§ãããŸããã ä»åã¯DNSã«è©³ãããªãç¶æ
ã§ã®åå ã§ããããä»åŸç¥èãæ·±ããããšã§ããã«çè§£ãé²ã¿ãããé¢çœãæããããã ãããšæããŸãããããããåŠç¿ãç¶ããæ¥å¹Žããã²ãšãåå ããããšæããŸãã
ãããã£æ ªåŒäŒç€Ÿã¯ã2025幎7æ11æ¥ïŒéïŒã 7æ12æ¥ïŒåïŒã«éå¬ãããSRE NEXT 2025ã«ãŽãŒã«ãã¹ãã³ãµãŒãšããŠåè³ããŸãã SRE NEXTã¯ããµã€ããªã©ã€ã¢ããªãã£ãšã³ãžãã¢ãªã³ã°ïŒSREïŒã«é¢ããæ¥æ¬æå€§çŽã®ã«ã³ãã¡ã¬ã³ã¹ã§ãã ãããã£ã¯éå»ã«ãæ¬ã€ãã³ãã«åè³ããŠãããSREåéã®çºå±ã«è²¢ç®ã§ããããšã倧å€å¬ããæããŸãã SRE NEXT 2025ã«é¢ãã詳现ã¯ãå
¬åŒãµã€ãã芧ãã ãããçæ§ã®ãè¶ãããåŸ
ã¡ããŠãããŸãïŒ å
¬åŒãµã€ã https://sre-next.dev/2025/ ã¹ãã³ãµãŒã»ãã·ã§ã³ã«ç»å£ã«ããŸã ä»å¹Žã®SRE NEXT 2025ã§ã¯ã 7æ11æ¥ïŒéïŒ14:30ããã¹ãã³ãµãŒã»ãã·ã§ã³ã«ç»å£ããŸãã ã»ãã·ã§ã³ã§ã¯ããããã£ããããŸã§ã«å¹ã£ãŠããSREã«é¢ããç¥èŠãåãçµã¿ã«ã€ããŠã話ãããäºå®ã§ãã Track B Gold Sponsor 7/11 14:30 – 14:40 ã¢ãã¿ãªã³ã°çµ±äžãžã®éã®ã – 忣ã¢ãã¿ãªã³ã°ããŒã«çµ±åã®ããã®ãªãã¶ãŒãããªãã£ãããžã§ã¯ã https://sre-next.dev/2025/schedule/#slot083 ããŒã¹åºå±ããããŸãïŒ é嬿éäžããããã£ã¯äŒæ¥ããŒã¹ãåºå±ããŸããããŒã¹ã§ã¯ãåŒç€Ÿã®SREãžã®åãçµã¿ãã玹ä»ãããšãšãã«ããæ¥å Žããã ããçæ§ã«ç¹è£œããã«ãã£ãé
åžããŸããSREã«é¢ããæ
å ±äº€æã®å ŽãšããŠããŸããããã£ã®ãšã³ãžãã¢ãšã®äº€æµã®å ŽãšããŠããã²ãæ°è»œã«ãç«ã¡å¯ããã ããã éå»ã®åè³ SRE NEXT 2023 ã« GOLDã¹ãã³ãµãŒãšããŠåè³ SRE NEXT 2022ã«GOLDã¹ãã³ãµãŒãšããŠåè³ïŒç»å£ããŸãïŒ
ãããã£æ ªåŒäŒç€Ÿã¯ã2025幎7æ11æ¥ïŒéïŒã 7æ12æ¥ïŒåïŒã«éå¬ãããSRE NEXT 2025ã«ãŽãŒã«ãã¹ãã³ãµãŒãšããŠåè³ããŸãã SRE NEXTã¯ããµã€ããªã©ã€ã¢ããªãã£ãšã³ãžãã¢ãªã³ã°ïŒSREïŒã«é¢ããæ¥æ¬æå€§çŽã®ã«ã³ãã¡ã¬ã³ã¹ã§ãã ãããã£ã¯éå»ã«ãæ¬ã€ãã³ãã«åè³ããŠãããSREåéã®çºå±ã«è²¢ç®ã§ããããšã倧å€å¬ããæããŸãã SRE NEXT 2025ã«é¢ãã詳现ã¯ãå
¬åŒãµã€ãã芧ãã ãããçæ§ã®ãè¶ãããåŸ
ã¡ããŠãããŸãïŒ å
¬åŒãµã€ã https://sre-next.dev/2025/ ã¹ãã³ãµãŒã»ãã·ã§ã³ã«ç»å£ã«ããŸã ä»å¹Žã®SRE NEXT 2025ã§ã¯ã 7æ11æ¥ïŒéïŒ14:30ããã¹ãã³ãµãŒã»ãã·ã§ã³ã«ç»å£ããŸãã ã»ãã·ã§ã³ã§ã¯ããããã£ããããŸã§ã«å¹ã£ãŠããSREã«é¢ããç¥èŠãåãçµã¿ã«ã€ããŠã話ãããäºå®ã§ãã Track B Gold Sponsor 7/11 14:30 – 14:40 ã¢ãã¿ãªã³ã°çµ±äžãžã®éã®ã – 忣ã¢ãã¿ãªã³ã°ããŒã«çµ±åã®ããã®ãªãã¶ãŒãããªãã£ãããžã§ã¯ã https://sre-next.dev/2025/schedule/#slot083 ããŒã¹åºå±ããããŸãïŒ é嬿éäžããããã£ã¯äŒæ¥ããŒã¹ãåºå±ããŸããããŒã¹ã§ã¯ãåŒç€Ÿã®SREãžã®åãçµã¿ãã玹ä»ãããšãšãã«ããæ¥å Žããã ããçæ§ã«ç¹è£œããã«ãã£ãé
åžããŸããSREã«é¢ããæ
å ±äº€æã®å ŽãšããŠããŸããããã£ã®ãšã³ãžãã¢ãšã®äº€æµã®å ŽãšããŠããã²ãæ°è»œã«ãç«ã¡å¯ããã ããã éå»ã®åè³ SRE NEXT 2023 ã« GOLDã¹ãã³ãµãŒãšããŠåè³ SRE NEXT 2022ã«GOLDã¹ãã³ãµãŒãšããŠåè³ïŒç»å£ããŸãïŒ
ã¯ããã« ããã«ã¡ã¯ïŒ ãããã£æ ªåŒäŒç€Ÿããšã³ãžãã¢å®äŸéå¶ã®åŸè€ãäœè€ã§ãã ãããã£ã§ã¯æ¯å¹Žãšã³ãžãã¢ã®æ°äººç ä¿®ãå
茩ãšã³ãžãã¢ã å
補 ã§è¡ãæåããããŸãã ïŒéç§°ã ãšã³ãžãã¢å®äŸ ãšåŒã°ããŠããŸãïŒ é嬿éãšããŠã¯çæéäžçã«5ææ«~6æé ã«å®æœããæºåã¯2ãæååŸã§è¡ããŸãã å幎ããè³æã®äžè¬å
¬éã«åãçµãã§ãããä»å¹Žãåæ§ã«äžè¬å
¬éããããŸãã â åå¹ŽïŒ ãããã£æ ªåŒäŒç€Ÿ ãšã³ãžãã¢æ°äººç ä¿®ã®å
容ãå
¬éããŸã | 2024å¹ŽåºŠç æ°äººç ä¿®ã®çã ãããã£å
šäœã®æè¡ååäž äœç³»ç«ã£ãåºç€åŠç¿ ããŒã ã§ã®ãµãŒãã¹éçº çæçãªãµãŒãã¹éçš çåŸããè¬åž«ã«ããç¶ç¶çéçš å
補åã®åŒ·å è²æåŒ·å WebãµãŒãã¹ãéçºããäžã§å¿
èŠãªã¹ãã«ãäœç³»ç«ãŠãŠåŠãã§ããã ã¹ãã«ã¢ãã æ¥åã§ã¯åŠã¹ãªãæè¡ãç©æ¥µçã«åãçµãã§ãã ä»åã®å
¬éè¬çŸ©è³æã«ã€ã㊠ç ä¿®ã®å°éç®æšãšããŠããWebã¢ããªã±ãŒã·ã§ã³ãç¬åã§éçºãã¯ã©ãŠãäžã§ãªãªãŒã¹ã§ããã¬ãã«ã®ç¥èãæè¡åã身ã«ä»ããããæ²ããŠãããããã«äŒŽãè¬çŸ©ãè¡ã£ãŠããŸãã å幎ã¯ãæ©æ¢°åŠç¿ãã®è¬çŸ©ããã£ãã®ã§ãããè¿å¹Žã®çæAIã®æ³šç®ãããŠãããããååãæ¹ããæ°ãããçæAI 2025ããä»å¹Žãã远å ãããŠãããŸãã RAGãæè¿ããããªMCPã®èª¬æãå
¥ããŠãããŸãã®ã§ããã²ã芧ãã ããïŒ ããã§ã¯ã以äžå
¬éå¯èœãªè¬çŸ©è³æãæ²ç€ºããŸãã®ã§ãåŠç¿ã«ã圹ç«ãŠãã ããã è¬çŸ©è³æäžèЧ Git 2025 AWS 2025 ãµãŒãéçšå
¥é 2025 ã³ã³ãã 2025 ããŒã¿ããŒã¹ 2025 ã»ãã¥ãªã㣠2025 ãªããžã§ã¯ãæå 2025 çæAI 2025 [NEW!] Webã¢ã㪠2025 ã¢ãã€ã«ã¢ã㪠2025 â»ãããã£ç€Ÿå
ã®é嬿¥é ã§èšèŒããŠããŸãã çµããã« ãããã£ã§ã¯ãé·å¹Žã«ãããèªç€Ÿéçºã®ç ä¿®ããã°ã©ã ã宿œããŠããŸãã ãã®ããã°ã©ã ã¯ãç¶ç¶çãªæ¹åãšé²åãéããŠãããææã®æŽæ°ãæ°ããè¬åº§ã®å°å
¥ãããã«ã¯åå¹ŽåºŠã®æ°å
¥ç€Ÿå¡ãç¿å¹Žã«ã¯è¬åž«ãåãããªã©ãç¬èªã®åãçµã¿ãè¡ã£ãŠããŸãã ãã®ç ä¿®å¶åºŠã®é
åã¯ã èªãã®åŠã³ã次äžä»£ã«éå
ã§ããç¹ ã«ãããšåŒ·ãæããŠããŸãã ç§èªèº«ãåè¬è
ã ã£ãæã«çåã«æããããšãç¿å¹Žã¯è¬åž«ãšããŠè§£æ±ºã§ãããããçè§£ãæ·±ãŸããšãšãã«æé·ã宿ã§ããã®ãé
åã§ãããŸããæ°äººããã®ãã£ãŒãããã¯ã¯èªåã®èª¬æåãæè¡çè§£ãæ·±ãã貎éãªæ©äŒãšãªã£ãŠããŸãã ãã®åŸªç°åã®åŠç¿ã·ã¹ãã ã¯ãå人ã®ã¹ãã«åäžãšåæã«ãç ä¿®ããã°ã©ã å
šäœã®è³ªã®åäžã«ãè²¢ç®ããŠããŸãã åŒç€Ÿã®ãšã³ãžãã¢è²æãžã®åãçµã¿ããææ°ã®æè¡ååã«ã€ããŠè©³ããç¥ãããæ¹ã¯ããããã£ãšã³ãžãã¢ããã°ããã²ã芧ãã ããã