我根据本教程创建了我的第一个 ansible playbook ,所以它看起来像这样:
---
- hosts: hostb
tasks:
- name: Create file
file:
path: /tmp/yallo
state: touch
- hosts: my_hosts
sudo: yes
tasks:
- name: Create user
user:
name: mario
shell: /bin/zsh
- name: Install zlib
yum:
name: zlib
state: latest
Run Code Online (Sandbox Code Playgroud)
但是,我不知道应该将哪些主机放入我的主机文件中。我现在有这样的事情:
[my_hosts]
hostA
hostB
Run Code Online (Sandbox Code Playgroud)
显然,它不起作用,我明白了:
ssh: Could not resolve hostname hostb: Name or service not known
Run Code Online (Sandbox Code Playgroud)
那么我应该如何更改我的主机文件?我是 ansible 的新手,所以我将非常感谢您的帮助!
我目前正在学习Slick。我试图将此查询从SQL转换为Scala:
SELECT name FROM Passenger
WHERE ID_psg in
(SELECT ID_psg FROM Pass_in_trip
GROUP BY place, ID_psg
HAVING count(*)>1)
Run Code Online (Sandbox Code Playgroud)
但是我只设法写了这样的东西,它给出了编译错误:
PassengerTable.table.filter(_.idPsg in (PassInTripTable.table.map(_.idPsgFk)))
.filter(PassengerTable.table.count(_.name) > 1)
.map(_.name)
Run Code Online (Sandbox Code Playgroud)
我真的不知道如何在Slick中应用计数和查询。因此,我非常感谢您的帮助。
我有使用 Scala 列出 AWS S3 目录的功能,我想检查列出的路径是文件还是目录。如何使用 amazon-sdk-s3 实现此功能(isFile 方法)?
它是这样的:
def listContents(): Seq[T] =
val paths = s3Client.list(inputPath)
for {
path <- paths if isFile(new Path(path)).getOrElse(false)
res <- transform(path.toString)
} yield res
def isFile(path: String) = ??? //implementation I need
Run Code Online (Sandbox Code Playgroud) 我有一个电子邮件屏蔽方法.我需要在@与星星签名之前替换电子邮件中的字母.但问题是总是应该有5颗星,并且不应该隐藏第一个和最后一个元素.样本输入将是:someemail@gmail.com.输出:s*****l@gmail.com
因此,电子邮件中第一个和最后一个字符之间的字符数无关紧要.这是我的代码:
public static String maskEmail(String inputEmail){
return inputEmail.replaceAll("(?<=.).(?=[^@]*?.@)", "*");
}
Run Code Online (Sandbox Code Playgroud)
我的方法掩盖了这封电子邮件,但问题是我不知道如何准确地放置5颗星.
我在 Kubernetes 中有 CRD 定义。kubectl proxy当我尝试通过此链接发送请求时:
curl http://localhost:8090/apis/sparkoperator.k8s.io/v1alpha1/namespaces/default/sparkapplications/
Run Code Online (Sandbox Code Playgroud)
我获得创建的自定义对象信息。但是,当我尝试使用以下命令获取此自定义对象的状态时:
curl http://localhost:8090/apis/sparkoperator.k8s.io/v1alpha1/namespaces/default/sparkapplications/status
Run Code Online (Sandbox Code Playgroud)
我收到错误:
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {
},
"status": "Failure",
"message": "sparkapplications.sparkoperator.k8s.io \"status\" not found",
"reason": "NotFound",
"details": {
"name": "status",
"group": "sparkoperator.k8s.io",
"kind": "sparkapplications"
},
"code": 404
Run Code Online (Sandbox Code Playgroud)
为什么自定义对象没有状态?CRD定义有问题吗?
我使用 Minikube 版本 v0.32.0,我以这种方式启动:
minikube start --kubernetes-version v1.13.0 --memory 8048 --cpus 3 --feature-gates=CustomResourceSubresources=true
Run Code Online (Sandbox Code Playgroud)
CRD 定义如下:
apiVersion: sparkoperator.k8s.io/v1alpha1
kind: SparkApplication
metadata:
name: spark-example
namespace: default
spec:
type: Scala
image: gcr.io/ynli-k8s/spark:v2.4.0-SNAPSHOT
mainClass: org.apache.spark.examples.SparkExample
mainApplicationFile: http://localhost:8089/spark_k8s_airflow.jar
mode: cluster
deps: {} …Run Code Online (Sandbox Code Playgroud) 我有一本安装docker的Ansible剧本。看起来像这样:
---
- hosts: local
connection: local
become: yes
become_user: root
tasks:
- name: add docker's key
apt_key:
keyserver: hkp://p80.pool.sks-keyservers.net:80
id: 58118E89F3A912897C070ADBF76221572C52609D
- name: add deb repo
file: path=/etc/apt/sources.list.d/docker.list state=touch
- name: register apt sources
lineinfile: dest="/etc/apt/sources.list.d/docker.list" line="{{item}}"
with_items:
- "deb https://apt.dockerproject.org/repo ubuntu-trusty main"
- name: install docker-engine
apt: name=docker-engine state=present update-cache=yes force=yes
Run Code Online (Sandbox Code Playgroud)
问题是,当我在本地主机上运行此剧本时,出现错误:
fatal: [127.0.0.1]: FAILED! => {"changed": false, "module_stderr": "sudo: a password is required\n", "module_stdout": "", "msg": "MODULE FAILURE", "rc": 1}
Run Code Online (Sandbox Code Playgroud)
那么,该手册的哪些部分可能会导致这种错误,我该如何更改它们?
我有一个用户案例类的数据集,其中包含出生日期字段.我想将这些数据放入我的数据库,但是,日期以日期戳的形式表示,所以我不知道如何使用LocalDateTime解析它.以下是我所拥有的日期戳的示例:
-631065600
885254400
48124800
-1007596800
Run Code Online (Sandbox Code Playgroud)
我尝试做这样的事情:
val formatter = DateTimeFormatter.ofPattern("n")
val users = List(
models.User(1, "sosodachenheonne@list.me", "?????", "?????????", "m", LocalDateTime.parse("885254400", formatter)),
models.User(2, "vyhihhimrusedac@list.me", "?????", "?????????", "m", LocalDateTime.parse("48124800", formatter)),
models.User(3, "istoordadanaihdut@gmail.com", "????????", "?????????", "m", LocalDateTime.parse("-1007596800", formatter))
)
Run Code Online (Sandbox Code Playgroud)
但我有一个例外:
java.time.DateTimeException: Unable to obtain LocalDate from TemporalAccessor: {NanoOfSecond=885254400},ISO of type java.time.format.Parsed
Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用Helm 图表来部署 Kafka 。所以我为 Kafka Pod 定义了 NodePort 服务。我使用相同的主机和端口检查了控制台 Kafka 生产者和消费者 - 它们工作正常。但是,当我创建 Spark 应用程序作为数据消费者并创建 Kafka 作为生产者时,它们无法连接到 Kafka service0。我使用 minikube ip (而不是节点 ip)作为主机和服务 NodePort 端口。尽管在 Spark 日志中,我看到 NodePort 服务解析端点,并且代理被发现为 pod 寻址和端口:
INFO AbstractCoordinator: [Consumer clientId=consumer-1, groupId=avro_data] Discovered group coordinator 172.17.0.20:9092 (id: 2147483645 rack: null)
INFO ConsumerCoordinator: [Consumer clientId=consumer-1, groupId=avro_data] Revoking previously assigned partitions []
INFO AbstractCoordinator: [Consumer clientId=consumer-1, groupId=avro_data] (Re-)joining group
WARN NetworkClient: [Consumer clientId=consumer-1, groupId=avro_data] Connection to node 2147483645 (/172.17.0.20:9092) could not be established. Broker may not …Run Code Online (Sandbox Code Playgroud) 我在 Postgresql 表中有多个相同类型的字段,即 bigint。我想选择 int 范围内的值 (-2147483647, 2147483647)。我试图做这样的事情,但有多个领域,它看起来并不好:
select * from test_table
where field1 between -2147483647 and 2147483647
and field2 between -2147483647 and 2147483647
and field3 between -2147483647 and 2147483647
Run Code Online (Sandbox Code Playgroud)
如何对多列应用一个范围过滤?
我试图为该方法使用命名参数,因为它有很多参数.我正在使用Java-client for Kubernetes API.但是,我得到Cannot resolve symbol编译错误.我在Intellij IDEA中编写代码,可能是一些插件问题?
这是代码:
def createWatchOnPodsCalls() = {
client.getHttpClient.setReadTimeout(0, TimeUnit.MILLISECONDS)
val watchEvents: Watch[V1Namespace] = Watch.createWatch(client,
apiInstance.listClusterCustomObjectCall(group=null, version=null, plural=null, pretty="true", labelSelector = null, resourceVersion = null, watch = false, progressListener = null, progressRequestListener = null),
new TypeToken[Watch.Response[V1Namespace]]{}.getType)
watchEvents
}
Run Code Online (Sandbox Code Playgroud) scala ×4
kubernetes ×3
ansible ×2
sql ×2
aggregate ×1
amazon-s3 ×1
ansible-2.x ×1
apache-kafka ×1
apache-spark ×1
datetime ×1
docker ×1
java ×1
minikube ×1
postgresql ×1
regex ×1
replaceall ×1
slick ×1
ssh ×1
string ×1
sudo ×1
ubuntu-14.04 ×1