ãã现ãããªãã©ãã£ãã¯ã«ãŒã«ç®¡çã®ããã®ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ã®ãã¯ãŒãæ¢ããã¢ããªã±ãŒã·ã§ã³ã®å埩æ§ãã»ãã¥ãªãã£ãããã©ãŒãã³ã¹ãåäžãããŸãã
ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ïŒãã©ãã£ãã¯ã«ãŒã«ç®¡ç
ãŸããŸãè€éåã»åæ£åããã¢ããªã±ãŒã·ã§ã³ç°å¢ã«ãããŠããã©ãã£ãã¯ãããŒãå¹ççãã€å®å šã«ç®¡çããããšã¯æ¥µããŠéèŠã§ããããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ã¯ããã©ãã£ãã¯ã«ãŒã«ãå®çŸ©ã»åŒ·å¶ããããã®ããŒã«ãæäŸããã¢ããªã±ãŒã·ã§ã³å ã§ãªã¯ãšã¹ããã©ã®ããã«ã«ãŒãã£ã³ã°ã倿ãä¿è·ããããããã现ããå¶åŸ¡ã§ããŸãããã®èšäºã§ã¯ãå ç¢ãªãã©ãã£ãã¯ã«ãŒã«ç®¡çãå®çŸããããã«ãããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ã掻çšããæŠå¿µãã¡ãªãããå®è£ æŠç¥ã«ã€ããŠæ¢ããŸãã
ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ãšã¯ïŒ
ãµãŒãã¹ã¡ãã·ã¥ã¯ããµãŒãã¹ééä¿¡ãå¶åŸ¡ããå°çšã®ã€ã³ãã©ã¹ãã©ã¯ãã£ã¬ã€ã€ãŒã§ããåŸæ¥ã®ãµãŒãã¹ã¡ãã·ã¥ã¯éåžžããã¯ãšã³ãã§åäœããŸãããããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ã¯ãããã®æ©èœãã¯ã©ã€ã¢ã³ããµã€ãã«æ¡åŒµãããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ïŒUIïŒãšããã¯ãšã³ããµãŒãã¹éã®ããåãã管çããŸãããã©ãã£ãã¯ç®¡çãã»ãã¥ãªãã£ããªã·ãŒã®é©çšãå šäœçãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã®åäžã«ãäžè²«æ§ã®ãã芳枬å¯èœãªã¬ã€ã€ãŒãæäŸããŸãã
äž»ã«å éšãµãŒãã¹éã®éä¿¡ãæ±ãããã¯ãšã³ããµãŒãã¹ã¡ãã·ã¥ãšã¯ç°ãªããããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ã¯ãŠãŒã¶ãŒïŒãŸãã¯ãŠãŒã¶ãŒã代衚ããã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ïŒã«ãã£ãŠéå§ãããããåãã«çŠç¹ãåœãŠãŸããããã«ã¯ãWebãã©ãŠã¶ãã¢ãã€ã«ã¢ããªããã®ä»ã®ã¯ã©ã€ã¢ã³ããµã€ãã¢ããªã±ãŒã·ã§ã³ããã®ãªã¯ãšã¹ããå«ãŸããŸãã
ããªã·ãŒãšã³ãžã³ãšã¯ïŒ
ããªã·ãŒãšã³ãžã³ã¯ãã«ãŒã«ãè©äŸ¡ãããã®ã«ãŒã«ã«åºã¥ããŠæ±ºå®ãè¡ãã·ã¹ãã ã§ããããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ã®ã³ã³ããã¹ãã§ã¯ãããªã·ãŒãšã³ãžã³ã¯ããã©ãã£ãã¯ã«ãŒã«ãèªå¯ããªã·ãŒãããã³ãªã¯ãšã¹ãã®åŠçæ¹æ³ã管çãããã®ä»ã®æ§æãè§£éã»åŒ·å¶ããŸãããµãŒãã¹ã¡ãã·ã¥ã®é è³ãšããŠæ©èœãããã¹ãŠã®ãã©ãã£ãã¯ãå®çŸ©ãããããªã·ãŒãéµå®ããããšãä¿èšŒããŸãã
ããªã·ãŒãšã³ãžã³ã¯ãåçŽãªã«ãŒã«ããŒã¹ã®ã·ã¹ãã ãããæ©æ¢°åŠç¿ã§åŒ·åãããé«åºŠãªæææ±ºå®ãšã³ãžã³ãŸã§ãããŸããŸãªæ¹æ³ã§å®è£ ã§ããŸããäžè¬çãªå®è£ ã«ã¯ãã«ãŒã«ããŒã¹ã·ã¹ãã ã屿§ããŒã¹ã¢ã¯ã»ã¹å¶åŸ¡ïŒABACïŒãããŒã«ããŒã¹ã¢ã¯ã»ã¹å¶åŸ¡ïŒRBACïŒãªã©ããããŸãã
ãã©ãã£ãã¯ã«ãŒã«ç®¡çã®ããã®ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ã®äž»ãªã¡ãªãã
- ã»ãã¥ãªãã£ã®åŒ·åïŒèªèšŒãèªå¯ãã¬ãŒãå¶éãªã©ã®å ç¢ãªã»ãã¥ãªãã£ããªã·ãŒãå®è£ ããæªæã®ããæ»æãäžæ£ã¢ã¯ã»ã¹ããã¢ããªã±ãŒã·ã§ã³ãä¿è·ããŸãã
- å埩æ§ã®åäžïŒæ£åžžãªããã¯ãšã³ãã€ã³ã¹ã¿ã³ã¹ã«ã€ã³ããªãžã§ã³ãã«ãã©ãã£ãã¯ãã«ãŒãã£ã³ã°ããé害ã®åœ±é¿ã軜æžããé«å¯çšæ§ã確ä¿ããŸãã
- ããã©ãŒãã³ã¹ã®æé©åïŒãã©ãã£ãã¯ã·ã§ãŒãã³ã°ãšããŒããã©ã³ã·ã³ã°æŠç¥ãå®è£ ããŠãå¿çæéãæé©åããå šäœçãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžãããŸãã
- ãããã€ã¡ã³ãã®ç°¡çŽ åïŒã«ã³ã¶ã€ãããã€ã¡ã³ããšA/Bãã¹ãã容æã«å¯èœã«ããæ°æ©èœã段éçã«ããŒã«ã¢ãŠããããã¹ãŠã®ãŠãŒã¶ãŒã«å®å šã«ãªãªãŒã¹ããåã«ããã©ãŒãã³ã¹ãæ€èšŒã§ããŸãã
- å¯èŠ³æž¬æ§ã®åäžïŒè©³çްãªã¡ããªã¯ã¹ãšãã¬ãŒã¹æ©èœãéããŠããã©ãã£ãã¯ãã¿ãŒã³ãšã¢ããªã±ãŒã·ã§ã³ã®åäœã«é¢ããæ·±ãæŽå¯ãåŸãããŸãã
- äžå 管çïŒãã¹ãŠã®ãã©ãã£ãã¯ã«ãŒã«ãšããªã·ãŒãäžå€®ã®å Žæãã管çãã管çãç°¡çŽ åããã¢ããªã±ãŒã·ã§ã³å šäœã®äžè²«æ§ã確ä¿ããŸãã
äžè¬çãªãã©ãã£ãã¯ã«ãŒã«ç®¡çã·ããªãª
ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ã䜿çšãããšãããŸããŸãªãã©ãã£ãã¯ç®¡çã·ããªãªãå®è£ ã§ããŸãã以äžã«ããã€ãã®äŸã瀺ããŸãã
1. ã«ã³ã¶ã€ãããã€ã¡ã³ã
ã«ã³ã¶ã€ãããã€ã¡ã³ããšã¯ãã¢ããªã±ãŒã·ã§ã³ã®æ°ããããŒãžã§ã³ããå šãŠãŒã¶ãŒããŒã¹ã«ããŒã«ã¢ãŠãããåã«ãå°æ°ã®ãŠãŒã¶ãŒã«ãªãªãŒã¹ããããšã§ããããã«ãããå®éã®ç°å¢ã§æ°ããããŒãžã§ã³ã®ããã©ãŒãã³ã¹ãšå®å®æ§ãç£èŠã§ããåºç¯å²ã«ãããåé¡ã®ãªã¹ã¯ãæå°éã«æããããšãã§ããŸãã
äŸïŒãšãŒãããã®ãŠãŒã¶ãŒããã®ãã©ãã£ãã¯ã®5%ãæ°ããããŒãžã§ã³ã®ã¢ããªã±ãŒã·ã§ã³ã«ã«ãŒãã£ã³ã°ããæ®ãã®95%ã®ãã©ãã£ãã¯ãæ¢åã®ããŒãžã§ã³ã«ã«ãŒãã£ã³ã°ããŸããå¿çæéããšã©ãŒçãªã©ã®äž»èŠãªã¡ããªã¯ã¹ãç£èŠããŠãããå€ãã®ãŠãŒã¶ãŒã«æ°ããããŒãžã§ã³ãå ¬éããåã«æœåšçãªåé¡ãç¹å®ããŸãã
æ§æïŒããªã·ãŒãšã³ãžã³ã¯ããŠãŒã¶ãŒã®å ŽæïŒäŸïŒIPã¢ãã¬ã¹ã®ãžãªãã±ãŒã·ã§ã³ã䜿çšïŒã«åºã¥ããŠãã©ãã£ãã¯ãã«ãŒãã£ã³ã°ããããã«æ§æãããŸããã¡ããªã¯ã¹åéãšã¢ã©ãŒããçµ±åãããã«ã³ã¶ã€ãããã€ã¡ã³ãã«é¢ãããªã¢ã«ã¿ã€ã ãã£ãŒãããã¯ãæäŸãããŸãã
2. A/Bãã¹ã
A/Bãã¹ãã«ãããæ©èœãŸãã¯ãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ã®2ã€ã®ç°ãªãããŒãžã§ã³ãæ¯èŒããŠãã©ã¡ããããããã©ãŒãã³ã¹ãè¯ããã倿ã§ããŸããããã¯ããŠãŒã¶ãŒãšã³ã²ãŒãžã¡ã³ããšã³ã³ããŒãžã§ã³çãæé©åããããã®è²ŽéãªããŒã«ã§ãã
äŸïŒãŠãŒã¶ãŒã«ã©ã³ãã£ã³ã°ããŒãžã®2ã€ã®ç°ãªãããŒãžã§ã³ã衚瀺ããã©ã³ãã ã«ããŒãžã§ã³AãŸãã¯ããŒãžã§ã³Bã«å²ãåœãŠãŸããã¯ãªãã¯çãã³ã³ããŒãžã§ã³çãªã©ã®ã¡ããªã¯ã¹ã远跡ããŠãã©ã¡ãã®ããŒãžã§ã³ããã广çãã倿ããŸãã
æ§æïŒããªã·ãŒãšã³ãžã³ã¯ã2ã€ã®ããŒãžã§ã³éã§ã©ã³ãã ã«ãã©ãã£ãã¯ã忣ããŸãããŠãŒã¶ãŒå²ãåœãŠã¯éåžžãCookieãŸãã¯ãã®ä»ã®æ°žç¶ã¹ãã¬ãŒãžã¡ã«ããºã ã䜿çšããŠç¶æãããåã ã®ãŠãŒã¶ãŒã«å¯ŸããŠäžè²«æ§ã確ä¿ããŸãã
3. å°çããŒã¹ã«ãŒãã£ã³ã°
å°çããŒã¹ã«ãŒãã£ã³ã°ã«ããããŠãŒã¶ãŒã®å°ççãªå Žæã«åºã¥ããŠç°ãªãããã¯ãšã³ãã€ã³ã¹ã¿ã³ã¹ã«ãã©ãã£ãã¯ãã«ãŒãã£ã³ã°ã§ããŸããããã¯ããŠãŒã¶ãŒãå°ççã«è¿ããµãŒããŒã«ã«ãŒãã£ã³ã°ããŠããã©ãŒãã³ã¹ãåäžãããããããŒã¿å± äœæ§èŠå¶ãéµå®ãããããããã«äœ¿çšã§ããŸãã
äŸïŒåç±³ããã®ãŠãŒã¶ãŒã®ãã©ãã£ãã¯ãç±³åœã«ãããµãŒããŒã«ã«ãŒãã£ã³ã°ãããšãŒãããããã®ãŠãŒã¶ãŒã®ãã©ãã£ãã¯ããã€ãã«ãããµãŒããŒã«ã«ãŒãã£ã³ã°ããŸããããã«ãããã¬ã€ãã³ã·ãåæžããGDPRèŠå¶ãžã®æºæ ã確ä¿ã§ããŸãã
æ§æïŒããªã·ãŒãšã³ãžã³ã¯ãIPã¢ãã¬ã¹ã®ãžãªãã±ãŒã·ã§ã³ã䜿çšããŠãŠãŒã¶ãŒã®å Žæãç¹å®ããããã«å¿ããŠãã©ãã£ãã¯ãã«ãŒãã£ã³ã°ããŸããVPNã®äœ¿çšã¯ããŠãŒã¶ãŒã®å®éã®å Žæãé ãå¯èœæ§ããããããèæ ®ããå¿ èŠããããŸãã
4. ãŠãŒã¶ãŒåºæã«ãŒãã£ã³ã°
ãŠãŒã¶ãŒåºæã«ãŒãã£ã³ã°ã«ããããµãã¹ã¯ãªãã·ã§ã³ã¬ãã«ãããŒã«ãããã€ã¹ã¿ã€ããªã©ã®ãŠãŒã¶ãŒå±æ§ã«åºã¥ããŠãã©ãã£ãã¯ãã«ãŒãã£ã³ã°ã§ããŸããããã¯ãããŒãœãã©ã€ãºããããšã¯ã¹ããªãšã³ã¹ãæäŸããããã¢ã¯ã»ã¹å¶åŸ¡ããªã·ãŒã匷å¶ãããããããã«äœ¿çšã§ããŸãã
äŸïŒãã¬ãã¢ã ãµãã¹ã¯ã©ã€ããŒããã®ãã©ãã£ãã¯ããããé«ãããã©ãŒãã³ã¹ãšå®¹éãæã€å°çšããã¯ãšã³ãã€ã³ã¹ã¿ã³ã¹ã«ã«ãŒãã£ã³ã°ããŸããããã«ããããã¬ãã¢ã ãµãã¹ã¯ã©ã€ããŒã¯åªãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã確å®ã«åããããŸãã
æ§æïŒããªã·ãŒãšã³ãžã³ã¯ãäžå€®IDãããã€ããŒïŒäŸïŒOAuth 2.0ãµãŒããŒïŒãããŠãŒã¶ãŒå±æ§ã«ã¢ã¯ã»ã¹ãããããã®å±æ§ã«åºã¥ããŠãã©ãã£ãã¯ãã«ãŒãã£ã³ã°ããŸãã
5. ã¬ãŒãå¶é
ã¬ãŒãå¶éã¯ããŠãŒã¶ãŒãŸãã¯ã¯ã©ã€ã¢ã³ããæå®ãããæéå ã«å®è¡ã§ãããªã¯ãšã¹ãã®æ°ãå¶éããããšã«ãããã¢ããªã±ãŒã·ã§ã³ãæªçšããä¿è·ããŸããããã¯ããµãŒãã¹æåŠæ»æãé²ããæ£åœãªãŠãŒã¶ãŒãã¢ããªã±ãŒã·ã§ã³ã«ã¢ã¯ã»ã¹ã§ããããã«ããããã«åœ¹ç«ã¡ãŸãã
äŸïŒèªèšŒãšã³ããã€ã³ããžã®ãŠãŒã¶ãŒã®ãªã¯ãšã¹ãæ°ãã1åããã10ãªã¯ãšã¹ãã«å¶éããŸããããã«ããããŠãŒã¶ãŒã¢ã«ãŠã³ãã«å¯Ÿãããã«ãŒããã©ãŒã¹æ»æãé²ãããšãã§ããŸãã
æ§æïŒããªã·ãŒãšã³ãžã³ã¯ãåãŠãŒã¶ãŒã«ãã£ãŠè¡ããããªã¯ãšã¹ãæ°ã远跡ããå®çŸ©ãããã¬ãŒãå¶éãè¶ ãããªã¯ãšã¹ããæåŠããŸãã
6. ããããŒæäœ
ããããŒæäœã«ãããHTTPããããŒã倿ŽããŠãå«ãŸããæ å ±ã远å ãåé€ããŸãã¯å€æŽã§ããŸããããã¯ãã»ãã¥ãªãã£ããŒã¯ã³ã®è¿œå ããã¬ãŒã¹æ å ±ã®äŒæããªã¯ãšã¹ãURLã®å€æŽãªã©ãããŸããŸãªç®çã§äœ¿çšã§ããŸãã
äŸïŒãªã¯ãšã¹ããéå§ããã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ãèå¥ããããã«ããã¹ãŠã®ããã¯ãšã³ããµãŒãã¹ãžã®ãªã¯ãšã¹ãã«ã«ã¹ã¿ã ããããŒã远å ããŸããããã«ãããããã¯ãšã³ããµãŒãã¹ã¯ã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ã«åºã¥ããŠå¿çãã«ã¹ã¿ãã€ãºã§ããŸãã
æ§æïŒããªã·ãŒãšã³ãžã³ã¯ãå®çŸ©æžã¿ã®ã«ãŒã«ã«åºã¥ããŠHTTPããããŒã倿Žããããã«æ§æãããŸãã
ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ã®å®è£
ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ãå®è£ ããããã®ãªãã·ã§ã³ãããã€ããããŸããããã«ã¯ä»¥äžãå«ãŸããŸãã
- ãµãŒãã¹ã¡ãã·ã¥ãã¬ãŒã ã¯ãŒã¯ïŒIstioãEnvoyãªã©ã®æ¢åã®ãµãŒãã¹ã¡ãã·ã¥ãã¬ãŒã ã¯ãŒã¯ãå©çšããŠãããã³ããšã³ããã©ãã£ãã¯ç®¡çããµããŒãããããã«æ¡åŒµã§ããŸãã
- Open Policy AgentïŒOPAïŒïŒæ±çšããªã·ãŒãšã³ãžã³ã§ããOPAãçµ±åããŠããã©ãã£ãã¯ã«ãŒã«ãšèªå¯ããªã·ãŒã匷å¶ããŸãã
- ã«ã¹ã¿ã ãœãªã¥ãŒã·ã§ã³ïŒéžæããããã°ã©ãã³ã°èšèªãšãã¬ãŒã ã¯ãŒã¯ã䜿çšããŠã«ã¹ã¿ã ããªã·ãŒãšã³ãžã³ãæ§ç¯ããŸãã
ãµãŒãã¹ã¡ãã·ã¥ãã¬ãŒã ã¯ãŒã¯ïŒIstioãEnvoyïŒ
IstioãšEnvoyã¯ããã©ãã£ãã¯ãã»ãã¥ãªãã£ãå¯èŠ³æž¬æ§ã管çããããã®å æ¬çãªæ©èœã»ãããæäŸãã人æ°ã®ãããµãŒãã¹ã¡ãã·ã¥ãã¬ãŒã ã¯ãŒã¯ã§ããäž»ã«ããã¯ãšã³ããµãŒãã¹åãã«èšèšãããŠããŸãããããã³ããšã³ããã©ãã£ãã¯ã®ç®¡çã«ãé©å¿ã§ããŸãããã ããã¯ã©ã€ã¢ã³ããµã€ãã®è€éãã«é©å¿ããã«ã¯ããã©ãŠã¶ã®äºææ§ãã¯ã©ã€ã¢ã³ããµã€ãã®ã»ãã¥ãªãã£ãªã©ã®èŠå ãæ éã«æ€èšããå¿ èŠããããŸãã
ã¡ãªããïŒ
- æçããŠããããµããŒããå å®ãããã¬ãŒã ã¯ãŒã¯ã
- å æ¬çãªæ©èœã»ããã
- 人æ°ã®ããã¯ã©ãŠããã©ãããã©ãŒã ãšã®çµ±åã
ãã¡ãªããïŒ
- ã»ããã¢ãããšç®¡çãè€éã«ãªãå¯èœæ§ããããŸãã
- ããã³ããšã³ãåºæã®èŠä»¶ããµããŒãããããã«å€§å¹ ãªã«ã¹ã¿ãã€ãºãå¿ èŠã«ãªãå ŽåããããŸãã
- æ¬æ ŒçãªãµãŒãã¹ã¡ãã·ã¥ã«é¢é£ãããªãŒããŒãããã¯ãåçŽãªããã³ããšã³ãã·ããªãªã«ã¯éå°ã«ãªãå¯èœæ§ããããŸãã
Open Policy AgentïŒOPAïŒ
OPAã¯ãRegoãšåŒã°ãã宣èšåèšèªã䜿çšããŠããªã·ãŒãå®çŸ©ããã³åŒ·å¶ã§ããæ±çšããªã·ãŒãšã³ãžã³ã§ããOPAã¯ããµãŒãã¹ã¡ãã·ã¥ãAPIã²ãŒããŠã§ã€ãKubernetesãªã©ãããŸããŸãªã·ã¹ãã ãšçµ±åã§ããŸãããã®æè»æ§ã«ãããè€éãªãã©ãã£ãã¯ã«ãŒã«ãšèªå¯ããªã·ãŒãå®è£ ããããã®è¯ãéžæè¢ãšãªããŸãã
ã¡ãªããïŒ
- éåžžã«æè»ã§ã«ã¹ã¿ãã€ãºå¯èœã
- 宣èšåããªã·ãŒèšèªïŒRegoïŒã
- ããŸããŸãªã·ã¹ãã ãšã®çµ±åã
ãã¡ãªããïŒ
- RegoèšèªãåŠã¶å¿ èŠããããŸãã
- è€éãªããªã·ãŒã®ãããã°ãå°é£ã«ãªãå ŽåããããŸãã
- æ¢åã®ããã³ããšã³ãã€ã³ãã©ã¹ãã©ã¯ãã£ãšã®çµ±åãå¿ èŠã§ãã
ã«ã¹ã¿ã ãœãªã¥ãŒã·ã§ã³
ã«ã¹ã¿ã ããªã·ãŒãšã³ãžã³ãæ§ç¯ããããšã§ããœãªã¥ãŒã·ã§ã³ãç¹å®ã®ããŒãºã«åãããŠèª¿æŽã§ããŸããæ¢åã®ãã¬ãŒã ã¯ãŒã¯ãããªã·ãŒãšã³ãžã³ã§ã¯æºãããªãç¬èªã®èŠä»¶ãããå Žåã«è¯ãéžæè¢ãšãªããŸãããã ããããã«ã¯ããªãã®éçºåªåãšç¶ç¶çãªã¡ã³ããã³ã¹ãå¿ èŠã§ãã
ã¡ãªããïŒ
- å®è£ ã«é¢ããå®å šãªå¶åŸ¡ã
- ç¹å®ã®èŠä»¶ã«åããã調æŽã
ãã¡ãªããïŒ
- ããªãã®éçºåªåã
- ç¶ç¶çãªã¡ã³ããã³ã¹ãå¿ èŠã§ãã
- ã³ãã¥ããã£ãµããŒããšæ¢è£œã®çµ±åã®æ¬ åŠã
å®è£ ã¹ããã
éžæããå®è£ ã¢ãããŒãã«é¢ä¿ãªããããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ãå®è£ ããéã«ã¯ãäžè¬çã«ä»¥äžã®ã¹ããããå«ãŸããŸãã
- ãã©ãã£ãã¯ç®¡çç®æšã®å®çŸ©ïŒå®è£ ãããç¹å®ã®ãã©ãã£ãã¯ç®¡çã·ããªãªïŒäŸïŒã«ã³ã¶ã€ãããã€ã¡ã³ããA/Bãã¹ããã¬ãŒãå¶éïŒãç¹å®ããŸãã
- ããªã·ãŒãšã³ãžã³ã®éžæïŒæè»æ§ãããã©ãŒãã³ã¹ã䜿ãããããªã©ã®èŠå ã«åºã¥ããŠãèŠä»¶ãæºããããªã·ãŒãšã³ãžã³ãéžæããŸãã
- ããªã·ãŒã®å®çŸ©ïŒãã©ãã£ãã¯ãã©ã®ããã«ã«ãŒãã£ã³ã°ã倿ãä¿è·ããããå®çŸ©ããããªã·ãŒãäœæããŸãã
- ããªã·ãŒãšã³ãžã³ã®çµ±åïŒããªã·ãŒãšã³ãžã³ãããã³ããšã³ãã€ã³ãã©ã¹ãã©ã¯ãã£ã«çµ±åããŸããããã«ã¯ããããã·ãµãŒããŒã®ãããã€ãã¢ããªã±ãŒã·ã§ã³ã³ãŒãã®å€æŽããŸãã¯ãµã€ãã«ãŒã³ã³ããã®äœ¿çšãå«ãŸããå ŽåããããŸãã
- ããªã·ãŒã®ãã¹ãïŒããªã·ãŒãæåŸ ã©ããã«æ©èœããŠããããšã確èªããããã«ã培åºçã«ãã¹ãããŸãã
- ã·ã¹ãã ã®ç£èŠïŒã·ã¹ãã ãç£èŠããŠãã©ãã£ãã¯ãã¿ãŒã³ã远跡ããæœåšçãªåé¡ãç¹å®ããŸãã
ã°ããŒãã«ãªèæ ®äºé ãšãã¹ããã©ã¯ãã£ã¹
ã°ããŒãã«ãªãŠãŒã¶ãŒåãã®ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ãå®è£ ããéã«ã¯ã次ã®èŠå ãèæ ®ããããšãéèŠã§ãã
- ããŒã¿å± äœæ§ïŒããŸããŸãªå°åã§ããŒã¿å± äœæ§èŠå¶ã«æºæ ãããµãŒããŒã«ãã©ãã£ãã¯ãã«ãŒãã£ã³ã°ãããŠããããšã確èªããŸããããšãã°ãGDPRã§ã¯ãEUåžæ°ã®å人ããŒã¿ã¯EUå ã§åŠçãããå¿ èŠããããŸãã
- ããã©ãŒãã³ã¹ïŒããŸããŸãªå°ççãªå Žæã®ãŠãŒã¶ãŒã®ã¬ã€ãã³ã·ãæå°éã«æããããã«ããã©ãã£ãã¯ã«ãŒãã£ã³ã°ãæé©åããŸããã³ã³ãã³ãé ä¿¡ãããã¯ãŒã¯ïŒCDNïŒãå°ççã«åæ£ããããµãŒããŒã®äœ¿çšãæ€èšããŠãã ããã
- ããŒã«ã©ã€ãŒãŒã·ã§ã³ïŒãŠãŒã¶ãŒã®èšèªãšæåã«åºã¥ããŠãã©ãã£ãã¯ã«ãŒã«ãé©å¿ãããŸããããšãã°ãç¹å®ã®å°åã®èšèªã«ããŒã«ã©ã€ãºãããã¢ããªã±ãŒã·ã§ã³ã®ç°ãªãããŒãžã§ã³ã«ãŠãŒã¶ãŒãã«ãŒãã£ã³ã°ãããå ŽåããããŸãã
- ã»ãã¥ãªãã£ïŒäžçäžã®ããŸããŸãªå°åããçºçããå¯èœæ§ã®ããæ»æããã¢ããªã±ãŒã·ã§ã³ãä¿è·ããããã«ãå ç¢ãªã»ãã¥ãªãã£ããªã·ãŒãå®è£ ããŸããããã«ã¯ãã¯ãã¹ãµã€ãã¹ã¯ãªããã£ã³ã°ïŒXSSïŒãSQLã€ã³ãžã§ã¯ã·ã§ã³ããã®ä»ã®äžè¬çãªWebè匱æ§ããã®ä¿è·ãå«ãŸããŸãã
- ã³ã³ãã©ã€ã¢ã³ã¹ïŒãã©ãã£ãã¯ç®¡çããªã·ãŒããããŸããŸãªåœã§é©çšããããã¹ãŠã®æ³åŸããã³èŠå¶ã«æºæ ããŠããããšã確èªããŸããããã«ã¯ãããŒã¿ãã©ã€ãã·ãŒãã»ãã¥ãªãã£ãæ¶è²»è ä¿è·ã«é¢é£ããèŠå¶ãå«ãŸããŸãã
- å¯èŠ³æž¬æ§ïŒããŸããŸãªå°åã«ããããã©ãã£ãã¯ãã¿ãŒã³ãçè§£ããããã«ãå æ¬çãªå¯èŠ³æž¬æ§ãå®è£ ããŸããããã«ã¯ãå¿çæéããšã©ãŒçããŠãŒã¶ãŒè¡åãªã©ã®ã¡ããªã¯ã¹ã远跡ããããšãå«ãŸããŸãããã®ããŒã¿ã䜿çšããŠãã©ãã£ãã¯ç®¡çããªã·ãŒãæé©åããæœåšçãªåé¡ãç¹å®ããŸãã
ããŒã«ãšãã¯ãããžãŒ
ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ã®å®è£ ã§äžè¬çã«äœ¿çšãããããŒã«ãšãã¯ãããžãŒã®ãªã¹ãã以äžã«ç€ºããŸãã
- Envoy ProxyïŒã¯ã©ãŠããã€ãã£ãã¢ããªã±ãŒã·ã§ã³çšã«èšèšããã髿§èœãããã·ã§ããµãŒãã¹ã¡ãã·ã¥ã®ãã«ãã£ã³ã°ãããã¯ãšããŠãã䜿çšãããŸãã
- IstioïŒãã©ãã£ãã¯ç®¡çãã»ãã¥ãªãã£ãå¯èŠ³æž¬æ§æ©èœãæäŸãã人æ°ã®ãããµãŒãã¹ã¡ãã·ã¥ãã©ãããã©ãŒã ã
- Open Policy AgentïŒOPAïŒïŒã€ã³ãã©ã¹ãã©ã¯ãã£å šäœã§ããªã·ãŒã匷å¶ããããã®æ±çšããªã·ãŒãšã³ãžã³ã
- KubernetesïŒãµãŒãã¹ã¡ãã·ã¥ã®ãããã€ãšç®¡çã«äžè¬çã«äœ¿çšãããã³ã³ãããªãŒã±ã¹ãã¬ãŒã·ã§ã³ãã©ãããã©ãŒã ã
- PrometheusïŒã¡ããªã¯ã¹ãåéããã³åæããããã®ç£èŠããã³ã¢ã©ãŒãã·ã¹ãã ã
- GrafanaïŒããã·ã¥ããŒããäœæããã¡ããªã¯ã¹ãèŠèŠåããããã®ããŒã¿å¯èŠåããŒã«ã
- Jaegerããã³ZipkinïŒãã€ã¯ããµãŒãã¹ã暪æãããªã¯ãšã¹ãã远跡ããããã®åæ£ãã¬ãŒã·ã³ã°ã·ã¹ãã ã
- NGINXïŒãã©ãã£ãã¯ç®¡çã«äœ¿çšã§ãã人æ°ã®ããWebãµãŒããŒããã³ãªããŒã¹ãããã·ã
- HAProxyïŒãã©ãã£ãã¯åæ£ã«äœ¿çšã§ãã髿§èœããŒããã©ã³ãµãŒã
- LinkerdïŒã·ã³ãã«ããšäœ¿ãããããç®çãšãã軜éãµãŒãã¹ã¡ãã·ã¥ã
èšå®äŸïŒåè - Envoyããããã·ãšããŠäœ¿çšïŒ
ãã®äŸã¯ããŠãŒã¶ãŒãšãŒãžã§ã³ãã«åºã¥ããŠãã©ãã£ãã¯ãã«ãŒãã£ã³ã°ããããã®ãç°¡ç¥åãããEnvoyèšå®ã瀺ããŠããŸãã
yaml
static_resources:
listeners:
- name: listener_0
address:
socket_address:
address: 0.0.0.0
port_value: 8080
filter_chains:
- filters:
- name: envoy.filters.network.http_connection_manager
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
stat_prefix: ingress_http
route_config:
name: local_route
virtual_hosts:
- name: local_service
domains: ["*"]
routes:
- match:
headers:
- name: user-agent
string_match:
contains: "Mobile"
route:
cluster: mobile_cluster
- match:
prefix: "/"
route:
cluster: default_cluster
http_filters:
- name: envoy.filters.http.router
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
clusters:
- name: mobile_cluster
connect_timeout: 0.25s
type: STRICT_DNS
lb_policy: ROUND_ROBIN
load_assignment:
cluster_name: mobile_cluster
endpoints:
- lb_endpoints:
- endpoint:
address:
socket_address:
address: mobile_backend
port_value: 80
- name: default_cluster
connect_timeout: 0.25s
type: STRICT_DNS
lb_policy: ROUND_ROBIN
load_assignment:
cluster_name: default_cluster
endpoints:
- lb_endpoints:
- endpoint:
address:
socket_address:
address: default_backend
port_value: 80
説æïŒ
- ãªã¹ããŒïŒããŒã8080ã§åä¿¡HTTPãã©ãã£ãã¯ããªãã¹ã³ããŸãã
- HTTPæ¥ç¶ãããŒãžã£ãŒïŒHTTPæ¥ç¶ã管çãããªã¯ãšã¹ããã«ãŒãã£ã³ã°ããŸãã
- ã«ãŒãæ§æïŒãªã¯ãšã¹ãã®ç¹æ§ã«åºã¥ããŠã«ãŒããå®çŸ©ããŸãã
- ã«ãŒãïŒ
- æåã®ã«ãŒãã¯ããMobileããå«ãUser-AgentããããŒãæã€ãªã¯ãšã¹ãã«äžèŽãã`mobile_cluster`ã«ã«ãŒãã£ã³ã°ããŸãã
- 2çªç®ã®ã«ãŒãã¯ãä»ã®ãã¹ãŠïŒãã¬ãã£ãã¯ã¹ã/ãïŒã®ãªã¯ãšã¹ãã«äžèŽãã`default_cluster`ã«ã«ãŒãã£ã³ã°ããŸãã
- ã¯ã©ã¹ã¿ãŒïŒãªã¯ãšã¹ããã«ãŒãã£ã³ã°ãããããã¯ãšã³ããµãŒãã¹ïŒmobile_backendããã³default_backendïŒãå®çŸ©ããŸããåã¯ã©ã¹ã¿ãŒã«ã¯DNSåïŒäŸïŒmobile_backendïŒãšããŒãïŒ80ïŒããããŸãã
泚æïŒããã¯ç°¡ç¥åãããäŸã§ããå®éã®æ§æã¯ããè€éã«ãªãå¯èœæ§ãé«ãããã«ã¹ãã§ãã¯ãTLSèšå®ãããæŽç·Žãããã«ãŒãã£ã³ã°ã«ãŒã«ãªã©ã®è¿œå æ©èœãå«ãŸããã§ãããã
å°æ¥ã®ãã¬ã³ã
ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããã³ããªã·ãŒãšã³ãžã³ã®åéã¯æ¥éã«é²åããŠããŸããæ³šç®ãã¹ãå°æ¥ã®ãã¬ã³ããããã€ã玹ä»ããŸãã
- WebAssemblyïŒWasmïŒãšã®çµ±åïŒWasmã䜿çšãããšããã©ãŠã¶ã§çŽæ¥ã³ãŒããå®è¡ã§ããã¯ã©ã€ã¢ã³ããµã€ãã§ããé«åºŠãªãã©ãã£ãã¯ç®¡çããªã·ãŒãå®è£ ã§ããŸãã
- 人工ç¥èœïŒAIïŒã𿩿¢°åŠç¿ïŒMLïŒïŒAIãšMLã¯ããã©ãã£ãã¯ã«ãŒãã£ã³ã°ã®èªåæé©åãç°åžžã®æ€åºããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã®ããŒãœãã©ã€ãºã«äœ¿çšã§ããŸãã
- ãµãŒããŒã¬ã¹ã³ã³ãã¥ãŒãã£ã³ã°ïŒãµãŒããŒã¬ã¹ãã©ãããã©ãŒã ã¯ãããã³ããšã³ãã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯ã«ãŸããŸã人æ°ãé«ãŸã£ãŠããŸãããµãŒãã¹ã¡ãã·ã¥ã¯ããµãŒããŒã¬ã¹ç°å¢ã§ã®ãã©ãã£ãã¯ãšã»ãã¥ãªãã£ã®ç®¡çã«äœ¿çšã§ããŸãã
- ãšããžã³ã³ãã¥ãŒãã£ã³ã°ïŒãšããžã³ã³ãã¥ãŒãã£ã³ã°ã¯ããŠãŒã¶ãŒã«è¿ãå Žæã§ããŒã¿ãåŠçããããšãå«ã¿ãããã©ãŒãã³ã¹ãåäžãããã¬ã€ãã³ã·ãåæžã§ããŸãããµãŒãã¹ã¡ãã·ã¥ã¯ããšããžã³ã³ãã¥ãŒãã£ã³ã°ç°å¢ã§ãã©ãã£ãã¯ãšã»ãã¥ãªãã£ã管çããããã«ãšããžã«ãããã€ã§ããŸãã
- ãªãŒãã³ãœãŒã¹ãã¯ãããžãŒã®æ¡çšå¢å ïŒIstioãEnvoyãOPAãªã©ã®ãªãŒãã³ãœãŒã¹ãã¯ãããžãŒã¯ããµãŒãã¹ã¡ãã·ã¥ã®å®è£ ã§ãŸããŸã人æ°ãé«ãŸã£ãŠããŸãããã®åŸåã¯å°æ¥ãç¶ããšäºæ³ãããŸãã
çµè«
ããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ã¯ãè€éã§åæ£åãããã¢ããªã±ãŒã·ã§ã³ç°å¢ã§ãã©ãã£ãã¯ã管çããããã®åŒ·åãªããŒã«ã§ããå ç¢ãªãã©ãã£ãã¯ã«ãŒã«ãå®è£ ããããšã§ãã»ãã¥ãªãã£ã匷åããå埩æ§ãåäžãããããã©ãŒãã³ã¹ãæé©åãããããã€ã¡ã³ããç°¡çŽ åã§ããŸããã¢ããªã±ãŒã·ã§ã³ããŸããŸãè€éåã»åæ£åããã«ã€ããŠã广çãªãã©ãã£ãã¯ç®¡çãœãªã¥ãŒã·ã§ã³ã®å¿ èŠæ§ã¯å¢ãã°ããã§ãããã®èšäºã§æŠèª¬ãããæŠå¿µãã¡ãªãããå®è£ æŠç¥ãçè§£ããããšã§ãåªãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸããå ç¢ã§ã¹ã±ãŒã©ãã«ãªã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã«ãããã³ããšã³ããµãŒãã¹ã¡ãã·ã¥ããªã·ãŒãšã³ãžã³ã掻çšã§ããŸãã