1、首先模拟python类似shell命令行操作的接口:
python安装subprocess(本地)、paramiko(SSH远程)
#-*- coding: UTF-8 -*- #!/usr/bin/python import os, sys import subprocess import paramiko import settings class RunCmd(object): def __init__(self): self.cmd = 'ls' @staticmethod def local_run(cmd): print('start executing...') print('cmd is -------> %s' % str(cmd)) s = subprocess.Popen(str(cmd), shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) out, err = s.communicate() print("outinfo is -------> %s" % out) print("errinfo is -------> %s" % err) print('finish executing...') print('result:------> %s' % s.returncode) return s.returncode @staticmethod def remote_run(host, username, password, port, cmd): client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect(hostname=host, port=int(port), username=username, password=password, timeout=5) stdin, stdout, stderr = client.exec_command(cmd) result = stdout.read() client.close() return result @staticmethod def krb_run(cmd): print('krb_run start...') print('cmd is -------> %s' % str(cmd)) result = RunCmd.remote_run(settings.KRB_HOST, settings.USERNAME, settings.PASSWORD, settings.PORT, cmd) print('result:------> %s' % result) print('krb_run finish...') return result
2、Kerberos常用的命令操作封装成接口,其他简单。但需要交互的是删除 principal
def delete_user(self, username): cmd = r""" expect -c " set timeout 1; spawn kadmin.local -q \"delete_principal {principal}\" ; expect yes/no {{ send \"yes\r\" }} ; expect *\r expect \r expect eof " """.format(principal=username) RunCmd.krb_run(cmd)
补充知识:python操作有Kerberos认证的hive库
之前访问hive都比较简单,直接用pyhive连接即可。
但是最近遇到了一个问题,hive有了Kerberosren认证。
最终经过各种尝试和灵感迸发,终于解决了这个问题,遂记录之。
代码
from pyhive.hive import connect con = connect(host='XXXX',port=10000,auth='KERBEROS',kerberos_service_name="hive") cursor = con.cursor() cursor.execute('select * from tmp.pricing_calculate_result_spark where time_id="201907171355" limit 10,1') datas = cursor.fetchall() print(datas) cursor.close() con.close()
端口和ip都换成自己的,auth和kerberos_service_name不要改
运行效果
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新日志
2024年11月21日
2024年11月21日
- 罗大佑-无法盗版的青春套装版10CD【WAV】
- 张学友《意乱情迷》蜚声环球 2024 [WAV+CUE][1G]
- 柏菲《好歌30年特别版2CD》最好听的影视歌曲[低速原抓WAV+CUE][1G]
- 张学友《世纪10星·永恒篇》香港版[WAV+CUE][1G]
- 模拟之声慢刻CD《刘德海.琵琶独奏精逊【低速原抓WAV+CUE】
- Jamettone-18052023—improv(EDit)(2024)【FLAC】
- 【索尼精芽20首最棒的苏格兰歌曲集【FLAC】
- 池约翰C.J《少年白马醉春风2 动画原声带》[320K/MP3][26.67MB]
- 池约翰C.J《少年白马醉春风2 动画原声带》[FLAC/分轨][144.13MB]
- 陈致逸《幻想乐园 Fantasyland》[320K/MP3][120.54MB]
- 席卷全球最红舞曲《火辣辣DJ[英文版]》[DTS-WAV]
- 群星-席卷全球最红舞曲《火辣辣DJ中文版》【WAV】
- 模拟之声慢刻CD《声入人心[年度发烧人声严选]》[低速原抓WAV+CUE]
- 陈致逸《幻想乐园 Fantasyland》[FLAC/分轨][554.27MB]
- Rhymist / LusciousBB《年轮》[320K/MP3][76.52MB]