/
SaltStack Kubernetes Module Setting

SaltStack Kubernetes Module Setting

Installation

  • Kubernetes API를 호출하는데 사용할 Target Minion에 아래와 같이 Package를 설치합니다.

  • root 권한에서 작업합니다.

kubernetes 설치

  • Kubernetes API Python Bindings

Kubernetes API Python 버전은 12.0.1 로 지정하여 Install 해야 함.

다른 버전 설치 시 오류가 발생할 수 있음.

$ pip3 install kubernetes==12.0.1

Configuring K8s KUBERNETESMOD

salt-minion config에 추가할 내용은 다음과 같다.
아래 中, kubernetes.kubeconfigkubernetes.kubeconfig-data 둘 중 하나만 설정하면 된다.
만일 둘 다 설정되어 있다면, kubernetes.kubeconfig를 우선한다.

단, kubernetes.kubeconfig로 설정하였을 경우는, k8s Control plane node에 salt-minion설치 및 설정되어야 하는 경우만 해당된다.(로컬 파일에 접근해야 하기 때문)

원격 노드에서 k8s api를 사용해야 하는 경우kubernetes.kubeconfig-data를 사용하도록 한다.

위의 이유로 CH에서는 kubernetes.kubeconfig-data를 사용하는 방법을 표준으로 채택한다.

kubernetes.kubeconfig: '/root/.kube/config' kubernetes.kubeconfig-data: '<base64 encoded "/root/.kube/config" content>' kubernetes.context: '<context name inside ~/.kube/config>'

kubernetes.kubeconfig-data 설정 방법은 다음과 같다.

먼저 kubeconfig 파일 내용을 base64one line encoding한다.

