{"id":43761,"date":"2021-08-13T15:00:39","date_gmt":"2021-08-13T06:00:39","guid":{"rendered":"https:\/\/www.creationline.com\/?p=43761"},"modified":"2023-08-29T15:10:43","modified_gmt":"2023-08-29T06:10:43","slug":"kubernetes%e3%82%92virtualbox%e3%81%abvagrant%e3%81%a8kubeadm%e3%81%a7%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%97%e3%81%a6%e3%81%bf%e3%82%88%e3%81%86-kubernetes-kubeadm-vagrant","status":"publish","type":"post","link":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761","title":{"rendered":"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox"},"content":{"rendered":"<p>\u300c<a href=\"https:\/\/kubernetes.io\/\">Kubernetes<\/a>\u306e\u52c9\u5f37\u306e\u305f\u3081\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304b\u3089\u59cb\u3081\u3066\u307f\u3088\u3046\uff01 \u2026\u2026\u3068\u601d\u3063\u305f\u3051\u308c\u3069\u3001\u8a2d\u5b9a\u3059\u3079\u304dIP\u30a2\u30c9\u30ec\u30b9\u304c\u305f\u304f\u3055\u3093\u51fa\u3066\u304d\u3066\u3088\u304f\u308f\u304b\u3089\u306a\u3044\u2026\u2026\u3002Kubernetes\u3092\u52c9\u5f37\u3057\u305f\u3044\u304b\u3089\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u306e\u306b\u3001\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u969b\u306b\u77e5\u3063\u3066\u304a\u304b\u306a\u3044\u3068\u3044\u3051\u306a\u3044Kubernetes\u306e\u77e5\u8b58\u304c\u591a\u3059\u304e\u308b\u2026\u2026\u300d\u3068\u3001\u3044\u304d\u306a\u308a\u624b\u8a70\u307e\u308a\u306b\u306a\u3063\u3066\u3057\u307e\u3046\u65b9\u3082\u591a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n<p>\u30ed\u30fc\u30ab\u30eb\u3067\u624b\u8efd\u306bKubernetes\u3092\u69cb\u7bc9\u3067\u304d\u308b<a href=\"https:\/\/minikube.sigs.k8s.io\/docs\/\">minikube<\/a>\u3084<a href=\"https:\/\/kind.sigs.k8s.io\/docs\/\">kind<\/a>\u306a\u3069\u306e\u30c4\u30fc\u30eb\u304c\u5b58\u5728\u3059\u308b\u306e\u3067\u3001\u307e\u305a\u306f\u305d\u3061\u3089\u3067Kubernetes\u306e\u52c9\u5f37\u3092\u3059\u308b\u306e\u3082\u3088\u3044\u3067\u3057\u3087\u3046\u3002<\/p>\n<p>\u672c\u7a3f\u3067\u306f\u3001<a href=\"https:\/\/kubernetes.io\/docs\/reference\/setup-tools\/kubeadm\/\">kubeadm<\/a>\u3068<a href=\"https:\/\/www.vagrantup.com\/\">Vagrant<\/a>\u3092\u4f7f\u3063\u3066<a href=\"https:\/\/www.virtualbox.org\/\">Virtualbox<\/a>\u4e0a\u306bKubernetes\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u969b\u306b\u6c17\u3092\u3064\u3051\u308b\u3079\u304d\u70b9\u3092\u307e\u3068\u3081\u3066\u307f\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n<h2>\u524d\u63d0\u6761\u4ef6<\/h2>\n<p>\u30db\u30b9\u30c8\u30de\u30b7\u30f3\u306bVagrant\u3068Virtualbox\u304c\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u6e08\u307f\u3067\u3042\u308a\u3001IP\u30a2\u30c9\u30ec\u30b9\u306f <span style=\"background-color: yellow;\">192.168.24.201<\/span> \u3067\u3042\u308b\u3068\u3057\u307e\u3059\u3002IP\u30a2\u30c9\u30ec\u30b9\u306f\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u9069\u5b9c\u8aad\u307f\u66ff\u3048\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<h2>\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u5229\u7528\u3055\u308c\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2<\/h2>\n<p>\u307e\u305a\u3001Vagrant + Virtualbox + Kubernetes\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u5229\u7528\u3055\u308c\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u3092\u898b\u3066\u304a\u304d\u307e\u3059\u3002<\/p>\n<ul>\n<li><span style=\"background-color: red; color: white;\">10.0.2.15\/32<\/span><\/li>\n<li><span style=\"background-color: green; color: white;\">172.17.0.0\/16<\/span><\/li>\n<li><span style=\"background-color: blue; color: white;\">10.96.0.0\/12<\/span><\/li>\n<li><span style=\"background-color: black; color: white;\">192.168.0.0\/16<\/span> (\u6ce8:Calico\u306e\u5834\u5408\u3001\u8a73\u7d30\u5f8c\u8ff0)<\/li>\n<\/ul>\n<p>\u3053\u308c\u3089\u304c\u30db\u30b9\u30c8\u30de\u30b7\u30f3\u306eIP\u30a2\u30c9\u30ec\u30b9\u306b\u304b\u3076\u3063\u3066\u3044\u308b\u3068\u7406\u89e3\u306e\u59a8\u3052\u306b\u306a\u308b\u4e0a\u306b\u3001\u4f55\u304b\u52d5\u4f5c\u304c\u304a\u304b\u3057\u304f\u306a\u3063\u305f\u5834\u5408\u306e\u539f\u56e0\u7279\u5b9a\u304c\u5927\u5909\u306b\u306a\u308b\u305f\u3081\u3001\u53ef\u80fd\u306a\u9650\u308a\u5909\u66f4\u3057\u305f\u3044\u3068\u3053\u308d\u3067\u3059\u3002\u524d\u63d0\u6761\u4ef6\u306e\u901a\u308a\u3001\u672c\u7a3f\u306b\u304a\u3051\u308b\u30db\u30b9\u30c8\u30de\u30b7\u30f3\u306eIP\u30a2\u30c9\u30ec\u30b9\u306f <span style=\"background-color: yellow;\">192.168.24.201<\/span> \u3067 <span style=\"background-color: black; color: white;\">192.168.0.0\/16<\/span> \u3068\u304b\u3076\u3063\u3066\u3044\u308b\u306e\u3067\u3001\u305d\u306e\u4ed6\u306e\u3082\u306e\u3082\u542b\u3081\u3066\u3001\u4ee5\u964d\u3067\u5404IP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306e\u8a73\u7d30\u3068\u5909\u66f4\u65b9\u6cd5\u3092\u898b\u3066\u3044\u304d\u307e\u3057\u3087\u3046\u3002<\/p>\n<h3>10.0.2.15\/32<\/h3>\n<p><span style=\"background-color: red; color: white;\">10.0.2.15\/32<\/span> \u306f\u3001Vagrant + Virtualbox \u3067\u30b2\u30b9\u30c8OS\u306e\u30d7\u30e9\u30a4\u30de\u30ea\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9(\u4f8b\u3048\u3070eth0)\u306b\u4ed8\u4e0e\u3055\u308c\u308b\u3001\u5185\u90e8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7528\u306eIP\u30a2\u30c9\u30ec\u30b9\u3067\u3059\u3002\u672b\u5c3e\u306e 15 \u306f\u5909\u3048\u3089\u308c\u306a\u3044\u3088\u3046\u3067\u3059\u304c\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u90e8 10.0.2.0\/24 \u306f\u5909\u66f4\u3067\u304d\u307e\u3059: <a href=\"https:\/\/www.virtualbox.org\/manual\/ch09.html#changenat\">Configuring the Address of a NAT Network Interface<\/a>, <a href=\"https:\/\/www.vagrantup.com\/docs\/providers\/virtualbox\/configuration#vboxmanage-customizations\">VBoxManage Customizations<\/a><\/p>\n<p>\u4f8b\u3048\u3070 10.0.<span style=\"background-color: red; color: white;\">3<\/span>.15\/32 \u306b\u5909\u66f4\u3059\u308b\u306b\u306f Vagrantfile \u3067\u6b21\u306e\u3088\u3046\u306b\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"ruby\">\nVagrant.configure(2) do |config|\n# \u7701\u7565\nconfig.vm.provider &quot;virtualbox&quot; do |v|\nv.customize [&quot;modifyvm&quot;, :id, &quot;--natnet1&quot;, &quot;10.0.3\/24&quot;]\nend\n# \u7701\u7565\nend\n<\/pre>\n<p>\u306a\u304a\u3001\u3053\u306e\u5185\u90e8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7528\u306eIP\u30a2\u30c9\u30ec\u30b9\u306f\u30d7\u30e9\u30a4\u30de\u30ea\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306b\u5fc5\u305a\u4ed8\u4e0e\u3055\u308c\u307e\u3059\u3002\u305d\u306e\u305f\u3081\u3001\u30d7\u30e9\u30a4\u30de\u30ea\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u81ea\u52d5\u691c\u77e5\u3057\u3066\u5229\u7528\u3059\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u306f\u52d5\u4f5c\u4e0d\u826f\u3092\u8d77\u3053\u3059\u306e\u3067\u3001\u5229\u7528\u3059\u308b\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u624b\u52d5\u8a2d\u5b9a\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u5177\u4f53\u4f8b\u306f\u5f8c\u8ff0\u3057\u307e\u3059\u3002<\/p>\n<h3>172.17.0.0\/16<\/h3>\n<p><span style=\"background-color: green; color: white;\">172.17.0.0\/16<\/span> \u306fDocker\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u30d6\u30ea\u30c3\u30b8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u4f7f\u308f\u308c\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u3067\u3059\u3002\u3082\u3046\u5c11\u3057\u5177\u4f53\u7684\u306b\u8a00\u3046\u3068\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9docker0\u306eIP\u30a2\u30c9\u30ec\u30b9(\u4f8b\u3048\u3070 <span style=\"background-color: green; color: white;\">172.17.0.1\/16<\/span>)\u306f\u3001\u3053\u306eIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u304b\u3089\u5272\u308a\u5f53\u3066\u3089\u308c\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ ip a show docker0\n4: docker0: &lt;NO-CARRIER,BROADCAST,MULTICAST,UP&gt; mtu 1500 qdisc noqueue state DOWN group default\nlink\/ether 02:42:04:c5:cf:b8 brd ff:ff:ff:ff:ff:ff\ninet 172.17.0.1\/16 brd 172.17.255.255 scope global docker0\nvalid_lft forever preferred_lft forever\n<\/pre>\n<p>docker0\u306eIP\u30a2\u30c9\u30ec\u30b9\u3092\u5909\u66f4\u3059\u308b\u306b\u306f\u3001 \/etc\/docker\/daemon.json \u306b\u3066 bip \u30ad\u30fc\u3067IP\u30a2\u30c9\u30ec\u30b9\u3092\u6307\u5b9a\u3057\u3001Docker\u3092\u518d\u8d77\u52d5\u3057\u307e\u3059: <a href=\"https:\/\/docs.docker.com\/network\/bridge\/#configure-the-default-bridge-network\">Configure the default bridge network<\/a><\/p>\n<p>\u4f8b\u3048\u3070 172.<span style=\"background-color: green; color: white;\">20<\/span>.0.1\/16 \u306b\u5909\u66f4\u3059\u308b\u306b\u306f \/etc\/docker\/daemon.json \u3067\u6b21\u306e\u3088\u3046\u306b\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"javascript\">\n{\n&quot;bip&quot;: &quot;172.20.0.1\/16&quot;\n}\n<\/pre>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ ip a show docker0\n4: docker0: &lt;NO-CARRIER,BROADCAST,MULTICAST,UP&gt; mtu 1500 qdisc noqueue state DOWN group default\nlink\/ether 02:42:04:c5:cf:b8 brd ff:ff:ff:ff:ff:ff\ninet 172.20.0.1\/16 brd 172.20.255.255 scope global docker0\nvalid_lft forever preferred_lft forever\n<\/pre>\n<p>\u4f59\u8ac7\u3067\u3059\u304c\u3001bip \u30ad\u30fc\u3067\u5909\u66f4\u3067\u304d\u308b\u306e\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u30d6\u30ea\u30c3\u30b8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af(docker0)\u306e\u307f\u3067\u3001\u8ffd\u52a0\u30d6\u30ea\u30c3\u30b8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306f\u4f9d\u7136\u3068\u3057\u3066 172.17.0.0\/16 \u304b\u3089\u5272\u308a\u5f53\u3066\u3089\u308c\u308b\u3053\u3068\u306b\u6ce8\u610f\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ for i in $(seq 1 1 5); do docker network create network-$i; done\n$ for i in $(docker network ls --filter driver=bridge -q); do docker network inspect --format &#039;{{.Name}} : {{range .IPAM.Config}}{{.Subnet}}{{end}}&#039; $i; done\nbridge : 172.20.0.0\/16\nnetwork-1 : 172.17.0.0\/16\nnetwork-2 : 172.18.0.0\/16\nnetwork-3 : 172.19.0.0\/16\nnetwork-4 : 172.21.0.0\/16\nnetwork-5 : 172.22.0.0\/16\n<\/pre>\n<p>\u3053\u308c\u3092\u907f\u3051\u308b\u306b\u306f bip \u30ad\u30fc\u306e\u4ee3\u308f\u308a\u306b default-address-pools \u30ad\u30fc\u3092\u4f7f\u3044\u307e\u3059\u3002base \u306f\u30d6\u30ea\u30c3\u30b8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u5272\u308a\u5f53\u3066\u3089\u308c\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u3067\u3001size \u306f base \u304b\u3089\u5207\u308a\u51fa\u3055\u308c\u308b\u30b5\u30d6\u30cd\u30c3\u30c8\u30de\u30b9\u30af\u306b\u306a\u308a\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"javascript\">\n{\n&quot;default-address-pools&quot;: [\n{\n&quot;base&quot;: &quot;172.20.0.0\/16&quot;,\n&quot;size&quot;: 24\n}\n]\n}\n<\/pre>\n<p>\u3068\u3059\u308b\u3068\u3001172.20.0.0\/16 \u3059\u306a\u308f\u3061 172.20.0.1 \u301c 172.20.255.254 \u304c\u30d6\u30ea\u30c3\u30b8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u5272\u308a\u5f53\u3066\u3089\u308c\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u3067\u3001<\/p>\n<ul>\n<li>172.20.0.0\/24<\/li>\n<li>172.20.1.0\/24<\/li>\n<li>172.20.2.0\/24<\/li>\n<li>(\u4e2d\u7565)<\/li>\n<li>172.20.253.0\/24<\/li>\n<li>172.20.254.0\/24<\/li>\n<li>172.20.255.0\/24<\/li>\n<\/ul>\n<p>\u304c\u5404\u30d6\u30ea\u30c3\u30b8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af(\u6700\u521d\u306e 172.20.0.0\/24 \u306fdocker0)\u306b\u5272\u308a\u5f53\u3066\u3089\u308c\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ for i in $(seq 1 1 5); do docker network create network-$i; done\n$ for i in $(docker network ls --filter driver=bridge -q); do docker network inspect --format &#039;{{.Name}} : {{range .IPAM.Config}}{{.Subnet}}{{end}}&#039; $i; done\nbridge : 172.20.0.0\/24\nnetwork-1 : 172.20.1.0\/24\nnetwork-2 : 172.20.2.0\/24\nnetwork-3 : 172.20.3.0\/24\nnetwork-4 : 172.20.4.0\/24\nnetwork-5 : 172.20.5.0\/24\n<\/pre>\n<p>\u53c2\u8003: <a href=\"https:\/\/docs.mirantis.com\/mke\/3.4\/install\/plan-deployment\/mcr-considerations\/default-address-pools.html\">default-address-pools<\/a>, <a href=\"https:\/\/docs.mirantis.com\/mke\/3.4\/install\/plan-deployment\/mcr-considerations\/docker0.html\">docker0<\/a><\/p>\n<h3>10.96.0.0\/12<\/h3>\n<p><span style=\"background-color: blue; color: white;\">10.96.0.0\/12<\/span>\u306f\u3001kubeadm\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u8a2d\u5b9a\u3067Kubernetes\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u305f\u5834\u5408\u306b<a href=\"https:\/\/kubernetes.io\/ja\/docs\/concepts\/services-networking\/service\/\">Service<\/a>\u3068\u3044\u3046\u4ed5\u7d44\u307f\u306b\u7528\u3044\u3089\u308c\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u3067\u3059\u3002<br \/>\nVagrant + Virtualbox \u3067\u30b2\u30b9\u30c8OS\u306e\u30d7\u30e9\u30a4\u30de\u30ea\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9(\u4f8b\u3048\u3070eth0)\u306b\u4ed8\u4e0e\u3055\u308c\u308b <span style=\"background-color: red; color: white;\">10.0.2.15\/32<\/span> \u3068\u82e5\u5e72\u307e\u304e\u3089\u308f\u3057\u3044\u305f\u3081\u3001\u5909\u66f4\u3057\u3066\u304a\u304f\u3068\u7406\u89e3\u3057\u3084\u3059\u304f\u306a\u308b\u3068\u601d\u3044\u307e\u3059\u3002<br \/>\nService\u306b\u7528\u3044\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u3092\u5909\u66f4\u3059\u308b\u306b\u306f kubeadm init\u306e <a href=\"https:\/\/kubernetes.io\/ja\/docs\/setup\/production-environment\/tools\/kubeadm\/kubelet-integration\/#propagating-cluster-level-configuration-to-each-kubelet\">--service-cidr<\/a> \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubeadm init --service-cidr 203.0.113.0\/24\n<\/pre>\n<h3>192.168.0.0\/16<\/h3>\n<p><span style=\"background-color: black; color: white;\">192.168.0.0\/16<\/span>\u306f\u3001 <a href=\"https:\/\/kubernetes.io\/ja\/docs\/concepts\/cluster-administration\/networking\/\">Pod\u9593\u306e\u901a\u4fe1<\/a> \u306b <a href=\"https:\/\/docs.projectcalico.org\/about\/about-calico\">Calico<\/a> \u3092\u7528\u3044\u308b\u5834\u5408\u306b\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u4f7f\u7528\u3055\u308c\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u3067\u3059\u3002<br \/>\n\u524d\u8ff0\u306e\u901a\u308a\u3001\u672c\u7a3f\u306e\u30db\u30b9\u30c8\u30de\u30b7\u30f3\u306eIP\u30a2\u30c9\u30ec\u30b9\u3067\u3042\u308b <span style=\"background-color: yellow;\">192.168.24.201<\/span> \u3092\u542b\u3093\u3067\u3044\u308b\u305f\u3081\u5909\u66f4\u3057\u307e\u3057\u3087\u3046\u3002<br \/>\nCalico\u304c\u4f7f\u7528\u3059\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u3092\u5909\u66f4\u3059\u308b\u306b\u306f kubeadm init\u306e <a href=\"https:\/\/kubernetes.io\/docs\/setup\/production-environment\/tools\/kubeadm\/create-cluster-kubeadm\/#pod-network\">--pod-network-cidr<\/a> \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4f7f\u7528\u3057\u3001<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubeadm init --pod-network-cidr 198.51.100.0\/24\n<\/pre>\n<p>\u3055\u3089\u306bCalico\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306b\u5229\u7528\u3059\u308bYAML\u30d5\u30a1\u30a4\u30eb\u3092\u5909\u66f4\u3057\u307e\u3059\u3002\u3053\u308c\u306f\u5f8c\u8ff0\u3057\u307e\u3059\u3002<\/p>\n<h2>\u5b9f\u969b\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h2>\n<p>\u4ee5\u4e0a\u3092\u8e0f\u307e\u3048\u3066\u3001\u5b9f\u969b\u306bKubernetes\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3092\u884c\u3063\u3066\u307f\u307e\u3059\u3002<\/p>\n<h3>\u30b2\u30b9\u30c8OS\u306e\u6e96\u5099<\/h3>\n<p>\u6b21\u306eVagrantfile\u3067\u3001\u30b2\u30b9\u30c8OS\u306e\u30d7\u30e9\u30a4\u30de\u30ea\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306eIP\u30a2\u30c9\u30ec\u30b9\u3092 <span style=\"background-color: red; color: white;\">10.0.3.15\/32<\/span> \u306b\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059(\u30c7\u30d5\u30a9\u30eb\u30c8\u306f 10.0.2.15\/32)\u3002<br \/>\n\u307e\u305f\u3001\u30b2\u30b9\u30c8OS\u306eIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306f\u3001\u30db\u30b9\u30c8\u30de\u30b7\u30f3\u306eIP\u30a2\u30c9\u30ec\u30b9 <span style=\"background-color: yellow;\">192.168.24.201<\/span> \u3068\u3084\u3084\u307e\u304e\u3089\u308f\u3057\u3044\u3067\u3059\u304c\u5927\u304d\u306a\u554f\u984c\u3068\u306a\u308b\u3053\u3068\u306f\u5c11\u306a\u3044\u305f\u3081\u3001<span style=\"background-color: orange; color: white;\">192.168.123.0\/24<\/span> \u3068\u3057\u3066\u304a\u304d\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"ruby\">\nVagrant.configure(&quot;2&quot;) do |config|\nconfig.vm.box = &quot;ubuntu\/bionic64&quot;\nconfig.vm.box_check_update = false\nconfig.vm.define &quot;master&quot; do |cf|\ncf.vm.hostname = &quot;master&quot;\ncf.vm.network &quot;private_network&quot;, ip: &quot;192.168.123.101&quot;\ncf.vm.provider &quot;virtualbox&quot; do |vb|\nvb.memory = 4096\nvb.customize [&quot;modifyvm&quot;, :id, &quot;--natnet1&quot;, &quot;10.0.3\/24&quot;]\nend\nend\nconfig.vm.define &quot;worker&quot; do |cf|\ncf.vm.hostname = &quot;worker&quot;\ncf.vm.network &quot;private_network&quot;, ip: &quot;192.168.123.102&quot;\ncf.vm.provider &quot;virtualbox&quot; do |vb|\nvb.memory = 4096\nvb.customize [&quot;modifyvm&quot;, :id, &quot;--natnet1&quot;, &quot;10.0.3\/24&quot;]\nend\nend\nend\n<\/pre>\n<p>master \u3068 worker \u306e\u4e21\u30b2\u30b9\u30c8OS\u306e \/etc\/hosts \u3067\u3001\u4e21\u30db\u30b9\u30c8\u306eIP\u30a2\u30c9\u30ec\u30b9\u304c 127.0.2.1 \u3068\u306a\u3063\u3066\u3044\u308b\u3068\u3053\u308d\u3092 Vagrantfile \u3067\u8a2d\u5b9a\u3057\u305f\u305d\u308c\u305e\u308c\u306eIP\u30a2\u30c9\u30ec\u30b9\u306b\u5909\u66f4\u3057\u3001\u304a\u4e92\u3044\u306b\u540d\u524d\u89e3\u6c7a\u3067\u304d\u308b\u3088\u3046\u306b\u8ffd\u8a18\u3082\u3057\u3066\u304a\u304d\u307e\u3059(\u203b\u4e00\u90e8\u629c\u7c8b)\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n192.168.123.101 master\n192.168.123.102 worker\n<\/pre>\n<h3>Docker\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3068\u8a2d\u5b9a<\/h3>\n<p><a href=\"https:\/\/kubernetes.io\/ja\/docs\/setup\/production-environment\/container-runtimes\/\">CRI\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/a>\u306b\u5f93\u3044\u3001Docker\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<br \/>\n\/etc\/docker\/daemon.json \u306e\u8a2d\u5b9a\u306b\u306f default-address-pools \u30ad\u30fc\u306e\u8a2d\u5b9a\u3092\u8ffd\u52a0\u3057\u3001docker0\u306eIP\u30a2\u30c9\u30ec\u30b9\u3092 <span style=\"background-color: green; color: white;\">172.20.0.0\/16<\/span> \u306b\u5909\u66f4\u3057\u307e\u3059(\u30c7\u30d5\u30a9\u30eb\u30c8\u306f 172.17.0.0\/16)\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"javascript\">\n{\n&quot;exec-opts&quot;: [&quot;native.cgroupdriver=systemd&quot;],\n&quot;log-driver&quot;: &quot;json-file&quot;,\n&quot;log-opts&quot;: {\n&quot;max-size&quot;: &quot;100m&quot;\n},\n&quot;storage-driver&quot;: &quot;overlay2&quot;,\n&quot;default-address-pools&quot;: [\n{\n&quot;base&quot;: &quot;172.20.0.0\/16&quot;,\n&quot;size&quot;: 24\n}\n]\n}\n<\/pre>\n<h3>kubeadm\u306b\u3088\u308bKubernetes\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h3>\n<p><a href=\"https:\/\/kubernetes.io\/ja\/docs\/setup\/production-environment\/tools\/kubeadm\/\">kubeadm\u3092\u4f7f\u3063\u3066\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u69cb\u7bc9\u3059\u308b<\/a>\u306b\u5f93\u3044\u3001kubeadm\u3067Kubernetes\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/p>\n<p>\u307e\u305a\u306f<a href=\"https:\/\/kubernetes.io\/ja\/docs\/setup\/production-environment\/tools\/kubeadm\/install-kubeadm\/\">kubeadm\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/a>\u306b\u5f93\u3044\u3001master\u30b2\u30b9\u30c8\u3068worker\u30b2\u30b9\u30c8\u306e\u4e21\u65b9\u306b kubelet, kubeadm, kubectl \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/p>\n<p>\u6b21\u306b<a href=\"https:\/\/kubernetes.io\/ja\/docs\/setup\/production-environment\/tools\/kubeadm\/create-cluster-kubeadm\/\">kubeadm\u3092\u4f7f\u7528\u3057\u305f\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u4f5c\u6210<\/a>\u306b\u5f93\u3044\u3001master\u30b2\u30b9\u30c8\u3067 kubadm init \u3092\u5b9f\u884c\u3057\u307e\u3059\u304c\u3001\u3053\u308c\u306b\u306f\u524d\u8ff0\u306e\u901a\u308a\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u5fc5\u8981\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<p>Service\u306b\u7528\u3044\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306f<span style=\"background-color: blue; color: white;\">203.0.113.0\/24<\/span>(\u30c7\u30d5\u30a9\u30eb\u30c8\u306f10.96.0.0\/12)\u3068\u3057\u3001Pod\u9593\u901a\u4fe1\u306e\u305f\u3081\u306b\u7528\u3044\u308bIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306f<span style=\"background-color: black; color: white;\">198.51.100.0\/24<\/span>(\u30c7\u30d5\u30a9\u30eb\u30c8\u306f192.168.0.0\/16)\u3068\u3057\u307e\u3059\u3002\u307e\u305f\u3001\u30d7\u30e9\u30a4\u30de\u30ea\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u81ea\u52d5\u691c\u77e5\u3057\u306a\u3044\u3088\u3046 --apiserver-advertise-address \u30aa\u30d7\u30b7\u30e7\u30f3\u3067master\u30b2\u30b9\u30c8\u306eIP\u30a2\u30c9\u30ec\u30b9 192.168.123.101 \u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ sudo kubeadm init --service-cidr 203.0.113.0\/24 --pod-network-cidr 198.51.100.0\/24 --apiserver-advertise-address 192.168.123.101\n<\/pre>\n<p>\u6b63\u5e38\u306b\u5b8c\u4e86\u3059\u308c\u3070\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u7fa4\u304c\u8868\u793a\u3055\u308c\u308b\u306e\u3067\u3001\u3053\u308c\u3092\u30b3\u30d4\u30fc\uff06\u30da\u30fc\u30b9\u30c8\u3057\u3066master\u30b2\u30b9\u30c8\u3067\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\nmkdir -p $HOME\/.kube\nsudo cp -i \/etc\/kubernetes\/admin.conf $HOME\/.kube\/config\nsudo chown $(id -u):$(id -g) $HOME\/.kube\/config\n<\/pre>\n<p>\u3055\u3089\u306b\u3053\u306e\u30b3\u30de\u30f3\u30c9\u7fa4\u306e\u5f8c\u306b kubeadm join \u3068\u3044\u3046\u30b3\u30de\u30f3\u30c9\u304c\u8868\u793a\u3055\u308c\u308b\u306e\u3067\u3001\u3053\u308c\u3092\u30b3\u30d4\u30fc\uff06\u30da\u30fc\u30b9\u30c8\u3057\u3066worker\u30b2\u30b9\u30c8\u3067\u5b9f\u884c\u3057\u307e\u3059\u3002\u6b21\u306f\u672c\u7a3f\u3067\u306e\u4f8b\u3067\u3001\u7d30\u304b\u3044\u6587\u5b57\u5217\u306f\u7570\u306a\u308a\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ sudo kubeadm join 192.168.123.101:6443 --token wq7k60.igq3l1qr7ehxw7yi \\\n--discovery-token-ca-cert-hash sha256:ce72112c0048e7e00a9b2a7857fba65ce3a3aeeaf746e364ed1c8fa01aa449cd\n<\/pre>\n<p>\u3055\u3089\u306b kubelet \u304c\u30d7\u30e9\u30a4\u30de\u30ea\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u81ea\u52d5\u691c\u77e5\u3057\u306a\u3044\u3088\u3046\u624b\u52d5\u3067\u8a2d\u5b9a\u3057\u307e\u3059\u3002\u5177\u4f53\u7684\u306b\u306f \/etc\/default\/kubelet \u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u3001master \u3067\u3042\u308c\u3070\u6b21\u3092\u3001<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\nKUBELET_EXTRA_ARGS=--node-ip=192.168.123.101\n<\/pre>\n<p>worker \u3067\u3042\u308c\u3070\u6b21\u3092\u3001<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\nKUBELET_EXTRA_ARGS=--node-ip=192.168.123.102\n<\/pre>\n<p>\u305d\u308c\u305e\u308c\u8a18\u8f09\u3057\u3001<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ sudo systemctl daemon-reload\n$ sudo systemctl restart kubelet\n<\/pre>\n<p>\u3092\u5b9f\u884c\u3057\u3066 kubelet \u3092\u518d\u8d77\u52d5\u3057\u3066\u8a2d\u5b9a\u3092\u8aad\u307f\u8fbc\u307e\u305b\u307e\u3059\u3002ps\u30b3\u30de\u30f3\u30c9\u3067kubelet\u30d7\u30ed\u30bb\u30b9\u3092\u78ba\u8a8d\u3057\u3001 --node-ip=192.168.123.10X \u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u4ed8\u4e0e\u3055\u308c\u3066\u3044\u308c\u3070\u6210\u529f\u3067\u3059\u3002<\/p>\n<p>master\u30b2\u30b9\u30c8\u3067 kubelet get nodes \u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3001\u6b21\u306e\u3088\u3046\u306b\u306a\u3063\u3066\u3044\u308c\u3070\u3072\u3068\u307e\u305a kubeadm \u306b\u3088\u308b Kubernetes \u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306f\u4e00\u6bb5\u843d\u3067\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl get nodes\nNAME STATUS ROLES AGE VERSION\nmaster NotReady control-plane,master 12m v1.22.0\nworker NotReady 7m2s v1.22.0\n<\/pre>\n<h3>Calico\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h3>\n<p><a href=\"https:\/\/docs.projectcalico.org\/getting-started\/kubernetes\/quickstart#install-calico\">Install Calico<\/a>\u306b\u5f93\u3044\u3001Pod\u9593\u901a\u4fe1\u306e\u305f\u3081\u306eCalico\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002\u3059\u3079\u3066master\u30b2\u30b9\u30c8\u3067\u5b9f\u65bd\u3057\u307e\u3059\u3002<\/p>\n<p>\u307e\u305a1\u3064\u76ee\u306eYAML\u30d5\u30a1\u30a4\u30eb\u306f\u305d\u306e\u307e\u307e\u9069\u7528\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl create -f https:\/\/docs.projectcalico.org\/manifests\/tigera-operator.yaml\n<\/pre>\n<p>2\u3064\u76ee\u306eYAML\u306b\u306f\u3001\u5909\u66f4\u3059\u3079\u304dIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306e\u8a18\u8f09\u304c\u3042\u308b\u305f\u3081\u3001\u305d\u306e\u307e\u307e\u9069\u7528\u3057\u3066\u306f\u3044\u3051\u307e\u305b\u3093\u3002YAML\u30d5\u30a1\u30a4\u30eb\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3001\u30c7\u30d5\u30a9\u30eb\u30c8\u306eIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2192.168.0.0\/16\u3092<span style=\"background-color: black; color: white;\">198.51.100.0\/24<\/span>\u306b\u5909\u66f4\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"diff\">\n$ wget https:\/\/docs.projectcalico.org\/manifests\/custom-resources.yaml\n$ cp custom-resources.yaml custom-resources.yaml.orig\n$ vi custom-resources.yaml\n$ diff -u custom-resources.yaml.orig custom-resources.yaml\n--- custom-resources.yaml.orig 2021-08-10 07:22:52.987585977 +0000\n+++ custom-resources.yaml 2021-08-10 07:23:44.471585977 +0000\n@@ -10,7 +10,7 @@\n# Note: The ipPools section cannot be modified post-install.\nipPools:\n- blockSize: 26\n- cidr: 192.168.0.0\/16\n+ cidr: 198.51.100.0\/24\nencapsulation: VXLANCrossSubnet\nnatOutgoing: Enabled\nnodeSelector: all()\n<\/pre>\n<p>\u5909\u66f4\u3057\u305fYAML\u30d5\u30a1\u30a4\u30eb\u3092\u9069\u7528\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl create -f custom-resources.yaml\n<\/pre>\n<p>\u5c11\u3057\u5f85\u3061\u3001\u6b21\u306e\u3088\u3046\u306bSTATUS\u304c\u3059\u3079\u3066Running\u306b\u306a\u308c\u3070\u6210\u529f\u3067\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl get pods -n calico-system\nNAME READY STATUS RESTARTS AGE\ncalico-kube-controllers-585ff4589d-tvtnw 1\/1 Running 0 15m\ncalico-node-g6jxs 1\/1 Running 0 15m\ncalico-node-vtqwg 1\/1 Running 0 15m\ncalico-typha-57d65ff8f5-4rbnm 1\/1 Running 0 15m\ncalico-typha-57d65ff8f5-k75r8 1\/1 Running 0 15m\n<\/pre>\n<p>\u307e\u305f\u3053\u3061\u3089\u306eSTATUS\u3082\u3059\u3079\u3066Ready\u3068\u306a\u3063\u3066\u3044\u308b\u3053\u3068\u3082\u78ba\u8a8d\u3057\u307e\u3057\u3087\u3046\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl get nodes\nNAME STATUS ROLES AGE VERSION\nmaster Ready control-plane,master 45m v1.22.0\nworker Ready 39m v1.22.0\n<\/pre>\n<h2>\u52d5\u4f5c\u30c6\u30b9\u30c8<\/h2>\n<p>master\u30b2\u30b9\u30c8\u4e0a\u3067\u3082\u30ef\u30fc\u30af\u30ed\u30fc\u30c9\u3092\u5b9f\u884c\u3067\u304d\u308b\u3088\u3046\u306b\u6b21\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl taint nodes --all node-role.kubernetes.io\/master-\nnode\/master untainted\nerror: taint &quot;node-role.kubernetes.io\/master&quot; not found\n<\/pre>\n<p>\u30a8\u30e9\u30fc\u306e\u3088\u3046\u306b\u898b\u3048\u307e\u3059\u304c\u30011\u884c\u76ee\u306b\u300cnode\/master untainted\u300d\u3068\u51fa\u3066\u3044\u308c\u3070\u554f\u984c\u3042\u308a\u307e\u305b\u3093\u3002<\/p>\n<p>\u30c7\u30e2\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3068\u3057\u3066<a href=\"https:\/\/microservices-demo.github.io\/\">Sock Shop<\/a>\u3092\u30c7\u30d7\u30ed\u30a4\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl create -f https:\/\/raw.githubusercontent.com\/microservices-demo\/microservices-demo\/master\/deploy\/kubernetes\/complete-demo.yaml\n<\/pre>\n<p>\u3057\u3070\u3089\u304f\u5f85\u3061\u3001\u6b21\u3092\u5b9f\u884c\u3057\u3066STATUS\u304c\u3059\u3079\u3066Running\u306b\u306a\u3063\u3066\u3044\u305f\u3089\u6210\u529f\u3067\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl -n sock-shop get pods\nNAME READY STATUS RESTARTS AGE\ncarts-b4d4ffb5c-7h2hq 1\/1 Running 0 20m\ncarts-db-6c6c68b747-27bjb 1\/1 Running 0 20m\ncatalogue-759cc6b86-gq9rc 1\/1 Running 0 20m\ncatalogue-db-96f6f6b4c-qd7df 1\/1 Running 0 20m\nfront-end-5c89db9f57-pf5mn 1\/1 Running 0 20m\norders-7664c64d75-hqwxk 1\/1 Running 0 20m\norders-db-659949975f-bckt8 1\/1 Running 0 20m\npayment-7bcdbf45c9-d2g8j 1\/1 Running 0 20m\nqueue-master-5f6d6d4796-7frwb 1\/1 Running 0 20m\nrabbitmq-5bcbb547d7-52s6p 2\/2 Running 0 20m\nsession-db-7cf97f8d4f-xfvzh 1\/1 Running 0 20m\nshipping-7f7999ffb7-2xqh8 1\/1 Running 0 20m\nuser-68df64db9c-tcj28 1\/1 Running 0 20m\nuser-db-6df7444fc-gtrz5 1\/1 Running 0 20m\n<\/pre>\n<p>\u30d6\u30e9\u30a6\u30b6\u3067 http:\/\/192.168.123.101:30001 \u3042\u308b\u3044\u306f http:\/\/192.168.123.102:30001 \u306b\u30a2\u30af\u30bb\u30b9\u3057\u3001Sock Shop\u306eUI\u304c\u8868\u793a\u3055\u308c\u308c\u3070\u6b63\u5e38\u306b\u52d5\u4f5c\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-36771\" src=\"\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2020\/08\/socks-768x553-1.png\" alt=\"\" width=\"768\" height=\"553\" srcset=\"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2020\/08\/socks-768x553-1.png 768w, https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2020\/08\/socks-768x553-1-360x259.png 360w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/p>\n<h3>IP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306e\u78ba\u8a8d<\/h3>\n<p>--pod-network-cidr 198.51.100.0\/24 \u304c\u6709\u52b9\u3060\u3063\u305f\u304b\u3069\u3046\u304b\u306f\u6b21\u3067\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl -n sock-shop get pods -o jsonpath=&#039;{range .items[*]}{.status.podIP}{&quot;\\n&quot;}&#039;\n198.51.100.215\n198.51.100.207\n198.51.100.8\n198.51.100.209\n198.51.100.9\n198.51.100.210\n198.51.100.14\n198.51.100.212\n198.51.100.11\n198.51.100.216\n198.51.100.13\n198.51.100.10\n198.51.100.206\n198.51.100.12\n<\/pre>\n<p>--service-cidr 203.0.113.0\/24 \u304c\u6709\u52b9\u3060\u3063\u305f\u304b\u3069\u3046\u304b\u306f\u6b21\u3067\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl -n sock-shop get svc -o jsonpath=&#039;{range .items[*]}{.spec.clusterIP}{&quot;\\n&quot;}&#039;\n203.0.113.190\n203.0.113.234\n203.0.113.36\n203.0.113.141\n203.0.113.12\n203.0.113.171\n203.0.113.235\n203.0.113.53\n203.0.113.73\n203.0.113.61\n203.0.113.254\n203.0.113.77\n203.0.113.21\n203.0.113.227\n<\/pre>\n<h2>\u7247\u4ed8\u3051<\/h2>\n<p>\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3067Sock Shop\u3092\u505c\u6b62\u30fb\u524a\u9664\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"bash\">\n$ kubectl delete ns sock-shop\nnamespace &quot;sock-shop&quot; deleted\n<\/pre>\n<h2>\u307e\u3068\u3081<\/h2>\n<p>\u672c\u7a3f\u3067\u306fVagrant + Virtualbox\u3067Kubernetes\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u969b\u306b\u554f\u984c\u3068\u306a\u308b\u30d7\u30e9\u30a4\u30de\u30ea\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3068\u3001Kubernetes\u3067\u4f7f\u308f\u308c\u308b\u3055\u307e\u3056\u307e\u306aIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u3068\u305d\u306e\u5909\u66f4\u65b9\u6cd5\u3001\u305d\u3057\u3066\u5b9f\u969b\u306ekubeadm\u306b\u3088\u308bKubernetes\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3068\u30c7\u30e2\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30c7\u30d7\u30ed\u30a4\u306b\u3064\u3044\u3066\u898b\u3066\u307f\u307e\u3057\u305f\u3002<br \/>\nIP\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306b\u3064\u3044\u3066\u628a\u63e1\u3057\u3066\u304a\u3051\u3070Kubernetes\u306e\u5b66\u7fd2\u4e2d\u306b\u906d\u9047\u3059\u308b\u7591\u554f\u3084\u30c8\u30e9\u30d6\u30eb\u306a\u3069\u306b\u5bfe\u51e6\u3057\u3084\u3059\u304f\u306a\u308a\u3001\u307e\u305fVagrant + Virtualbox\u3067Kubernetes\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u3066\u3044\u308c\u3070\u30af\u30e9\u30a6\u30c9\u6599\u91d1\u7b49\u3092\u304b\u3051\u305a\u306b\u624b\u8efd\u306b\u5b9f\u9a13\u3059\u308b\u3053\u3068\u3082\u53ef\u80fd\u3067\u3059\u3002<br \/>\n\u7686\u69d8\u306eKubernetes\u306e\u5b66\u7fd2\u306b\u672c\u7a3f\u304c\u5f79\u7acb\u3066\u3070\u5e78\u3044\u3067\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u300cKubernetes\u306e\u52c9\u5f37\u306e\u305f\u3081\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304b\u3089\u59cb\u3081\u3066\u307f\u3088\u3046\uff01 \u2026\u2026\u3068\u601d\u3063\u305f\u3051\u308c\u3069\u3001\u8a2d\u5b9a\u3059\u3079\u304dIP\u30a2\u30c9\u30ec\u30b9\u304c\u305f\u304f\u3055\u3093\u51fa\u3066\u304d\u3066\u3088\u304f\u308f\u304b\u3089\u306a\u3044\u2026\u2026\u3002Kubernetes\u3092\u52c9\u5f37\u3057\u305f\u3044\u304b\u3089\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u306e\u306b\u3001\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059 [&#8230;]<\/p>\n","protected":false},"author":2,"featured_media":36771,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[31,43,42,122],"tags":[],"class_list":["post-43761","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-higuchi","category-docker","category-hashicorp","category-kubernetes"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3<\/title>\n<meta name=\"description\" content=\"d-higuchi, Docker, HashiCorp, Kubernetes |\u300cKubernetes\u306e\u52c9\u5f37\u306e\u305f\u3081\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304b\u3089\u59cb\u3081\u3066\u307f\u3088\u3046\uff01\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761\" \/>\n<meta property=\"og:locale\" content=\"ja_JP\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\" \/>\n<meta property=\"og:description\" content=\"d-higuchi, Docker, HashiCorp, Kubernetes |\u300cKubernetes\u306e\u52c9\u5f37\u306e\u305f\u3081\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304b\u3089\u59cb\u3081\u3066\u307f\u3088\u3046\uff01\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761\" \/>\n<meta property=\"og:site_name\" content=\"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/creationline\" \/>\n<meta property=\"article:published_time\" content=\"2021-08-13T06:00:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-29T06:10:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2020\/08\/socks-768x553-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"768\" \/>\n\t<meta property=\"og:image:height\" content=\"553\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Daisuke Higuchi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@creationline\" \/>\n<meta name=\"twitter:site\" content=\"@creationline\" \/>\n<meta name=\"twitter:label1\" content=\"\u57f7\u7b46\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daisuke Higuchi\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"5\u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761\"},\"author\":{\"name\":\"Daisuke Higuchi\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#\\\/schema\\\/person\\\/16f1373831fb6fd17387f16ae1195206\"},\"headline\":\"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox\",\"datePublished\":\"2021-08-13T06:00:39+00:00\",\"dateModified\":\"2023-08-29T06:10:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761\"},\"wordCount\":1019,\"image\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/socks-768x553-1.png\",\"articleSection\":[\"d-higuchi\",\"Docker\",\"HashiCorp\",\"Kubernetes\"],\"inLanguage\":\"ja\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761\",\"name\":\"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/socks-768x553-1.png\",\"datePublished\":\"2021-08-13T06:00:39+00:00\",\"dateModified\":\"2023-08-29T06:10:43+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#\\\/schema\\\/person\\\/16f1373831fb6fd17387f16ae1195206\"},\"description\":\"d-higuchi, Docker, HashiCorp, Kubernetes |\u300cKubernetes\u306e\u52c9\u5f37\u306e\u305f\u3081\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304b\u3089\u59cb\u3081\u3066\u307f\u3088\u3046\uff01\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761#breadcrumb\"},\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761#primaryimage\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/socks-768x553-1.png\",\"contentUrl\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/socks-768x553-1.png\",\"width\":768,\"height\":553},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\\\/43761#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"HOME\",\"item\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6\",\"item\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Docker\",\"item\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cloudnative\\\/docker\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#website\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/\",\"name\":\"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\",\"description\":\"\u30a2\u30b8\u30e3\u30a4\u30eb\uff06DevOps\u3001\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6\u3001AI\uff06LLM\u306e\u5148\u7aef\u6280\u8853\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ja\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#\\\/schema\\\/person\\\/16f1373831fb6fd17387f16ae1195206\",\"name\":\"Daisuke Higuchi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/d-higuchi-wp-icon-230x230.png\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/d-higuchi-wp-icon-230x230.png\",\"contentUrl\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/d-higuchi-wp-icon-230x230.png\",\"caption\":\"Daisuke Higuchi\"},\"description\":\"Chef\u30fbDocker\u30fbMirantis\u88fd\u54c1\u306a\u3069\u306e\u6280\u8853\u8981\u7d20\u306b\u52a0\u3048\u3066\u3001\u4f1a\u8b70\u306e\u9032\u3081\u65b9\u30fb\u6587\u7ae0\u306e\u66f8\u304d\u65b9\u306a\u3069\u306e\u696d\u52d9\u6539\u5584\u306b\u3082\u53d6\u308a\u7d44\u3093\u3067\u3044\u307e\u3059\u3002\u300cChef\u6d3b\u7528\u30ac\u30a4\u30c9\u300d\u5171\u8457\u306e\u307b\u304b\u3001Debian Official Developer\u3082\u3084\u3063\u3066\u3044\u307e\u3059\u3002\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/author\\\/higuchi\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","description":"d-higuchi, Docker, HashiCorp, Kubernetes |\u300cKubernetes\u306e\u52c9\u5f37\u306e\u305f\u3081\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304b\u3089\u59cb\u3081\u3066\u307f\u3088\u3046\uff01","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761","og_locale":"ja_JP","og_type":"article","og_title":"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","og_description":"d-higuchi, Docker, HashiCorp, Kubernetes |\u300cKubernetes\u306e\u52c9\u5f37\u306e\u305f\u3081\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304b\u3089\u59cb\u3081\u3066\u307f\u3088\u3046\uff01","og_url":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761","og_site_name":"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","article_publisher":"https:\/\/www.facebook.com\/creationline","article_published_time":"2021-08-13T06:00:39+00:00","article_modified_time":"2023-08-29T06:10:43+00:00","og_image":[{"width":768,"height":553,"url":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2020\/08\/socks-768x553-1.png","type":"image\/png"}],"author":"Daisuke Higuchi","twitter_card":"summary_large_image","twitter_creator":"@creationline","twitter_site":"@creationline","twitter_misc":{"\u57f7\u7b46\u8005":"Daisuke Higuchi","\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593":"5\u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761#article","isPartOf":{"@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761"},"author":{"name":"Daisuke Higuchi","@id":"https:\/\/www.creationline.com\/tech-blog\/#\/schema\/person\/16f1373831fb6fd17387f16ae1195206"},"headline":"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox","datePublished":"2021-08-13T06:00:39+00:00","dateModified":"2023-08-29T06:10:43+00:00","mainEntityOfPage":{"@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761"},"wordCount":1019,"image":{"@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761#primaryimage"},"thumbnailUrl":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2020\/08\/socks-768x553-1.png","articleSection":["d-higuchi","Docker","HashiCorp","Kubernetes"],"inLanguage":"ja"},{"@type":"WebPage","@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761","url":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761","name":"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","isPartOf":{"@id":"https:\/\/www.creationline.com\/tech-blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761#primaryimage"},"image":{"@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761#primaryimage"},"thumbnailUrl":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2020\/08\/socks-768x553-1.png","datePublished":"2021-08-13T06:00:39+00:00","dateModified":"2023-08-29T06:10:43+00:00","author":{"@id":"https:\/\/www.creationline.com\/tech-blog\/#\/schema\/person\/16f1373831fb6fd17387f16ae1195206"},"description":"d-higuchi, Docker, HashiCorp, Kubernetes |\u300cKubernetes\u306e\u52c9\u5f37\u306e\u305f\u3081\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u304b\u3089\u59cb\u3081\u3066\u307f\u3088\u3046\uff01","breadcrumb":{"@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761#breadcrumb"},"inLanguage":"ja","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761"]}]},{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761#primaryimage","url":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2020\/08\/socks-768x553-1.png","contentUrl":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2020\/08\/socks-768x553-1.png","width":768,"height":553},{"@type":"BreadcrumbList","@id":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker\/43761#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"HOME","item":"https:\/\/www.creationline.com\/tech-blog"},{"@type":"ListItem","position":2,"name":"\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6","item":"https:\/\/www.creationline.com\/tech-blog\/cloudnative"},{"@type":"ListItem","position":3,"name":"Docker","item":"https:\/\/www.creationline.com\/tech-blog\/cloudnative\/docker"},{"@type":"ListItem","position":4,"name":"Kubernetes\u3092Virtualbox\u306bVagrant\u3068Kubeadm\u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u307f\u3088\u3046 #kubernetes #kubeadm #vagrant #virtualbox"}]},{"@type":"WebSite","@id":"https:\/\/www.creationline.com\/tech-blog\/#website","url":"https:\/\/www.creationline.com\/tech-blog\/","name":"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","description":"\u30a2\u30b8\u30e3\u30a4\u30eb\uff06DevOps\u3001\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6\u3001AI\uff06LLM\u306e\u5148\u7aef\u6280\u8853","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.creationline.com\/tech-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ja"},{"@type":"Person","@id":"https:\/\/www.creationline.com\/tech-blog\/#\/schema\/person\/16f1373831fb6fd17387f16ae1195206","name":"Daisuke Higuchi","image":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2023\/08\/d-higuchi-wp-icon-230x230.png","url":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2023\/08\/d-higuchi-wp-icon-230x230.png","contentUrl":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2023\/08\/d-higuchi-wp-icon-230x230.png","caption":"Daisuke Higuchi"},"description":"Chef\u30fbDocker\u30fbMirantis\u88fd\u54c1\u306a\u3069\u306e\u6280\u8853\u8981\u7d20\u306b\u52a0\u3048\u3066\u3001\u4f1a\u8b70\u306e\u9032\u3081\u65b9\u30fb\u6587\u7ae0\u306e\u66f8\u304d\u65b9\u306a\u3069\u306e\u696d\u52d9\u6539\u5584\u306b\u3082\u53d6\u308a\u7d44\u3093\u3067\u3044\u307e\u3059\u3002\u300cChef\u6d3b\u7528\u30ac\u30a4\u30c9\u300d\u5171\u8457\u306e\u307b\u304b\u3001Debian Official Developer\u3082\u3084\u3063\u3066\u3044\u307e\u3059\u3002","url":"https:\/\/www.creationline.com\/tech-blog\/author\/higuchi"}]}},"_links":{"self":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts\/43761","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/comments?post=43761"}],"version-history":[{"count":11,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts\/43761\/revisions"}],"predecessor-version":[{"id":65829,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts\/43761\/revisions\/65829"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/media\/36771"}],"wp:attachment":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/media?parent=43761"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/categories?post=43761"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/tags?post=43761"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}