方法1
一時実行用ジョブを作成
上記のコマンドで「onetime_job」というジョブが作成られてそしてすぐ実行されます。
方法2
ステップ1、cronjobの実行履歴を確認
上記のコマンドで実行済みのジョブ履歴を表示することができます。
一時実行用ジョブを作成
kubectl create job ジョブ名 --from=cronjob/元のcronjob名 例↓ 例えば元のcronjobの名前はlog_rotate、すぐ実行してほしい名前はonetime_job kubectl create job onetime_job --from=cronjob /log_rotate |
上記のコマンドで「onetime_job」というジョブが作成られてそしてすぐ実行されます。
kubectl get pod | grep cronjobの名前 |
上記のコマンドで実行済みのジョブ履歴を表示することができます。
kubectl describe pod ステップ1で取得したpod名 |
kubectl run test --image=ステップ2で取得したイメージ名 --restart=Never -- command sleep infinity |
kubectl exec -it test bash # ジョブを実行 |
kubectl delete pod test |
Solr Cloudを使っています。設定変更をしてサーバを立ち上がったらなかなかステータスが「active」になってくれない。
以下のコマンドで動作を確認しみました。
solr healthcheck -c core_name -z zkhost:2181 |
冒頭に以下のエラーが表示されていました↓
No registered leader was found after waiting for 4000ms |
ログに何か他の情報があるかなと思って探ってみましたが特に有力な情報が見つけませんでした。
更にネットでググったらそれも対して対処法を見つけませんでした。
ダメ元でサーバを全部シャットダウンして、一台だけを立ち上がってみたら無事に「active」になってくれました。残りのサーバも立ち上がってみたら無事に復活できました。
恐らく同時に複数台を立ち上がるとリーダーの選出がうまくできてないじゃないかなと思われます。
まず一台だけを立ち上がったら間違いなくリーダーなってくれるはずです。
他のもっといい方法があれば教えていただきたいです。
kubectl run [pod名] --image=[イメージ名] --restart=Never -- command sleep infinity 例↓ mysql接続テストするためのpodを作成 kubectl run mysql- test --image=mysql:5.6 --restart=Never -- command sleep infinity |