$ cat ~/.kube/config | base64 | tr -d '\n' YfasdreXBpVmVyc2lvbjogdjEKY2x1c3RlcnM6Ci0gY2x1c3RlcjoKICAgIGNlcnRpZmljYXRlLWF1dGhvcml0eS1kYXRhOiBMUzB0TFMxQ1JVZEpUaUJEUlZKVVNVWkpRMEZVUlMwdExTMHRDazFKU1VONVJFTkRRV0pEWjBGM1NVSkJaMGxDUVVSQlRrSm5hM0ZvYTJsSE9YY3dRa0ZSYzBaQlJFRldUVkpOZDBWUldVUldVVkZFUlhkd2NtUlhTbXdLWTIwMWJHUkhWbnBOUWpSWVJGUkpkMDFFWTNsUFZFRXdUVVJaTVUweGIxaEVWRTEzVFVSamVVNTZRVEJOUkZreFRURnZkMFpVUlZSTlFrVkhRVEZWUlFwQmVFMUxZVE5XYVZwWVNuVmFXRkpzWTNwRFEwRlRTWGRFVVZsS1MyOWFTV2gyWTA1QlVVVkNRbEZCUkdkblJWQkJSRU5EUVZGdlEyZG5SVUpCVG1SaUNuaDRUbkpNYzNNNUwxQlRLMWt5UmpKM1lWZENaMUZHYUdGVFprRjJOMmRsVERkYWQwdEZkREpoYUZoSlV5OVdOWFJTZFZacFFrZDRTRm8zVFdwV2VUWUtZbEpHY1RGWVVEUXlZalI0YzJaRWQwNXdhbUp0YVhoSWNqSlRUemRtVjFrd1dGQlpheTh4TkhkdFRuVnlWMVoyUzNKdFVuWlZUMVpvU0RGUk5uUkdOd3BuTDA5emFWUllkRE5OUVdoeFoyMUxjMEZ0ZFN0dWNrZ3ZVMngyZVRjME1YZFpZalZhYTBNeWRFaEdZbWhUY25FeFVVVlJVaTlQVVU0MFFXMUhPVTl3Q21wd1RVcFhOSEo0YkM5cVprWkZLelpWYlZWT1drVmlOWHBuTjNRM1NUbDVia3hJWTFCa1JraG1UbVZITmtsTmFVb3dNbUp4ZDJsR2NWRmhWMUJPYjA0S2VtZFhOV2gxVUZJeGNqWXdTUzg1UW1sUlZHMVdOMmM0U1RKT0swZE9PVkZsUlVaT2FTOXBSaTlYYzJSSE9YUnNlbXBKZDNaVmNIbGFhMkU0WTJWV2RBcEpOQzlVTUV4cmNFMVBOWFV2YmpoWlpqQkZRMEYzUlVGQllVMXFUVU5GZDBSbldVUldVakJRUVZGSUwwSkJVVVJCWjB0clRVRTRSMEV4VldSRmQwVkNDaTkzVVVaTlFVMUNRV1k0ZDBSUldVcExiMXBKYUhaalRrRlJSVXhDVVVGRVoyZEZRa0ZHVDJ4dWVGWmxjRXgyVm1aMlZIY3pSa001THlzNFprMHhlRm9LWVcxSWMyWTJTV3RoWjJGSlV5OXBXR012VGpJeWNWSmhjelJMV1VvM1FXbEhNMHBPUzBsM09FMTNUbFJTTUdSelVuTTJjSEp0UWpSU2JFMWpia3BHU3dwSU0xQnNNM0ppYVVkNVpFc3hUSGN4VUc1MGJYUlNRalJEVkhOdVFsaHVNbFZvVjNwQk1FcG1kalJIT0cxWlpWWlJjMFZQYlhSbVlrTkxaWHBVY0VwMENuZFhaalYwTmk5elRFcEdSalV5VTBOV1lVc3hiMU5pVGpGdlNrWlpaeXR5UmpobU1XRmtORFpuYjBGMlJ6WlZXRFpDWkRFclpIWjBkblJZVVZKb2IyNEtTalJDT0ZSa2NEZEpWVlZ1WWk5V2J6SnRkRWxGT1doNlpEZEZZWEV3T0hadFQzSmllV0pGVm1rd1JWRlViRXRLUlVwS2FXcEJjbFV3UW1rNWFXaE9OUXBLYlhwYVNIZEVRMFZOTUZwSVQzaFlaM2xXTW14RWJqRXZMMG9yYm1WM1VWUXZlQ3N2TURKa1RISk1MMDE1UzJSQlYxRXlNVzF4V1hKdlFUMEtMUzB0TFMxRlRrUWdRMFZTVkVsR1NVTkJWRVV0TFMwdExRbz0KICAgIHNlcnZlcjogaHR0cHM6Ly8xMC4wLjIuNTo2NDQzCiAgbmFtZToga3ViZXJuZXRlcwpjb250ZXh0czoKLSBjb250ZXh0OgogICAgY2x1c3Rlcjoga3ViZXJuZXRlcwogICAgdXNlcjoga3ViZXJuZXRlcy1hZG1pbgogIG5hbWU6IGt1YmVybmV0ZXMtYWRtaW5Aa3ViZXJuZXRlcwpjdXJyZW50LWNvbnRleHQ6IGt1YmVybmV0ZXMtYWRtaW5Aa3ViZXJuZXRlcwpraW5kOiBDb25maWcKcHJlZmVyZW5jZXM6IHt9CnVzZXJzOgotIG5hbWU6IGt1YmVybmV0ZXMtYWRtaW4KICB1c2VyOgogICAgY2xpZW50LWNlcnRpZmljYXRlLWRhdGE6IExTMHRMUzFDUlVkSlRpQkRSVkpVU1VaSlEwRlVSUzB0TFMwdENrMUpTVU00YWtORFFXUnhaMEYzU1VKQlowbEpaR1JqVWpoRk9HOXNRV3QzUkZGWlNrdHZXa2xvZG1OT1FWRkZURUpSUVhkR1ZFVlVUVUpGUjBFeFZVVUtRWGhOUzJFelZtbGFXRXAxV2xoU2JHTjZRV1ZHZHpCNVRVUkJNMDFxYTNkT1JFRXlUbFJPWVVaM01IbE5WRUV6VFdwcmQwNUVRVEpPVkZwaFRVUlJlQXBHZWtGV1FtZE9Wa0pCYjFSRWJrNDFZek5TYkdKVWNIUlpXRTR3V2xoS2VrMVNhM2RHZDFsRVZsRlJSRVY0UW5Ka1YwcHNZMjAxYkdSSFZucE1WMFpyQ21KWGJIVk5TVWxDU1dwQlRrSm5hM0ZvYTJsSE9YY3dRa0ZSUlVaQlFVOURRVkU0UVUxSlNVSkRaMHREUVZGRlFUTnRZazEzWWs5NU1EQlNjM05NVERNS2NUTXdaMlpyYm5FeFJWazJjVXd5TldKdGRXWmFhRVI0VVROSWIwOVdWaTloVlhwaVkxQTJZalZQZEhjeVNuQTJkeXRUU21kdVpXUXJVa1owUWs1VGFncGlRMUZ2VlRsMVJFNUVURzAyUXk5S01YaHlWVk41YkhOckwxZHNOMjVTVGpCUmNVSjZaMjAwZUd4TFMwRmhSek15U2xCUGRURklWRTFEVDFSQ2JXUXZDbVZNVjJ4SVl5OWhjbEk1WlM5NUszaFZiV3htT1c1VlUzTnRSalZFVjBGSk5WTXZhR3BVT0dkRVltSjRSbTFGTXpsaGJXVkxWSEpTY2paVU1FSnZaWGdLUlV4VWVIWXdWbHBNWW5ocVlWZDZaVUpDY2tVNWVuZGlaRWwzUW1WbWFXNU5jbXR2Wkdnd1kyVlBPSHB4T0hOc1JrTmpTV0YyVm1KM1MxQm1TVFZQWmdwTGEyWnZWRVZNWmtSWEsyOUdhVzA0SzBwVVpuYzRTa041VkRCUVpXaG9ZamxWZUZSYVdGQTRibkpRVDJGNk9HWTRhelpIZFZoVGNGVlhjMHRwVEZab0NsWTBlSGgwZDBsRVFWRkJRbTk1WTNkS1ZFRlBRbWRPVmtoUk9FSkJaamhGUWtGTlEwSmhRWGRGZDFsRVZsSXdiRUpCZDNkRFoxbEpTM2RaUWtKUlZVZ0tRWGRKZDBSUldVcExiMXBKYUhaalRrRlJSVXhDVVVGRVoyZEZRa0ZCWVRORFFYVkNkRUY1YmpsR1l5OHJiRzlXZDB4b1RraEhlbmhSWlhKcWExSTRWZ3A0WmxWclVYRTBhRkZ1YkVwdWRVWlVRbEZqT1dGMUsxcFpZVVJsU0N0Q2VsQkJRVUUzUlZwWVJYcFlibmRpWlZoUVFXRkJOa0Z5WVhwSmRqWmtWemR6Q2pOU1owTm9Va2RoVlhKWGNWTTRNR1pyU0doQlVHdzRieXRUZUZwcFNWSTNhVVZNTmxsV09WVlFUek5vVEc5SGJXMHJOVk5ZVXpGS1JWaFhSVFpNZDJnS1JrZzBkVGhZY0RWWGFXaGhNM1k0VTBkV1pTdDRVMHBSTjBNMVdXRjJSV2RGTkdzMVJHdFZhRmhGV0N0RVZrOXhNbVJUTlVWVFIzRnpXVGQxZDFCbFRncFJLMnhuV1dkME9YVTBaeXR5WXpKQmEwZEpNR2d4VVc1ekswZGhTelUxZDJSMmVEbGFXakp1WlVoa2JVbzBMM1pJUjNCU2NVZHNRbXhvVUU5cUszZzJDa1l4Wml0U01UUktlRUprVmt0emEwNVRNblpLUVUxRU5HMWFMMHBCUkhaeGVscG9TV014YW10SFNEbElSalp1ZG5Zd1RUMEtMUzB0TFMxRlRrUWdRMFZTVkVsR1NVTkJWRVV0TFMwdExRbz0KICAgIGNsaWVudC1rZXktZGF0YTogTFMwdExTMUNSVWRKVGlCU1UwRWdVRkpKVmtGVVJTQkxSVmt0TFMwdExRcE5TVWxGYjJkSlFrRkJTME5CVVVWQk0yMWlUWGRpVDNrd01GSnpjMHhNTTNFek1HZG1hMjV4TVVWWk5uRk1NalZpYlhWbVdtaEVlRkV6U0c5UFZsWXZDbUZWZW1KalVEWmlOVTkwZHpKS2NEWjNLMU5LWjI1bFpDdFNSblJDVGxOcVlrTlJiMVU1ZFVST1JFeHROa012U2pGNGNsVlRlV3h6YXk5WGJEZHVVazRLTUZGeFFucG5iVFI0YkV0TFFXRkhNekpLVUU5MU1VaFVUVU5QVkVKdFpDOWxURmRzU0dNdllYSlNPV1V2ZVN0NFZXMXNaamx1VlZOemJVWTFSRmRCU1FvMVV5OW9hbFE0WjBSaVluaEdiVVV6T1dGdFpVdFVjbEp5TmxRd1FtOWxlRVZNVkhoMk1GWmFUR0o0YW1GWGVtVkNRbkpGT1hwM1ltUkpkMEpsWm1sdUNrMXlhMjlrYURCalpVODRlbkU0YzJ4R1EyTkpZWFpXWW5kTFVHWkpOVTltUzJ0bWIxUkZUR1pFVnl0dlJtbHRPQ3RLVkdaM09FcERlVlF3VUdWb2FHSUtPVlY0VkZwWVVEaHVjbEJQWVhvNFpqaHJOa2QxV0ZOd1ZWZHpTMmxNVm1oV05IaDRkSGRKUkVGUlFVSkJiMGxDUVVkRWNsTTJMMlZNT0VGQ2QxcDJMd3BaWnpsS2NVTTVaelYzVlRZeFlsWlVaVTExTVN0MlJIWXdWRkZxU0RaQ1kzTm1iV2hzVEM5YVRsQmhPVFExSzBKTmNEZE1jVmRHUWpNMFdEZEphR1JKQ2pCNU56bFZkRmMwWnpaVWNubGtWRVptY1VKUVFVNVZRV0ZIUkZOWVJURmxVV056YmxkUmIwSkZjRlJoZHpKdFUyOUNkWGg2YUZkNmQzVlVibTA1Y21VS2JqVTFja05zYmtScGRtbElRVEE0VWpaaFUxRmFNVVozUlRSWVNWSkpiWFJ3WVdwcE1uRmFVRUYzVHpodmVUbEpVVzFQV1VSMmMyTlFhbmM1YjBrdlpBcFRSU3MyWlVaTVZUZENjVzh4TlVwUmVETkVjVEJxZERkWVNsbzVNWHB5Tkc0ME9VMXVjbWxzTkc0d0syRnZWalFyVldWQ2NXRTNURGxFYldJeFVYTnBDbXBtTmxWa1JscFZWWEZsUkN0QlRVY3paMmxUYURONlRuQk1jM04zUjBKcmVVZHZORGxUVTFwVFpuSnVWbWRpTlZRNVJIRlVaVVJCWkhOQlZIaGtlUzhLWWtoNWRVZFpSVU5uV1VWQk9HOWlja2R5T1Vock5WTldiRE4xWldGTlVteHZhRkZpTm1KcmVVTlpkMFIzTkc5cU5XSTJaMDlOY2pKblpXZGhlWGN5TXdwdlFsbDBVMWxVTjBrdmQyaGpVVlFyWW1ObGVFeHZVV2xGYVZRNVRXWTJaM2RpVlZsSEsxQldaMk5oVFZKMFEyOUdlRXRsUldONU9IZDVTRzgyZWpJMkNtZGFkMGROVVM5SlFsbDFOMmxMT0dKbFRYaEtjVTl1Ykc1cVFURmhkV3BvYW5VM0x6RktjMkY0YlRoRVRtWllXQ3RMTTJzclNrMURaMWxGUVRaelIzSUtTbVZFT1hCR05uZFdXREZPY21GVk1IQnZNemx6VGt4clVsSXJRamd2ZURkSFVsSnBPVTFwV0VsbU9FZHBiakUyZVVwc1MybERaSEJXYjI5aVVtd3ZiQXBsYkVOMFRtWXhjSEZMU0RCNmFXVmpNa3MyZWxKUlRXaFJha1ZHVUN0eFYxcDZNV05QVWt0WWNYcHpNQzl1Wmtndk1uTktiSHBDUjFCS1duQldSRVY1Q25VM2NURjZUV2RESzNSNlJrWmpjazFHU2xGU1pEWlpTamMwUVZOQk0yUnpkbXhHWW1wTk1FTm5XVUkxYTNCQkx6bERjVnBJUWpWM2RGSk5VRk5aVURRS016QlBkWGRhYzBoc2FIYzROVkExYUhGR1JVRndlREI1ZFZoeVZURnhaRFZ3UTFKSVpXeFhOa1ZEVm1wV2FrZEZUR3h1ZGtNeVZsa3llRzVuSzJSaWVncDNlV1V5Y3pGeVVHeDNkWGxaT1RSbE1ITktVMEZsVDA1dVZ6TTBibWhVYWpZMldtVTJXalZIZVZkcVZXUTFTelV4ZHpSR2EyeHVPRVpuV25jNVVsRTRDbHBwYm5kR1YwRjViMGQwYm01VWEwb3JORWRRTmxGTFFtZEhTMVV5TkhNemJGTjJkVTh6ZUdFNU1FUkNWRWd2V1hoeWVqTm5jbHB2VTJOcmMzTkpSRk1LY0RnclJsbE1iamd2TUVWMUsyd3lPSGxoYVhSaVJGaFZTSGx2U2xsVVRtaEtOblY0WkVOd1JtZExhMFo0TXpkVGRHbE9NemhuU2pZeFYzRkhNVFIzV2dwSU1UUXdTMWszVm1WVFlWaEtSbmhzUmxsNmQzbzNNMjV3SzIxalJUSk1NRkZDTTNweVFsTjFiWFpFVVhwaGVXbHNWV00yWVZwbGVXNHhNMjVUTjI5TkNreHFZazVCYjBkQlprMWhkSGRVWlZoTGNtZFdXWHBsVldONFdIUXhhRE4wVFRkTGVFMVZWU3RWTlc5dlVYVmphRTlqTUhoaVRYRXdXRE5YVFRoR1IwY0tTbXN3V1ZvdlVFNXVSa1JhVFV4emIxSndVbVZXUlVONU5uZENiRWRCU2tWbVNIRm9XbUl4YVRkbmRFNTZXbFF2YzBrMVNXZzNZa2R5UzFCTmFGSkVlUXB0UlhWYU4wOXBOVVUxSzJabE1UbExOMEpoTTNjeFJUSjJWRVl6U20xd1QxVkJlVkpLTVRZck1FNDJhMjV2UkRKa2RqZzlDaTB0TFMwdFJVNUVJRkpUUVNCUVVrbFdRVlJGSUV0RldTMHRMUzB0Q2c9PQo=

minion.conf파일에 다음과 같이 추가한다.

Testing Salt command

 CloudHub Portal addon argument 추가

  • Sidebar의 Clouds 메뉴에서 Kubernetes Tab을  on/off optionable 처리합니다.

  • CloudHub argument에 Add-on 옵션 추가합니다.

    • -u=k8s:on

  • CloudHub service 재시작

 

Related content

Telegraf Configuration
Telegraf Configuration
Read with this
Upgrade SaltStack Version
Upgrade SaltStack Version
More like this
Kubernetes Monitoring
Kubernetes Monitoring
Read with this
SaltStack OpenStack Module Setting
SaltStack OpenStack Module Setting
More like this
SaltStack GCP Module Setting
SaltStack GCP Module Setting
More like this
Salt-Master/Minion IP 변경 시 조치 사항
Salt-Master/Minion IP 변경 시 조치 사항
More like this